vendor: 5,400 bytes, lines 1-9
1var N3=Object.defineProperty;var vy=e=>{throw TypeError(e)};var k3=(e,t,n)=>t in e?N3(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Fs=(e,t,n)=>k3(e,typeof t!="symbol"?t+"":t,n),Mm=(e,t,n)=>t.has(e)||vy("Cannot "+n);var E=(e,t,n)=>(Mm(e,t,"read from private field"),n?n.call(e):t.get(e)),ne=(e,t,n)=>t.has(e)?vy("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),Q=(e,t,n,r)=>(Mm(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),xe=(e,t,n)=>(Mm(e,t,"access private method"),n);var fd=(e,t,n,r)=>({set _(i){Q(e,t,i,n)},get _(){return E(e,t,r)}});function S3(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const i in r)if(i!=="default"&&!(i in e)){const a=Object.getOwnPropertyDescriptor(r,i);a&&Object.defineProperty(e,i,a.get?a:{enumerable:!0,get:()=>r[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();var Rn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Oc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function C3(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}),n}var Oj={exports:{}},Ch={},Fj={exports:{}},pe={};/** 2 * @license React 3 * react.production.min.js 4 * 5 * Copyright (c) Facebook, Inc. and its affiliates. 6 * 7 * This source code is licensed under the MIT license found in the 8 * LICENSE file in the root directory of this source tree. 9 */var Fc=Symbol.for("react.element"),P3=Symbol.for("react.portal"),E3=Symbol.for("react.fragment"),T3=Symbol.for("react.strict_mode"),_3=Symbol.for("react.profiler"),A3=Symbol.for("react.provider"),R3=Symbol.for("react.context"),D3=Symbol.for("react.forward_ref"),M3=Symbol.for("react.suspense"),L3=Symbol.for("react.memo"),I3=Symbol.for("react.lazy"),yy=Symbol.iterator;function O3(e){return e===null||typeof e!="object"?null:(e=yy&&e[yy]||e["@@iterator"],typeof e=="function"?e:null)}var $j={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Bj=Object.assign,zj={};function Oo(e,t,n){this.props=e,this.context=t,this.refs=zj,this.updater=n||$j}Oo.prototype.isReactComponent={};Oo.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Oo.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Uj(){}Uj.prototype=Oo.prototype;function Eg(e,t,n){this.props=e,this.context=t,this.refs=zj,this.updater=n||$j}var Tg=Eg.prototype=new Uj;Tg.constructor=Eg;Bj(Tg,Oo.prototype);Tg.isPureReactComponent=!0;var by=Array.isArray,Vj=Object.prototype.hasOwnProperty,_g={current:null},Wj={key:!0,ref:!0,__self:!0,__source:!0};function Hj(e,t,n){var r,i={},a=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(a=""+t.key),t)Vj.call(t,r)&&!Wj.hasOwnProperty(r)&&(i[r]=t[r]);var l=arguments.length-2;if(l===1)i.children=n;else if(1<l){for(var c=Array(l),d=0;d<l;d++)c[d]=arguments[d+2];i.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps,l)i[r]===void 0&&(i[r]=l[r]);return{$$typeof:Fc,type:e,key:a,ref:o,props:i,_owner:_g.current}}function F3(e,t){return{$$typeof:Fc,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Ag(e){return typeof e=="object"&&e!==null&&e.$$typeof===Fc}function $3(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var wy=/\/+/g;function Lm(e,t){return typeof e=="object"&&e!==null&&e.key!=null?$3(""+e.key):t.toString(36)}function tu(e,t,n,r,i){var a=typeof e;(a==="undefined"||a==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(a){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case Fc:case P3:o=!0}}if(o)return o=e,i=i(o),e=r===""?"."+Lm(o,0):r,by(i)?(n="",e!=null&&(n=e.replace(wy,"$&/")+"/"),tu(i,t,n,"",function(d){return d})):i!=null&&(Ag(i)&&(i=F3(i,n+(!i.key||o&&o.key===i.key?"":(""+i.key).replace(wy,"$&/")+"/")+e)),t.push(i)),1;if(o=0,r=r===""?".":r+":",by(e))for(var l=0;l<e.length;l++){a=e[l];var c=r+Lm(a,l);
vendor: 4,252 bytes, lines 9-17
9o+=tu(a,t,n,c,i)}else if(c=O3(e),typeof c=="function")for(e=c.call(e),l=0;!(a=e.next()).done;)a=a.value,c=r+Lm(a,l++),o+=tu(a,t,n,c,i);else if(a==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function xd(e,t,n){if(e==null)return e;var r=[],i=0;return tu(e,r,"","",function(a){return t.call(n,a,i++)}),r}function B3(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var $t={current:null},nu={transition:null},z3={ReactCurrentDispatcher:$t,ReactCurrentBatchConfig:nu,ReactCurrentOwner:_g};function Gj(){throw Error("act(...) is not supported in production builds of React.")}pe.Children={map:xd,forEach:function(e,t,n){xd(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return xd(e,function(){t++}),t},toArray:function(e){return xd(e,function(t){return t})||[]},only:function(e){if(!Ag(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};pe.Component=Oo;pe.Fragment=E3;pe.Profiler=_3;pe.PureComponent=Eg;pe.StrictMode=T3;pe.Suspense=M3;pe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=z3;pe.act=Gj;pe.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=Bj({},e.props),i=e.key,a=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(a=t.ref,o=_g.current),t.key!==void 0&&(i=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)Vj.call(t,c)&&!Wj.hasOwnProperty(c)&&(r[c]=t[c]===void 0&&l!==void 0?l[c]:t[c])}var c=arguments.length-2;if(c===1)r.children=n;else if(1<c){l=Array(c);for(var d=0;d<c;d++)l[d]=arguments[d+2];r.children=l}return{$$typeof:Fc,type:e.type,key:i,ref:a,props:r,_owner:o}};pe.createContext=function(e){return e={$$typeof:R3,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:A3,_context:e},e.Consumer=e};pe.createElement=Hj;pe.createFactory=function(e){var t=Hj.bind(null,e);return t.type=e,t};pe.createRef=function(){return{current:null}};pe.forwardRef=function(e){return{$$typeof:D3,render:e}};pe.isValidElement=Ag;pe.lazy=function(e){return{$$typeof:I3,_payload:{_status:-1,_result:e},_init:B3}};pe.memo=function(e,t){return{$$typeof:L3,type:e,compare:t===void 0?null:t}};pe.startTransition=function(e){var t=nu.transition;nu.transition={};try{e()}finally{nu.transition=t}};pe.unstable_act=Gj;pe.useCallback=function(e,t){return $t.current.useCallback(e,t)};pe.useContext=function(e){return $t.current.useContext(e)};pe.useDebugValue=function(){};pe.useDeferredValue=function(e){return $t.current.useDeferredValue(e)};pe.useEffect=function(e,t){return $t.current.useEffect(e,t)};pe.useId=function(){return $t.current.useId()};pe.useImperativeHandle=function(e,t,n){return $t.current.useImperativeHandle(e,t,n)};pe.useInsertionEffect=function(e,t){return $t.current.useInsertionEffect(e,t)};pe.useLayoutEffect=function(e,t){return $t.current.useLayoutEffect(e,t)};pe.useMemo=function(e,t){return $t.current.useMemo(e,t)};pe.useReducer=function(e,t,n){return $t.current.useReducer(e,t,n)};pe.useRef=function(e){return $t.current.useRef(e)};pe.useState=function(e){return $t.current.useState(e)};pe.useSyncExternalStore=function(e,t,n){return $t.current.useSyncExternalStore(e,t,n)};pe.useTransition=function(){return $t.current.useTransition()};pe.version="18.3.1";Fj.exports=pe;var x=Fj.exports;const B=Oc(x),qj=S3({__proto__:null,default:B},[x]);/** 10 * @license React 11 * react-jsx-runtime.production.min.js 12 * 13 * Copyright (c) Facebook, Inc. and its affiliates. 14 * 15 * This source code is licensed under the MIT license found in the 16 * LICENSE file in the root directory of this source tree. 17 */var U3=x,V3=Symbol.for("react.element"),W3=Symbol.for("react.fragment"),H3=Object.prototype.hasOwnProperty,G3=U3.__SECRET_INT
vendor: 11,408 bytes, lines 17-34
17ERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,q3={key:!0,ref:!0,__self:!0,__source:!0};function Kj(e,t,n){var r,i={},a=null,o=null;n!==void 0&&(a=""+n),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)H3.call(t,r)&&!q3.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)i[r]===void 0&&(i[r]=t[r]);return{$$typeof:V3,type:e,key:a,ref:o,props:i,_owner:G3.current}}Ch.Fragment=W3;Ch.jsx=Kj;Ch.jsxs=Kj;Oj.exports=Ch;var s=Oj.exports,Qj={exports:{}},vn={},Yj={exports:{}},Xj={};/** 18 * @license React 19 * scheduler.production.min.js 20 * 21 * Copyright (c) Facebook, Inc. and its affiliates. 22 * 23 * This source code is licensed under the MIT license found in the 24 * LICENSE file in the root directory of this source tree. 25 */(function(e){function t(S,M){var U=S.length;S.push(M);e:for(;0<U;){var O=U-1>>>1,q=S[O];if(0<i(q,M))S[O]=M,S[U]=q,U=O;else break e}}function n(S){return S.length===0?null:S[0]}function r(S){if(S.length===0)return null;var M=S[0],U=S.pop();if(U!==M){S[0]=U;e:for(var O=0,q=S.length,Z=q>>>1;O<Z;){var de=2*(O+1)-1,ze=S[de],le=de+1,G=S[le];if(0>i(ze,U))le<q&&0>i(G,ze)?(S[O]=G,S[le]=U,O=le):(S[O]=ze,S[de]=U,O=de);else if(le<q&&0>i(G,U))S[O]=G,S[le]=U,O=le;else break e}}return M}function i(S,M){var U=S.sortIndex-M.sortIndex;return U!==0?U:S.id-M.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var c=[],d=[],u=1,h=null,m=3,p=!1,g=!1,f=!1,b=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function w(S){for(var M=n(d);M!==null;){if(M.callback===null)r(d);else if(M.startTime<=S)r(d),M.sortIndex=M.expirationTime,t(c,M);else break;M=n(d)}}function j(S){if(f=!1,w(S),!g)if(n(c)!==null)g=!0,z(N);else{var M=n(d);M!==null&&I(j,M.startTime-S)}}function N(S,M){g=!1,f&&(f=!1,v(P),P=-1),p=!0;var U=m;try{for(w(M),h=n(c);h!==null&&(!(h.expirationTime>M)||S&&!R());){var O=h.callback;if(typeof O=="function"){h.callback=null,m=h.priorityLevel;var q=O(h.expirationTime<=M);M=e.unstable_now(),typeof q=="function"?h.callback=q:h===n(c)&&r(c),w(M)}else r(c);h=n(c)}if(h!==null)var Z=!0;else{var de=n(d);de!==null&&I(j,de.startTime-M),Z=!1}return Z}finally{h=null,m=U,p=!1}}var C=!1,k=null,P=-1,_=5,T=-1;function R(){return!(e.unstable_now()-T<_)}function L(){if(k!==null){var S=e.unstable_now();T=S;var M=!0;try{M=k(!0,S)}finally{M?W():(C=!1,k=null)}}else C=!1}var W;if(typeof y=="function")W=function(){y(L)};else if(typeof MessageChannel<"u"){var D=new MessageChannel,V=D.port2;D.port1.onmessage=L,W=function(){V.postMessage(null)}}else W=function(){b(L,0)};function z(S){k=S,C||(C=!0,W())}function I(S,M){P=b(function(){S(e.unstable_now())},M)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(S){S.callback=null},e.unstable_continueExecution=function(){g||p||(g=!0,z(N))},e.unstable_forceFrameRate=function(S){0>S||125<S?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):_=0<S?Math.floor(1e3/S):5},e.unstable_getCurrentPriorityLevel=function(){return m},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(S){switch(m){case 1:case 2:case 3:var M=3;break;default:M=m}var U=m;m=M;try{return S()}finally{m=U}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(S,M){switch(S){case 1:case 2:case 3:case 4:case 5:break;default:S=3}var U=m;m=S;try{return M()}finally{m=U}},e.unstable_scheduleCallback=function(S,M,U){var O=e.unstable_now();switch(typeof U=="object"&&U!==null?(U=U.delay,U=typeof U=="number"&&0<U?O+U:O):U=O,S){case 1:var q=-1;break;case 2:q=250;break;case 5:q=1073741823;break;case 4:q=1e4;break;default:q=5e3}return q=U+q,S={id:u++,callback:M,priorityLevel:S,startTime:U,expirationTime:q,sortIndex:-1},U>O?(S.sortIndex=U,t(d,S),n(c)===null&&S===n(d)&&(f?(v(P),P=-1):f=!0,I(j,U-O))):(S.sortIndex=q,t(c,S),g||p||(g=!0,z(N))),S},e.unstable_shouldYield=R,e.unstable_wrapCallback=function(S){var M=m;return function(){var U=m;m=M;try{return S.apply(this,arguments)}finally{m=U}}}})(Xj);Yj.exports=Xj;var K3=Yj.exports;/** 26 * @license React 27 * react-dom.production.min.js 28 * 29 * Copyright (c) Facebook, Inc. and its affiliates. 30 * 31 * This source code is licensed under the MIT license found in the 32 * LICENSE file in the root directory of this source tree. 33 */var Q3=x,mn=K3;function F(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Jj=new Set,Xl={};function aa(e,t){vo(e,t),vo(e+"Capture",t)}function vo(e,t){for(Xl[e]=t,e=0;e<t.length;e++)Jj.add(t[e])}var Qs=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),cf=Object.prototype.hasOwnProperty,Y3=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,jy={},Ny={};function X3(e){return cf.call(Ny,e)?!0:cf.call(jy,e)?!1:Y3.test(e)?Ny[e]=!0:(jy[e]=!0,!1)}function J3(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Z3(e,t,n,r){if(t===null||typeof t>"u"||J3(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Bt(e,t,n,r,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var jt={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){jt[e]=new Bt(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];jt[t]=new Bt(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){jt[e]=new Bt(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){jt[e]=new Bt(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){jt[e]=new Bt(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){jt[e]=new Bt(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){jt[e]=new Bt(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){jt[e]=new Bt(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){jt[e]=new Bt(e,5,!1,e.toLowerCase(),null,!1,!1)});var Rg=/[\-:]([a-z])/g;function Dg(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Rg,Dg);jt[t]=new Bt(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Rg,Dg);jt[t]=new Bt(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Rg,Dg);jt[t]=new Bt(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){jt[e]=new Bt(e,1,!1,e.toLowerCase(),null,!1,!1)});jt.xlinkHref=new Bt("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){jt[e]=new Bt(e,1,!1,e.toLowerCase(),null,!0,!0)});function Mg(e,t,n,r){var i=jt.hasOwnProperty(t)?jt[t]:null;(i!==null?i.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(Z3(t,n,i,r)&&(n=null),r||i===null?X3(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:"":n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var nr=Q3.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,gd=Symbol.for("react.element"),Pa=Symbol.for("react.portal"),Ea=Symbol.for("react.fragment"),Lg=Symbol.for("react.strict_mode"),df=Symbol.for("react.profiler"),Zj=Symbol.for("react.provider"),eN=Symbol.for("react.context"),Ig=Symbol.for("react.forward_ref"),uf=Symbol.for("react.suspense"),hf=Symbol.for("react.suspense_list"),Og=Symbol.for("react.memo"),fr=Symbol.for("react.lazy"),tN=Symbol.for("react.offscreen"),ky=Symbol.iterator;function rl(e){return e===null||typeof e!="object"?null:(e=ky&&e[ky]||e["@@iterator"],typeof e=="function"?e:null)}var Ye=Object.assign,Im;function jl(e){if(Im===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Im=t&&t[1]||""}return` 34`+Im+e}var Om=!1;function Fm(e,t){if(!e||Om)return"";Om=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(d){var r=d}Reflect.construct(e,[],t)}else{try{t.call()}catch(d){r=d}e.call(t.prototype)}else{try{throw Error()}catch(d){r=d}e()}}
vendor: 14,090 bytes, lines 34-37
34catch(d){if(d&&r&&typeof d.stack=="string"){for(var i=d.stack.split(` 35`),a=r.stack.split(` 36`),o=i.length-1,l=a.length-1;1<=o&&0<=l&&i[o]!==a[l];)l--;for(;1<=o&&0<=l;o--,l--)if(i[o]!==a[l]){if(o!==1||l!==1)do if(o--,l--,0>l||i[o]!==a[l]){var c=` 37`+i[o].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}while(1<=o&&0<=l);break}}}finally{Om=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?jl(e):""}function eE(e){switch(e.tag){case 5:return jl(e.type);case 16:return jl("Lazy");case 13:return jl("Suspense");case 19:return jl("SuspenseList");case 0:case 2:case 15:return e=Fm(e.type,!1),e;case 11:return e=Fm(e.type.render,!1),e;case 1:return e=Fm(e.type,!0),e;default:return""}}function mf(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Ea:return"Fragment";case Pa:return"Portal";case df:return"Profiler";case Lg:return"StrictMode";case uf:return"Suspense";case hf:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case eN:return(e.displayName||"Context")+".Consumer";case Zj:return(e._context.displayName||"Context")+".Provider";case Ig:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Og:return t=e.displayName||null,t!==null?t:mf(e.type)||"Memo";case fr:t=e._payload,e=e._init;try{return mf(e(t))}catch{}}return null}function tE(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return mf(t);case 8:return t===Lg?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Wr(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function nN(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function nE(e){var t=nN(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(o){r=""+o,a.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function vd(e){e._valueTracker||(e._valueTracker=nE(e))}function sN(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=nN(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Tu(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function pf(e,t){var n=t.checked;return Ye({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Sy(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Wr(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function rN(e,t){t=t.checked,t!=null&&Mg(e,"checked",t,!1)}function ff(e,t){rN(e,t);var n=Wr(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?xf(e,t.type,n):t.hasOwnProperty("defaultValue")&&xf(e,t.type,Wr(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Cy(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function xf(e,t,n){(t!=="number"||Tu(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Nl=Array.isArray;function Va(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t["$"+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty("$"+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Wr(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function gf(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(F(91));return Ye({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Py(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(F(92));if(Nl(n)){if(1<n.length)throw Error(F(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Wr(n)}}function iN(e,t){var n=Wr(t.value),r=Wr(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Ey(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function aN(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function vf(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?aN(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var yd,oN=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(yd=yd||document.createElement("div"),yd.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=yd.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Jl(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Al={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},sE=["Webkit","ms","Moz","O"];Object.keys(Al).forEach(function(e){sE.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Al[t]=Al[e]})});function lN(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Al.hasOwnProperty(e)&&Al[e]?(""+t).trim():t+"px"}function cN(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=lN(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var rE=Ye({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function yf(e,t){if(t){if(rE[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(F(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(F(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(F(61))}if(t.style!=null&&typeof t.style!="object")throw Error(F(62))}}function bf(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var wf=null;function Fg(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var jf=null,Wa=null,Ha=null;function Ty(e){if(e=zc(e)){if(typeof jf!="function")throw Error(F(280));var t=e.stateNode;t&&(t=Ah(t),jf(e.stateNode,e.type,t))}}function dN(e){Wa?Ha?Ha.push(e):Ha=[e]:Wa=e}function uN(){if(Wa){var e=Wa,t=Ha;if(Ha=Wa=null,Ty(e),t)for(e=0;e<t.length;e++)Ty(t[e])}}function hN(e,t){return e(t)}function mN(){}var $m=!1;function pN(e,t,n){if($m)return e(t,n);$m=!0;try{return hN(e,t,n)}finally{$m=!1,(Wa!==null||Ha!==null)&&(mN(),uN())}}function Zl(e,t){var n=e.stateNode;if(n===null)return null;var r=Ah(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(F(231,t,typeof n));return n}var Nf=!1;if(Qs)try{var il={};Object.defineProperty(il,"passive",{get:function(){Nf=!0}}),window.addEventListener("test",il,il),window.removeEventListener("test",il,il)}catch{Nf=!1}function iE(e,t,n,r,i,a,o,l,c){var d=Array.prototype.slice.call(arguments,3);try{t.apply(n,d)}catch(u){this.onError(u)}}var Rl=!1,_u=null,Au=!1,kf=null,aE={onError:function(e){Rl=!0,_u=e}};function oE(e,t,n,r,i,a,o,l,c){Rl=!1,_u=null,iE.apply(aE,arguments)}function lE(e,t,n,r,i,a,o,l,c){if(oE.apply(this,arguments),Rl){if(Rl){var d=_u;Rl=!1,_u=null}else throw Error(F(198));Au||(Au=!0,kf=d)}}function oa(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function fN(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function _y(e){if(oa(e)!==e)throw Error(F(188))}function cE(e){var t=e.alternate;if(!t){if(t=oa(e),t===null)throw Error(F(188));return t!==e?null:e}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return _y(i),e;if(a===r)return _y(i),t;a=a.sibling}throw Error(F(188))}if(n.return!==r.return)n=i,r=a;else{for(var o=!1,l=i.child;l;){if(l===n){o=!0,n=i,r=a;break}if(l===r){o=!0,r=i,n=a;break}l=l.sibling}if(!o){for(l=a.child;l;){if(l===n){o=!0,n=a,r=i;break}if(l===r){o=!0,r=a,n=i;break}l=l.sibling}if(!o)throw Error(F(189))}}if(n.alternate!==r)throw Error(F(190))}if(n.tag!==3)throw Error(F(188));return n.stateNode.current===n?e:t}function xN(e){return e=cE(e),e!==null?gN(e):null}function gN(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=gN(e);if(t!==null)return t;e=e.sibling}return null}var vN=mn.unstable_scheduleCallback,Ay=mn.unstable_cancelCallback,dE=mn.unstable_shouldYield,uE=mn.unstable_requestPaint,Ze=mn.unstable_now,hE=mn.unstable_getCurrentPriorityLevel,$g=mn.unstable_ImmediatePriority,yN=mn.unstable_UserBlockingPriority,Ru=mn.unstable_NormalPriority,mE=mn.unstable_LowPriority,bN=mn.unstable_IdlePriority,Ph=null,Ns=null;function pE(e){if(Ns&&typeof Ns.onCommitFiberRoot=="function")try{Ns.onCommitFiberRoot(Ph,e,void 0,(e.current.flags&128)===128)}catch{}}var Yn=Math.clz32?Math.clz32:gE,fE=Math.log,xE=Math.LN2;function gE(e){return e>>>=0,e===0?32:31-(fE(e)/xE|0)|0}var bd=64,wd=4194304;function kl(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Du(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,a=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~i;l!==0?r=kl(l):(a&=o,a!==0&&(r=kl(a)))}else o=n&~i,o!==0?r=kl(o):a!==0&&(r=kl(a));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,a=t&-t,i>=a||i===16&&(a&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Yn(t),i=1<<n,r|=e[n],t&=~i;return r}function vE(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function yE(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes;0<a;){var o=31-Yn(a),l=1<<o,c=i[o];c===-1?(!(l&n)||l&r)&&(i[o]=vE(l,t)):c<=t&&(e.expiredLanes|=l),a&=~l}}function Sf(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function wN(){var e=bd;return bd<<=1,!(bd&4194240)&&(bd=64),e}function Bm(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}
vendor: 4,087 bytes, line 37
37function $c(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Yn(t),e[t]=n}function bE(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-Yn(n),a=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~a}}function Bg(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Yn(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var Ee=0;function jN(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var NN,zg,kN,SN,CN,Cf=!1,jd=[],Lr=null,Ir=null,Or=null,ec=new Map,tc=new Map,vr=[],wE="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Ry(e,t){switch(e){case"focusin":case"focusout":Lr=null;break;case"dragenter":case"dragleave":Ir=null;break;case"mouseover":case"mouseout":Or=null;break;case"pointerover":case"pointerout":ec.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":tc.delete(t.pointerId)}}function al(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=zc(t),t!==null&&zg(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function jE(e,t,n,r,i){switch(t){case"focusin":return Lr=al(Lr,e,t,n,r,i),!0;case"dragenter":return Ir=al(Ir,e,t,n,r,i),!0;case"mouseover":return Or=al(Or,e,t,n,r,i),!0;case"pointerover":var a=i.pointerId;return ec.set(a,al(ec.get(a)||null,e,t,n,r,i)),!0;case"gotpointercapture":return a=i.pointerId,tc.set(a,al(tc.get(a)||null,e,t,n,r,i)),!0}return!1}function PN(e){var t=Si(e.target);if(t!==null){var n=oa(t);if(n!==null){if(t=n.tag,t===13){if(t=fN(n),t!==null){e.blockedOn=t,CN(e.priority,function(){kN(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function su(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Pf(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);wf=r,n.target.dispatchEvent(r),wf=null}else return t=zc(n),t!==null&&zg(t),e.blockedOn=n,!1;t.shift()}return!0}function Dy(e,t,n){su(e)&&n.delete(t)}function NE(){Cf=!1,Lr!==null&&su(Lr)&&(Lr=null),Ir!==null&&su(Ir)&&(Ir=null),Or!==null&&su(Or)&&(Or=null),ec.forEach(Dy),tc.forEach(Dy)}function ol(e,t){e.blockedOn===t&&(e.blockedOn=null,Cf||(Cf=!0,mn.unstable_scheduleCallback(mn.unstable_NormalPriority,NE)))}function nc(e){function t(i){return ol(i,e)}if(0<jd.length){ol(jd[0],e);for(var n=1;n<jd.length;n++){var r=jd[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Lr!==null&&ol(Lr,e),Ir!==null&&ol(Ir,e),Or!==null&&ol(Or,e),ec.forEach(t),tc.forEach(t),n=0;n<vr.length;n++)r=vr[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<vr.length&&(n=vr[0],n.blockedOn===null);)PN(n),n.blockedOn===null&&vr.shift()}var Ga=nr.ReactCurrentBatchConfig,Mu=!0;function kE(e,t,n,r){var i=Ee,a=Ga.transition;Ga.transition=null;try{Ee=1,Ug(e,t,n,r)}finally{Ee=i,Ga.transition=a}}function SE(e,t,n,r){var i=Ee,a=Ga.transition;Ga.transition=null;try{Ee=4,Ug(e,t,n,r)}finally{Ee=i,Ga.transition=a}}function Ug(e,t,n,r){if(Mu){var i=Pf(e,t,n,r);if(i===null)Ym(e,t,r,Lu,n),Ry(e,r);else if(jE(i,e,t,n,r))r.stopPropagation();else if(Ry(e,r),t&4&&-1<wE.indexOf(e)){for(;i!==null;){var a=zc(i);if(a!==null&&NN(a),a=Pf(e,t,n,r),a===null&&Ym(e,t,r,Lu,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Ym(e,t,r,null,n)}}var Lu=null;function Pf(e,t,n,r){if(Lu=null,e=Fg(r),e=Si(e),e!==null)if(t=oa(e),t===null)e=null;else if(n=t.tag,n===13){if(e=fN(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Lu=e,null}
vendor: 8,729 bytes, line 37
37function EN(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(hE()){case $g:return 1;case yN:return 4;case Ru:case mE:return 16;case bN:return 536870912;default:return 16}default:return 16}}var Tr=null,Vg=null,ru=null;function TN(){if(ru)return ru;var e,t=Vg,n=t.length,r,i="value"in Tr?Tr.value:Tr.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return ru=i.slice(e,1<r?1-r:void 0)}function iu(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Nd(){return!0}function My(){return!1}function yn(e){function t(n,r,i,a,o){this._reactName=n,this._targetInst=i,this.type=r,this.nativeEvent=a,this.target=o,this.currentTarget=null;for(var l in e)e.hasOwnProperty(l)&&(n=e[l],this[l]=n?n(a):a[l]);return this.isDefaultPrevented=(a.defaultPrevented!=null?a.defaultPrevented:a.returnValue===!1)?Nd:My,this.isPropagationStopped=My,this}return Ye(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Nd)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Nd)},persist:function(){},isPersistent:Nd}),t}var Fo={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Wg=yn(Fo),Bc=Ye({},Fo,{view:0,detail:0}),CE=yn(Bc),zm,Um,ll,Eh=Ye({},Bc,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Hg,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ll&&(ll&&e.type==="mousemove"?(zm=e.screenX-ll.screenX,Um=e.screenY-ll.screenY):Um=zm=0,ll=e),zm)},movementY:function(e){return"movementY"in e?e.movementY:Um}}),Ly=yn(Eh),PE=Ye({},Eh,{dataTransfer:0}),EE=yn(PE),TE=Ye({},Bc,{relatedTarget:0}),Vm=yn(TE),_E=Ye({},Fo,{animationName:0,elapsedTime:0,pseudoElement:0}),AE=yn(_E),RE=Ye({},Fo,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),DE=yn(RE),ME=Ye({},Fo,{data:0}),Iy=yn(ME),LE={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},IE={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},OE={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function FE(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=OE[e])?!!t[e]:!1}function Hg(){return FE}var $E=Ye({},Bc,{key:function(e){if(e.key){var t=LE[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=iu(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?IE[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Hg,charCode:function(e){return e.type==="keypress"?iu(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?iu(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),BE=yn($E),zE=Ye({},Eh,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Oy=yn(zE),UE=Ye({},Bc,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Hg}),VE=yn(UE),WE=Ye({},Fo,{propertyName:0,elapsedTime:0,pseudoElement:0}),HE=yn(WE),GE=Ye({},Eh,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),qE=yn(GE),KE=[9,13,27,32],Gg=Qs&&"CompositionEvent"in window,Dl=null;Qs&&"documentMode"in document&&(Dl=document.documentMode);var QE=Qs&&"TextEvent"in window&&!Dl,_N=Qs&&(!Gg||Dl&&8<Dl&&11>=Dl),Fy=" ",$y=!1;function AN(e,t){switch(e){case"keyup":return KE.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function RN(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ta=!1;function YE(e,t){switch(e){case"compositionend":return RN(t);case"keypress":return t.which!==32?null:($y=!0,Fy);case"textInput":return e=t.data,e===Fy&&$y?null:e;default:return null}}function XE(e,t){if(Ta)return e==="compositionend"||!Gg&&AN(e,t)?(e=TN(),ru=Vg=Tr=null,Ta=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return _N&&t.locale!=="ko"?null:t.data;default:return null}}var JE={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function By(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!JE[e.type]:t==="textarea"}function DN(e,t,n,r){dN(r),t=Iu(t,"onChange"),0<t.length&&(n=new Wg("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Ml=null,sc=null;function ZE(e){WN(e,0)}function Th(e){var t=Ra(e);if(sN(t))return e}function eT(e,t){if(e==="change")return t}var MN=!1;if(Qs){var Wm;if(Qs){var Hm="oninput"in document;if(!Hm){var zy=document.createElement("div");zy.setAttribute("oninput","return;"),Hm=typeof zy.oninput=="function"}Wm=Hm}else Wm=!1;MN=Wm&&(!document.documentMode||9<document.documentMode)}function Uy(){Ml&&(Ml.detachEvent("onpropertychange",LN),sc=Ml=null)}function LN(e){if(e.propertyName==="value"&&Th(sc)){var t=[];DN(t,sc,e,Fg(e)),pN(ZE,t)}}function tT(e,t,n){e==="focusin"?(Uy(),Ml=t,sc=n,Ml.attachEvent("onpropertychange",LN)):e==="focusout"&&Uy()}function nT(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Th(sc)}function sT(e,t){if(e==="click")return Th(t)}function rT(e,t){if(e==="input"||e==="change")return Th(t)}function iT(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var es=typeof Object.is=="function"?Object.is:iT;function rc(e,t){if(es(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!cf.call(t,i)||!es(e[i],t[i]))return!1}return!0}function Vy(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Wy(e,t){var n=Vy(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Vy(n)}}function IN(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?IN(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ON(){for(var e=window,t=Tu();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;
vendor: 4,717 bytes, line 37
37t=Tu(e.document)}return t}function qg(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function aT(e){var t=ON(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&IN(n.ownerDocument.documentElement,n)){if(r!==null&&qg(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,a=Math.min(r.start,i);r=r.end===void 0?a:Math.min(r.end,i),!e.extend&&a>r&&(i=r,r=a,a=i),i=Wy(n,a);var o=Wy(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var oT=Qs&&"documentMode"in document&&11>=document.documentMode,_a=null,Ef=null,Ll=null,Tf=!1;function Hy(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Tf||_a==null||_a!==Tu(r)||(r=_a,"selectionStart"in r&&qg(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ll&&rc(Ll,r)||(Ll=r,r=Iu(Ef,"onSelect"),0<r.length&&(t=new Wg("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=_a)))}function kd(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Aa={animationend:kd("Animation","AnimationEnd"),animationiteration:kd("Animation","AnimationIteration"),animationstart:kd("Animation","AnimationStart"),transitionend:kd("Transition","TransitionEnd")},Gm={},FN={};Qs&&(FN=document.createElement("div").style,"AnimationEvent"in window||(delete Aa.animationend.animation,delete Aa.animationiteration.animation,delete Aa.animationstart.animation),"TransitionEvent"in window||delete Aa.transitionend.transition);function _h(e){if(Gm[e])return Gm[e];if(!Aa[e])return e;var t=Aa[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in FN)return Gm[e]=t[n];return e}var $N=_h("animationend"),BN=_h("animationiteration"),zN=_h("animationstart"),UN=_h("transitionend"),VN=new Map,Gy="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function ti(e,t){VN.set(e,t),aa(t,[e])}for(var qm=0;qm<Gy.length;qm++){var Km=Gy[qm],lT=Km.toLowerCase(),cT=Km[0].toUpperCase()+Km.slice(1);ti(lT,"on"+cT)}ti($N,"onAnimationEnd");ti(BN,"onAnimationIteration");ti(zN,"onAnimationStart");ti("dblclick","onDoubleClick");ti("focusin","onFocus");ti("focusout","onBlur");ti(UN,"onTransitionEnd");vo("onMouseEnter",["mouseout","mouseover"]);vo("onMouseLeave",["mouseout","mouseover"]);vo("onPointerEnter",["pointerout","pointerover"]);vo("onPointerLeave",["pointerout","pointerover"]);aa("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));aa("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));aa("onBeforeInput",["compositionend","keypress","textInput","paste"]);aa("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));aa("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));aa("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Sl="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),dT=new Set("cancel close invalid load scroll toggle".split(" ").concat(Sl));
vendor: 3,983 bytes, line 37
37function qy(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,lE(r,t,void 0,e),e.currentTarget=null}function WN(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var l=r[o],c=l.instance,d=l.currentTarget;if(l=l.listener,c!==a&&i.isPropagationStopped())break e;qy(i,l,d),a=c}else for(o=0;o<r.length;o++){if(l=r[o],c=l.instance,d=l.currentTarget,l=l.listener,c!==a&&i.isPropagationStopped())break e;qy(i,l,d),a=c}}}if(Au)throw e=kf,Au=!1,kf=null,e}function Fe(e,t){var n=t[Mf];n===void 0&&(n=t[Mf]=new Set);var r=e+"__bubble";n.has(r)||(HN(t,e,2,!1),n.add(r))}function Qm(e,t,n){var r=0;t&&(r|=4),HN(n,e,r,t)}var Sd="_reactListening"+Math.random().toString(36).slice(2);function ic(e){if(!e[Sd]){e[Sd]=!0,Jj.forEach(function(n){n!=="selectionchange"&&(dT.has(n)||Qm(n,!1,e),Qm(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Sd]||(t[Sd]=!0,Qm("selectionchange",!1,t))}}function HN(e,t,n,r){switch(EN(t)){case 1:var i=kE;break;case 4:i=SE;break;default:i=Ug}n=i.bind(null,t,n,e),i=void 0,!Nf||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),r?i!==void 0?e.addEventListener(t,n,{capture:!0,passive:i}):e.addEventListener(t,n,!0):i!==void 0?e.addEventListener(t,n,{passive:i}):e.addEventListener(t,n,!1)}function Ym(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var l=r.stateNode.containerInfo;if(l===i||l.nodeType===8&&l.parentNode===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===i||c.nodeType===8&&c.parentNode===i))return;o=o.return}for(;l!==null;){if(o=Si(l),o===null)return;if(c=o.tag,c===5||c===6){r=a=o;continue e}l=l.parentNode}}r=r.return}pN(function(){var d=a,u=Fg(n),h=[];e:{var m=VN.get(e);if(m!==void 0){var p=Wg,g=e;switch(e){case"keypress":if(iu(n)===0)break e;case"keydown":case"keyup":p=BE;break;case"focusin":g="focus",p=Vm;break;case"focusout":g="blur",p=Vm;break;case"beforeblur":case"afterblur":p=Vm;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":p=Ly;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":p=EE;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":p=VE;break;case $N:case BN:case zN:p=AE;break;case UN:p=HE;break;case"scroll":p=CE;break;case"wheel":p=qE;break;case"copy":case"cut":case"paste":p=DE;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":p=Oy}var f=(t&4)!==0,b=!f&&e==="scroll",v=f?m!==null?m+"Capture":null:m;f=[];for(var y=d,w;y!==null;){w=y;var j=w.stateNode;if(w.tag===5&&j!==null&&(w=j,v!==null&&(j=Zl(y,v),j!=null&&f.push(ac(y,j,w)))),b)break;y=y.return}0<f.length&&(m=new p(m,g,null,n,u),h.push({event:m,listeners:f}))}}if(!(t&7)){e:{if(m=e==="mouseover"||e==="pointerover",p=e==="mouseout"||e==="pointerout",m&&n!==wf&&(g=n.relatedTarget||n.fromElement)&&(Si(g)||g[Ys]))break e;if((p||m)&&(m=u.window===u?u:(m=u.ownerDocument)?m.defaultView||m.parentWindow:window,p?(g=n.relatedTarget||n.toElement,p=d,g=g?Si(g):null,g!==null&&(b=oa(g),g!==b||g.tag!==5&&g.tag!==6)&&(g=null)):(p=null,g=d),p!==g)){if(f=Ly,j="onMouseLeave",v="onMouseEnter",y="mouse",(e==="pointerout"||e==="pointerover")&&(f=Oy,j="onPointerLeave",v="onPointerEnter",y="pointer"),b=p==null?m:Ra(p),w=g==null?m:Ra(g),m=new f(j,y+"leave",p,n,u),m.target=b,m.relatedTarget=w,j=null,Si(u)===d&&(f=new f(v,y+"enter",g,n,u),f.target=w,f.relatedTarget=b,j=f),b=j,p&&g)t:{for(f=p,v=g,y=0,w=f;w;w=fa(w))y++;for(w=0,j=v;j;j=fa(j))w++;for(;0<y-w;)f=fa(f),y--;for(;0<w-y;)v=fa(v),w--;for(;y--;){if(f===v||v!==null&&f===v.alternate)break t;f=fa(f),v=fa(v)}f=null}else f=null;p!==null&&Ky(h,m,p,f,!1),g!==null&&b!==null&&Ky(h,b,g,f,!0)}}
vendor: 4,658 bytes, lines 37-38
37e:{if(m=d?Ra(d):window,p=m.nodeName&&m.nodeName.toLowerCase(),p==="select"||p==="input"&&m.type==="file")var N=eT;else if(By(m))if(MN)N=rT;else{N=nT;var C=tT}else(p=m.nodeName)&&p.toLowerCase()==="input"&&(m.type==="checkbox"||m.type==="radio")&&(N=sT);if(N&&(N=N(e,d))){DN(h,N,n,u);break e}C&&C(e,m,d),e==="focusout"&&(C=m._wrapperState)&&C.controlled&&m.type==="number"&&xf(m,"number",m.value)}switch(C=d?Ra(d):window,e){case"focusin":(By(C)||C.contentEditable==="true")&&(_a=C,Ef=d,Ll=null);break;case"focusout":Ll=Ef=_a=null;break;case"mousedown":Tf=!0;break;case"contextmenu":case"mouseup":case"dragend":Tf=!1,Hy(h,n,u);break;case"selectionchange":if(oT)break;case"keydown":case"keyup":Hy(h,n,u)}var k;if(Gg)e:{switch(e){case"compositionstart":var P="onCompositionStart";break e;case"compositionend":P="onCompositionEnd";break e;case"compositionupdate":P="onCompositionUpdate";break e}P=void 0}else Ta?AN(e,n)&&(P="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(P="onCompositionStart");P&&(_N&&n.locale!=="ko"&&(Ta||P!=="onCompositionStart"?P==="onCompositionEnd"&&Ta&&(k=TN()):(Tr=u,Vg="value"in Tr?Tr.value:Tr.textContent,Ta=!0)),C=Iu(d,P),0<C.length&&(P=new Iy(P,e,null,n,u),h.push({event:P,listeners:C}),k?P.data=k:(k=RN(n),k!==null&&(P.data=k)))),(k=QE?YE(e,n):XE(e,n))&&(d=Iu(d,"onBeforeInput"),0<d.length&&(u=new Iy("onBeforeInput","beforeinput",null,n,u),h.push({event:u,listeners:d}),u.data=k))}WN(h,t)})}function ac(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Iu(e,t){for(var n=t+"Capture",r=[];e!==null;){var i=e,a=i.stateNode;i.tag===5&&a!==null&&(i=a,a=Zl(e,n),a!=null&&r.unshift(ac(e,a,i)),a=Zl(e,t),a!=null&&r.push(ac(e,a,i))),e=e.return}return r}function fa(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Ky(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var l=n,c=l.alternate,d=l.stateNode;if(c!==null&&c===r)break;l.tag===5&&d!==null&&(l=d,i?(c=Zl(n,a),c!=null&&o.unshift(ac(n,c,l))):i||(c=Zl(n,a),c!=null&&o.push(ac(n,c,l)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var uT=/\r\n?/g,hT=/\u0000|\uFFFD/g;function Qy(e){return(typeof e=="string"?e:""+e).replace(uT,` 38`).replace(hT,"")}function Cd(e,t,n){if(t=Qy(t),Qy(e)!==t&&n)throw Error(F(425))}function Ou(){}var _f=null,Af=null;function Rf(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Df=typeof setTimeout=="function"?setTimeout:void 0,mT=typeof clearTimeout=="function"?clearTimeout:void 0,Yy=typeof Promise=="function"?Promise:void 0,pT=typeof queueMicrotask=="function"?queueMicrotask:typeof Yy<"u"?function(e){return Yy.resolve(null).then(e).catch(fT)}:Df;function fT(e){setTimeout(function(){throw e})}function Xm(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(r===0){e.removeChild(i),nc(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=i}while(n);nc(t)}function Fr(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function Xy(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var $o=Math.random().toString(36).slice(2),vs="__reactFiber$"+$o,oc="__reactProps$"+$o,Ys="__reactContainer$"+$o,Mf="__reactEvents$"+$o,xT="__reactListeners$"+$o,gT="__reactHandles$"+$o;function Si(e){var t=e[vs];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Ys]||n[vs]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Xy(e);e!==null;){if(n=e[vs])return n;e=Xy(e)}return t}e=n,n=e.parentNode}return null}function zc(e){return e=e[vs]||e[Ys],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Ra(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(F(33))}function Ah(e){return e[oc]||null}var Lf=[],Da=-1;function ni(e){return{current:e}}function Be(e){0>Da||(e.current=Lf[Da],Lf[Da]=null,Da--)}function Le(e,t){Da++,Lf[Da]=e.current,e.current=t}var Hr={},Pt=ni(Hr),Qt=ni(!1),Vi=Hr;function yo(e,t){var n=e.type.contextTypes;if(!n)return Hr;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in n)i[a]=t[a];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Yt(e){return e=e.childContextTypes,e!=null}function Fu(){Be(Qt),Be(Pt)}
vendor: 14,528 bytes, line 38
38function Jy(e,t,n){if(Pt.current!==Hr)throw Error(F(168));Le(Pt,t),Le(Qt,n)}function GN(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(F(108,tE(e)||"Unknown",i));return Ye({},n,r)}function $u(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Hr,Vi=Pt.current,Le(Pt,e),Le(Qt,Qt.current),!0}function Zy(e,t,n){var r=e.stateNode;if(!r)throw Error(F(169));n?(e=GN(e,t,Vi),r.__reactInternalMemoizedMergedChildContext=e,Be(Qt),Be(Pt),Le(Pt,e)):Be(Qt),Le(Qt,n)}var Hs=null,Rh=!1,Jm=!1;function qN(e){Hs===null?Hs=[e]:Hs.push(e)}function vT(e){Rh=!0,qN(e)}function si(){if(!Jm&&Hs!==null){Jm=!0;var e=0,t=Ee;try{var n=Hs;for(Ee=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Hs=null,Rh=!1}catch(i){throw Hs!==null&&(Hs=Hs.slice(e+1)),vN($g,si),i}finally{Ee=t,Jm=!1}}return null}var Ma=[],La=0,Bu=null,zu=0,Nn=[],kn=0,Wi=null,Gs=1,qs="";function yi(e,t){Ma[La++]=zu,Ma[La++]=Bu,Bu=e,zu=t}function KN(e,t,n){Nn[kn++]=Gs,Nn[kn++]=qs,Nn[kn++]=Wi,Wi=e;var r=Gs;e=qs;var i=32-Yn(r)-1;r&=~(1<<i),n+=1;var a=32-Yn(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Gs=1<<32-Yn(t)+i|n<<i|r,qs=a+e}else Gs=1<<a|n<<i|r,qs=e}function Kg(e){e.return!==null&&(yi(e,1),KN(e,1,0))}function Qg(e){for(;e===Bu;)Bu=Ma[--La],Ma[La]=null,zu=Ma[--La],Ma[La]=null;for(;e===Wi;)Wi=Nn[--kn],Nn[kn]=null,qs=Nn[--kn],Nn[kn]=null,Gs=Nn[--kn],Nn[kn]=null}var un=null,dn=null,Ve=!1,qn=null;function QN(e,t){var n=Sn(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function eb(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,un=e,dn=Fr(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,un=e,dn=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Wi!==null?{id:Gs,overflow:qs}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Sn(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,un=e,dn=null,!0):!1;default:return!1}}function If(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Of(e){if(Ve){var t=dn;if(t){var n=t;if(!eb(e,t)){if(If(e))throw Error(F(418));t=Fr(n.nextSibling);var r=un;t&&eb(e,t)?QN(r,n):(e.flags=e.flags&-4097|2,Ve=!1,un=e)}}else{if(If(e))throw Error(F(418));e.flags=e.flags&-4097|2,Ve=!1,un=e}}}function tb(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;un=e}function Pd(e){if(e!==un)return!1;if(!Ve)return tb(e),Ve=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Rf(e.type,e.memoizedProps)),t&&(t=dn)){if(If(e))throw YN(),Error(F(418));for(;t;)QN(e,t),t=Fr(t.nextSibling)}if(tb(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(F(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){dn=Fr(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}dn=null}}else dn=un?Fr(e.stateNode.nextSibling):null;return!0}function YN(){for(var e=dn;e;)e=Fr(e.nextSibling)}function bo(){dn=un=null,Ve=!1}function Yg(e){qn===null?qn=[e]:qn.push(e)}var yT=nr.ReactCurrentBatchConfig;function cl(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(F(309));var r=n.stateNode}if(!r)throw Error(F(147,e));var i=r,a=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===a?t.ref:(t=function(o){var l=i.refs;o===null?delete l[a]:l[a]=o},t._stringRef=a,t)}if(typeof e!="string")throw Error(F(284));if(!n._owner)throw Error(F(290,e))}return e}function Ed(e,t){throw e=Object.prototype.toString.call(t),Error(F(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function nb(e){var t=e._init;return t(e._payload)}function XN(e){function t(v,y){if(e){var w=v.deletions;w===null?(v.deletions=[y],v.flags|=16):w.push(y)}}function n(v,y){if(!e)return null;for(;y!==null;)t(v,y),y=y.sibling;return null}function r(v,y){for(v=new Map;y!==null;)y.key!==null?v.set(y.key,y):v.set(y.index,y),y=y.sibling;return v}function i(v,y){return v=Ur(v,y),v.index=0,v.sibling=null,v}function a(v,y,w){return v.index=w,e?(w=v.alternate,w!==null?(w=w.index,w<y?(v.flags|=2,y):w):(v.flags|=2,y)):(v.flags|=1048576,y)}function o(v){return e&&v.alternate===null&&(v.flags|=2),v}function l(v,y,w,j){return y===null||y.tag!==6?(y=ip(w,v.mode,j),y.return=v,y):(y=i(y,w),y.return=v,y)}function c(v,y,w,j){var N=w.type;return N===Ea?u(v,y,w.props.children,j,w.key):y!==null&&(y.elementType===N||typeof N=="object"&&N!==null&&N.$$typeof===fr&&nb(N)===y.type)?(j=i(y,w.props),j.ref=cl(v,y,w),j.return=v,j):(j=hu(w.type,w.key,w.props,null,v.mode,j),j.ref=cl(v,y,w),j.return=v,j)}function d(v,y,w,j){return y===null||y.tag!==4||y.stateNode.containerInfo!==w.containerInfo||y.stateNode.implementation!==w.implementation?(y=ap(w,v.mode,j),y.return=v,y):(y=i(y,w.children||[]),y.return=v,y)}function u(v,y,w,j,N){return y===null||y.tag!==7?(y=$i(w,v.mode,j,N),y.return=v,y):(y=i(y,w),y.return=v,y)}function h(v,y,w){if(typeof y=="string"&&y!==""||typeof y=="number")return y=ip(""+y,v.mode,w),y.return=v,y;if(typeof y=="object"&&y!==null){switch(y.$$typeof){case gd:return w=hu(y.type,y.key,y.props,null,v.mode,w),w.ref=cl(v,null,y),w.return=v,w;case Pa:return y=ap(y,v.mode,w),y.return=v,y;case fr:var j=y._init;return h(v,j(y._payload),w)}if(Nl(y)||rl(y))return y=$i(y,v.mode,w,null),y.return=v,y;Ed(v,y)}return null}function m(v,y,w,j){var N=y!==null?y.key:null;if(typeof w=="string"&&w!==""||typeof w=="number")return N!==null?null:l(v,y,""+w,j);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case gd:return w.key===N?c(v,y,w,j):null;case Pa:return w.key===N?d(v,y,w,j):null;case fr:return N=w._init,m(v,y,N(w._payload),j)}if(Nl(w)||rl(w))return N!==null?null:u(v,y,w,j,null);Ed(v,w)}return null}function p(v,y,w,j,N){if(typeof j=="string"&&j!==""||typeof j=="number")return v=v.get(w)||null,l(y,v,""+j,N);if(typeof j=="object"&&j!==null){switch(j.$$typeof){case gd:return v=v.get(j.key===null?w:j.key)||null,c(y,v,j,N);case Pa:return v=v.get(j.key===null?w:j.key)||null,d(y,v,j,N);case fr:var C=j._init;return p(v,y,w,C(j._payload),N)}if(Nl(j)||rl(j))return v=v.get(w)||null,u(y,v,j,N,null);Ed(y,j)}return null}function g(v,y,w,j){for(var N=null,C=null,k=y,P=y=0,_=null;k!==null&&P<w.length;P++){k.index>P?(_=k,k=null):_=k.sibling;var T=m(v,k,w[P],j);if(T===null){k===null&&(k=_);break}e&&k&&T.alternate===null&&t(v,k),y=a(T,y,P),C===null?N=T:C.sibling=T,C=T,k=_}if(P===w.length)return n(v,k),Ve&&yi(v,P),N;if(k===null){for(;P<w.length;P++)k=h(v,w[P],j),k!==null&&(y=a(k,y,P),C===null?N=k:C.sibling=k,C=k);return Ve&&yi(v,P),N}for(k=r(v,k);P<w.length;P++)_=p(k,v,P,w[P],j),_!==null&&(e&&_.alternate!==null&&k.delete(_.key===null?P:_.key),y=a(_,y,P),C===null?N=_:C.sibling=_,C=_);return e&&k.forEach(function(R){return t(v,R)}),Ve&&yi(v,P),N}function f(v,y,w,j){var N=rl(w);if(typeof N!="function")throw Error(F(150));if(w=N.call(w),w==null)throw Error(F(151));for(var C=N=null,k=y,P=y=0,_=null,T=w.next();k!==null&&!T.done;P++,T=w.next()){k.index>P?(_=k,k=null):_=k.sibling;var R=m(v,k,T.value,j);if(R===null){k===null&&(k=_);break}e&&k&&R.alternate===null&&t(v,k),y=a(R,y,P),C===null?N=R:C.sibling=R,C=R,k=_}if(T.done)return n(v,k),Ve&&yi(v,P),N;if(k===null){for(;!T.done;P++,T=w.next())T=h(v,T.value,j),T!==null&&(y=a(T,y,P),C===null?N=T:C.sibling=T,C=T);return Ve&&yi(v,P),N}for(k=r(v,k);!T.done;P++,T=w.next())T=p(k,v,P,T.value,j),T!==null&&(e&&T.alternate!==null&&k.delete(T.key===null?P:T.key),y=a(T,y,P),C===null?N=T:C.sibling=T,C=T);return e&&k.forEach(function(L){return t(v,L)}),Ve&&yi(v,P),N}function b(v,y,w,j){if(typeof w=="object"&&w!==null&&w.type===Ea&&w.key===null&&(w=w.props.children),typeof w=="object"&&w!==null){switch(w.$$typeof){case gd:e:{for(var N=w.key,C=y;C!==null;){if(C.key===N){if(N=w.type,N===Ea){if(C.tag===7){n(v,C.sibling),y=i(C,w.props.children),y.return=v,v=y;break e}}else if(C.elementType===N||typeof N=="object"&&N!==null&&N.$$typeof===fr&&nb(N)===C.type){n(v,C.sibling),y=i(C,w.props),y.ref=cl(v,C,w),y.return=v,v=y;break e}n(v,C);break}else t(v,C);C=C.sibling}w.type===Ea?(y=$i(w.props.children,v.mode,j,w.key),y.return=v,v=y):(j=hu(w.type,w.key,w.props,null,v.mode,j),j.ref=cl(v,y,w),j.return=v,v=j)}return o(v);case Pa:e:{for(C=w.key;y!==null;){if(y.key===C)if(y.tag===4&&y.stateNode.containerInfo===w.containerInfo&&y.stateNode.implementation===w.implementation){n(v,y.sibling),y=i(y,w.children||[]),y.return=v,v=y;break e}else{n(v,y);break}else t(v,y);y=y.sibling}y=ap(w,v.mode,j),y.return=v,v=y}return o(v);case fr:return C=w._init,b(v,y,C(w._payload),j)}if(Nl(w))return g(v,y,w,j);if(rl(w))return f(v,y,w,j);Ed(v,w)}return typeof w=="string"&&w!==""||typeof w=="number"?(w=""+w,y!==null&&y.tag===6?(n(v,y.sibling),y=i(y,w),y.return=v,v=y):(n(v,y),y=ip(w,v.mode,j),y.return=v,v=y),o(v)):n(v,y)}return b}var wo=XN(!0),JN=XN(!1),Uu=ni(null),Vu=null,Ia=null,Xg=null;function Jg(){Xg=Ia=Vu=null}function Zg(e){var t=Uu.current;Be(Uu),e._currentValue=t}function Ff(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function qa(e,t){Vu=e,Xg=Ia=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(qt=!0),e.firstContext=null)}function Dn(e){var t=e._currentValue;if(Xg!==e)if(e={context:e,memoizedValue:t,next:null},Ia===null){if(Vu===null)throw Error(F(308));Ia=e,Vu.dependencies={lanes:0,firstContext:e}}else Ia=Ia.next=e;return t}var Ci=null;function e0(e){Ci===null?Ci=[e]:Ci.push(e)}function ZN(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,e0(t)):(n.next=i.next,i.next=n),t.interleaved=n,Xs(e,r)}function Xs(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var xr=!1;function t0(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function e2(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ks(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function $r(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,we&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Xs(e,n)}return i=r.interleaved,i===null?(t.next=t,e0(r)):(t.next=i.next,i.next=t),r.interleaved=t,Xs(e,n)}function au(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Bg(e,n)}}function sb(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Wu(e,t,n,r){var i=e.updateQueue;xr=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,l=i.shared.pending;if(l!==null){i.shared.pending=null;var c=l,d=c.next;c.next=null,o===null?a=d:o.next=d,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,l=u.lastBaseUpdate,l!==o&&(l===null?u.firstBaseUpdate=d:l.next=d,u.lastBaseUpdate=c))}if(a!==null){var h=i.baseState;o=0,u=d=c=null,l=a;do{var m=l.lane,p=l.eventTime;if((r&m)===m){u!==null&&(u=u.next={eventTime:p,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var g=e,f=l;switch(m=t,p=n,f.tag){case 1:if(g=f.payload,typeof g=="function"){h=g.call(p,h,m);break e}h=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=f.payload,m=typeof g=="function"?g.call(p,h,m):g,m==null)break e;h=Ye({},h,m);break e;case 2:xr=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,m=i.effects,m===null?i.effects=[l]:m.push(l))}else p={eventTime:p,lane:m,tag:l.tag,payload:l.payload,callback:l.callback,next:null},u===null?(d=u=p,c=h):u=u.next=p,o|=m;if(l=l.next,l===null){if(l=i.shared.pending,l===null)break;m=l,l=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(!0);if(u===null&&(c=h),i.baseState=c,i.firstBaseUpdate=d,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);Gi|=o,e.lanes=o,e.memoizedState=h}}function rb(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],i=r.callback;if(i!==null){if(r.callback=null,r=n,typeof i!="function")throw Error(F(191,i));i.call(r)}}}var Uc={},ks=ni(Uc),lc=ni(Uc),cc=ni(Uc);function Pi(e){if(e===Uc)throw Error(F(174));return e}function n0(e,t){switch(Le(cc,t),Le(lc,e),Le(ks,Uc),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:vf(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=vf(t,e)}Be(ks),Le(ks,t)}function jo(){Be(ks),Be(lc),Be(cc)}function t2(e){Pi(cc.current);var t=Pi(ks.current),n=vf(t,e.type);t!==n&&(Le(lc,e),Le(ks,n))}function s0(e){lc.current===e&&(Be(ks),Be(lc))}var qe=ni(0);function Hu(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Zm=[];function r0(){for(var e=0;e<Zm.length;e++)Zm[e]._workInProgressVersionPrimary=null;Zm.length=0}var ou=nr.ReactCurrentDispatcher,ep=nr.ReactCurrentBatchConfig,Hi=0,Qe=null,lt=null,ht=null,Gu=!1,Il=!1,dc=0,bT=0;function Nt(){throw Error(F(321))}function i0(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!es(e[n],t[n]))return!1;return!0}function a0(e,t,n,r,i,a){if(Hi=a,Qe=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,ou.current=e===null||e.memoizedState===null?kT:ST,e=n(r,i),Il){a=0;
vendor: 6,592 bytes, line 38
38do{if(Il=!1,dc=0,25<=a)throw Error(F(301));a+=1,ht=lt=null,t.updateQueue=null,ou.current=CT,e=n(r,i)}while(Il)}if(ou.current=qu,t=lt!==null&<.next!==null,Hi=0,ht=lt=Qe=null,Gu=!1,t)throw Error(F(300));return e}function o0(){var e=dc!==0;return dc=0,e}function ds(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ht===null?Qe.memoizedState=ht=e:ht=ht.next=e,ht}function Mn(){if(lt===null){var e=Qe.alternate;e=e!==null?e.memoizedState:null}else e=lt.next;var t=ht===null?Qe.memoizedState:ht.next;if(t!==null)ht=t,lt=e;else{if(e===null)throw Error(F(310));lt=e,e={memoizedState:lt.memoizedState,baseState:lt.baseState,baseQueue:lt.baseQueue,queue:lt.queue,next:null},ht===null?Qe.memoizedState=ht=e:ht=ht.next=e}return ht}function uc(e,t){return typeof t=="function"?t(e):t}function tp(e){var t=Mn(),n=t.queue;if(n===null)throw Error(F(311));n.lastRenderedReducer=e;var r=lt,i=r.baseQueue,a=n.pending;if(a!==null){if(i!==null){var o=i.next;i.next=a.next,a.next=o}r.baseQueue=i=a,n.pending=null}if(i!==null){a=i.next,r=r.baseState;var l=o=null,c=null,d=a;do{var u=d.lane;if((Hi&u)===u)c!==null&&(c=c.next={lane:0,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null}),r=d.hasEagerState?d.eagerState:e(r,d.action);else{var h={lane:u,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null};c===null?(l=c=h,o=r):c=c.next=h,Qe.lanes|=u,Gi|=u}d=d.next}while(d!==null&&d!==a);c===null?o=r:c.next=l,es(r,t.memoizedState)||(qt=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=c,n.lastRenderedState=r}if(e=n.interleaved,e!==null){i=e;do a=i.lane,Qe.lanes|=a,Gi|=a,i=i.next;while(i!==e)}else i===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function np(e){var t=Mn(),n=t.queue;if(n===null)throw Error(F(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,a=t.memoizedState;if(i!==null){n.pending=null;var o=i=i.next;do a=e(a,o.action),o=o.next;while(o!==i);es(a,t.memoizedState)||(qt=!0),t.memoizedState=a,t.baseQueue===null&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function n2(){}function s2(e,t){var n=Qe,r=Mn(),i=t(),a=!es(r.memoizedState,i);if(a&&(r.memoizedState=i,qt=!0),r=r.queue,l0(a2.bind(null,n,r,e),[e]),r.getSnapshot!==t||a||ht!==null&&ht.memoizedState.tag&1){if(n.flags|=2048,hc(9,i2.bind(null,n,r,i,t),void 0,null),pt===null)throw Error(F(349));Hi&30||r2(n,t,i)}return i}function r2(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Qe.updateQueue,t===null?(t={lastEffect:null,stores:null},Qe.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function i2(e,t,n,r){t.value=n,t.getSnapshot=r,o2(t)&&l2(e)}function a2(e,t,n){return n(function(){o2(t)&&l2(e)})}function o2(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!es(e,n)}catch{return!0}}function l2(e){var t=Xs(e,1);t!==null&&Xn(t,e,1,-1)}function ib(e){var t=ds();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:uc,lastRenderedState:e},t.queue=e,e=e.dispatch=NT.bind(null,Qe,e),[t.memoizedState,e]}function hc(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=Qe.updateQueue,t===null?(t={lastEffect:null,stores:null},Qe.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function c2(){return Mn().memoizedState}function lu(e,t,n,r){var i=ds();Qe.flags|=e,i.memoizedState=hc(1|t,n,void 0,r===void 0?null:r)}function Dh(e,t,n,r){var i=Mn();r=r===void 0?null:r;var a=void 0;if(lt!==null){var o=lt.memoizedState;if(a=o.destroy,r!==null&&i0(r,o.deps)){i.memoizedState=hc(t,n,a,r);return}}Qe.flags|=e,i.memoizedState=hc(1|t,n,a,r)}function ab(e,t){return lu(8390656,8,e,t)}function l0(e,t){return Dh(2048,8,e,t)}function d2(e,t){return Dh(4,2,e,t)}function u2(e,t){return Dh(4,4,e,t)}function h2(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function m2(e,t,n){return n=n!=null?n.concat([e]):null,Dh(4,4,h2.bind(null,t,e),n)}function c0(){}function p2(e,t){var n=Mn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&i0(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function f2(e,t){var n=Mn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&i0(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function x2(e,t,n){return Hi&21?(es(n,t)||(n=wN(),Qe.lanes|=n,Gi|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,qt=!0),e.memoizedState=n)}function wT(e,t){var n=Ee;Ee=n!==0&&4>n?n:4,e(!0);var r=ep.transition;ep.transition={};try{e(!1),t()}finally{Ee=n,ep.transition=r}}function g2(){return Mn().memoizedState}function jT(e,t,n){var r=zr(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},v2(e))y2(t,n);else if(n=ZN(e,t,n,r),n!==null){var i=Ot();Xn(n,e,r,i),b2(n,t,r)}}function NT(e,t,n){var r=zr(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(v2(e))y2(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,l=a(o,n);if(i.hasEagerState=!0,i.eagerState=l,es(l,o)){var c=t.interleaved;c===null?(i.next=i,e0(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}finally{}n=ZN(e,t,i,r),n!==null&&(i=Ot(),Xn(n,e,r,i),b2(n,t,r))}}function v2(e){var t=e.alternate;return e===Qe||t!==null&&t===Qe}function y2(e,t){Il=Gu=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function b2(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Bg(e,n)}}var qu={readContext:Dn,useCallback:Nt,useContext:Nt,useEffect:Nt,useImperativeHandle:Nt,useInsertionEffect:Nt,useLayoutEffect:Nt,useMemo:Nt,useReducer:Nt,useRef:Nt,useState:Nt,useDebugValue:Nt,useDeferredValue:Nt,useTransition:Nt,useMutableSource:Nt,useSyncExternalStore:Nt,useId:Nt,unstable_isNewReconciler:!1},kT={readContext:Dn,useCallback:function(e,t){return ds().memoizedState=[e,t===void 0?null:t],e},useContext:Dn,useEffect:ab,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,lu(4194308,4,h2.bind(null,t,e),n)},useLayoutEffect:function(e,t){return lu(4194308,4,e,t)},useInsertionEffect:function(e,t){return lu(4,2,e,t)},useMemo:function(e,t){var n=ds();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ds();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=jT.bind(null,Qe,e),[r.memoizedState,e]}
vendor: 4,424 bytes, lines 38-40
38,useRef:function(e){var t=ds();return e={current:e},t.memoizedState=e},useState:ib,useDebugValue:c0,useDeferredValue:function(e){return ds().memoizedState=e},useTransition:function(){var e=ib(!1),t=e[0];return e=wT.bind(null,e[1]),ds().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Qe,i=ds();if(Ve){if(n===void 0)throw Error(F(407));n=n()}else{if(n=t(),pt===null)throw Error(F(349));Hi&30||r2(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,ab(a2.bind(null,r,a,e),[e]),r.flags|=2048,hc(9,i2.bind(null,r,a,n,t),void 0,null),n},useId:function(){var e=ds(),t=pt.identifierPrefix;if(Ve){var n=qs,r=Gs;n=(r&~(1<<32-Yn(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=dc++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=bT++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},ST={readContext:Dn,useCallback:p2,useContext:Dn,useEffect:l0,useImperativeHandle:m2,useInsertionEffect:d2,useLayoutEffect:u2,useMemo:f2,useReducer:tp,useRef:c2,useState:function(){return tp(uc)},useDebugValue:c0,useDeferredValue:function(e){var t=Mn();return x2(t,lt.memoizedState,e)},useTransition:function(){var e=tp(uc)[0],t=Mn().memoizedState;return[e,t]},useMutableSource:n2,useSyncExternalStore:s2,useId:g2,unstable_isNewReconciler:!1},CT={readContext:Dn,useCallback:p2,useContext:Dn,useEffect:l0,useImperativeHandle:m2,useInsertionEffect:d2,useLayoutEffect:u2,useMemo:f2,useReducer:np,useRef:c2,useState:function(){return np(uc)},useDebugValue:c0,useDeferredValue:function(e){var t=Mn();return lt===null?t.memoizedState=e:x2(t,lt.memoizedState,e)},useTransition:function(){var e=np(uc)[0],t=Mn().memoizedState;return[e,t]},useMutableSource:n2,useSyncExternalStore:s2,useId:g2,unstable_isNewReconciler:!1};function Vn(e,t){if(e&&e.defaultProps){t=Ye({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function $f(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:Ye({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Mh={isMounted:function(e){return(e=e._reactInternals)?oa(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ot(),i=zr(e),a=Ks(r,i);a.payload=t,n!=null&&(a.callback=n),t=$r(e,a,i),t!==null&&(Xn(t,e,i,r),au(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ot(),i=zr(e),a=Ks(r,i);a.tag=1,a.payload=t,n!=null&&(a.callback=n),t=$r(e,a,i),t!==null&&(Xn(t,e,i,r),au(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ot(),r=zr(e),i=Ks(n,r);i.tag=2,t!=null&&(i.callback=t),t=$r(e,i,r),t!==null&&(Xn(t,e,r,n),au(t,e,r))}};function ob(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!rc(n,r)||!rc(i,a):!0}function w2(e,t,n){var r=!1,i=Hr,a=t.contextType;return typeof a=="object"&&a!==null?a=Dn(a):(i=Yt(t)?Vi:Pt.current,r=t.contextTypes,a=(r=r!=null)?yo(e,i):Hr),t=new t(n,a),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Mh,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=a),t}function lb(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Mh.enqueueReplaceState(t,t.state,null)}function Bf(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},t0(e);var a=t.contextType;typeof a=="object"&&a!==null?i.context=Dn(a):(a=Yt(t)?Vi:Pt.current,i.context=yo(e,a)),i.state=e.memoizedState,a=t.getDerivedStateFromProps,typeof a=="function"&&($f(e,t,a,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof i.getSnapshotBeforeUpdate=="function"||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(t=i.state,typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount(),t!==i.state&&Mh.enqueueReplaceState(i,i.state,null),Wu(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount=="function"&&(e.flags|=4194308)}function No(e,t){try{var n="",r=t;do n+=eE(r),r=r.return;while(r);var i=n}catch(a){i=` 39Error generating stack: `+a.message+` 40`+a.stack}return{value:e,source:t,stack:i,digest:null}}
vendor: 11,028 bytes, line 40
40function sp(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function zf(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var PT=typeof WeakMap=="function"?WeakMap:Map;function j2(e,t,n){n=Ks(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Qu||(Qu=!0,Xf=r),zf(e,t)},n}function N2(e,t,n){n=Ks(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){zf(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch=="function"&&(n.callback=function(){zf(e,t),typeof r!="function"&&(Br===null?Br=new Set([this]):Br.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function cb(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new PT;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=zT.bind(null,e,t,n),t.then(e,e))}function db(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function ub(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Ks(-1,1),t.tag=2,$r(n,t,1))),n.lanes|=1),e)}var ET=nr.ReactCurrentOwner,qt=!1;function Dt(e,t,n,r){t.child=e===null?JN(t,null,n,r):wo(t,e.child,n,r)}function hb(e,t,n,r,i){n=n.render;var a=t.ref;return qa(t,i),r=a0(e,t,n,r,a,i),n=o0(),e!==null&&!qt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Js(e,t,i)):(Ve&&n&&Kg(t),t.flags|=1,Dt(e,t,r,i),t.child)}function mb(e,t,n,r,i){if(e===null){var a=n.type;return typeof a=="function"&&!g0(a)&&a.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=a,k2(e,t,a,r,i)):(e=hu(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!(e.lanes&i)){var o=a.memoizedProps;if(n=n.compare,n=n!==null?n:rc,n(o,r)&&e.ref===t.ref)return Js(e,t,i)}return t.flags|=1,e=Ur(a,r),e.ref=t.ref,e.return=t,t.child=e}function k2(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(rc(a,r)&&e.ref===t.ref)if(qt=!1,t.pendingProps=r=a,(e.lanes&i)!==0)e.flags&131072&&(qt=!0);else return t.lanes=e.lanes,Js(e,t,i)}return Uf(e,t,n,r,i)}function S2(e,t,n){var r=t.pendingProps,i=r.children,a=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Le(Fa,ln),ln|=n;else{if(!(n&1073741824))return e=a!==null?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Le(Fa,ln),ln|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=a!==null?a.baseLanes:n,Le(Fa,ln),ln|=r}else a!==null?(r=a.baseLanes|n,t.memoizedState=null):r=n,Le(Fa,ln),ln|=r;return Dt(e,t,i,n),t.child}function C2(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Uf(e,t,n,r,i){var a=Yt(n)?Vi:Pt.current;return a=yo(t,a),qa(t,i),n=a0(e,t,n,r,a,i),r=o0(),e!==null&&!qt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Js(e,t,i)):(Ve&&r&&Kg(t),t.flags|=1,Dt(e,t,n,i),t.child)}function pb(e,t,n,r,i){if(Yt(n)){var a=!0;$u(t)}else a=!1;if(qa(t,i),t.stateNode===null)cu(e,t),w2(t,n,r),Bf(t,n,r,i),r=!0;else if(e===null){var o=t.stateNode,l=t.memoizedProps;o.props=l;var c=o.context,d=n.contextType;typeof d=="object"&&d!==null?d=Dn(d):(d=Yt(n)?Vi:Pt.current,d=yo(t,d));var u=n.getDerivedStateFromProps,h=typeof u=="function"||typeof o.getSnapshotBeforeUpdate=="function";h||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==r||c!==d)&&lb(t,o,r,d),xr=!1;var m=t.memoizedState;o.state=m,Wu(t,r,o,i),c=t.memoizedState,l!==r||m!==c||Qt.current||xr?(typeof u=="function"&&($f(t,n,u,r),c=t.memoizedState),(l=xr||ob(t,n,l,r,m,c,d))?(h||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=d,r=l):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,e2(e,t),l=t.memoizedProps,d=t.type===t.elementType?l:Vn(t.type,l),o.props=d,h=t.pendingProps,m=o.context,c=n.contextType,typeof c=="object"&&c!==null?c=Dn(c):(c=Yt(n)?Vi:Pt.current,c=yo(t,c));var p=n.getDerivedStateFromProps;(u=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==h||m!==c)&&lb(t,o,r,c),xr=!1,m=t.memoizedState,o.state=m,Wu(t,r,o,i);var g=t.memoizedState;l!==h||m!==g||Qt.current||xr?(typeof p=="function"&&($f(t,n,p,r),g=t.memoizedState),(d=xr||ob(t,n,d,r,m,g,c)||!1)?(u||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,g,c),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,g,c)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=g),o.props=r,o.state=g,o.context=c,r=d):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Vf(e,t,n,r,a,i)}function Vf(e,t,n,r,i,a){C2(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return i&&Zy(t,n,!1),Js(e,t,a);r=t.stateNode,ET.current=t;var l=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=wo(t,e.child,null,a),t.child=wo(t,null,l,a)):Dt(e,t,l,a),t.memoizedState=r.state,i&&Zy(t,n,!0),t.child}function P2(e){var t=e.stateNode;t.pendingContext?Jy(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Jy(e,t.context,!1),n0(e,t.containerInfo)}function fb(e,t,n,r,i){return bo(),Yg(i),t.flags|=256,Dt(e,t,n,r),t.child}var Wf={dehydrated:null,treeContext:null,retryLane:0};function Hf(e){return{baseLanes:e,cachePool:null,transitions:null}}function E2(e,t,n){var r=t.pendingProps,i=qe.current,a=!1,o=(t.flags&128)!==0,l;if((l=o)||(l=e!==null&&e.memoizedState===null?!1:(i&2)!==0),l?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),Le(qe,i&1),e===null)return Of(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,a?(r=t.mode,a=t.child,o={mode:"hidden",children:o},!(r&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=Oh(o,r,0,null),e=$i(e,r,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=Hf(n),t.memoizedState=Wf,e):d0(t,o));if(i=e.memoizedState,i!==null&&(l=i.dehydrated,l!==null))return TT(e,t,o,r,l,i,n);if(a){a=r.fallback,o=t.mode,i=e.child,l=i.sibling;var c={mode:"hidden",children:r.children};return!(o&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=Ur(i,c),r.subtreeFlags=i.subtreeFlags&14680064),l!==null?a=Ur(l,a):(a=$i(a,o,n,null),a.flags|=2),a.return=t,r.return=t,r.sibling=a,t.child=r,r=a,a=t.child,o=e.child.memoizedState,o=o===null?Hf(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=e.childLanes&~n,t.memoizedState=Wf,r}return a=e.child,e=a.sibling,r=Ur(a,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function d0(e,t){return t=Oh({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Td(e,t,n,r){return r!==null&&Yg(r),wo(t,e.child,null,n),e=d0(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function TT(e,t,n,r,i,a,o){if(n)return t.flags&256?(t.flags&=-257,r=sp(Error(F(422))),Td(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(a=r.fallback,i=t.mode,r=Oh({mode:"visible",children:r.children},i,0,null),a=$i(a,i,o,null),a.flags|=2,r.return=t,a.return=t,r.sibling=a,t.child=r,t.mode&1&&wo(t,e.child,null,o),t.child.memoizedState=Hf(o),t.memoizedState=Wf,a);if(!(t.mode&1))return Td(e,t,o,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var l=r.dgst;return r=l,a=Error(F(419)),r=sp(a,r,void 0),Td(e,t,o,r)}if(l=(o&e.childLanes)!==0,qt||l){if(r=pt,r!==null){switch(o&-o){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(r.suspendedLanes|o)?0:i,i!==0&&i!==a.retryLane&&(a.retryLane=i,Xs(e,i),Xn(r,e,i,-1))}return x0(),r=sp(Error(F(421))),Td(e,t,o,r)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=UT.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,dn=Fr(i.nextSibling),un=t,Ve=!0,qn=null,e!==null&&(Nn[kn++]=Gs,Nn[kn++]=qs,Nn[kn++]=Wi,Gs=e.id,qs=e.overflow,Wi=t),t=d0(t,r.children),t.flags|=4096,t)}function xb(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ff(e.return,t,n)}function rp(e,t,n,r,i){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=i)}function T2(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;if(Dt(e,t,r.children,n),r=qe.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&xb(e,n,t);else if(e.tag===19)xb(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Le(qe,r),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Hu(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),rp(t,!1,i,n,a);break;case"backwards":for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Hu(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}rp(t,!0,n,null,a);break;case"together":rp(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function cu(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}
vendor: 5,608 bytes, line 40
40function Js(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Gi|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(F(153));if(t.child!==null){for(e=t.child,n=Ur(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ur(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function _T(e,t,n){switch(t.tag){case 3:P2(t),bo();break;case 5:t2(t);break;case 1:Yt(t.type)&&$u(t);break;case 4:n0(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;Le(Uu,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(Le(qe,qe.current&1),t.flags|=128,null):n&t.child.childLanes?E2(e,t,n):(Le(qe,qe.current&1),e=Js(e,t,n),e!==null?e.sibling:null);Le(qe,qe.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return T2(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Le(qe,qe.current),r)break;return null;case 22:case 23:return t.lanes=0,S2(e,t,n)}return Js(e,t,n)}var _2,Gf,A2,R2;_2=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Gf=function(){};A2=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,Pi(ks.current);var a=null;switch(n){case"input":i=pf(e,i),r=pf(e,r),a=[];break;case"select":i=Ye({},i,{value:void 0}),r=Ye({},r,{value:void 0}),a=[];break;case"textarea":i=gf(e,i),r=gf(e,r),a=[];break;default:typeof i.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Ou)}yf(n,r);var o;n=null;for(d in i)if(!r.hasOwnProperty(d)&&i.hasOwnProperty(d)&&i[d]!=null)if(d==="style"){var l=i[d];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else d!=="dangerouslySetInnerHTML"&&d!=="children"&&d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&d!=="autoFocus"&&(Xl.hasOwnProperty(d)?a||(a=[]):(a=a||[]).push(d,null));for(d in r){var c=r[d];if(l=i!=null?i[d]:void 0,r.hasOwnProperty(d)&&c!==l&&(c!=null||l!=null))if(d==="style")if(l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(a||(a=[]),a.push(d,n)),n=c;else d==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,l=l?l.__html:void 0,c!=null&&l!==c&&(a=a||[]).push(d,c)):d==="children"?typeof c!="string"&&typeof c!="number"||(a=a||[]).push(d,""+c):d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&(Xl.hasOwnProperty(d)?(c!=null&&d==="onScroll"&&Fe("scroll",e),a||l===c||(a=[])):(a=a||[]).push(d,c))}n&&(a=a||[]).push("style",n);var d=a;(t.updateQueue=d)&&(t.flags|=4)}};R2=function(e,t,n,r){n!==r&&(t.flags|=4)};function dl(e,t){if(!Ve)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function kt(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function AT(e,t,n){var r=t.pendingProps;switch(Qg(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return kt(t),null;case 1:return Yt(t.type)&&Fu(),kt(t),null;case 3:return r=t.stateNode,jo(),Be(Qt),Be(Pt),r0(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Pd(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,qn!==null&&(ex(qn),qn=null))),Gf(e,t),kt(t),null;case 5:s0(t);var i=Pi(cc.current);if(n=t.type,e!==null&&t.stateNode!=null)A2(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(F(166));return kt(t),null}if(e=Pi(ks.current),Pd(t)){r=t.stateNode,n=t.type;var a=t.memoizedProps;switch(r[vs]=t,r[oc]=a,e=(t.mode&1)!==0,n){case"dialog":Fe("cancel",r),Fe("close",r);break;case"iframe":case"object":case"embed":Fe("load",r);break;case"video":case"audio":for(i=0;i<Sl.length;i++)Fe(Sl[i],r);break;case"source":Fe("error",r);break;case"img":case"image":case"link":Fe("error",r),Fe("load",r);break;case"details":Fe("toggle",r);break;case"input":Sy(r,a),Fe("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!a.multiple},Fe("invalid",r);break;case"textarea":Py(r,a),Fe("invalid",r)}yf(n,a),i=null;for(var o in a)if(a.hasOwnProperty(o)){var l=a[o];o==="children"?typeof l=="string"?r.textContent!==l&&(a.suppressHydrationWarning!==!0&&Cd(r.textContent,l,e),i=["children",l]):typeof l=="number"&&r.textContent!==""+l&&(a.suppressHydrationWarning!==!0&&Cd(r.textContent,l,e),i=["children",""+l]):Xl.hasOwnProperty(o)&&l!=null&&o==="onScroll"&&Fe("scroll",r)}switch(n){case"input":vd(r),Cy(r,a,!0);break;case"textarea":vd(r),Ey(r);break;case"select":case"option":break;default:typeof a.onClick=="function"&&(r.onclick=Ou)}r=i,t.updateQueue=r,r!==null&&(t.flags|=4)}else{o=i.nodeType===9?i:i.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=aN(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>
40",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[vs]=t,e[oc]=r,_2(e,t,!1,!1),t.stateNode=e;e:{switch(o=bf(n,r),n){case"dialog":Fe("cancel",e),Fe("close",e),i=r;break;case"iframe":case"object":case"embed":Fe("load",e),i=r;break;case"video":case"audio":for(i=0;i<Sl.length;i++)Fe(Sl[i],e);i=r;break;case"source":Fe("error",e),i=r;break;case"img":case"image":case"link":Fe("error",e),Fe("load",e),i=r;break;case"details":Fe("toggle",e),i=r;break;case"input":Sy(e,r),i=pf(e,r),Fe("invalid",e);break;case"option":i=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},i=Ye({},r,{value:void 0}),Fe("invalid",e);break;case"textarea":Py(e,r),i=gf(e,r),Fe("invalid",e);break;default:i=r}yf(n,i),l=i;for(a in l)if(l.hasOwnProperty(a)){var c=l[a];a==="style"?cN(e,c):a==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,c!=null&&oN(e,c)):a==="children"?typeof c=="string"?(n!=="textarea"||c!=="")&&Jl(e,c):typeof c=="number"&&Jl(e,""+c):a!=="suppressContentEditableWarning"&&a!=="suppressHydrationWarning"&&a!=="autoFocus"&&(Xl.hasOwnProperty(a)?c!=null&&a==="onScroll"&&Fe("scroll",e):c!=null&&Mg(e,a,c,o))}switch(n){case"input":vd(e),Cy(e,r,!1);break;case"textarea":vd(e),Ey(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Wr(r.value));break;case"select":e.multiple=!!r.multiple,a=r.value,a!=null?Va(e,!!r.multiple,a,!1):r.defaultValue!=null&&Va(e,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick=="function"&&(e.onclick=Ou)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return kt(t),null;case 6:if(e&&t.stateNode!=null)R2(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(F(166));if(n=Pi(cc.current),Pi(ks.current),Pd(t)){if(r=t.stateNode,n=t.memoizedProps,r[vs]=t,(a=r.nodeValue!==n)&&(e=un,e!==null))switch(e.tag){case 3:Cd(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Cd(r.nodeValue,n,(e.mode&1)!==0)}a&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[vs]=t,t.stateNode=r}return kt(t),null;case 13:if(Be(qe),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(Ve&&dn!==null&&t.mode&1&&!(t.flags&128))YN(),bo(),t.flags|=98560,a=!1;else if(a=Pd(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(F(318));if(a=t.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(F(317));a[vs]=t}else bo(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;kt(t),a=!1}else qn!==null&&(ex(qn),qn=null),a=!0;if(!a)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||qe.current&1?ct===0&&(ct=3):x0())),t.updateQueue!==null&&(t.flags|=4),kt(t),null);case 4:return jo(),Gf(e,t),e===null&&ic(t.stateNode.containerInfo),kt(t),null;case 10:return Zg(t.type._context),kt(t),null;case 17:return Yt(t.type)&&Fu(),kt(t),null;case 19:if(Be(qe),a=t.memoizedState,a===null)return kt(t),null;if(r=(t.flags&128)!==0,o=a.rendering,o===null)if(r)dl(a,!1);else{if(ct!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Hu(e),o!==null){for(t.flags|=128,dl(a,!1),r=o.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)a=n,e=r,a.flags&=14680066,o=a.alternate,o===null?(a.childLanes=0,a.lanes=e,a.child=null,a.subtreeFlags=0,a.memoizedProps=null,a.memoizedState=null,a.updateQueue=null,a.dependencies=null,a.stateNode=null):(a.childLanes=o.childLanes,a.lanes=o.lanes,a.child=o.child,a.subtreeFlags=0,a.deletions=null,a.memoizedProps=o.memoizedProps,a.memoizedState=o.memoizedState,a.updateQueue=o.updateQueue,a.type=o.type,e=o.dependencies,a.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Le(qe,qe.current&1|2),t.child}e=e.sibling}a.tail!==null&&Ze()>ko&&(t.flags|=128,r=!0,dl(a,!1),t.lanes=4194304)}else{if(!r)if(e=Hu(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),dl(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!Ve)return kt(t),null}else 2*Ze()-a.renderingStartTime>ko&&n!==1073741824&&(t.flags|=128,r=!0,dl(a,!1),t.lanes=4194304);a.isBackwards?(o.sibling=t.child,t.child=o):(n=a.last,n!==null?n.sibling=o:t.child=o,a.last=o)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Ze(),t.sibling=null,n=qe.current,Le(qe,r?n&1|2:n&1),t):(kt(t),null);case 22:case 23:return f0(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?ln&1073741824&&(kt(t),t.subtreeFlags&6&&(t.flags|=8192)):kt(t),null;case 24:return null;case 25:return null}throw Error(F(156,t.tag))}function RT(e,t){switch(Qg(t),t.tag){case 1:return Yt(t.type)&&Fu(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;
vendor: 26,684 bytes, line 40
40case 3:return jo(),Be(Qt),Be(Pt),r0(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return s0(t),null;case 13:if(Be(qe),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(F(340));bo()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Be(qe),null;case 4:return jo(),null;case 10:return Zg(t.type._context),null;case 22:case 23:return f0(),null;case 24:return null;default:return null}}var _d=!1,Ct=!1,DT=typeof WeakSet=="function"?WeakSet:Set,K=null;function Oa(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Je(e,t,r)}else n.current=null}function qf(e,t,n){try{n()}catch(r){Je(e,t,r)}}var gb=!1;function MT(e,t){if(_f=Mu,e=ON(),qg(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break e}var o=0,l=-1,c=-1,d=0,u=0,h=e,m=null;t:for(;;){for(var p;h!==n||i!==0&&h.nodeType!==3||(l=o+i),h!==a||r!==0&&h.nodeType!==3||(c=o+r),h.nodeType===3&&(o+=h.nodeValue.length),(p=h.firstChild)!==null;)m=h,h=p;for(;;){if(h===e)break t;if(m===n&&++d===i&&(l=o),m===a&&++u===r&&(c=o),(p=h.nextSibling)!==null)break;h=m,m=h.parentNode}h=p}n=l===-1||c===-1?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Af={focusedElem:e,selectionRange:n},Mu=!1,K=t;K!==null;)if(t=K,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,K=e;else for(;K!==null;){t=K;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var f=g.memoizedProps,b=g.memoizedState,v=t.stateNode,y=v.getSnapshotBeforeUpdate(t.elementType===t.type?f:Vn(t.type,f),b);v.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var w=t.stateNode.containerInfo;w.nodeType===1?w.textContent="":w.nodeType===9&&w.documentElement&&w.removeChild(w.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(F(163))}}catch(j){Je(t,t.return,j)}if(e=t.sibling,e!==null){e.return=t.return,K=e;break}K=t.return}return g=gb,gb=!1,g}function Ol(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&qf(t,n,a)}i=i.next}while(i!==r)}}function Lh(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Kf(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function D2(e){var t=e.alternate;t!==null&&(e.alternate=null,D2(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[vs],delete t[oc],delete t[Mf],delete t[xT],delete t[gT])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function M2(e){return e.tag===5||e.tag===3||e.tag===4}function vb(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||M2(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Qf(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ou));else if(r!==4&&(e=e.child,e!==null))for(Qf(e,t,n),e=e.sibling;e!==null;)Qf(e,t,n),e=e.sibling}function Yf(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Yf(e,t,n),e=e.sibling;e!==null;)Yf(e,t,n),e=e.sibling}var xt=null,Hn=!1;function ar(e,t,n){for(n=n.child;n!==null;)L2(e,t,n),n=n.sibling}function L2(e,t,n){if(Ns&&typeof Ns.onCommitFiberUnmount=="function")try{Ns.onCommitFiberUnmount(Ph,n)}catch{}switch(n.tag){case 5:Ct||Oa(n,t);case 6:var r=xt,i=Hn;xt=null,ar(e,t,n),xt=r,Hn=i,xt!==null&&(Hn?(e=xt,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):xt.removeChild(n.stateNode));break;case 18:xt!==null&&(Hn?(e=xt,n=n.stateNode,e.nodeType===8?Xm(e.parentNode,n):e.nodeType===1&&Xm(e,n),nc(e)):Xm(xt,n.stateNode));break;case 4:r=xt,i=Hn,xt=n.stateNode.containerInfo,Hn=!0,ar(e,t,n),xt=r,Hn=i;break;case 0:case 11:case 14:case 15:if(!Ct&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&qf(n,t,o),i=i.next}while(i!==r)}ar(e,t,n);break;case 1:if(!Ct&&(Oa(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Je(n,t,l)}ar(e,t,n);break;case 21:ar(e,t,n);break;case 22:n.mode&1?(Ct=(r=Ct)||n.memoizedState!==null,ar(e,t,n),Ct=r):ar(e,t,n);break;default:ar(e,t,n)}}function yb(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new DT),t.forEach(function(r){var i=VT.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function On(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];try{var a=e,o=t,l=o;e:for(;l!==null;){switch(l.tag){case 5:xt=l.stateNode,Hn=!1;break e;case 3:xt=l.stateNode.containerInfo,Hn=!0;break e;case 4:xt=l.stateNode.containerInfo,Hn=!0;break e}l=l.return}if(xt===null)throw Error(F(160));L2(a,o,i),xt=null,Hn=!1;var c=i.alternate;c!==null&&(c.return=null),i.return=null}catch(d){Je(i,t,d)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)I2(t,e),t=t.sibling}function I2(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(On(t,e),cs(e),r&4){try{Ol(3,e,e.return),Lh(3,e)}catch(f){Je(e,e.return,f)}try{Ol(5,e,e.return)}catch(f){Je(e,e.return,f)}}break;case 1:On(t,e),cs(e),r&512&&n!==null&&Oa(n,n.return);break;case 5:if(On(t,e),cs(e),r&512&&n!==null&&Oa(n,n.return),e.flags&32){var i=e.stateNode;try{Jl(i,"")}catch(f){Je(e,e.return,f)}}if(r&4&&(i=e.stateNode,i!=null)){var a=e.memoizedProps,o=n!==null?n.memoizedProps:a,l=e.type,c=e.updateQueue;if(e.updateQueue=null,c!==null)try{l==="input"&&a.type==="radio"&&a.name!=null&&rN(i,a),bf(l,o);var d=bf(l,a);for(o=0;o<c.length;o+=2){var u=c[o],h=c[o+1];u==="style"?cN(i,h):u==="dangerouslySetInnerHTML"?oN(i,h):u==="children"?Jl(i,h):Mg(i,u,h,d)}switch(l){case"input":ff(i,a);break;case"textarea":iN(i,a);break;case"select":var m=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!a.multiple;var p=a.value;p!=null?Va(i,!!a.multiple,p,!1):m!==!!a.multiple&&(a.defaultValue!=null?Va(i,!!a.multiple,a.defaultValue,!0):Va(i,!!a.multiple,a.multiple?[]:"",!1))}i[oc]=a}catch(f){Je(e,e.return,f)}}break;case 6:if(On(t,e),cs(e),r&4){if(e.stateNode===null)throw Error(F(162));i=e.stateNode,a=e.memoizedProps;try{i.nodeValue=a}catch(f){Je(e,e.return,f)}}break;case 3:if(On(t,e),cs(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{nc(t.containerInfo)}catch(f){Je(e,e.return,f)}break;case 4:On(t,e),cs(e);break;case 13:On(t,e),cs(e),i=e.child,i.flags&8192&&(a=i.memoizedState!==null,i.stateNode.isHidden=a,!a||i.alternate!==null&&i.alternate.memoizedState!==null||(m0=Ze())),r&4&&yb(e);break;case 22:if(u=n!==null&&n.memoizedState!==null,e.mode&1?(Ct=(d=Ct)||u,On(t,e),Ct=d):On(t,e),cs(e),r&8192){if(d=e.memoizedState!==null,(e.stateNode.isHidden=d)&&!u&&e.mode&1)for(K=e,u=e.child;u!==null;){for(h=K=u;K!==null;){switch(m=K,p=m.child,m.tag){case 0:case 11:case 14:case 15:Ol(4,m,m.return);break;case 1:Oa(m,m.return);var g=m.stateNode;if(typeof g.componentWillUnmount=="function"){r=m,n=m.return;try{t=r,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(f){Je(r,n,f)}}break;case 5:Oa(m,m.return);break;case 22:if(m.memoizedState!==null){wb(h);continue}}p!==null?(p.return=m,K=p):wb(h)}u=u.sibling}e:for(u=null,h=e;;){if(h.tag===5){if(u===null){u=h;try{i=h.stateNode,d?(a=i.style,typeof a.setProperty=="function"?a.setProperty("display","none","important"):a.display="none"):(l=h.stateNode,c=h.memoizedProps.style,o=c!=null&&c.hasOwnProperty("display")?c.display:null,l.style.display=lN("display",o))}catch(f){Je(e,e.return,f)}}}else if(h.tag===6){if(u===null)try{h.stateNode.nodeValue=d?"":h.memoizedProps}catch(f){Je(e,e.return,f)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===e)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===e)break e;for(;h.sibling===null;){if(h.return===null||h.return===e)break e;u===h&&(u=null),h=h.return}u===h&&(u=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:On(t,e),cs(e),r&4&&yb(e);break;case 21:break;default:On(t,e),cs(e)}}function cs(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(M2(n)){var r=n;break e}n=n.return}throw Error(F(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(Jl(i,""),r.flags&=-33);var a=vb(e);Yf(e,a,i);break;case 3:case 4:var o=r.stateNode.containerInfo,l=vb(e);Qf(e,l,o);break;default:throw Error(F(161))}}catch(c){Je(e,e.return,c)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function LT(e,t,n){K=e,O2(e)}function O2(e,t,n){for(var r=(e.mode&1)!==0;K!==null;){var i=K,a=i.child;if(i.tag===22&&r){var o=i.memoizedState!==null||_d;if(!o){var l=i.alternate,c=l!==null&&l.memoizedState!==null||Ct;l=_d;var d=Ct;if(_d=o,(Ct=c)&&!d)for(K=i;K!==null;)o=K,c=o.child,o.tag===22&&o.memoizedState!==null?jb(i):c!==null?(c.return=o,K=c):jb(i);for(;a!==null;)K=a,O2(a),a=a.sibling;K=i,_d=l,Ct=d}bb(e)}else i.subtreeFlags&8772&&a!==null?(a.return=i,K=a):bb(e)}}function bb(e){for(;K!==null;){var t=K;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Ct||Lh(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!Ct)if(n===null)r.componentDidMount();else{var i=t.elementType===t.type?n.memoizedProps:Vn(t.type,n.memoizedProps);r.componentDidUpdate(i,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var a=t.updateQueue;a!==null&&rb(t,a,r);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}rb(t,o,n)}break;case 5:var l=t.stateNode;if(n===null&&t.flags&4){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var d=t.alternate;if(d!==null){var u=d.memoizedState;if(u!==null){var h=u.dehydrated;h!==null&&nc(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(F(163))}Ct||t.flags&512&&Kf(t)}catch(m){Je(t,t.return,m)}}if(t===e){K=null;break}if(n=t.sibling,n!==null){n.return=t.return,K=n;break}K=t.return}}function wb(e){for(;K!==null;){var t=K;if(t===e){K=null;break}var n=t.sibling;if(n!==null){n.return=t.return,K=n;break}K=t.return}}function jb(e){for(;K!==null;){var t=K;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Lh(4,t)}catch(c){Je(t,n,c)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var i=t.return;try{r.componentDidMount()}catch(c){Je(t,i,c)}}var a=t.return;try{Kf(t)}catch(c){Je(t,a,c)}break;case 5:var o=t.return;try{Kf(t)}catch(c){Je(t,o,c)}}}catch(c){Je(t,t.return,c)}if(t===e){K=null;break}var l=t.sibling;if(l!==null){l.return=t.return,K=l;break}K=t.return}}var IT=Math.ceil,Ku=nr.ReactCurrentDispatcher,u0=nr.ReactCurrentOwner,Pn=nr.ReactCurrentBatchConfig,we=0,pt=null,tt=null,wt=0,ln=0,Fa=ni(0),ct=0,mc=null,Gi=0,Ih=0,h0=0,Fl=null,Ht=null,m0=0,ko=1/0,Vs=null,Qu=!1,Xf=null,Br=null,Ad=!1,_r=null,Yu=0,$l=0,Jf=null,du=-1,uu=0;function Ot(){return we&6?Ze():du!==-1?du:du=Ze()}function zr(e){return e.mode&1?we&2&&wt!==0?wt&-wt:yT.transition!==null?(uu===0&&(uu=wN()),uu):(e=Ee,e!==0||(e=window.event,e=e===void 0?16:EN(e.type)),e):1}function Xn(e,t,n,r){if(50<$l)throw $l=0,Jf=null,Error(F(185));$c(e,n,r),(!(we&2)||e!==pt)&&(e===pt&&(!(we&2)&&(Ih|=n),ct===4&&yr(e,wt)),Xt(e,r),n===1&&we===0&&!(t.mode&1)&&(ko=Ze()+500,Rh&&si()))}function Xt(e,t){var n=e.callbackNode;yE(e,t);var r=Du(e,e===pt?wt:0);if(r===0)n!==null&&Ay(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Ay(n),t===1)e.tag===0?vT(Nb.bind(null,e)):qN(Nb.bind(null,e)),pT(function(){!(we&6)&&si()}),n=null;else{switch(jN(r)){case 1:n=$g;break;case 4:n=yN;break;case 16:n=Ru;break;case 536870912:n=bN;break;default:n=Ru}n=H2(n,F2.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function F2(e,t){if(du=-1,uu=0,we&6)throw Error(F(327));var n=e.callbackNode;if(Ka()&&e.callbackNode!==n)return null;var r=Du(e,e===pt?wt:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Xu(e,r);else{t=r;var i=we;we|=2;var a=B2();(pt!==e||wt!==t)&&(Vs=null,ko=Ze()+500,Fi(e,t));do try{$T();break}catch(l){$2(e,l)}while(!0);Jg(),Ku.current=a,we=i,tt!==null?t=0:(pt=null,wt=0,t=ct)}if(t!==0){if(t===2&&(i=Sf(e),i!==0&&(r=i,t=Zf(e,i))),t===1)throw n=mc,Fi(e,0),yr(e,r),Xt(e,Ze()),n;if(t===6)yr(e,r);else{if(i=e.current.alternate,!(r&30)&&!OT(i)&&(t=Xu(e,r),t===2&&(a=Sf(e),a!==0&&(r=a,t=Zf(e,a))),t===1))throw n=mc,Fi(e,0),yr(e,r),Xt(e,Ze()),n;switch(e.finishedWork=i,e.finishedLanes=r,t){case 0:case 1:throw Error(F(345));case 2:bi(e,Ht,Vs);break;case 3:if(yr(e,r),(r&130023424)===r&&(t=m0+500-Ze(),10<t)){if(Du(e,0)!==0)break;if(i=e.suspendedLanes,(i&r)!==r){Ot(),e.pingedLanes|=e.suspendedLanes&i;break}e.timeoutHandle=Df(bi.bind(null,e,Ht,Vs),t);break}bi(e,Ht,Vs);break;case 4:if(yr(e,r),(r&4194240)===r)break;for(t=e.eventTimes,i=-1;0<r;){var o=31-Yn(r);a=1<<o,o=t[o],o>i&&(i=o),r&=~a}if(r=i,r=Ze()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*IT(r/1960))-r,10<r){e.timeoutHandle=Df(bi.bind(null,e,Ht,Vs),r);break}bi(e,Ht,Vs);break;case 5:bi(e,Ht,Vs);break;default:throw Error(F(329))}}}return Xt(e,Ze()),e.callbackNode===n?F2.bind(null,e):null}function Zf(e,t){var n=Fl;return e.current.memoizedState.isDehydrated&&(Fi(e,t).flags|=256),e=Xu(e,t),e!==2&&(t=Ht,Ht=n,t!==null&&ex(t)),e}function ex(e){Ht===null?Ht=e:Ht.push.apply(Ht,e)}function OT(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!es(a(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function yr(e,t){for(t&=~h0,t&=~Ih,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Yn(t),r=1<<n;e[n]=-1,t&=~r}}function Nb(e){if(we&6)throw Error(F(327));Ka();var t=Du(e,0);if(!(t&1))return Xt(e,Ze()),null;var n=Xu(e,t);if(e.tag!==0&&n===2){var r=Sf(e);r!==0&&(t=r,n=Zf(e,r))}if(n===1)throw n=mc,Fi(e,0),yr(e,t),Xt(e,Ze()),n;if(n===6)throw Error(F(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,bi(e,Ht,Vs),Xt(e,Ze()),null}function p0(e,t){var n=we;we|=1;try{return e(t)}finally{we=n,we===0&&(ko=Ze()+500,Rh&&si())}}function qi(e){_r!==null&&_r.tag===0&&!(we&6)&&Ka();var t=we;we|=1;var n=Pn.transition,r=Ee;try{if(Pn.transition=null,Ee=1,e)return e()}finally{Ee=r,Pn.transition=n,we=t,!(we&6)&&si()}}function f0(){ln=Fa.current,Be(Fa)}function Fi(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,mT(n)),tt!==null)for(n=tt.return;n!==null;){var r=n;switch(Qg(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Fu();break;case 3:jo(),Be(Qt),Be(Pt),r0();break;case 5:s0(r);break;case 4:jo();break;case 13:Be(qe);break;case 19:Be(qe);break;case 10:Zg(r.type._context);break;case 22:case 23:f0()}n=n.return}if(pt=e,tt=e=Ur(e.current,null),wt=ln=t,ct=0,mc=null,h0=Ih=Gi=0,Ht=Fl=null,Ci!==null){for(t=0;t<Ci.length;t++)if(n=Ci[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,a=n.pending;if(a!==null){var o=a.next;a.next=i,r.next=o}n.pending=r}Ci=null}return e}function $2(e,t){do{var n=tt;try{if(Jg(),ou.current=qu,Gu){for(var r=Qe.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Gu=!1}if(Hi=0,ht=lt=Qe=null,Il=!1,dc=0,u0.current=null,n===null||n.return===null){ct=1,mc=t,tt=null;break}e:{var a=e,o=n.return,l=n,c=t;if(t=wt,l.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){var d=c,u=l,h=u.tag;if(!(u.mode&1)&&(h===0||h===11||h===15)){var m=u.alternate;m?(u.updateQueue=m.updateQueue,u.memoizedState=m.memoizedState,u.lanes=m.lanes):(u.updateQueue=null,u.memoizedState=null)}var p=db(o);if(p!==null){p.flags&=-257,ub(p,o,l,a,t),p.mode&1&&cb(a,d,t),t=p,c=d;var g=t.updateQueue;if(g===null){var f=new Set;f.add(c),t.updateQueue=f}else g.add(c);break e}else{if(!(t&1)){cb(a,d,t),x0();break e}c=Error(F(426))}}else if(Ve&&l.mode&1){var b=db(o);if(b!==null){!(b.flags&65536)&&(b.flags|=256),ub(b,o,l,a,t),Yg(No(c,l));break e}}a=c=No(c,l),ct!==4&&(ct=2),Fl===null?Fl=[a]:Fl.push(a),a=o;do{switch(a.tag){case 3:a.flags|=65536,t&=-t,a.lanes|=t;var v=j2(a,c,t);sb(a,v);break e;case 1:l=c;var y=a.type,w=a.stateNode;if(!(a.flags&128)&&(typeof y.getDerivedStateFromError=="function"||w!==null&&typeof w.componentDidCatch=="function"&&(Br===null||!Br.has(w)))){a.flags|=65536,t&=-t,a.lanes|=t;var j=N2(a,l,t);sb(a,j);break e}}a=a.return}while(a!==null)}U2(n)}catch(N){t=N,tt===n&&n!==null&&(tt=n=n.return);continue}break}while(!0)}function B2(){var e=Ku.current;return Ku.current=qu,e===null?qu:e}function x0(){(ct===0||ct===3||ct===2)&&(ct=4),pt===null||!(Gi&268435455)&&!(Ih&268435455)||yr(pt,wt)}function Xu(e,t){var n=we;we|=2;var r=B2();(pt!==e||wt!==t)&&(Vs=null,Fi(e,t));do try{FT();break}catch(i){$2(e,i)}while(!0);if(Jg(),we=n,Ku.current=r,tt!==null)throw Error(F(261));return pt=null,wt=0,ct}function FT(){for(;tt!==null;)z2(tt)}function $T(){for(;tt!==null&&!dE();)z2(tt)}function z2(e){var t=W2(e.alternate,e,ln);e.memoizedProps=e.pendingProps,t===null?U2(e):tt=t,u0.current=null}function U2(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=RT(n,t),n!==null){n.flags&=32767,tt=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{ct=6,tt=null;return}}else if(n=AT(n,t,ln),n!==null){tt=n;return}if(t=t.sibling,t!==null){tt=t;return}tt=t=e}while(t!==null);ct===0&&(ct=5)}function bi(e,t,n){var r=Ee,i=Pn.transition;try{Pn.transition=null,Ee=1,BT(e,t,n,r)}finally{Pn.transition=i,Ee=r}return null}function BT(e,t,n,r){do Ka();while(_r!==null);if(we&6)throw Error(F(327));n=e.finishedWork;var i=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(F(177));e.callbackNode=null,e.callbackPriority=0;var a=n.lanes|n.childLanes;if(bE(e,a),e===pt&&(tt=pt=null,wt=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Ad||(Ad=!0,H2(Ru,function(){return Ka(),null})),a=(n.flags&15990)!==0,n.subtreeFlags&15990||a){a=Pn.transition,Pn.transition=null;var o=Ee;Ee=1;var l=we;we|=4,u0.current=null,MT(e,n),I2(n,e),aT(Af),Mu=!!_f,Af=_f=null,e.current=n,LT(n),uE(),we=l,Ee=o,Pn.transition=a}else e.current=n;if(Ad&&(Ad=!1,_r=e,Yu=i),a=e.pendingLanes,a===0&&(Br=null),pE(n.stateNode),Xt(e,Ze()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)i=t[n],r(i.value,{componentStack:i.stack,digest:i.digest});if(Qu)throw Qu=!1,e=Xf,Xf=null,e;return Yu&1&&e.tag!==0&&Ka(),a=e.pendingLanes,a&1?e===Jf?$l++:($l=0,Jf=e):$l=0,si(),null}function Ka(){if(_r!==null){var e=jN(Yu),t=Pn.transition,n=Ee;try{if(Pn.transition=null,Ee=16>e?16:e,_r===null)var r=!1;else{if(e=_r,_r=null,Yu=0,we&6)throw Error(F(331));var i=we;for(we|=4,K=e.current;K!==null;){var a=K,o=a.child;if(K.flags&16){var l=a.deletions;if(l!==null){for(var c=0;c<l.length;c++){var d=l[c];for(K=d;K!==null;){var u=K;switch(u.tag){case 0:case 11:case 15:Ol(8,u,a)}var h=u.child;if(h!==null)h.return=u,K=h;else for(;K!==null;){u=K;var m=u.sibling,p=u.return;if(D2(u),u===d){K=null;break}if(m!==null){m.return=p,K=m;break}K=p}}}var g=a.alternate;if(g!==null){var f=g.child;if(f!==null){g.child=null;do{var b=f.sibling;f.sibling=null,f=b}while(f!==null)}}K=a}}if(a.subtreeFlags&2064&&o!==null)o.return=a,K=o;else e:for(;K!==null;){if(a=K,a.flags&2048)switch(a.tag){case 0:case 11:case 15:Ol(9,a,a.return)}var v=a.sibling;if(v!==null){v.return=a.return,K=v;break e}K=a.return}}var y=e.current;for(K=y;K!==null;){o=K;var w=o.child;if(o.subtreeFlags&2064&&w!==null)w.return=o,K=w;else e:for(o=y;K!==null;){if(l=K,l.flags&2048)try{switch(l.tag){case 0:case 11:case 15:Lh(9,l)}}catch(N){Je(l,l.return,N)}if(l===o){K=null;break e}var j=l.sibling;if(j!==null){j.return=l.return,K=j;break e}K=l.return}}if(we=i,si(),Ns&&typeof Ns.onPostCommitFiberRoot=="function")try{Ns.onPostCommitFiberRoot(Ph,e)}catch{}r=!0}return r}finally{Ee=n,Pn.transition=t}}return!1}function kb(e,t,n){t=No(n,t),t=j2(e,t,1),e=$r(e,t,1),t=Ot(),e!==null&&($c(e,1,t),Xt(e,t))}function Je(e,t,n){if(e.tag===3)kb(e,e,n);else for(;t!==null;){if(t.tag===3){kb(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Br===null||!Br.has(r))){e=No(n,e),e=N2(t,e,1),t=$r(t,e,1),e=Ot(),t!==null&&($c(t,1,e),Xt(t,e));break}}t=t.return}}function zT(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Ot(),e.pingedLanes|=e.suspendedLanes&n,pt===e&&(wt&n)===n&&(ct===4||ct===3&&(wt&130023424)===wt&&500>Ze()-m0?Fi(e,0):h0|=n),Xt(e,t)}function V2(e,t){t===0&&(e.mode&1?(t=wd,wd<<=1,!(wd&130023424)&&(wd=4194304)):t=1);var n=Ot();e=Xs(e,t),e!==null&&($c(e,t,n),Xt(e,n))}function UT(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),V2(e,n)}function VT(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(F(314))}r!==null&&r.delete(t),V2(e,n)}var W2;W2=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Qt.current)qt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return qt=!1,_T(e,t,n);qt=!!(e.flags&131072)}else qt=!1,Ve&&t.flags&1048576&&KN(t,zu,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;cu(e,t),e=t.pendingProps;var i=yo(t,Pt.current);qa(t,n),i=a0(null,t,r,e,i,n);var a=o0();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Yt(r)?(a=!0,$u(t)):a=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,t0(t),i.updater=Mh,t.stateNode=i,i._reactInternals=t,Bf(t,r,e,n),t=Vf(null,t,r,!0,a,n)):(t.tag=0,Ve&&a&&Kg(t),Dt(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(cu(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=HT(r),e=Vn(r,e),i){case 0:t=Uf(null,t,r,e,n);break e;case 1:t=pb(null,t,r,e,n);break e;case 11:t=hb(null,t,r,e,n);break e;case 14:t=mb(null,t,r,Vn(r.type,e),n);break e}throw Error(F(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Vn(r,i),Uf(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Vn(r,i),pb(e,t,r,i,n);case 3:e:{if(P2(t),e===null)throw Error(F(387));r=t.pendingProps,a=t.memoizedState,i=a.element,e2(e,t),Wu(t,r,null,n);var o=t.memoizedState;if(r=o.element,a.isDehydrated)if(a={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){i=No(Error(F(423)),t),t=fb(e,t,r,n,i);break e}else if(r!==i){i=No(Error(F(424)),t),t=fb(e,t,r,n,i);break e}else for(dn=Fr(t.stateNode.containerInfo.firstChild),un=t,Ve=!0,qn=null,n=JN(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(bo(),r===i){t=Js(e,t,n);break e}Dt(e,t,r,n)}t=t.child}return t;case 5:return t2(t),e===null&&Of(t),r=t.type,i=t.pendingProps,a=e!==null?e.memoizedProps:null,o=i.children,Rf(r,i)?o=null:a!==null&&Rf(r,a)&&(t.flags|=32),C2(e,t),Dt(e,t,o,n),t.child;case 6:return e===null&&Of(t),null;case 13:return E2(e,t,n);case 4:return n0(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=wo(t,null,r,n):Dt(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Vn(r,i),hb(e,t,r,i,n);case 7:return Dt(e,t,t.pendingProps,n),t.child;case 8:return Dt(e,t,t.pendingProps.children,n),t.child;case 12:return Dt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,a=t.memoizedProps,o=i.value,Le(Uu,r._currentValue),r._currentValue=o,a!==null)if(es(a.value,o)){if(a.children===i.children&&!Qt.current){t=Js(e,t,n);break e}}else for(a=t.child,a!==null&&(a.return=t);a!==null;){var l=a.dependencies;if(l!==null){o=a.child;for(var c=l.firstContext;c!==null;){if(c.context===r){if(a.tag===1){c=Ks(-1,n&-n),c.tag=2;var d=a.updateQueue;if(d!==null){d=d.shared;var u=d.pending;u===null?c.next=c:(c.next=u.next,u.next=c),d.pending=c}}a.lanes|=n,c=a.alternate,c!==null&&(c.lanes|=n),Ff(a.return,n,t),l.lanes|=n;break}c=c.next}}else if(a.tag===10)o=a.type===t.type?null:a.child;else if(a.tag===18){if(o=a.return,o===null)throw Error(F(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),Ff(o,n,t),o=a.sibling}else o=a.child;if(o!==null)o.return=a;else for(o=a;o!==null;){if(o===t){o=null;break}if(a=o.sibling,a!==null){a.return=o.return,o=a;break}o=o.return}a=o}Dt(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,qa(t,n),i=Dn(i),r=r(i),t.flags|=1,Dt(e,t,r,n),t.child;case 14:return r=t.type,i=Vn(r,t.pendingProps),i=Vn(r.type,i),mb(e,t,r,i,n);case 15:return k2(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Vn(r,i),cu(e,t),t.tag=1,Yt(r)?(e=!0,$u(t)):e=!1,qa(t,n),w2(t,r,i),Bf(t,r,i,n),Vf(null,t,r,!0,e,n);case 19:return T2(e,t,n);case 22:return S2(e,t,n)}throw Error(F(156,t.tag))};function H2(e,t){return vN(e,t)}function WT(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Sn(e,t,n,r){return new WT(e,t,n,r)}function g0(e){return e=e.prototype,!(!e||!e.isReactComponent)}function HT(e){if(typeof e=="function")return g0(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ig)return 11;if(e===Og)return 14}return 2}function Ur(e,t){var n=e.alternate;return n===null?(n=Sn(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deleti
vendor: 4,897 bytes, line 40
40ons=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function hu(e,t,n,r,i,a){var o=2;if(r=e,typeof e=="function")g0(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Ea:return $i(n.children,i,a,t);case Lg:o=8,i|=8;break;case df:return e=Sn(12,n,t,i|2),e.elementType=df,e.lanes=a,e;case uf:return e=Sn(13,n,t,i),e.elementType=uf,e.lanes=a,e;case hf:return e=Sn(19,n,t,i),e.elementType=hf,e.lanes=a,e;case tN:return Oh(n,i,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Zj:o=10;break e;case eN:o=9;break e;case Ig:o=11;break e;case Og:o=14;break e;case fr:o=16,r=null;break e}throw Error(F(130,e==null?e:typeof e,""))}return t=Sn(o,n,t,i),t.elementType=e,t.type=r,t.lanes=a,t}function $i(e,t,n,r){return e=Sn(7,e,r,t),e.lanes=n,e}function Oh(e,t,n,r){return e=Sn(22,e,r,t),e.elementType=tN,e.lanes=n,e.stateNode={isHidden:!1},e}function ip(e,t,n){return e=Sn(6,e,null,t),e.lanes=n,e}function ap(e,t,n){return t=Sn(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function GT(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Bm(0),this.expirationTimes=Bm(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Bm(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function v0(e,t,n,r,i,a,o,l,c){return e=new GT(e,t,n,l,c),t===1?(t=1,a===!0&&(t|=8)):t=0,a=Sn(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},t0(a),e}function qT(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Pa,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function G2(e){if(!e)return Hr;e=e._reactInternals;e:{if(oa(e)!==e||e.tag!==1)throw Error(F(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Yt(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(F(171))}if(e.tag===1){var n=e.type;if(Yt(n))return GN(e,n,t)}return t}function q2(e,t,n,r,i,a,o,l,c){return e=v0(n,r,!0,e,i,a,o,l,c),e.context=G2(null),n=e.current,r=Ot(),i=zr(n),a=Ks(r,i),a.callback=t??null,$r(n,a,i),e.current.lanes=i,$c(e,i,r),Xt(e,r),e}function Fh(e,t,n,r){var i=t.current,a=Ot(),o=zr(i);return n=G2(n),t.context===null?t.context=n:t.pendingContext=n,t=Ks(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=$r(i,t,o),e!==null&&(Xn(e,i,o,a),au(e,i,o)),o}function Ju(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Sb(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function y0(e,t){Sb(e,t),(e=e.alternate)&&Sb(e,t)}function KT(){return null}var K2=typeof reportError=="function"?reportError:function(e){console.error(e)};function b0(e){this._internalRoot=e}$h.prototype.render=b0.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(F(409));Fh(e,t,null,null)};$h.prototype.unmount=b0.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;qi(function(){Fh(null,e,null,null)}),t[Ys]=null}};function $h(e){this._internalRoot=e}$h.prototype.unstable_scheduleHydration=function(e){if(e){var t=SN();e={blockedOn:null,target:e,priority:t};for(var n=0;n<vr.length&&t!==0&&t<vr[n].priority;n++);vr.splice(n,0,e),n===0&&PN(e)}};function w0(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Bh(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Cb(){}function QT(e,t,n,r,i){if(i){if(typeof r=="function"){var a=r;r=function(){var d=Ju(o);a.call(d)}}var o=q2(t,r,e,0,null,!1,!1,"",Cb);return e._reactRootContainer=o,e[Ys]=o.current,ic(e.nodeType===8?e.parentNode:e),qi(),o}for(;i=e.lastChild;)e.removeChild(i);if(typeof r=="function"){var l=r;r=function(){var d=Ju(c);l.call(d)}}var c=v0(e,0,!1,null,null,!1,!1,"",Cb);return e._reactRootContainer=c,e[Ys]=c.current,ic(e.nodeType===8?e.parentNode:e),qi(function(){Fh(t,c,n,r)}),c}function zh(e,t,n,r,i){var a=n._reactRootContainer;if(a){var o=a;if(typeof i=="function"){var l=i;
vendor: 4,800 bytes, line 40
40i=function(){var c=Ju(o);l.call(c)}}Fh(t,o,e,i)}else o=QT(n,t,e,i,r);return Ju(o)}NN=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=kl(t.pendingLanes);n!==0&&(Bg(t,n|1),Xt(t,Ze()),!(we&6)&&(ko=Ze()+500,si()))}break;case 13:qi(function(){var r=Xs(e,1);if(r!==null){var i=Ot();Xn(r,e,1,i)}}),y0(e,1)}};zg=function(e){if(e.tag===13){var t=Xs(e,134217728);if(t!==null){var n=Ot();Xn(t,e,134217728,n)}y0(e,134217728)}};kN=function(e){if(e.tag===13){var t=zr(e),n=Xs(e,t);if(n!==null){var r=Ot();Xn(n,e,t,r)}y0(e,t)}};SN=function(){return Ee};CN=function(e,t){var n=Ee;try{return Ee=e,t()}finally{Ee=n}};jf=function(e,t,n){switch(t){case"input":if(ff(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=Ah(r);if(!i)throw Error(F(90));sN(r),ff(r,i)}}}break;case"textarea":iN(e,n);break;case"select":t=n.value,t!=null&&Va(e,!!n.multiple,t,!1)}};hN=p0;mN=qi;var YT={usingClientEntryPoint:!1,Events:[zc,Ra,Ah,dN,uN,p0]},ul={findFiberByHostInstance:Si,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},XT={bundleType:ul.bundleType,version:ul.version,rendererPackageName:ul.rendererPackageName,rendererConfig:ul.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:nr.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=xN(e),e===null?null:e.stateNode},findFiberByHostInstance:ul.findFiberByHostInstance||KT,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Rd=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Rd.isDisabled&&Rd.supportsFiber)try{Ph=Rd.inject(XT),Ns=Rd}catch{}}vn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=YT;vn.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!w0(t))throw Error(F(200));return qT(e,t,null,n)};vn.createRoot=function(e,t){if(!w0(e))throw Error(F(299));var n=!1,r="",i=K2;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(i=t.onRecoverableError)),t=v0(e,1,!1,null,null,n,!1,r,i),e[Ys]=t.current,ic(e.nodeType===8?e.parentNode:e),new b0(t)};vn.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(F(188)):(e=Object.keys(e).join(","),Error(F(268,e)));return e=xN(t),e=e===null?null:e.stateNode,e};vn.flushSync=function(e){return qi(e)};vn.hydrate=function(e,t,n){if(!Bh(t))throw Error(F(200));return zh(null,e,t,!0,n)};vn.hydrateRoot=function(e,t,n){if(!w0(e))throw Error(F(405));var r=n!=null&&n.hydratedSources||null,i=!1,a="",o=K2;if(n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(a=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=q2(t,null,e,1,n??null,i,!1,a,o),e[Ys]=t.current,ic(e),r)for(e=0;e<r.length;e++)n=r[e],i=n._getVersion,i=i(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,i]:t.mutableSourceEagerHydrationData.push(n,i);return new $h(t)};vn.render=function(e,t,n){if(!Bh(t))throw Error(F(200));return zh(null,e,t,!1,n)};vn.unmountComponentAtNode=function(e){if(!Bh(e))throw Error(F(40));return e._reactRootContainer?(qi(function(){zh(null,null,e,!1,function(){e._reactRootContainer=null,e[Ys]=null})}),!0):!1};vn.unstable_batchedUpdates=p0;vn.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Bh(n))throw Error(F(200));if(e==null||e._reactInternals===void 0)throw Error(F(38));return zh(e,t,n,!1,r)};vn.version="18.3.1-next-f1338f8080-20240426";function Q2(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Q2)}catch(e){console.error(e)}}Q2(),Qj.exports=vn;var la=Qj.exports;const Y2=Oc(la);var X2,Pb=la;X2=Pb.createRoot,Pb.hydrateRoot;const JT=1,ZT=1e6;let op=0;function e6(){return op=(op+1)%Number.MAX_SAFE_INTEGER,op.toString()}const lp=new Map,Eb=e=>{if(lp.has(e))return;const t=setTimeout(()=>{lp.delete(e),Bl({type:"REMOVE_TOAST",toastId:e})},ZT);lp.set(e,t)},t6=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,JT)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===t.toast.id?{...n,...t.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=t;
40return n?Eb(n):e.toasts.forEach(r=>{Eb(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===n||n===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==t.toastId)}}},mu=[];let pu={toasts:[]};function Bl(e){pu=t6(pu,e),mu.forEach(t=>{t(pu)})}function n6({...e}){const t=e6(),n=i=>Bl({type:"UPDATE_TOAST",toast:{...i,id:t}}),r=()=>Bl({type:"DISMISS_TOAST",toastId:t});return Bl({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:i=>{i||r()}}}),{id:t,dismiss:r,update:n}}function sr(){const[e,t]=x.useState(pu);return x.useEffect(()=>(mu.push(t),()=>{const n=mu.indexOf(t);n>-1&&mu.splice(n,1)}),[e]),{...e,toast:n6,dismiss:n=>Bl({type:"DISMISS_TOAST",toastId:n})}}function se(e,t,{checkForDefaultPrevented:n=!0}={}){return function(i){if(e==null||e(i),n===!1||!i.defaultPrevented)return t==null?void 0:t(i)}}function s6(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function J2(...e){return t=>e.forEach(n=>s6(n,t))}function Re(...e){return x.useCallback(J2(...e),e)}function r6(e,t=[]){let n=[];function r(a,o){const l=x.createContext(o),c=n.length;n=[...n,o];function d(h){const{scope:m,children:p,...g}=h,f=(m==null?void 0:m[e][c])||l,b=x.useMemo(()=>g,Object.values(g));return s.jsx(f.Provider,{value:b,children:p})}function u(h,m){const p=(m==null?void 0:m[e][c])||l,g=x.useContext(p);if(g)return g;if(o!==void 0)return o;throw new Error(`\`${h}\` must be used within \`${a}\``)}return d.displayName=a+"Provider",[d,u]}const i=()=>{const a=n.map(o=>x.createContext(o));return function(l){const c=(l==null?void 0:l[e])||a;return x.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return i.scopeName=e,[r,i6(i,...t)]}function i6(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(a){const o=r.reduce((l,{useScope:c,scopeName:d})=>{const h=c(a)[`__scope${d}`];return{...l,...h}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return n.scopeName=t.scopeName,n}var Gr=x.forwardRef((e,t)=>{const{children:n,...r}=e,i=x.Children.toArray(n),a=i.find(a6);if(a){const o=a.props.children,l=i.map(c=>c===a?x.Children.count(o)>1?x.Children.only(null):x.isValidElement(o)?o.props.children:null:c);return s.jsx(tx,{...r,ref:t,children:x.isValidElement(o)?x.cloneElement(o,void 0,l):null})}return s.jsx(tx,{...r,ref:t,children:n})});Gr.displayName="Slot";var tx=x.forwardRef((e,t)=>{const{children:n,...r}=e;if(x.isValidElement(n)){const i=l6(n);return x.cloneElement(n,{...o6(r,n.props),ref:t?J2(t,i):i})}return x.Children.count(n)>1?x.Children.only(null):null});tx.displayName="SlotClone";var Z2=({children:e})=>s.jsx(s.Fragment,{children:e});function a6(e){return x.isValidElement(e)&&e.type===Z2}function o6(e,t){const n={...t};for(const r in t){const i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...l)=>{a(...l),i(...l)}:i&&(n[r]=i):r==="style"?n[r]={...i,...a}:r==="className"&&(n[r]=[i,a].filter(Boolean).join(" "))}return{...e,...n}}function l6(e){var r,i;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(i=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function ek(e){const t=e+"CollectionProvider",[n,r]=r6(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=p=>{const{scope:g,children:f}=p,b=B.useRef(null),v=B.useRef(new Map).current;return s.jsx(i,{scope:g,itemMap:v,collectionRef:b,children:f})};o.displayName=t;const l=e+"CollectionSlot",c=B.forwardRef((p,g)=>{const{scope:f,children:b}=p,v=a(l,f),y=Re(g,v.collectionRef);return s.jsx(Gr,{ref:y,children:b})});c.displayName=l;const d=e+"CollectionItemSlot",u="data-radix-collection-item",h=B.forwardRef((p,g)=>{const{scope:f,children:b,...v}=p,y=B.useRef(null),w=Re(g,y),j=a(d,f);return B.useEffect(()=>(j.itemMap.set(y,{ref:y,...v}),()=>void j.itemMap.delete(y))),s.jsx(Gr,{[u]:"",ref:w,children:b})});h.displayName=d;function m(p){const g=a(e+"CollectionConsumer",p);return B.useCallback(()=>{const b=g.collectionRef.current;if(!b)return[];const v=Array.from(b.querySelectorAll(`[${u}]`));return Array.from(g.itemMap.values()).sort((j,N)=>v.indexOf(j.ref.current)-v.indexOf(N.ref.current))},[g.collectionRef,g.itemMap])}return[{Provider:o,Slot:c,ItemSlot:h},m,r]}function c6(e,t){const n=x.createContext(t),r=a=>{const{children:o,...l}=a,c=x.useMemo(()=>l,Object.values(l));return s.jsx(n.Provider,{value:c,children:o})};r.displayName=e+"Provider";function i(a){const o=x.useContext(n);if(o)return o;if(t!==void 0)return t;throw new Error(`\`${a}\` must be used within \`${e}\``)}return[r,i]}function Vc(e,t=[]){let n=[];function r(a,o){const l=x.createContext(o),c=n.length;n=[...n,o];const d=h=>{var v;const{scope:m,children:p,...g}=h,f=((v=m==null?void 0:m[e])==null?void 0:v[c])||l,b=x.useMemo(()=>g,Object.values(g));return s.jsx(f.Provider,{value:b,children:p})};d.displayName=a+"Provider";function u(h,m){var f;const p=((f=m==null?void 0:m[e])==null?void 0:f[c])||l,g=x.useContext(p);if(g)return g;if(o!==void 0)return o;throw new Error(`\`${h}\` must be used within \`${a}\``)}return[d,u]}const i=()=>{const a=n.map(o=>x.createContext(o));return function(l){const c=(l==null?void 0:l[e])||a;return x.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return i.scopeName=e,[r,d6(i,...t)]}function d6(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));
vendor: 4,571 bytes, line 40
40return function(a){const o=r.reduce((l,{useScope:c,scopeName:d})=>{const h=c(a)[`__scope${d}`];return{...l,...h}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return n.scopeName=t.scopeName,n}var u6=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],ye=u6.reduce((e,t)=>{const n=x.forwardRef((r,i)=>{const{asChild:a,...o}=r,l=a?Gr:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),s.jsx(l,{...o,ref:i})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function tk(e,t){e&&la.flushSync(()=>e.dispatchEvent(t))}function pn(e){const t=x.useRef(e);return x.useEffect(()=>{t.current=e}),x.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function h6(e,t=globalThis==null?void 0:globalThis.document){const n=pn(e);x.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var m6="DismissableLayer",nx="dismissableLayer.update",p6="dismissableLayer.pointerDownOutside",f6="dismissableLayer.focusOutside",Tb,nk=x.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Bo=x.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:l,...c}=e,d=x.useContext(nk),[u,h]=x.useState(null),m=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,p]=x.useState({}),g=Re(t,k=>h(k)),f=Array.from(d.layers),[b]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),v=f.indexOf(b),y=u?f.indexOf(u):-1,w=d.layersWithOutsidePointerEventsDisabled.size>0,j=y>=v,N=g6(k=>{const P=k.target,_=[...d.branches].some(T=>T.contains(P));!j||_||(i==null||i(k),o==null||o(k),k.defaultPrevented||l==null||l())},m),C=v6(k=>{const P=k.target;[...d.branches].some(T=>T.contains(P))||(a==null||a(k),o==null||o(k),k.defaultPrevented||l==null||l())},m);return h6(k=>{y===d.layers.size-1&&(r==null||r(k),!k.defaultPrevented&&l&&(k.preventDefault(),l()))},m),x.useEffect(()=>{if(u)return n&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(Tb=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(u)),d.layers.add(u),_b(),()=>{n&&d.layersWithOutsidePointerEventsDisabled.size===1&&(m.body.style.pointerEvents=Tb)}},[u,m,n,d]),x.useEffect(()=>()=>{u&&(d.layers.delete(u),d.layersWithOutsidePointerEventsDisabled.delete(u),_b())},[u,d]),x.useEffect(()=>{const k=()=>p({});return document.addEventListener(nx,k),()=>document.removeEventListener(nx,k)},[]),s.jsx(ye.div,{...c,ref:g,style:{pointerEvents:w?j?"auto":"none":void 0,...e.style},onFocusCapture:se(e.onFocusCapture,C.onFocusCapture),onBlurCapture:se(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:se(e.onPointerDownCapture,N.onPointerDownCapture)})});Bo.displayName=m6;var x6="DismissableLayerBranch",sk=x.forwardRef((e,t)=>{const n=x.useContext(nk),r=x.useRef(null),i=Re(t,r);return x.useEffect(()=>{const a=r.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),s.jsx(ye.div,{...e,ref:i})});sk.displayName=x6;function g6(e,t=globalThis==null?void 0:globalThis.document){const n=pn(e),r=x.useRef(!1),i=x.useRef(()=>{});return x.useEffect(()=>{const a=l=>{if(l.target&&!r.current){let c=function(){rk(p6,n,d,{discrete:!0})};const d={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=c,t.addEventListener("click",i.current,{once:!0})):c()}else t.removeEventListener("click",i.current);r.current=!1},o=window.setTimeout(()=>{t.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(o),t.removeEventListener("pointerdown",a),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function v6(e,t=globalThis==null?void 0:globalThis.document){const n=pn(e),r=x.useRef(!1);return x.useEffect(()=>{const i=a=>{a.target&&!r.current&&rk(f6,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function _b(){const e=new CustomEvent(nx);document.dispatchEvent(e)}function rk(e,t,n,{discrete:r}){const i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?tk(i,a):i.dispatchEvent(a)}var y6=Bo,b6=sk,Et=globalThis!=null&&globalThis.document?x.useLayoutEffect:()=>{},w6="Portal",Wc=x.forwardRef((e,t)=>
40{var l;const{container:n,...r}=e,[i,a]=x.useState(!1);Et(()=>a(!0),[]);const o=n||i&&((l=globalThis==null?void 0:globalThis.document)==null?void 0:l.body);return o?Y2.createPortal(s.jsx(ye.div,{...r,ref:t}),o):null});Wc.displayName=w6;function j6(e,t){return x.useReducer((n,r)=>t[n][r]??n,e)}var ri=e=>{const{present:t,children:n}=e,r=N6(t),i=typeof n=="function"?n({present:r.isPresent}):x.Children.only(n),a=Re(r.ref,k6(i));return typeof n=="function"||r.isPresent?x.cloneElement(i,{ref:a}):null};ri.displayName="Presence";function N6(e){const[t,n]=x.useState(),r=x.useRef({}),i=x.useRef(e),a=x.useRef("none"),o=e?"mounted":"unmounted",[l,c]=j6(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return x.useEffect(()=>{const d=Dd(r.current);a.current=l==="mounted"?d:"none"},[l]),Et(()=>{const d=r.current,u=i.current;if(u!==e){const m=a.current,p=Dd(d);e?c("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(u&&m!==p?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,c]),Et(()=>{if(t){let d;const u=t.ownerDocument.defaultView??window,h=p=>{const f=Dd(r.current).includes(p.animationName);if(p.target===t&&f&&(c("ANIMATION_END"),!i.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",d=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},m=p=>{p.target===t&&(a.current=Dd(r.current))};return t.addEventListener("animationstart",m),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{u.clearTimeout(d),t.removeEventListener("animationstart",m),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:x.useCallback(d=>{d&&(r.current=getComputedStyle(d)),n(d)},[])}}function Dd(e){return(e==null?void 0:e.animationName)||"none"}function k6(e){var r,i;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(i=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function pc({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,i]=S6({defaultProp:t,onChange:n}),a=e!==void 0,o=a?e:r,l=pn(n),c=x.useCallback(d=>{if(a){const h=typeof d=="function"?d(e):d;h!==e&&l(h)}else i(d)},[a,e,i,l]);return[o,c]}function S6({defaultProp:e,onChange:t}){const n=x.useState(e),[r]=n,i=x.useRef(r),a=pn(t);return x.useEffect(()=>{i.current!==r&&(a(r),i.current=r)},[r,i,a]),n}var C6="VisuallyHidden",Hc=x.forwardRef((e,t)=>s.jsx(ye.span,{...e,ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}));Hc.displayName=C6;var P6=Hc,j0="ToastProvider",[N0,E6,T6]=ek("Toast"),[ik,LK]=Vc("Toast",[T6]),[_6,Uh]=ik(j0),ak=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:i="right",swipeThreshold:a=50,children:o}=e,[l,c]=x.useState(null),[d,u]=x.useState(0),h=x.useRef(!1),m=x.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${j0}\`. Expected non-empty \`string\`.`),s.jsx(N0.Provider,{scope:t,children:s.jsx(_6,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:d,viewport:l,onViewportChange:c,onToastAdd:x.useCallback(()=>u(p=>p+1),[]),onToastRemove:x.useCallback(()=>u(p=>p-1),[]),isFocusedToastEscapeKeyDownRef:h,isClosePausedRef:m,children:o})})};ak.displayName=j0;var ok="ToastViewport",A6=["F8"],sx="toast.viewportPause",rx="toast.viewportResume",lk=x.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:r=A6,label:i="Notifications ({hotkey})",...a}=e,o=Uh(ok,n),l=E6(n),c=x.useRef(null),d=x.useRef(null),u=x.useRef(null),h=x.useRef(null),m=Re(t,h,o.onViewportChange),p=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),g=o.toastCount>0;x.useEffect(()=>{const b=v=>{var w;r.length!==0&&r.every(j=>v[j]||v.code===j)&&((w=h.current)==null||w.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[r]),x.useEffect(()=>{const b=c.current,v=h.current;if(g&&b&&v){const y=()=>
40{if(!o.isClosePausedRef.current){const C=new CustomEvent(sx);v.dispatchEvent(C),o.isClosePausedRef.current=!0}},w=()=>{if(o.isClosePausedRef.current){const C=new CustomEvent(rx);v.dispatchEvent(C),o.isClosePausedRef.current=!1}},j=C=>{!b.contains(C.relatedTarget)&&w()},N=()=>{b.contains(document.activeElement)||w()};return b.addEventListener("focusin",y),b.addEventListener("focusout",j),b.addEventListener("pointermove",y),b.addEventListener("pointerleave",N),window.addEventListener("blur",y),window.addEventListener("focus",w),()=>{b.removeEventListener("focusin",y),b.removeEventListener("focusout",j),b.removeEventListener("pointermove",y),b.removeEventListener("pointerleave",N),window.removeEventListener("blur",y),window.removeEventListener("focus",w)}}},[g,o.isClosePausedRef]);const f=x.useCallback(({tabbingDirection:b})=>{const y=l().map(w=>{const j=w.ref.current,N=[j,...W6(j)];return b==="forwards"?N:N.reverse()});return(b==="forwards"?y.reverse():y).flat()},[l]);return x.useEffect(()=>{const b=h.current;if(b){const v=y=>{var N,C,k;const w=y.altKey||y.ctrlKey||y.metaKey;if(y.key==="Tab"&&!w){const P=document.activeElement,_=y.shiftKey;if(y.target===b&&_){(N=d.current)==null||N.focus();return}const L=f({tabbingDirection:_?"backwards":"forwards"}),W=L.findIndex(D=>D===P);cp(L.slice(W+1))?y.preventDefault():_?(C=d.current)==null||C.focus():(k=u.current)==null||k.focus()}};return b.addEventListener("keydown",v),()=>b.removeEventListener("keydown",v)}},[l,f]),s.jsxs(b6,{ref:c,role:"region","aria-label":i.replace("{hotkey}",p),tabIndex:-1,style:{pointerEvents:g?void 0:"none"},children:[g&&s.jsx(ix,{ref:d,onFocusFromOutsideViewport:()=>{const b=f({tabbingDirection:"forwards"});cp(b)}}),s.jsx(N0.Slot,{scope:n,children:s.jsx(ye.ol,{tabIndex:-1,...a,ref:m})}),g&&s.jsx(ix,{ref:u,onFocusFromOutsideViewport:()=>{const b=f({tabbingDirection:"backwards"});cp(b)}})]})});lk.displayName=ok;var ck="ToastFocusProxy",ix=x.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,a=Uh(ck,n);return s.jsx(Hc,{"aria-hidden":!0,tabIndex:0,...i,ref:t,style:{position:"fixed"},onFocus:o=>{var d;const l=o.relatedTarget;!((d=a.viewport)!=null&&d.contains(l))&&r()}})});ix.displayName=ck;var Vh="Toast",R6="toast.swipeStart",D6="toast.swipeMove",M6="toast.swipeCancel",L6="toast.swipeEnd",dk=x.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:i,onOpenChange:a,...o}=e,[l=!0,c]=pc({prop:r,defaultProp:i,onChange:a});return s.jsx(ri,{present:n||l,children:s.jsx(F6,{open:l,...o,ref:t,onClose:()=>c(!1),onPause:pn(e.onPause),onResume:pn(e.onResume),onSwipeStart:se(e.onSwipeStart,d=>{d.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:se(e.onSwipeMove,d=>{const{x:u,y:h}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","move"),d.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${h}px`)}),onSwipeCancel:se(e.onSwipeCancel,d=>{d.currentTarget.setAttribute("data-swipe","cancel"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:se(e.onSwipeEnd,d=>{const{x:u,y:h}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","end"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${h}px`),c(!1)})})})});dk.displayName=Vh;var[I6,O6]=ik(Vh,{onClose(){}}),F6=x.forwardRef((e,t)=>{const{__scopeToast:n,type:r="foreground",duration:i,open:a,onClose:o,onEscapeKeyDown:l,onPause:c,onResume:d,onSwipeStart:u,onSwipeMove:h,onSwipeCancel:m,onSwipeEnd:p,...g}=e,f=Uh(Vh,n),[b,v]=x.useState(null),y=Re(t,D=>v(D)),w=x.useRef(null),j=x.useRef(null),N=i||f.duration,C=x.useRef(0),k=x.useRef(N),P=x.useRef(0),{onToastAdd:_,onToastRemove:T}=f,R=pn(()=>{var V;(b==null?void 0:b.contains(document.activeElement))&&((V=f.viewport)==null||V.focus()),o()}),L=x.useCallback(D=>
vendor: 4,524 bytes, line 40
40{!D||D===1/0||(window.clearTimeout(P.current),C.current=new Date().getTime(),P.current=window.setTimeout(R,D))},[R]);x.useEffect(()=>{const D=f.viewport;if(D){const V=()=>{L(k.current),d==null||d()},z=()=>{const I=new Date().getTime()-C.current;k.current=k.current-I,window.clearTimeout(P.current),c==null||c()};return D.addEventListener(sx,z),D.addEventListener(rx,V),()=>{D.removeEventListener(sx,z),D.removeEventListener(rx,V)}}},[f.viewport,N,c,d,L]),x.useEffect(()=>{a&&!f.isClosePausedRef.current&&L(N)},[a,N,f.isClosePausedRef,L]),x.useEffect(()=>(_(),()=>T()),[_,T]);const W=x.useMemo(()=>b?gk(b):null,[b]);return f.viewport?s.jsxs(s.Fragment,{children:[W&&s.jsx($6,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite","aria-atomic":!0,children:W}),s.jsx(I6,{scope:n,onClose:R,children:la.createPortal(s.jsx(N0.ItemSlot,{scope:n,children:s.jsx(y6,{asChild:!0,onEscapeKeyDown:se(l,()=>{f.isFocusedToastEscapeKeyDownRef.current||R(),f.isFocusedToastEscapeKeyDownRef.current=!1}),children:s.jsx(ye.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":a?"open":"closed","data-swipe-direction":f.swipeDirection,...g,ref:y,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:se(e.onKeyDown,D=>{D.key==="Escape"&&(l==null||l(D.nativeEvent),D.nativeEvent.defaultPrevented||(f.isFocusedToastEscapeKeyDownRef.current=!0,R()))}),onPointerDown:se(e.onPointerDown,D=>{D.button===0&&(w.current={x:D.clientX,y:D.clientY})}),onPointerMove:se(e.onPointerMove,D=>{if(!w.current)return;const V=D.clientX-w.current.x,z=D.clientY-w.current.y,I=!!j.current,S=["left","right"].includes(f.swipeDirection),M=["left","up"].includes(f.swipeDirection)?Math.min:Math.max,U=S?M(0,V):0,O=S?0:M(0,z),q=D.pointerType==="touch"?10:2,Z={x:U,y:O},de={originalEvent:D,delta:Z};I?(j.current=Z,Md(D6,h,de,{discrete:!1})):Ab(Z,f.swipeDirection,q)?(j.current=Z,Md(R6,u,de,{discrete:!1}),D.target.setPointerCapture(D.pointerId)):(Math.abs(V)>q||Math.abs(z)>q)&&(w.current=null)}),onPointerUp:se(e.onPointerUp,D=>{const V=j.current,z=D.target;if(z.hasPointerCapture(D.pointerId)&&z.releasePointerCapture(D.pointerId),j.current=null,w.current=null,V){const I=D.currentTarget,S={originalEvent:D,delta:V};Ab(V,f.swipeDirection,f.swipeThreshold)?Md(L6,p,S,{discrete:!0}):Md(M6,m,S,{discrete:!0}),I.addEventListener("click",M=>M.preventDefault(),{once:!0})}})})})}),f.viewport)})]}):null}),$6=e=>{const{__scopeToast:t,children:n,...r}=e,i=Uh(Vh,t),[a,o]=x.useState(!1),[l,c]=x.useState(!1);return U6(()=>o(!0)),x.useEffect(()=>{const d=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(d)},[]),l?null:s.jsx(Wc,{asChild:!0,children:s.jsx(Hc,{...r,children:a&&s.jsxs(s.Fragment,{children:[i.label," ",n]})})})},B6="ToastTitle",uk=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return s.jsx(ye.div,{...r,ref:t})});uk.displayName=B6;var z6="ToastDescription",hk=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return s.jsx(ye.div,{...r,ref:t})});hk.displayName=z6;var mk="ToastAction",pk=x.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?s.jsx(xk,{altText:n,asChild:!0,children:s.jsx(k0,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${mk}\`. Expected non-empty \`string\`.`),null)});pk.displayName=mk;var fk="ToastClose",k0=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,i=O6(fk,n);return s.jsx(xk,{asChild:!0,children:s.jsx(ye.button,{type:"button",...r,ref:t,onClick:se(e.onClick,i.onClose)})})});k0.displayName=fk;var xk=x.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...i}=e;return s.jsx(ye.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function gk(e){const t=[];return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),V6(r)){const i=r.ariaHidden||r.hidden||r.style.display==="none",a=r.dataset.radixToastAnnounceExclude==="";if(!i)if(a){const o=r.dataset.radixToastAnnounceAlt;o&&t.push(o)}else t.push(...gk(r))}}),t}function Md(e,t,n,{discrete:r}){const i=n.originalEvent.currentTarget,a=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?tk(i,a):i.dispatchEvent(a)}var Ab=(e,t,n=0)=>{const r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t==="left"||t==="right"?a&&r>n:!a&&i>n};function U6(e=()=>{}){const t=pn(e);Et(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}
vendor: 8,130 bytes, lines 40-120
40function V6(e){return e.nodeType===e.ELEMENT_NODE}function W6(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function cp(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var H6=ak,vk=lk,yk=dk,bk=uk,wk=hk,jk=pk,Nk=k0;function kk(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=kk(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Sk(){for(var e,t,n=0,r="",i=arguments.length;n<i;n++)(e=arguments[n])&&(t=kk(e))&&(r&&(r+=" "),r+=t);return r}const Rb=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Db=Sk,Wh=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return Db(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:i,defaultVariants:a}=t,o=Object.keys(i).map(d=>{const u=n==null?void 0:n[d],h=a==null?void 0:a[d];if(u===null)return null;const m=Rb(u)||Rb(h);return i[d][m]}),l=n&&Object.entries(n).reduce((d,u)=>{let[h,m]=u;return m===void 0||(d[h]=m),d},{}),c=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((d,u)=>{let{class:h,className:m,...p}=u;return Object.entries(p).every(g=>{let[f,b]=g;return Array.isArray(b)?b.includes({...a,...l}[f]):{...a,...l}[f]===b})?[...d,h,m]:d},[]);return Db(e,o,c,n==null?void 0:n.class,n==null?void 0:n.className)};/** 41 * @license lucide-react v0.462.0 - ISC 42 * 43 * This source code is licensed under the ISC license. 44 * See the LICENSE file in the root directory of this source tree. 45 */const G6=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Ck=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();/** 46 * @license lucide-react v0.462.0 - ISC 47 * 48 * This source code is licensed under the ISC license. 49 * See the LICENSE file in the root directory of this source tree. 50 */var q6={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** 51 * @license lucide-react v0.462.0 - ISC 52 * 53 * This source code is licensed under the ISC license. 54 * See the LICENSE file in the root directory of this source tree. 55 */const K6=x.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i="",children:a,iconNode:o,...l},c)=>x.createElement("svg",{ref:c,...q6,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Ck("lucide",i),...l},[...o.map(([d,u])=>x.createElement(d,u)),...Array.isArray(a)?a:[a]]));/** 56 * @license lucide-react v0.462.0 - ISC 57 * 58 * This source code is licensed under the ISC license. 59 * See the LICENSE file in the root directory of this source tree. 60 */const A=(e,t)=>{const n=x.forwardRef(({className:r,...i},a)=>x.createElement(K6,{ref:a,iconNode:t,className:Ck(`lucide-${G6(e)}`,r),...i}));return n.displayName=`${e}`,n};/** 61 * @license lucide-react v0.462.0 - ISC 62 * 63 * This source code is licensed under the ISC license. 64 * See the LICENSE file in the root directory of this source tree. 65 */const Q6=A("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** 66 * @license lucide-react v0.462.0 - ISC 67 * 68 * This source code is licensed under the ISC license. 69 * See the LICENSE file in the root directory of this source tree. 70 */const Y6=A("Apple",[["path",{d:"M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z",key:"3s7exb"}],["path",{d:"M10 2c1 .5 2 2 2 5",key:"fcco2y"}]]);/** 71 * @license lucide-react v0.462.0 - ISC 72 * 73 * This source code is licensed under the ISC license. 74 * See the LICENSE file in the root directory of this source tree. 75 */const X6=A("Archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);/** 76 * @license lucide-react v0.462.0 - ISC 77 * 78 * This source code is licensed under the ISC license. 79 * See the LICENSE file in the root directory of this source tree. 80 */const So=A("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/** 81 * @license lucide-react v0.462.0 - ISC 82 * 83 * This source code is licensed under the ISC license. 84 * See the LICENSE file in the root directory of this source tree. 85 */const ue=A("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** 86 * @license lucide-react v0.462.0 - ISC 87 * 88 * This source code is licensed under the ISC license. 89 * See the LICENSE file in the root directory of this source tree. 90 */const fc=A("ArrowUpRight",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);/** 91 * @license lucide-react v0.462.0 - ISC 92 * 93 * This source code is licensed under the ISC license. 94 * See the LICENSE file in the root directory of this source tree. 95 */const J6=A("Award",[["path",{d:"m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526",key:"1yiouv"}],["circle",{cx:"12",cy:"8",r:"6",key:"1vp47v"}]]);/** 96 * @license lucide-react v0.462.0 - ISC 97 * 98 * This source code is licensed under the ISC license. 99 * See the LICENSE file in the root directory of this source tree. 100 */const Z6=A("Battery",[["rect",{width:"16",height:"10",x:"2",y:"7",rx:"2",ry:"2",key:"1w10f2"}],["line",{x1:"22",x2:"22",y1:"11",y2:"13",key:"4dh1rd"}]]);/** 101 * @license lucide-react v0.462.0 - ISC 102 * 103 * This source code is licensed under the ISC license. 104 * See the LICENSE file in the root directory of this source tree. 105 */const Zu=A("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);/** 106 * @license lucide-react v0.462.0 - ISC 107 * 108 * This source code is licensed under the ISC license. 109 * See the LICENSE file in the root directory of this source tree. 110 */const xs=A("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/** 111 * @license lucide-react v0.462.0 - ISC 112 * 113 * This source code is licensed under the ISC license. 114 * See the LICENSE file in the root directory of this source tree. 115 */const ca=A("Boxes",[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]]);/** 116 * @license lucide-react v0.462.0 - ISC 117 * 118 * This source code is licensed under the ISC license. 119 * See the LICENSE file in the root directory of this source tree. 120 */const da=A("Building2",[["path",{d:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z",key:"1b4qmf"}],["path",{d:"M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2",key:"i71pzd"}],["path",{d:"M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2",key:"10jefs"}],["path",{d:"M10 6h4",key:"1itunk"}],["path",{d:"M10 10h4",key:"tcdvrf"}
120],["path",{d:"M10 14h4",key:"kelpxr"}],["path",{d:"M10 18h4",key:"1ulq68"}]]);/** 121 * @license lucide-react v0.462.0 - ISC 122 * 123 * This source code is licensed under the ISC license. 124 * See the LICENSE file in the root directory of this source tree. 125 */const Hh=A("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** 126 * @license lucide-react v0.462.0 - ISC 127 * 128 * This source code is licensed under the ISC license. 129 * See the LICENSE file in the root directory of this source tree. 130 */const e_=A("ChartColumnIncreasing",[["path",{d:"M13 17V9",key:"1fwyjl"}],["path",{d:"M18 17V5",key:"sfb6ij"}],["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);/** 131 * @license lucide-react v0.462.0 - ISC 132 * 133 * This source code is licensed under the ISC license. 134 * See the LICENSE file in the root directory of this source tree. 135 */const ii=A("ChartColumn",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);/** 136 * @license lucide-react v0.462.0 - ISC 137 * 138 * This source code is licensed under the ISC license. 139 * See the LICENSE file in the root directory of this source tree. 140 */const t_=A("ChartLine",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]]);/** 141 * @license lucide-react v0.462.0 - ISC 142 * 143 * This source code is licensed under the ISC license. 144 * See the LICENSE file in the root directory of this source tree. 145 */const n_=A("ChartNoAxesColumnIncreasing",[["line",{x1:"12",x2:"12",y1:"20",y2:"10",key:"1vz5eb"}],["line",{x1:"18",x2:"18",y1:"20",y2:"4",key:"cun8e5"}
145],["line",{x1:"6",x2:"6",y1:"20",y2:"16",key:"hq0ia6"}]]);/** 146 * @license lucide-react v0.462.0 - ISC 147 * 148 * This source code is licensed under the ISC license. 149 * See the LICENSE file in the root directory of this source tree. 150 */const s_=A("ChartPie",[["path",{d:"M21 12c.552 0 1.005-.449.95-.998a10 10 0 0 0-8.953-8.951c-.55-.055-.998.398-.998.95v8a1 1 0 0 0 1 1z",key:"pzmjnu"}],["path",{d:"M21.21 15.89A10 10 0 1 1 8 2.83",key:"k2fpak"}]]);/** 151 * @license lucide-react v0.462.0 - ISC 152 * 153 * This source code is licensed under the ISC license. 154 * See the LICENSE file in the root directory of this source tree. 155 */const En=A("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** 156 * @license lucide-react v0.462.0 - ISC 157 * 158 * This source code is licensed under the ISC license. 159 * See the LICENSE file in the root directory of this source tree. 160 */const r_=A("ChefHat",[["path",{d:"M17 21a1 1 0 0 0 1-1v-5.35c0-.457.316-.844.727-1.041a4 4 0 0 0-2.134-7.589 5 5 0 0 0-9.186 0 4 4 0 0 0-2.134 7.588c.411.198.727.585.727 1.041V20a1 1 0 0 0 1 1Z",key:"1qvrer"}],["path",{d:"M6 17h12",key:"1jwigz"}]]);/** 161 * @license lucide-react v0.462.0 - ISC 162 * 163 * This source code is licensed under the ISC license. 164 * See the LICENSE file in the root directory of this source tree. 165 */const S0=A("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** 166 * @license lucide-react v0.462.0 - ISC 167 * 168 * This source code is licensed under the ISC license. 169 * See the LICENSE file in the root directory of this source tree. 170 */const ax=A("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** 171 * @license lucide-react v0.462.0 - ISC 172 * 173 * This source code is licensed under the ISC license. 174 * See the LICENSE file in the root directory of this source tree. 175 */const eh=A("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** 176 * @license lucide-react v0.462.0 - ISC 177 * 178 * This source code is licensed under the ISC license. 179 * See the LICENSE file in the root directory of this source tree. 180 */const i_=A("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/** 181 * @license lucide-react v0.462.0 - ISC 182 * 183 * This source code is licensed under the ISC license. 184 * See the LICENSE file in the root directory of this source tree. 185 */const Mb=A("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** 186 * @license lucide-react v0.462.0 - ISC 187 * 188 * This source code is licensed under the ISC license. 189 * See the LICENSE file in the root directory of this source tree. 190 */const Ar=A("CircleCheckBig",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** 191 * @license lucide-react v0.462.0 - ISC 192 * 193 * This source code is licensed under the ISC license. 194 * See the LICENSE file in the root directory of this source tree. 195 */const He=A("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/** 196 * @license lucide-react v0.462.0 - ISC 197 * 198 * This source code is licensed under the ISC license. 199 * See the LICENSE file in the root directory of this source tree. 200 */const Gh=A("ClipboardCheck",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"m9 14 2 2 4-4",key:"df797q"}]]);/** 201 * @license lucide-react v0.462.0 - ISC 202 * 203 * This source code is licensed under the ISC license. 204 * See the LICENSE file in the root directory of this source tree. 205 */const a_=A("ClipboardList",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/** 206 * @license lucide-react v0.462.0 - ISC 207 * 208 * This source code is licensed under the ISC license. 209 * See the LICENSE file in the root directory of this source tree. 210 */const $a=A("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** 211 * @license lucide-react v0.462.0 - ISC 212 * 213 * This source code is licensed under the ISC license. 214 * See the LICENSE file in the root directory of this source tree. 215 */const o_=A("CloudCog",[["circle",{cx:"12",cy:"17",r:"3",key:"1spfwm"}],["path",{d:"M4.2 15.1A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.2",key:"zaobp"}],["path",{d:"m15.7 18.4-.9-.3",key:"4qxpbn"}],["path",{d:"m9.2 15.9-.9-.3",key:"17q7o2"}],["path",{d:"m10.6 20.7.3-.9",key:"1pf4s2"}],["path",{d:"m13.1 14.2.3-.9",key:"1mnuqm"}],["path",{d:"m13.6 20.7-.4-1",key:"1jpd1m"}],["path",{d:"m10.8 14.3-.4-1",key:"17ugyy"}],["path",{d:"m8.3 18.6 1-.4",key:"s42vdx"}],["path",{d:"m14.7 15.8 1-.4",key:"2wizun"}]]);/** 216 * @license lucide-react v0.462.0 - ISC 217 * 218 * This source code is licensed under the ISC license. 219 * See the LICENSE file in the root directory of this source tree. 220 */const l_=A("CodeXml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);/** 221 * @license lucide-react v0.462.0 - ISC 222 * 223 * This source code is licensed under the ISC license. 224 * See the LICENSE file in the root directory of this source tree. 225 */const qr=A("Cpu",[["rect",{width:"16",height:"16",x:"4",y:"4",rx:"2",key:"14l7u7"}],["rect",{width:"6",height:"6",x:"9",y:"9",rx:"1",key:"5aljv4"}],["path",{d:"M15 2v2",key:"13l42r"}],["path",{d:"M15 20v2",key:"15mkzm"}],["path",{d:"M2 15h2",key:"1gxd5l"}],["path",{d:"M2 9h2",key:"1bbxkp"}],["path",{d:"M20 15h2",key:"19e6y8"}],["path",{d:"M20 9h2",key:"19tzq7"}
225],["path",{d:"M9 2v2",key:"165o2o"}],["path",{d:"M9 20v2",key:"i2bqo8"}]]);/** 226 * @license lucide-react v0.462.0 - ISC 227 * 228 * This source code is licensed under the ISC license. 229 * See the LICENSE file in the root directory of this source tree. 230 */const c_=A("CreditCard",[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]]);/** 231 * @license lucide-react v0.462.0 - ISC 232 * 233 * This source code is licensed under the ISC license. 234 * See the LICENSE file in the root directory of this source tree. 235 */const d_=A("Crown",[["path",{d:"M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z",key:"1vdc57"}],["path",{d:"M5 21h14",key:"11awu3"}]]);/** 236 * @license lucide-react v0.462.0 - ISC 237 * 238 * This source code is licensed under the ISC license. 239 * See the LICENSE file in the root directory of this source tree. 240 */const tn=A("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/** 241 * @license lucide-react v0.462.0 - ISC 242 * 243 * This source code is licensed under the ISC license. 244 * See the LICENSE file in the root directory of this source tree. 245 */const u_=A("DollarSign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]]);/** 246 * @license lucide-react v0.462.0 - ISC 247 * 248 * This source code is licensed under the ISC license. 249 * See the LICENSE file in the root directory of this source tree. 250 */const h_=A("Droplets",[["path",{d:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",key:"1ptgy4"}],["path",{d:"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97",key:"1sl1rz"}]]);/** 251 * @license lucide-react v0.462.0 - ISC 252 * 253 * This source code is licensed under the ISC license. 254 * See the LICENSE file in the root directory of this source tree. 255 */const Ln=A("Earth",[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);/** 256 * @license lucide-react v0.462.0 - ISC 257 * 258 * This source code is licensed under the ISC license. 259 * See the LICENSE file in the root directory of this source tree. 260 */const Pk=A("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/** 261 * @license lucide-react v0.462.0 - ISC 262 * 263 * This source code is licensed under the ISC license. 264 * See the LICENSE file in the root directory of this source tree. 265 */const qh=A("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** 266 * @license lucide-react v0.462.0 - ISC 267 * 268 * This source code is licensed under the ISC license. 269 * See the LICENSE file in the root directory of this source tree. 270 */const m_=A("Factory",[["path",{d:"M2 20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8l-7 5V8l-7 5V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"159hny"}],["path",{d:"M17 18h1",key:"uldtlt"}],["path",{d:"M12 18h1",key:"s9uhes"}],["path",{d:"M7 18h1",key:"1neino"}]]);/** 271 * @license lucide-react v0.462.0 - ISC 272 * 273 * This source code is licensed under the ISC license. 274 * See the LICENSE file in the root directory of this source tree. 275 */const Gc=A("FileCheck2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m3 15 2 2 4-4",key:"1lhrkk"}]]);/** 276 * @license lucide-react v0.462.0 - ISC 277 * 278 * This source code is licensed under the ISC license. 279 * See the LICENSE file in the root directory of this source tree. 280 */const p_=A("FileCheck",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]]);/** 281 * @license lucide-react v0.462.0 - ISC 282 * 283 * This source code is licensed under the ISC license. 284 * See the LICENSE file in the root directory of this source tree. 285 */const Co=A("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);/** 286 * @license lucide-react v0.462.0 - ISC 287 * 288 * This source code is licensed under the ISC license. 289 * See the LICENSE file in the root directory of this source tree. 290 */const f_=A("Film",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 3v18",key:"bbkbws"}],["path",{d:"M3 7.5h4",key:"zfgn84"}],["path",{d:"M3 12h18",key:"1i2n21"}],["path",{d:"M3 16.5h4",key:"1230mu"}],["path",{d:"M17 3v18",key:"in4fa5"}],["path",{d:"M17 7.5h4",key:"myr1c1"}],["path",{d:"M17 16.5h4",key:"go4c1d"}]]);/** 291 * @license lucide-react v0.462.0 - ISC 292 * 293 * This source code is licensed under the ISC license. 294 * See the LICENSE file in the root directory of this source tree. 295 */const Lb=A("Fingerprint",[["path",{d:"M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4",key:"1nerag"}],["path",{d:"M14 13.12c0 2.38 0 6.38-1 8.88",key:"o46ks0"}],["path",{d:"M17.29 21.02c.12-.6.43-2.3.5-3.02",key:"ptglia"}],["path",{d:"M2 12a10 10 0 0 1 18-6",key:"ydlgp0"}],["path",{d:"M2 16h.01",key:"1gqxmh"}],["path",{d:"M21.8 16c.2-2 .131-5.354 0-6",key:"drycrb"}
295],["path",{d:"M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2",key:"1tidbn"}],["path",{d:"M8.65 22c.21-.66.45-1.32.57-2",key:"13wd9y"}],["path",{d:"M9 6.8a6 6 0 0 1 9 5.2v2",key:"1fr1j5"}]]);/** 296 * @license lucide-react v0.462.0 - ISC 297 * 298 * This source code is licensed under the ISC license. 299 * See the LICENSE file in the root directory of this source tree. 300 */const x_=A("FlaskConical",[["path",{d:"M10 2v7.527a2 2 0 0 1-.211.896L4.72 20.55a1 1 0 0 0 .9 1.45h12.76a1 1 0 0 0 .9-1.45l-5.069-10.127A2 2 0 0 1 14 9.527V2",key:"pzvekw"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M7 16h10",key:"wp8him"}]]);/** 301 * @license lucide-react v0.462.0 - ISC 302 * 303 * This source code is licensed under the ISC license. 304 * See the LICENSE file in the root directory of this source tree. 305 */const Ek=A("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);/** 306 * @license lucide-react v0.462.0 - ISC 307 * 308 * This source code is licensed under the ISC license. 309 * See the LICENSE file in the root directory of this source tree. 310 */const Tk=A("Gift",[["rect",{x:"3",y:"8",width:"18",height:"4",rx:"1",key:"bkv52"}],["path",{d:"M12 8v13",key:"1c76mn"}],["path",{d:"M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7",key:"6wjy6b"}],["path",{d:"M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5",key:"1ihvrl"}]]);/** 311 * @license lucide-react v0.462.0 - ISC 312 * 313 * This source code is licensed under the ISC license. 314 * See the LICENSE file in the root directory of this source tree. 315 */const Ki=A("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);/** 316 * @license lucide-react v0.462.0 - ISC 317 * 318 * This source code is licensed under the ISC license. 319 * See the LICENSE file in the root directory of this source tree. 320 */const C0=A("HardHat",[["path",{d:"M10 10V5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v5",key:"1p9q5i"}],["path",{d:"M14 6a6 6 0 0 1 6 6v3",key:"1hnv84"}],["path",{d:"M4 15v-3a6 6 0 0 1 6-6",key:"9ciidu"}],["rect",{x:"2",y:"15",width:"20",height:"4",rx:"1",key:"g3x8cw"}]]);/** 321 * @license lucide-react v0.462.0 - ISC 322 * 323 * This source code is licensed under the ISC license. 324 * See the LICENSE file in the root directory of this source tree. 325 */const Kh=A("Headphones",[["path",{d:"M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3",key:"1xhozi"}]]);/** 326 * @license lucide-react v0.462.0 - ISC 327 * 328 * This source code is licensed under the ISC license. 329 * See the LICENSE file in the root directory of this source tree. 330 */const P0=A("Heart",[["path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z",key:"c3ymky"}]]);/** 331 * @license lucide-react v0.462.0 - ISC 332 * 333 * This source code is licensed under the ISC license. 334 * See the LICENSE file in the root directory of this source tree. 335 */const E0=A("House",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]]);/** 336 * @license lucide-react v0.462.0 - ISC 337 * 338 * This source code is licensed under the ISC license. 339 * See the LICENSE file in the root directory of this source tree. 340 */const g_=A("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/** 341 * @license lucide-react v0.462.0 - ISC 342 * 343 * This source code is licensed under the ISC license. 344 * See the LICENSE file in the root directory of this source tree. 345 */const ox=A("KeyRound",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);/** 346 * @license lucide-react v0.462.0 - ISC 347 * 348 * This source code is licensed under the ISC license. 349 * See the LICENSE file in the root directory of this source tree. 350 */const v_=A("Key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);/** 351 * @license lucide-react v0.462.0 - ISC 352 * 353 * This source code is licensed under the ISC license. 354 * See the LICENSE file in the root directory of this source tree. 355 */const y_=A("Laptop",[["path",{d:"M20 16V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v9m16 0H4m16 0 1.28 2.55a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45L4 16",key:"tarvll"}]]);/** 356 * @license lucide-react v0.462.0 - ISC 357 * 358 * This source code is licensed under the ISC license. 359 * See the LICENSE file in the root directory of this source tree. 360 */const Ps=A("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);/** 361 * @license lucide-react v0.462.0 - ISC 362 * 363 * This source code is licensed under the ISC license. 364 * See the LICENSE file in the root directory of this source tree. 365 */const Po=A("Leaf",[["path",{d:"M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z",key:"nnexq3"}],["path",{d:"M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12",key:"mt58a7"}]]);/** 366 * @license lucide-react v0.462.0 - ISC 367 * 368 * This source code is licensed under the ISC license. 369 * See the LICENSE file in the root directory of this source tree. 370 */const Qi=A("LifeBuoy",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.93 4.93 4.24 4.24",key:"1ymg45"}],["path",{d:"m14.83 9.17 4.24-4.24",key:"1cb5xl"}],["path",{d:"m14.83 14.83 4.24 4.24",key:"q42g0n"}],["path",{d:"m9.17 14.83-4.24 4.24",key:"bqpfvv"}],["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}]]);/** 371 * @license lucide-react v0.462.0 - ISC 372 * 373 * This source code is licensed under the ISC license. 374 * See the LICENSE file in the root directory of this source tree.
375 */const Qh=A("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);/** 376 * @license lucide-react v0.462.0 - ISC 377 * 378 * This source code is licensed under the ISC license. 379 * See the LICENSE file in the root directory of this source tree. 380 */const _k=A("Link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]]);/** 381 * @license lucide-react v0.462.0 - ISC 382 * 383 * This source code is licensed under the ISC license. 384 * See the LICENSE file in the root directory of this source tree. 385 */const Ak=A("Linkedin",[["path",{d:"M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z",key:"c2jq9f"}],["rect",{width:"4",height:"12",x:"2",y:"9",key:"mk3on5"}],["circle",{cx:"4",cy:"4",r:"2",key:"bt5ra8"}]]);/** 386 * @license lucide-react v0.462.0 - ISC 387 * 388 * This source code is licensed under the ISC license. 389 * See the LICENSE file in the root directory of this source tree. 390 */const th=A("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/** 391 * @license lucide-react v0.462.0 - ISC 392 * 393 * This source code is licensed under the ISC license. 394 * See the LICENSE file in the root directory of this source tree. 395 */const b_=A("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]);/** 396 * @license lucide-react v0.462.0 - ISC 397 * 398 * This source code is licensed under the ISC license. 399 * See the LICENSE file in the root directory of this source tree. 400 */const w_=A("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/** 401 * @license lucide-react v0.462.0 - ISC 402 * 403 * This source code is licensed under the ISC license. 404 * See the LICENSE file in the root directory of this source tree. 405 */const Rk=A("MapPin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/** 406 * @license lucide-react v0.462.0 - ISC 407 * 408 * This source code is licensed under the ISC license. 409 * See the LICENSE file in the root directory of this source tree. 410 */const j_=A("Maximize2",[["polyline",{points:"15 3 21 3 21 9",key:"mznyad"}],["polyline",{points:"9 21 3 21 3 15",key:"1avn1i"}],["line",{x1:"21",x2:"14",y1:"3",y2:"10",key:"ota7mn"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);/** 411 * @license lucide-react v0.462.0 - ISC 412 * 413 * This source code is licensed under the ISC license. 414 * See the LICENSE file in the root directory of this source tree. 415 */const N_=A("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);/** 416 * @license lucide-react v0.462.0 - ISC 417 * 418 * This source code is licensed under the ISC license. 419 * See the LICENSE file in the root directory of this source tree. 420 */const k_=A("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]]);/** 421 * @license lucide-react v0.462.0 - ISC 422 * 423 * This source code is licensed under the ISC license. 424 * See the LICENSE file in the root directory of this source tree. 425 */const S_=A("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);/** 426 * @license lucide-react v0.462.0 - ISC 427 * 428 * This source code is licensed under the ISC license. 429 * See the LICENSE file in the root directory of this source tree. 430 */const C_=A("Mic",[["path",{d:"M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z",key:"131961"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]]);/** 431 * @license lucide-react v0.462.0 - ISC 432 * 433 * This source code is licensed under the ISC license. 434 * See the LICENSE file in the root directory of this source tree. 435 */const nh=A("Network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);/** 436 * @license lucide-react v0.462.0 - ISC 437 * 438 * This source code is licensed under the ISC license. 439 * See the LICENSE file in the root directory of this source tree. 440 */const Dk=A("Nfc",[["path",{d:"M6 8.32a7.43 7.43 0 0 1 0 7.36",key:"9iaqei"}],["path",{d:"M9.46 6.21a11.76 11.76 0 0 1 0 11.58",key:"1yha7l"}],["path",{d:"M12.91 4.1a15.91 15.91 0 0 1 .01 15.8",key:"4iu2gk"}],["path",{d:"M16.37 2a20.16 20.16 0 0 1 0 20",key:"sap9u2"}]]);/** 441 * @license lucide-react v0.462.0 - ISC 442 * 443 * This source code is licensed under the ISC license. 444 * See the LICENSE file in the root directory of this source tree. 445 */const Ss=A("Package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["path",{d:"m3.3 7 7.703 4.734a2 2 0 0 0 1.994 0L20.7 7",key:"yx3hmr"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);/** 446 * @license lucide-react v0.462.0 - ISC 447 * 448 * This source code is licensed under the ISC license. 449 * See the LICENSE file in the root directory of this source tree. 450 */const P_=A("Phone",[["path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z",key:"foiqr5"}]]);/** 451 * @license lucide-react v0.462.0 - ISC 452 * 453 * This source code is licensed under the ISC license. 454 * See the LICENSE file in the root directory of this source tree. 455 */const E_=A("Pill",[["path",{d:"m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z",key:"wa1lgi"}],["path",{d:"m8.5 8.5 7 7",key:"rvfmvr"}]]);/** 456 * @license lucide-react v0.462.0 - ISC 457 * 458 * This source code is licensed under the ISC license. 459 * See the LICENSE file in the root directory of this source tree. 460 */const T_=A("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/** 461 * @license lucide-react v0.462.0 - ISC 462 * 463 * This source code is licensed under the ISC license. 464 * See the LICENSE file in the root directory of this source tree. 465 */const __=A("Printer",[["path",{d:"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2",key:"143wyd"}],["path",{d:"M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6",key:"1itne7"}],["rect",{x:"6",y:"14",width:"12",height:"8",rx:"1",key:"1ue0tg"}]]);/** 466 * @license lucide-react v0.462.0 - ISC 467 * 468 * This source code is licensed under the ISC license. 469 * See the LICENSE file in the root directory of this source tree. 470 */const A_=A("Puzzle",[["path",{d:"M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",key:"w46dr5"}]]);/** 471 * @license lucide-react v0.462.0 - ISC 472 * 473 * This source code is licensed under the ISC license. 474 * See the LICENSE file in the root directory of this source tree. 475 */const nt=A("QrCode",[["rect",{width:"5",height:"5",x:"3",y:"3",rx:"1",key:"1tu5fj"}],["rect",{width:"5",height:"5",x:"16",y:"3",rx:"1",key:"1v8r4q"}],["rect",{width:"5",height:"5",x:"3",y:"16",rx:"1",key:"1x03jg"}],["path",{d:"M21 16h-3a2 2 0 0 0-2 2v3",key:"177gqh"}],["path",{d:"M21 21v.01",key:"ents32"}],["path",{d:"M12 7v3a2 2 0 0 1-2 2H7",key:"8crl2c"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M12 3h.01",key:"n36tog"}],["path",{d:"M12 16v.01",key:"133mhm"}],["path",{d:"M16 12h1",key:"1slzba"}],["path",{d:"M21 12v.01",key:"1lwtk9"}],["path",{d:"M12 21v-1",key:"1880an"}]]);/** 476 * @license lucide-react v0.462.0 - ISC 477 * 478 * This source code is licensed under the ISC license. 479 * See the LICENSE file in the root directory of this source tree. 480 */const Yi=A("Radio",[["path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9",key:"1vaf9d"}],["path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5",key:"u1ii0m"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5",key:"1j5fej"}],["path",{d:"M19.1 4.9C23 8.8 23 15.1 19.1 19",key:"10b0cb"}]]);/** 481 * @license lucide-react v0.462.0 - ISC 482 * 483 * This source code is licensed under the ISC license. 484 * See the LICENSE file in the root directory of this source tree. 485 */const Mk=A("Recycle",[["path",{d:"M7 19H4.815a1.83 1.83 0 0 1-1.57-.881 1.785 1.785 0 0 1-.004-1.784L7.196 9.5",key:"x6z5xu"}],["path",{d:"M11 19h8.203a1.83 1.83 0 0 0 1.556-.89 1.784 1.784 0 0 0 0-1.775l-1.226-2.12",key:"1x4zh5"}],["path",{d:"m14 16-3 3 3 3",key:"f6jyew"}],["path",{d:"M8.293 13.596 7.196 9.5 3.1 10.598",key:"wf1obh"}],["path",{d:"m9.344 5.811 1.093-1.892A1.83 1.83 0 0 1 11.985 3a1.784 1.784 0 0 1 1.546.888l3.943 6.843",key:"9tzpgr"}],["path",{d:"m13.378 9.633 4.096 1.098 1.097-4.096",key:"1oe83g"}]]);/** 486 * @license lucide-react v0.462.0 - ISC 487 * 488 * This source code is licensed under the ISC license. 489 * See the LICENSE file in the root directory of this source tree. 490 */const R_=A("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);/** 491 * @license lucide-react v0.462.0 - ISC 492 * 493 * This source code is licensed under the ISC license. 494 * See the LICENSE file in the root directory of this source tree. 495 */const D_=A("Rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3
495kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);/** 496 * @license lucide-react v0.462.0 - ISC 497 * 498 * This source code is licensed under the ISC license. 499 * See the LICENSE file in the root directory of this source tree. 500 */const Lk=A("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);/** 501 * @license lucide-react v0.462.0 - ISC 502 * 503 * This source code is licensed under the ISC license. 504 * See the LICENSE file in the root directory of this source tree. 505 */const Ik=A("ScanLine",[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["path",{d:"M7 12h10",key:"b7w52i"}]]);/** 506 * @license lucide-react v0.462.0 - ISC 507 * 508 * This source code is licensed under the ISC license. 509 * See the LICENSE file in the root directory of this source tree. 510 */const M_=A("Scan",[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}]]);/** 511 * @license lucide-react v0.462.0 - ISC 512 * 513 * This source code is licensed under the ISC license. 514 * See the LICENSE file in the root directory of this source tree. 515 */const lx=A("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/** 516 * @license lucide-react v0.462.0 - ISC 517 * 518 * This source code is licensed under the ISC license. 519 * See the LICENSE file in the root directory of this source tree. 520 */const cx=A("Server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);/** 521 * @license lucide-react v0.462.0 - ISC 522 * 523 * This source code is licensed under the ISC license. 524 * See the LICENSE file in the root directory of this source tree. 525 */const L_=A("Settings2",[["path",{d:"M20 7h-9",key:"3s1dr2"}],["path",{d:"M14 17H5",key:"gfn3mx"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);/** 526 * @license lucide-react v0.462.0 - ISC 527 * 528 * This source code is licensed under the ISC license. 529 * See the LICENSE file in the root directory of this source tree. 530 */const I_=A("Share2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]);/** 531 * @license lucide-react v0.462.0 - ISC 532 * 533 * This source code is licensed under the ISC license. 534 * See the LICENSE file in the root directory of this source tree. 535 */const Jt=A("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/** 536 * @license lucide-react v0.462.0 - ISC 537 * 538 * This source code is licensed under the ISC license. 539 * See the LICENSE file in the root directory of this source tree. 540 */const Tt=A("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);/** 541 * @license lucide-react v0.462.0 - ISC 542 * 543 * This source code is licensed under the ISC license. 544 * See the LICENSE file in the root directory of this source tree. 545 */const qc=A("Shirt",[["path",{d:"M20.38 3.46 16 2a4 4 0 0 1-8 0L3.62 3.46a2 2 0 0 0-1.34 2.23l.58 3.47a1 1 0 0 0 .99.84H6v10c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V10h2.15a1 1 0 0 0 .99-.84l.58-3.47a2 2 0 0 0-1.34-2.23z",key:"1wgbhj"}]]);/** 546 * @license lucide-react v0.462.0 - ISC 547 * 548 * This source code is licensed under the ISC license. 549 * See the LICENSE file in the root directory of this source tree. 550 */const T0=A("ShoppingBag",[["path",{d:"M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z",key:"hou9p0"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M16 10a4 4 0 0 1-8 0",key:"1ltviw"}]]);/** 551 * @license lucide-react v0.462.0 - ISC 552 * 553 * This source code is licensed under the ISC license. 554 * See the LICENSE file in the root directory of this source tree. 555 */const _0=A("ShoppingCart",[["circle",{cx:"8",cy:"21",r:"1",key:"jimo8o"}
555],["circle",{cx:"19",cy:"21",r:"1",key:"13723u"}],["path",{d:"M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12",key:"9zh506"}]]);/** 556 * @license lucide-react v0.462.0 - ISC 557 * 558 * This source code is licensed under the ISC license. 559 * See the LICENSE file in the root directory of this source tree. 560 */const Ft=A("Smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]);/** 561 * @license lucide-react v0.462.0 - ISC 562 * 563 * This source code is licensed under the ISC license. 564 * See the LICENSE file in the root directory of this source tree. 565 */const O_=A("Smile",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M8 14s1.5 2 4 2 4-2 4-2",key:"1y1vjs"}],["line",{x1:"9",x2:"9.01",y1:"9",y2:"9",key:"yxxnd0"}],["line",{x1:"15",x2:"15.01",y1:"9",y2:"9",key:"1p4y9e"}]]);/** 566 * @license lucide-react v0.462.0 - ISC 567 * 568 * This source code is licensed under the ISC license. 569 * See the LICENSE file in the root directory of this source tree. 570 */const ke=A("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/** 571 * @license lucide-react v0.462.0 - ISC 572 * 573 * This source code is licensed under the ISC license. 574 * See the LICENSE file in the root directory of this source tree. 575 */const Ok=A("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);/** 576 * @license lucide-react v0.462.0 - ISC 577 * 578 * This source code is licensed under the ISC license. 579 * See the LICENSE file in the root directory of this source tree. 580 */const Kc=A("Star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);/** 581 * @license lucide-react v0.462.0 - ISC 582 * 583 * This source code is licensed under the ISC license. 584 * See the LICENSE file in the root directory of this source tree. 585 */const yt=A("Store",[["path",{d:"m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7",key:"ztvudi"}],["path",{d:"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8",key:"1b2hhj"}],["path",{d:"M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4",key:"2ebpfo"}],["path",{d:"M2 7h20",key:"1fcdvo"}],["path",{d:"M22 7v3a2 2 0 0 1-2 2a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12a2 2 0 0 1-2-2V7",key:"6c3vgh"}]]);/** 586 * @license lucide-react v0.462.0 - ISC 587 * 588 * This source code is licensed under the ISC license. 589 * See the LICENSE file in the root directory of this source tree. 590 */const Es=A("Tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);/** 591 * @license lucide-react v0.462.0 - ISC 592 * 593 * This source code is licensed under the ISC license. 594 * See the LICENSE file in the root directory of this source tree. 595 */const F_=A("Ticket",[["path",{d:"M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"qn84l0"}],["path",{d:"M13 5v2",key:"dyzc3o"}],["path",{d:"M13 17v2",key:"1ont0d"}],["path",{d:"M13 11v2",key:"1wjjxi"}]]);/** 596 * @license lucide-react v0.462.0 - ISC 597 * 598 * This source code is licensed under the ISC license. 599 * See the LICENSE file in the root directory of this source tree. 600 */const Yh=A("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}
600],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/** 601 * @license lucide-react v0.462.0 - ISC 602 * 603 * This source code is licensed under the ISC license. 604 * See the LICENSE file in the root directory of this source tree. 605 */const $_=A("TrendingDown",[["polyline",{points:"22 17 13.5 8.5 8.5 13.5 2 7",key:"1r2t7k"}],["polyline",{points:"16 17 22 17 22 11",key:"11uiuu"}]]);/** 606 * @license lucide-react v0.462.0 - ISC 607 * 608 * This source code is licensed under the ISC license. 609 * See the LICENSE file in the root directory of this source tree. 610 */const Zs=A("TrendingUp",[["polyline",{points:"22 7 13.5 15.5 8.5 10.5 2 17",key:"126l90"}],["polyline",{points:"16 7 22 7 22 13",key:"kwv8wd"}]]);/** 611 * @license lucide-react v0.462.0 - ISC 612 * 613 * This source code is licensed under the ISC license. 614 * See the LICENSE file in the root directory of this source tree. 615 */const dx=A("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** 616 * @license lucide-react v0.462.0 - ISC 617 * 618 * This source code is licensed under the ISC license. 619 * See the LICENSE file in the root directory of this source tree. 620 */const Fk=A("Trophy",[["path",{d:"M6 9H4.5a2.5 2.5 0 0 1 0-5H6",key:"17hqa7"}],["path",{d:"M18 9h1.5a2.5 2.5 0 0 0 0-5H18",key:"lmptdp"}],["path",{d:"M4 22h16",key:"57wxv0"}],["path",{d:"M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22",key:"1nw9bq"}],["path",{d:"M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22",key:"1np0yb"}],["path",{d:"M18 2H6v7a6 6 0 0 0 12 0V2Z",key:"u46fv3"}]]);/** 621 * @license lucide-react v0.462.0 - ISC 622 * 623 * This source code is licensed under the ISC license. 624 * See the LICENSE file in the root directory of this source tree. 625 */const B_=A("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);/** 626 * @license lucide-react v0.462.0 - ISC 627 * 628 * This source code is licensed under the ISC license. 629 * See the LICENSE file in the root directory of this source tree. 630 */const Xh=A("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/** 631 * @license lucide-react v0.462.0 - ISC 632 * 633 * This source code is licensed under the ISC license. 634 * See the LICENSE file in the root directory of this source tree. 635 */const dt=A("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/** 636 * @license lucide-react v0.462.0 - ISC 637 * 638 * This source code is licensed under the ISC license. 639 * See the LICENSE file in the root directory of this source tree. 640 */const z_=A("UtensilsCrossed",[["path",{d:"m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8",key:"n7qcjb"}],["path",{d:"M15 15 3.3 3.3a4.2 4.2 0 0 0 0 6l7.3 7.3c.7.7 2 .7 2.8 0L15 15Zm0 0 7 7",key:"d0u48b"}],["path",{d:"m2.1 21.8 6.4-6.3",key:"yn04lh"}],["path",{d:"m19 5-7 7",key:"194lzd"}]]);/** 641 * @license lucide-react v0.462.0 - ISC 642 * 643 * This source code is licensed under the ISC license. 644 * See the LICENSE file in the root directory of this source tree. 645 */const U_=A("Video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]);/** 646 * @license lucide-react v0.462.0 - ISC 647 * 648 * This source code is licensed under the ISC license. 649 * See the LICENSE file in the root directory of this source tree. 650 */const hl=A("WandSparkles",[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72",key:"ul74o6"}],["path",{d:"m14 7 3 3",key:"1r5n42"}],["path",{d:"M5 6v4",key:"ilb8ba"}],["path",{d:"M19 14v4",key:"blhpug"}],["path",{d:"M10 2v2",key:"7u0qdc"}],["path",{d:"M7 8H3",key:"zfb6yr"}],["path",{d:"M21 16h-4",key:"1cnmox"}],["path",{d:"M11 3H9",key:"1obp7u"}]]);/** 651 * @license lucide-react v0.462.0 - ISC 652 * 653 * This source code is licensed under the ISC license. 654 * See the LICENSE file in the root directory of this source tree. 655 */const V_=A("Webhook",[["path",{d:"M18 16.98h-5.99c-1.1 0-1.95.94-2.48 1.9A4 4 0 0 1 2 17c.01-.7.2-1.4.57-2",key:"q3hayz"}],["path",{d:"m6 17 3.13-5.78c.53-.97.1-2.18-.5-3.1a4 4 0 1 1 6.89-4.06",key:"1go1hn"}],["path",{d:"m12 6 3.13 5.73C15.66 12.7 16.9 13 18 13a4 4 0 0 1 0 8",key:"qlwsc0"}]]);/** 656 * @license lucide-react v0.462.0 - ISC 657 * 658 * This source code is licensed under the ISC license. 659 * See the LICENSE file in the root directory of this source tree. 660 */const W_=A("Wine",[["path",{d:"M8 22h8",key:"rmew8v"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M12 15v7",key:"t2xh3l"}],["path",{d:"M12 15a5 5 0 0 0 5-5c0-2-.5-4-2-8H9c-1.5 4-2 6-2 8a5 5 0 0 0 5 5Z",key:"10ffi3"}]]);/** 661 * @license lucide-react v0.462.0 - ISC 662 * 663 * This source code is licensed under the ISC license. 664 * See the LICENSE file in the root directory of this source tree.
vendor: 8,676 bytes, lines 665-680
665 */const xc=A("Workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]);/** 666 * @license lucide-react v0.462.0 - ISC 667 * 668 * This source code is licensed under the ISC license. 669 * See the LICENSE file in the root directory of this source tree. 670 */const nn=A("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);/** 671 * @license lucide-react v0.462.0 - ISC 672 * 673 * This source code is licensed under the ISC license. 674 * See the LICENSE file in the root directory of this source tree. 675 */const Jh=A("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/** 676 * @license lucide-react v0.462.0 - ISC 677 * 678 * This source code is licensed under the ISC license. 679 * See the LICENSE file in the root directory of this source tree. 680 */const rr=A("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),A0="-",H_=e=>{const t=q_(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:o=>{const l=o.split(A0);return l[0]===""&&l.length!==1&&l.shift(),$k(l,t)||G_(o)},getConflictingClassGroupIds:(o,l)=>{const c=n[o]||[];return l&&r[o]?[...c,...r[o]]:c}}},$k=(e,t)=>{var o;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),i=r?$k(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;const a=e.join(A0);return(o=t.validators.find(({validator:l})=>l(a)))==null?void 0:o.classGroupId},Ib=/^\[(.+)\]$/,G_=e=>{if(Ib.test(e)){const t=Ib.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},q_=e=>{const{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return Q_(Object.entries(e.classGroups),n).forEach(([a,o])=>{ux(o,r,a,t)}),r},ux=(e,t,n,r)=>{e.forEach(i=>{if(typeof i=="string"){const a=i===""?t:Ob(t,i);a.classGroupId=n;return}if(typeof i=="function"){if(K_(i)){ux(i(r),t,n,r);return}t.validators.push({validator:i,classGroupId:n});return}Object.entries(i).forEach(([a,o])=>{ux(o,Ob(t,a),n,r)})})},Ob=(e,t)=>{let n=e;return t.split(A0).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},K_=e=>e.isThemeGetter,Q_=(e,t)=>t?e.map(([n,r])=>{const i=r.map(a=>typeof a=="string"?t+a:typeof a=="object"?Object.fromEntries(Object.entries(a).map(([o,l])=>[t+o,l])):a);return[n,i]}):e,Y_=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const i=(a,o)=>{n.set(a,o),t++,t>e&&(t=0,r=n,n=new Map)};return{get(a){let o=n.get(a);if(o!==void 0)return o;if((o=r.get(a))!==void 0)return i(a,o),o},set(a,o){n.has(a)?n.set(a,o):i(a,o)}}},Bk="!",X_=e=>{const{separator:t,experimentalParseClassName:n}=e,r=t.length===1,i=t[0],a=t.length,o=l=>{const c=[];let d=0,u=0,h;for(let b=0;b<l.length;b++){let v=l[b];if(d===0){if(v===i&&(r||l.slice(b,b+a)===t)){c.push(l.slice(u,b)),u=b+a;continue}if(v==="/"){h=b;continue}}v==="["?d++:v==="]"&&d--}const m=c.length===0?l:l.substring(u),p=m.startsWith(Bk),g=p?m.substring(1):m,f=h&&h>u?h-u:void 0;return{modifiers:c,hasImportantModifier:p,baseClassName:g,maybePostfixModifierPosition:f}};return n?l=>n({className:l,parseClassName:o}):o},J_=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(r=>{r[0]==="["?(t.push(...n.sort(),r),n=[]):n.push(r)}),t.push(...n.sort()),t},Z_=e=>({cache:Y_(e.cacheSize),parseClassName:X_(e),...H_(e)}),eA=/\s+/,tA=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i}=t,a=[],o=e.trim().split(eA);let l="";for(let c=o.length-1;c>=0;c-=1){const d=o[c],{modifiers:u,hasImportantModifier:h,baseClassName:m,maybePostfixModifierPosition:p}=n(d);let g=!!p,f=r(g?m.substring(0,p):m);if(!f){if(!g){l=d+(l.length>0?" "+l:l);continue}if(f=r(m),!f){l=d+(l.length>0?" "+l:l);continue}g=!1}const b=J_(u).join(":"),v=h?b+Bk:b,y=v+f;if(a.includes(y))continue;a.push(y);const w=i(f,g);for(let j=0;j<w.length;++j){const N=w[j];a.push(v+N)}l=d+(l.length>0?" "+l:l)}return l};function nA(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=zk(t))&&(r&&(r+=" "),r+=n);return r}const zk=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=zk(e[r]))&&(n&&(n+=" "),n+=t);return n};function sA(e,...t){let n,r,i,a=o;function o(c){const d=t.reduce((u,h)=>h(u),e());return n=Z_(d),r=n.cache.get,i=n.cache.set,a=l,l(c)}function l(c){const d=r(c);if(d)return d;const u=tA(c,n);return i(c,u),u}return function(){return a(nA.apply(null,arguments))}}const Oe=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},Uk=/^\[(?:([a-z-]+):)?(.+)\]$/i,rA=/^\d+\/\d+$/,iA=new Set(["px","full","screen"]),aA=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,oA=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,lA=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,cA=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,dA=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,$s=e=>Qa(e)||iA.has(e)||rA.test(e),or=e=>zo(e,"length",vA),Qa=e=>!!e&&!Number.isNaN(Number(e)),dp=e=>zo(e,"number",Qa),ml=e=>!!e&&Number.isInteger(Number(e)),uA=e=>e.endsWith("%")&&Qa(e.slice(0,-1)),ce=e=>Uk.test(e),lr=e=>aA.test(e),hA=new Set(["length","size","percentage"]),mA=e=>zo(e,hA,Vk),pA=e=>zo(e,"position",Vk),fA=new Set(["image","url"]),xA=e=>zo(e,fA,bA),gA=e=>zo(e,"",yA),pl=()=>!0,zo=(e,t,n)=>{const r=Uk.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):n(r[2]):!1},vA=e=>oA.test(e)&&!lA.test(e),Vk=()=>!1,yA=e=>cA.test(e),bA=e=>dA.test(e),wA=()=>{const e=Oe("colors"),t=Oe("spacing"),n=Oe("blur"),r=Oe("brightness"),i=Oe("borderColor"),a=Oe("borderRadius"),o=Oe("borderSpacing"),l=Oe("borderWidth"),c=Oe("contrast"),d=Oe("grayscale"),u=Oe("hueRotate"),h=Oe("invert"),m=Oe("gap"),p=Oe("gradientColorStops"),g=Oe("gradientColorStopPositions"),f=Oe("inset"),b=Oe("margin"),v=Oe("opacity"),y=Oe("padding"),w=Oe("saturate"),j=Oe("scale"),N=Oe("sepia"),C=Oe("skew"),k=Oe("space"),P=Oe("translate"),_=()=>["auto","contain","none"],T=()=>["auto","hidden","clip","visible","scroll"],R=()=>["auto",ce,t],L=()=>[ce,t],W=()=>["",$s,or],D=()=>["auto",Qa,ce],V=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],z=()=>["solid","dashed","dotted","double","none"],I=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],S=()=>["start","end","center","between","around","evenly","stretch"],M=()=>["","0",ce],U=()=>["auto","avoid","all","avoid-page","page","left","right","column"],O=()=>[Qa,ce];return{cacheSize:500,separator:":",theme:{colors:[pl],spacing:[$s,or],blur:["none","",lr,ce],brightness:O(),borderColor:[e],borderRadius:["none","","full",lr,ce],borderSpacing:L(),borderWidth:W(),contrast:O(),grayscale:M(),hueRotate:O(),invert:M(),gap:L(),gradientColorStops:[e],gradientColorStopPositions:[uA,or],inset:R(),margin:R(),opacity:O(),padding:L(),saturate:O(),scale:O(),sepia:M(),skew:O(),space:L(),translate:L()},classGroups:{aspect:[{aspect:["auto","square","video",ce]}],container:["container"],columns:[{columns:[lr]}],"break-after":[{"break-after":U()}],"break-before":[{"break-before":U()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...V(),ce]}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:_()}],"overscroll-x":[{"overscroll-x":_()}],"overscroll-y":[{"overscroll-y":_()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[f]}],"inset-x":[{"inset-x":[f]}],"inset-y":[{"inset-y":[f]}],start:[{start:[f]}],end:[{end:[f]}],top:[{top:[f]}
vendor: 9,946 bytes, line 680
680],right:[{right:[f]}],bottom:[{bottom:[f]}],left:[{left:[f]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",ml,ce]}],basis:[{basis:R()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",ce]}],grow:[{grow:M()}],shrink:[{shrink:M()}],order:[{order:["first","last","none",ml,ce]}],"grid-cols":[{"grid-cols":[pl]}],"col-start-end":[{col:["auto",{span:["full",ml,ce]},ce]}],"col-start":[{"col-start":D()}],"col-end":[{"col-end":D()}],"grid-rows":[{"grid-rows":[pl]}],"row-start-end":[{row:["auto",{span:[ml,ce]},ce]}],"row-start":[{"row-start":D()}],"row-end":[{"row-end":D()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",ce]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",ce]}],gap:[{gap:[m]}],"gap-x":[{"gap-x":[m]}],"gap-y":[{"gap-y":[m]}],"justify-content":[{justify:["normal",...S()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...S(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...S(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[y]}],px:[{px:[y]}],py:[{py:[y]}],ps:[{ps:[y]}],pe:[{pe:[y]}],pt:[{pt:[y]}],pr:[{pr:[y]}],pb:[{pb:[y]}],pl:[{pl:[y]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[k]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[k]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",ce,t]}],"min-w":[{"min-w":[ce,t,"min","max","fit"]}],"max-w":[{"max-w":[ce,t,"none","full","min","max","fit","prose",{screen:[lr]},lr]}],h:[{h:[ce,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[ce,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[ce,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[ce,t,"auto","min","max","fit"]}],"font-size":[{text:["base",lr,or]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",dp]}],"font-family":[{font:[pl]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",ce]}],"line-clamp":[{"line-clamp":["none",Qa,dp]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",$s,ce]}],"list-image":[{"list-image":["none",ce]}],"list-style-type":[{list:["none","disc","decimal",ce]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[v]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[v]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...z(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",$s,or]}],"underline-offset":[{"underline-offset":["auto",$s,ce]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:L()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ce]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ce]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[v]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...V(),pA]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",mA]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},xA]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[g]}],"gradient-via-pos":[{via:[g]}],"gradient-to-pos":[{to:[g]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[l]}],"border-w-x":[{"border-x":[l]}],"border-w-y":[{"border-y":[l]}],"border-w-s":[{"border-s":[l]}],"border-w-e":[{"border-e":[l]}],"border-w-t":[{"border-t":[l]}],"border-w-r":[{"border-r":[l]}],"border-w-b":[{"border-b":[l]}],"border-w-l":[{"border-l":[l]}],"border-opacity":[{"border-opacity":[v]}],"border-style":[{border:[...z(),"hidden"]}],"divide-x":[{"divide-x":[l]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[l]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[v]}],"divide-style":[{divide:z()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:["",...z()]}],"outline-offset":[{"outline-offset":[$s,ce]}],"outline-w":[{outline:[$s,or]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:W()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[v]}],"ring-offset-w":[{"ring-offset":[$s,or]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",lr,gA]}],"shadow-color":[{shadow:[pl]}],opacity:[{opacity:[v]}],"mix-blend":[{"mix-blend":[...I(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":I()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":["","none",lr,ce]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[h]}],saturate:[{saturate:[w]}],sepia:[{sepia:[N]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[h]}],"backdrop-opacity":[{"backdrop-opacity":[v]}],"backdrop-saturate":[{"backdrop-saturate":[w]}],"backdrop-sepia":[{"backdrop-sepia":[N]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",ce]}],duration:[{duration:O()}],ease:[{ease:["linear","in","out","in-out",ce]}],delay:[{delay:O()}],animate:[{animate:["none","spin","ping","pulse","bounce",ce]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[j]}],"scale-x":[{"scale-x":[j]}],"scale-y":[{"scale-y":[j]}],rotate:[{rotate:[ml,ce]}],"translate-x":[{"translate-x":[P]}],"translate-y":[{"translate-y":[P]}],"skew-x":[{"skew-x":[C]}],"skew-y":[{"skew-y":[C]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",ce]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ce]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":L()}],"scroll-mx":[{"scroll-mx":L()}],"scroll-my":[{"scroll-my":L()}],"scroll-ms":[{"scroll-ms":L()}],"scroll-me":[{"scroll-me":L()}],"scroll-mt":[{"scroll-mt":L()}],"scroll-mr":[{"scroll-mr":L()}],"scroll-mb":[{"scroll-mb":L()}],"scroll-ml":[{"scroll-ml":L()}],"scroll-p":[{"scroll-p":L()}],"scroll-px":[{"scroll-px":L()}],"scroll-py":[{"scroll-py":L()}],"scroll-ps":[{"scroll-ps":L()}],"scroll-pe":[{"scroll-pe":L()}],"scroll-pt":[{"scroll-pt":L()}],"scroll-pr":[{"scroll-pr":L()}],"scroll-pb":[{"scroll-pb":L()}],"scroll-pl":[{"scroll-pl":L()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}
vendor: 4,642 bytes, line 680
680],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ce]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[$s,or,dp]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},jA=sA(wA);function J(...e){return jA(Sk(e))}const NA=H6,Wk=x.forwardRef(({className:e,...t},n)=>s.jsx(vk,{ref:n,className:J("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));Wk.displayName=vk.displayName;const kA=Wh("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),Hk=x.forwardRef(({className:e,variant:t,...n},r)=>s.jsx(yk,{ref:r,className:J(kA({variant:t}),e),...n}));Hk.displayName=yk.displayName;const SA=x.forwardRef(({className:e,...t},n)=>s.jsx(jk,{ref:n,className:J("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t}));SA.displayName=jk.displayName;const Gk=x.forwardRef(({className:e,...t},n)=>s.jsx(Nk,{ref:n,className:J("absolute right-2 top-2 rounded-md p-1 text-foreground
680/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:s.jsx(Jh,{className:"h-4 w-4"})}));Gk.displayName=Nk.displayName;const qk=x.forwardRef(({className:e,...t},n)=>s.jsx(bk,{ref:n,className:J("text-sm font-semibold",e),...t}));qk.displayName=bk.displayName;const Kk=x.forwardRef(({className:e,...t},n)=>s.jsx(wk,{ref:n,className:J("text-sm opacity-90",e),...t}));Kk.displayName=wk.displayName;function CA(){const{toasts:e}=sr();return s.jsxs(NA,{children:[e.map(function({id:t,title:n,description:r,action:i,...a}){return s.jsxs(Hk,{...a,children:[s.jsxs("div",{className:"grid gap-1",children:[n&&s.jsx(qk,{children:n}),r&&s.jsx(Kk,{children:r})]}),i,s.jsx(Gk,{})]},t)}),s.jsx(Wk,{})]})}var Fb=["light","dark"],PA="(prefers-color-scheme: dark)",EA=x.createContext(void 0),TA={setTheme:e=>{},themes:[]},_A=()=>{var e;return(e=x.useContext(EA))!=null?e:TA};x.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:i,defaultTheme:a,value:o,attrs:l,nonce:c})=>{let d=a==="system",u=n==="class"?`var d=document.documentElement,c=d.classList;${`c.remove(${l.map(g=>`'${g}'`).join(",")})`};`:`var d=document.documentElement,n='${n}',s='setAttribute';`,h=i?Fb.includes(a)&&a?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${a}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",m=(g,f=!1,b=!0)=>{let v=o?o[g]:g,y=f?g+"|| ''":`'${v}'`,w="";return i&&b&&!f&&Fb.includes(g)&&(w+=`d.style.colorScheme = '${g}';`),n==="class"?f||v?w+=`c.add(${y})`:w+="null":v&&(w+=`d[s](n,${y})`),w},p=e?`!function(){${u}${m(e)}}()`:r?`!function(){try{${u}var e=localStorage.getItem('${t}');if('system'===e||(!e&&${d})){var t='${PA}',m=window.matchMedia(t);if(m.media!==t||m.matches){${m("dark")}}else{${m("light")}}}else if(e){${o?`var x=${JSON.stringify(o)};`:""}${m(o?"x[e]":"e",!0)}}${d?"":"else{"+m(a,!1,!1)+"}"}${h}}catch(e){}}()`:`!function(){try{${u}var e=localStorage.getItem('${t}');if(e){${o?`var x=${JSON.stringify(o)};`:""}${m(o?"x[e]":"e",!0)}}else{${m(a,!1,!1)};}${h}}catch(t){}}();`;return x.createElement("script",{nonce:c,dangerouslySetInnerHTML:{__html:p}})});var AA=e=>{switch(e){case"success":return MA;case"info":return IA;case"warning":return LA;case"error":return OA;default:return null}},RA=Array(12).fill(0),DA=({visible:e})=>B.createElement("div",{className:"sonner-loading-wrapper","data-visible":e},B.createElement("div",{className:"sonner-spinner"},RA.map((t,n)=>B.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${n}`})))),MA=B.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},B.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),LA=B.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},B.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),IA=B.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},B.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),OA=B.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},B.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),FA=()=>
680{let[e,t]=B.useState(document.hidden);return B.useEffect(()=>{let n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e},hx=1,$A=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)}),this.publish=e=>{this.subscribers.forEach(t=>t(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var t;let{message:n,...r}=e,i=typeof(e==null?void 0:e.id)=="number"||((t=e.id)==null?void 0:t.length)>0?e.id:hx++,a=this.toasts.find(l=>l.id===i),o=e.dismissible===void 0?!0:e.dismissible;return a?this.toasts=this.toasts.map(l=>l.id===i?(this.publish({...l,...e,id:i,title:n}),{...l,...e,id:i,dismissible:o,title:n}):l):this.addToast({title:n,...r,dismissible:o,id:i}),i},this.dismiss=e=>(e||this.toasts.forEach(t=>{this.subscribers.forEach(n=>n({id:t.id,dismiss:!0}))}),this.subscribers.forEach(t=>t({id:e,dismiss:!0})),e),this.message=(e,t)=>this.create({...t,message:e}),this.error=(e,t)=>this.create({...t,message:e,type:"error"}),this.success=(e,t)=>this.create({...t,type:"success",message:e}),this.info=(e,t)=>this.create({...t,type:"info",message:e}),this.warning=(e,t)=>this.create({...t,type:"warning",message:e}),this.loading=(e,t)=>
680this.create({...t,type:"loading",message:e}),this.promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:"loading",message:t.loading,description:typeof t.description!="function"?t.description:void 0}));let r=e instanceof Promise?e:e(),i=n!==void 0;return r.then(async a=>{if(zA(a)&&!a.ok){i=!1;let o=typeof t.error=="function"?await t.error(`HTTP error! status: ${a.status}`):t.error,l=typeof t.description=="function"?await t.description(`HTTP error! status: ${a.status}`):t.description;this.create({id:n,type:"error",message:o,description:l})}else if(t.success!==void 0){i=!1;let o=typeof t.success=="function"?await t.success(a):t.success,l=typeof t.description=="function"?await t.description(a):t.description;this.create({id:n,type:"success",message:o,description:l})}}).catch(async a=>{if(t.error!==void 0){i=!1;let o=typeof t.error=="function"?await t.error(a):t.error,l=typeof t.description=="function"?await t.description(a):t.description;this.create({id:n,type:"error",message:o,description:l})}}).finally(()=>{var a;i&&(this.dismiss(n),n=void 0),(a=t.finally)==null||a.call(t)}),n},this.custom=(e,t)=>{let n=(t==null?void 0:t.id)||hx++;return this.create({jsx:e(n),id:n,...t}),n},this.subscribers=[],this.toasts=[]}},on=new $A,BA=(e,t)=>{let n=(t==null?void 0:t.id)||hx++;return on.addToast({title:e,...t,id:n}),n},zA=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",UA=BA,VA=()=>on.toasts;Object.assign(UA,{success:on.success,info:on.info,warning:on.warning,error:on.error,custom:on.custom,message:on.message,promise:on.promise,dismiss:on.dismiss,loading:on.loading},{getHistory:VA});function WA(e,{insertAt:t}={}){if(typeof document>"u")return;let n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}WA(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position="right"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position="left"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;
680left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}
680:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)} 681`);function Ld(e){return e.label!==void 0}var HA=3,GA="32px",qA=4e3,KA=356,QA=14,YA=20,XA=200;function JA(...e){return e.filter(Boolean).join(" ")}var ZA=e=>{var t,n,r,i,a,o,l,c,d,u;let{invert:h,toast:m,unstyled:p,interacting:g,setHeights:f,visibleToasts:b,heights:v,index:y,toasts:w,expanded:j,removeToast:N,defaultRichColors:C,closeButton:k,style:P,cancelButtonStyle:_,actionButtonStyle:T,className:R="",descriptionClassName:L="",duration:W,position:D,gap:V,loadingIcon:z,expandByDefault:I,classNames:S,icons:M,closeButtonAriaLabel:U="Close toast",pauseWhenPageIsHidden:O,cn:q}
681=e,[Z,de]=B.useState(!1),[ze,le]=B.useState(!1),[G,te]=B.useState(!1),[Ne,re]=B.useState(!1),[X,$]=B.useState(0),[ae,be]=B.useState(0),Ue=B.useRef(null),We=B.useRef(null),ft=y===0,In=y+1<=b,De=m.type,Ut=m.dismissible!==!1,pi=m.className||"",Zo=m.descriptionClassName||"",ir=B.useMemo(()=>v.findIndex(ie=>ie.toastId===m.id)||0,[v,m.id]),md=B.useMemo(()=>{var ie;return(ie=m.closeButton)!=null?ie:k},[m.closeButton,k]),el=B.useMemo(()=>m.duration||W||qA,[m.duration,W]),tl=B.useRef(0),Is=B.useRef(0),pd=B.useRef(0),os=B.useRef(null),[Os,nl]=D.split("-"),pa=B.useMemo(()=>v.reduce((ie,Te,_e)=>_e>=ir?ie:ie+Te.height,0),[v,ir]),fi=FA(),Am=m.invert||h,sl=De==="loading";Is.current=B.useMemo(()=>ir*V+pa,[ir,pa]),B.useEffect(()=>{de(!0)},[]),B.useLayoutEffect(()=>{if(!Z)return;let ie=We.current,Te=ie.style.height;ie.style.height="auto";let _e=ie.getBoundingClientRect().height;ie.style.height=Te,be(_e),f(sn=>sn.find(rn=>rn.toastId===m.id)?sn.map(rn=>rn.toastId===m.id?{...rn,height:_e}:rn):[{toastId:m.id,height:_e,position:m.position},...sn])},[Z,m.title,m.description,f,m.id]);let ls=B.useCallback(()=>{le(!0),$(Is.current),f(ie=>ie.filter(Te=>Te.toastId!==m.id)),setTimeout(()=>{N(m)},XA)},[m,N,f,Is]);B.useEffect(()=>{if(m.promise&&De==="loading"||m.duration===1/0||m.type==="loading")return;let ie,Te=el;return j||g||O&&fi?(()=>{if(pd.current<tl.current){let _e=new Date().getTime()-tl.current;Te=Te-_e}pd.current=new Date().getTime()})():Te!==1/0&&(tl.current=new Date().getTime(),ie=setTimeout(()=>{var _e;(_e=m.onAutoClose)==null||_e.call(m,m),ls()},Te)),()=>clearTimeout(ie)},[j,g,I,m,el,ls,m.promise,De,O,fi]),B.useEffect(()=>{let ie=We.current;if(ie){let Te=ie.getBoundingClientRect().height;return be(Te),f(_e=>[{toastId:m.id,height:Te,position:m.position},..._e]),()=>f(_e=>_e.filter(sn=>sn.toastId!==m.id))}},[f,m.id]),B.useEffect(()=>{m.delete&&ls()},[ls,m.delete]);function Rm(){return M!=null&&M.loading?B.createElement("div",{className:"sonner-loader","data-visible":De==="loading"},M.loading):z?B.createElement("div",{className:"sonner-loader","data-visible":De==="loading"},z):B.createElement(DA,{visible:De==="loading"})}return B.createElement("li",{"aria-live":m.important?"assertive":"polite","aria-atomic":"true",role:"status",tabIndex:0,ref:We,className:q(R,pi,S==null?void 0:S.toast,(t=m==null?void 0:m.classNames)==null?void 0:t.toast,S==null?void 0:S.default,S==null?void 0:S[De],(n=m==null?void 0:m.classNames)==null?void 0:n[De]),"data-sonner-toast":"","data-rich-colors":(r=m.richColors)!=null?r:C,"data-styled":!(m.jsx||m.unstyled||p),"data-mounted":Z,"data-promise":!!m.promise,"data-removed":ze,"data-visible":In,"data-y-position":Os,"data-x-position":nl,"data-index":y,"data-front":ft,"data-swiping":G,"data-dismissible":Ut,"data-type":De,"data-invert":Am,"data-swipe-out":Ne,"data-expanded":!!(j||I&&Z),style:{"--index":y,"--toasts-before":y,"--z-index":w.length-y,"--offset":`${ze?X:Is.current}px`,"--initial-height":I?"auto":`${ae}px`,...P,...m.style},onPointerDown:ie=>{sl||!Ut||(Ue.current=new Date,$(Is.current),ie.target.setPointerCapture(ie.pointerId),ie.target.tagName!=="BUTTON"&&(te(!0),os.current={x:ie.clientX,y:ie.clientY}))},onPointerUp:()=>{var ie,Te,_e,sn;if(Ne||!Ut)return;os.current=null;let rn=Number(((ie=We.current)==null?void 0:ie.style.getPropertyValue("--swipe-amount").replace("px",""))||0),xi=new Date().getTime()-((Te=Ue.current)==null?void 0:Te.getTime()),Dm=Math.abs(rn)/xi;if(Math.abs(rn)>=YA||Dm>.11){$(Is.current),(_e=m.onDismiss)==null||_e.call(m,m),ls(),re(!0);return}(sn=We.current)==null||sn.style.setProperty("--swipe-amount","0px"),te(!1)},onPointerMove:ie=>{var Te;if(!os.current||!Ut)return;let _e=ie.clientY-os.current.y,sn=ie.clientX-os.current.x,rn=(Os==="top"?Math.min:Math.max)(0,_e),xi=ie.pointerType==="touch"?10:2;Math.abs(rn)>xi?(Te=We.current)==null||Te.style.setProperty("--swipe-amount",`${_e}px`):Math.abs(sn)>xi&&(os.current=null)}},md&&!m.jsx?B.createElement("button",{"aria-label":U,"data-disabled":sl,"data-close-button":!0,onClick:sl||!Ut?()=>{}:()=>{var ie;ls(),(ie=m.onDismiss)==null||ie.call(m,m)},className:q(S==null?void 0:S.closeButton,(i=m==null?void 0:m.classNames)==null?void 0:i.closeButton)},B.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},B.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),B.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null,m.jsx||B.isValidElement(m.title)?m.jsx||m.title:B.createElement(B.Fragment,null,De||m.icon||m.promise?B.createElement("div",{"data-icon":"",className:q(S==null?void 0:S.icon,(a=m==null?void 0:m.classNames)==null?void 0:a.icon)},m.promise||m.type==="loading"&&!m.icon?m.icon||Rm():null,m.type!=="loading"?m.
681icon||(M==null?void 0:M[De])||AA(De):null):null,B.createElement("div",{"data-content":"",className:q(S==null?void 0:S.content,(o=m==null?void 0:m.classNames)==null?void 0:o.content)},B.createElement("div",{"data-title":"",className:q(S==null?void 0:S.title,(l=m==null?void 0:m.classNames)==null?void 0:l.title)},m.title),m.description?B.createElement("div",{"data-description":"",className:q(L,Zo,S==null?void 0:S.description,(c=m==null?void 0:m.classNames)==null?void 0:c.description)},m.description):null),B.isValidElement(m.cancel)?m.cancel:m.cancel&&Ld(m.cancel)?B.createElement("button",{"data-button":!0,"data-cancel":!0,style:m.cancelButtonStyle||_,onClick:ie=>{var Te,_e;Ld(m.cancel)&&Ut&&((_e=(Te=m.cancel).onClick)==null||_e.call(Te,ie),ls())},className:q(S==null?void 0:S.cancelButton,(d=m==null?void 0:m.classNames)==null?void 0:d.cancelButton)},m.cancel.label):null,B.isValidElement(m.action)?m.action:m.action&&Ld(m.action)?B.createElement("button",{"data-button":!0,"data-action":!0,style:m.actionButtonStyle||T,onClick:ie=>{var Te,_e;Ld(m.action)&&(ie.defaultPrevented||((_e=(Te=m.action).onClick)==null||_e.call(Te,ie),ls()))},className:q(S==null?void 0:S.actionButton,(u=m==null?void 0:m.classNames)==null?void 0:u.actionButton)},m.action.label):null))};function $b(){if(typeof window>"u"||typeof document>"u")return"ltr";let e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}var eR=e=>{let{invert:t,position:n="bottom-right",hotkey:r=["altKey","KeyT"],expand:i,closeButton:a,className:o,offset:l,theme:c="light",richColors:d,duration:u,style:h,visibleToasts:m=HA,toastOptions:p,dir:g=$b(),gap:f=QA,loadingIcon:b,icons:v,containerAriaLabel:y="Notifications",pauseWhenPageIsHidden:w,cn:j=JA}=e,[N,C]=B.useState([]),k=B.useMemo(()=>Array.from(new Set([n].concat(N.filter(O=>O.position).map(O=>O.position)))),[N,n]),[P,_]=B.useState([]),[T,R]=B.useState(!1),[L,W]=B.useState(!1),[D,V]=B.useState(c!=="system"?c:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),z=B.useRef(null),I=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),S=B.useRef(null),M=B.useRef(!1),U=B.useCallback(O=>{var q;(q=N.find(Z=>Z.id===O.id))!=null&&q.delete||on.dismiss(O.id),C(Z=>Z.filter(({id:de})=>de!==O.id))},[N]);return B.useEffect(()=>on.subscribe(O=>{if(O.dismiss){C(q=>q.map(Z=>Z.id===O.id?{...Z,delete:!0}:Z));return}setTimeout(()=>{Y2.flushSync(()=>{C(q=>{let Z=q.findIndex(de=>de.id===O.id);return Z!==-1?[...q.slice(0,Z),{...q[Z],...O},...q.slice(Z+1)]:[O,...q]})})})}),[]),B.useEffect(()=>{if(c!=="system"){V(c);return}c==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?V("dark"):V("light")),typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",({matches:O})=>{V(O?"dark":"light")})},[c]),B.useEffect(()=>{N.length<=1&&R(!1)},[N]),B.useEffect(()=>{let O=q=>{var Z,de;r.every(ze=>q[ze]||q.code===ze)&&(R(!0),(Z=z.current)==null||Z.focus()),q.code==="Escape"&&(document.activeElement===z.current||(de=z.current)!=null&&de.contains(document.activeElement))&&R(!1)};return document.addEventListener("keydown",O),()=>document.removeEventListener("keydown",O)},[r]),B.useEffect(()=>{if(z.current)return()=>{S.current&&(S.current.focus({preventScroll:!0}),S.current=null,M.current=!1)}},[z.current]),N.length?B.createElement("section",{"aria-label":`${y} ${I}`,tabIndex:-1},k.map((O,q)=>{var Z;let[de,ze]=O.split("-");return B.createElement("ol",{key:O,dir:g==="auto"?$b():g,tabIndex:-1,ref:z,className:o,"data-sonner-toaster":!0,"data-theme":D,"data-y-position":de,"data-x-position":ze,style:{"--front-toast-height":`${((Z=P[0])==null?void 0:Z.height)||0}px`,"--offset":typeof l=="number"?`${l}px`:l||GA,"--width":`${KA}px`,"--gap":`${f}px`,...h},onBlur:le=>{M.current&&!le.currentTarget.contains(le.relatedTarget)&&(M.current=!1,S.current&&(S.current.focus({preventScroll:!0}),S.current=null))},onFocus:le=>{le.target instanceof HTMLElement&&le.target.dataset.dismissible==="false"||M.current||(M.current=!0,S.current=le.relatedTarget)},onMouseEnter:()=>R(!0),onMouseMove:()=>R(!0),onMouseLeave:()=>{L||R(!1)},onPointerDown:le=>{le.target instanceof HTMLElement&&le.target.dataset.dismissible==="false"||W(!0)},onPointerUp:()=>W(!1)},N.filter(le=>!le.position&&q===0||le.position===O).map((le,G)=>{var te,Ne;return B.createElement(ZA,{key:le.id,icons:v,index:G,toast:le,defaultRichColors:d,duration:(te=p==null?void 0:p.duration)!=null?te:u,className:p==null?void 0:p.className,descriptionClassName:p==null?void 0:p.descriptionClassName,invert:t,visibleToasts:m,closeButton:(Ne=p==null?void 0:p.closeButton)!=null?Ne:a,interacting:L,position:O,style:p==null?void 0:p.style,unstyled:p==null?void 0:p.unstyled,classNames:p==null?void 0:p.classNames,cancelButtonStyle:p==null?void 0:p.cancelButtonStyle,actionButtonStyle:p==null?void 0:p.actionButtonStyle,removeToast:U,toasts:N.filter(re=>re.position==le.position),heights:P.filter(re=>re.position==le.position),setHeights:_,expandByDefault:i,gap:f,loadingIcon:b,expanded:T,pauseWhenPageIsHidden:w,cn:j})}))})):null};const tR=({...e})=>{const{theme:t="system"}=_A();return s.jsx(eR,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})};var nR=qj.useId||(()=>{}),sR=0;function Bi(e){const[t,n]=x.useState(nR());return Et(()=>{n(r=>r??String(sR++))},[e]),t?`radix-${t}`:""}const rR=["top","right","bottom","left"],Kr=Math.min,cn=Math.max,sh=Math.round,Id=Math.floor,Qr=e=>({x:e,y:e}
vendor: 4,207 bytes, line 681
681),iR={left:"right",right:"left",bottom:"top",top:"bottom"},aR={start:"end",end:"start"};function mx(e,t,n){return cn(e,Kr(t,n))}function er(e,t){return typeof e=="function"?e(t):e}function tr(e){return e.split("-")[0]}function Uo(e){return e.split("-")[1]}function R0(e){return e==="x"?"y":"x"}function D0(e){return e==="y"?"height":"width"}function Yr(e){return["top","bottom"].includes(tr(e))?"y":"x"}function M0(e){return R0(Yr(e))}function oR(e,t,n){n===void 0&&(n=!1);const r=Uo(e),i=M0(e),a=D0(i);let o=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(o=rh(o)),[o,rh(o)]}function lR(e){const t=rh(e);return[px(e),t,px(t)]}function px(e){return e.replace(/start|end/g,t=>aR[t])}function cR(e,t,n){const r=["left","right"],i=["right","left"],a=["top","bottom"],o=["bottom","top"];switch(e){case"top":case"bottom":return n?t?i:r:t?r:i;case"left":case"right":return t?a:o;default:return[]}}function dR(e,t,n,r){const i=Uo(e);let a=cR(tr(e),n==="start",r);return i&&(a=a.map(o=>o+"-"+i),t&&(a=a.concat(a.map(px)))),a}function rh(e){return e.replace(/left|right|bottom|top/g,t=>iR[t])}function uR(e){return{top:0,right:0,bottom:0,left:0,...e}}function Qk(e){return typeof e!="number"?uR(e):{top:e,right:e,bottom:e,left:e}}function ih(e){const{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Bb(e,t,n){let{reference:r,floating:i}=e;const a=Yr(t),o=M0(t),l=D0(o),c=tr(t),d=a==="y",u=r.x+r.width/2-i.width/2,h=r.y+r.height/2-i.height/2,m=r[l]/2-i[l]/2;let p;switch(c){case"top":p={x:u,y:r.y-i.height};break;case"bottom":p={x:u,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:h};break;case"left":p={x:r.x-i.width,y:h};break;default:p={x:r.x,y:r.y}}switch(Uo(t)){case"start":p[o]-=m*(n&&d?-1:1);break;case"end":p[o]+=m*(n&&d?-1:1);break}return p}const hR=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:a=[],platform:o}=n,l=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t));let d=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:h}=Bb(d,r,c),m=r,p={},g=0;for(let f=0;f<l.length;f++){const{name:b,fn:v}=l[f],{x:y,y:w,data:j,reset:N}=await v({x:u,y:h,initialPlacement:r,placement:m,strategy:i,middlewareData:p,rects:d,platform:o,elements:{reference:e,floating:t}});u=y??u,h=w??h,p={...p,[b]:{...p[b],...j}},N&&g<=50&&(g++,typeof N=="object"&&(N.placement&&(m=N.placement),N.rects&&(d=N.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):N.rects),{x:u,y:h}=Bb(d,m,c)),f=-1)}return{x:u,y:h,placement:m,strategy:i,middlewareData:p}};async function gc(e,t){var n;t===void 0&&(t={});const{x:r,y:i,platform:a,rects:o,elements:l,strategy:c}=e,{boundary:d="clippingAncestors",rootBoundary:u="viewport",elementContext:h="floating",altBoundary:m=!1,padding:p=0}=er(t,e),g=Qk(p),b=l[m?h==="floating"?"reference":"floating":h],v=ih(await a.getClippingRect({element:(n=await(a.isElement==null?void 0:a.isElement(b)))==null||n?b:b.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(l.floating)),boundary:d,rootBoundary:u,strategy:c})),y=h==="floating"?{x:r,y:i,width:o.floating.width,height:o.floating.height}:o.reference,w=await(a.getOffsetParent==null?void 0:a.getOffsetParent(l.floating)),j=await(a.isElement==null?void 0:a.isElement(w))?await(a.getScale==null?void 0:a.getScale(w))||{x:1,y:1}:{x:1,y:1},N=ih(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:w,strategy:c}):y);return{top:(v.top-N.top+g.top)/j.y,bottom:(N.bottom-v.bottom+g.bottom)/j.y,left:(v.left-N.left+g.left)/j.x,right:(N.right-v.right+g.right)/j.x}}const mR=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:i,rects:a,platform:o,elements:l,middlewareData:c}=t,{element:d,padding:u=0}=er(e,t)||{};if(d==null)return{};const h=Qk(u),m={x:n,y:r},p=M0(i),g=D0(p),f=await o.getDimensions(d),b=p==="y",v=b?"top":"left",y=b?"bottom":"right",w=b?"clientHeight":"clientWidth",j=a.reference[g]+a.reference[p]-m[p]-a.floating[g],N=m[p]-a.reference[p],C=await(o.getOffsetParent==null?void 0:o.getOffsetParent(d));let k=C?C[w]:0;
vendor: 5,989 bytes, line 681
681(!k||!await(o.isElement==null?void 0:o.isElement(C)))&&(k=l.floating[w]||a.floating[g]);const P=j/2-N/2,_=k/2-f[g]/2-1,T=Kr(h[v],_),R=Kr(h[y],_),L=T,W=k-f[g]-R,D=k/2-f[g]/2+P,V=mx(L,D,W),z=!c.arrow&&Uo(i)!=null&&D!==V&&a.reference[g]/2-(D<L?T:R)-f[g]/2<0,I=z?D<L?D-L:D-W:0;return{[p]:m[p]+I,data:{[p]:V,centerOffset:D-V-I,...z&&{alignmentOffset:I}},reset:z}}}),pR=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:i,middlewareData:a,rects:o,initialPlacement:l,platform:c,elements:d}=t,{mainAxis:u=!0,crossAxis:h=!0,fallbackPlacements:m,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:f=!0,...b}=er(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const v=tr(i),y=Yr(l),w=tr(l)===l,j=await(c.isRTL==null?void 0:c.isRTL(d.floating)),N=m||(w||!f?[rh(l)]:lR(l)),C=g!=="none";!m&&C&&N.push(...dR(l,f,g,j));const k=[l,...N],P=await gc(t,b),_=[];let T=((r=a.flip)==null?void 0:r.overflows)||[];if(u&&_.push(P[v]),h){const D=oR(i,o,j);_.push(P[D[0]],P[D[1]])}if(T=[...T,{placement:i,overflows:_}],!_.every(D=>D<=0)){var R,L;const D=(((R=a.flip)==null?void 0:R.index)||0)+1,V=k[D];if(V)return{data:{index:D,overflows:T},reset:{placement:V}};let z=(L=T.filter(I=>I.overflows[0]<=0).sort((I,S)=>I.overflows[1]-S.overflows[1])[0])==null?void 0:L.placement;if(!z)switch(p){case"bestFit":{var W;const I=(W=T.filter(S=>{if(C){const M=Yr(S.placement);return M===y||M==="y"}return!0}).map(S=>[S.placement,S.overflows.filter(M=>M>0).reduce((M,U)=>M+U,0)]).sort((S,M)=>S[1]-M[1])[0])==null?void 0:W[0];I&&(z=I);break}case"initialPlacement":z=l;break}if(i!==z)return{reset:{placement:z}}}return{}}}};function zb(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Ub(e){return rR.some(t=>e[t]>=0)}const fR=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...i}=er(e,t);switch(r){case"referenceHidden":{const a=await gc(t,{...i,elementContext:"reference"}),o=zb(a,n.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:Ub(o)}}}case"escaped":{const a=await gc(t,{...i,altBoundary:!0}),o=zb(a,n.floating);return{data:{escapedOffsets:o,escaped:Ub(o)}}}default:return{}}}}};async function xR(e,t){const{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=tr(n),l=Uo(n),c=Yr(n)==="y",d=["left","top"].includes(o)?-1:1,u=a&&c?-1:1,h=er(t,e);let{mainAxis:m,crossAxis:p,alignmentAxis:g}=typeof h=="number"?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:h.mainAxis||0,crossAxis:h.crossAxis||0,alignmentAxis:h.alignmentAxis};return l&&typeof g=="number"&&(p=l==="end"?g*-1:g),c?{x:p*u,y:m*d}:{x:m*d,y:p*u}}const gR=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:i,y:a,placement:o,middlewareData:l}=t,c=await xR(t,e);return o===((n=l.offset)==null?void 0:n.placement)&&(r=l.arrow)!=null&&r.alignmentOffset?{}:{x:i+c.x,y:a+c.y,data:{...c,placement:o}}}}},vR=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:l={fn:b=>{let{x:v,y}=b;return{x:v,y}}},...c}=er(e,t),d={x:n,y:r},u=await gc(t,c),h=Yr(tr(i)),m=R0(h);let p=d[m],g=d[h];if(a){const b=m==="y"?"top":"left",v=m==="y"?"bottom":"right",y=p+u[b],w=p-u[v];p=mx(y,p,w)}if(o){const b=h==="y"?"top":"left",v=h==="y"?"bottom":"right",y=g+u[b],w=g-u[v];g=mx(y,g,w)}const f=l.fn({...t,[m]:p,[h]:g});return{...f,data:{x:f.x-n,y:f.y-r,enabled:{[m]:a,[h]:o}}}}}},yR=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:l=0,mainAxis:c=!0,crossAxis:d=!0}=er(e,t),u={x:n,y:r},h=Yr(i),m=R0(h);let p=u[m],g=u[h];const f=er(l,t),b=typeof f=="number"?{mainAxis:f,crossAxis:0}:{mainAxis:0,crossAxis:0,...f};if(c){const w=m==="y"?"height":"width",j=a.reference[m]-a.floating[w]+b.mainAxis,N=a.reference[m]+a.reference[w]-b.mainAxis;p<j?p=j:p>N&&(p=N)}if(d){var v,y;const w=m==="y"?"width":"height",j=["top","left"].includes(tr(i)),N=a.reference[h]-a.floating[w]+(j&&((v=o.offset)==null?void 0:v[h])||0)+(j?0:b.crossAxis),C=a.reference[h]+a.reference[w]+(j?0:((y=o.offset)==null?void 0:y[h])||0)-(j?b.crossAxis:0);g<N?g=N:g>C&&(g=C)}return{[m]:p,[h]:g}}}},bR=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:i,rects:a,platform:o,elements:l}=t,{apply:c=()=>{},...d}=er(e,t),u=await gc(t,d),h=tr(i),m=Uo(i),p=Yr(i)==="y",{width:g,height:f}=a.floating;let b,v;h==="top"||h==="bottom"?(b=h,v=m===(await(o.isRTL==null?void 0:o.isRTL(l.floating))?"start":"end")?"left":"right"):(v=h,b=m==="end"?"top":"bottom");const y=f-u.top-u.bottom,w=g-u.left-u.right,j=Kr(f-u[b],y),N=Kr(g-u[v],w),C=!t.middlewareData.shift;let k=j,P=N;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(P=w),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(k=y),C&&!m){const T=cn(u.left,0),R=cn(u.right,0),L=cn(u.top,0),W=cn(u.bottom,0);p?P=g-2*(T!==0||R!==0?T+R:cn(u.left,u.right)):k=f-2*(L!==0||W!==0?L+W:cn(u.top,u.bottom))}await c({...t,availableWidth:P,availableHeight:k});const _=await o.getDimensions(l.floating);return g!==_.width||f!==_.height?{reset:{rects:!0}}:{}}}};function Zh(){return typeof window<"u"}function Vo(e){return Yk(e)?(e.nodeName||"").toLowerCase():"#document"}function hn(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Ms(e){var t;return(t=(Yk(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Yk(e){return Zh()?e instanceof Node||e instanceof hn(e).Node:!1}function ts(e){return Zh()?e instanceof Element||e instanceof hn(e).Element:!1}function Ts(e){return Zh()?e instanceof HTMLElement||e instanceof hn(e).HTMLElement:!1}function Vb(e){return!Zh()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof hn(e).ShadowRoot}function Qc(e){const{overflow:t,overflowX:n,overflowY:r,display:i}=ns(e);
vendor: 5,184 bytes, line 681
681return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(i)}function wR(e){return["table","td","th"].includes(Vo(e))}function em(e){return[":popover-open",":modal"].some(t=>{try{return e.matches(t)}catch{return!1}})}function L0(e){const t=I0(),n=ts(e)?ns(e):e;return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function jR(e){let t=Xr(e);for(;Ts(t)&&!Eo(t);){if(L0(t))return t;if(em(t))return null;t=Xr(t)}return null}function I0(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Eo(e){return["html","body","#document"].includes(Vo(e))}function ns(e){return hn(e).getComputedStyle(e)}function tm(e){return ts(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Xr(e){if(Vo(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Vb(e)&&e.host||Ms(e);return Vb(t)?t.host:t}function Xk(e){const t=Xr(e);return Eo(t)?e.ownerDocument?e.ownerDocument.body:e.body:Ts(t)&&Qc(t)?t:Xk(t)}function vc(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const i=Xk(e),a=i===((r=e.ownerDocument)==null?void 0:r.body),o=hn(i);if(a){const l=fx(o);return t.concat(o,o.visualViewport||[],Qc(i)?i:[],l&&n?vc(l):[])}return t.concat(i,vc(i,[],n))}function fx(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Jk(e){const t=ns(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const i=Ts(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,l=sh(n)!==a||sh(r)!==o;return l&&(n=a,r=o),{width:n,height:r,$:l}}function O0(e){return ts(e)?e:e.contextElement}function Ya(e){const t=O0(e);if(!Ts(t))return Qr(1);const n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Jk(t);let o=(a?sh(n.width):n.width)/r,l=(a?sh(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!l||!Number.isFinite(l))&&(l=1),{x:o,y:l}}const NR=Qr(0);function Zk(e){const t=hn(e);return!I0()||!t.visualViewport?NR:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function kR(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==hn(e)?!1:t}function Xi(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=O0(e);let o=Qr(1);t&&(r?ts(r)&&(o=Ya(r)):o=Ya(e));const l=kR(a,n,r)?Zk(a):Qr(0);let c=(i.left+l.x)/o.x,d=(i.top+l.y)/o.y,u=i.width/o.x,h=i.height/o.y;if(a){const m=hn(a),p=r&&ts(r)?hn(r):r;let g=m,f=fx(g);for(;f&&r&&p!==g;){const b=Ya(f),v=f.getBoundingClientRect(),y=ns(f),w=v.left+(f.clientLeft+parseFloat(y.paddingLeft))*b.x,j=v.top+(f.clientTop+parseFloat(y.paddingTop))*b.y;c*=b.x,d*=b.y,u*=b.x,h*=b.y,c+=w,d+=j,g=hn(f),f=fx(g)}}return ih({width:u,height:h,x:c,y:d})}function SR(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e;const a=i==="fixed",o=Ms(r),l=t?em(t.floating):!1;if(r===o||l&&a)return n;let c={scrollLeft:0,scrollTop:0},d=Qr(1);const u=Qr(0),h=Ts(r);if((h||!h&&!a)&&((Vo(r)!=="body"||Qc(o))&&(c=tm(r)),Ts(r))){const m=Xi(r);d=Ya(r),u.x=m.x+r.clientLeft,u.y=m.y+r.clientTop}return{width:n.width*d.x,height:n.height*d.y,x:n.x*d.x-c.scrollLeft*d.x+u.x,y:n.y*d.y-c.scrollTop*d.y+u.y}}function CR(e){return Array.from(e.getClientRects())}function xx(e,t){const n=tm(e).scrollLeft;return t?t.left+n:Xi(Ms(e)).left+n}function PR(e){const t=Ms(e),n=tm(e),r=e.ownerDocument.body,i=cn(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=cn(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let o=-n.scrollLeft+xx(e);const l=-n.scrollTop;return ns(r).direction==="rtl"&&(o+=cn(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:l}}function ER(e,t){const n=hn(e),r=Ms(e),i=n.visualViewport;let a=r.clientWidth,o=r.clientHeight,l=0,c=0;if(i){a=i.width,o=i.height;const d=I0();(!d||d&&t==="fixed")&&(l=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:l,y:c}}function TR(e,t){const n=Xi(e,!0,t==="fixed"),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Ts(e)?Ya(e):Qr(1),o=e.clientWidth*a.x,l=e.clientHeight*a.y,c=i*a.x,d=r*a.y;return{width:o,height:l,x:c,y:d}}function Wb(e,t,n){let r;if(t==="viewport")r=ER(e,n);else if(t==="document")r=PR(Ms(e));else if(ts(t))r=TR(t,n);else{const i=Zk(e);r={...t,x:t.x-i.x,y:t.y-i.y}}return ih(r)}function eS(e,t){const n=Xr(e);return n===t||!ts(n)||Eo(n)?!1:ns(n).position==="fixed"||eS(n,t)}function _R(e,t){const n=t.get(e);if(n)return n;let r=vc(e,[],!1).filter(l=>ts(l)&&Vo(l)!=="body"),i=null;const a=ns(e).position==="fixed";let o=a?Xr(e):e;for(;ts(o)&&!Eo(o);){const l=ns(o),c=L0(o);!c&&l.position==="fixed"&&(i=null),(a?!c&&!i:!c&&l.position==="static"&&!!i&&["absolute","fixed"].includes(i.position)||Qc(o)&&!c&&eS(e,o))?r=r.filter(u=>u!==o):i=l,o=Xr(o)}return t.set(e,r),r}function AR(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const o=[...n==="clippingAncestors"?em(t)?[]:_R(t,this._c):[].concat(n),r],l=o[0],c=o.reduce((d,u)=>{const h=Wb(t,u,i);return d.top=cn(h.top,d.top),d.right=Kr(h.right,d.right),d.bottom=Kr(h.bottom,d.bottom),d.left
vendor: 12,832 bytes, line 681
681=cn(h.left,d.left),d},Wb(t,l,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function RR(e){const{width:t,height:n}=Jk(e);return{width:t,height:n}}function DR(e,t,n){const r=Ts(t),i=Ms(t),a=n==="fixed",o=Xi(e,!0,a,t);let l={scrollLeft:0,scrollTop:0};const c=Qr(0);if(r||!r&&!a)if((Vo(t)!=="body"||Qc(i))&&(l=tm(t)),r){const p=Xi(t,!0,a,t);c.x=p.x+t.clientLeft,c.y=p.y+t.clientTop}else i&&(c.x=xx(i));let d=0,u=0;if(i&&!r&&!a){const p=i.getBoundingClientRect();u=p.top+l.scrollTop,d=p.left+l.scrollLeft-xx(i,p)}const h=o.left+l.scrollLeft-c.x-d,m=o.top+l.scrollTop-c.y-u;return{x:h,y:m,width:o.width,height:o.height}}function up(e){return ns(e).position==="static"}function Hb(e,t){if(!Ts(e)||ns(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Ms(e)===n&&(n=n.ownerDocument.body),n}function tS(e,t){const n=hn(e);if(em(e))return n;if(!Ts(e)){let i=Xr(e);for(;i&&!Eo(i);){if(ts(i)&&!up(i))return i;i=Xr(i)}return n}let r=Hb(e,t);for(;r&&wR(r)&&up(r);)r=Hb(r,t);return r&&Eo(r)&&up(r)&&!L0(r)?n:r||jR(e)||n}const MR=async function(e){const t=this.getOffsetParent||tS,n=this.getDimensions,r=await n(e.floating);return{reference:DR(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function LR(e){return ns(e).direction==="rtl"}const IR={convertOffsetParentRelativeRectToViewportRelativeRect:SR,getDocumentElement:Ms,getClippingRect:AR,getOffsetParent:tS,getElementRects:MR,getClientRects:CR,getDimensions:RR,getScale:Ya,isElement:ts,isRTL:LR};function OR(e,t){let n=null,r;const i=Ms(e);function a(){var l;clearTimeout(r),(l=n)==null||l.disconnect(),n=null}function o(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),a();const{left:d,top:u,width:h,height:m}=e.getBoundingClientRect();if(l||t(),!h||!m)return;const p=Id(u),g=Id(i.clientWidth-(d+h)),f=Id(i.clientHeight-(u+m)),b=Id(d),y={rootMargin:-p+"px "+-g+"px "+-f+"px "+-b+"px",threshold:cn(0,Kr(1,c))||1};let w=!0;function j(N){const C=N[0].intersectionRatio;if(C!==c){if(!w)return o();C?o(!1,C):r=setTimeout(()=>{o(!1,1e-7)},1e3)}w=!1}try{n=new IntersectionObserver(j,{...y,root:i.ownerDocument})}catch{n=new IntersectionObserver(j,y)}n.observe(e)}return o(!0),a}function FR(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=r,d=O0(e),u=i||a?[...d?vc(d):[],...vc(t)]:[];u.forEach(v=>{i&&v.addEventListener("scroll",n,{passive:!0}),a&&v.addEventListener("resize",n)});const h=d&&l?OR(d,n):null;let m=-1,p=null;o&&(p=new ResizeObserver(v=>{let[y]=v;y&&y.target===d&&p&&(p.unobserve(t),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var w;(w=p)==null||w.observe(t)})),n()}),d&&!c&&p.observe(d),p.observe(t));let g,f=c?Xi(e):null;c&&b();function b(){const v=Xi(e);f&&(v.x!==f.x||v.y!==f.y||v.width!==f.width||v.height!==f.height)&&n(),f=v,g=requestAnimationFrame(b)}return n(),()=>{var v;u.forEach(y=>{i&&y.removeEventListener("scroll",n),a&&y.removeEventListener("resize",n)}),h==null||h(),(v=p)==null||v.disconnect(),p=null,c&&cancelAnimationFrame(g)}}const $R=gR,BR=vR,zR=pR,UR=bR,VR=fR,Gb=mR,WR=yR,HR=(e,t,n)=>{const r=new Map,i={platform:IR,...n},a={...i.platform,_c:r};return hR(e,t,{...i,platform:a})};var fu=typeof document<"u"?x.useLayoutEffect:x.useEffect;function ah(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ah(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const a=i[r];if(!(a==="_owner"&&e.$$typeof)&&!ah(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function nS(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function qb(e,t){const n=nS(e);return Math.round(t*n)/n}function hp(e){const t=x.useRef(e);return fu(()=>{t.current=e}),t}function GR(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:l=!0,whileElementsMounted:c,open:d}=e,[u,h]=x.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[m,p]=x.useState(r);ah(m,r)||p(r);const[g,f]=x.useState(null),[b,v]=x.useState(null),y=x.useCallback(S=>{S!==C.current&&(C.current=S,f(S))},[]),w=x.useCallback(S=>{S!==k.current&&(k.current=S,v(S))},[]),j=a||g,N=o||b,C=x.useRef(null),k=x.useRef(null),P=x.useRef(u),_=c!=null,T=hp(c),R=hp(i),L=hp(d),W=x.useCallback(()=>{if(!C.current||!k.current)return;const S={placement:t,strategy:n,middleware:m};R.current&&(S.platform=R.current),HR(C.current,k.current,S).then(M=>{const U={...M,isPositioned:L.current!==!1};D.current&&!ah(P.current,U)&&(P.current=U,la.flushSync(()=>{h(U)}))})},[m,t,n,R,L]);fu(()=>{d===!1&&P.current.isPositioned&&(P.current.isPositioned=!1,h(S=>({...S,isPositioned:!1})))},[d]);const D=x.useRef(!1);fu(()=>(D.current=!0,()=>{D.current=!1}),[]),fu(()=>{if(j&&(C.current=j),N&&(k.current=N),j&&N){if(T.current)return T.current(j,N,W);W()}},[j,N,W,T,_]);const V=x.useMemo(()=>({reference:C,floating:k,setReference:y,setFloating:w}),[y,w]),z=x.useMemo(()=>({reference:j,floating:N}),[j,N]),I=x.useMemo(()=>{const S={position:n,left:0,top:0};if(!z.floating)return S;const M=qb(z.floating,u.x),U=qb(z.floating,u.y);return l?{...S,transform:"translate("+M+"px, "+U+"px)",...nS(z.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:M,top:U}},[n,l,z.floating,u.x,u.y]);return x.useMemo(()=>({...u,update:W,refs:V,elements:z,floatingStyles:I}),[u,W,V,z,I])}const qR=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:i}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Gb({element:r.current,padding:i}).fn(n):{}:r?Gb({element:r,padding:i}).fn(n):{}}}},KR=(e,t)=>({...$R(e),options:[e,t]}),QR=(e,t)=>({...BR(e),options:[e,t]}),YR=(e,t)=>({...WR(e),options:[e,t]}),XR=(e,t)=>({...zR(e),options:[e,t]}),JR=(e,t)=>({...UR(e),options:[e,t]}),ZR=(e,t)=>({...VR(e),options:[e,t]}),eD=(e,t)=>({...qR(e),options:[e,t]});var tD="Arrow",sS=x.forwardRef((e,t)=>{const{children:n,width:r=10,height:i=5,...a}=e;return s.jsx(ye.svg,{...a,ref:t,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:s.jsx("polygon",{points:"0,0 30,0 15,10"})})});sS.displayName=tD;var nD=sS;function sD(e,t=[]){let n=[];function r(a,o){const l=x.createContext(o),c=n.length;n=[...n,o];function d(h){const{scope:m,children:p,...g}=h,f=(m==null?void 0:m[e][c])||l,b=x.useMemo(()=>g,Object.values(g));return s.jsx(f.Provider,{value:b,children:p})}function u(h,m){const p=(m==null?void 0:m[e][c])||l,g=x.useContext(p);if(g)return g;if(o!==void 0)return o;throw new Error(`\`${h}\` must be used within \`${a}\``)}return d.displayName=a+"Provider",[d,u]}const i=()=>{const a=n.map(o=>x.createContext(o));return function(l){const c=(l==null?void 0:l[e])||a;return x.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return i.scopeName=e,[r,rD(i,...t)]}function rD(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(a){const o=r.reduce((l,{useScope:c,scopeName:d})=>{const h=c(a)[`__scope${d}`];return{...l,...h}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return n.scopeName=t.scopeName,n}function iD(e){const[t,n]=x.useState(void 0);return Et(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const a=i[0];let o,l;if("borderBoxSize"in a){const c=a.borderBoxSize,d=Array.isArray(c)?c[0]:c;o=d.inlineSize,l=d.blockSize}else o=e.offsetWidth,l=e.offsetHeight;n({width:o,height:l})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var F0="Popper",[rS,Wo]=sD(F0),[aD,iS]=rS(F0),aS=e=>{const{__scopePopper:t,children:n}=e,[r,i]=x.useState(null);return s.jsx(aD,{scope:t,anchor:r,onAnchorChange:i,children:n})};aS.displayName=F0;var oS="PopperAnchor",lS=x.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,a=iS(oS,n),o=x.useRef(null),l=Re(t,o);return x.useEffect(()=>{a.onAnchorChange((r==null?void 0:r.current)||o.current)}),r?null:s.jsx(ye.div,{...i,ref:l})});lS.displayName=oS;var $0="PopperContent",[oD,lD]=rS($0),cS=x.forwardRef((e,t)=>{var G,te,Ne,re,X,$;const{__scopePopper:n,side:r="bottom",sideOffset:i=0,align:a="center",alignOffset:o=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:d=[],collisionPadding:u=0,sticky:h="partial",hideWhenDetached:m=!1,updatePositionStrategy:p="optimized",onPlaced:g,...f}=e,b=iS($0,n),[v,y]=x.useState(null),w=Re(t,ae=>y(ae)),[j,N]=x.useState(null),C=iD(j),k=(C==null?void 0:C.width)??0,P=(C==null?void 0:C.height)??0,_=r+(a!=="center"?"-"+a:""),T=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},R=Array.isArray(d)?d:[d],L=R.length>0,W={padding:T,boundary:R.filter(dD),altBoundary:L},{refs:D,floatingStyles:V,placement:z,isPositioned:I,middlewareData:S}=GR({strategy:"fixed",placement:_,whileElementsMounted:(...ae)=>FR(...ae,{animationFrame:p==="always"}),elements:{reference:b.anchor},middleware:[KR({mainAxis:i+P,alignmentAxis:o}),c&&QR({mainAxis:!0,crossAxis:!1,limiter:h==="partial"?YR():void 0,...W}),c&&XR({...W}),JR({...W,apply:({elements:ae,rects:be,availableWidth:Ue,availableHeight:We})=>{const{width:ft,height:In}=be.reference,De=ae.floating.style;De.setProperty("--radix-popper-available-width",`${Ue}px`),De.setProperty("--radix-popper-available-height",`${We}px`),De.setProperty("--radix-popper-anchor-width",`${ft}px`),De.setProperty("--radix-popper-anchor-height",`${In}px`)}}),j&&eD({element:j,padding:l}),uD({arrowWidth:k,arrowHeight:P}),m&&ZR({strategy:"referenceHidden",...W})]}),[M,U]=hS(z),O=pn(g);Et(()=>{I&&(O==null||O())},[I,O]);const q=(G=S.arrow)==null?void 0:G.x,Z=(te=S.arrow)==null?void 0:te.y,de=((Ne=S.arrow)==null?void 0:Ne.centerOffset)!==0,[ze,le]=x.useState();return Et(()=>{v&&le(window.getComputedStyle(v).zIndex)},[v]),s.jsx("div",{ref:D.setFloating,"data-radix-popper-content-wrapper":"",style:{...V,transform:I?V.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ze,"--radix-popper-transform-origin":[(re=S.transformOrigin)==null?void 0:re.x,(X=S.transformOrigin)==null?void 0:X.y].join(" "),...(($=S.hide)==null?void 0:$.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:s.jsx(oD,{scope:n,placedSide:M,onArrowChange:N,arrowX:q,arrowY:Z,shouldHideArrow:de,children:s.jsx(ye.div,{"data-side":M,"data-align":U,...f,ref:w,style:{...f.style,animation:I?void 0:"none"}})})})});cS.displayName=$0;var dS="PopperArrow",cD={top:"bottom",right:"left",bottom:"top",left:"right"},uS=x.forwardRef(function(t,n){const{__scopePopper:r,...i}=t,a=lD(dS,r),o=cD[a.placedSide];return s.jsx("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:s.jsx(nD,{...i,ref:n,style:{...i.style,display:"block"}})})});uS.displayName=dS;function dD(e){return e!==null}var uD=e=>({name:"transformOrigin",options:e,fn(t){var b,v,y;const{placement:n,rects:r,middlewareData:i}=t,o=((b=i.arrow)==null?void 0:b.centerOffset)!==0,l=o?0:e.arrowWidth,c=o?0:e.arrowHeight,[d,u]=hS(n),h={start:"0%",center:"50%",end:"100%"}[u],m=(((v=i.arrow)==null?void 0:v.x)??0)+l/2,p=(((y=i.arrow)==null?void 0:y.y)??0)+c/2;let g="",f="";return d==="bottom"?(g=o?h:`${m}px`,f=`${-c}px`):d==="top"?(g=o?h:`${m}px`,f=`${r.floating.height+c}px`):d==="right"?(g=`${-c}px`,f=o?h:`${p}px`):d==="left"&&(g=`${r.floating.width+c}px`,f=o?h:`${p}px`),{data:{x:g,y:f}}}});function hS(e){const[t,n="center"]=e.split("-");return[t,n]}var mS=aS,nm=lS,B0=cS,z0=uS,[sm,IK]=Vc("Tooltip",[Wo]),U0=Wo(),pS="TooltipProvider",hD=700,Kb="tooltip.open",[mD,fS]=sm(pS),xS=e=>{const{__scopeTooltip:t,delayDuration:n=hD,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,[o,l]=x.useState(!0),c=x.useRef(!1),d=x.useRef(0);return x.useEffect(()=>{const u=d.current;return()=>window.clearTimeout(u)},[]),s.jsx(mD,{scope:t,isOpenDelayed:o,delayDuration:n,onOpen:x.useCallback(()=>{window.clearTimeout(d.current),l(!1)},[]),onClose:x.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(()=>l(!0),r)},[r]),isPointerInTransitRef:c,onPointerInTransitChange:x.useCallback(u=>{c.current=u}
vendor: 5,690 bytes, line 681
681,[]),disableHoverableContent:i,children:a})};xS.displayName=pS;var gS="Tooltip",[OK,rm]=sm(gS),gx="TooltipTrigger",pD=x.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=rm(gx,n),a=fS(gx,n),o=U0(n),l=x.useRef(null),c=Re(t,l,i.onTriggerChange),d=x.useRef(!1),u=x.useRef(!1),h=x.useCallback(()=>d.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener("pointerup",h),[h]),s.jsx(nm,{asChild:!0,...o,children:s.jsx(ye.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:c,onPointerMove:se(e.onPointerMove,m=>{m.pointerType!=="touch"&&!u.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),u.current=!0)}),onPointerLeave:se(e.onPointerLeave,()=>{i.onTriggerLeave(),u.current=!1}),onPointerDown:se(e.onPointerDown,()=>{d.current=!0,document.addEventListener("pointerup",h,{once:!0})}),onFocus:se(e.onFocus,()=>{d.current||i.onOpen()}),onBlur:se(e.onBlur,i.onClose),onClick:se(e.onClick,i.onClose)})})});pD.displayName=gx;var fD="TooltipPortal",[FK,xD]=sm(fD,{forceMount:void 0}),To="TooltipContent",vS=x.forwardRef((e,t)=>{const n=xD(To,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i="top",...a}=e,o=rm(To,e.__scopeTooltip);return s.jsx(ri,{present:r||o.open,children:o.disableHoverableContent?s.jsx(yS,{side:i,...a,ref:t}):s.jsx(gD,{side:i,...a,ref:t})})}),gD=x.forwardRef((e,t)=>{const n=rm(To,e.__scopeTooltip),r=fS(To,e.__scopeTooltip),i=x.useRef(null),a=Re(t,i),[o,l]=x.useState(null),{trigger:c,onClose:d}=n,u=i.current,{onPointerInTransitChange:h}=r,m=x.useCallback(()=>{l(null),h(!1)},[h]),p=x.useCallback((g,f)=>{const b=g.currentTarget,v={x:g.clientX,y:g.clientY},y=wD(v,b.getBoundingClientRect()),w=jD(v,y),j=ND(f.getBoundingClientRect()),N=SD([...w,...j]);l(N),h(!0)},[h]);return x.useEffect(()=>()=>m(),[m]),x.useEffect(()=>{if(c&&u){const g=b=>p(b,u),f=b=>p(b,c);return c.addEventListener("pointerleave",g),u.addEventListener("pointerleave",f),()=>{c.removeEventListener("pointerleave",g),u.removeEventListener("pointerleave",f)}}},[c,u,p,m]),x.useEffect(()=>{if(o){const g=f=>{const b=f.target,v={x:f.clientX,y:f.clientY},y=(c==null?void 0:c.contains(b))||(u==null?void 0:u.contains(b)),w=!kD(v,o);y?m():w&&(m(),d())};return document.addEventListener("pointermove",g),()=>document.removeEventListener("pointermove",g)}},[c,u,o,d,m]),s.jsx(yS,{...e,ref:a})}),[vD,yD]=sm(gS,{isInside:!1}),yS=x.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...l}=e,c=rm(To,n),d=U0(n),{onClose:u}=c;return x.useEffect(()=>(document.addEventListener(Kb,u),()=>document.removeEventListener(Kb,u)),[u]),x.useEffect(()=>{if(c.trigger){const h=m=>{const p=m.target;p!=null&&p.contains(c.trigger)&&u()};return window.addEventListener("scroll",h,{capture:!0}),()=>window.removeEventListener("scroll",h,{capture:!0})}},[c.trigger,u]),s.jsx(Bo,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:h=>h.preventDefault(),onDismiss:u,children:s.jsxs(B0,{"data-state":c.stateAttribute,...d,...l,ref:t,style:{...l.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[s.jsx(Z2,{children:r}),s.jsx(vD,{scope:n,isInside:!0,children:s.jsx(P6,{id:c.contentId,role:"tooltip",children:i||r})})]})})});vS.displayName=To;var bS="TooltipArrow",bD=x.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=U0(n);return yD(bS,n).isInside?null:s.jsx(z0,{...i,...r,ref:t})});bD.displayName=bS;function wD(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return"left";case i:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function jD(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function ND(e){const{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function kD(e,t){const{x:n,y:r}=e;let i=!1;for(let a=0,o=t.length-1;a<t.length;o=a++){const l=t[a].x,c=t[a].y,d=t[o].x,u=t[o].y;c>r!=u>r&&n<(d-l)*(r-c)/(u-c)+l&&(i=!i)}return i}function SD(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),CD(t)}function CD(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const i=e[r];for(;t.length>=2;){const a=t[t.length-1],o=t[t.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))t.pop();else break}t.push(i)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const i=e[r];for(;n.length>=2;){const a=n[n.length-1],o=n[n.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))n.pop();else break}n.push(i)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var PD=xS,wS=vS;const ED=PD,TD=x.forwardRef(({className:e,sideOffset:t=4,...n},r)=>s.jsx(wS,{ref:r,sideOffset:t,className:J("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
681de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n}));TD.displayName=wS.displayName;var Yc=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Ji=typeof window>"u"||"Deno"in globalThis;function jn(){}function _D(e,t){return typeof e=="function"?e(t):e}function vx(e){return typeof e=="number"&&e>=0&&e!==1/0}function jS(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Xa(e,t){return typeof e=="function"?e(t):e}function Kn(e,t){return typeof e=="function"?e(t):e}function Qb(e,t){const{type:n="all",exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:l}=e;if(o){if(r){if(t.queryHash!==V0(o,t.options))return!1}else if(!bc(t.queryKey,o))return!1}if(n!=="all"){const c=t.isActive();if(n==="active"&&!c||n==="inactive"&&c)return!1}return!(typeof l=="boolean"&&t.isStale()!==l||i&&i!==t.state.fetchStatus||a&&!a(t))}function Yb(e,t){const{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(yc(t.options.mutationKey)!==yc(a))return!1}else if(!bc(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function V0(e,t){return((t==null?void 0:t.queryKeyHashFn)||yc)(e)}function yc(e){return JSON.stringify(e,(t,n)=>bx(n)?Object.keys(n).sort().reduce((r,i)=>(r[i]=n[i],r),{}):n)}function bc(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?!Object.keys(t).some(n=>!bc(e[n],t[n])):!1}function NS(e,t){if(e===t)return e;const n=Xb(e)&&Xb(t);if(n||bx(e)&&bx(t)){const r=n?e:Object.keys(e),i=r.length,a=n?t:Object.keys(t),o=a.length,l=n?[]:{};let c=0;for(let d=0;d<o;d++){const u=n?d:a[d];(!n&&r.includes(u)||n)&&e[u]===void 0&&t[u]===void 0?(l[u]=void 0,c++):(l[u]=NS(e[u],t[u]),l[u]===e[u]&&e[u]!==void 0&&c++)}return i===o&&c===i?e:l}return t}function yx(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function Xb(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function bx(e){if(!Jb(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!Jb(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Jb(e){return Object.prototype.toString.call(e)==="[object Object]"}function AD(e){return new Promise(t=>{setTimeout(t,e)})}function wx(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?NS(e,t):t}function RD(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(1):r}function DD(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var W0=Symbol();function kS(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===W0?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var _i,jr,ro,Ej,MD=(Ej=class extends Yc{constructor(){super();ne(this,_i);ne(this,jr);ne(this,ro);Q(this,ro,t=>{if(!Ji&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){E(this,jr)||this.setEventListener(E(this,ro))}onUnsubscribe(){var t;this.hasListeners()||((t=E(this,jr))==null||t.call(this),Q(this,jr,void 0))}setEventListener(t){var n;Q(this,ro,t),(n=E(this,jr))==null||n.call(this),Q(this,jr,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){E(this,_i)!==t&&(Q(this,_i,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof E(this,_i)=="boolean"?E(this,_i):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},_i=new WeakMap,jr=new WeakMap,ro=new WeakMap,Ej),H0=new MD,io,Nr,ao,Tj,LD=(Tj=class extends Yc{constructor(){super();ne(this,io,!0);ne(this,Nr);ne(this,ao);Q(this,ao,t=>{if(!Ji&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){E(this,Nr)||this.setEventListener(E(this,ao))}onUnsubscribe(){var t;this.hasListeners()||((t=E(this,Nr))==null||t.call(this),Q(this,Nr,void 0))}setEventListener(t){var n;Q(this,ao,t),(n=E(this,Nr))==null||n.call(this),Q(this,Nr,t(this.setOnline.bind(this)))}setOnline(t){E(this,io)!==t&&(Q(this,io,t),this.listeners.forEac
vendor: 28,009 bytes, line 681
681h(r=>{r(t)}))}isOnline(){return E(this,io)}},io=new WeakMap,Nr=new WeakMap,ao=new WeakMap,Tj),oh=new LD;function jx(){let e,t;const n=new Promise((i,a)=>{e=i,t=a});n.status="pending",n.catch(()=>{});function r(i){Object.assign(n,i),delete n.resolve,delete n.reject}return n.resolve=i=>{r({status:"fulfilled",value:i}),e(i)},n.reject=i=>{r({status:"rejected",reason:i}),t(i)},n}function ID(e){return Math.min(1e3*2**e,3e4)}function SS(e){return(e??"online")==="online"?oh.isOnline():!0}var CS=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function mp(e){return e instanceof CS}function PS(e){let t=!1,n=0,r=!1,i;const a=jx(),o=f=>{var b;r||(m(new CS(f)),(b=e.abort)==null||b.call(e))},l=()=>{t=!0},c=()=>{t=!1},d=()=>H0.isFocused()&&(e.networkMode==="always"||oh.isOnline())&&e.canRun(),u=()=>SS(e.networkMode)&&e.canRun(),h=f=>{var b;r||(r=!0,(b=e.onSuccess)==null||b.call(e,f),i==null||i(),a.resolve(f))},m=f=>{var b;r||(r=!0,(b=e.onError)==null||b.call(e,f),i==null||i(),a.reject(f))},p=()=>new Promise(f=>{var b;i=v=>{(r||d())&&f(v)},(b=e.onPause)==null||b.call(e)}).then(()=>{var f;i=void 0,r||(f=e.onContinue)==null||f.call(e)}),g=()=>{if(r)return;let f;const b=n===0?e.initialPromise:void 0;try{f=b??e.fn()}catch(v){f=Promise.reject(v)}Promise.resolve(f).then(h).catch(v=>{var C;if(r)return;const y=e.retry??(Ji?0:3),w=e.retryDelay??ID,j=typeof w=="function"?w(n,v):w,N=y===!0||typeof y=="number"&&n<y||typeof y=="function"&&y(n,v);if(t||!N){m(v);return}n++,(C=e.onFail)==null||C.call(e,n,v),AD(j).then(()=>d()?void 0:p()).then(()=>{t?m(v):g()})})};return{promise:a,cancel:o,continue:()=>(i==null||i(),a),cancelRetry:l,continueRetry:c,canStart:u,start:()=>(u()?g():p().then(g),a)}}function OD(){let e=[],t=0,n=l=>{l()},r=l=>{l()},i=l=>setTimeout(l,0);const a=l=>{t?e.push(l):i(()=>{n(l)})},o=()=>{const l=e;e=[],l.length&&i(()=>{r(()=>{l.forEach(c=>{n(c)})})})};return{batch:l=>{let c;t++;try{c=l()}finally{t--,t||o()}return c},batchCalls:l=>(...c)=>{a(()=>{l(...c)})},schedule:a,setNotifyFunction:l=>{n=l},setBatchNotifyFunction:l=>{r=l},setScheduler:l=>{i=l}}}var vt=OD(),Ai,_j,ES=(_j=class{constructor(){ne(this,Ai)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),vx(this.gcTime)&&Q(this,Ai,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Ji?1/0:5*60*1e3))}clearGcTimeout(){E(this,Ai)&&(clearTimeout(E(this,Ai)),Q(this,Ai,void 0))}},Ai=new WeakMap,_j),oo,lo,wn,St,Dc,Ri,Wn,zs,Aj,FD=(Aj=class extends ES{constructor(t){super();ne(this,Wn);ne(this,oo);ne(this,lo);ne(this,wn);ne(this,St);ne(this,Dc);ne(this,Ri);Q(this,Ri,!1),Q(this,Dc,t.defaultOptions),this.setOptions(t.options),this.observers=[],Q(this,wn,t.cache),this.queryKey=t.queryKey,this.queryHash=t.queryHash,Q(this,oo,$D(this.options)),this.state=t.state??E(this,oo),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=E(this,St))==null?void 0:t.promise}setOptions(t){this.options={...E(this,Dc),...t},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&E(this,wn).remove(this)}setData(t,n){const r=wx(this.state.data,t,this.options);return xe(this,Wn,zs).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t,n){xe(this,Wn,zs).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){var r,i;const n=(r=E(this,St))==null?void 0:r.promise;return(i=E(this,St))==null||i.cancel(t),n?n.then(jn).catch(jn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(E(this,oo))}isActive(){return this.observers.some(t=>Kn(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===W0||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(t=0){return this.state.isInvalidated||this.state.data===void 0||!jS(this.state.dataUpdatedAt,t)}onFocus(){var n;const t=this.observers.find(r=>r.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(n=E(this,St))==null||n.continue()}onOnline(){var n;const t=this.observers.find(r=>r.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(n=E(this,St))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),E(this,wn).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(E(this,St)&&(E(this,Ri)?E(this,St).cancel({revert:!0}):E(this,St).cancelRetry()),this.scheduleGc()),E(this,wn).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||xe(this,Wn,zs).call(this,{type:"invalidate"})}fetch(t,n){var c,d,u;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(E(this,St))return E(this,St).continueRetry(),E(this,St).promise}if(t&&this.setOptions(t),!this.options.queryFn){const h=this.observers.find(m=>m.options.queryFn);h&&this.setOptions(h.options)}const r=new AbortController,i=h=>{Object.defineProperty(h,"signal",{enumerable:!0,get:()=>(Q(this,Ri,!0),r.signal)})},a=()=>{const h=kS(this.options,n),m={queryKey:this.queryKey,meta:this.meta};return i(m),Q(this,Ri,!1),this.options.persister?this.options.persister(h,m,this):h(m)},o={fetchOptions:n,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:a};i(o),(c=this.options.behavior)==null||c.onFetch(o,this),Q(this,lo,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((d=o.fetchOptions)==null?void 0:d.meta))&&xe(this,Wn,zs).call(this,{type:"fetch",meta:(u=o.fetchOptions)==null?void 0:u.meta});const l=h=>{var m,p,g,f;mp(h)&&h.silent||xe(this,Wn,zs).call(this,{type:"error",error:h}),mp(h)||((p=(m=E(this,wn).config).onError)==null||p.call(m,h,this),(f=(g=E(this,wn).config).onSettled)==null||f.call(g,this.state.data,h,this)),this.scheduleGc()};return Q(this,St,PS({initialPromise:n==null?void 0:n.initialPromise,fn:o.fetchFn,abort:r.abort.bind(r),onSuccess:h=>{var m,p,g,f;if(h===void 0){l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(h)}catch(b){l(b);return}(p=(m=E(this,wn).config).onSuccess)==null||p.call(m,h,this),(f=(g=E(this,wn).config).onSettled)==null||f.call(g,h,this.state.error,this),this.scheduleGc()},onError:l,onFail:(h,m)=>{xe(this,Wn,zs).call(this,{type:"failed",failureCount:h,error:m})},onPause:()=>{xe(this,Wn,zs).call(this,{type:"pause"})},onContinue:()=>{xe(this,Wn,zs).call(this,{type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0})),E(this,St).start()}},oo=new WeakMap,lo=new WeakMap,wn=new WeakMap,St=new WeakMap,Dc=new WeakMap,Ri=new WeakMap,Wn=new WeakSet,zs=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...TS(r.data,this.options),fetchMeta:t.meta??null};case"success":return{...r,data:t.data,dataUpdateCount:r.dataUpdateCount+1,dataUpdatedAt:t.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const i=t.error;return mp(i)&&i.revert&&E(this,lo)?{...E(this,lo),fetchStatus:"idle"}:{...r,error:i,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error"};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),vt.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),E(this,wn).notify({query:this,type:"updated",action:t})})},Aj);function TS(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:SS(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function $D(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var hs,Rj,BD=(Rj=class extends Yc{constructor(t={}){super();ne(this,hs);this.config=t,Q(this,hs,new Map)}build(t,n,r){const i=n.queryKey,a=n.queryHash??V0(i,n);let o=this.get(a);return o||(o=new FD({cache:this,queryKey:i,queryHash:a,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(i)}),this.add(o)),o}add(t){E(this,hs).has(t.queryHash)||(E(this,hs).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const n=E(this,hs).get(t.queryHash);n&&(t.destroy(),n===t&&E(this,hs).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){vt.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return E(this,hs).get(t)}getAll(){return[...E(this,hs).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Qb(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>Qb(t,r)):n}notify(t){vt.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){vt.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){vt.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},hs=new WeakMap,Rj),ms,At,Di,ps,dr,Dj,zD=(Dj=class extends ES{constructor(t){super();ne(this,ps);ne(this,ms);ne(this,At);ne(this,Di);this.mutationId=t.mutationId,Q(this,At,t.mutationCache),Q(this,ms,[]),this.state=t.state||UD(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){E(this,ms).includes(t)||(E(this,ms).push(t),this.clearGcTimeout(),E(this,At).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){Q(this,ms,E(this,ms).filter(n=>n!==t)),this.scheduleGc(),E(this,At).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){E(this,ms).length||(this.state.status==="pending"?this.scheduleGc():E(this,At).remove(this))}continue(){var t;return((t=E(this,Di))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var i,a,o,l,c,d,u,h,m,p,g,f,b,v,y,w,j,N,C,k;Q(this,Di,PS({fn:()=>this.options.mutationFn?this.options.mutationFn(t):Promise.reject(new Error("No mutationFn found")),onFail:(P,_)=>{xe(this,ps,dr).call(this,{type:"failed",failureCount:P,error:_})},onPause:()=>{xe(this,ps,dr).call(this,{type:"pause"})},onContinue:()=>{xe(this,ps,dr).call(this,{type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>E(this,At).canRun(this)}));const n=this.state.status==="pending",r=!E(this,Di).canStart();try{if(!n){xe(this,ps,dr).call(this,{type:"pending",variables:t,isPaused:r}),await((a=(i=E(this,At).config).onMutate)==null?void 0:a.call(i,t,this));const _=await((l=(o=this.options).onMutate)==null?void 0:l.call(o,t));_!==this.state.context&&xe(this,ps,dr).call(this,{type:"pending",context:_,variables:t,isPaused:r})}const P=await E(this,Di).start();return await((d=(c=E(this,At).config).onSuccess)==null?void 0:d.call(c,P,t,this.state.context,this)),await((h=(u=this.options).onSuccess)==null?void 0:h.call(u,P,t,this.state.context)),await((p=(m=E(this,At).config).onSettled)==null?void 0:p.call(m,P,null,this.state.variables,this.state.context,this)),await((f=(g=this.options).onSettled)==null?void 0:f.call(g,P,null,t,this.state.context)),xe(this,ps,dr).call(this,{type:"success",data:P}),P}catch(P){try{throw await((v=(b=E(this,At).config).onError)==null?void 0:v.call(b,P,t,this.state.context,this)),await((w=(y=this.options).onError)==null?void 0:w.call(y,P,t,this.state.context)),await((N=(j=E(this,At).config).onSettled)==null?void 0:N.call(j,void 0,P,this.state.variables,this.state.context,this)),await((k=(C=this.options).onSettled)==null?void 0:k.call(C,void 0,P,t,this.state.context)),P}finally{xe(this,ps,dr).call(this,{type:"error",error:P})}}finally{E(this,At).runNext(this)}}},ms=new WeakMap,At=new WeakMap,Di=new WeakMap,ps=new WeakSet,dr=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),vt.batch(()=>{E(this,ms).forEach(r=>{r.onMutationUpdate(t)}),E(this,At).notify({mutation:this,type:"updated",action:t})})},Dj);function UD(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var an,Mc,Mj,VD=(Mj=class extends Yc{constructor(t={}){super();ne(this,an);ne(this,Mc);this.config=t,Q(this,an,new Map),Q(this,Mc,Date.now())}build(t,n,r){const i=new zD({mutationCache:this,mutationId:++fd(this,Mc)._,options:t.defaultMutationOptions(n),state:r});return this.add(i),i}add(t){const n=Od(t),r=E(this,an).get(n)??[];r.push(t),E(this,an).set(n,r),this.notify({type:"added",mutation:t})}remove(t){var r;const n=Od(t);if(E(this,an).has(n)){const i=(r=E(this,an).get(n))==null?void 0:r.filter(a=>a!==t);i&&(i.length===0?E(this,an).delete(n):E(this,an).set(n,i))}this.notify({type:"removed",mutation:t})}canRun(t){var r;const n=(r=E(this,an).get(Od(t)))==null?void 0:r.find(i=>i.state.status==="pending");return!n||n===t}runNext(t){var r;const n=(r=E(this,an).get(Od(t)))==null?void 0:r.find(i=>i!==t&&i.state.isPaused);return(n==null?void 0:n.continue())??Promise.resolve()}clear(){vt.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}getAll(){return[...E(this,an).values()].flat()}find(t){const n={exact:!0,...t};return this.getAll().find(r=>Yb(n,r))}findAll(t={}){return this.getAll().filter(n=>Yb(t,n))}notify(t){vt.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return vt.batch(()=>Promise.all(t.map(n=>n.continue().catch(jn))))}},an=new WeakMap,Mc=new WeakMap,Mj);function Od(e){var t;return((t=e.options.scope)==null?void 0:t.id)??String(e.mutationId)}function Zb(e){return{onFetch:(t,n)=>{var u,h,m,p,g;const r=t.options,i=(m=(h=(u=t.fetchOptions)==null?void 0:u.meta)==null?void 0:h.fetchMore)==null?void 0:m.direction,a=((p=t.state.data)==null?void 0:p.pages)||[],o=((g=t.state.data)==null?void 0:g.pageParams)||[];let l={pages:[],pageParams:[]},c=0;const d=async()=>{let f=!1;const b=w=>{Object.defineProperty(w,"signal",{enumerable:!0,get:()=>(t.signal.aborted?f=!0:t.signal.addEventListener("abort",()=>{f=!0}),t.signal)})},v=kS(t.options,t.fetchOptions),y=async(w,j,N)=>{if(f)return Promise.reject();if(j==null&&w.pages.length)return Promise.resolve(w);const C={queryKey:t.queryKey,pageParam:j,direction:N?"backward":"forward",meta:t.options.meta};b(C);const k=await v(C),{maxPages:P}=t.options,_=N?DD:RD;return{pages:_(w.pages,k,P),pageParams:_(w.pageParams,j,P)}};if(i&&a.length){const w=i==="backward",j=w?WD:ew,N={pages:a,pageParams:o},C=j(r,N);l=await y(N,C,w)}else{const w=e??a.length;do{const j=c===0?o[0]??r.initialPageParam:ew(r,l);if(c>0&&j==null)break;l=await y(l,j),c++}while(c<w)}return l};t.options.persister?t.fetchFn=()=>{var f,b;return(b=(f=t.options).persister)==null?void 0:b.call(f,d,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=d}}}function ew(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function WD(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var Xe,kr,Sr,co,uo,Cr,ho,mo,Lj,HD=(Lj=class{constructor(e={}){ne(this,Xe);ne(this,kr);ne(this,Sr);ne(this,co);ne(this,uo);ne(this,Cr);ne(this,ho);ne(this,mo);Q(this,Xe,e.queryCache||new BD),Q(this,kr,e.mutationCache||new VD),Q(this,Sr,e.defaultOptions||{}),Q(this,co,new Map),Q(this,uo,new Map),Q(this,Cr,0)}mount(){fd(this,Cr)._++,E(this,Cr)===1&&(Q(this,ho,H0.subscribe(async e=>{e&&(await this.resumePausedMutations(),E(this,Xe).onFocus())})),Q(this,mo,oh.subscribe(async e=>{e&&(await this.resumePausedMutations(),E(this,Xe).onOnline())})))}unmount(){var e,t;fd(this,Cr)._--,E(this,Cr)===0&&((e=E(this,ho))==null||e.call(this),Q(this,ho,void 0),(t=E(this,mo))==null||t.call(this),Q(this,mo,void 0))}isFetching(e){return E(this,Xe).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return E(this,kr).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=E(this,Xe).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.getQueryData(e.queryKey);if(t===void 0)return this.fetchQuery(e);{const n=this.defaultQueryOptions(e),r=E(this,Xe).build(this,n);return e.revalidateIfStale&&r.isStaleByTime(Xa(n.staleTime,r))&&this.prefetchQuery(n),Promise.resolve(t)}}getQueriesData(e){return E(this,Xe).findAll(e).map(({queryKey:t,state:n})=>{const r=n.data;return[t,r]})}setQueryData(e,t,n){const r=this.defaultQueryOptions({queryKey:e}),i=E(this,Xe).get(r.queryHash),a=i==null?void 0:i.state.data,o=_D(t,a);if(o!==void 0)return E(this,Xe).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return vt.batch(()=>E(this,Xe).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=E(this,Xe).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=E(this,Xe);vt.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=E(this,Xe),r={type:"active",...e};return vt.batch(()=>(n.findAll(e).forEach(i=>{i.reset()}),this.refetchQueries(r,t)))}cancelQueries(e={},t={}){const n={revert:!0,...t},r=vt.batch(()=>E(this,Xe).findAll(e).map(i=>i.cancel(n)));return Promise.all(r).then(jn).catch(jn)}invalidateQueries(e={},t={}){return vt.batch(()=>{if(E(this,Xe).findAll(e).forEach(r=>{r.invalidate()}),e.refetchType==="none")return Promise.resolve();const n={...e,type:e.refetchType??e.type??"active"};return this.refetchQueries(n,t)})}refetchQueries(e={},t){const n={...t,cancelRefetch:(t==null?void 0:t.cancelRefetch)??!0},r=vt.batch(()=>E(this,Xe).findAll(e).filter(i=>!i.isDisabled()).map(i=>{let a=i.fetch(void 0,n);return n.throwOnError||(a=a.catch(jn)),i.state.fetchStatus==="paused"?Promise.resolve():a}));return Promise.all(r).then(jn)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=E(this,Xe).build(this,t);return n.isStaleByTime(Xa(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(jn).catch(jn)}fetchInfiniteQuery(e){return e.behavior=Zb(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(jn).catch(jn)}ensureInfiniteQueryData(e){return e.behavior=Zb(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return oh.isOnline()?E(this,kr).resumePausedMutations():Promise.resolve()}getQueryCache(){return E(this,Xe)}getMutationCache(){return E(this,kr)}getDefaultOptions(){return E(this,Sr)}setDefaultOptions(e){Q(this,Sr,e)}setQueryDefaults(e,t){E(this,co).set(yc(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...E(this,co).values()];let n={};return t.forEach(r=>{bc(e,r.queryKey)&&(n={...n,...r.defaultOptions})}),n}setMutationDefaults(e,t){E(this,uo).set(yc(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...E(this,uo).values()];let n={};return t.forEach(r=>{bc(e,r.mutationKey)&&(n={...n,...r.defaultOptions})}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...E(this,Sr).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=V0(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.enabled!==!0&&t.queryFn===W0&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...E(this,Sr).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){E(this,Xe).clear(),E(this,kr).clear()}},Xe=new WeakMap,kr=new WeakMap,Sr=new WeakMap,co=new WeakMap,uo=new WeakMap,Cr=new WeakMap,ho=new WeakMap,mo=new WeakMap,Lj),Wt,ge,Lc,Rt,Mi,po,Pr,fs,Ic,fo,xo,Li,Ii,Er,go,Ce,Cl,Nx,kx,Sx,Cx,Px,Ex,Tx,_S,Ij,GD=(Ij=class extends Yc{constructor(t,n){super();ne(this,Ce);ne(this,Wt);ne(this,ge);ne(this,Lc);ne(this,Rt);ne(this,Mi);ne(this,po);ne(this,Pr);ne(this,fs);ne(this,Ic);ne(this,fo);ne(this,xo);ne(this,Li);ne(this,Ii);ne(this,Er);ne(this,go,new Set);this.options=n,Q(this,Wt,t),Q(this,fs,null),Q(this,Pr,jx()),this.options.experimental_prefetchInRender||E(this,Pr).reject(new Error("experimental_prefetchInRender feature flag is not enabled")),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(E(this,ge).addObserver(this),tw(E(this,ge),this.options)?xe(this,Ce,Cl).call(this):this.updateResult(),xe(this,Ce,Cx).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return _x(E(this,ge),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return _x(E(this,ge),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,xe(this,Ce,Px).call(this),xe(this,Ce,Ex).call(this),E(this,ge).removeObserver(this)}setOptions(t,n){const r=this.options,i=E(this,ge);if(this.options=E(this,Wt).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof Kn(this.options.enabled,E(this,ge))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");xe(this,Ce,Tx).call(this),E(this,ge).setOptions(this.options),r._defaulted&&!yx(this.options,r)&&E(this,Wt).getQueryCache().notify({type:"observerOptionsUpdated",query:E(this,ge),observer:this});const a=this.hasListeners();a&&nw(E(this,ge),i,this.options,r)&&xe(this,Ce,Cl).call(this),this.updateResult(n),a&&(E(this,ge)!==i||Kn(this.options.enabled,E(this,ge))!==Kn(r.enabled,E(this,ge))||Xa(this.options.staleTime,E(this,ge))!==Xa(r.staleTime,E(this,ge)))&&xe(this,Ce,Nx).call(this);const o=xe(this,Ce,kx).call(this);a&&(E(this,ge)!==i||Kn(this.options.enabled,E(this,ge))!==Kn(r.enabled,E(this,ge))||o!==E(this,Er))&&xe(this,Ce,Sx).call(this,o)}getOptimisticResult(t){const n=E(this,Wt).getQueryCache().build(E(this,Wt),t),r=this.createResult(n,t);return KD(this,r)&&(Q(this,Rt,r),Q(this,po,this.options),Q(this,Mi,E(this,ge).state)),r}getCurrentResult(){return E(this,Rt)}trackResult(t,n){const r={};return Object.keys(t).forEach(i=>{Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(i),n==null||n(i),t[i])})}),r}trackProp(t){E(this,go).add(t)}getCurrentQuery(){return E(this,ge)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=E(this,Wt).defaultQueryOptions(t),r=E(this,Wt).getQueryCache().build(E(this,Wt),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return xe(this,Ce,Cl).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),E(this,Rt)))}createResult(t,n){var P;const r=E(this,ge),i=this.options,a=E(this,Rt),o=E(this,Mi),l=E(this,po),d=t!==r?t.state:E(this,Lc),{state:u}=t;let h={...u},m=!1,p;if(n._optimisticResults){const _=this.hasListeners(),T=!_&&tw(t,n),R=_&&nw(t,r,n,i);(T||R)&&(h={...h,...TS(u.data,t.options)}),n._optimisticResults==="isRestoring"&&(h.fetchStatus="idle")}let{error:g,errorUpdatedAt:f,status:b}=h;if(n.select&&h.data!==void 0)if(a&&h.data===(o==null?void 0:o.data)&&n.select===E(this,Ic))p=E(this,fo);else try{Q(this,Ic,n.select),p=n.select(h.data),p=wx(a==null?void 0:a.data,p,n),Q(this,fo,p),Q(this,fs,null)}catch(_){Q(this,fs,_)}else p=h.data;if(n.placeholderData!==void 0&&p===void 0&&b==="pending"){let _;if(a!=null&&a.isPlaceholderData&&n.placeholderData===(l==null?void 0:l.placeholderData))_=a.data;else if(_=typeof n.placeholderData=="function"?n.placeholderData((P=E(this,xo))==null?void 0:P.state.data,E(this,xo)):n.placeholderData,n.select&&_!==void 0)try{_=n.select(_),Q(this,fs,null)}catch(T){Q(this,fs,T)}_!==void 0&&(b="success",p=wx(a==null?void 0:a.data,_,n),m=!0)}E(this,fs)&&(g=E(this,fs),p=E(this,fo),f=Date.now(),b="error");const v=h.fetchStatus==="fetching",y=b==="pending",w=b==="error",j=y&&v,N=p!==void 0,k={status:b,fetchStatus:h.fetchStatus,isPending:y,isSuccess:b==="success",isError:w,isInitialLoading:j,isLoading:j,data:p,dataUpdatedAt:h.dataUpdatedAt,error:g,errorUpdatedAt:f,failureCount:h.fetchFailureCount,failureReason:h.fetchFailureReason,errorUpdateCount:h.errorUpdateCount,isFetched:h.dataUpdateCount>0||h.errorUpdateCount>0,isFetchedAfterMount:h.dataUpdateCount>d.dataUpdateCount||h.errorUpdateCount>d.errorUpdateCount,isFetching:v,isRefetching:v&&!y,isLoadingError:w&&!N,isPaused:h.fetchStatus==="paused",isPlaceholderData:m,isRefetchError:w&&N,isStale:G0(t,n),refetch:this.refetch,promise:E(this,Pr)};if(this.options.experimental_prefetchInRender){const _=L=>{k.status==="error"?L.reject(k.error):k.data!==void 0&&L.resolve(k.data)},T=()=>{const L=Q(this,Pr,k.promise=jx());_(L)},R=E(this,Pr);switch(R.status){case"pending":t.queryHash===r.queryHash&&_(R);break;case"fulfilled":(k.status==="error"||k.data!==R.value)&&T();break;case"rejected":(k.status!=="error"||k.error!==R.reason)&&T();break}}return k}updateResult(t){const n=E(this,Rt),r=this.createResult(E(this,ge),this.options);if(Q(this,Mi,E(this,ge).state),Q(this,po,this.options),E(this,Mi).data!==void 0&&Q(this,xo,E(this,ge)),yx(r,n))return;Q(this,Rt,r);const i={},a=()=>{if(!n)return!0;const{notifyOnChangeProps:o}=this.options,l=typeof o=="function"?o():o;if(l==="all"||!l&&!E(this,go).size)return!0;const c=new Set(l??E(this,go));return this.options.throwOnError&&c.add("error"),Object.keys(E(this,Rt)).some(d=>{const u=d;return E(this,Rt)[u]!==n[u]&&c.has(u)})};(t==null?void 0:t.listeners)!==!1&&a()&&(i.listeners=!0),xe(this,Ce,_S).call(this,{...i,...t})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&xe(this,Ce,Cx).call(this)}},Wt=new WeakMap,ge=new WeakMap,Lc=new WeakMap,Rt=new WeakMap,Mi=new WeakMap,po=new WeakMap,Pr=new WeakMap,fs=new WeakMap,Ic=new WeakMap,fo=new WeakMap,xo=new WeakMap,Li=new WeakMap,Ii=new WeakMap,Er=new WeakMap,go=new WeakMap,Ce=new WeakSet,Cl=function(t){xe(this,Ce,Tx).call(this);let n=E(this,ge).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(jn)),n},Nx=function(){xe(this,Ce,Px).call(this);const t=Xa(this.options.staleTime,E(this,ge));if(Ji||E(this,Rt).isStale||!vx(t))return;const r=jS(E(this,Rt).dataUpdatedAt,t)+1;Q(this,Li,setTimeout(()=>{E(this,Rt).isStale||this.updateResult()},r))},kx=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(E(this,ge)):this.options.refetchInterval)??!1},Sx=function(t){xe(this,Ce,Ex).call(this),Q(this,Er,t),!(Ji||Kn(this.options.enabled,E(this,ge))===!1||!vx(E(this,Er))||E(this,Er)===0)&&Q(this,Ii,setInterval(()=>
681{(this.options.refetchIntervalInBackground||H0.isFocused())&&xe(this,Ce,Cl).call(this)},E(this,Er)))},Cx=function(){xe(this,Ce,Nx).call(this),xe(this,Ce,Sx).call(this,xe(this,Ce,kx).call(this))},Px=function(){E(this,Li)&&(clearTimeout(E(this,Li)),Q(this,Li,void 0))},Ex=function(){E(this,Ii)&&(clearInterval(E(this,Ii)),Q(this,Ii,void 0))},Tx=function(){const t=E(this,Wt).getQueryCache().build(E(this,Wt),this.options);if(t===E(this,ge))return;const n=E(this,ge);Q(this,ge,t),Q(this,Lc,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},_S=function(t){vt.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(E(this,Rt))}),E(this,Wt).getQueryCache().notify({query:E(this,ge),type:"observerResultsUpdated"})})},Ij);function qD(e,t){return Kn(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function tw(e,t){return qD(e,t)||e.state.data!==void 0&&_x(e,t,t.refetchOnMount)}function _x(e,t,n){if(Kn(t.enabled,e)!==!1){const r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&G0(e,t)}return!1}function nw(e,t,n,r){return(e!==t||Kn(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&G0(e,n)}function G0(e,t){return Kn(t.enabled,e)!==!1&&e.isStaleByTime(Xa(t.staleTime,e))}function KD(e,t){return!yx(e.getCurrentResult(),t)}var AS=x.createContext(void 0),QD=e=>{const t=x.useContext(AS);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},YD=({client:e,children:t})=>(x.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),s.jsx(AS.Provider,{value:e,children:t})),RS=x.createContext(!1),XD=()=>x.useContext(RS);RS.Provider;function JD(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var ZD=x.createContext(JD()),eM=()=>x.useContext(ZD);function tM(e,t){return typeof e=="function"?e(...t):!!e}function nM(){}var sM=(e,t)=>{(e.suspense||e.throwOnError)&&(t.isReset()||(e.retryOnMount=!1))},rM=e=>{x.useEffect(()=>{e.clearReset()},[e])},iM=({result:e,errorResetBoundary:t,throwOnError:n,query:r})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&tM(n,[e.error,r]),aM=e=>{e.suspense&&(e.staleTime===void 0&&(e.staleTime=1e3),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3)))},oM=(e,t)=>e.isLoading&&e.isFetching&&!t,lM=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,sw=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function cM(e,t,n){var u,h,m,p,g;const r=QD(),i=XD(),a=eM(),o=r.defaultQueryOptions(e);(h=(u=r.getDefaultOptions().queries)==null?void 0:u._experimental_beforeQuery)==null||h.call(u,o),o._optimisticResults=i?"isRestoring":"optimistic",aM(o),sM(o,a),rM(a);const l=!r.getQueryCache().get(o.queryHash),[c]=x.useState(()=>new t(r,o)),d=c.getOptimisticResult(o);if(x.useSyncExternalStore(x.useCallback(f=>{const b=i?()=>{}:c.subscribe(vt.batchCalls(f));return c.updateResult(),b},[c,i]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),x.useEffect(()=>{c.setOptions(o,{listeners:!1})},[o,c]),lM(o,d))throw sw(o,c,a);if(iM({result:d,errorResetBoundary:a,throwOnError:o.throwOnError,query:r.getQueryCache().get(o.queryHash)}))throw d.error;if((p=(m=r.getDefaultOptions().queries)==null?void 0:m._experimental_afterQuery)==null||p.call(m,o,d),o.experimental_prefetchInRender&&!Ji&&oM(d,i)){const f=l?sw(o,c,a):(g=r.getQueryCache().get(o.queryHash))==null?void 0:g.promise;f==null||f.catch(nM).finally(()=>{c.updateResult()})}return o.notifyOnChangeProps?d:c.trackResult(d)}function q0(e,t){return cM(e,GD)}/** 682 * @remix-run/router v1.20.0 683 * 684 * Copyright (c) Remix Software Inc. 685 * 686 * This source code is licensed under the MIT license found in the 687 * LICENSE.md file in the root directory of this source tree. 688 * 689 * @license MIT 690 */function wc(){return wc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},wc.apply(this,arguments)}var Rr;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Rr||(Rr={}));const rw="popstate";function dM(e){e===void 0&&(e={});function t(r,i){let{pathname:a,search:o,hash:l}=r.location;return Ax("",{pathname:a,search:o,hash:l},i.state&&i.state.usr||null,i.state&&i.state.key||"default")}function n(r,i){return typeof i=="string"?i:lh(i)}return hM(t,n,null,e)}function st(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function DS(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function uM(){return Math.random().toString(36).substr(2,8)}function iw(e,t){return{usr:e.state,key:e.key,idx:t}}function Ax(e,t,n,r){return n===void 0&&(n=null),wc({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Ho(t):t,{state:n,key:t&&t.key||r||uM()})}function lh(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Ho(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function hM(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,l=Rr.Pop,c=null,d=u();d==null&&(d=0,o.replaceState(wc({},o.state,{idx:d}),""));function u(){return(o.state||{idx:null}).idx}function h(){l=Rr.Pop;let b=u(),v=b==null?null:b-d;d=b,c&&c({action:l,location:f.location,delta:v})}function m(b,v){l=Rr.Push;let y=Ax(f.location,b,v);d=u()+1;let w=iw(y,d),j=f.createHref(y);try{o.pushState(w,"",j)}catch(N){if(N instanceof DOMException&&N.name==="DataCloneError")throw N;i.location.assign(j)}a&&c&&c({action:l,location:f.location,delta:1})}function p(b,v){l=Rr.Replace;let y=Ax(f.location,b,v);d=u();let w=iw(y,d),j=f.createHref(y);o.replaceState(w,"",j),a&&c&&c({action:l,location:f.location,delta:0})}function g(b){let v=i.location.origin!=="null"?i.location.origin:i.location.href,y=typeof b=="string"?b:lh(b);return y=y.replace(/ $/,"%20"),st(v,"No window.location.(origin|href) available to create URL for href: "+y),new URL(y,v)}let f={get action(){return l},get location(){return e(i,o)},listen(b){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(rw,h),c=b,()=>{i.removeEventListener(rw,h),c=null}},createHref(b){return t(i,b)},createURL:g,encodeLocation(b){let v=g(b);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:m,replace:p,go(b){return o.go(b)}};return f}var aw;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(aw||(aw={}));function mM(e,t,n){return n===void 0&&(n="/"),pM(e,t,n,!1)}function pM(e,t,n,r){let i=typeof t=="string"?Ho(t):t,a=K0(i.pathname||"/",n);if(a==null)return null;let o=MS(e);fM(o);let l=null;for(let c=0;l==null&&c<o.length;++c){let d=CM(a);l=kM(o[c],d,r)}return l}function MS(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let i=(a,o,l)=>{let c={relativePath:l===void 0?a.path||"":l,caseSensitive:a.caseSensitive===!0,childrenIndex:o,route:a};c.relativePath.startsWith("/")&&(st(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not val
690id. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=Vr([r,c.relativePath]),u=n.concat(c);a.children&&a.children.length>0&&(st(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),MS(a.children,t,u,d)),!(a.path==null&&!a.index)&&t.push({path:d,score:jM(d,a.index),routesMeta:u})};return e.forEach((a,o)=>{var l;if(a.path===""||!((l=a.path)!=null&&l.includes("?")))i(a,o);else for(let c of LS(a.path))i(a,o,c)}),t}function LS(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),a=n.replace(/\?$/,"");if(r.length===0)return i?[a,""]:[a];let o=LS(r.join("/")),l=[];return l.push(...o.map(c=>c===""?a:[a,c].join("/"))),i&&l.push(...o),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function fM(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:NM(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const xM=/^:[\w-]+$/,gM=3,vM=2,yM=1,bM=10,wM=-2,ow=e=>e==="*";function jM(e,t){let n=e.split("/"),r=n.length;return n.some(ow)&&(r+=wM),t&&(r+=vM),n.filter(i=>!ow(i)).reduce((i,a)=>i+(xM.test(a)?gM:a===""?yM:bM),r)}function NM(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function kM(e,t,n){let{routesMeta:r}=e,i={},a="/",o=[];for(let l=0;l<r.length;++l){let c=r[l],d=l===r.length-1,u=a==="/"?t:t.slice(a.length)||"/",h=lw({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),m=c.route;if(!h&&d&&n&&!r[r.length-1].route.index&&(h=lw({path:c.relativePath,caseSensitive:c.caseSensitive,end:!1},u)),!h)return null;
vendor: 6,917 bytes, lines 690-699
690Object.assign(i,h.params),o.push({params:i,pathname:Vr([a,h.pathname]),pathnameBase:_M(Vr([a,h.pathnameBase])),route:m}),h.pathnameBase!=="/"&&(a=Vr([a,h.pathnameBase]))}return o}function lw(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=SM(e.path,e.caseSensitive,e.end),i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,"$1"),l=i.slice(1);return{params:r.reduce((d,u,h)=>{let{paramName:m,isOptional:p}=u;if(m==="*"){let f=l[h]||"";o=a.slice(0,a.length-f.length).replace(/(.)\/+$/,"$1")}const g=l[h];return p&&!g?d[m]=void 0:d[m]=(g||"").replace(/%2F/g,"/"),d},{}),pathname:a,pathnameBase:o,pattern:e}}function SM(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),DS(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,l,c)=>(r.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function CM(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return DS(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function K0(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function PM(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?Ho(e):e;return{pathname:n?n.startsWith("/")?n:EM(n,t):t,search:AM(r),hash:RM(i)}}function EM(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function pp(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function TM(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function IS(e,t){let n=TM(e);return t?n.map((r,i)=>i===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function OS(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=Ho(e):(i=wc({},e),st(!i.pathname||!i.pathname.includes("?"),pp("?","pathname","search",i)),st(!i.pathname||!i.pathname.includes("#"),pp("#","pathname","hash",i)),st(!i.search||!i.search.includes("#"),pp("#","search","hash",i)));let a=e===""||i.pathname==="",o=a?"/":i.pathname,l;if(o==null)l=n;else{let h=t.length-1;if(!r&&o.startsWith("..")){let m=o.split("/");for(;m[0]==="..";)m.shift(),h-=1;i.pathname=m.join("/")}l=h>=0?t[h]:"/"}let c=PM(i,l),d=o&&o!=="/"&&o.endsWith("/"),u=(a||o===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const Vr=e=>e.join("/").replace(/\/\/+/g,"/"),_M=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),AM=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,RM=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function DM(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const FS=["post","put","patch","delete"];new Set(FS);const MM=["get",...FS];new Set(MM);/** 691 * React Router v6.27.0 692 * 693 * Copyright (c) Remix Software Inc. 694 * 695 * This source code is licensed under the MIT license found in the 696 * LICENSE.md file in the root directory of this source tree. 697 * 698 * @license MIT 699 */function jc(){return jc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jc.apply(this,arguments)}const Q0=x.createContext(null),LM=x.createContext(null),ua=x.createContext(null),im=x.createContext(null),ai=x.createContext({outlet:null,matches:[],isDataRoute:!1}),$S=x.createContext(null);function IM(e,t){let{relative:n}=t===void 0?{}:t;Xc()||st(!1);let{basename:r,navigator:i}=x.useContext(ua),{hash:a,pathname:o,search:l}=US(e,{relative:n}),c=o;return r!=="/"&&(c=o==="/"?r:Vr([r,o])),i.createHref({pathname:c,search:l,hash:a})}function Xc(){return x.useContext(im)!=null}function oi(){return Xc()||st(!1),x.useContext(im).location}function BS(e){x.useContext(ua).static||x.useLayoutEffect(e)}function zt(){let{isDataRoute:e}=x.useContext(ai);return e?QM():OM()}function OM(){Xc()||st(!1);let e=x.useContext(Q0),{basename:t,future:n,navigator:r}=x.useContext(ua),{matches:i}=x.useContext(ai),{pathname:a}=oi(),o=JSON.stringify(IS(i,n.v7_relativeSplatPath)),l=x.useRef(!1);return BS(()=>{l.current=!0}),x.useCallback(function(d,u){if(u===void 0&&(u={}),!l.current)return;if(typeof d=="number"){r.go(d);return}let h=OS(d,JSON.parse(o),a,u.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:Vr([t,h.pathname])),(u.replace?r.replace:r.push)(h,u.state,u)},[t,r,o,a,e])}function zS(){let{matches:e}=x.useContext(ai),t=e[e.length-1];return t?t.params:{}}function US(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=x.useContext(ua),{matches:i}=x.useContext(ai),{pathname:a}=oi(),o=JSON.stringify(IS(i,r.v7_relativeSplatPath));return x.useMemo(()=>OS(e,JSON.parse(o),a,n==="path"),[e,o,a,n])}function FM(e,t){return $M(e,t)}function $M(e,t,n,r){Xc()||st(!1);let{navigator:i}=x.useContext(ua),{matches:a}=x.useContext(ai),o=a[a.length-1],l=o?o.params:{};o&&o.pathname;let c=o?o.pathnameBase:"/";o&&o.route;let d=oi(),u;if(t){var h;let b=typeof t=="string"?Ho(t):t;c==="/"||(h=b.pathname)!=null&&h.startsWith(c)||st(!1),u=b}else u=d;let m=u.pathname||"/",p=m;if(c!=="/"){let b=c.replace(/^\//,"").split("/");p="/"+m.replace(/^\//,"").split("/").slice(b.length).join("/")}let g=mM(e,{pathname:p}),f=WM(g&&g.map(b=>Object.assign({},b,{params:Object.assign({},l,b.params),pathname:Vr([c,i.encodeLocation?i.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?c:Vr([c,i.encodeLocation?i.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),a,n,r);return t&&f?x.createElement(im.Provider,{value:{location:jc({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:Rr.Pop}},f):f}function BM(){let e=KM(),t=DM(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return x.createElement(x.Fragment,null,x.createElement("h2",null,"Unexpected Application
699Error!"),x.createElement("h3",{style:{fontStyle:"italic"}},t),n?x.createElement("pre",{style:i},n):null,null)}const zM=x.createElement(BM,null);class UM extends x.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?x.createElement(ai.Provider,{value:this.props.routeContext},x.createElement($S.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function VM(e){let{routeContext:t,match:n,children:r}=e,i=x.useContext(Q0);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),x.createElement(ai.Provider,{value:t},r)}function WM(e,t,n,r){var i;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var a;if(!n)return null;if(n.errors)e=n.matches;else if((a=r)!=null&&a.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let o=e,l=(i=n)==null?void 0:i.errors;if(l!=null){let u=o.findIndex(h=>h.route.id&&(l==null?void 0:l[h.route.id])!==void 0);u>=0||st(!1),o=o.slice(0,Math.min(o.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<o.length;u++){let h=o[u];if((h.route.HydrateFallback||h.route.hydrateFallbackElement)&&(d=u),h.route.id){let{loaderData:m,errors:p}=n,g=h.route.loader&&m[h.route.id]===void 0&&(!p||p[h.route.id]===void 0);if(h.route.lazy||g){c=!0,d>=0?o=o.slice(0,d+1):o=[o[0]];break}}}return o.reduceRight((u,h,m)=>{let p,g=!1,f=null,b=null;n&&(p=l&&h.route.id?l[h.route.id]:void 0,f=h.route.errorElement||zM,c&&(d<0&&m===0?(g=!0,b=null):d===m&&(g=!0,b=h.route.hydrateFallbackElement||null)));let v=t.concat(o.slice(0,m+1)),y=()=>{let w;return p?w=f:g?w=b:h.route.Component?w=x.createElement(h.route.Component,null):h.route.element?w=h.route.element:w=u,x.createElement(VM,{match:h,routeContext:{outlet:u,matches:v,isDataRoute:n!=null},children:w})};return n&&(h.route.ErrorBoundary||h.route.errorElement||m===0)?x.createElement(UM,{location:n.location,revalidation:n.revalidation,component:f,error:p,children:y(),routeC
vendor: 4,332 bytes, lines 699-708
699ontext:{outlet:null,matches:v,isDataRoute:!0}}):y()},null)}var VS=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(VS||{}),ch=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(ch||{});function HM(e){let t=x.useContext(Q0);return t||st(!1),t}function GM(e){let t=x.useContext(LM);return t||st(!1),t}function qM(e){let t=x.useContext(ai);return t||st(!1),t}function WS(e){let t=qM(),n=t.matches[t.matches.length-1];return n.route.id||st(!1),n.route.id}function KM(){var e;let t=x.useContext($S),n=GM(ch.UseRouteError),r=WS(ch.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function QM(){let{router:e}=HM(VS.UseNavigateStable),t=WS(ch.UseNavigateStable),n=x.useRef(!1);return BS(()=>{n.current=!0}),x.useCallback(function(i,a){a===void 0&&(a={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,jc({fromRouteId:t},a)))},[e,t])}function fe(e){st(!1)}function YM(e){let{basename:t="/",children:n=null,location:r,navigationType:i=Rr.Pop,navigator:a,static:o=!1,future:l}=e;Xc()&&st(!1);let c=t.replace(/^\/*/,"/"),d=x.useMemo(()=>({basename:c,navigator:a,static:o,future:jc({v7_relativeSplatPath:!1},l)}),[c,l,a,o]);typeof r=="string"&&(r=Ho(r));let{pathname:u="/",search:h="",hash:m="",state:p=null,key:g="default"}=r,f=x.useMemo(()=>{let b=K0(u,c);return b==null?null:{location:{pathname:b,search:h,hash:m,state:p,key:g},navigationType:i}},[c,u,h,m,p,g,i]);return f==null?null:x.createElement(ua.Provider,{value:d},x.createElement(im.Provider,{children:n,value:f}))}function XM(e){let{children:t,location:n}=e;return FM(Rx(t),n)}new Promise(()=>{});function Rx(e,t){t===void 0&&(t=[]);let n=[];return x.Children.forEach(e,(r,i)=>{if(!x.isValidElement(r))return;let a=[...t,i];if(r.type===x.Fragment){n.push.apply(n,Rx(r.props.children,a));return}r.type!==fe&&st(!1),!r.props.index||!r.props.children||st(!1);let o={id:r.props.id||a.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(o.children=Rx(r.props.children,a)),n.push(o)}),n}/** 700 * React Router DOM v6.27.0 701 * 702 * Copyright (c) Remix Software Inc. 703 * 704 * This source code is licensed under the MIT license found in the 705 * LICENSE.md file in the root directory of this source tree. 706 * 707 * @license MIT 708 */function Dx(){return Dx=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Dx.apply(this,arguments)}function JM(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function ZM(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function e8(e,t){return e.button===0&&(!t||t==="_self")&&!ZM(e)}const t8=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],n8="6";try{window.__reactRouterVersion=n8}catch{}const s8="startTransition",cw=qj[s8];function r8(e){let{basename:t,children:n,future:r,window:i}=e,a=x.useRef();a.current==null&&(a.current=dM({window:i,v5Compat:!0}));let o=a.current,[l,c]=x.useState({action:o.action,location:o.location}),{v7_startTransition:d}=r||{},u=x.useCallback(h=>{d&&cw?cw(()=>c(h)):c(h)},[c,d]);return x.useLayoutEffect(()=>o.listen(u),[o,u]),x.createElement(YM,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:o,future:r})}const i8=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",a8=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ve=x.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:a,replace:o,state:l,target:c,to:d,preventScrollReset:u,viewTransition:h}
708=t,m=JM(t,t8),{basename:p}=x.useContext(ua),g,f=!1;if(typeof d=="string"&&a8.test(d)&&(g=d,i8))try{let w=new URL(window.location.href),j=d.startsWith("//")?new URL(w.protocol+d):new URL(d),N=K0(j.pathname,p);j.origin===w.origin&&N!=null?d=N+j.search+j.hash:f=!0}catch{}let b=IM(d,{relative:i}),v=o8(d,{replace:o,state:l,target:c,preventScrollReset:u,relative:i,viewTransition:h});function y(w){r&&r(w),w.defaultPrevented||v(w)}return x.createElement("a",Dx({},m,{href:g||b,onClick:f||a?r:y,ref:n,target:c}))});var dw;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(dw||(dw={}));var uw;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(uw||(uw={}));function o8(e,t){let{target:n,replace:r,state:i,preventScrollReset:a,relative:o,viewTransition:l}=t===void 0?{}:t,c=zt(),d=oi(),u=US(e,{relative:o});return x.useCallback(h=>{if(e8(h,n)){h.preventDefault();let m=r!==void 0?r:lh(d)===lh(u);c(e,{replace:m,state:i,preventScrollReset:a,relative:o,viewTransition:l})}},[d,c,u,r,i,n,e,a,o,l])}var l8=typeof Element<"u",c8=typeof Map=="function",d8=typeof Set=="function",u8=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function xu(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,i;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!xu(e[r],t[r]))return!1;return!0}var a;if(c8&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(a=e.entries();!(r=a.next()).done;)if(!t.has(r.value[0]))return!1;for(a=e.entries();!(r=a.next()).done;)if(!xu(r.value[1],t.get(r.value[0])))return!1;return!0}if(d8&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(a=e.entries();!(r=a.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(u8&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;if(l8&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((i[r]==="_owner"||i[r]==="__v"||i[r]==="__o")&&e.$$typeof)&&!xu(e[i[r]],t[i[r]]))return!1;return!0}return e!==e&&t!==t}var h8=function(t,n){try{return xu(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};const m8=Oc(h8);var p8=function(e,t,n,r,i,a,o,l){if(!e){var c;if(t===void 0)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[n,r,i,a,o,l],u=0;c=new Error(t.replace(/%s/g,function(){return d[u++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}},f8=p8;const hw=Oc(f8);var x8=function(t,n,r,i){var a=r?r.call(i,t,n):void 0;if(a!==void 0)return!!a;if(t===n)return!0;if(typeof t!="object"||!t||typeof n!="object"||!n)return!1;var o=Object.keys(t),l=Object.keys(n);if(o.length!==l.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(n),d=0;d<o.length;d++){var u=o[d];if(!c(u))return!1;var h=t[u],m=n[u];if(a=r?r.call(i,h,m,u):void 0,a===!1||a===void 0&&h!==m)return!1}return!0};const g8=Oc(x8);var HS=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(HS||{}),fp={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]}
708,meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},mw=Object.values(HS),Y0={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},v8=Object.entries(Y0).reduce((e,[t,n])=>(e[n]=t,e),{}),Qn="data-rh",Ja={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},Za=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},y8=e=>{let t=Za(e,"title");const n=Za(e,Ja.TITLE_TEMPLATE);if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,()=>t);const r=Za(e,Ja.DEFAULT_TITLE);return t||r||void 0},b8=e=>Za(e,Ja.ON_CHANGE_CLIENT_STATE)||(()=>{}),xp=(e,t)=>t.filter(n=>typeof n[e]<"u").map(n=>n[e]).reduce((n,r)=>({...n,...r}),{}),w8=(e,t)=>t.filter(n=>typeof n.base<"u").map(n=>n.base).reverse().reduce((n,r)=>{if(!n.length){const i=Object.keys(r);for(let a=0;a<i.length;a+=1){const l=i[a].toLowerCase();if(e.indexOf(l)!==-1&&r[l])return n.concat(r)}}return n},[]),j8=e=>console&&typeof console.warn=="function"&&console.warn(e),fl=(e,t,n)=>{const r={};return n.filter(i=>Array.isArray(i[e])?!0:(typeof i[e]<"u"&&j8(`Helmet: ${e} should be of type "Array". Instead found type "${typeof i[e]}"`),!1)).map(i=>i[e]).reverse().reduce((i,a)=>{const o={};a.filter(c=>{let d;const u=Object.keys(c);for(let m=0;m<u.length;m+=1){const p=u[m],g=p.toLowerCase();t.indexOf(g)!==-1&&!(d==="rel"&&c[d].toLowerCase()==="canonical")&&!(g==="rel"&&c[g].toLowerCase()==="stylesheet")&&(d=g),t.indexOf(p)!==-1&&(p==="innerHTML"||p==="cssText"||p==="itemprop")&&(d=p)}if(!d||!c[d])return!1;const h=c[d].toLowerCase();return r[d]||(r[d]={}),o[d]||(o[d]={}),r[d][h]?!1:(o[d][h]=!0,!0)}).reverse().forEach(c=>i.push(c));const l=Object.keys(o);for(let c=0;c<l.length;c+=1){const d=l[c],u={...r[d],...o[d]};r[d]=u}return i},[]).reverse()},N8=(e,t)=>{if(Array.isArray(e)&&e.length){for(let n=0;n<e.length;n+=1)if(e[n][t])return!0}return!1},k8=e=>({baseTag:w8(["href"],e),bodyAttributes:xp("bodyAttributes",e),defer:Za(e,Ja.DEFER),encode:Za(e,Ja.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:xp("htmlAttributes",e),linkTags:fl("link",["rel","href"],e),metaTags:fl("meta",["name","charset","http-equiv","property","itemprop"],e),noscriptTags:fl("noscript",["innerHTML"],e),onChangeClientState:b8(e),scriptTags:fl("script",["src","innerHTML"],e),styleTags:fl("style",["cssText"],e),title:y8(e),titleAttributes:xp("titleAttributes",e),prioritizeSeoTags:N8(e,Ja.PRIORITIZE_SEO_TAGS)}),GS=e=>Array.isArray(e)?e.join(""):e,S8=(e,t)=>{const n=Object.keys(e);for(let r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1},gp=(e,t)=>Array.isArray(e)?e.reduce((n,r)=>(S8(r,t)?n.priority.push(r):n.default.push(r),n),{priority:[],default:[]}):{default:e,priority:[]},pw=(e,t)=>({...e,[t]:void 0}),C8=["noscript","script","style"],Mx=(e,t=!0)=>t===!1?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),qS=e=>Object.keys(e).reduce((t,n)=>{const r=typeof e[n]<"u"?`${n}="${e[n]}"`:`${n}`;return t?`${t} ${r}`:r},""),P8=(e,t,n,r)=>{const i=qS(n),a=GS(t);return i?`<${e} ${Qn}="true" ${i}>${Mx(a,r)}</${e}>`:`<${e} ${Qn}="true">${Mx(a,r)}</${e}>`},E8=(e,t,n=!0)=>t.reduce((r,i)=>{const a=i,o=Object.keys(a).filter(d=>!(d==="innerHTML"||d==="cssText")).reduce((d,u)=>{const h=typeof a[u]>
708"u"?u:`${u}="${Mx(a[u],n)}"`;return d?`${d} ${h}`:h},""),l=a.innerHTML||a.cssText||"",c=C8.indexOf(e)===-1;return`${r}<${e} ${Qn}="true" ${o}${c?"/>":`>${l}</${e}>`}`},""),KS=(e,t={})=>Object.keys(e).reduce((n,r)=>{const i=Y0[r];return n[i||r]=e[r],n},t),T8=(e,t,n)=>{const r={key:t,[Qn]:!0},i=KS(n,r);return[B.createElement("title",i,t)]},gu=(e,t)=>t.map((n,r)=>{const i={key:r,[Qn]:!0};return Object.keys(n).forEach(a=>{const l=Y0[a]||a;if(l==="innerHTML"||l==="cssText"){const c=n.innerHTML||n.cssText;i.dangerouslySetInnerHTML={__html:c}}else i[l]=n[a]}),B.createElement(e,i)}),bn=(e,t,n=!0)=>{switch(e){case"title":return{toComponent:()=>T8(e,t.title,t.titleAttributes),toString:()=>P8(e,t.title,t.titleAttributes,n)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>KS(t),toString:()=>qS(t)};default:return{toComponent:()=>gu(e,t),toString:()=>E8(e,t,n)}}},_8=({metaTags:e,linkTags:t,scriptTags:n,encode:r})=>{const i=gp(e,fp.meta),a=gp(t,fp.link),o=gp(n,fp.script);return{priorityMethods:{toComponent:()=>[...gu("meta",i.priority),...gu("link",a.priority),...gu("script",o.priority)],toString:()=>`${bn("meta",i.priority,r)} ${bn("link",a.priority,r)} ${bn("script",o.priority,r)}`},metaTags:i.default,linkTags:a.default,scriptTags:o.default}},A8=e=>{const{baseTag:t,bodyAttributes:n,encode:r=!0,htmlAttributes:i,noscriptTags:a,styleTags:o,title:l="",titleAttributes:c,prioritizeSeoTags:d}=e;let{linkTags:u,metaTags:h,scriptTags:m}=e,p={toComponent:()=>{},toString:()=>""};return d&&({priorityMethods:p,linkTags:u,metaTags:h,scriptTags:m}=_8(e)),{priority:p,base:bn("base",t,r),bodyAttributes:bn("bodyAttributes",n,r),htmlAttributes:bn("htmlAttributes",i,r),link:bn("link",u,r),meta:bn("meta",h,r),noscript:bn("noscript",a,r),script:bn("script",m,r),style:bn("style",o,r),title:bn("title",{title:l,titleAttributes:c},r)}},Lx=A8,Fd=[],QS=!!(typeof window<"u"&&window.document&&window.document.createElement),Ix=class{constructor(e,t){Fs(this,"instances",[]);Fs(this,"canUseDOM",QS);Fs(this,"context");Fs(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?Fd:this.instances,add:e=>{(this.canUseDOM?Fd:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?Fd:this.instances).indexOf(e);(this.canUseDOM?Fd:this.instances).splice(t,1)}}});this.context=e,this.canUseDOM=t||!1,t||(e.helmet=Lx({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},R8={},YS=B.createContext(R8),Oi,XS=(Oi=class extends x.Component{constructor(n){super(n);Fs(this,"helmetData");this.helmetData=new Ix(this.props.context||{},Oi.canUseDOM)}render(){return B.createElement(YS.Provider,{value:this.helmetData.value},this.props.children)}},Fs(Oi,"canUseDOM",QS),Oi),xa=(e,t)=>{const n=document.head||document.querySelector("head"),r=n.querySelectorAll(`${e}[${Qn}]`),i=[].slice.call(r),a=[];let o;return t&&t.length&&t.forEach(l=>{const c=document.createElement(e);for(const d in l)if(Object.prototype.hasOwnProperty.call(l,d))if(d==="innerHTML")c.innerHTML=l.innerHTML;else if(d==="cssText")c.styleSheet?c.styleSheet.cssText=l.cssText:c.appendChild(document.createTextNode(l.cssText));else{const u=d,h=typeof l[u]>"u"?"":l[u];c.setAttribute(d,h)}c.setAttribute(Qn,"true"),i.some((d,u)=>(o=u,c.isEqualNode(d)))?i.splice(o,1):a.push(c)}
708),i.forEach(l=>{var c;return(c=l.parentNode)==null?void 0:c.removeChild(l)}),a.forEach(l=>n.appendChild(l)),{oldTags:i,newTags:a}},Ox=(e,t)=>{const n=document.getElementsByTagName(e)[0];if(!n)return;const r=n.getAttribute(Qn),i=r?r.split(","):[],a=[...i],o=Object.keys(t);for(const l of o){const c=t[l]||"";n.getAttribute(l)!==c&&n.setAttribute(l,c),i.indexOf(l)===-1&&i.push(l);const d=a.indexOf(l);d!==-1&&a.splice(d,1)}for(let l=a.length-1;l>=0;l-=1)n.removeAttribute(a[l]);i.length===a.length?n.removeAttribute(Qn):n.getAttribute(Qn)!==o.join(",")&&n.setAttribute(Qn,o.join(","))},D8=(e,t)=>{typeof e<"u"&&document.title!==e&&(document.title=GS(e)),Ox("title",t)},fw=(e,t)=>{const{baseTag:n,bodyAttributes:r,htmlAttributes:i,linkTags:a,metaTags:o,noscriptTags:l,onChangeClientState:c,scriptTags:d,styleTags:u,title:h,titleAttributes:m}=e;Ox("body",r),Ox("html",i),D8(h,m);const p={baseTag:xa("base",n),linkTags:xa("link",a),metaTags:xa("meta",o),noscriptTags:xa("noscript",l),scriptTags:xa("script",d),styleTags:xa("style",u)},g={},f={};Object.keys(p).forEach(b=>{const{newTags:v,oldTags:y}=p[b];v.length&&(g[b]=v),y.length&&(f[b]=p[b].oldTags)}),t&&t(),c(e,g,f)},xl=null,M8=e=>{xl&&cancelAnimationFrame(xl),e.defer?xl=requestAnimationFrame(()=>{fw(e,()=>{xl=null})}):(fw(e),xl=null)},L8=M8,xw=class extends x.Component{constructor(){super(...arguments);Fs(this,"rendered",!1)}shouldComponentUpdate(t){return!g8(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:n}=this.props.context;let r=null;const i=k8(t.get().map(a=>{const o={...a.props};return delete o.context,o}));XS.canUseDOM?L8(i):Lx&&(r=Lx(i)),n(r)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},lf,JS=(lf=class extends x.Component{shouldComponentUpdate(e){return!m8(pw(this.props,"helmetData"),pw(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error(`<${e.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(e,t,n,r){return{...t,[e.type]:[...t[e.type]||[],{...n,...this.mapNestedChildrenToProps(e,r)}]}}mapObjectTypeChildren(e,t,n,r){switch(e.type){case"title":return{...t,[e.type]:r,titleAttributes:{...n}};case"body":return{...t,bodyAttributes:{...n}};case"html":return{...t,htmlAttributes:{...n}};default:return{...t,[e.type]:{...n}}}}mapArrayTypeChildrenToProps(e,t){let n={...t};return Object.keys(e).forEach(r=>{n={...n,[r]:e[r]}}),n}warnOnInvalidChildren(e,t){return hw(mw.some(n=>e.type===n),typeof e.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${mw.join(", ")} are allowed. Helmet does not support rendering <${e.type}> elements. Refer to our API for more information.`),hw(!t||typeof t=="string"||Array.isArray(t)&&!t.some(n=>typeof n!="string"),`Helmet expects a string as a child of <${e.type}>. Did you forget to wrap your children in braces? ( <${e.type}>{\`\`}</${e.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(e,t){let n={};return B.Children.forEach(e,r=>{if(!r||!r.props)return;const{children:i,...a}=r.props,o=Object.keys(a).reduce((c,d)=>(c[v8[d]||d]=a[d],c),{});let{type:l}=r;
708switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(r,i),l){case"Symbol(react.fragment)":t=this.mapChildrenToProps(i,t);break;case"link":case"meta":case"noscript":case"script":case"style":n=this.flattenArrayTypeChildren(r,n,o,i);break;default:t=this.mapObjectTypeChildren(r,t,o,i);break}}),this.mapArrayTypeChildrenToProps(n,t)}render(){const{children:e,...t}=this.props;let n={...t},{helmetData:r}=t;if(e&&(n=this.mapChildrenToProps(e,n)),r&&!(r instanceof Ix)){const i=r;r=new Ix(i.context,!0),delete n.helmetData}return r?B.createElement(xw,{...n,context:r.value}):B.createElement(YS.Consumer,null,i=>B.createElement(xw,{...n,context:i}))}},Fs(lf,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),lf);const I8=({children:e})=>s.jsx(XS,{children:e}),O8=()=>{const{pathname:e}=oi();return x.useEffect(()=>{window.scrollTo(0,0)},[e]),null},F8={xs:"w-16 h-16",sm:"w-24 h-24",md:"w-48 h-48",lg:"w-64 h-64",xl:"w-96 h-96",auto:""},he=({src:e,alt:t,size:n="auto",className:r="",priority:i=!1,onClick:a})=>{const[o,l]=x.useState(!1),c=F8[n],d=i?"eager":"lazy",h=r.includes("w-")||r.includes("h-")?"":c,m=()=>{l(!0)};return s.jsx("img",{src:e,alt:t,loading:d,className:`object-contain ${h} ${r}`,onClick:a,onError:m,style:a?{cursor:"pointer"}:void 0})},$8=({onNavigate:e})=>s.jsx("div",{className:"flex items-center cursor-pointer",onClick:()=>e("/"),children:s.jsx(he,{src:"/lovable-uploads/1d72d003-ffd3-4a13-bbb2-8b183f97dae5.webp",alt:"SmartLinks Logo",className:"h-8 w-auto mr-3",priority:!0})}),B8=()=>{zt();const e=()=>{window.location.href="https://smartlinks.app/console/login"};return s.jsx("div",{className:"hidden lg:flex items-center",children:s.jsxs("button",{onClick:e,className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white border-none px-5 py-1.5 rounded font-medium transition-all duration-300 flex items-center gap-2",children:[s.jsx(Xh,{size:18}),s.jsx("span",{children:"Sign In"})]})})},z8=({onNavigate:e})=>s.jsxs("div",{className:"relative group",children:[s.jsxs("button",{className:"text-white/80 hover:text-white transition-colors duration-200 font-medium flex items-center gap-1",children:["Products",s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:rotate-180",children:s.jsx("path",{d:"m6 9 6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),s.jsx("div",{className:"absolute top-full left-0 mt-2 w-48 bg-black/90 backdrop-blur-sm border border-white/10 rounded shadow-xl opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200 z-[60]",children:s.jsxs("div",{className:"py-2",children:[s.jsx("button",{onClick:()=>e("/overview"),className:"block w-full text-left px-4 py-3 text-white/80 hover:text-white hover:bg-white/10 transition-colors duration-200",children:"Platform Overview"}),s.jsx("button",{onClick:()=>e("/food-beverages"),className:"block w-full text-left px-4 py-3 text-white/80 hover:text-white hover:bg-white/10 transition-colors duration-200",children:"Food & Beverages"}),s.jsx("button",{onClick:()=>e("/clothing-apparel"),className:"block w-full text-left px-4 py-3 text-white/80 hover:text-white hover:bg-white/10 transition-colors duration-200",children:"Clothing & Apparel"}),s.jsx("button",{onClick:()=>e("/health-beauty"),className:"block w-full text-left px-4 py-3 text-white/80 hover:text-white hover:bg-white/10 transition-colors duration-200",children:"Health & Beauty"})]})})]}),U8=[{label:"Overview",href:"https://smartlinks.app/solutions/hub"},{label:"Platform",href:"https://smartlinks.app/solutions/hub/platform"},{label:"Replace Your Stack",href:"https://smartlinks.app/solutions/hub/replace-your-stack"},{label:"Impact",href:"https://smartlinks.app/solutions/hub/impact"}],V8=({onNavigate:e})=>{const t=n=>{window.location.href=n};return s.jsxs("div",{className:"relative group",children:[s.jsxs("button",{className:"text-white/80 hover:text-white transition-colors duration-200 font-medium flex items-center gap-1",children:["SmartLinks Hub",s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:rotate-180",children:s.jsx("path",{d:"m6 9 6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),s.jsx("div",{className:"absolute top-full left-0 mt-2 w-52 bg-black/90 backdrop-blur-sm border border-white/10 rounded shadow-xl opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200 z-[60]",children:s.jsx("div",{className:"py-2",children:U8.map(n=>s.jsx("button",{onClick:()=>t(n.href),className:"block w-full text-left px-4 py-3 text-white/80 hover:text-white hover:bg-white/10 transition-colors duration-200",children:n.label},n.href))})})]})},Dr="https://smartlinks.app/solutions",W8=[{icon:Tt,label:"EU DPP Guides",desc:"8 regulation & compliance",href:`${Dr}/guides?category=regulation`},{icon:da,label:"Industry Guides",desc:"5 sector-specific guides",href:`${Dr}/guides?category=industry`},{icon:ke,label:"Technology & Tools",desc:"4 tech & implementation",href:`${Dr}/guides?category=technology`}],H8=[{icon:Co,label:"Case Studies",href:`${Dr}/case-studies`},{icon:Ps,label:"Examples",href:`${Dr}/examples`},{icon:_k,label:"Digital Link",href:`${Dr}/digital-link`},{icon:__,label:"Print Partners",href:`${Dr}/print-partners`}],G8=()=>{const e=t=>{window.location.href=t};return s.jsxs("div",{className:"relative group",children:[s.jsxs("button",{className:"text-white/80 hover:text-white transition-colors duration-200 font-medium flex items-center gap-1",children:["Resources",s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:rotate-180",children:s.jsx("path",{d:"m6 9 6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),s.jsxs("div",{className:"absolute top-full left-0 mt-2 w-[400px] bg-black/90 backdrop-blur-sm border border-white/10 rounded shadow-xl opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200 z-[60]",children:[s.jsxs("div",{className:"p-4 pb-2",children:[s.jsx("div",{className:"text-xs font-semibold uppercase tracking-wider text-purple-400 mb-3",children:"Guides"}),s.jsx("div",{className:"space-y-1",children:W8.map(t=>s.jsxs("button",{onClick:()=>e(t.href),className:"flex items-center gap-3 w-full text-left px-3 py-2.5 rounded hover:bg-white/10 transition-colors duration-200 group/item",children:[s.jsx(t.icon,{size:18,className:"text-white/60 group-hover/item:text-white shrink-0"}),s.jsx("span",{className:"text-white/90 group-hover/item:text-white font-medium text-sm",children:t.label}),s.jsx("span",{className:"ml-auto text-white/40 text-xs",children:t.desc})]},t.href))})]}),s.jsx("div",{className:"border-t border-white/10 mx-4"}),s.jsxs("div",{className:"p-4 pt-3",children:[s.jsx("div",{className:"text-xs font-semibold uppercase tracking-wider text-purple-400 mb-3",children:"More Resources"}),s.jsx("div",{className:"grid grid-cols-2 gap-1",children:H8.map(t=>s.jsxs("button",{onClick:()=>e(t.href),className:"flex items-center gap-2 px-3 py-2.5 rounded hover:bg-white/10 transition-colors duration-200 group/item",children:[s.jsx(t.icon,{size:16,className:"text-white/60 group-hover/item:text-white shrink-0"}),s.jsx("span",{className:"text-white/80 group-hover/item:text-white text-sm",children:t.label})]},t.href))})]}),s.jsx("div",{className:"border-t border-white/10 mx-4"}),s.jsxs("div",{className:"px-4 py-3 flex items-center justify-between",children:[s.jsx("span",{className:"text-white/40 text-xs",children:"Browse all resources"}),s.jsx("button",{onClick:()=>e(`${Dr}/guides`),className:"text-purple-400 hover:text-purple-300 text-xs font-medium transition-colors",children:"All Resources â"})]})]})]})},q8=({onNavigate:e})=>{const t=()=>{window.location.href="https://smartlinks.app/solutions/"};return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"hidden lg:flex items-center space-x-6",children:[s.jsx("button",{onClick:()=>e("/"),className:"text-white/80 hover:text-white transition-colors duration-200 font-medium",children:"Home"}),s.jsx(z8,{onNavigate:e}),s.jsx("button",{onClick:t,className:"text-white/80 hover:text-white transition-colors duration-200 font-medium",children:"Enterprise"}),s.jsx(V8,{}),s.jsx(G8,{}),s.jsx("button",{onClick:()=>e("/news"),className:"text-white/80 hover:text-white transition-colors font-medium",children:"News"}),s.jsx("button",{onClick:()=>e("/contact"),className:"text-white/80 hover:text-white transition-colors font-medium",children:"Contact"})]}),s.jsx(B8,{})]})},Fn="https://smartlinks.app/solutions",vp=({title:e,children:t,isOpen:n,onToggle:r})=>s.jsxs("div",{className:"border-b border-white/10",children:[s.jsxs("button",{onClick:r,className:"flex items-center justify-between w-full py-3 text-white/90 hover:text-white transition-colors",children:[s.jsx("span",{className:"font-medium text-sm",children:e}),s.jsx(S0,{size:16,className:`transition-transform duration-200 ${n?"rotate-180":""}`})]}),s.jsx("div",{className:`overflow-hidden transition-all duration-200 ${n?"max-h-96 pb-3":"max-h-0"}`,children:s.jsx("div",{className:"pl-4 space-y-1",children:t})})]}),K8=({isOpen:e,onToggle:t,onNavigate:n})=>{const[r,i]=x.useState(null),a=c=>{i(r===c?null:c)},o=c=>{window.location.href=c},l="block w-full text-left py-2 text-white/80 hover:text-white transition-colors duration-200 text-sm";return s.jsxs(s.Fragment,{children:[s.jsx("button",{className:"lg:hidden text-white p-2",onClick:t,"aria-label":e?"Close menu":"Open menu",children:e?s.jsx(Jh,{size:24}):s.jsx(N_,{size:24})}),e&&s.jsx("div",{className:"lg:hidden bg-black/95 backdrop-blur-md border-t border-white/20 absolute left-0 right-0 top-full z-[60] max-h-[calc(100dvh-60px)] overflow-y-auto",children:s.jsxs("div",{className:"container mx-auto px-6 py-2",children:[s.jsx("div",{className:"border-b border-white/10",children:s.jsx("button",{onClick:()=>n("/"),className:"block w-full text-left text-white/90 hover:text-white transition-colors py-3 font-medium text-sm",children:"Home"})}),s.jsxs(vp,{title:"Products",isOpen:r==="products",onToggle:()=>a("products"),children:[s.jsx("button",{onClick:()=>n("/overview"),className:l,children:"Platform Overview"}),s.jsx("button",{onClick:()=>n("/food-beverages"),className:l,children:"Food & Beverages"}),s.jsx("button",{onClick:()=>n("/clothing-apparel"),className:l,children:"Clothing & Apparel"}),s.jsx("button",{onClick:()=>n("/health-beauty"),className:l,children:"Health & Beauty"})]}),s.jsx("div",{className:"border-b border-white/10",children:s.jsx("button",{onClick:()=>o("https://smartlinks.app/solutions/"),className:"block w-full text-left text-white/90 hover:text-white transition-colors py-3 font-medium text-sm",children:"Enterprise"})}),s.jsxs(vp,{title:"SmartLinks Hub",isOpen:r==="hub",onToggle:()=>a("hub"),children:[s.jsx("button",{onClick:()=>o(`${Fn}/hub`),className:l,children:"Overview"}),s.jsx("button",{onClick:()=>o(`${Fn}/hub/platform`),className:l,children:"Platform"}),s.jsx("button",{onClick:()=>o(`${Fn}/hub/replace-your-stack`),className:l,children:"Replace Your Stack"}),s.jsx("button",{onClick:()=>o(`${Fn}/hub/impact`),className:l,children:"Impact"})]}),s.jsxs(vp,{title:"Resources",isOpen:r==="resources",onToggle:()=>a("resources"),children:[s.jsx("div",{className:"text-white/50 text-xs font-semibold uppercase tracking-wider mb-1 mt-1",children:"Guides"}),s.jsx("button",{onClick:()=>o(`${Fn}/guides?category=regulation`),className:l,children:"EU DPP Guides"}),s.jsx("button",{onClick:()=>o(`${Fn}/guides?category=industry`),className:l,children:"Industry Guides"}),s.jsx("button",{onClick:()=>o(`${Fn}/guides?category=technology`),className:l,children:"Technology & Tools"}),s.jsx("div",{className:"text-white/50 text-xs font-semibold uppercase tracking-wider mb-1 mt-3",children:"More"}),s.jsx("button",{onClick:()=>o(`${Fn}/case-studies`),className:l,children:"Case Studies"}),s.jsx("button",{onClick:()=>o(`${Fn}/examples`),className:l,children:"Examples"}),s.jsx("button",{onClick:()=>o(`${Fn}/digital-link`),className:l,children:"Digital Link"}),s.jsx("button",{onClick:()=>o(`${Fn}/print-partners`),className:l,children:"Print Partners"})]}),s.jsx("div",{className:"border-b border-white/10",children:s.jsx("button",{onClick:()=>n("/news"),className:"block w-full text-left text-white/90 hover:text-white transition-colors py-3 font-medium text-sm",children:"News"})}),s.jsx("div",{className:"border-b border-white/10",children:s.jsx("button",{onClick:()=>n("/contact"),className:"block w-full text-left text-white/90 hover:text-white transition-colors py-3 font-medium text-sm",children:"Contact"})})]})})]})},rt=()=>
708{const[e,t]=x.useState(!1),n=zt(),r=()=>{window.location.href="https://smartlinks.app/console/login"},i=o=>{n(o),window.scrollTo(0,0),t(!1)},a=o=>{o.stopPropagation(),t(!e)};return s.jsx("nav",{"aria-label":"Main navigation",className:"fixed top-0 left-0 right-0 z-50 bg-black/45 backdrop-blur-sm border-b border-white/10",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"flex items-center justify-between py-3",children:[s.jsx($8,{onNavigate:i}),s.jsx(q8,{onNavigate:i}),s.jsxs("div",{className:"flex items-center gap-2 lg:hidden",children:[s.jsx("button",{onClick:r,className:"text-white/80 hover:text-white p-2","aria-label":"Sign In",children:s.jsx(Xh,{size:22})}),s.jsx(K8,{isOpen:e,onToggle:a,onNavigate:i})]})]})})})},ZS=({})=>{const e=Array.from({length:18},(r,i)=>({id:i,size:Math.random()*25+8,left:Math.random()*100,top:Math.random()*100,delay:Math.random()*6,duration:Math.random()*4+2})),t=Array.from({length:12},(r,i)=>({id:i,size:Math.random()*8+3,left:Math.random()*100,top:Math.random()*100,delay:Math.random()*8,duration:Math.random()*6+3})),n=Array.from({length:8},(r,i)=>({id:i,left:Math.random()*100,top:Math.random()*100,delay:Math.random()*4,duration:Math.random()*3+2}));return s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"absolute inset-0 opacity-25",children:e.map(r=>s.jsx("div",{className:"absolute bg-white/40 rounded-sm shadow-sm",style:{width:`${r.size}px`,height:`${r.size}px`,left:`${r.left}%`,top:`${r.top}%`,animation:`pulse-enhanced ${r.duration}s ease-in-out infinite`,animationDelay:`${r.delay}s`}},r.id))}),s.jsx("div",{className:"absolute inset-0 opacity-30",children:t.map(r=>s.jsx("div",{className:"absolute bg-blue-400/60 rounded-full",style:{width:`${r.size}px`,height:`${r.size}px`,left:`${r.left}%`,top:`${r.top}%`,animation:`float ${r.duration}s ease-in-out infinite`,animationDelay:`${r.delay}s`}},r.id))}),s.jsx("div",{className:"absolute inset-0 opacity-40",children:n.map(r=>s.jsx("div",{className:"absolute w-3 h-3",style:{left:`${r.left}%`,top:`${r.top}%`,animation:`sparkle ${r.duration}s ease-in-out infinite`,animationDelay:`${r.delay}s`},children:s.jsx("div",{className:"w-full h-full bg-white/80 transform rotate-45 rounded-sm"})},r.id))}),s.jsx("div",{className:"absolute top-10 left-10 opacity-15",children:s.jsx("div",{className:"grid grid-cols-10 gap-1",children:Array.from({length:100},(r,i)=>s.jsx("div",{className:"w-1.5 h-1.5 bg-white rounded-sm",style:{animation:"fade-cascade 4s ease-in-out infinite",animationDelay:`${i*.05%4}s`}},i))})}),s.jsx("div",{className:"absolute bottom-20 right-10 opacity-15",children:s.jsx("div",{className:"grid grid-cols-8 gap-1",children:Array.from({length:64},(r,i)=>s.jsx("div",{className:"w-1.5 h-1.5 bg-purple-300 rounded-sm",style:{animation:"fade-cascade 3.5s ease-in-out infinite",animationDelay:`${i*.08%3.5}s`}},i))})}),s.jsx("div",{className:"absolute top-1/2 left-4 opacity-10 transform -translate-y-1/2",children:s.jsx("div",{className:"grid grid-cols-6 gap-1",children:Array.from({length:36},(r,i)=>s.jsx("div",{className:"w-2 h-2 bg-blue-200 rounded-sm",style:{animation:"wave-pattern 5s ease-in-out infinite",animationDelay:`${i*.1%5}s`}},i))})})]})},e4=({})=>s.jsx("style",{children:` 709 @keyframes fade-in { 710 0%, 50% { opacity: 0; } 711 100% { opacity: 1; } 712 } 713 714 @keyframes pulse-enhanced { 715 0%, 100% { opacity: 0.2; transform: scale(1) rotate(0deg); } 716 50% { opacity: 0.8; transform: scale(1.2) rotate(180deg); } 717 } 718 719 @keyframes float { 720 0%, 100% { transform: translateY(0px) translateX(0px); opacity: 0.3; } 721 25% { transform: translateY(-20px) translateX(10px); opacity: 0.7; } 722 50% { transform: translateY(-10px) translateX(-15px); opacity: 0.5; } 723 75% { transform: translateY(-30px) translateX(5px); opacity: 0.8; } 724 } 725 726 @keyframes sparkle { 727 0%, 100% { opacity: 0; transform: scale(0) rotate(0deg); } 728 50% { opacity: 1; transform: scale(1) rotate(180deg); } 729 } 730 731 @keyframes fade-cascade { 732 0%, 70% { opacity: 0; transform: scale(0.8); } 733 85% { opacity: 1; transform: scale(1.1); } 734 100% { opacity: 0; transform: scale(1); } 735 } 736 737 @keyframes wave-pattern { 738 0%, 100% { opacity: 0.2; transform: translateY(0px); } 739 33% { opacity: 0.6; transform: translateY(-10px); } 740 66% { opacity: 0.4; transform: translateY(5px); } 741 } 742 743 @keyframes scale-in { 744 0% { opacity: 0; transform: translateY(-40px) scale(0.8); } 745 100% { opacity: 1; transform: translateY(-40px) scale(1); } 746 } 747 `}),Q8=({words:e,interval:t=2e3,className:n=""})=>{const[r,i]=x.useState(0),[a,o]=x.useState(!0);if(x.useEffect(()=>{if(!e||e.length<=1)return;const c=setInterval(()=>{o(!1),setTimeout(()=>{i(d=>(d+1)%e.length),o(!0)},300)},t);return()=>clearInterval(c)},[e,t]),!e||e.length===0)return s.jsx("span",{className:n,children:"Consumer Engagement"});const l=e[r];return s.jsx("span",{className:`transition-all duration-300 ease-in-out ${a?"opacity-100":"opacity-0"} ${n}`,style:{display:"inline-block",minHeight:"1.2em"},children:l})},yp=[{src:"/lovable-uploads/hero-slider-watch.webp",alt:"SmartLinks for Luxury Watches"},{src:"/lovable-uploads/hero-slider-beer.webp",alt:"SmartLinks for Beer & Beverages"},{src:"/lovable-uploads/hero-slider-speaker.webp",alt:"SmartLinks for Electronics"},{src:"/lovable-uploads/hero-slider-evening-bag.webp",alt:"SmartLinks for Luxury Goods"},{src:"/lovable-uploads/hero-slider-whiskey.webp",alt:"SmartLinks for Whiskey & Spirits"},{src:"/lovable-uploads/hero-slider-trainers.webp",alt:"SmartLinks for Clothing & Apparel"},{src:"/lovable-uploads/hero-slider-pizza.webp",alt:"SmartLinks for Food & Drink"},{src:"/lovable-uploads/hero-slider-cycles.webp",alt:"SmartLinks for Cycles & Scooters"},{src:"/lovable-uploads/hero-slider-hair-oil.webp",alt:"SmartLinks for Health & Beauty"},{src:"/lovable-uploads/hero-slider-pasta-sauce.webp",alt:"SmartLinks for Food Products"}],Y8=["Consumer Engagement","Brand Intelligence","Increased Sales","Product Authentication","Digital Compliance","Customer Loyalty","Supply Chain Visibility","Actionable Insights","Seamless Experiences","Sustainable Transparency"],X8=()=>
747{const[e,t]=x.useState(0),[n,r]=x.useState(!1),i=x.useCallback(()=>{t(a=>(a+1)%yp.length)},[]);return x.useEffect(()=>{if(n)return;const a=setInterval(i,4e3);return()=>clearInterval(a)},[n,i]),s.jsxs("section",{className:"relative overflow-hidden pt-24 pb-16 sm:pt-28 sm:pb-20",children:[s.jsx(ZS,{}),s.jsx("div",{className:"absolute inset-0 bg-gradient-to-b from-black/80 via-black/60 to-black/40",style:{height:"80%"}}),s.jsx("div",{className:"absolute bottom-0 left-0 right-0 bg-gradient-to-b from-black/40 to-transparent",style:{height:"20%"}}),s.jsx("div",{className:"relative z-10 container mx-auto px-6",children:s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-[2fr_3fr] gap-8 lg:gap-10 items-center",children:[s.jsxs("div",{className:"text-left pt-8 sm:pt-10 lg:pt-4 lg:pl-8 min-w-0 relative z-10",children:[s.jsxs("h1",{className:"text-2xl sm:text-3xl md:text-4xl lg:text-5xl font-bold text-white mb-6 sm:mb-8 leading-relaxed animate-fade-in",style:{animationDelay:"0.7s",lineHeight:"1.4"},children:[s.jsx("span",{className:"block",style:{textShadow:"0 0 20px rgba(0,0,0,0.9), 0 0 40px rgba(0,0,0,0.7)"},children:"Turning Physical Products into"}),s.jsx("span",{className:"block mt-1",children:s.jsx(Q8,{words:Y8,interval:2e3,className:"text-2xl sm:text-3xl md:text-4xl lg:text-5xl whitespace-nowrap bg-gradient-to-r from-cyan-300 via-blue-400 via-green-400 via-yellow-400 via-orange-400 to-red-500 bg-clip-text text-transparent"})})]}),s.jsx("p",{className:"text-sm sm:text-sm md:text-base lg:text-lg text-white/80 mb-6 sm:mb-8 leading-relaxed max-w-xl animate-fade-in",style:{animationDelay:"1s",textShadow:"0 0 20px rgba(0,0,0,0.9), 0 0 40px rgba(0,0,0,0.7)"},children:"Every product has a story. SmartLinks helps you tell it â from shelf to consumer and beyond."}),s.jsx("div",{className:"inline-block rounded-full mb-2 animate-fade-in",style:{animationDelay:"1.3s"},children:s.jsx(he,{src:"/lovable-uploads/5335e038-e434-4aa5-8794-65ecd5701872.webp",alt:"SmartLinks Platform",className:"h-10 sm:h-12 lg:h-14 w-auto",priority:!0})})]}),s.jsxs("div",{className:"relative w-full lg:w-[620px] flex-none justify-self-center animate-fade-in",style:{animationDelay:"0.5s"},onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:[s.jsx("div",{className:"relative h-[370px] sm:h-[420px] lg:h-[480px] w-full overflow-hidden rounded-2xl",children:yp.map((a,o)=>s.jsx("div",{className:"absolute inset-0 transition-opacity duration-700 ease-in-out",style:{opacity:e===o?1:0,zIndex:e===o?1:0},children:s.jsx("img",{src:a.src,alt:a.alt,className:"w-full h-full object-contain",loading:o===0?"eager":"lazy"})},o))}),s.jsx("div",{className:"flex justify-center gap-2 mt-4",children:yp.map((a,o)=>s.jsx("button",{onClick:l=>{l.stopPropagation(),t(o)},className:`w-2.5 h-2.5 rounded-full transition-all duration-300 ${e===o?"bg-white scale-125":"bg-white/40 hover:bg-white/60"}`,"aria-label":`Go to slide ${o+1}`},o))})]})]})}),s.jsx(e4,{})]})};function J8(e){return Object.prototype.toString.call(e)==="[object Object]"}function gw(e){return J8(e)||Array.isArray(e)}function Z8(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}function X0(e,t){const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;const i=JSON.stringify(Object.keys(e.breakpoints||{})),a=JSON.stringify(Object.keys(t.breakpoints||{}));return i!==a?!1:n.every(o=>{const l=e[o],c=t[o];return typeof l=="function"?`${l}`==`${c}`:!gw(l)||!gw(c)?l===c:X0(l,c)})}function vw(e){return e.concat().sort((t,n)=>t.name>n.name?1:-1).map(t=>t.options)}function eL(e,t){if(e.length!==t.length)return!1;const n=vw(e),r=vw(t);return n.every((i,a)=>{const o=r[a];return X0(i,o)})}function J0(e){return typeof e=="number"}function Fx(e){return typeof e=="string"}function am(e){return typeof e=="boolean"}function yw(e){return Object.prototype.toString.call(e)==="[object Object]"}function Ke(e){return Math.abs(e)}function Z0(e){return Math.sign(e)}function zl(e,t){return Ke(e-t)}function tL(e,t){if(e===0||t===0||Ke(e)<=Ke(t))return 0;const n=zl(Ke(e),Ke(t));return Ke(n/e)}function nL(e){return Math.round(e*100)/100}function Nc(e){return kc(e).map(Number)}function Jn(e){return e[Jc(e)]}
vendor: 16,295 bytes, line 747
747function Jc(e){return Math.max(0,e.length-1)}function ev(e,t){return t===Jc(e)}function bw(e,t=0){return Array.from(Array(e),(n,r)=>t+r)}function kc(e){return Object.keys(e)}function t4(e,t){return[e,t].reduce((n,r)=>(kc(r).forEach(i=>{const a=n[i],o=r[i],l=yw(a)&&yw(o);n[i]=l?t4(a,o):o}),n),{})}function $x(e,t){return typeof t.MouseEvent<"u"&&e instanceof t.MouseEvent}function sL(e,t){const n={start:r,center:i,end:a};function r(){return 0}function i(c){return a(c)/2}function a(c){return t-c}function o(c,d){return Fx(e)?n[e](c):e(t,c,d)}return{measure:o}}function Sc(){let e=[];function t(i,a,o,l={passive:!0}){let c;if("addEventListener"in i)i.addEventListener(a,o,l),c=()=>i.removeEventListener(a,o,l);else{const d=i;d.addListener(o),c=()=>d.removeListener(o)}return e.push(c),r}function n(){e=e.filter(i=>i())}const r={add:t,clear:n};return r}function rL(e,t,n,r){const i=Sc(),a=1e3/60;let o=null,l=0,c=0;function d(){i.add(e,"visibilitychange",()=>{e.hidden&&g()})}function u(){p(),i.clear()}function h(b){if(!c)return;o||(o=b,n(),n());const v=b-o;for(o=b,l+=v;l>=a;)n(),l-=a;const y=l/a;r(y),c&&(c=t.requestAnimationFrame(h))}function m(){c||(c=t.requestAnimationFrame(h))}function p(){t.cancelAnimationFrame(c),o=null,l=0,c=0}function g(){o=null,l=0}return{init:d,destroy:u,start:m,stop:p,update:n,render:r}}function iL(e,t){const n=t==="rtl",r=e==="y",i=r?"y":"x",a=r?"x":"y",o=!r&&n?-1:1,l=u(),c=h();function d(g){const{height:f,width:b}=g;return r?f:b}function u(){return r?"top":n?"right":"left"}function h(){return r?"bottom":n?"left":"right"}function m(g){return g*o}return{scroll:i,cross:a,startEdge:l,endEdge:c,measureSize:d,direction:m}}function Zi(e=0,t=0){const n=Ke(e-t);function r(d){return d<e}function i(d){return d>t}function a(d){return r(d)||i(d)}function o(d){return a(d)?r(d)?e:t:d}function l(d){return n?d-n*Math.ceil((d-t)/n):d}return{length:n,max:t,min:e,constrain:o,reachedAny:a,reachedMax:i,reachedMin:r,removeOffset:l}}function n4(e,t,n){const{constrain:r}=Zi(0,e),i=e+1;let a=o(t);function o(m){return n?Ke((i+m)%i):r(m)}function l(){return a}function c(m){return a=o(m),h}function d(m){return u().set(l()+m)}function u(){return n4(e,l(),n)}const h={get:l,set:c,add:d,clone:u};return h}function aL(e,t,n,r,i,a,o,l,c,d,u,h,m,p,g,f,b,v,y){const{cross:w,direction:j}=e,N=["INPUT","SELECT","TEXTAREA"],C={passive:!1},k=Sc(),P=Sc(),_=Zi(50,225).constrain(p.measure(20)),T={mouse:300,touch:400},R={mouse:500,touch:600},L=g?43:25;let W=!1,D=0,V=0,z=!1,I=!1,S=!1,M=!1;function U($){if(!y)return;function ae(Ue){(am(y)||y($,Ue))&&le(Ue)}const be=t;k.add(be,"dragstart",Ue=>Ue.preventDefault(),C).add(be,"touchmove",()=>{},C).add(be,"touchend",()=>{}).add(be,"touchstart",ae).add(be,"mousedown",ae).add(be,"touchcancel",te).add(be,"contextmenu",te).add(be,"click",Ne,!0)}function O(){k.clear(),P.clear()}function q(){const $=M?n:t;P.add($,"touchmove",G,C).add($,"touchend",te).add($,"mousemove",G,C).add($,"mouseup",te)}function Z($){const ae=$.nodeName||"";return N.includes(ae)}function de(){return(g?R:T)[M?"mouse":"touch"]}function ze($,ae){const be=h.add(Z0($)*-1),Ue=u.byDistance($,!g).distance;return g||Ke($)<_?Ue:b&&ae?Ue*.5:u.byIndex(be.get(),0).distance}function le($){const ae=$x($,r);M=ae,S=g&&ae&&!$.buttons&&W,W=zl(i.get(),o.get())>=2,!(ae&&$.button!==0)&&(Z($.target)||(z=!0,a.pointerDown($),d.useFriction(0).useDuration(0),i.set(o),q(),D=a.readPoint($),V=a.readPoint($,w),m.emit("pointerDown")))}function G($){if(!$x($,r)&&$.touches.length>=2)return te($);const be=a.readPoint($),Ue=a.readPoint($,w),We=zl(be,D),ft=zl(Ue,V);if(!I&&!M&&(!$.cancelable||(I=We>ft,!I)))return te($);const In=a.pointerMove($);We>f&&(S=!0),d.useFriction(.3).useDuration(.75),l.start(),i.add(j(In)),$.preventDefault()}function te($){const be=u.byDistance(0,!1).index!==h.get(),Ue=a.pointerUp($)*de(),We=ze(j(Ue),be),ft=tL(Ue,We),In=L-10*ft,De=v+ft/50;I=!1,z=!1,P.clear(),d.useDuration(In).useFriction(De),c.distance(We,!g),M=!1,m.emit("pointerUp")}function Ne($){S&&($.stopPropagation(),$.preventDefault(),S=!1)}function re(){return z}return{init:U,destroy:O,pointerDown:re}}function oL(e,t){let r,i;function a(h){return h.timeStamp}function o(h,m){const g=`client${(m||e.scroll)==="x"?"X":"Y"}`;return($x(h,t)?h:h.touches[0])[g]}function l(h){return r=h,i=h,o(h)}function c(h){const m=o(h)-o(i),p=a(h)-a(r)>170;return i=h,p&&(r=h),m}function d(h){if(!r||!i)return 0;const m=o(i)-o(r),p=a(h)-a(r),g=a(h)-a(i)>170,f=m/p;return p&&!g&&Ke(f)>.1?f:0}return{pointerDown:l,pointerMove:c,pointerUp:d,readPoint:o}}function lL(){function e(n){const{offsetTop:r,offsetLeft:i,offsetWidth:a,offsetHeight:o}=n;return{top:r,right:i+a,bottom:r+o,left:i,width:a,height:o}}return{measure:e}}function cL(e){function t(r){return e*(r/100)}return{measure:t}}function dL(e,t,n,r,i,a,o){const l=[e].concat(r);let c,d,u=[],h=!1;function m(b){return i.measureSize(o.measure(b))}function p(b){if(!a)return;d=m(e),u=r.map(m);function v(y){for(const w of y){if(h)return;const j=w.target===e,N=r.indexOf(w.target),C=j?d:u[N],k=m(j?e:r[N]);if(Ke(k-C)>=.5){b.reInit(),t.emit("resize");break}}}c=new ResizeObserver(y=>{(am(a)||a(b,y))&&v(y)}),n.requestAnimationFrame(()=>{l.forEach(y=>c.observe(y))})}function g(){h=!0,c&&c.disconnect()}return{init:p,destroy:g}}function uL(e,t,n,r,i,a){let o=0,l=0,c=i,d=a,u=e.get(),h=0;function m(){const C=r.get()-e.get(),k=!c;let P=0;return k?(o=0,n.set(r),e.set(r),P=C):(n.set(e),o+=C/c,o*=d,u+=o,e.add(o),P=u-h),l=Z0(P),h=u,N}function p(){const C=r.get()-t.get();return Ke(C)<.001}function g(){return c}function f(){return l}function b(){return o}function v(){return w(i)}function y(){return j(a)}function w(C){return c=C,N}function j(C){return d=C,N}const N={direction:f,duration:g,velocity:b,seek:m,settled:p,useBaseFriction:y,useBaseDuration:v,useFriction:j,useDuration:w};return N}function hL(e,t,n,r,i){const a=i.measure(10),o=i.measure(50),l=Zi(.1,.99);let c=!1;function d(){return!(c||!e.reachedAny(n.get())||!e.reachedAny(t.get()))}function u(p){if(!d())return;const g=e.reachedMin(t.get())?"min":"max",f=Ke(e[g]-t.get()),b=n.get()-t.get(),v=l.constrain(f/o);n.subtract(b*v),!p&&Ke(b)<a&&(n.set(e.constrain(n.get())),r.useDuration(25).useBaseFriction())}function h(p){c=!p}return{shouldConstrain:d,constrain:u,toggleActive:h}}function mL(e,t,n,r,i){const a=Zi(-t+e,0),o=h(),l=u(),c=m();function d(g,f){return zl(g,f)<=1}function u(){const g=o[0],f=Jn(o),b=o.lastIndexOf(g),v=o.indexOf(f)+1;return Zi(b,v)}function h(){return n.map((g,f)=>{const{min:b,max:v}=a,y=a.constrain(g),w=!f,j=ev(n,f);return w?v:j||d(b,y)?b:d(v,y)?v:y}).map(g=>parseFloat(g.toFixed(3)))}function m(){if(t<=e+i)return[a.max];if(r==="keepSnaps")return o;const{min:g,max:f}=l;return o.slice(g,f)}return{snapsContained:c,scrollContainLimit:l}}function pL(e,t,n){const r=t[0],i=n?r-e:Jn(t);return{limit:Zi(i,r)}}function fL(e,t,n,r){const a=t.min+.1,o=t.max+.1,{reachedMin:l,reachedMax:c}=Zi(a,o);function d(m){return m===1?c(n.get()):m===-1?l(n.get()):!1}function u(m){if(!d(m))return;const p=e*(m*-1);r.forEach(g=>g.add(p))}return{loop:u}}function xL(e){const{max:t,length:n}=e;function r(a){const o=a-t;return n?o/-n:0}return{get:r}}function gL(e,t,n,r,i){const{startEdge:a,endEdge:o}=e,{groupSlides:l}=i,c=h().map(t.measure),d=m(),u=p();function h(){return l(r).map(f=>Jn(f)[o]-f[0][a]).map(Ke)}function m(){return r.map(f=>n[a]-f[a]).map(f=>-Ke(f))}function p(){return l(d).map(f=>f[0]).map((f,b)=>f+c[b])}return{snaps:d,snapsAligned:u}}function vL(e,t,n,r,i,a){const{groupSlides:o}=i,{min:l,max:c}=r,d=u();function u(){const m=o(a),p=!e||t==="keepSnaps";return n.length===1?[a]:p?m:m.slice(l,c).map((g,f,b)=>{const v=!f,y=ev(b,f);if(v){const w=Jn(b[0])+1;return bw(w)}if(y){const w=Jc(a)-Jn(b)[0]+1;return bw(w,Jn(b)[0])}return g})}return{slideRegistry:d}}function yL(e,t,n,r,i){const{reachedAny:a,removeOffset:o,constrain:l}=r;function c(g){return g.concat().sort((f,b)=>Ke(f)-Ke(b))[0]}function d(g){const f=e?o(g):l(g),b=t.map((y,w)=>({diff:u(y-f,0),index:w})).sort((y,w)=>Ke(y.diff)-Ke(w.diff)),{index:v}=b[0];return{index:v,distance:f}}function u(g,f){const b=[g,g+n,g-n];if(!e)return g;if(!f)return c(b);const v=b.filter(y=>Z0(y)===f);return v.length?c(v):Jn(b)-n}function h(g,f){const b=t[g]-i.get(),v=u(b,f);return{index:g,distance:v}}function m(g,f){const b=i.get()+g,{index:v,distance:y}=d(b),w=!e&&a(b);if(!f||w)return{index:v,distance:g};const j=t[v]-y,N=g+u(j,0);return{index:v,distance:N}}return{byDistance:m,byIndex:h,shortcut:u}}function bL(e,t,n,r,i,a,o){function l(h){const m=h.distance,p=h.index!==t.get();a.add(m),m&&(r.duration()?e.start():(e.update(),e.render(1),e.update())),p&&(n.set(t.get()),t.set(h.index),o.emit("select"))}function c(h,m){const p=i.byDistance(h,m);l(p)}function d(h,m){const p=t.clone().set(h),g=i.byIndex(p.get(),m);l(g)}return{distance:c,index:d}}function wL(e,t,n,r,i,a,o,l){const c={passive:!0,capture:!0};let d=0;function u(p){if(!l)return;function g(f){if(new Date().getTime()-d>10)return;o.emit("slideFocusStart"),e.scrollLeft=0;const y=n.findIndex(w=>w.includes(f));J0(y)&&(i.useDuration(0),r.index(y,0),o.emit("slideFocus"))}a.add(document,"keydown",h,!1),t.forEach((f,b)=>{a.add(f,"focus",v=>{(am(l)||l(p,v))&&g(b)},c)})}function h(p){p.code==="Tab"&&(d=new Date().getTime())}return{init:u}}function Pl(e){let t=e;function n(){return t}function r(c){t=o(c)}function i(c){t+=o(c)}function a(c){t-=o(c)}function o(c){return J0(c)?c:c.get()}return{get:n,set:r,add:i,subtract:a}}function s4(e,t){const n=e.scroll==="x"?o:l,r=t.style;let i=null,a=!1;function o(m){return`translate3d(${m}px,0px,0px)`}function l(m){return`translate3d(0px,${m}px,0px)`}function c(m){if(a)return;const p=nL(e.direction(m));p!==i&&(r.transform=n(p),i=p)}function d(m){a=!m}function u(){a||(r.transform="",t.getAttribute("style")||t.removeAttribute("style"))}return{clear:u,to:c,toggleActive:d}}function jL(e,t,n,r,i,a,o,l,c){const u=Nc(i),h=Nc(i).reverse(),m=v().concat(y());function p(k,P){return k.reduce((_,T)=>_-i[T],P)}function g(k,P){return k.reduce((_,T)=>p(_,P)>0?_.concat([T]):_,[])}function f(k){return a.map((P,_)=>({start:P-r[_]+.5+k,end:P+t-.5+k}))}function b(k,P,_){const T=f(P);return k.map(R=>{const L=_?0:-n,W=_?n:0,D=_?"end":"start",V=T[R][D];return{index:R,loopPoint:V,slideLocation:Pl(-1),translate:s4(e,c[R]),target:()=>l.get()>V?L:W}})}function v(){const k=o[0],P=g(h,k);return b(P,n,!1)}function y(){const k=t-o[0]-1,P=g(u,k);return b(P,-n,!0)}function w(){return m.every(({index:k})=>{const P=u.filter(_=>_!==k);return p(P,t)<=.1})}function j(){m.forEach(k=>{const{target:P,translate:_,slideLocation:T}=k,R=P();R!==T.get()&&(_.to(R),T.set(R))})}function N(){m.forEach(k=>k.translate.clear())}return{canLoop:w,clear:N,loop:j,loopPoints:m}}function NL(e,t,n){let r,i=!1;function a(c){if(!n)return;function d(u){for(const h of u)if(h.type==="childList"){c.reInit(),t.emit("slidesChanged");break}}r=new MutationObserver(u=>{i||(am(n)||n(c,u))&&d(u)}),r.observe(e,{childList:!0})}function o(){r&&r.disconnect(),i=!0}return{init:a,destroy:o}}function kL(e,t,n,r){const i={};let a=null,o=null,l,c=!1;function d(){l=new IntersectionObserver(g=>{c||(g.forEach(f=>{const b=t.indexOf(f.target);i[b]=f}),a=null,o=null,n.emit("slidesInView"))},{root:e.parentElement,threshold:r}),t.forEach(g=>l.observe(g))}function u(){l&&l.disconnect(),c=!0}function h(g){return kc(i).reduce((f,b)=>{const v=parseInt(b),{isIntersecting:y}=i[v];return(g&&y||!g&&!y)&&f.push(v),f},[])}function m(g=!0){if(g&&a)return a;if(!g&&o)return o;const f=h(g);return g&&(a=f),g||(o=f),f}return{init:d,destroy:u,get:m}}function SL(e,t,n,r,i,a){const{measureSize:o,startEdge:l,endEdge:c}=e,d=n[0]&&i,u=g(),h=f(),m=n.map(o),p=b();function g(){if(!d)return 0;const y=n[0];return Ke(t[l]-y[l])}function f(){if(!d)return 0;const y=a.getComputedStyle(Jn(r));return parseFloat(y.getPropertyValue(`margin-${c}`))}function b(){return n.map((y,w,j)=>{const N=!w,C=ev(j,w);return N?m[w]+u:C?m[w]+h:j[w+1][l]-y[l]}).map(Ke)}return{slideSizes:m,slideSizesWithGaps:p,startGap:u,endGap:h}}function CL(e,t,n,r,i,a,o,l,c){const{startEdge:d,endEdge:u,direction:h}=e,m=J0(n);function p(v,y){return Nc(v).filter(w=>w%y===0).map(w=>v.slice(w,w+y))}function g(v){return v.length?Nc(v).reduce((y,w,j)=>{const N=Jn(y)||0,C=N===0,k=w===Jc(v),P=i[d]-a[N][d],_=i[d]-a[w][u],T=!r&&C?h(o):0,R=!r&&k?h(l):0,L=Ke(_-R-(P+T));return j&&L>t+c&&y.push(w),k&&y.push(v.length),y},[]).map((y,w,j)=>{const N=Math.max(j[w-1]||0);return v.slice(N,y)}):[]}function f(v){return m?p(v,n):g(v)}return{groupSlides:f}}function PL(e,t,n,r,i,a,o){const{align:l,axis:c,direction:d,startIndex:u,loop:h,duration:m,dragFree:p,dragThreshold:g,inViewThreshold:f,slidesToScroll:b,skipSnaps:v,containScroll:y,watchResize:w,watchSlides:j,watchDrag:N,watchFocus:C}=a,k=2,P=lL(),_=P.measure(t),T=n.map(P.measure),R=iL(c,d),L=R.measureSize(_),W=cL(L),D=sL(l,L),V=!h&&!!y,z=h||!!y,{slideSizes:I,slideSizesWithGaps:S,startGap:M,endGap:U}=SL(R,_,T,n,z,i),O=CL(R,L,b,h,_,T,M,U,k),{snaps:q,snapsAligned:Z}=gL(R,D,_,T,O),de=-Jn(q)+Jn(S),{snapsContained:ze,scrollContainLimit:le}=mL(L,de,Z,y,k),G=V?ze:Z,{limit:te}=pL(de,G,h),Ne=n4(Jc(G),u,h),re=Ne.clone(),X=Nc(n),$=({dragHandler:Os,scrollBody:nl,scrollBounds:pa,options:{loop:fi}})=>{fi||pa.constrain(Os.pointerDown()),nl.seek()},ae=({scrollBody:Os,translate:nl,location:pa,offsetLocation:fi,previousLocation:Am,scrollLooper:sl,slideLooper:ls,dragHandler:Rm,animation:ie,eventHandler:Te,scrollBounds:_e,options:{loop:sn}},rn)=>{const xi=Os.settled(),Dm=!_e.shouldConstrain(),xy=sn?xi:xi&&Dm,gy=xy&&!Rm.pointerDown();gy&&ie.stop();const j3=pa.get()*rn+Am.get()*(1-rn);fi.set(j3),sn&&(sl.loop(Os.direction()),ls.loop()),nl.to(fi.get()),gy&&Te.emit("settle"),xy||Te.emit("scroll")},be=rL(r,i,()=>$(os),Os=>ae(os,Os)),Ue=.68,We=G[Ne.get()],ft=Pl(We),In=Pl(We),De=Pl(We),Ut=Pl(We),pi=uL(ft,De,In,Ut,m,Ue),Zo=yL(h,G,de,te,Ut),ir=bL(be,Ne,re,pi,Zo,Ut,o),md=xL(te),el=Sc(),tl=kL(t,n,o,f),{slideRegistry:Is}=vL(V,y,G,le,O,X),pd=wL(e,n,Is,ir,pi,el,o,C),os={ownerDocument:r,ownerWindow:i,eventHandler:o,containerRect:_,slideRects:T,animation:be,axis:R,dragHandler:aL(R,e,r,i,Ut,oL(R,i),ft,be,ir,pi,Zo,Ne,o,W,p,g,v,Ue,N),eventStore:el,percentOfView:W,index:Ne,indexPrevious:re,limit:te,location:ft,offsetLocation:De,previousLocation:In,options:a,resizeHandler:dL(t,o,i,n,R,w,P),scrollBody:pi,scrollBounds:hL(te,De,Ut,pi,W),scrollLooper:fL(de,te,De,[ft,De,In,Ut]),scrollProgress:md,scrollSnapList:G.map(md.get),scrollSnaps:G,scrollTarget:Zo,scrollTo:ir,slideLooper:jL(R,L,de,I,S,q,G,De,n),slideFocus:pd,slidesHandler:NL(t,o,j),slidesInView:tl,slideIndexes:X,slideRegistry:Is,slidesToScroll:O,target:Ut,translate:s4(R,t)};return os}function EL(){let e={},t;function n(d){t=d}function r(d){return e[d]||[]}function i(d){return r(d).forEach(u=>u(t,d)),c}function a(d,u){return e[d]=r(d).concat([u]),c}function o(d,u){return e[d]=r(d).filter(h=>h!==u),c}function l(){e={}}const c={init:n,emit:i,off:o,on:a,clear:l};return c}const TL={align:"center",axis:"x",container:null,slides:null,containScroll:"trimSnaps",direction:"ltr",slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function _L(e){function t(a,o){return t4(a,o||{})}function n(a){const o=a.breakpoints||{},l=kc(o).filter(c=>e.matchMedia(c).matches).map(c=>o[c]).reduce((c,d)=>t(c,d),{});return t(a,l)}function r(a){return a.map(o=>kc(o.breakpoints||{})).reduce((o,l)=>o.concat(l),[]).map(e.matchMedia)}return{mergeOptions:t,optionsAtMedia:n,optionsMediaQueries:r}}function AL(e){let t=[];function n(a,o){return t=o.filter(({options:l})=>e.optionsAtMedia(l).active!==!1),t.forEach(l=>l.init(a,e)),o.reduce((l,c)=>Object.assign(l,{[c.name]:c}),{})}function r(){t=t.filter(a=>a.destroy())}return{init:n,destroy:r}}function dh(e,t,n){const r=e.ownerDocument,i=r.defaultView,a=_L(i),o=AL(a),l=Sc(),c=EL(),{mergeOptions:d,optionsAtMedia:u,optionsMediaQueries:h}=a,{on:m,off:p,emit:g}=c,f=R;let b=!1,v,y=d(TL,dh.globalOptions),w=d(y),j=[],N,C,k;function P(){const{container:X,slides:$}=w;C=(Fx(X)?e.querySelector(X):X)||e.children[0];const be=Fx($)?C.querySelectorAll($):$;k=[].slice.call(be||C.children)}function _(X){const $=PL(e,C,k,r,i,X,c);if(X.loop&&!$.slideLooper.canLoop()){const ae=Object.assign({}
747,X,{loop:!1});return _(ae)}return $}function T(X,$){b||(y=d(y,X),w=u(y),j=$||j,P(),v=_(w),h([y,...j.map(({options:ae})=>ae)]).forEach(ae=>l.add(ae,"change",R)),w.active&&(v.translate.to(v.location.get()),v.animation.init(),v.slidesInView.init(),v.slideFocus.init(re),v.eventHandler.init(re),v.resizeHandler.init(re),v.slidesHandler.init(re),v.options.loop&&v.slideLooper.loop(),C.offsetParent&&k.length&&v.dragHandler.init(re),N=o.init(re,j)))}function R(X,$){const ae=O();L(),T(d({startIndex:ae},X),$),c.emit("reInit")}function L(){v.dragHandler.destroy(),v.eventStore.clear(),v.translate.clear(),v.slideLooper.clear(),v.resizeHandler.destroy(),v.slidesHandler.destroy(),v.slidesInView.destroy(),v.animation.destroy(),o.destroy(),l.clear()}function W(){b||(b=!0,l.clear(),L(),c.emit("destroy"),c.clear())}function D(X,$,ae){!w.active||b||(v.scrollBody.useBaseFriction().useDuration($===!0?0:w.duration),v.scrollTo.index(X,ae||0))}function V(X){const $=v.index.add(1).get();D($,X,-1)}function z(X){const $=v.index.add(-1).get();D($,X,1)}function I(){return v.index.add(1).get()!==O()}function S(){return v.index.add(-1).get()!==O()}function M(){return v.scrollSnapList}function U(){return v.scrollProgress.get(v.offsetLocation.get())}function O(){return v.index.get()}function q(){return v.indexPrevious.get()}function Z(){return v.slidesInView.get()}function de(){return v.slidesInView.get(!1)}function ze(){return N}function le(){return v}function G(){return e}function te(){return C}function Ne(){return k}const re={canScrollNext:I,canScrollPrev:S,containerNode:te,internalEngine:le,destroy:W,off:p,on:m,emit:g,plugins:ze,previousScrollSnap:q,reInit:f,rootNode:G,scrollNext:V,scrollPrev:z,scrollProgress:U,scrollSnapList:M,scrollTo:D,selectedScrollSnap:O,slideNodes:Ne,slidesInView:Z,slidesNotInView:de};return T(t,n),setTimeout(()=>c.emit("init"),0),re}dh.globalOptions=void 0;function tv(e={},t=[]){const n=x.useRef(e),r=x.useRef(t),[i,a]=x.useState(),[o,l]=x.useState(),c=x.useCallback(()=>{i&&i.reInit(n.current,r.current)},[i]);return x.useEffect(()=>{X0(n.current,e)||(n.current=e,c())},[e,c]),x.useEffect(()=>{eL(r.current,t)||(r.current=t,c())},[t,c]),x.useEffect(()=>{if(Z8()&&o){dh.globalOptions=tv.globalOptions;const d=dh(o,n.current,r.current);return a(d),()=>d.destroy()}else a(void 0)},[o,a]),[l,i]}tv.globalOptions=void 0;const Bx=Wh("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),H=x.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},a)=>{const o=r?Gr:"button";return s.jsx(o,{className:J(Bx({variant:t,size:n,className:e})),ref:a,...i})});H.displayName="Button";const r4=x.createContext(null);function om(){const e=x.useContext(r4);if(!e)throw new Error("useCarousel must be used within a <Carousel />");return e}const i4=x.forwardRef(({orientation:e="horizontal",opts:t,setApi:n,plugins:r,className:i,children:a,...o},l)=>{const[c,d]=tv({...t,axis:e==="horizontal"?"x":"y"},r),[u,h]=x.useState(!1),[m,p]=x.useState(!1),g=x.useCallback(y=>{y&&(h(y.canScrollPrev()),p(y.canScrollNext()))},[]),f=x.useCallback(()=>{d==null||d.scrollPrev()},[d]),b=x.useCallback(()=>{d==null||d.scrollNext()},[d]),v=x.useCallback(y=>{y.key==="ArrowLeft"?(y.preventDefault(),f()):y.key==="ArrowRight"&&(y.preventDefault(),b())},[f,b]);return x.useEffect(()=>{!d||!n||n(d)},[d,n]),x.useEffect(()=>{if(d)return g(d),d.on("reInit",g),d.on("select",g),()=>{d==null||d.off("select",g)}},[d,g]),s.jsx(r4.Provider,{value:{carouselRef:c,api:d,opts:t,orientation:e||((t==null?void 0:t.axis)==="y"?"vertical":"horizontal"),scrollPrev:f,scrollNext:b,canScrollPrev:u,canScrollNext:m},children:s.jsx("div",{ref:l,onKeyDownCapture:v,className:J("relative",i),role:"region","aria-roledescription":"carousel",...o,children:a})})});
747i4.displayName="Carousel";const a4=x.forwardRef(({className:e,...t},n)=>{const{carouselRef:r,orientation:i}=om();return s.jsx("div",{ref:r,className:"overflow-hidden",children:s.jsx("div",{ref:n,className:J("flex",i==="horizontal"?"-ml-4":"-mt-4 flex-col",e),...t})})});a4.displayName="CarouselContent";const o4=x.forwardRef(({className:e,...t},n)=>{const{orientation:r}=om();return s.jsx("div",{ref:n,role:"group","aria-roledescription":"slide",className:J("min-w-0 shrink-0 grow-0 basis-full",r==="horizontal"?"pl-4":"pt-4",e),...t})});o4.displayName="CarouselItem";const RL=x.forwardRef(({className:e,variant:t="outline",size:n="icon",...r},i)=>{const{orientation:a,scrollPrev:o,canScrollPrev:l}=om();return s.jsxs(H,{ref:i,variant:t,size:n,className:J("absolute h-8 w-8 rounded-full",a==="horizontal"?"-left-12 top-1/2 -translate-y-1/2":"-top-12 left-1/2 -translate-x-1/2 rotate-90",e),disabled:!l,onClick:o,...r,children:[s.jsx(So,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Previous slide"})]})});RL.displayName="CarouselPrevious";const DL=x.forwardRef(({className:e,variant:t="outline",size:n="icon",...r},i)=>{const{orientation:a,scrollNext:o,canScrollNext:l}=om();return s.jsxs(H,{ref:i,variant:t,size:n,className:J("absolute h-8 w-8 rounded-full",a==="horizontal"?"-right-12 top-1/2 -translate-y-1/2":"-bottom-12 left-1/2 -translate-x-1/2 rotate-90",e),disabled:!l,onClick:o,...r,children:[s.jsx(ue,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Next slide"})]})});DL.displayName="CarouselNext";const ML={active:!0,breakpoints:{},delay:4e3,jump:!1,playOnInit:!0,stopOnFocusIn:!0,stopOnInteraction:!0,stopOnMouseEnter:!1,stopOnLastSnap:!1,rootNode:null};function LL(e,t){const n=e.scrollSnapList();return typeof t=="number"?n.map(()=>t):t(n,e)}function IL(e,t){const n=e.rootNode();return t&&t(n)||n}function nv(e={}){let t,n,r,i,a=null,o=0,l=!1,c=!1,d=!1,u=!1;function h(D,V){n=D;const{mergeOptions:z,optionsAtMedia:I}=V,S=z(ML,nv.globalOptions),M=z(S,e);if(t=I(M),n.scrollSnapList().length<=1)return;u=t.jump,r=!1,i=LL(n,t.delay);const{eventStore:U,ownerDocument:O}=n.internalEngine(),q=!!n.internalEngine().options.watchDrag,Z=IL(n,t.rootNode);U.add(O,"visibilitychange",v),q&&n.on("pointerDown",w),q&&!t.stopOnInteraction&&n.on("pointerUp",j),t.stopOnMouseEnter&&U.add(Z,"mouseenter",N),t.stopOnMouseEnter&&!t.stopOnInteraction&&U.add(Z,"mouseleave",C),t.stopOnFocusIn&&n.on("slideFocusStart",b),t.stopOnFocusIn&&!t.stopOnInteraction&&U.add(n.containerNode(),"focusout",f),t.playOnInit&&f()}function m(){n.off("pointerDown",w).off("pointerUp",j).off("slideFocusStart",b),b(),r=!0,l=!1}function p(){const{ownerWindow:D}=n.internalEngine();D.clearTimeout(o),o=D.setTimeout(R,i[n.selectedScrollSnap()]),a=new Date().getTime(),n.emit("autoplay:timerset")}function g(){const{ownerWindow:D}=n.internalEngine();D.clearTimeout(o),o=0,a=null,n.emit("autoplay:timerstopped")}function f(){if(!r){if(y()){d=!0;return}l||n.emit("autoplay:play"),p(),l=!0}}function b(){r||(l&&n.emit("autoplay:stop"),g(),l=!1)}function v(){if(y())return d=l,b();d&&f()}function y(){const{ownerDocument:D}=n.internalEngine();return D.visibilityState==="hidden"}function w(){c||b()}function j(){c||f()}function N(){c=!0,b()}function C(){c=!1,f()}function k(D){typeof D<"u"&&(u=D),f()}function P(){l&&b()}function _(){l&&f()}function T(){return l}function R(){const{index:D}=n.internalEngine(),V=D.clone().add(1).get(),z=n.scrollSnapList().length-1,I=t.stopOnLastSnap&&V===z;if(n.canScrollNext()?n.scrollNext(u):n.scrollTo(0,u),n.emit("autoplay:select"),I)return b();f()}function L(){if(!a)return null;const D=i[n.selectedScrollSnap()],V=new Date().getTime()-a;return D-V}return{name:"autoplay",options:e,init:h,destroy:m,play:k,stop:P,reset:_,isPlaying:T,timeUntilNext:L}}nv.globalOptions=void 0;const l4=()=>{const e=[{src:"/lovable-uploads/dfb2c36b-de46-4970-85de-b826441f3e6f.webp",alt:"SmartLinks client logo - premium brand partner",name:"Premium Brand Partner"},{src:"/lovable-uploads/aa00d6bd-de5f-4dca-bc01-ab9bc962d86d.webp",alt:"SmartLinks client logo - digital transformation partner",name:"Digital Partner"},{src:"/lovable-uploads/3a7b3a09-c70f-45c3-b74a-77d057e65927.webp",alt:"SmartLinks client logo - retail technology client",name:"Retail Technology Client"},{src:"/lovable-uploads/a94b8768-b1c7-493f-b29e-8f1b02dc16a1.webp",alt:"SmartLinks client logo - enterprise solution customer",name:"Enterprise Customer"},{src:"/lovable-uploads/23fc89f3-4586-4831-a44e-55fd8b6e07de.webp",alt:"SmartLinks client logo - innovative brand partner",name:"Innovation Partner"},{src:"/lovable-uploads/cbffa78b-67bd-4d9d-9d11-76ea856a72e6.webp",alt:"England Rugby - SmartLinks sports partnership client logo",name:"England Rugby"},{src:"/lovable-uploads/520adcd9-c394-4908-8a5b-2caf3ccb9fb4.webp",alt:"SmartLinks client logo - global brand customer",name:"Global Brand Customer"},{src:"/lovable-uploads/b963d737-4a1e-4176-80f2-4d2ad6dbff66.webp",alt:"SmartLinks client logo - digital platform user",name:"Digital Platform User"},{src:"/lovable-uploads/1dd4184d-5fc6-4b6b-991f-e6d510df7c7a.webp",alt:"SmartLinks client logo - technology integration partner",name:"Integration Partner"},{src:"/lovable-uploads/101cdd54-bb76-4d31-988a-e240ba529763.webp",alt:"SmartLinks client logo - product digitisation client",name:"Product Digitisation Client"}];return s.jsx("section",{className:"py-16 bg-transparent",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-4",children:"Trusted by Leading Brands"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Trusted by leading brands connecting physical products to digital experiences"})]}),s.jsx("div",{className:"relative",children:s.jsx(i4,{plugins:[nv({delay:2e3,stopOn
747Interaction:!1,stopOnMouseEnter:!0})],opts:{align:"start",loop:!0,skipSnaps:!1,dragFree:!0},className:"w-full",children:s.jsx(a4,{className:"-ml-2 md:-ml-4",children:e.map((t,n)=>s.jsx(o4,{className:"pl-2 md:pl-4 basis-1/2 sm:basis-1/3 md:basis-1/4 lg:basis-1/5 xl:basis-1/6",children:s.jsx("div",{className:"flex items-center justify-center p-4 h-24",children:s.jsx(he,{src:t.src,alt:t.alt,className:"max-h-16 max-w-full object-contain filter brightness-0 invert opacity-70 hover:opacity-100 transition-opacity duration-300"})})},n))})})})]})})},OL=()=>{const e=x.useRef(null),t=()=>{const r=document.getElementById("product-categories");r==null||r.scrollIntoView({behavior:"smooth"})};x.useEffect(()=>{const r=new IntersectionObserver(i=>{i.forEach(a=>{a.isIntersecting&&a.target.classList.add("animate-in")})},{threshold:.2});return e.current&&r.observe(e.current),()=>r.disconnect()},[]);const n=[{icon:rr,label:"Instant Setup",desc:"Live in minutes"},{icon:Tt,label:"Free Forever",desc:"No credit card"},{icon:D_,label:"Self-Serve",desc:"No dev needed"}];return s.jsxs(s.Fragment,{children:[s.jsx("section",{className:"py-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto px-4",children:s.jsxs("div",{ref:e,className:"relative overflow-hidden rounded-3xl border border-blue-500/20 bg-gradient-to-br from-blue-950/50 via-purple-950/30 to-blue-950/50 px-6 py-5 md:px-8 md:py-6 opacity-0 translate-y-4 transition-all duration-700 ease-out [&.animate-in]:opacity-100 [&.animate-in]:translate-y-0",children:[s.jsx("div",{className:"absolute -top-24 -right-24 w-64 h-64 bg-blue-500/15 rounded-full blur-3xl animate-pulse"}),s.jsx("div",{className:"absolute -bottom-24 -left-24 w-64 h-64 bg-purple-500/15 rounded-full blur-3xl animate-pulse",style:{animationDelay:"1s"}}),s.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-96 h-32 bg-cyan-500/5 rounded-full blur-3xl animate-pulse",style:{animationDelay:"2s"}}),s.jsx(ke,{className:"absolute top-4 right-10 w-5 h-5 text-blue-400/30 animate-pulse",style:{animationDelay:"0.5s"}}),s.jsx(ke,{className:"absolute bottom-4 left-12 w-4 h-4 text-purple-400/25 animate-pulse",style:{animationDelay:"1.5s"}}),s.jsx(ke,{className:"absolute top-6 left-1/3 w-3 h-3 text-cyan-400/20 animate-pulse",style:{animationDelay:"2.5s"}}),s.jsxs("div",{className:"relative z-10 flex flex-col md:flex-row md:items-center gap-5",children:[s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsxs("h2",{className:"text-2xl md:text-3xl lg:text-4xl font-bold text-white leading-tight mb-1.5",children:["Start Free."," ",s.jsx("span",{className:"bg-gradient-to-r from-cyan-300 via-blue-400 to-purple-400 bg-clip-text text-transparent",children:"No Credit Card Required."})]}),s.jsx("p",{className:"text-white/60 text-sm md:text-base lg:text-lg",children:"Create your first product portal in minutes. Connect any physical product to a rich digital experience."})]}),s.jsxs("div",{className:"flex flex-col items-center md:items-end gap-4 flex-shrink-0",children:[s.jsx("div",{className:"grid grid-cols-3 gap-3",children:n.map(({icon:r,label:i,desc:a},o)=>s.jsxs("div",{className:"flex items-center gap-3 px-5 py-3 rounded-2xl bg-white/5 border border-white/10 backdrop-blur-sm hover:bg-white/10 hover:border-white/20 transition-all duration-300 hover:scale-105 group",style:{animationDelay:`${o*150}ms`},children:[s.jsx("div",{className:"w-10 h-10 rounded-xl bg-gradient-to-br from-blue-500/20 to-purple-500/20 flex items-center justify-center group-hover:from-blue-500/30 group-hover:to-purple-500/30 transition-all duration-300",children:s.jsx(r,{className:"w-5 h-5 text-cyan-300"})}),s.jsxs("div",{className:"text-left",children:[s.jsx("div",{className:"text-white text-sm font-semibold whitespace-nowrap",children:i}),s.jsx("div",{className:"text-white/40 text-xs whitespace-nowrap",children:a})]})]},i))}),s.jsx("div",{className:"grid grid-cols-3 gap-3 w-full",children:s.jsxs("button",{onClick:t,className:"col-span-2 col-start-2 group inline-flex items-center gap-3 bg-gradient-to-r from-blue-500 via-blue-600 to-purple-600 hover:from-blue-400 hover:via-blue-500 hover:to-purple-500 text-white font-semibold py-4 rounded-2xl transition-all duration-300 text-lg shadow-lg shadow-blue-500/25 hover:shadow-blue-500/40 hover:scale-105 justify-center",children:["Get Started Free",s.jsx(ue,{className:"w-5 h-5 transition-transform duration-300 group-hover:translate-x-1"})]})})]})]})]})})}),s.jsx("div",{className:"w-full flex justify-center py-2",children:s.jsx("div",{className:"w-2/3 max-w-2xl h-px bg-gradient-to-r from-transparent via-blue-500/30 to-transparent"})})]})},FL=()=>{const e=[{title:"Food & Beverage",image:"/images/food-beverage-hero.webp",bullets:["Ingredient & allergen transparency","Recipe & nutritional portals","GS1 Digital Link compliance"],link:"https://smartlinks.app/solutions/food-beverage"},{title:"Fashion & Apparel",image:"https://smartlinks.app/solutions/assets/apparel-hero-suit.CFv73eNq.webp",bullets:["Digital product passports","Care instructions & sustainability","Brand storytelling & engagement"],link:"https://smartlinks.app/solutions/clothing-apparel"},{title:"Health & Beauty",image:"https://smartlinks.app/solutions/assets/health-beauty-how-it-works-wellness.DmI4IJf6.webp",bullets:["Ingredient transparency & trust","Usage tips & tutorials","Loyalty & subscription offers"],link:"https://smartlinks.app/solutions/health-beauty"},{title:"Home & Lifestyle",image:"/images/home-lifestyle-hero.webp",bullets:["Product guides & setup assistance","Assembly & care instructions","Warranty & registration"],link:"https://smartlinks.app/solutions/home"},{title:"Household Electronics",image:"/images/household-electronics-hero.webp",bullets:["Smart product portals","Accessory cross-sells & reorders","Warranty & support"],link:"https://smartlinks.app/solutions/electrical"},{title:"Sports & Entertainment",image:"/images/sports-entertainment-hero.webp",bullets:["Authentication & provenance","Exclusive fan content","Collectibles & memorabilia"],link:"https://smartlinks.app/solutions/merchandise"}];return s.jsx("section",{className:"py-16 bg-transparent",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("h2",{className:"text-3xl sm:text-4xl font-bold text-white mb-3",children:"Enterprise Solutions Across Every Industry"}),s.jsx("p",{className:"text-white/60 text-base max-w-2xl mx-auto",children:"From consumer goods to household electronics â one platform, tailored for your sector."})]}),s.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto",children:e.map((t,n)=>s.jsxs("a",{href:t.link,target:"_blank",rel:"noopener noreferrer",className:"group bg-white/5 backdrop-blur-sm border border-white/10 rounded-xl overflow-hidden hover:bg-white/10 hover:border-white/20 transition-all duration-300 flex flex-col",children:[s.jsx("div",{className:"aspect-square w-full overflow-hidden bg-white/5",children:s.jsx(he,{src:t.image,alt:t.title,className:"w-full h-full object-contain group-hover:scale-105 transition-transform duration-500"})}),s.jsxs("div",{className:"p-5 flex flex-col flex-1",children:[s.jsx("h3",{className:"text-white font-semibold text-lg mb-3 group-hover:text-cyan-300 transition-colors",children:t.title}),s.jsx("ul",{className:"space-y-1.5 text-white/50 text-sm mb-4",children:t.bullets.map((r,i)=>s.jsxs("li",{className:"flex items-start gap-2",children:[s.jsx("span",{className:"text-cyan-400 mt-0.5",children:"â¢"}),r]},i))}),s.jsxs("span",{className:"mt-auto inline-flex items-center gap-1.5 text-cyan-400 text-sm font-medium group-hover:text-cyan-300 transition-colors",children:["Discover",s.jsx(ue,{className:"w-4 h-4 group-hover:translate-x-1 transition-transform"})]})]})]},n))}),s.jsx("div",{className:"text-center mt-8",children:s.jsxs("a",{href:"https://smartlinks.app/solutions/",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-white/60 hover:text-cyan-300 text-sm transition-colors",children:["Explore all solutions",s.jsx(ue,{className:"w-4 h-4"})]})})]})})},c4=()=>{const e=zt(),t=[{title:"Food & Beverages",image:"/lovable-uploads/366109d8-66d8-46c4-b16b-4eaaad439914.webp",gradient:"from-orange-200 to-orange-300",path:"/food-beverages"},{title:"Clothing & Apparel",image:"/lovable-uploads/64a92872-315c-4c80-9313-7d5da30f7d84.webp",gradient:"from-blue-600 to-blue-800",path:"/clothing-apparel"},{title:"Health & Beauty",image:"/lovable-uploads/c2c68664-8bea-4abc-a23d-ec404116cca5.webp",gradient:"from-purple-500 to-pink-500",path:"/health-beauty"}],n=a=>{a!=="#"&&(e(a),setTimeout(()=>{window.scrollTo(0,0)},0))},r=Array.from({length:15},(a,o)=>({id:o,size:Math.random()*6+3,left:Math.random()*100,top:Math.random()*100,delay:Math.random()*6,duration:Math.random()*4+3})),i=Array.from({length:8},(a,o)=>({id:o,left:Math.random()*100,top:Math.random()*100,delay:Math.random()*4,duration:Math.random()*3+2}));return s.jsxs("section",{id:"product-categories",className:"py-20 relative overflow-hidden",children:[s.jsxs("div",{className:"absolute inset-0 opacity-20",children:[s.jsx("div",{className:"absolute top-10 left-10 w-64 h-64 bg-blue-500 rounded-full blur-3xl op
747acity-30 animate-[float_6s_ease-in-out_infinite]"}),s.jsx("div",{className:"absolute bottom-20 right-20 w-48 h-48 bg-purple-500 rounded-full blur-3xl opacity-25 animate-[float_8s_ease-in-out_infinite_reverse]"}),s.jsx("div",{className:"absolute top-1/2 left-1/3 w-32 h-32 bg-green-500 rounded-full blur-3xl opacity-20 animate-[float_7s_ease-in-out_infinite]"}),s.jsx("div",{className:"absolute top-1/4 right-1/4 w-40 h-40 bg-orange-500 rounded-full blur-3xl opacity-15 animate-[float_9s_ease-in-out_infinite]"})]}),s.jsx("div",{className:"absolute inset-0 opacity-25",children:r.map(a=>s.jsx("div",{className:"absolute bg-blue-400/40 rounded-full",style:{width:`${a.size}px`,height:`${a.size}px`,left:`${a.left}%`,top:`${a.top}%`,animation:`float ${a.duration}s ease-in-out infinite`,animationDelay:`${a.delay}s`}},a.id))}),s.jsx("div",{className:"absolute inset-0 opacity-30",children:i.map(a=>s.jsx("div",{className:"absolute w-2 h-2",style:{left:`${a.left}%`,top:`${a.top}%`,animation:`sparkle ${a.duration}s ease-in-out infinite`,animationDelay:`${a.delay}s`},children:s.jsx("div",{className:"w-full h-full bg-white/60 transform rotate-45 rounded-sm"})},a.id))}),s.jsx("div",{className:"absolute top-16 left-8 opacity-10",children:s.jsx("div",{className:"grid grid-cols-8 gap-1",children:Array.from({length:64},(a,o)=>s.jsx("div",{className:"w-1 h-1 bg-white rounded-sm",style:{animation:"fade-cascade 4s ease-in-out infinite",animationDelay:`${o*.06%4}s`}},o))})}),s.jsx("div",{className:"absolute bottom-16 right-8 opacity-10",children:s.jsx("div",{className:"grid grid-cols-6 gap-1",children:Array.from({length:36},(a,o)=>s.jsx("div",{className:"w-1.5 h-1.5 bg-purple-300 rounded-sm",style:{animation:"fade-cascade 3.5s ease-in-out infinite",animationDelay:`${o*.08%3.5}s`}},o))})}),s.jsxs("div",{className:"container mx-auto px-6 relative z-10",children:[s.jsxs("div",{className:"text-center mb-16 animate-fade-in",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Self-Serve Solutions Ready in Minutes"}),s.jsx("p",{className:"text-white/70 text-lg mb-6",children:"No technical expertise required. No waiting for developers. Choose your industry, customise your product experience today."}),s.jsx("p",{className:"text-blue-300 text-base font-medium animate-pulse",children:"Click any button below to get started â"})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:t.map((a,o)=>s.jsxs("div",{className:"group relative overflow-hidden rounded-2xl aspect-[4/3] cursor-pointer transform transition-all duration-500 hover:scale-105 hover:shadow-2xl animate-fade-in",style:{animationDelay:`${o*.2}s`},onClick:()=>n(a.path),children:[a.title==="Food & Beverages"?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:`absolute inset-0 bg-gradient-to-br ${a.gradient} opacity-50`}),s.jsx(he,{src:a.image,alt:"Grandéo Tomato Basil pasta sauce jar with SmartLinks mobile app interface",className:"absolute inset-0 w-full h-full object-contain z-10"})]}):a.title==="Clothing & Apparel"?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:`absolute inset-0 bg-gradient-to-br ${a.gradient} opacity-50`}),s.jsx(he,{src:a.image,alt:"Bespoke Tailors suit with SmartLinks mobile app interface",className:"absolute inset-0 w-full h-full object-cover z-10"})]}):a.title==="Health & Beauty"?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:`absolute inset-0 bg-gradient-to-br ${a.gradient} opacity-50`}),s.jsx(he,{src:a.image,alt:"Luxiana Volume Shampoo with SmartLinks mobile app interface",className:"absolute inset-0 w-full h-full object-contain z-10"})]}):s.jsx("div",{className:`absolute inset-0 bg-gradient-to-br ${a.gradient} opacity-80`}),s.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-32 bg-gradient-to-t from-black/80 via-black/60 to-transparent z-20"}),s.jsxs("div",{className:"absolute bottom-6 left-6 text-white z-30",children:[s.jsx("h3",{className:"text-2xl font-bold mb-3 transform group-hover:translate-x-2 transition-transform duration-300",children:a.title}),s.jsx("div",{className:"text-base opacity-90 font-medium transform group-hover:translate-x-2 transition-transform duration-300 delay-75",children:"Get Started â"})]}),s.jsx("div",{className:"absolute inset-0 bg-white/5 opacity-0 group-hover:opacity-100 transition-all duration-300 z-20"}),s.jsx("div",{className:"absolute inset-0 ring-2 ring-white/20 ring-opacity-0 group-hover:ring-opacity-100 transition-all duration-300 rounded-2xl z-30"}),s.jsx("div",{className:"absolute inset-0 opacity-0 group-hover:opacity-100 transition-opacity duration-500 z-25",children:s.jsx("div",{className:"absolute inset-0 bg-gradient-to-r from-transparent via-white/10 to-transparent transform -skew-x-12 animate-[shimmer_2s_ease-in-out_infinite]"})})]},o))})]}),s.jsx("style",{children:` 748 @keyframes float { 749 0%, 100% { transform: translateY(0px) rotate(0deg); } 750 33% { transform: translateY(-10px) rotate(1deg); } 751 66% { transform: translateY(5px) rotate(-1deg); } 752 } 753 754 @keyframes sparkle { 755 0%, 100% { opacity: 0; transform: scale(0) rotate(0deg); } 756 50% { opacity: 1; transform: scale(1) rotate(180deg); } 757 } 758 759 @keyframes fade-cascade { 760 0%, 70% { opacity: 0; transform: scale(0.8); } 761 85% { opacity: 1; transform: scale(1.1); } 762 100% { opacity: 0; transform: scale(1); } 763 } 764 765 @keyframes shimmer { 766 0% { transform: translateX(-100%) skewX(-12deg); } 767 100% { transform: translateX(200%) skewX(-12deg); } 768 } 769 `})]})},d4=()=>{const e=[{number:"01",title:"Generate",description:"Create GS1 Digital Link QR code for your product."},{number:"02",title:"Integrate",description:"Seamlessly incorporate QR codes into your product & packaging design."},{number:"03",title:"Connect",description:"Link to dynamic content, from product stories to exclusive offers."},{number:"04",title:"Engage",description:"Activate consumers with interactive digital experiences & enhanced product information."},{number:"05",title:"Analyse",description:"Gain valuable insights from scan data and consumer interactions."}];return s.jsx("section",{className:"py-12 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid lg:grid-cols-2 gap-8 lg:gap-12 items-start mb-8 lg:mb-12",children:[s.jsx("div",{children:s.jsxs("h2",{className:"text-3xl sm:text-4xl lg:text-5xl xl:text-6xl font-bold text-white leading-tight",children:["Get Ahead",s.jsx("br",{}),"with SmartLinks"]})}),s.jsx("div",{className:"flex items-start justify-start lg:justify-end",children:s.jsx("p",{className:"text-white text-base sm:text-lg leading-relaxed max-w-md",children:"SmartLinks⢠from Prove Anything creates dynamic portals of digital product information and engagement around your products. Give every product a digital voice."})})]}),s.jsxs("div",{className:"block lg:hidden space-y-8",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-full max-w-sm",children:s.jsx("img",{src:"/lovable-uploads/da5c811d-39d6-4aba-9328-4ede9f645e00.webp",alt:"Transform your products & packaging into an interactive experience in 5 simple steps",className:"w-full h-auto object-contain"})})}),s.jsxs("div",{className:"space-y-4",children:[s.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:e.slice(0,2).map((t,n)=>s.jsxs("div",{className:"bg-black/40 rounded-2xl p-4 sm:p-6 border border-white/10",children:[s.jsx("div",{className:"mb-3",children:s.jsx("span",{className:"text-white/40 text-2xl sm:text-3xl lg:text-4xl font-light",children:t.number})}),s.jsx("h3",{className:"text-lg sm:text-xl font-bold text-white mb-2 sm:mb-3",children:t.title}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:t.description})]},n))}),s.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-3 gap-4",children:e.slice(2).map((t,n)=>s.jsxs("div",{className:"bg-black/40 rounded-2xl p-4 border border-white/10",children:[s.jsx("div",{className:"mb-2",children:s.jsx("span",{className:"text-white/40 text-xl sm:text-2xl font-light",children:t.number})}),s.jsx("h3",{className:"text-base sm:text-lg font-bold text-white mb-2",children:t.title}),s.jsx("p",{className:"text-white/70 text-xs sm:text-sm leading-relaxed",children:t.description})]},n+2))})]})]}),s.jsxs("div",{className:"hidden lg:grid lg:grid-cols-3 gap-12 items-start",children:[s.jsx("div",{className:"lg:col-span-1",children:s.jsx("div",{className:"h-[400px] flex items-center justify-center",children:s.jsx("img",{alt:"Transform your products & packaging into an interactive experience in 5 simple steps",className:"w-full h-full object-contain",src:"/lovable-uploads/78e9373e-c8fe-4e09-ba53-d5878ed0e8b8.webp"})})}),s.jsx("div",{className:"lg:col-span-2 h-[400px]",children:s.jsxs("div",{className:"space-y-4 h-full flex flex-col",children:[s.jsx("div",{className:"grid grid-cols-2 gap-6 h-[240px]",children:e.slice(0,2).map((t,n)=>s.jsxs("div",{className:"bg-black/40 rounded-2xl p-4 border border-white/10 flex flex-col justify-center h-full",children:[s.jsx("div",{className:"mb-3",children:s.jsx("span",{className:"text-white/40 text-3xl font-light",children:t.number})}),s.jsx("h3",{className:"text-lg font-bold text-white mb-2",children:t.title}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:t.description})]},n))}),s.jsx("div",{className:"grid grid-cols-3 gap-4 h-[140px]",children:e.slice(2).map((t,n)=>s.jsxs("div",{className:"bg-black/40 rounded-2xl p-3 border border-white/10 flex flex-col justify-center h-full",children:[s.jsx("div",{className:"mb-2",children:s.jsx("span",{className:"text-white/40 text-xl font-light",children:t.number})}),s.jsx("h3",{className:"text-base font-bold text-white mb-1",children:t.title}),s.jsx("p",{className:"text-white/70 text-xs leading-relaxed",children:t.description})]},n+2))})]})})]})]})})},u4=[{icon:ke,label:"Consumer Engagement",title:"Turn Every Scan Into a Conversation",description:"Create meaningful connections through interactive experiences.",points:["Competitions & loyalty","Exclusive content & offers","Rich media experiences"]},{icon:_0,label:"Connected Commerce",title:"Turn Products Into Points of Sale",description:"Drive revenue directly from your packaging.",points:["Repurchase & subscription triggers","Upsell & cross-sell at the product","Spare parts, accessories & c
769onsumables"]},{icon:p_,label:"Digital Product Passports",title:"EU-Compliant Product Lifecycle Data",description:"Meet regulatory requirements with automated digital passports.",points:["ESPR & DPP compliance","Automated from PIM data","Real-time updates"]},{icon:nt,label:"GS1 Digital Link QR",title:"Standards-Compliant Smart QR Codes",description:"Future-proof your products with GS1 Digital Link QR codes.",points:["Sunrise 2027 ready","Dynamic content routing","One code for every touchpoint"]},{icon:Jt,label:"Anti-Counterfeiting",title:"Verify Authenticity Instantly",description:"Protect your brand with advanced authentication technology.",points:["Multi-layer authentication","Scan-based verification","Brand protection"]},{icon:ii,label:"Analytics & Traceability",title:"Track, Measure, and Optimise",description:"Full visibility from supply chain to consumer interaction.",points:["Location-based scan data & consumer insights","Campaign performance analytics","End-to-end supply chain traceability"]}],$L=()=>s.jsx("section",{className:"py-16",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("h2",{className:"text-3xl md:text-4xl font-bold text-white mb-4",children:"What Can SmartLinks Do For You?"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Six capabilities that power every connected product."})]}),s.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto",children:u4.map((e,t)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl border border-white/10 p-5 hover:bg-white/10 hover:border-white/20 transition-all duration-300",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[s.jsx("div",{className:"w-10 h-10 bg-gradient-to-r from-blue-500 to-purple-600 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(e.icon,{className:"w-5 h-5 text-white"})}),s.jsx("span",{className:"text-xs font-semibold text-white/50 uppercase tracking-wide",children:e.label})]}),s.jsx("h3",{className:"text-white font-semibold text-base mb-1.5 leading-snug",children:e.title}),s.jsx("p",{className:"text-white/50 text-sm mb-3",children:e.description}),s.jsx("ul",{className:"space-y-1",children:e.points.map((n,r)=>s.jsxs("li",{className:"flex items-start gap-2",children:[s.jsx("span",{className:"text-cyan-400 mt-0.5",children:"â¢"}),s.jsx("span",{className:"text-white/60 text-sm",children:n})]},r))})]},t))})]})}),BL="/assets/smartlinks-hub-hero-_eE2CWj1.jpg",zL=[{title:"One platform, not seven+",description:"Replace a fragmented stack of after-sale tools with a single system"},{title:"Always in sync",description:"Update product content once, reflect everywhere instantly"},{title:"Built for connected products",description:"Designed from the ground up for physical-to-digital"}],UL=()=>s.jsx("section",{className:"py-12 bg-transparent",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsx("div",{className:"bg-white/5 backdrop-blur-sm border border-white/10 rounded-xl p-8 md:p-10",children:s.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8 items-center",children:[s.jsxs("div",{className:"text-center md:text-left",children:[s.jsx("h2",{className:"text-2xl sm:text-3xl font-bold text-white mb-4",children:"SmartLinks Hub"}),s.jsx("p",{className:"text-white/60 text-sm sm:text-base max-w-xl mb-6 leading-relaxed",children:"A centralised platform that replaces the patchwork of 7+ tools businesses rely on to manage the after-sale customer journey â landing pages, content platforms, asset libraries, communication tools, analytics dashboards, loyalty programmes, and more."}),s.jsx("div",{className:"grid grid-cols-1 gap-3 mb-6",children:zL.map((e,t)=>s.jsxs("div",{className:"bg-white/5 border border-white/10 rounded-lg p-3",children:[s.jsx("h3",{className:"text-white font-semibold text-sm mb-0.5",children:e.title}),s.jsx("p",{className:"text-white/50 text-xs",children:e.description})]},t))}),s.jsxs("a",{href:"https://smartlinks.app/solutions/hub",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-cyan-400 hover:text-cyan-300 text-sm font-medium transition-colors",children:["Explore SmartLinks Hub",s.jsx(ue,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("img",{src:BL,alt:"SmartLinks Hub platform interface showing unified dashboard across devices",className:"w-full max-w-md rounded-lg shadow-2xl shadow-purple-500/10",loading:"lazy"})})]})})})}),h4=()=>{const e=zt();return s.jsx("section",{className:"py-12 bg-transparent",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-6 items-center",children:[s.jsxs("div",{className:"lg:col-span-5 text-white",children:[s.jsx("h2",{className:"text-2xl font-bold mb-3",children:"SmartLinks is a GS1 UK approved partner"}),s.jsx("p",{className:"text-white/70 text-base leading-relaxed mb-4",children:"As an approved GS1 UK partner, SmartLinks meets the highest industry standards for product identification and data sharing. Our solutions are built on globally recognised standards that ensure interoperability and trust."}),s.jsxs("div",{className:"space-y-2 mb-4",children:[s.jsxs("div",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-1.5 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-sm mb-0.5",children:"Certified Standards Compliance"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Full compliance with GS1 standards for global product identification"})]})]}),s.jsxs("div",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-1.5 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-sm mb-0.5",children:"Trusted Partnership"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Verified partnership ensuring quality and reliability"})]})]}),s.jsxs("div",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-1.5 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-sm mb-0.5",children:"Global Interoperability"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Solutions that work seamlessly across international markets"})]})]})]}),s.jsx(H,{onClick:()=>e("/gs1-digital-link"),className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-5 py-2 rounded-lg font-semibold text-sm",children:"Learn More About GS1 Digital Link"})]}),s.jsx("div",{className:"lg:col-span-5",children:s.jsx("div",{className:"bg-gray-900/30 backdrop-blur-sm rounded-xl p-5 border border-gray-800",children:s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"flex-shrink-0",children:s.jsx(he,{src:"/lovable-uploads/a8e233a5-0bd7-4eed-bfc5-60e29bd0c00e.webp",alt:"Anne Godfrey, CEO of GS1 UK",className:"w-16 h-16 rounded-full object-cover"})}),s.jsxs("div",{className:"flex-1",children:[s.jsx("blockquote",{className:"text-white/90 text-sm leading-relaxed mb-3 italic",children:'"The global transition from the trusty barcode to QR codes powered by GS1 marks the beginning of a new era of transparency, connecting products with consumers, supply chains and regulators like never before. At GS1 UK, we are committed to supporting businesses through this transformation, and SmartLinks is playing a vital role in making adoption simple and scalable. Their new self-serve platform is a significant step forward, enabling brands of all sizes to future-proof their product strategies, enhance consumer engagement and meet evolving regulatory requirements with confidence."'}),s.jsxs("div",{className:"text-blue-300 font-semibold text-sm",children:[s.jsx("div",{children:"Anne Godfrey"}),s.jsx("div",{className:"text-white/60 font-normal text-xs",children:"CEO of GS1 UK"})]})]})]})})}),s.jsx("div",{className:"lg:col-span-2 flex justify-center lg:justify-center",children:s.jsx(he,{src:"/lovable-uploads/f0ef57a3-9f2f-4ecc-b17e-c3a8bd9afe3e.webp",alt:"GS1 UK Approved certification badge",className:"w-full h-auto max-w-[140px]"})})]})})})},Zc=()=>{const e=()=>{window.open("https://smartlinks.app/solutions/","_blank")};return s.jsx("section",{className:"py-12 px-6",children:s.jsx("div",{className:"container mx-auto max-w-4xl",children:s.jsxs("div",{className:"relative bg-white/5 backdrop-blur-sm border border-white/10 rounded-2xl p-8 md:p-10 text-center overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 -z-10",children:s.jsx("div",{className:"absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 w-72 h-72 bg-gradient-to-r from-purple-500/10 to-cyan-500/10 rounded-full blur-3xl"})}),s.jsxs("div",{className:"flex items-center justify-center gap-3 mb-4",children:[s.jsx("div",{className:"bg-white/10 rounded-full p-2.5 border border-white/20",children:s.jsx(da,{className:"w-5 h-5 text-white"})}),s.jsxs("h2",{className:"text-2xl md:text-3xl font-bold text-white",children:["Ready for"," ",s.jsx("span",{className:"bg-gradient-to-r from-cyan-300 to-blue-400 bg-clip-text text-transparent",children:"Enterprise Scale?"})]})]}),s.jsx("p",{className:"text-white/70 text-base md:text-lg mb-6 max-w-2xl mx-auto leading-relaxed",children:"Seamless integration, advanced analytics, and dedicated support for your entire product ecosystem."}),s.jsxs(H,{onClick:e,className:"bg-gradient-to-r from-purple-600 to-cyan-600 hover:from-purple-700 hover:to-cyan-700 text-white font-semibold px-6 py-3 rounded-xl transition-all duration-300 hover:scale-105 border-0",children:["Explore Enterprise Solutions",s.jsx(ue,{className:"ml-2 w-4 h-4"})]})]})})})},VL=()=>{const e=[{name:"Fan Connect",url:"https://www.fanconnect.co/",description:"Digital fan engagement platform connecting sports teams, clubs, and organisations with their communities through innovative technology solutions.",icon:"/lovable-uploads/71b22cd5-619c-43d7-8b9f-14fa44ece43a.webp",sectors:["Sports Teams","Music","Esports"],accentFrom:"from-purple-500/20",accentTo:"to-pink-500/20",badgeGradient:"from-purple-500/25 to-pink-500/25",borderHover:"hover:border-purple-400/50 hover:shadow-
769purple-500/20",bulletColor:"text-purple-400",bullets:[{bold:"Fan-first experiences",rest:"NFC-enabled merchandise turns every jersey, scarf, and ticket into a digital touchpoint"},{bold:"Exclusive content unlocks",rest:"Fans tap to access behind-the-scenes videos, player messages, and limited drops"},{bold:"Community & loyalty",rest:"Build lasting fan relationships with rewards, competitions, and personalised engagement"},{bold:"Rights-holder ready",rest:"Purpose-built for sports teams, music artists, esports orgs, and live events"}]},{name:"KeepTags",url:"https://www.keeptags.com/",description:"KeepTags uses NFC + QR tags to bring physical items to life for consumers, unlocking product data, experiences, and value from a single tap.",icon:"/lovable-uploads/7f03a21e-c9f2-4462-98cc-d8b15483104e.webp",sectors:["Retail Operations","Consumer Engagement","Product Information"],accentFrom:"from-blue-500/20",accentTo:"to-cyan-500/20",badgeGradient:"from-blue-500/25 to-cyan-500/25",borderHover:"hover:border-blue-400/50 hover:shadow-blue-500/20",bulletColor:"text-blue-400",bullets:[{bold:"Tap-to-discover",rest:"Consumers scan any tagged product to instantly access rich product information and stories"},{bold:"Retail operations",rest:"Streamline stock management, authentication, and product tracking at scale"},{bold:"Consumer engagement",rest:"Drive post-purchase interaction with warranty registration, care guides, and reorder prompts"},{bold:"Works with any product",rest:"From fashion and electronics to food and homeware â one tag platform for all categories"}]}];return s.jsxs("section",{id:"platform-features",className:"py-12 bg-transparent relative overflow-hidden",children:[s.jsx("style",{children:` 770 @keyframes float-orb { 771 0%, 100% { transform: translate(0, 0) scale(1); } 772 33% { transform: translate(30px, -20px) scale(1.1); } 773 66% { transform: translate(-20px, 15px) scale(0.95); } 774 } 775 @keyframes sparkle-fade { 776 0%, 100% { opacity: 0; transform: scale(0.5); } 777 50% { opacity: 0.8; transform: scale(1); } 778 } 779 `}),s.jsx("div",{className:"absolute top-10 left-1/4 w-72 h-72 bg-purple-600/15 rounded-full blur-3xl",style:{animation:"float-orb 8s ease-in-out infinite"}}),s.jsx("div",{className:"absolute bottom-10 right-1/4 w-64 h-64 bg-blue-600/15 rounded-full blur-3xl",style:{animation:"float-orb 10s ease-in-out infinite 2s"}}),s.jsx("div",{className:"absolute top-1/2 left-1/2 w-48 h-48 bg-pink-600/10 rounded-full blur-3xl",style:{animation:"float-orb 12s ease-in-out infinite 4s"}}),Array.from({length:12},(t,n)=>s.jsx("div",{className:"absolute w-1.5 h-1.5 bg-white/40 rounded-full",style:{left:`${10+Math.random()*80}%`,top:`${10+Math.random()*80}%`,animation:`sparkle-fade ${3+Math.random()*3}s ease-in-out infinite ${Math.random()*4}s`}},n)),s.jsxs("div",{className:"container mx-auto px-6 relative z-10",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Explore Our Platform Family"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"Discover two specialised platforms â each built for a different audience, both powered by the same physical-to-digital technology."})]}),s.jsx("div",{className:"grid lg:grid-cols-2 gap-8 mb-8",children:e.map((t,n)=>s.jsxs("div",{className:`bg-gradient-to-br from-purple-900/40 via-gray-900/60 to-blue-900/40 backdrop-blur-sm rounded-xl p-10 border border-white/10 ${t.borderHover} hover:shadow-lg hover:scale-[1.02] transition-all duration-300 group`,children:[s.jsx("div",{className:"flex items-center justify-center mb-4",children:s.jsx("div",{className:"w-56 h-28 flex items-center justify-center",children:s.jsx("img",{src:t.icon,alt:`${t.name} Logo`,className:`max-h-full max-w-full object-contain ${t.name==="Fan Connect"?"max-h-[120%] max-w-[120%]":""}`,loading:"lazy"})})}),s.jsx("div",{className:"flex justify-center mb-5",children:s.jsxs(H,{variant:"ghost",size:"default",onClick:()=>window.open(t.url,"_blank"),className:"text-blue-300 hover:text-blue-200 text-base font-medium",children:["Visit Platform ",s.jsx(Pk,{className:"w-4 h-4 ml-1"})]})}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white/80 text-sm leading-relaxed mb-5",children:t.description}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("div",{className:"text-white/50 text-xs font-medium tracking-wider",children:"KEY SECTORS"}),s.jsx("div",{className:"flex flex-wrap gap-2",children:t.sectors.map((r,i)=>s.jsx("div",{className:`text-white/90 text-xs bg-gradient-to-r ${t.badgeGradient} border border-white/10 px-3 py-1.5 rounded-full shadow-sm`,children:r},i))})]})]}),s.jsx("div",{className:"space-y-3",children:t.bullets.map((r,i)=>s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx(Ar,{className:`w-4 h-4 mt-0.5 shrink-0 ${t.bulletColor}`}),s.jsxs("p",{className:"text-sm text-white/80 leading-snug",children:[s.jsx("span",{className:"font-semibold text-white",children:r.bold})," â ",r.rest]})]},i))})]})]},n))})]})]})},fn=x.forwardRef(({className:e,type:t,...n},r)=>s.jsx("input",{type:t,className:J("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:r,...n}));fn.displayName="Input";const _o=x.forwardRef(({className:e,...t},n)=>s.jsx("textarea",{className:J("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
779ing-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...t}));_o.displayName="Textarea";function ww(e,[t,n]){return Math.min(n,Math.max(t,e))}var WL=x.createContext(void 0);function HL(e){const t=x.useContext(WL);return e||t||"ltr"}var bp=0;function sv(){x.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??jw()),document.body.insertAdjacentElement("beforeend",e[1]??jw()),bp++,()=>{bp===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),bp--}},[])}function jw(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var wp="focusScope.autoFocusOnMount",jp="focusScope.autoFocusOnUnmount",Nw={bubbles:!1,cancelable:!0},GL="FocusScope",lm=x.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[l,c]=x.useState(null),d=pn(i),u=pn(a),h=x.useRef(null),m=Re(t,f=>c(f)),p=x.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;x.useEffect(()=>{if(r){let f=function(w){if(p.paused||!l)return;const j=w.target;l.contains(j)?h.current=j:ur(h.current,{select:!0})},b=function(w){if(p.paused||!l)return;const j=w.relatedTarget;j!==null&&(l.contains(j)||ur(h.current,{select:!0}))},v=function(w){if(document.activeElement===document.body)for(const N of w)N.removedNodes.length>0&&ur(l)};document.addEventListener("focusin",f),document.addEventListener("focusout",b);const y=new MutationObserver(v);return l&&y.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",f),document.removeEventListener("focusout",b),y.disconnect()}}},[r,l,p.paused]),x.useEffect(()=>{if(l){Sw.add(p);const f=document.activeElement;if(!l.contains(f)){const v=new CustomEvent(wp,Nw);l.addEventListener(wp,d),l.dispatchEvent(v),v.defaultPrevented||(qL(JL(m4(l)),{select:!0}),document.activeElement===f&&ur(l))}return()=>{l.removeEventListener(wp,d),setTimeout(()=>{const v=new CustomEvent(jp,Nw);l.addEventListener(jp,u),l.dispatchEvent(v),v.defaultPrevented||ur(f??document.body,{select:!0}),l.removeEventListener(jp,u),Sw.remove(p)},0)}}},[l,d,u,p]);const g=x.useCallback(f=>{if(!n&&!r||p.paused)return;const b=f.key==="Tab"&&!f.altKey&&!f.ctrlKey&&!f.metaKey,v=document.activeElement;if(b&&v){const y=f.currentTarget,[w,j]=KL(y);w&&j?!f.shiftKey&&v===j?(f.preventDefault(),n&&ur(w,{select:!0})):f.shiftKey&&v===w&&(f.preventDefault(),n&&ur(j,{select:!0})):v===y&&f.preventDefault()}},[n,r,p.paused]);return s.jsx(ye.div,{tabIndex:-1,...o,ref:m,onKeyDown:g})});lm.displayName=GL;function qL(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(ur(r,{select:t}),document.activeElement!==n)return}function KL(e){const t=m4(e),n=kw(t,e),r=kw(t.reverse(),e);return[n,r]}function m4(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function kw(e,t){for(const n of e)if(!QL(n,{upTo:t}))return n}function QL(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function YL(e){return e instanceof HTMLInputElement&&"select"in e}function ur(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&YL(e)&&t&&e.select()}}var Sw=XL();function XL(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=Cw(e,t),e.unshift(t)},remove(t){var n;e=Cw(e,t),(n=e[0])==null||n.resume()}}}function Cw(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function JL(e){return e.filter(t=>t.tagName!=="A")}function ZL(e){const t=x.useRef({value:e,previous:e});return x.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var eI=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},ga=new WeakMap,$d=new WeakMap,Bd={},Np=0,p4=function(e){return e&&(e.host||p4(e.parentNode))},tI=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=p4(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},nI=function(e,t,n,r){var i=tI(t,Array.isArray(e)?e:[e]);Bd[n]||(Bd[n]=new WeakMap);var a=Bd[n],o=[],l=new Set,c=new Set(i),d=function(h){!h||l.has(h
vendor: 6,452 bytes, lines 779-794
779)||(l.add(h),d(h.parentNode))};i.forEach(d);var u=function(h){!h||c.has(h)||Array.prototype.forEach.call(h.children,function(m){if(l.has(m))u(m);else try{var p=m.getAttribute(r),g=p!==null&&p!=="false",f=(ga.get(m)||0)+1,b=(a.get(m)||0)+1;ga.set(m,f),a.set(m,b),o.push(m),f===1&&g&&$d.set(m,!0),b===1&&m.setAttribute(n,"true"),g||m.setAttribute(r,"true")}catch(v){console.error("aria-hidden: cannot operate on ",m,v)}})};return u(t),l.clear(),Np++,function(){o.forEach(function(h){var m=ga.get(h)-1,p=a.get(h)-1;ga.set(h,m),a.set(h,p),m||($d.has(h)||h.removeAttribute(r),$d.delete(h)),p||h.removeAttribute(n)}),Np--,Np||(ga=new WeakMap,ga=new WeakMap,$d=new WeakMap,Bd={})}},rv=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),i=eI(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll("[aria-live]"))),nI(r,i,n,"aria-hidden")):function(){return null}},ys=function(){return ys=Object.assign||function(t){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a])}return t},ys.apply(this,arguments)};function f4(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function sI(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var vu="right-scroll-bar-position",yu="width-before-scroll-bar",rI="with-scroll-bars-hidden",iI="--removed-body-scroll-bar-size";function kp(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function aI(e,t){var n=x.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var i=n.value;i!==r&&(n.value=r,n.callback(r,i))}}}})[0];return n.callback=t,n.facade}var oI=typeof window<"u"?x.useLayoutEffect:x.useEffect,Pw=new WeakMap;function lI(e,t){var n=aI(null,function(r){return e.forEach(function(i){return kp(i,r)})});return oI(function(){var r=Pw.get(n);if(r){var i=new Set(r),a=new Set(e),o=n.current;i.forEach(function(l){a.has(l)||kp(l,null)}),a.forEach(function(l){i.has(l)||kp(l,o)})}Pw.set(n,e)},[e]),n}function cI(e){return e}function dI(e,t){t===void 0&&(t=cI);var n=[],r=!1,i={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(a){var o=t(a,r);return n.push(o),function(){n=n.filter(function(l){return l!==o})}},assignSyncMedium:function(a){for(r=!0;n.length;){var o=n;n=[],o.forEach(a)}n={push:function(l){return a(l)},filter:function(){return n}}},assignMedium:function(a){r=!0;var o=[];if(n.length){var l=n;n=[],l.forEach(a),o=n}var c=function(){var u=o;o=[],u.forEach(a)},d=function(){return Promise.resolve().then(c)};d(),n={push:function(u){o.push(u),d()},filter:function(u){return o=o.filter(u),n}}}};return i}function uI(e){e===void 0&&(e={});var t=dI(null);return t.options=ys({async:!0,ssr:!1},e),t}var x4=function(e){var t=e.sideCar,n=f4(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return x.createElement(r,ys({},n))};x4.isSideCarExport=!0;function hI(e,t){return e.useMedium(t),x4}var g4=uI(),Sp=function(){},cm=x.forwardRef(function(e,t){var n=x.useRef(null),r=x.useState({onScrollCapture:Sp,onWheelCapture:Sp,onTouchMoveCapture:Sp}),i=r[0],a=r[1],o=e.forwardProps,l=e.children,c=e.className,d=e.removeScrollBar,u=e.enabled,h=e.shards,m=e.sideCar,p=e.noIsolation,g=e.inert,f=e.allowPinchZoom,b=e.as,v=b===void 0?"div":b,y=e.gapMode,w=f4(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),j=m,N=lI([n,t]),C=ys(ys({},w),i);return x.createElement(x.Fragment,null,u&&x.createElement(j,{sideCar:g4,removeScrollBar:d,shards:h,noIsolation:p,inert:g,setCallbacks:a,allowPinchZoom:!!f,lockRef:n,gapMode:y}),o?x.cloneElement(x.Children.only(l),ys(ys({},C),{ref:N})):x.createElement(v,ys({},C,{className:c,ref:N}),l))});cm.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};cm.classNames={fullWidth:yu,zeroRight:vu};var mI=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function pI(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=mI();return t&&e.setAttribute("nonce",t),e}function fI(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function xI(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var gI=function(){var e=0,t=null;return{add:function(n){e==0&&(t=pI())&&(fI(t,n),xI(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},vI=function(){var e=gI();return function(t,n){x.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},v4=function(){var e=vI(),t=function(n){var r=n.styles,i=n.dynamic;return e(r,i),null};return t},yI={left:0,top:0,right:0,gap:0},Cp=function(e){return parseInt(e||"",10)||0},bI=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],i=t[e==="padding"?"paddingRight":"marginRight"];return[Cp(n),Cp(r),Cp(i)]},wI=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return yI;var t=bI(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},jI=v4(),eo="data-scroll-locked",NI=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,l=e.gap;return n===void 0&&(n="margin"),` 780 .`.concat(rI,` { 781 overflow: hidden `).concat(r,`; 782 padding-right: `).concat(l,"px ").concat(r,`; 783 } 784 body[`).concat(eo,`] { 785 overflow: hidden `).concat(r,`; 786 overscroll-behavior: contain; 787 `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&` 788 padding-left: `.concat(i,`px; 789 padding-top: `).concat(a,`px; 790 padding-right: `).concat(o,`px; 791 margin-left:0; 792 margin-top:0; 793 margin-right: `).concat(l,"px ").concat(r,`; 794 `),n==="padding"&&"padding-right: ".concat(l,"px ").concat(r,";
794")].filter(Boolean).join(""),` 795 } 796 797 .`).concat(vu,` { 798 right: `).concat(l,"px ").concat(r,`; 799 } 800 801 .`).concat(yu,` { 802 margin-right: `).concat(l,"px ").concat(r,`; 803 } 804 805 .`).concat(vu," .").concat(vu,` { 806 right: 0 `).concat(r,`; 807 } 808 809 .`).concat(yu," .").concat(yu,` { 810 margin-right: 0 `).concat(r,`; 811 } 812 813 body[`).concat(eo,`] { 814 `).concat(iI,": ").concat(l,`px; 815 } 816`)},Ew=function(){var e=parseInt(document.body.getAttribute(eo)||"0",10);return isFinite(e)?e:0},kI=function(){x.useEffect(function(){return document.body.setAttribute(eo,(Ew()+1).toString()),function(){var e=Ew()-1;e<=0?document.body.removeAttribute(eo):document.body.setAttribute(eo,e.toString())}},[])},SI=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?"margin":r;kI();var a=x.useMemo(function(){return wI(i)},[i]);return x.createElement(jI,{styles:NI(a,!t,i,n?"":"!important")})},zx=!1;if(typeof window<"u")try{var zd=Object.defineProperty({},"passive",{get:function(){return zx=!0,!0}});window.addEventListener("test",zd,zd),window.removeEventListener("test",zd,zd)}catch{zx=!1}var va=zx?{passive:!1}:!1,CI=function(e){return e.tagName==="TEXTAREA"},y4=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!CI(e)&&n[t]==="visible")},PI=function(e){return y4(e,"overflowY")},EI=function(e){return y4(e,"overflowX")},Tw=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var i=b4(e,r);if(i){var a=w4(e,r),o=a[1],l=a[2];if(o>l)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},TI=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},_I=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},b4=function(e,t){return e==="v"?PI(t):EI(t)},w4=function(e,t){return e==="v"?TI(t):_I(t)},AI=function(e,t){return e==="h"&&t==="rtl"?-1:1},RI=function(e,t,n,r,i){var a=AI(e,window.getComputedStyle(t).direction),o=a*r,l=n.target,c=t.contains(l),d=!1,u=o>0,h=0,m=0;do{var p=w4(e,l),g=p[0],f=p[1],b=p[2],v=f-b-a*g;(g||v)&&b4(e,l)&&(h+=v,m+=g),l instanceof ShadowRoot?l=l.host:l=l.parentNode}while(!c&&l!==document.body||c&&(t.contains(l)||t===l));return(u&&(Math.abs(h)<1||!i)||!u&&(Math.abs(m)<1||!i))&&(d=!0),d},Ud=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},_w=function(e){return[e.deltaX,e.deltaY]},Aw=function(e){return e&&"current"in e?e.current:e},DI=function(e,t){return e[0]===t[0]&&e[1]===t[1]},MI=function(e){return` 817 .block-interactivity-`.concat(e,` {pointer-events: none;} 818 .allow-interactivity-`).concat(e,` {pointer-events: all;} 819`)},LI=0,ya=[];function II(e){var t=x.useRef([]),n=x.useRef([0,0]),r=x.useRef(),i=x.useState(LI++)[0],a=x.useState(v4)[0],o=x.useRef(e);x.useEffect(function(){o.current=e},[e]),x.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var f=sI([e.lockRef.current],(e.shards||[]).map(Aw),!0).filter(Boolean);return f.forEach(function(b){return b.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),f.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var l=x.useCallback(function(f,b){if("touches"in f&&f.touches.length===2||f.type==="wheel"&&f.ctrlKey)return!o.current.allowPinchZoom;var v=Ud(f),y=n.current,w="deltaX"in f?f.deltaX:y[0]-v[0],j="deltaY"in f?f.deltaY:y[1]-v[1],N,C=f.target,k=Math.abs(w)>Math.abs(j)?"h":"v";if("touches"in f&&k==="h"&&C.type==="range")return!1;var P=Tw(k,C);if(!P)return!0;if(P?N=k:(N=k==="v"?"h":"v",P=Tw(k,C)),!P)return!1;if(!r.current&&"changedTouches"in f&&(w||j)&&(r.current=N),!N)return!0;var _=r.current||N;return RI(_,b,f,_==="h"?w:j,!0)},[]),c=x.useCallback(function(f){var b=f;if(!(!ya.length||ya[ya.length-1]!==a)){var v="deltaY"in b?_w(b):Ud(b),y=t.current.filter(function(N){return N.name===b.type&&(N.target===b.target||b.target===N.shadowParent)&&DI(N.delta,v)}
vendor: 4,236 bytes, line 819
819)[0];if(y&&y.should){b.cancelable&&b.preventDefault();return}if(!y){var w=(o.current.shards||[]).map(Aw).filter(Boolean).filter(function(N){return N.contains(b.target)}),j=w.length>0?l(b,w[0]):!o.current.noIsolation;j&&b.cancelable&&b.preventDefault()}}},[]),d=x.useCallback(function(f,b,v,y){var w={name:f,delta:b,target:v,should:y,shadowParent:OI(v)};t.current.push(w),setTimeout(function(){t.current=t.current.filter(function(j){return j!==w})},1)},[]),u=x.useCallback(function(f){n.current=Ud(f),r.current=void 0},[]),h=x.useCallback(function(f){d(f.type,_w(f),f.target,l(f,e.lockRef.current))},[]),m=x.useCallback(function(f){d(f.type,Ud(f),f.target,l(f,e.lockRef.current))},[]);x.useEffect(function(){return ya.push(a),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:m}),document.addEventListener("wheel",c,va),document.addEventListener("touchmove",c,va),document.addEventListener("touchstart",u,va),function(){ya=ya.filter(function(f){return f!==a}),document.removeEventListener("wheel",c,va),document.removeEventListener("touchmove",c,va),document.removeEventListener("touchstart",u,va)}},[]);var p=e.removeScrollBar,g=e.inert;return x.createElement(x.Fragment,null,g?x.createElement(a,{styles:MI(i)}):null,p?x.createElement(SI,{gapMode:e.gapMode}):null)}function OI(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const FI=hI(g4,II);var dm=x.forwardRef(function(e,t){return x.createElement(cm,ys({},e,{ref:t,sideCar:FI}))});dm.classNames=cm.classNames;var $I=[" ","Enter","ArrowUp","ArrowDown"],BI=[" ","Enter"],ed="Select",[um,hm,zI]=ek(ed),[Go,$K]=Vc(ed,[zI,Wo]),mm=Wo(),[UI,li]=Go(ed),[VI,WI]=Go(ed),j4=e=>{const{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:l,onValueChange:c,dir:d,name:u,autoComplete:h,disabled:m,required:p,form:g}=e,f=mm(t),[b,v]=x.useState(null),[y,w]=x.useState(null),[j,N]=x.useState(!1),C=HL(d),[k=!1,P]=pc({prop:r,defaultProp:i,onChange:a}),[_,T]=pc({prop:o,defaultProp:l,onChange:c}),R=x.useRef(null),L=b?g||!!b.closest("form"):!0,[W,D]=x.useState(new Set),V=Array.from(W).map(z=>z.props.value).join(";");return s.jsx(mS,{...f,children:s.jsxs(UI,{required:p,scope:t,trigger:b,onTriggerChange:v,valueNode:y,onValueNodeChange:w,valueNodeHasChildren:j,onValueNodeHasChildrenChange:N,contentId:Bi(),value:_,onValueChange:T,open:k,onOpenChange:P,dir:C,triggerPointerDownPosRef:R,disabled:m,children:[s.jsx(um.Provider,{scope:t,children:s.jsx(VI,{scope:e.__scopeSelect,onNativeOptionAdd:x.useCallback(z=>{D(I=>new Set(I).add(z))},[]),onNativeOptionRemove:x.useCallback(z=>{D(I=>{const S=new Set(I);return S.delete(z),S})},[]),children:n})}),L?s.jsxs(q4,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:h,value:_,onChange:z=>T(z.target.value),disabled:m,form:g,children:[_===void 0?s.jsx("option",{value:""}):null,Array.from(W)]},V):null]})})};j4.displayName=ed;var N4="SelectTrigger",k4=x.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:r=!1,...i}=e,a=mm(n),o=li(N4,n),l=o.disabled||r,c=Re(t,o.onTriggerChange),d=hm(n),u=x.useRef("touch"),[h,m,p]=K4(f=>{const b=d().filter(w=>!w.disabled),v=b.find(w=>w.value===o.value),y=Q4(b,f,v);y!==void 0&&o.onValueChange(y.value)}),g=f=>{l||(o.onOpenChange(!0),p()),f&&(o.triggerPointerDownPosRef.current={x:Math.round(f.pageX),y:Math.round(f.pageY)})};return s.jsx(nm,{asChild:!0,...a,children:s.jsx(ye.button,{type:"button",role:"combobox","aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":"none",dir:o.dir,"data-state":o.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":G4(o.value)?"":void 0,...i,ref:c,onClick:se(i.onClick,f=>{f.currentTarget.focus(),u.current!=="mouse"&&g(f)}),onPointerDown:se(i.onPointerDown,f=>{u.current=f.pointerType;const b=f.target;b.hasPointerCapture(f.pointerId)&&b.releasePointerCapture(f.pointerId),f.button===0&&f.ctrlKey===!1&&f.pointerType==="mouse"&&(g(f),f.preventDefault())}),onKeyDown:se(i.onKeyDown,f=>{const b=h.current!=="";!(f.ctrlKey||f.altKey||f.metaKey)&&f.key.length===1&&m(f.key),!(b&&f.key===" ")&&$I.includes(f.key)&&(g(),f.preventDefault())})})})});k4.displayName=N4;var S4="SelectValue",C4=x.forwardRef((e,t)=>
vendor: 15,423 bytes, line 819
819{const{__scopeSelect:n,className:r,style:i,children:a,placeholder:o="",...l}=e,c=li(S4,n),{onValueNodeHasChildrenChange:d}=c,u=a!==void 0,h=Re(t,c.onValueNodeChange);return Et(()=>{d(u)},[d,u]),s.jsx(ye.span,{...l,ref:h,style:{pointerEvents:"none"},children:G4(c.value)?s.jsx(s.Fragment,{children:o}):a})});C4.displayName=S4;var HI="SelectIcon",P4=x.forwardRef((e,t)=>{const{__scopeSelect:n,children:r,...i}=e;return s.jsx(ye.span,{"aria-hidden":!0,...i,ref:t,children:r||"â¼"})});P4.displayName=HI;var GI="SelectPortal",E4=e=>s.jsx(Wc,{asChild:!0,...e});E4.displayName=GI;var ea="SelectContent",T4=x.forwardRef((e,t)=>{const n=li(ea,e.__scopeSelect),[r,i]=x.useState();if(Et(()=>{i(new DocumentFragment)},[]),!n.open){const a=r;return a?la.createPortal(s.jsx(_4,{scope:e.__scopeSelect,children:s.jsx(um.Slot,{scope:e.__scopeSelect,children:s.jsx("div",{children:e.children})})}),a):null}return s.jsx(A4,{...e,ref:t})});T4.displayName=ea;var zn=10,[_4,ci]=Go(ea),qI="SelectContentImpl",A4=x.forwardRef((e,t)=>{const{__scopeSelect:n,position:r="item-aligned",onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:l,sideOffset:c,align:d,alignOffset:u,arrowPadding:h,collisionBoundary:m,collisionPadding:p,sticky:g,hideWhenDetached:f,avoidCollisions:b,...v}=e,y=li(ea,n),[w,j]=x.useState(null),[N,C]=x.useState(null),k=Re(t,G=>j(G)),[P,_]=x.useState(null),[T,R]=x.useState(null),L=hm(n),[W,D]=x.useState(!1),V=x.useRef(!1);x.useEffect(()=>{if(w)return rv(w)},[w]),sv();const z=x.useCallback(G=>{const[te,...Ne]=L().map($=>$.ref.current),[re]=Ne.slice(-1),X=document.activeElement;for(const $ of G)if($===X||($==null||$.scrollIntoView({block:"nearest"}),$===te&&N&&(N.scrollTop=0),$===re&&N&&(N.scrollTop=N.scrollHeight),$==null||$.focus(),document.activeElement!==X))return},[L,N]),I=x.useCallback(()=>z([P,w]),[z,P,w]);x.useEffect(()=>{W&&I()},[W,I]);const{onOpenChange:S,triggerPointerDownPosRef:M}=y;x.useEffect(()=>{if(w){let G={x:0,y:0};const te=re=>{var X,$;G={x:Math.abs(Math.round(re.pageX)-(((X=M.current)==null?void 0:X.x)??0)),y:Math.abs(Math.round(re.pageY)-((($=M.current)==null?void 0:$.y)??0))}},Ne=re=>{G.x<=10&&G.y<=10?re.preventDefault():w.contains(re.target)||S(!1),document.removeEventListener("pointermove",te),M.current=null};return M.current!==null&&(document.addEventListener("pointermove",te),document.addEventListener("pointerup",Ne,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",te),document.removeEventListener("pointerup",Ne,{capture:!0})}}},[w,S,M]),x.useEffect(()=>{const G=()=>S(!1);return window.addEventListener("blur",G),window.addEventListener("resize",G),()=>{window.removeEventListener("blur",G),window.removeEventListener("resize",G)}},[S]);const[U,O]=K4(G=>{const te=L().filter(X=>!X.disabled),Ne=te.find(X=>X.ref.current===document.activeElement),re=Q4(te,G,Ne);re&&setTimeout(()=>re.ref.current.focus())}),q=x.useCallback((G,te,Ne)=>{const re=!V.current&&!Ne;(y.value!==void 0&&y.value===te||re)&&(_(G),re&&(V.current=!0))},[y.value]),Z=x.useCallback(()=>w==null?void 0:w.focus(),[w]),de=x.useCallback((G,te,Ne)=>{const re=!V.current&&!Ne;(y.value!==void 0&&y.value===te||re)&&R(G)},[y.value]),ze=r==="popper"?Ux:R4,le=ze===Ux?{side:l,sideOffset:c,align:d,alignOffset:u,arrowPadding:h,collisionBoundary:m,collisionPadding:p,sticky:g,hideWhenDetached:f,avoidCollisions:b}:{};return s.jsx(_4,{scope:n,content:w,viewport:N,onViewportChange:C,itemRefCallback:q,selectedItem:P,onItemLeave:Z,itemTextRefCallback:de,focusSelectedItem:I,selectedItemText:T,position:r,isPositioned:W,searchRef:U,children:s.jsx(dm,{as:Gr,allowPinchZoom:!0,children:s.jsx(lm,{asChild:!0,trapped:y.open,onMountAutoFocus:G=>{G.preventDefault()},onUnmountAutoFocus:se(i,G=>{var te;(te=y.trigger)==null||te.focus({preventScroll:!0}),G.preventDefault()}),children:s.jsx(Bo,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:G=>G.preventDefault(),onDismiss:()=>y.onOpenChange(!1),children:s.jsx(ze,{role:"listbox",id:y.contentId,"data-state":y.open?"open":"closed",dir:y.dir,onContextMenu:G=>G.preventDefault(),...v,...le,onPlaced:()=>D(!0),ref:k,style:{display:"flex",flexDirection:"column",outline:"none",...v.style},onKeyDown:se(v.onKeyDown,G=>{const te=G.ctrlKey||G.altKey||G.metaKey;if(G.key==="Tab"&&G.preventDefault(),!te&&G.key.length===1&&O(G.key),["ArrowUp","ArrowDown","Home","End"].includes(G.key)){let re=L().filter(X=>!X.disabled).map(X=>X.ref.current);if(["ArrowUp","End"].includes(G.key)&&(re=re.slice().reverse()),["ArrowUp","ArrowDown"].includes(G.key)){const X=G.target,$=re.indexOf(X);re=re.slice($+1)}setTimeout(()=>z(re)),G.preventDefault()}})})})})})})});A4.displayName=qI;var KI="SelectItemAlignedPosition",R4=x.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:r,...i}=e,a=li(ea,n),o=ci(ea,n),[l,c]=x.useState(null),[d,u]=x.useState(null),h=Re(t,k=>u(k)),m=hm(n),p=x.useRef(!1),g=x.useRef(!0),{viewport:f,selectedItem:b,selectedItemText:v,focusSelectedItem:y}=o,w=x.useCallback(()=>{if(a.trigger&&a.valueNode&&l&&d&&f&&b&&v){const k=a.trigger.getBoundingClientRect(),P=d.getBoundingClientRect(),_=a.valueNode.getBoundingClientRect(),T=v.getBoundingClientRect();if(a.dir!=="rtl"){const X=T.left-P.left,$=_.left-X,ae=k.left-$,be=k.width+ae,Ue=Math.max(be,P.width),We=window.innerWidth-zn,ft=ww($,[zn,Math.max(zn,We-Ue)]);l.style.minWidth=be+"px",l.style.left=ft+"px"}else{const X=P.right-T.right,$=window.innerWidth-_.right-X,ae=window.innerWidth-k.right-$,be=k.width+ae,Ue=Math.max(be,P.width),We=window.innerWidth-zn,ft=ww($,[zn,Math.max(zn,We-Ue)]);l.style.minWidth=be+"px",l.style.right=ft+"px"}const R=m(),L=window.innerHeight-zn*2,W=f.scrollHeight,D=window.getComputedStyle(d),V=parseInt(D.borderTopWidth,10),z=parseInt(D.paddingTop,10),I=parseInt(D.borderBottomWidth,10),S=parseInt(D.paddingBottom,10),M=V+z+W+S+I,U=Math.min(b.offsetHeight*5,M),O=window.getComputedStyle(f),q=parseInt(O.paddingTop,10),Z=parseInt(O.paddingBottom,10),de=k.top+k.height/2-zn,ze=L-de,le=b.offsetHeight/2,G=b.offsetTop+le,te=V+z+G,Ne=M-te;if(te<=de){const X=R.length>0&&b===R[R.length-1].ref.current;l.style.bottom="0px";const $=d.clientHeight-f.offsetTop-f.offsetHeight,ae=Math.max(ze,le+(X?Z:0)+$+I),be=te+ae;l.style.height=be+"px"}else{const X=R.length>0&&b===R[0].ref.current;l.style.top="0px";const ae=Math.max(de,V+f.offsetTop+(X?q:0)+le)+Ne;l.style.height=ae+"px",f.scrollTop=te-de+f.offsetTop}l.style.margin=`${zn}px 0`,l.style.minHeight=U+"px",l.style.maxHeight=L+"px",r==null||r(),requestAnimationFrame(()=>p.current=!0)}},[m,a.trigger,a.valueNode,l,d,f,b,v,a.dir,r]);Et(()=>w(),[w]);const[j,N]=x.useState();Et(()=>{d&&N(window.getComputedStyle(d).zIndex)},[d]);const C=x.useCallback(k=>{k&&g.current===!0&&(w(),y==null||y(),g.current=!1)},[w,y]);return s.jsx(YI,{scope:n,contentWrapper:l,shouldExpandOnScrollRef:p,onScrollButtonChange:C,children:s.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:s.jsx(ye.div,{...i,ref:h,style:{boxSizing:"border-box",maxHeight:"100%",...i.style}})})})});R4.displayName=KI;var QI="SelectPopperPosition",Ux=x.forwardRef((e,t)=>{const{__scopeSelect:n,align:r="start",collisionPadding:i=zn,...a}=e,o=mm(n);return s.jsx(B0,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:"border-box",...a.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});Ux.displayName=QI;var[YI,iv]=Go(ea,{}),Vx="SelectViewport",D4=x.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:r,...i}=e,a=ci(Vx,n),o=iv(Vx,n),l=Re(t,a.onViewportChange),c=x.useRef(0);return s.jsxs(s.Fragment,{children:[s.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:r}),s.jsx(um.Slot,{scope:n,children:s.jsx(ye.div,{"data-radix-select-viewport":"",role:"presentation",...i,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...i.style},onScroll:se(i.onScroll,d=>{const u=d.currentTarget,{contentWrapper:h,shouldExpandOnScrollRef:m}=o;if(m!=null&&m.current&&h){const p=Math.abs(c.current-u.scrollTop);if(p>0){const g=window.innerHeight-zn*2,f=parseFloat(h.style.minHeight),b=parseFloat(h.style.height),v=Math.max(f,b);if(v<g){const y=v+p,w=Math.min(g,y),j=y-w;h.style.height=w+"px",h.style.bottom==="0px"&&(u.scrollTop=j>0?j:0,h.style.justifyContent="flex-end")}}}c.current=u.scrollTop})})})]})});D4.displayName=Vx;var M4="SelectGroup",[XI,JI]=Go(M4),ZI=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,i=Bi();return s.jsx(XI,{scope:n,id:i,children:s.jsx(ye.div,{role:"group","aria-labelledby":i,...r,ref:t})})});ZI.displayName=M4;var L4="SelectLabel",I4=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,i=JI(L4,n);return s.jsx(ye.div,{id:i.id,...r,ref:t})});I4.displayName=L4;var uh="SelectItem",[eO,O4]=Go(uh),F4=x.forwardRef((e,t)=>{const{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,l=li(uh,n),c=ci(uh,n),d=l.value===r,[u,h]=x.useState(a??""),[m,p]=x.useState(!1),g=Re(t,y=>{var w;return(w=c.itemRefCallback)==null?void 0:w.call(c,y,r,i)}),f=Bi(),b=x.useRef("touch"),v=()=>{i||(l.onValueChange(r),l.onOpenChange(!1))};if(r==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return s.jsx(eO,{scope:n,value:r,disabled:i,textId:f,isSelected:d,onItemTextChange:x.useCallback(y=>{h(w=>w||((y==null?void 0:y.textContent)??"").trim())},[]),children:s.jsx(um.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:s.jsx(ye.div,{role:"option","aria-labelledby":f,"data-highlighted":m?"":void 0,"aria-selected":d&&m,"data-state":d?"checked":"unchecked","aria-disabled":i||void 0,"data-disabled":i?"":void 0,tabIndex:i?void 0:-1,...o,ref:g,onFocus:se(o.onFocus,()=>p(!0)),onBlur:se(o.onBlur,()=>p(!1)),onClick:se(o.onClick,()=>{b.current!=="mouse"&&v()}),onPointerUp:se(o.onPointerUp,()=>{b.current==="mouse"&&v()}),onPointerDown:se(o.onPointerDown,y=>{b.current=y.pointerType}),onPointerMove:se(o.onPointerMove,y=>{var w;b.current=y.pointerType,i?(w=c.onItemLeave)==null||w.call(c):b.current==="mouse"&&y.currentTarget.focus({preventScroll:!0})}),onPointerLeave:se(o.onPointerLeave,y=>{var w;y.currentTarget===document.activeElement&&((w=c.onItemLeave)==null||w.call(c))}),onKeyDown:se(o.onKeyDown,y=>{var j;((j=c.searchRef)==null?void 0:j.current)!==""&&y.key===" "||(BI.includes(y.key)&&v(),y.key===" "&&y.preventDefault())})})})})});F4.displayName=uh;var El="SelectItemText",$4=x.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:i,...a}=e,o=li(El,n),l=ci(El,n),c=O4(El,n),d=WI(El,n),[u,h]=x.useState(null),m=Re(t,v=>h(v),c.onItemTextChange,v=>{var y;return(y=l.itemTextRefCallback)==null?void 0:y.call(l,v,c.value,c.disabled)}),p=u==null?void 0:u.textContent,g=x.useMemo(()=>s.jsx("option",{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:f,onNativeOptionRemove:b}=d;return Et(()=>(f(g),()=>b(g)),[f,b,g]),s.jsxs(s.Fragment,{children:[s.jsx(ye.span,{id:c.textId,...a,ref:m}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?la.createPortal(a.children,o.valueNode):null]})});$4.displayName=El;var B4="SelectItemIndicator",z4=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return O4(B4,n).isSelected?s.jsx(ye.span,{"aria-hidden":!0,...r,ref:t}):null});z4.displayName=B4;var Wx="SelectScrollUpButton",U4=x.forwardRef((e,t)=>{const n=ci(Wx,e.__scopeSelect),r=iv(Wx,e.__scopeSelect),[i,a]=x.useState(!1),o=Re(t,r.onScrollButtonChange);return Et(()=>{if(n.viewport&&n.isPositioned){let l=function(){const d=c.scrollTop>0;a(d)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),i?s.jsx(W4,{...e,ref:o,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop-c.offsetHeight)}}):null});U4.displayName=Wx;var Hx="SelectScrollDownButton",V4=x.forwardRef((e,t)=>{const n=ci(Hx,e.__scopeSelect),r=iv(Hx,e.__scopeSelect),[i,a]=x.useState(!1),o=Re(t,r.onScrollButtonChange);return Et(()=>{if(n.viewport&&n.isPositioned){let l=function(){const d=c.scrollHeight-c.clientHeight,u=Math.ceil(c.scrollTop)<d;a(u)};const c=n.viewport;return l(),c.addEventListener("scroll",l),()=>c.removeEventListener("scroll",l)}},[n.viewport,n.isPositioned]),i?s.jsx(W4,{...e,ref:o,onAutoScroll:()=>{const{viewport:l,selectedItem:c}=n;l&&c&&(l.scrollTop=l.scrollTop+c.offsetHeight)}}):null});V4.displayName=Hx;var W4=x.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:r,...i}=e,a=ci("SelectScrollButton",n),o=x.useRef(null),l=hm(n),c=x.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return x.useEffect(()=>()=>c(),[c]),Et(()=>{var u;const d=l().find(h=>h.ref.current===document.activeElement);(u=d==null?void 0:d.ref.current)==null||u.scrollIntoView({block:"nearest"})},[l]),s.jsx(ye.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:se(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:se(i.onPointerMove,()=>{var d;(d=a.onItemLeave)==null||d.call(a),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:se(i.onPointerLeave,()=>{c()})})}),tO="SelectSeparator",H4=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return s.jsx(ye.div,{"aria-hidden":!0,...r,ref:t})});H4.displayName=tO;var Gx="SelectArrow",nO=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,i=mm(n),a=li(Gx,n),o=ci(Gx,n);return a.open&&o.position==="popper"?s.jsx(z0,{...i,...r,ref:t}):null});nO.displayName=Gx;function G4(e){return e===""||e===void 0}var q4=x.forwardRef((e,t)=>{const{value:n,...r}=e,i=x.useRef(null),a=Re(t,i),o=ZL(n);return x.useEffect(()=>{const l=i.current,c=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(c,"value").set;if(o!==n&&u){const h=new Event("change",{bubbles:!0});u.call(l,n),l.dispatchEvent(h)}},[o,n]),s.jsx(Hc,{asChild:!0,children:s.jsx("select",{...r,ref:a,defaultValue:n})})});q4.displayName="BubbleSelect";function K4(e){const t=pn(e),n=x.useRef(""),r=x.useRef(0),i=x.useCallback(o=>{const l=n.current+o;t(l),function c(d){n.current=d,window.clearTimeout(r.current),d!==""&&(r.current=window.setTimeout(()=>c(""),1e3))}(l)},[t]),a=x.useCallback(()=>{n.current="",window.clearTimeout(r.current)},[]);return x.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function Q4(e,t,n){const i=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,a=n?e.indexOf(n):-1;let o=sO(e,Math.max(a,0));i.length===1&&(o=o.filter(d=>d!==n));const c=o.find(d=>d.textValue.toLowerCase().startsWith(i.toLowerCase()));return c!==n?c:void 0}function sO(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var rO=j4,Y4=k4,iO=C4,aO=P4,oO=E4,X4=T4,lO=D4,J4=I4,Z4=F4,cO=$4,dO=z4,eC=U4,tC=V4,nC=H4;const Ul=rO,Vl=iO,to=x.forwardRef(({className:e,children:t,...n},r)=>s.jsxs(Y4,{ref:r,className:J("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm r
819ing-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...n,children:[t,s.jsx(aO,{asChild:!0,children:s.jsx(S0,{className:"h-4 w-4 opacity-50"})})]}));to.displayName=Y4.displayName;const sC=x.forwardRef(({className:e,...t},n)=>s.jsx(eC,{ref:n,className:J("flex cursor-default items-center justify-center py-1",e),...t,children:s.jsx(i_,{className:"h-4 w-4"})}));sC.displayName=eC.displayName;const rC=x.forwardRef(({className:e,...t},n)=>s.jsx(tC,{ref:n,className:J("flex cursor-default items-center justify-center py-1",e),...t,children:s.jsx(S0,{className:"h-4 w-4"})}));rC.displayName=tC.displayName;const no=x.forwardRef(({className:e,children:t,position:n="popper",...r},i)=>s.jsx(oO,{children:s.jsxs(X4,{ref:i,className:J("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...r,children:[s.jsx(sC,{}),s.jsx(lO,{className:J("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),s.jsx(rC,{})]})}));no.displayName=X4.displayName;const uO=x.forwardRef(({className:e,...t},n)=>s.jsx(J4,{ref:n,className:J("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...t}));uO.displayName=J4.displayName;const at=x.forwardRef(({className:e,children:t,...n},r)=>s.jsxs(Z4,{ref:r,className:J("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...n,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(dO,{children:s.jsx(En,{className:"h-4 w-4"})})}),s.jsx(cO,{children:t})]}));at.displayName=Z4.displayName;const hO=x.forwardRef(({className:e,...t},n)=>s.jsx(nC,{ref:n,className:J("-mx-1 my-1 h-px bg-muted",e),...t}));hO.displayName=nC.displayName;const mO="modulepreload",pO=function(e){return"/"+e},Rw={},td=function(t,n,r){let i=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));i=Promise.allSettled(n.map(c=>{if(c=pO(c),c in Rw)return;Rw[c]=!0;const d=c.endsWith(".css"),u=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${u}`))return;const h=document.createElement("link");if(h.rel=d?"stylesheet":mO,d||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),d)return new Promise((m,p)=>{h.addEventListener("load",m),h.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${c}`)))})}))}function a(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return i.then(o=>{for(const l of o||[])l.status==="rejected"&&a(l.reason);return t().catch(a)})},fO=e=>{let t;return e?t=e:typeof fetch>"u"?t=(...n)=>td(async()=>{const{default:r}=await Promise.resolve().then(()=>qo);return{default:r}},void 0).then(({default:r})=>r(...n)):t=fetch,(...n)=>t(...n)};class av extends Error{constructor(t,n="FunctionsError",r){super(t),this.name=n,this.context=r}}class xO extends av{constructor(t){super("Failed to send a request to the Edge Function","FunctionsFetchError",t)}}class gO extends av{constructor(t){super("Relay Error invoking the Edge Function","FunctionsRelayError",t)}}class vO extends av{constructor(t){super("Edge Function returned a non-2xx status code","FunctionsHttpError",t)}}var qx;(function(e){e.Any="any",e.ApNortheast1="ap-northeast-1",e.ApNortheast2="ap-northeast-2",e.ApSouth1="ap-south-1",e.ApSoutheast1="ap-southeast-1",e.ApSoutheast2="ap-southeast-2",e.CaCentral1="ca-central-1",e.EuCentral1="eu-central-1",e.EuWest1="eu-west-1",e.EuWest2="eu-west-2",e.EuWest3="eu-west-3",e.SaEast1="sa-east-1",e.UsEast1="us-east-1",e.UsWest1="us-west-1",e.UsWest2="us-west-2"})(qx||(qx={}));var yO=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}
819return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};class bO{constructor(t,{headers:n={},customFetch:r,region:i=qx.Any}={}){this.url=t,this.headers=n,this.region=i,this.fetch=fO(r)}setAuth(t){this.headers.Authorization=`Bearer ${t}`}invoke(t,n={}){var r;return yO(this,void 0,void 0,function*(){try{const{headers:i,method:a,body:o}=n;let l={},{region:c}=n;c||(c=this.region),c&&c!=="any"&&(l["x-region"]=c);let d;o&&(i&&!Object.prototype.hasOwnProperty.call(i,"Content-Type")||!i)&&(typeof Blob<"u"&&o instanceof Blob||o instanceof ArrayBuffer?(l["Content-Type"]="application/octet-stream",d=o):typeof o=="string"?(l["Content-Type"]="text/plain",d=o):typeof FormData<"u"&&o instanceof FormData?d=o:(l["Content-Type"]="application/json",d=JSON.stringify(o)));const u=yield this.fetch(`${this.url}/${t}`,{method:a||"POST",headers:Object.assign(Object.assign(Object.assign({},l),this.headers),i),body:d}).catch(g=>{throw new xO(g)}),h=u.headers.get("x-relay-error");if(h&&h==="true")throw new gO(u);if(!u.ok)throw new vO(u);let m=((r=u.headers.get("Content-Type"))!==null&&r!==void 0?r:"text/plain").split(";")[0].trim(),p;return m==="application/json"?p=yield u.json():m==="application/octet-stream"?p=yield u.blob():m==="text/event-stream"?p=u:m==="multipart/form-data"?p=yield u.formData():p=yield u.text(),{data:p,error:null}}catch(i){return{data:null,error:i}}})}}var Gt={},ov={},pm={},nd={},fm={},xm={},wO=function(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")},Ao=wO();const jO=Ao.fetch,iC=Ao.fetch.bind(Ao),aC=Ao.Headers,NO=Ao.Request,kO=Ao.Response,qo=Object.freeze(Object.defineProperty({__proto__:null,Headers:aC,Request:NO,Response:kO,default:iC,fetch:jO},Symbol.toStringTag,{value:"Module"})),SO=C3(qo);var gm={};Object.defineProperty(gm,"__esModule",{value:!0});let CO=class extends Error{constructor(t){super(t.message),this.name="PostgrestError",this.details=t.details,this.hint=t.hint,this.co
819de=t.code}};gm.default=CO;var oC=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xm,"__esModule",{value:!0});const PO=oC(SO),EO=oC(gm);let TO=class{constructor(t){this.shouldThrowOnError=!1,this.method=t.method,this.url=t.url,this.headers=t.headers,this.schema=t.schema,this.body=t.body,this.shouldThrowOnError=t.shouldThrowOnError,this.signal=t.signal,this.isMaybeSingle=t.isMaybeSingle,t.fetch?this.fetch=t.fetch:typeof fetch>"u"?this.fetch=PO.default:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(t,n){return this.headers=Object.assign({},this.headers),this.headers[t]=n,this}then(t,n){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers["Accept-Profile"]=this.schema:this.headers["Content-Profile"]=this.schema),this.method!=="GET"&&this.method!=="HEAD"&&(this.headers["Content-Type"]="application/json");const r=this.fetch;let i=r(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async a=>{var o,l,c;let d=null,u=null,h=null,m=a.status,p=a.statusText;if(a.ok){if(this.method!=="HEAD"){const v=await a.text();v===""||(this.headers.Accept==="text/csv"||this.headers.Accept&&this.headers.Accept.includes("application/vnd.pgrst.plan+text")?u=v:u=JSON.parse(v))}const f=(o=this.headers.Prefer)===null||o===void 0?void 0:o.match(/count=(exact|planned|estimated)/),b=(l=a.headers.get("content-range"))===null||l===void 0?void 0:l.split("/");f&&b&&b.length>1&&(h=parseInt(b[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(u)&&(u.length>1?(d={code:"PGRST116",details:`Results contain ${u.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},u=null,h=null,m=406,p="Not Acceptable"):u.length===1?u=u[0]:u=null)}else{const f=await a.text();try{d=JSON.parse(f),Array.isArray(d)&&a.status===404&&(u=[],d=null,m=200,p="OK")}catch{a.status===404&&f===""?(m=204,p="No Content"):d={message:f}}if(d&&this.isMaybeSingle&&(!((c=d==null?void 0:d.details)===null||c===void 0)&&c.includes("0 rows"))&&(d=null,m=200,p="OK"),d&&this.shouldThrowOnError)throw new EO.default(d)}return{error:d,data:u,count:h,status:m,statusText:p}});return this.shouldThrowOnError||(i=i.catch(a=>{var o,l,c;return{error:{message:`${(o=a==null?void 0:a.name)!==null&&o!==void 0?o:"FetchError"}: ${a==null?void 0:a.message}`,details:`${(l=a==null?void 0:a.stack)!==null&&l!==void 0?l:""}`,hint:"",code:`${(c=a==null?void 0:a.code)!==null&&c!==void 0?c:""}`},data:null,count:null,status:0,statusText:""}})),i.then(t,n)}returns(){return this}overrideTypes(){return this}};xm.default=TO;var _O=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fm,"__esModule",{value:!0});const AO=_O(xm);let RO=class extends AO.default{select(t){let n=!1;const r=(t??"*").split("").map(i=>/\s/.test(i)&&!n?"":(i==='"'&&(n=!n),i)).join("");return this.url.searchParams.set("select",r),this.headers.Prefer&&(this.headers.Prefer+=","),this.headers.Prefer+="return=representation",this}order(t,{ascending:n=!0,nullsFirst:r,foreignTable:i,referencedTable:a=i}={}){const o=a?`${a}.order`:"order",l=this.url.searchParams.get(o);return this.url.searchParams.set(o,`${l?`${l},`:""}${t}.${n?"asc":"desc"}${r===void 0?"":r?".nullsfirst":".nullslast"}`),this}limit(t,{foreignTable:n,referencedTable:r=n}={}){const i=typeof r>"u"?"limit":`${r}.limit`;return this.url.searchParams.set(i,`${t}`),this}range(t,n,{foreignTable:r,referencedTable:i=r}={}){const a=typeof i>"u"?"offset":`${i}.offset`,o=typeof i>"u"?"limit":`${i}.limit`;return this.url.searchParams.set(a,`${t}`),this.url.searchParams.set(o,`${n-t+1}`),this}abortSignal(t){return this.signal=t,this}single(){return this.headers.Accept="application/vnd.pgrst.object+json",this}maybeSingle(){return this.method==="GET"?this.headers.Accept="application/json":this.headers.Accept="application/vnd.pgrst.object+json",this.isMaybeSingle=!0,this}csv(){return this.headers.Accept="text/csv",this}geojson(){return this.headers.Accept="application/geo+json",this}
819explain({analyze:t=!1,verbose:n=!1,settings:r=!1,buffers:i=!1,wal:a=!1,format:o="text"}={}){var l;const c=[t?"analyze":null,n?"verbose":null,r?"settings":null,i?"buffers":null,a?"wal":null].filter(Boolean).join("|"),d=(l=this.headers.Accept)!==null&&l!==void 0?l:"application/json";return this.headers.Accept=`application/vnd.pgrst.plan+${o}; for="${d}"; options=${c};`,o==="json"?this:this}rollback(){var t;return((t=this.headers.Prefer)!==null&&t!==void 0?t:"").trim().length>0?this.headers.Prefer+=",tx=rollback":this.headers.Prefer="tx=rollback",this}returns(){return this}};fm.default=RO;var DO=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nd,"__esModule",{value:!0});const MO=DO(fm);let LO=class extends MO.default{eq(t,n){return this.url.searchParams.append(t,`eq.${n}`),this}neq(t,n){return this.url.searchParams.append(t,`neq.${n}`),this}gt(t,n){return this.url.searchParams.append(t,`gt.${n}`),this}gte(t,n){return this.url.searchParams.append(t,`gte.${n}`),this}lt(t,n){return this.url.searchParams.append(t,`lt.${n}`),this}lte(t,n){return this.url.searchParams.append(t,`lte.${n}`),this}like(t,n){return this.url.searchParams.append(t,`like.${n}`),this}likeAllOf(t,n){return this.url.searchParams.append(t,`like(all).{${n.join(",")}}`),this}likeAnyOf(t,n){return this.url.searchParams.append(t,`like(any).{${n.join(",")}}`),this}ilike(t,n){return this.url.searchParams.append(t,`ilike.${n}`),this}ilikeAllOf(t,n){return this.url.searchParams.append(t,`ilike(all).{${n.join(",")}}`),this}ilikeAnyOf(t,n){return this.url.searchParams.append(t,`ilike(any).{${n.join(",")}}`),this}is(t,n){return this.url.searchParams.append(t,`is.${n}`),this}in(t,n){const r=Array.from(new Set(n)).map(i=>typeof i=="string"&&new RegExp("[,()]").test(i)?`"${i}"`:`${i}`).join(",");return this.url.searchParams.append(t,`in.(${r})`),this}contains(t,n){return typeof n=="string"?this.url.searchParams.append(t,`cs.${n}`):Array.isArray(n)?this.url.searchParams.append(t,`cs.{${n.join(",")}}`):this.url.searchParams.append(t,`cs.${JSON.stringify(n)}`),this}containedBy(t,n){return typeof n=="string"?this.url.searchParams.append(t,`cd.${n}`):Array.isArray(n)?this.url.searchParams.append(t,`cd.{${n.join(",")}}`):this.url.searchParams.append(t,`cd.${JSON.stringify(n)}`),this}rangeGt(t,n){return this.url.searchParams.append(t,`sr.${n}`),this}rangeGte(t,n){return this.url.searchParams.append(t,`nxl.${n}`),this}rangeLt(t,n){return this.url.searchParams.append(t,`sl.${n}`),this}rangeLte(t,n){return this.url.searchParams.append(t,`nxr.${n}`),this}rangeAdjacent(t,n){return this.url.searchParams.append(t,`adj.${n}`),this}overlaps(t,n){return typeof n=="string"?this.url.searchParams.append(t,`ov.${n}`):this.url.searchParams.append(t,`ov.{${n.join(",")}}`),this}textSearch(t,n,{config:r,type:i}={}){let a="";i==="plain"?a="pl":i==="phrase"?a="ph":i==="websearch"&&(a="w");const o=r===void 0?"":`(${r})`;return this.url.searchParams.append(t,`${a}fts${o}.${n}`),this}match(t){return Object.entries(t).forEach(([n,r])=>{this.url.searchParams.append(n,`eq.${r}`)}),this}not(t,n,r){return this.url.searchParams.append(t,`not.${n}.${r}`),this}or(t,{foreignTable:n,referencedTable:r=n}={}){const i=r?`${r}.or`:"or";return this.url.searchParams.append(i,`(${t})`),this}filter(t,n,r){return this.url.searchParams.append(t,`${n}.${r}`),this}};nd.default=LO;var IO=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pm,"__esModule",{value:!0});const gl=IO(nd);let OO=class{constructor(t,{headers:n={},schema:r,fetch:i}){this.url=t,this.headers=n,this.schema=r,this.fetch=i}select(t,{head:n=!1,count:r}={}){const i=n?"HEAD":"GET";let a=!1;const o=(t??"*").split("").map(l=>/\s/.test(l)&&!a?"":(l==='"'&&(a=!a),l)).join("");return this.url.searchParams.set("select",o),r&&(this.headers.Prefer=`count=${r}`),new gl.default({method:i,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}insert(t,{count:n,defaultToNull:r=!0}={}){const i="POST",a=[];if(this.headers.Prefer&&a.push(this.headers.Prefer),n&&a.push(`count=${n}`),r||a.push("missing=default"),this.headers.Prefer=a.join(","),Array.isArray(t)){const o=t.reduce((l,c)=>l.concat(Object.keys(c)),[]);if(o.length>0){const l=[...new Set(o)].map(c=>`"${c}"`);this.url.searchParams.set("columns",l.join(","))}}return new gl.default({method:i,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:this.fetch,allowEmpty:!1})}upsert(t,{onConflict:n,ignoreDuplicates:r=!1,count:i,defaultToNull:a=!0}={}){const o="POST",l=[`resolution=${r?"ignore":"merge"}-duplicates`];if(n!==void 0&&this.url.searchParams.set("on_conflict",n),this.headers.Prefer&&l.push(this.headers.Prefer),i&&l.push(`count=${i}`),a||l.push("missing=default"),this.headers.Prefer=l.join(","),Array.isArray(t)){const c=t.reduce((d,u)=>d.concat(Object.keys(u)),[]);if(c.length>0){const d=[...new Set(c)].map(u=>`"${u}"`);this.url.searchParams.set("columns",d.join(","))}}return new gl.default({method:o,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:this.fetch,allowEmpty:!1})}update(t,{count:n}={}){const r="PATCH",i=[];return this.headers.Prefer&&i.push(this.headers.Prefer),n&&i.push(`count=${n}`),this.headers.Prefer=i.join(","),new gl.default({method:r,url:this.url,headers:this.headers,schema:this.schema,body:t,fetch:this.fetch,allowEmpty:!1})}delete({count:t}={}){const n="DELETE",r=[];return t&&r.push(`count=${t}`),this.headers.Prefer&&r.unshift(this.headers.Prefer),this.headers.Prefer=r.join(","),new gl.default({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:!1})}};pm.default=OO;var vm={},ym={};
819Object.defineProperty(ym,"__esModule",{value:!0});ym.version=void 0;ym.version="0.0.0-automated";Object.defineProperty(vm,"__esModule",{value:!0});vm.DEFAULT_HEADERS=void 0;const FO=ym;vm.DEFAULT_HEADERS={"X-Client-Info":`postgrest-js/${FO.version}`};var lC=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ov,"__esModule",{value:!0});const $O=lC(pm),BO=lC(nd),zO=vm;let UO=class cC{constructor(t,{headers:n={},schema:r,fetch:i}={}){this.url=t,this.headers=Object.assign(Object.assign({},zO.DEFAULT_HEADERS),n),this.schemaName=r,this.fetch=i}from(t){const n=new URL(`${this.url}/${t}`);return new $O.default(n,{headers:Object.assign({},this.headers),schema:this.schemaName,fetch:this.fetch})}schema(t){return new cC(this.url,{headers:this.headers,schema:t,fetch:this.fetch})}rpc(t,n={},{head:r=!1,get:i=!1,count:a}={}){let o;const l=new URL(`${this.url}/rpc/${t}`);let c;r||i?(o=r?"HEAD":"GET",Object.entries(n).filter(([u,h])=>h!==void 0).map(([u,h])=>[u,Array.isArray(h)?`{${h.join(",")}}`:`${h}`]).forEach(([u,h])=>{l.searchParams.append(u,h)})):(o="POST",c=n);const d=Object.assign({},this.headers);return a&&(d.Prefer=`count=${a}`),new BO.default({method:o,url:l,headers:d,schema:this.schemaName,body:c,fetch:this.fetch,allowEmpty:!1})}};ov.default=UO;var Ko=Rn&&Rn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Gt,"__esModule",{value:!0});Gt.PostgrestError=Gt.PostgrestBuilder=Gt.PostgrestTransformBuilder=Gt.PostgrestFilterBuilder=Gt.PostgrestQueryBuilder=Gt.PostgrestClient=void 0;const dC=Ko(ov);Gt.PostgrestClient=dC.default;const uC=Ko(pm);Gt.PostgrestQueryBuilder=uC.default;const hC=Ko(nd);Gt.PostgrestFilterBuilder=hC.default;const mC=Ko(fm);Gt.PostgrestTransformBuilder=mC.default;const pC=Ko(xm);Gt.PostgrestBuilder=pC.default;const fC=Ko(gm);Gt.PostgrestError=fC.default;var VO=Gt.default={PostgrestClient:dC.default,PostgrestQueryBuilder:uC.default,PostgrestFilterBuilder:hC.default,PostgrestTransformBuilder:mC.default,PostgrestBuilder:pC.default,PostgrestError:fC.default};const{PostgrestClient:WO,PostgrestQueryBuilder:HK,PostgrestFilterBuilder:GK,PostgrestTransformBuilder:qK,PostgrestBuilder:KK,PostgrestError:QK}=VO;let Kx;typeof window>"u"?Kx=require("ws"):Kx=window.WebSocket;const HO=Kx,GO="2.11.10",qO={"X-Client-Info":`realtime-js/${GO}`},KO="1.0.0",xC=1e4,QO=1e3;var so;(function(e){e[e.connecting=0]="connecting",e[e.open=1]="open",e[e.closing=2]="closing",e[e.closed=3]="closed"})(so||(so={}));var _t;(function(e){e.closed="closed",e.errored="errored",e.joined="joined",e.joining="joining",e.leaving="leaving"})(_t||(_t={}));var Gn;(function(e){e.close="phx_close",e.error="phx_error",e.join="phx_join",e.reply="phx_reply",e.leave="phx_leave",e.access_token="access_token"})(Gn||(Gn={}));var Qx;(function(e){e.websocket="websocket"})(Qx||(Qx={}));var ki;(function(e){e.Connecting="connecting",e.Open="open",e.Closing="closing",e.Closed="closed"})(ki||(ki={}));class YO{constructor(){this.HEADER_LENGTH=1}decode(t,n){return t.constructor===ArrayBuffer?n(this._binaryDecode(t)):n(typeof t=="string"?JSON.parse(t):{})}_binaryDecode(t){const n=new DataView(t),r=new TextDecoder;return this._decodeBroadcast(t,n,r)}_decodeBroadcast(t,n,r){const i=n.getUint8(1),a=n.getUint8(2);let o=this.HEADER_LENGTH+2;const l=r.decode(t.slice(o,o+i));o=o+i;const c=r.decode(t.slice(o,o+a));o=o+a;const d=JSON.parse(r.decode(t.slice(o,t.byteLength)));return{ref:null,topic:l,event:c,payload:d}}}class gC{constructor(t,n){this.callback=t,this.timerCalc=n,this.timer=void 0,this.tries=0,this.callback=t,this.timerCalc=n}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}}var Me;(function(e){e.abstime="abstime",e.bool="bool",e.date="date",e.daterange="daterange",e.float4="float4",e.float8="float8",e.int2="int2",e.int4="int4",e.int4range="int4range",e.int8="int8",e.int8range="int8range",e.json="json",e.jsonb="jsonb",e.money="money",e.numeric="numeric",e.oid="oid",e.reltime="reltime",e.text="text",e.time="time",e.timestamp="timestamp",e.timestamptz="timestamptz",e.timetz="timetz",e.tsrange="tsrange",e.tstzrange="tstzrange"})(Me||(Me={}));const Dw=(e,t,n={})=>{var r;const i=(r=n.skipTypes)!==null&&r!==void 0?r:[];return Object.keys(t).reduce((a,o)=>(a[o]=XO(o,e,t,i),a),{})},XO=(e,t,n,r)=>{const i=t.find(l=>
vendor: 6,364 bytes, line 819
819l.name===e),a=i==null?void 0:i.type,o=n[e];return a&&!r.includes(a)?vC(a,o):Yx(o)},vC=(e,t)=>{if(e.charAt(0)==="_"){const n=e.slice(1,e.length);return t7(t,n)}switch(e){case Me.bool:return JO(t);case Me.float4:case Me.float8:case Me.int2:case Me.int4:case Me.int8:case Me.numeric:case Me.oid:return ZO(t);case Me.json:case Me.jsonb:return e7(t);case Me.timestamp:return n7(t);case Me.abstime:case Me.date:case Me.daterange:case Me.int4range:case Me.int8range:case Me.money:case Me.reltime:case Me.text:case Me.time:case Me.timestamptz:case Me.timetz:case Me.tsrange:case Me.tstzrange:return Yx(t);default:return Yx(t)}},Yx=e=>e,JO=e=>{switch(e){case"t":return!0;case"f":return!1;default:return e}},ZO=e=>{if(typeof e=="string"){const t=parseFloat(e);if(!Number.isNaN(t))return t}return e},e7=e=>{if(typeof e=="string")try{return JSON.parse(e)}catch(t){return console.log(`JSON parse error: ${t}`),e}return e},t7=(e,t)=>{if(typeof e!="string")return e;const n=e.length-1,r=e[n];if(e[0]==="{"&&r==="}"){let a;const o=e.slice(1,n);try{a=JSON.parse("["+o+"]")}catch{a=o?o.split(","):[]}return a.map(l=>vC(t,l))}return e},n7=e=>typeof e=="string"?e.replace(" ","T"):e,yC=e=>{let t=e;return t=t.replace(/^ws/i,"http"),t=t.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i,""),t.replace(/\/+$/,"")};class Pp{constructor(t,n,r={},i=xC){this.channel=t,this.event=n,this.payload=r,this.timeout=i,this.sent=!1,this.timeoutTimer=void 0,this.ref="",this.receivedResp=null,this.recHooks=[],this.refEvent=null}resend(t){this.timeout=t,this._cancelRefEvent(),this.ref="",this.refEvent=null,this.receivedResp=null,this.sent=!1,this.send()}send(){this._hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()}))}updatePayload(t){this.payload=Object.assign(Object.assign({},this.payload),t)}receive(t,n){var r;return this._hasReceived(t)&&n((r=this.receivedResp)===null||r===void 0?void 0:r.response),this.recHooks.push({status:t,callback:n}),this}startTimeout(){if(this.timeoutTimer)return;this.ref=this.channel.socket._makeRef(),this.refEvent=this.channel._replyEventName(this.ref);const t=n=>{this._cancelRefEvent(),this._cancelTimeout(),this.receivedResp=n,this._matchReceive(n)};this.channel._on(this.refEvent,{},t),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}trigger(t,n){this.refEvent&&this.channel._trigger(this.refEvent,{status:t,response:n})}destroy(){this._cancelRefEvent(),this._cancelTimeout()}_cancelRefEvent(){this.refEvent&&this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=void 0}_matchReceive({status:t,response:n}){this.recHooks.filter(r=>r.status===t).forEach(r=>r.callback(n))}_hasReceived(t){return this.receivedResp&&this.receivedResp.status===t}}var Mw;(function(e){e.SYNC="sync",e.JOIN="join",e.LEAVE="leave"})(Mw||(Mw={}));class Wl{constructor(t,n){this.channel=t,this.state={},this.pendingDiffs=[],this.joinRef=null,this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const r=(n==null?void 0:n.events)||{state:"presence_state",diff:"presence_diff"};this.channel._on(r.state,{},i=>{const{onJoin:a,onLeave:o,onSync:l}=this.caller;this.joinRef=this.channel._joinRef(),this.state=Wl.syncState(this.state,i,a,o),this.pendingDiffs.forEach(c=>{this.state=Wl.syncDiff(this.state,c,a,o)}),this.pendingDiffs=[],l()}),this.channel._on(r.diff,{},i=>{const{onJoin:a,onLeave:o,onSync:l}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(i):(this.state=Wl.syncDiff(this.state,i,a,o),l())}),this.onJoin((i,a,o)=>{this.channel._trigger("presence",{event:"join",key:i,currentPresences:a,newPresences:o})}),this.onLeave((i,a,o)=>{this.channel._trigger("presence",{event:"leave",key:i,currentPresences:a,leftPresences:o})}),this.onSync(()=>{this.channel._trigger("presence",{event:"sync"})})}static syncState(t,n,r,i){const a=this.cloneDeep(t),o=this.transformState(n),l={},c={};return this.map(a,(d,u)=>{o[d]||(c[d]=u)}),this.map(o,(d,u)=>{const h=a[d];if(h){const m=u.map(b=>b.presence_ref),p=h.map(b=>b.presence_ref),g=u.filter(b=>p.indexOf(b.presence_ref)<0),f=h.filter(b=>m.indexOf(b.presence_ref)<0);g.length>0&&(l[d]=g),f.length>0&&(c[d]=f)}else l[d]=u}),this.syncDiff(a,{joins:l,leaves:c},r,i)}static syncDiff(t,n,r,i){const{joins:a,leaves:o}={joins:this.transformState(n.joins),leaves:this.transformState(n.leaves)};return r||(r=()=>{}),i||(i=()=>{}),this.map(a,(l,c)=>{var d;const u=(d=t[l])!==null&&d!==void 0?d:[];if(t[l]=this.cloneDeep(c),u.length>0){const h=t[l].map(p=>p.presence_ref),m=u.filter(p=>h.indexOf(p.presence_ref)<0);t[l].unshift(...m)}r(l,u,c)}),this.map(o,(l,c)=>{let d=t[l];if(!d)return;const u=c.map(h=>h.presence_ref);d=d.filter(h=>u.indexOf(h.presence_ref)<0),t[l]=d,i(l,d,c),d.length===0&&delete t[l]}),t}static map(t,n){return Object.getOwnPropertyNames(t).map(r=>n(r,t[r]))}static transformState(t){return t=this.cloneDeep(t),Object.getOwnPropertyNames(t).reduce((n,r)=>{const i=t[r];return"metas"in i?n[r]=i.metas.map(a=>(a.presence_ref=a.phx_ref,delete a.phx_ref,delete a.phx_ref_prev,a)):n[r]=i,n},{})}static cloneDeep(t){return JSON.parse(JSON.stringify(t))}onJoin(t){this.caller.onJoin=t}onLeave(t){this.caller.onLeave=t}onSync(t){this.caller.onSync=t}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}var Lw;(function(e){e.ALL="*",e.INSERT="INSERT",e.UPDATE="UPDATE",e.DELETE="DELETE"})(Lw||(Lw={}));var Iw;(function(e){e.BROADCAST="broadcast",e.PRESENCE="presence",e.POSTGRES_CHANGES="postgres_changes",e.SYSTEM="system"})(Iw||(Iw={}));var Ws;(function(e){e.SUBSCRIBED="SUBSCRIBED",e.TIMED_OUT="TIMED_OUT",e.CLOSED="CLOSED",e.CHANNEL_ERROR="CHANNEL_ERROR"})(Ws||(Ws={}));class lv{constructor(t,n={config:{}},r){this.topic=t,this.params=n,this.socket=r,this.bindings={},this.state=_t.closed,this.joinedOnce=!1,this.pushBuffer=[],this.subTopic=t.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:""},private:!1},n.config),this.timeout=this.socket.timeout,this.joinPush=new Pp(this,Gn.join,this.params,this.timeout),this.rejoinTimer=new gC(()=>this._rejoinUntilConnected(),this.socket.reconnectAfterMs),this.joinPush.receive("ok",()=>{this.state=_t.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(i=>
819i.send()),this.pushBuffer=[]}),this._onClose(()=>{this.rejoinTimer.reset(),this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`),this.state=_t.closed,this.socket._remove(this)}),this._onError(i=>{this._isLeaving()||this._isClosed()||(this.socket.log("channel",`error ${this.topic}`,i),this.state=_t.errored,this.rejoinTimer.scheduleTimeout())}),this.joinPush.receive("timeout",()=>{this._isJoining()&&(this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),this.state=_t.errored,this.rejoinTimer.scheduleTimeout())}),this._on(Gn.reply,{},(i,a)=>{this._trigger(this._replyEventName(a),i)}),this.presence=new Wl(this),this.broadcastEndpointURL=yC(this.socket.endPoint)+"/api/broadcast",this.private=this.params.config.private||!1}subscribe(t,n=this.timeout){var r,i;if(this.socket.isConnected()||this.socket.connect(),this.joinedOnce)throw"tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance";{const{config:{broadcast:a,presence:o,private:l}}=this.params;this._onError(u=>t==null?void 0:t(Ws.CHANNEL_ERROR,u)),this._onClose(()=>t==null?void 0:t(Ws.CLOSED));const c={},d={broadcast:a,presence:o,postgres_changes:(i=(r=this.bindings.postgres_changes)===null||r===void 0?void 0:r.map(u=>u.filter))!==null&&i!==void 0?i:[],private:l};this.socket.accessTokenValue&&(c.access_token=this.socket.accessTokenValue),this.updateJoinPayload(Object.assign({config:d},c)),this.joinedOnce=!0,this._rejoin(n),this.joinPush.receive("ok",async({postgres_changes:u})=>{var h;if(this.socket.setAuth(),u===void 0){t==null||t(Ws.SUBSCRIBED);return}else{const m=this.bindings.postgres_changes,p=(h=m==null?void 0:m.length)!==null&&h!==void 0?h:0,g=[];for(let f=0;f<p;f++){const b=m[f],{filter:{event:v,schema:y,table:w,filter:j}}=b,N=u&&u[f];if(N&&N.event===v&&N.schema===y&&N.table===w&&N.filter===j)g.push(Object.assign(Object.assign({},b),{id:N.id}));else{this.unsubscribe(),this.state=_t.errored,t==null||t(Ws.CHANNEL_ERROR,new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=g,t&&t(Ws.SUBSCRIBED);return}}).receive("error",u=>{this.state=_t.errored,t==null||t(Ws.CHANNEL_ERROR,new Error(JSON.stringify(Object.values(u).join(", ")||"error")))}).receive("timeout",()=>{t==null||t(Ws.TIMED_OUT)})}return this}presenceState(){return this.presence.state}async track(t,n={}){return await this.send({type:"presence",event:"track",payload:t},n.timeout||this.timeout)}async untrack(t={}){return await this.send({type:"presence",event:"untrack"},t)}on(t,n,r){return this._on(t,n,r)}async send(t,n={}){var r,i;if(!this._canPush()&&t.type==="broadcast"){const{event:a,payload:o}=t,c={method:"POST",headers:{Authorization:this.socket.accessTokenValue?`Bearer ${this.socket.accessTokenValue}`:"",apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"},body:JSON.stringify({messages:[{topic:this.subTopic,event:a,payload:o,private:this.private}]})};try{const d=await this._fetchWithTimeout(this.broadcastEndpointURL,c,(r=n.timeout)!==null&&r!==void 0?r:this.timeout);return await((i=d.body)===null||i===void 0?void 0:i.cancel()),d.ok?"ok":"error"}catch(d){return d.name==="AbortError"?"timed out":"error"}}else return new Promise(a=>{var o,l,c;const d=this._push(t.type,t,n.timeout||this.timeout);t.type==="broadcast"&&!(!((c=(l=(o=this.params)===null||o===void 0?void 0:o.config)===null||l===void 0?void 0:l.broadcast)===null||c===void 0)&&c.ack)&&a("ok"),d.receive("ok",()=>a("ok")),d.receive("error",()=>a("error")),d.receive("timeout",()=>a("timed out"))})}updateJoinPayload(t){this.joinPush.updatePayload(t)}unsubscribe(t=this.timeout){this.state=_t.leaving;const n=()=>{this.socket.log("channel",`leave ${this.topic}`),this._trigger(Gn.close,"leave",this._joinRef())};return this.joinPush.destroy(),new Promise(r=>{const i=new Pp(this,Gn.leave,{},t);i.receive("ok",()=>{n(),r("ok")}).receive("timeout",()=>{n(),r("timed out")}).receive("error",()=>{r("error")}),i.send(),this._canPush()||i.trigger("ok",{})})}teardown(){this.pushBuffer.forEach(t=>t.destroy()),this.rejoinTimer&&clearTimeout(this.rejoinTimer.timer),this.joinPush.destroy()}async _fetchWithTimeout(t,n,r){const i=new AbortController,a=setTimeout(()=>i.abort(),r),o=await this.socket.fetch(t,Object.assign(Object.assign({},n),{signal:i.signal}));return clearTimeout(a),o}_push(t,n,r=this.timeout){if(!this.joinedOnce)throw`tried to push '${t}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;let i=new Pp(this,t,n,r);return this._canPush()?i.send():(i.startTimeout(),this.pushBuffer.push(i)),i}_onMessage(t,n,r){return n}_isMember(t){return this.topic===t}_joinRef(){return this.joinPush.ref}_trigger(t,n,r){var i,a;const o=t.toLocaleLowerCase(),{close:l,error:c,leave:d,join:u}=Gn;if(r&&[l,c,d,u].indexOf(o)>=0&&r!==this._joinRef())return;let m=this._onMessage(o,n,r);if(n&&!m)throw"channel onMessage callbacks must return the payload, modified or unmodified";["insert","update","delete"].includes(o)?(i=this.bindings.postgres_changes)===null||i===void 0||i.filter(p=>{var g,f,b;return((g=p.filter)===null||g===void 0?void 0:g.event)==="*"||((b=(f=p.filter)===null||f===void 0?void 0:f.event)===null||b===void 0?void 0:b.toLocaleLowerCase())===o}).map(p=>p.callback(m,r)):(a=this.bindings[o])===null||a===void 0||a.filter(p=>{var g,f,b,v,y,w;if(["broadcast","presence","postgres_changes"].includes(o))if("id"in p){const j=p.id,N=(g=p.filter)===null||g===void 0?void 0:g.event;return j&&((f=n.ids)===null||f===void 0?void 0:f.includes(j))&&(N==="*"||(N==null?void 0:N.toLocaleLowerCase())===((b=n.data)===null||b===void 0?void 0:b.type.toLocaleLowerCase()))}else{const j=(y=(v=p==null?void 0:p.filter)===null||v===void 0?void 0:v.event)===null||y===void 0?void 0:y.toLocaleLowerCase();return j==="*"||j===((w=n==null?void 0:n.event)===null||w===void 0?void 0:w.toLocaleLowerCase())}else return p.type.toLocaleLowerCase()===o}).map(p=>{if(typeof m=="object"&&"ids"in m){const g=m.data,{schema:f,table:b,commit_timestamp:v,type:y,errors:w}=g;m=Object.assign(Object.assign({},{schema:f,table:b,commit_timestamp:v,eventType:y,new:{},old:{},errors:w}),this._getPayloadRecords(g))}p.callback(m,r)})}_isClosed(){return this.state===_t.closed}_isJoined(){return this.state===_t.joined}_isJoining(){return this.state===_t.joining}_isLeaving(){return this.state===_t.leaving}_replyEventName(t){return`chan_reply_${t}`}_on(t,n,r){const i=t.toLocaleLowerCase(),a={type:i,filter:n,callback:r};return this.bindings[i]?this.bindings[i].push(a):this.bindings[i]=[a],this}_off(t,n){const r=t.toLocaleLowerCase();return this.bindings[r]=this.bindings[r].filter(i=>{var a;return!(((a=i.type)===null||a===void 0?void 0:a.toLocaleLowerCase())===r&&lv.isEqual(i.filter,n))}),this}static isEqual(t,n){if(Object.keys(t).length!==Object.keys(n).length)return!1;for(const r in t)if(t[r]!==n[r])return!1;return!0}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout(),this.socket.isConnected()&&this._rejoin()}_onClose(t){this._on(Gn.close,{},t)}_onError(t){this._on(Gn.error,{},n=>t(n))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(t=this.timeout){this._isLeaving()||(this.socket._leaveOpenTopic(this.topic),this.state=_t.joining,this.joinPush.resend(t))}_getPayloadRecords(t){const n={new:{},old:{}};return(t.type==="INSERT"||t.type==="UPDATE")&&(n.new=Dw(t.columns,t.record)),(t.type==="UPDATE"||t.type==="DELETE")&&(n.old=Dw(t.columns,t.old_record)),n}}const Ow=()=>{},s7=` 820 addEventListener("message", (e) => { 821 if (e.data.event === "start") { 822 setInterval(() => postMessage({ event: "keepAlive" }), e.data.interval); 823 } 824 });`;class r7{constructor(t,n){var r;this.accessTokenValue=null,this.apiKey=null,this.channels=new Array,this.endPoint="",this.httpEndpoint="",this.headers=qO,this.params={},this.timeout=xC,this.heartbeatIntervalMs=25e3,this.heartbeatTimer=void 0,this.pendingHeartbeatRef=null,this.heartbeatCallback=Ow,this.ref=0,this.logger=Ow,this.conn=null,this.sendBuffer=[],this.serializer
824=new YO,this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this.accessToken=null,this._resolveFetch=a=>{let o;return a?o=a:typeof fetch>"u"?o=(...l)=>td(async()=>{const{default:c}=await Promise.resolve().then(()=>qo);return{default:c}},void 0).then(({default:c})=>c(...l)):o=fetch,(...l)=>o(...l)},this.endPoint=`${t}/${Qx.websocket}`,this.httpEndpoint=yC(t),n!=null&&n.transport?this.transport=n.transport:this.transport=null,n!=null&&n.params&&(this.params=n.params),n!=null&&n.headers&&(this.headers=Object.assign(Object.assign({},this.headers),n.headers)),n!=null&&n.timeout&&(this.timeout=n.timeout),n!=null&&n.logger&&(this.logger=n.logger),(n!=null&&n.logLevel||n!=null&&n.log_level)&&(this.logLevel=n.logLevel||n.log_level,this.params=Object.assign(Object.assign({},this.params),{log_level:this.logLevel})),n!=null&&n.heartbeatIntervalMs&&(this.heartbeatIntervalMs=n.heartbeatIntervalMs);const i=(r=n==null?void 0:n.params)===null||r===void 0?void 0:r.apikey;if(i&&(this.accessTokenValue=i,this.apiKey=i),this.reconnectAfterMs=n!=null&&n.reconnectAfterMs?n.reconnectAfterMs:a=>[1e3,2e3,5e3,1e4][a-1]||1e4,this.encode=n!=null&&n.encode?n.encode:(a,o)=>o(JSON.stringify(a)),this.decode=n!=null&&n.decode?n.decode:this.serializer.decode.bind(this.serializer),this.reconnectTimer=new gC(async()=>{this.disconnect(),this.connect()},this.reconnectAfterMs),this.fetch=this._resolveFetch(n==null?void 0:n.fetch),n!=null&&n.worker){if(typeof window<"u"&&!window.Worker)throw new Error("Web Worker is not supported");this.worker=(n==null?void 0:n.worker)||!1,this.workerUrl=n==null?void 0:n.workerUrl}this.accessToken=(n==null?void 0:n.accessToken)||null}connect(){if(!this.conn){if(this.transport||(this.transport=HO),this.transport){typeof window<"u"&&this.transport===window.WebSocket?this.conn=new this.transport(this.endpointURL()):this.conn=new this.transport(this.endpointURL(),void 0,{headers:this.headers}),this.setupConnection();return}this.conn=new i7(this.endpointURL(),void 0,{close:()=>{this.conn=null}})}}endpointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:KO}))}disconnect(t,n){this.conn&&(this.conn.onclose=function(){},t?this.conn.close(t,n??""):this.conn.close(),this.conn=null,this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.reset(),this.channels.forEach(r=>r.teardown()))}getChannels(){return this.channels}async removeChannel(t){const n=await t.unsubscribe();return this.channels=this.channels.filter(r=>r._joinRef!==t._joinRef),this.channels.length===0&&this.disconnect(),n}async removeAllChannels(){const t=await Promise.all(this.channels.map(n=>n.unsubscribe()));return this.channels=[],this.disconnect(),t}log(t,n,r){this.logger(t,n,r)}connectionState(){switch(this.conn&&this.conn.readyState){case so.connecting:return ki.Connecting;case so.open:return ki.Open;case so.closing:return ki.Closing;default:return ki.Closed}}isConnected(){return this.connectionState()===ki.Open}channel(t,n={config:{}}){const r=`realtime:${t}`,i=this.getChannels().find(a=>a.topic===r);if(i)return i;{const a=new lv(`realtime:${t}`,n,this);return this.channels.push(a),a}}push(t){const{topic:n,event:r,payload:i,ref:a}=t,o=()=>{this.encode(t,l=>{var c;(c=this.conn)===null||c===void 0||c.send(l)})};this.log("push",`${n} ${r} (${a})`,i),this.isConnected()?o():this.sendBuffer.push(o)}async setAuth(t=null){let n=t||this.accessToken&&await this.accessToken()||this.accessTokenValue;this.accessTokenValue!=n&&(this.accessTokenValue=n,this.channels.forEach(r=>{n&&r.updateJoinPayload({access_token:n,version:this.headers&&this.headers["X-Client-Info"]}),r.joinedOnce&&r._isJoined()&&r._push(Gn.access_token,{access_token:n})}))}async sendHeartbeat(){var t;if(!this.isConnected()){this.heartbeatCallback("disconnected");return}if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.log("transport","heartbeat timeout. Attempting to re-establish connection"),this.heartbeatCallback("timeout"),(t=this.conn)===null||t===void 0||t.close(QO,"hearbeat timeout");return}this.pendingHeartbeatRef=this._makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef}),this.heartbeatCallback("sent"),await this.setAuth()}onHeartbeat(t){this.heartbeatCallback=t}flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(t=>t()),this.sendBuffer=[])}_makeRef(){let t=this.ref+1;return t===this.ref?this.ref=0:this.ref=t,this.ref.toString()}_leaveOpenTopic(t){let n=this.channels.find(r=>r.topic===t&&(r._isJoined()||r._isJoining()));n&&(this.log("transport",`leaving duplicate topic "${t}"`),n.unsubscribe())}_remove(t){this.channels=this.channels.filter(n=>n.topic!==t.topic)}setupConnection(){this.conn&&(this.conn.binaryType="arraybuffer",this.conn.onopen=()=>this._onConnOpen(),this.conn.onerror=t=>this._onConnError(t),this.conn.onmessage=t=>
824this._onConnMessage(t),this.conn.onclose=t=>this._onConnClose(t))}_onConnMessage(t){this.decode(t.data,n=>{let{topic:r,event:i,payload:a,ref:o}=n;r==="phoenix"&&i==="phx_reply"&&this.heartbeatCallback(n.payload.status=="ok"?"ok":"error"),o&&o===this.pendingHeartbeatRef&&(this.pendingHeartbeatRef=null),this.log("receive",`${a.status||""} ${r} ${i} ${o&&"("+o+")"||""}`,a),Array.from(this.channels).filter(l=>l._isMember(r)).forEach(l=>l._trigger(i,a,o)),this.stateChangeCallbacks.message.forEach(l=>l(n))})}_onConnOpen(){if(this.log("transport",`connected to ${this.endpointURL()}`),this.flushSendBuffer(),this.reconnectTimer.reset(),!this.worker)this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.heartbeatTimer=setInterval(()=>this.sendHeartbeat(),this.heartbeatIntervalMs);else{this.workerUrl?this.log("worker",`starting worker for from ${this.workerUrl}`):this.log("worker","starting default worker");const t=this._workerObjectUrl(this.workerUrl);this.workerRef=new Worker(t),this.workerRef.onerror=n=>{this.log("worker","worker error",n.message),this.workerRef.terminate()},this.workerRef.onmessage=n=>{n.data.event==="keepAlive"&&this.sendHeartbeat()},this.workerRef.postMessage({event:"start",interval:this.heartbeatIntervalMs})}this.stateChangeCallbacks.open.forEach(t=>t())}_onConnClose(t){this.log("transport","close",t),this._triggerChanError(),this.heartbeatTimer&&clearInterval(this.heartbeatTimer),this.reconnectTimer.scheduleTimeout(),this.stateChangeCallbacks.close.forEach(n=>n(t))}_onConnError(t){this.log("transport",t.message),this._triggerChanError(),this.stateChangeCallbacks.error.forEach(n=>n(t))}_triggerChanError(){this.channels.forEach(t=>t._trigger(Gn.error))}_appendParams(t,n){if(Object.keys(n).length===0)return t;const r=t.match(/\?/)?"&":"?",i=new URLSearchParams(n);return`${t}${r}${i}`}_workerObjectUrl(t){let n;if(t)n=t;else{const r=new Blob([s7],{type:"application/javascript"});n=URL.createObjectURL(r)}return n}}class i7{constructor(t,n,r){this.binaryType="arraybuffer",this.onclose=()=>{},this.onerror=()=>{},this.onmessage=()=>{},this.onopen=()=>{},this.readyState=so.connecting,this.send=()=>{},this.url=null,this.url=t,this.close=r.close}}class cv extends Error{constructor(t){super(t),this.__isStorageError=!0,this.name="StorageError"}}function ut(e){return typeof e=="object"&&e!==null&&"__isStorageError"in e}class a7 extends cv{constructor(t,n){super(t),this.name="StorageApiError",this.status=n}toJSON(){return{name:this.name,message:this.message,status:this.status}}}class Xx extends cv{constructor(t,n){super(t),this.name="StorageUnknownError",this.originalError=n}}var o7=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};const bC=e=>{let t;return e?t=e:typeof fetch>"u"?t=(...n)=>td(async()=>{const{default:r}=await Promise.resolve().then(()=>qo);return{default:r}},void 0).then(({default:r})=>r(...n)):t=fetch,(...n)=>t(...n)},l7=()=>o7(void 0,void 0,void 0,function*(){return typeof Response>"u"?(yield td(()=>Promise.resolve().then(()=>qo),void 0)).Response:Response}),Jx=e=>{if(Array.isArray(e))return e.map(n=>Jx(n));if(typeof e=="function"||e!==Object(e))return e;const t={};return Object.entries(e).forEach(([n,r])=>{const i=n.replace(/([-_][a-z])/gi,a=>a.toUpperCase().replace(/[-_]/g,""));t[i]=Jx(r)}),t};var ha=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};const Ep=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e),c7=(e,t,n)=>ha(void 0,void 0,void 0,function*(){const r=yield l7();e instanceof r&&!(n!=null&&n.noResolveJson)?e.json().then(i=>{t(new a7(Ep(i),e.status||500))}).catch(i=>{t(new Xx(Ep(i),i))}):t(new Xx(Ep(e),e))}),d7=(e,t,n,r)=>{const i={method:e,headers:(t==null?void 0:t.headers)||{}};return e==="GET"?i:(i.headers=Object.assign({"Content-Type":"application/json"},t==null?void 0:t.headers),r&&(i.body=JSON.stringify(r)),Object.assign(Object.assign({},i),n))};function sd(e,t,n,r,i,a){return ha(this,void 0,void 0,function*(){return new Promise((o,l)=>{e(n,d7(t,r,i,a)).then(c=>{if(!c.ok)throw c;return r!=null&&r.noResolveJson?c:c.json()}).then(c=>o(c)).catch(c=>c7(c,l,r))})})}function hh(e,t,n,r){return ha(this,void 0,void 0,function*(){return sd(e,"GET",t,n,r)})}function gr(e,t,n,r,i){return ha(this,void 0,void 0,function*(){return sd(e,"POST",t,r,i,n)})}function u7(e,t,n,r,i){return ha(this,void 0,void 0,function*(){return sd(e,"PUT",t,r,i,n)})}function h7(e,t,n,r){return ha(this,void 0,void 0,function*(){return sd(e,"HEAD",t,Object.assign(Object.assign({},n),{noResolveJson:!0}),r)})}function wC(e,t,n,r,i){return ha(this,void 0,void 0,function*(){return sd(e,"DELETE",t,r,i,n)})}var Vt=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}
824return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};const m7={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},Fw={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};class p7{constructor(t,n={},r,i){this.url=t,this.headers=n,this.bucketId=r,this.fetch=bC(i)}uploadOrUpdate(t,n,r,i){return Vt(this,void 0,void 0,function*(){try{let a;const o=Object.assign(Object.assign({},Fw),i);let l=Object.assign(Object.assign({},this.headers),t==="POST"&&{"x-upsert":String(o.upsert)});const c=o.metadata;typeof Blob<"u"&&r instanceof Blob?(a=new FormData,a.append("cacheControl",o.cacheControl),c&&a.append("metadata",this.encodeMetadata(c)),a.append("",r)):typeof FormData<"u"&&r instanceof FormData?(a=r,a.append("cacheControl",o.cacheControl),c&&a.append("metadata",this.encodeMetadata(c))):(a=r,l["cache-control"]=`max-age=${o.cacheControl}`,l["content-type"]=o.contentType,c&&(l["x-metadata"]=this.toBase64(this.encodeMetadata(c)))),i!=null&&i.headers&&(l=Object.assign(Object.assign({},l),i.headers));const d=this._removeEmptyFolders(n),u=this._getFinalPath(d),h=yield this.fetch(`${this.url}/object/${u}`,Object.assign({method:t,body:a,headers:l},o!=null&&o.duplex?{duplex:o.duplex}:{})),m=yield h.json();return h.ok?{data:{path:d,id:m.Id,fullPath:m.Key},error:null}:{data:null,error:m}}catch(a){if(ut(a))return{data:null,error:a};throw a}})}upload(t,n,r){return Vt(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",t,n,r)})}uploadToSignedUrl(t,n,r,i){return Vt(this,void 0,void 0,function*(){const a=this._removeEmptyFolders(t),o=this._getFinalPath(a),l=new URL(this.url+`/object/upload/sign/${o}`);l.searchParams.set("token",n);try{let c;const d=Object.assign({upsert:Fw.upsert},i),u=Object.assign(Object.assign({},this.headers),{"x-upsert":String(d.upsert)});typeof Blob<"u"&&r instanceof Blob?(c=new FormData,c.append("cacheControl",d.cacheControl),c.append("",r)):typeof FormData<"u"&&r instanceof FormData?(c=r,c.append("cacheControl",d.cacheControl)):(c=r,u["cache-control"]=`max-age=${d.cacheControl}`,u["content-type"]=d.contentType);const h=yield this.fetch(l.toString(),{method:"PUT",body:c,headers:u}),m=yield h.json();return h.ok?{data:{path:a,fullPath:m.Key},error:null}:{data:null,error:m}}catch(c){if(ut(c))return{data:null,error:c};throw c}})}createSignedUploadUrl(t,n){return Vt(this,void 0,void 0,function*(){try{let r=this._getFinalPath(t);const i=Object.assign({},this.headers);n!=null&&n.upsert&&(i["x-upsert"]="true");const a=yield gr(this.fetch,`${this.url}/object/upload/sign/${r}`,{},{headers:i}),o=new URL(this.url+a.url),l=o.searchParams.get("token");if(!l)throw new cv("No token returned by API");return{data:{signedUrl:o.toString(),path:t,token:l},error:null}}catch(r){if(ut(r))return{data:null,error:r};throw r}})}update(t,n,r){return Vt(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",t,n,r)})}move(t,n,r){return Vt(this,void 0,void 0,function*(){try{return{data:yield gr(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:t,destinationKey:n,destinationBucket:r==null?void 0:r.destinationBucket},{headers:this.headers}),error:null}}catch(i){if(ut(i))return{data:null,error:i};throw i}})}copy(t,n,r){return Vt(this,void 0,void 0,function*(){try{return{data:{path:(yield gr(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:t,destinationKey:n,destinationBucket:r==null?void 0:r.destinationBucket},{headers:this.headers})).Key},error:null}}catch(i){if(ut(i))return{data:null,error:i};throw i}})}createSignedUrl(t,n,r){return Vt(this,void 0,void 0,function*(){try{let i=this._getFinalPath(t),a=yield gr(this.fetch,`${this.url}/object/sign/${i}`,Object.assign({expiresIn:n},r!=null&&r.transform?{transform:r.transform}:{}),{headers:this.headers});const o=r!=null&&r.download?`&download=${r.download===!0?"":r.download}`:"";return a={signedUrl:encodeURI(`${this.url}${a.signedURL}${o}`)},{data:a,error:null}}catch(i){if(ut(i))return{data:null,error:i};throw i}})}createSignedUrls(t,n,r){return Vt(this,void 0,void 0,function*(){try{const i=yield gr(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:n,paths:t},{headers:this.headers}),a=r!=null&&r.download?`&download=${r.download===!0?"":r.download}`:"";return{data:i.map(o=>Object.assign(Object.assign({},o),{signedUrl:o.signedURL?encodeURI(`${this.url}${o.signedURL}${a}`):null})),error:null}}catch(i){if(ut(i))return{data:null,error:i};throw i}})}download(t,n){return Vt(this,void 0,void 0,function*(){const i=typeof(n==null?void 0:n.transform)<"u"?"render/image/authenticated":"object",a=this.transformOptsToQueryString((n==null?void 0:n.transform)||{}),o=a?`?${a}`:"";try{const l=this._getFinalPath(t);return{data:yield(yield hh(this.fetch,`${this.url}/${i}/${l}${o}
824`,{headers:this.headers,noResolveJson:!0})).blob(),error:null}}catch(l){if(ut(l))return{data:null,error:l};throw l}})}info(t){return Vt(this,void 0,void 0,function*(){const n=this._getFinalPath(t);try{const r=yield hh(this.fetch,`${this.url}/object/info/${n}`,{headers:this.headers});return{data:Jx(r),error:null}}catch(r){if(ut(r))return{data:null,error:r};throw r}})}exists(t){return Vt(this,void 0,void 0,function*(){const n=this._getFinalPath(t);try{return yield h7(this.fetch,`${this.url}/object/${n}`,{headers:this.headers}),{data:!0,error:null}}catch(r){if(ut(r)&&r instanceof Xx){const i=r.originalError;if([400,404].includes(i==null?void 0:i.status))return{data:!1,error:r}}throw r}})}getPublicUrl(t,n){const r=this._getFinalPath(t),i=[],a=n!=null&&n.download?`download=${n.download===!0?"":n.download}`:"";a!==""&&i.push(a);const l=typeof(n==null?void 0:n.transform)<"u"?"render/image":"object",c=this.transformOptsToQueryString((n==null?void 0:n.transform)||{});c!==""&&i.push(c);let d=i.join("&");return d!==""&&(d=`?${d}`),{data:{publicUrl:encodeURI(`${this.url}/${l}/public/${r}${d}`)}}}remove(t){return Vt(this,void 0,void 0,function*(){try{return{data:yield wC(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:t},{headers:this.headers}),error:null}}catch(n){if(ut(n))return{data:null,error:n};throw n}})}list(t,n,r){return Vt(this,void 0,void 0,function*(){try{const i=Object.assign(Object.assign(Object.assign({},m7),n),{prefix:t||""});return{data:yield gr(this.fetch,`${this.url}/object/list/${this.bucketId}`,i,{headers:this.headers},r),error:null}}catch(i){if(ut(i))return{data:null,error:i};throw i}})}encodeMetadata(t){return JSON.stringify(t)}toBase64(t){return typeof Buffer<"u"?Buffer.from(t).toString("base64"):btoa(t)}_getFinalPath(t){return`${this.bucketId}/${t}`}_removeEmptyFolders(t){return t.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(t){const n=[];return t.width&&n.push(`width=${t.width}`),t.height&&n.push(`height=${t.height}`),t.resize&&n.push(`resize=${t.resize}`),t.format&&n.push(`format=${t.format}`),t.quality&&n.push(`quality=${t.quality}`),n.join("&")}}const f7="2.7.1",x7={"X-Client-Info":`storage-js/${f7}`};var ba=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};class g7{constructor(t,n={},r){this.url=t,this.headers=Object.assign(Object.assign({},x7),n),this.fetch=bC(r)}listBuckets(){return ba(this,void 0,void 0,function*(){try{return{data:yield hh(this.fetch,`${this.url}/bucket`,{headers:this.headers}),error:null}}catch(t){if(ut(t))return{data:null,error:t};throw t}})}getBucket(t){return ba(this,void 0,void 0,function*(){try{return{data:yield hh(this.fetch,`${this.url}/bucket/${t}`,{headers:this.headers}),error:null}}catch(n){if(ut(n))return{data:null,error:n};throw n}})}createBucket(t,n={public:!1}){return ba(this,void 0,void 0,function*(){try{return{data:yield gr(this.fetch,`${this.url}/bucket`,{id:t,name:t,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(r){if(ut(r))return{data:null,error:r};throw r}})}updateBucket(t,n){return ba(this,void 0,void 0,function*(){try{return{data:yield u7(this.fetch,`${this.url}/bucket/${t}`,{id:t,name:t,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(r){if(ut(r))return{data:null,error:r};throw r}})}emptyBucket(t){return ba(this,void 0,void 0,function*(){try{return{data:yield gr(this.fetch,`${this.url}/bucket/${t}/empty`,{},{headers:this.headers}),error:null}}catch(n){if(ut(n))return{data:null,error:n};throw n}})}deleteBucket(t){return ba(this,void 0,void 0,function*(){try{return{data:yield wC(this.fetch,`${this.url}/bucket/${t}`,{},{headers:this.headers}),error:null}}catch(n){if(ut(n))return{data:null,error:n};throw n}})}}class v7 extends g7{constructor(t,n={},r){super(t,n,r)}from(t){return new p7(this.url,this.headers,t,this.fetch)}}const y7="2.50.0";let Tl="";typeof Deno<"u"?Tl="deno":typeof document<"u"?Tl="web":typeof navigator<"u"&&navigator.product==="ReactNative"?Tl="react-native":Tl="node";const b7={"X-Client-Info":`supabase-js-${Tl}/${y7}`},w7={headers:b7},j7={schema:"public"},N7={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},k7={};var S7=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}
824return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};const C7=e=>{let t;return e?t=e:typeof fetch>"u"?t=iC:t=fetch,(...n)=>t(...n)},P7=()=>typeof Headers>"u"?aC:Headers,E7=(e,t,n)=>{const r=C7(n),i=P7();return(a,o)=>S7(void 0,void 0,void 0,function*(){var l;const c=(l=yield t())!==null&&l!==void 0?l:e;let d=new i(o==null?void 0:o.headers);return d.has("apikey")||d.set("apikey",e),d.has("Authorization")||d.set("Authorization",`Bearer ${c}`),r(a,Object.assign(Object.assign({},o),{headers:d}))})};var T7=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};function _7(e){return e.endsWith("/")?e:e+"/"}function A7(e,t){var n,r;const{db:i,auth:a,realtime:o,global:l}=e,{db:c,auth:d,realtime:u,global:h}=t,m={db:Object.assign(Object.assign({},c),i),auth:Object.assign(Object.assign({},d),a),realtime:Object.assign(Object.assign({},u),o),global:Object.assign(Object.assign(Object.assign({},h),l),{headers:Object.assign(Object.assign({},(n=h==null?void 0:h.headers)!==null&&n!==void 0?n:{}),(r=l==null?void 0:l.headers)!==null&&r!==void 0?r:{})}),accessToken:()=>T7(this,void 0,void 0,function*(){return""})};return e.accessToken?m.accessToken=e.accessToken:delete m.accessToken,m}const jC="2.70.0",Sa=30*1e3,Zx=3,Tp=Zx*Sa,R7="http://localhost:9999",D7="supabase.auth.token",M7={"X-Client-Info":`gotrue-js/${jC}`},eg="X-Supabase-Api-Version",NC={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}},L7=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}$|[a-z0-9_-]{2}$)$/i,I7=6e5;class dv extends Error{constructor(t,n,r){super(t),this.__isAuthError=!0,this.name="AuthError",this.status=n,this.code=r}}function oe(e){return typeof e=="object"&&e!==null&&"__isAuthError"in e}class O7 extends dv{constructor(t,n,r){super(t,n,r),this.name="AuthApiError",this.status=n,this.code=r}}function F7(e){return oe(e)&&e.name==="AuthApiError"}class kC extends dv{constructor(t,n){super(t),this.name="AuthUnknownError",this.originalError=n}}class di extends dv{constructor(t,n,r,i){super(t,r,i),this.name=n,this.status=r}}class hr extends di{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}function $7(e){return oe(e)&&e.name==="AuthSessionMissingError"}class Vd extends di{constructor(){super("Auth session or user missing","AuthInvalidToken
824ResponseError",500,void 0)}}class Wd extends di{constructor(t){super(t,"AuthInvalidCredentialsError",400,void 0)}}class Hd extends di{constructor(t,n=null){super(t,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}function B7(e){return oe(e)&&e.name==="AuthImplicitGrantRedirectError"}class $w extends di{constructor(t,n=null){super(t,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=n}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}class tg extends di{constructor(t,n){super(t,"AuthRetryableFetchError",n,void 0)}}function _p(e){return oe(e)&&e.name==="AuthRetryableFetchError"}class Bw extends di{constructor(t,n,r){super(t,"AuthWeakPasswordError",n,"weak_password"),this.reasons=r}}class Hl extends di{constructor(t){super(t,"AuthInvalidJwtError",400,"invalid_jwt")}}const mh="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".split(""),zw=` 825\r=`.split(""),z7=(()=>{const e=new Array(128);for(let t=0;t<e.length;t+=1)e[t]=-1;for(let t=0;t<zw.length;t+=1)e[zw[t].charCodeAt(0)]=-2;for(let t=0;t<mh.length;t+=1)e[mh[t].charCodeAt(0)]=t;return e})();function Uw(e,t,n){if(e!==null)for(t.queue=t.queue<<8|e,t.queuedBits+=8;t.queuedBits>=6;){const r=t.queue>>t.queuedBits-6&63;n(mh[r]),t.queuedBits-=6}else if(t.queuedBits>0)for(t.queue=t.queue<<6-t.queuedBits,t.queuedBits=6;t.queuedBits>=6;){const r=t.queue>>t.queuedBits-6&63;n(mh[r]),t.queuedBits-=6}}function SC(e,t,n){const r=z7[e];if(r>-1)for(t.queue=t.queue<<6|r,t.queuedBits+=6;t.queuedBits>=8;)n(t.queue>>t.queuedBits-8&255),t.queuedBits-=8;else{if(r===-2)return;throw new Error(`Invalid Base64-URL character "${String.fromCharCode(e)}"`)}}function Vw(e){const t=[],n=o=>{t.push(String.fromCodePoint(o))},r={utf8seq:0,codepoint:0},i={queue:0,queuedBits:0},a=o=>{W7(o,r,n)};for(let o=0;o<e.length;o+=1)SC(e.charCodeAt(o),i,a);return t.join("")}function U7(e,t){if(e<=127){t(e);return}else if(e<=2047){t(192|e>>6),t(128|e&63);return}else if(e<=65535){t(224|e>>12),t(128|e>>6&63),t(128|e&63);return}else if(e<=1114111){t(240|e>>18),t(128|e>>12&63),t(128|e>>6&63),t(128|e&63);return}throw new Error(`Unrecognized Unicode codepoint: ${e.toString(16)}`)}function V7(e,t){for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);if(r>55295&&r<=56319){const i=(r-55296)*1024&65535;r=(e.charCodeAt(n+1)-56320&65535|i)+65536,n+=1}U7(r,t)}}function W7(e,t,n){if(t.utf8seq===0){if(e<=127){n(e);return}for(let r=1;r<6;r+=1)if(!(e>>7-r&1)){t.utf8seq=r;break}if(t.utf8seq===2)t.codepoint=e&31;else if(t.utf8seq===3)t.codepoint=e&15;else if(t.utf8seq===4)t.codepoint=e&7;else throw new Error("Invalid UTF-8 sequence");t.utf8seq-=1}else if(t.utf8seq>0){if(e<=127)throw new Error("Invalid UTF-8 sequence");t.codepoint=t.codepoint<<6|e&63,t.utf8seq-=1,t.utf8seq===0&&n(t.codepoint)}}function H7(e){const t=[],n={queue:0,queuedBits:0},r=i=>{t.push(i)};for(let i=0;i<e.length;i+=1)SC(e.charCodeAt(i),n,r);return new Uint8Array(t)}function G7(e){const t=[];return V7(e,n=>t.push(n)),new Uint8Array(t)}function q7(e){const t=[],n={queue:0,queuedBits:0},r=i=>{t.push(i)};return e.forEach(i=>Uw(i,n,r)),Uw(null,n,r),t.join("")}function K7(e){return Math.round(Date.now()/1e3)+e}function Q7(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}const Bn=()=>typeof window<"u"&&typeof document<"u",gi={tested:!1,writable:!1},Gl=()=>{if(!Bn())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(gi.tested)return gi.writable;const e=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(e,e),globalThis.localStorage.removeItem(e),gi.tested=!0,gi.writable=!0}catch{gi.tested=!0,gi.writable=!1}return gi.writable};function Y7(e){const t={},n=new URL(e);if(n.hash&&n.hash[0]==="#")try{new URLSearchParams(n.hash.substring(1)).forEach((i,a)=>{t[a]=i})}catch{}return n.searchParams.forEach((r,i)=>{t[i]=r}),t}const CC=e=>{let t;return e?t=e:typeof fetch>"u"?t=(...n)=>td(async()=>{const{default:r}=await Promise.resolve().then(()=>qo);return{default:r}},void 0).then(({default:r})=>r(...n)):t=fetch,(...n)=>t(...n)},X7=e=>typeof e=="object"&&e!==null&&"status"in e&&"ok"in e&&"json"in e&&typeof e.json=="function",PC=async(e,t,n)=>{await e.setItem(t,JSON.stringify(n))},Gd=async(e,t)=>{const n=await e.getItem(t);if(!n)return null;try{return JSON.parse(n)}catch{return n}},qd=async(e,t)=>{await e.removeItem(t)};class bm{constructor(){this.promise=new bm.promiseConstructor((t,n)=>{this.resolve=t,this.reject=n})}}bm.promiseConstructor=Promise;function Ap(e){const t=e.split(".");if(t.length!==3)throw new Hl("Invalid JWT structure");for(let r=0;r<t.length;r++)if(!L7.test(t[r]))throw new Hl("JWT not in base64url format");return{header:JSON.parse(Vw(t[0])),payload:JSON.parse(Vw(t[1])),signature:H7(t[2]),raw:{header:t[0],payload:t[1]}}}async function J7(e){return await new Promise(t=>{setTimeout(()=>t(null),e)})}function Z7(e,t){return new Promise((r,i)=>{(async()=>{for(let a=0;a<1/0;a++)try{const o=await e(a);if(!t(a,null,o)){r(o);return}}catch(o){if(!t(a,o)){i(o);return}}})()})}function eF(e){return("0"+e.toString(16)).substr(-2)}function tF(){const t=new Uint32Array(56);if(typeof crypto>"u"){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",r=n.length;let i="";for(let a=0;a<56;a++)i+=n.charAt(Math.floor(Math.random()*r));return i}return crypto.getRandomValues(t),Array.from(t,eF).join("")}async function nF(e){const n=new TextEncoder().encode(e),r=await crypto.subtle.digest("SHA-256",
825n),i=new Uint8Array(r);return Array.from(i).map(a=>String.fromCharCode(a)).join("")}async function sF(e){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),e;const n=await nF(e);return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function wa(e,t,n=!1){const r=tF();let i=r;n&&(i+="/PASSWORD_RECOVERY"),await PC(e,`${t}-code-verifier`,i);const a=await sF(r);return[a,r===a?"plain":"s256"]}const rF=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function iF(e){const t=e.headers.get(eg);if(!t||!t.match(rF))return null;try{return new Date(`${t}T00:00:00.0Z`)}catch{return null}}function aF(e){if(!e)throw new Error("Missing exp claim");const t=Math.floor(Date.now()/1e3);if(e<=t)throw new Error("JWT has expired")}function oF(e){switch(e){case"RS256":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case"ES256":return{name:"ECDSA",namedCurve:"P-256",hash:{name:"SHA-256"}};default:throw new Error("Invalid alg claim")}}const lF=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function ja(e){if(!lF.test(e))throw new Error("@supabase/auth-js: Expected parameter to be UUID but is not")}var cF=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};const wi=e=>e.msg||e.message||e.error_description||e.error||JSON.stringify(e),dF=[502,503,504];async function Ww(e){var t;if(!X7(e))throw new tg(wi(e),0);if(dF.includes(e.status))throw new tg(wi(e),e.status);let n;try{n=await e.json()}catch(a){throw new kC(wi(a),a)}let r;const i=iF(e);if(i&&i.getTime()>=NC["2024-01-01"].timestamp&&typeof n=="object"&&n&&typeof n.code=="string"?r=n.code:typeof n=="object"&&n&&typeof n.error_code=="string"&&(r=n.error_code),r){if(r==="weak_password")throw new Bw(wi(n),e.status,((t=n.weak_password)===null||t===void 0?void 0:t.reasons)||[]);if(r==="session_not_found")throw new hr}else if(typeof n=="object"&&n&&typeof n.weak_password=="object"&&n.weak_password&&Array.isArray(n.weak_password.reasons)&&n.weak_password.reasons.length&&n.weak_password.reasons.reduce((a,o)=>a&&typeof o=="string",!0))throw new Bw(wi(n),e.status,n.weak_password.reasons);throw new O7(wi(n),e.status||500,r)}const uF=(e,t,n,r)=>{const i={method:e,headers:(t==null?void 0:t.headers)||{}};return e==="GET"?i:(i.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},t==null?void 0:t.headers),i.body=JSON.stringify(r),Object.assign(Object.assign({},i),n))};async function me(e,t,n,r){var i;const a=Object.assign({},r==null?void 0:r.headers);a[eg]||(a[eg]=NC["2024-01-01"].name),r!=null&&r.jwt&&(a.Authorization=`Bearer ${r.jwt}`);const o=(i=r==null?void 0:r.query)!==null&&i!==void 0?i:{};r!=null&&r.redirectTo&&(o.redirect_to=r.redirectTo);const l=Object.keys(o).length?"?"+new URLSearchParams(o).toString():"",c=await hF(e,t,n+l,{headers:a,noResolveJson:r==null?void 0:r.noResolveJson},{},r==null?void 0:r.body);return r!=null&&r.xform?r==null?void 0:r.xform(c):{data:Object.assign({},c),error:null}}async function hF(e,t,n,r,i,a){const o=uF(t,r,i,a);let l;try{l=await e(n,Object.assign({},o))}catch(c){throw console.error(c),new tg(wi(c),0)}if(l.ok||await Ww(l),r!=null&&r.noResolveJson)return l;try{return await l.json()}catch(c){await Ww(c)}}function Us(e){var t;let n=null;xF(e)&&(n=Object.assign({},e),e.expires_at||(n.expires_at=K7(e.expires_in)));const r=(t=e.user)!==null&&t!==void 0?t:e;return{data:{session:n,user:r},error:null}}function Hw(e){const t=Us(e);return!t.error&&e.weak_password&&typeof e.weak_password=="object"&&Array.isArray(e.weak_password.reasons)&&e.weak_password.reasons.length&&e.weak_password.message&&typeof e.weak_password.message=="string"&&e.weak_password.reasons.reduce((n,r)=>n&&typeof r=="string",!0)&&(t.data.weak_password=e.weak_password),t}function br(e){var t;return{data:{user:(t=e.user)!==null&&t!==void 0?t:e},error:null}}function mF(e){return{data:e,error:null}}function pF(e){const{action_link:t,email_otp:n,hashed_token:r,redirect_to:i,verification_type:a}=e,o=cF(e,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),l={action_link:t,email_otp:n,hashed_token:r,redirect_to:i,verification_type:a},c=Object.assign({},o);return{data:{properties:l,user:c},error:null}}function fF(e){return e}function xF(e){return e.access_token&&e.refresh_token&&e.expires_in}const Rp=["global","local","others"];var gF=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};class vF{constructor({url:t="",headers:n={},fetch:r}){this.url=t,this.headers=n,this.fetch=CC(r),this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)}}
825async signOut(t,n=Rp[0]){if(Rp.indexOf(n)<0)throw new Error(`@supabase/auth-js: Parameter scope must be one of ${Rp.join(", ")}`);try{return await me(this.fetch,"POST",`${this.url}/logout?scope=${n}`,{headers:this.headers,jwt:t,noResolveJson:!0}),{data:null,error:null}}catch(r){if(oe(r))return{data:null,error:r};throw r}}async inviteUserByEmail(t,n={}){try{return await me(this.fetch,"POST",`${this.url}/invite`,{body:{email:t,data:n.data},headers:this.headers,redirectTo:n.redirectTo,xform:br})}catch(r){if(oe(r))return{data:{user:null},error:r};throw r}}async generateLink(t){try{const{options:n}=t,r=gF(t,["options"]),i=Object.assign(Object.assign({},r),n);return"newEmail"in r&&(i.new_email=r==null?void 0:r.newEmail,delete i.newEmail),await me(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:i,headers:this.headers,xform:pF,redirectTo:n==null?void 0:n.redirectTo})}catch(n){if(oe(n))return{data:{properties:null,user:null},error:n};throw n}}async createUser(t){try{return await me(this.fetch,"POST",`${this.url}/admin/users`,{body:t,headers:this.headers,xform:br})}catch(n){if(oe(n))return{data:{user:null},error:n};throw n}}async listUsers(t){var n,r,i,a,o,l,c;try{const d={nextPage:null,lastPage:0,total:0},u=await me(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(r=(n=t==null?void 0:t.page)===null||n===void 0?void 0:n.toString())!==null&&r!==void 0?r:"",per_page:(a=(i=t==null?void 0:t.perPage)===null||i===void 0?void 0:i.toString())!==null&&a!==void 0?a:""},xform:fF});if(u.error)throw u.error;const h=await u.json(),m=(o=u.headers.get("x-total-count"))!==null&&o!==void 0?o:0,p=(c=(l=u.headers.get("link"))===null||l===void 0?void 0:l.split(","))!==null&&c!==void 0?c:[];return p.length>0&&(p.forEach(g=>{const f=parseInt(g.split(";")[0].split("=")[1].substring(0,1)),b=JSON.parse(g.split(";")[1].split("=")[1]);d[`${b}Page`]=f}),d.total=parseInt(m)),{data:Object.assign(Object.assign({},h),d),error:null}}catch(d){if(oe(d))return{data:{users:[]},error:d};throw d}}async getUserById(t){ja(t);try{return await me(this.fetch,"GET",`${this.url}/admin/users/${t}`,{headers:this.headers,xform:br})}catch(n){if(oe(n))return{data:{user:null},error:n};throw n}}async updateUserById(t,n){ja(t);try{return await me(this.fetch,"PUT",`${this.url}/admin/users/${t}`,{body:n,headers:this.headers,xform:br})}catch(r){if(oe(r))return{data:{user:null},error:r};throw r}}async deleteUser(t,n=!1){ja(t);try{return await me(this.fetch,"DELETE",`${this.url}/admin/users/${t}`,{headers:this.headers,body:{should_soft_delete:n},xform:br})}catch(r){if(oe(r))return{data:{user:null},error:r};throw r}}async _listFactors(t){ja(t.userId);try{const{data:n,error:r}=await me(this.fetch,"GET",`${this.url}/admin/users/${t.userId}/factors`,{headers:this.headers,xform:i=>({data:{factors:i},error:null})});return{data:n,error:r}}catch(n){if(oe(n))return{data:null,error:n};throw n}}async _deleteFactor(t){ja(t.userId),ja(t.id);try{return{data:await me(this.fetch,"DELETE",`${this.url}/admin/users/${t.userId}/factors/${t.id}`,{headers:this.headers}),error:null}}catch(n){if(oe(n))return{data:null,error:n};throw n}}}const yF={getItem:e=>Gl()?globalThis.localStorage.getItem(e):null,setItem:(e,t)=>{Gl()&&globalThis.localStorage.setItem(e,t)},removeItem:e=>{Gl()&&globalThis.localStorage.removeItem(e)}};function Gw(e={}){return{getItem:t=>e[t]||null,setItem:(t,n)=>{e[t]=n},removeItem:t=>{delete e[t]}}}function bF(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}const Na={debug:!!(globalThis&&Gl()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class EC extends Error{constructor(t){super(t),this.isAcquireTimeout=!0}}class wF extends EC{}async function jF(e,t,n){Na.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquire lock",e,t);const r=new globalThis.AbortController;return t>0&&setTimeout(()=>{r.abort(),Na.debug&&console.log("@supabase/gotrue-js: navigatorLock acquire timed out",e)},t),await Promise.resolve().then(()=>
825globalThis.navigator.locks.request(e,t===0?{mode:"exclusive",ifAvailable:!0}:{mode:"exclusive",signal:r.signal},async i=>{if(i){Na.debug&&console.log("@supabase/gotrue-js: navigatorLock: acquired",e,i.name);try{return await n()}finally{Na.debug&&console.log("@supabase/gotrue-js: navigatorLock: released",e,i.name)}}else{if(t===0)throw Na.debug&&console.log("@supabase/gotrue-js: navigatorLock: not immediately available",e),new wF(`Acquiring an exclusive Navigator LockManager lock "${e}" immediately failed`);if(Na.debug)try{const a=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(a,null," "))}catch(a){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",a)}return console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request"),await n()}}))}bF();const NF={url:R7,storageKey:D7,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:M7,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1};async function qw(e,t,n){return await n()}class Cc{constructor(t){var n,r;this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log,this.instanceID=Cc.nextInstanceID,Cc.nextInstanceID+=1,this.instanceID>0&&Bn()&&console.warn("Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.");const i=Object.assign(Object.assign({},NF),t);if(this.logDebugMessages=!!i.debug,typeof i.debug=="function"&&(this.logger=i.debug),this.persistSession=i.persistSession,this.storageKey=i.storageKey,this.autoRefreshToken=i.autoRefreshToken,this.admin=new vF({url:i.url,headers:i.headers,fetch:i.fetch}),this.url=i.url,this.headers=i.headers,this.fetch=CC(i.fetch),this.lock=i.lock||qw,this.detectSessionInUrl=i.detectSessionInUrl,this.flowType=i.flowType,this.hasCustomAuthorizationHeader=i.hasCustomAuthorizationHeader,i.lock?this.lock=i.lock:Bn()&&(!((n=globalThis==null?void 0:globalThis.navigator)===null||n===void 0)&&n.locks)?this.lock=jF:this.lock=qw,this.jwks={keys:[]},this.jwks_cached_at=Number.MIN_SAFE_INTEGER,this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)},this.persistSession?i.storage?this.storage=i.storage:Gl()?this.storage=yF:(this.memoryStorage={},this.storage=Gw(this.memoryStorage)):(this.memoryStorage={},this.storage=Gw(this.memoryStorage)),Bn()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(a){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",a)}(r=this.broadcastChannel)===null||r===void 0||r.addEventListener("message",async a=>{this._debug("received broadcast notification from other tab or client",a),await this._notifyAllSubscribers(a.data.event,a.data.session,!1)})}this.initialize()}_debug(...t){return this.logDebugMessages&&this.logger(`GoTrueClient@${this.instanceID} (${jC}) ${new Date().toISOString()}`,...t),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>await this._acquireLock(-1,async()=>await this._initialize()))(),await this.initializePromise)}async _initialize(){var t;try{const n=Y7(window.location.href);let r="none";if(this._isImplicitGrantCallback(n)?r="implicit":await this._isPKCECallback(n)&&(r="pkce"),Bn()&&this.detectSessionInUrl&&r!=="none"){const{data:i,error:a}=await this._getSessionFromURL(n,r);if(a){if(this._debug("#_initialize()","error detecting session from URL",a),B7(a)){const c=(t=a.details)===null||t===void 0?void 0:t.code;if(c==="identity_already_exists"||c==="identity_not_found"||c==="single_identity_not_deletable")return{error:a}}return await this._removeSession(),{error:a}}const{session:o,redirectType:l}=i;return this._debug("#_initialize()","detected session in URL",o,"redirect type",l),await this._saveSession(o),setTimeout(async()=>{l==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",o):await this._notifyAllSubscribers("SIGNED_IN",o)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(n){return oe(n)?{error:n}:{error:new kC("Unexpected error during initialization",n)}}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(t){var n,r,i;try{const a=await me(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(r=(n=t==null?void 0:t.options)===null||n===void 0?void 0:n.data)!==null&&r!==void 0?r:{},gotrue_meta_security:{captcha_token:(i=t==null?void 0:t.options)===null||i===void 0?void 0:i.captchaToken}},xform:Us}),{data:o,error:l}=a;if(l||!o)return{data:{user:null,session:null},error:l};const c=o.session,d=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",c)),{data:{user:d,session:c},error:null}}catch(a){if(oe(a))return{data:{user:null,session:null},error:a};throw a}}async signUp(t){var n,r,i;try{let a;if("email"in t){const{email:u,password:h,options:m}=t;let p=null,g=null;this.flowType==="pkce"&&([p,g]=await wa(this.storage,this.storageKey)),a=await me(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:m==null?void 0:m.emailRedirectTo,body:{email:u,password:h,data:(n=m==null?void 0:m.data)!==null&&n!==void 0?n:{},gotrue_meta_security:{captcha_token:m==null?void 0:m.captchaToken},code_challenge:p,code_challenge_method:g},xform:Us})}else if("phone"in t){const{phone:u,password:h,options:m}=t;a=await me(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:u,password:h,data:(r=m==null?void 0:m.data)!==null&&r!==void 0?r:{},channel:(i=m==null?void 0:m.channel)!==null&&i!==void 0?i:"sms",gotrue_meta_security:{captcha_token:m==null?void 0:m.captchaToken}},xform:Us})}else throw new Wd("You must provide either an email or phone number and a password");const{data:o,error:l}=a;if(l||!o)return{data:{user:null,session:null},error:l};const c=o.session,d=o.user;return o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",c)),{data:{user:d,session:c},error:null}}catch(a){if(oe(a))return{data:{user:null,session:null},error:a};throw a}}async signInWithPassword(t){try{let n;if("email"in t){const{email:a,password:o,options:l}=t;n=await me(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:a,password:o,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken}},xform:Hw})}else if("phone"in t){const{phone:a,password:o,options:l}=t;n=await me(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:a,password:o,gotrue_meta_security:{captcha_token:l==null?void 0:l.captchaToken}},xform:Hw})}else throw new Wd("You must provide either an email or phone number and a password");const{data:r,error:i}=n;return i?{data:{user:null,session:null},error:i}:!r||!r.session||!r.user?{data:{user:null,session:null},error:new Vd}:(r.session&&(await this._saveSession(r.session),await this._notifyAllSubscribers("SIGNED_IN",r.session)),{data:Object.assign({user:r.user,session:r.session},r.weak_password?{weakPassword:r.weak_password}:null),error:i})}catch(n){if(oe(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOAuth(t){var n,r,i,a;return await this._handleProviderSignIn(t.provider,{redirectTo:(n=t.options)===null||n===void 0?void 0:n.redirectTo,scopes:(r=t.options)===null||r===void 0?void 0:r.scopes,queryParams:(i=t.options)===null||i===void 0?void 0:i.queryParams,skipBrowserRedirect:(a=t.o
825ptions)===null||a===void 0?void 0:a.skipBrowserRedirect})}async exchangeCodeForSession(t){return await this.initializePromise,this._acquireLock(-1,async()=>this._exchangeCodeForSession(t))}async signInWithWeb3(t){const{chain:n}=t;if(n==="solana")return await this.signInWithSolana(t);throw new Error(`@supabase/auth-js: Unsupported chain "${n}"`)}async signInWithSolana(t){var n,r,i,a,o,l,c,d,u,h,m,p;let g,f;if("message"in t)g=t.message,f=t.signature;else{const{chain:b,wallet:v,statement:y,options:w}=t;let j;if(Bn())if(typeof v=="object")j=v;else{const C=window;if("solana"in C&&typeof C.solana=="object"&&("signIn"in C.solana&&typeof C.solana.signIn=="function"||"signMessage"in C.solana&&typeof C.solana.signMessage=="function"))j=C.solana;else throw new Error("@supabase/auth-js: No compatible Solana wallet interface on the window object (window.solana) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'solana', wallet: resolvedUserWallet }) instead.")}else{if(typeof v!="object"||!(w!=null&&w.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");j=v}const N=new URL((n=w==null?void 0:w.url)!==null&&n!==void 0?n:window.location.href);if("signIn"in j&&j.signIn){const C=await j.signIn(Object.assign(Object.assign(Object.assign({issuedAt:new Date().toISOString()},w==null?void 0:w.signInWithSolana),{version:"1",domain:N.host,uri:N.href}),y?{statement:y}:null));let k;if(Array.isArray(C)&&C[0]&&typeof C[0]=="object")k=C[0];else if(C&&typeof C=="object"&&"signedMessage"in C&&"signature"in C)k=C;else throw new Error("@supabase/auth-js: Wallet method signIn() returned unrecognized value");if("signedMessage"in k&&"signature"in k&&(typeof k.signedMessage=="string"||k.signedMessage instanceof Uint8Array)&&k.signature instanceof Uint8Array)g=typeof k.signedMessage=="string"?k.signedMessage:new TextDecoder().decode(k.signedMessage),f=k.signature;else throw new Error("@supabase/auth-js: Wallet method signIn() API returned object without signedMessage and signature fields")}else{if(!("signMessage"in j)||typeof j.signMessage!="function"||!("publicKey"in j)||typeof j!="object"||!j.publicKey||!("toBase58"in j.publicKey)||typeof j.publicKey.toBase58!="function")throw new Error("@supabase/auth-js: Wallet does not have a compatible signMessage() and publicKey.toBase58() API");g=[`${N.host} wants you to sign in with your Solana account:`,j.publicKey.toBase58(),...y?["",y,""]:[""],"Version: 1",`URI: ${N.href}`,`Issued At: ${(i=(r=w==null?void 0:w.signInWithSolana)===null||r===void 0?void 0:r.issuedAt)!==null&&i!==void 0?i:new Date().toISOString()}`,...!((a=w==null?void 0:w.signInWithSolana)===null||a===void 0)&&a.notBefore?[`Not Before: ${w.signInWithSolana.notBefore}`]:[],...!((o=w==null?void 0:w.signInWithSolana)===null||o===void 0)&&o.expirationTime?[`Expiration Time: ${w.signInWithSolana.expirationTime}`]:[],...!((l=w==null?void 0:w.signInWithSolana)===null||l===void 0)&&l.chainId?[`Chain ID: ${w.signInWithSolana.chainId}`]:[],...!((c=w==null?void 0:w.signInWithSolana)===null||c===void 0)&&c.nonce?[`Nonce: ${w.signInWithSolana.nonce}`]:[],...!((d=w==null?void 0:w.signInWithSolana)===null||d===void 0)&&d.requestId?[`Request ID: ${w.signInWithSolana.requestId}`]:[],...!((h=(u=w==null?void 0:w.signInWithSolana)===null||u===void 0?void 0:u.resources)===null||h===void 0)&&h.length?["Resources",...w.signInWithSolana.resources.map(k=>`- ${k}`)]:[]].join(` 826`);const C=await j.signMessage(new TextEncoder().encode(g),"utf8");if(!C||!(C instanceof Uint8Array))throw new Error("@supabase/auth-js: Wallet signMessage() API returned an recognized value");f=C}}try{const{data:b,error:v}=await me(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"solana",message:g,signature:q7(f)},!((m=t.options)===null||m===void 0)&&m.captchaToken?{gotrue_meta_security:{captcha_token:(p=t.options)===null||p===void 0?void 0:p.captchaToken}}:null),xform:Us});if(v)throw v;return!b||!b.session||!b.user?{data:{user:null,session:null},error:new Vd}:(b.session&&(await this._saveSession(b.session),await this._notifyAllSubscribers("SIGNED_IN",b.session)),{data:Object.assign({},b),error:v})}catch(b){if(oe(b))return{data:{user:null,session:null},error:b};throw b}}async _exchangeCodeForSession(t){const n=await Gd(this.storage,`${this.storageKey}-code-verifier`),[r,i]=(n??"").split("/");try{const{data:a,error:o}=await me(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:t,code_verifier:r},xform:Us});if(await qd(this.storage,`${this.storageKey}-code-verifier`),o)throw o;return!a||!a.session||!a.user?{data:{user:null,session:null,redirectType:null},error:new Vd}:(a.session&&(await this._saveSession(a.session),await this._notifyAllSubscribers("SIGNED_IN",a.session)),{data:Object.assign(Object.assign({},a),{redirectType:i??null}),error:o})}catch(a){if(oe(a))return{data:{user:null,session:null,redirectType:null},error:a};throw a}}async signInWithIdToken(t){try{const{options:n,provider:r,token:i,access_token:a,nonce:o}=t,l=await me(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:r,id_token:i,access_token:a,nonce:o,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:Us}),{data:c,error:d}=l;return d?{data:{user:null,session:null},error:d}:!c||!c.session||!c.user?{data:{user:null,session:null},error:new Vd}:(c.session&&(await this._saveSession(c.session),await this._notifyAllSubscribers("SIGNED_IN",c.session)),{data:c,error:d})}catch(n){if(oe(n))return{data:{user:null,session:null},error:n};throw n}}async signInWithOtp(t){var n,r,i,a,o;try{if("email"in t){const{email:l,options:c}=t;let d=null,u=null;this.flowType==="pkce"&&([d,u]=await wa(this.storage,this.storageKey));const{error:h}=await me(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:l,data:(n=c==null?void 0:c.data)!==null&&n!==void 0?n:{},create_user:(r=c==null?void 0:c.shouldCreateUser)!==null&&r!==void 0?r:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},code_challenge:d,code_challenge_method:u},redirectTo:c==null?void 0:c.emailRedirectTo});return{data:{user:null,session:null},error:h}}if("phone"in t){const{phone:l,options:c}=t,{data:d,error:u}=await me(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:l,data:(i=c==null?void 0:c.data)!==null&&i!==void 0?i:{},create_user:(a=c==null?void 0:c.shouldCreateUser)!==null&&a!==void 0?a:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},channel:(o=c==null?void 0:c.channel)!==null&&o!==void 0?o:"sms"}});return{data:{user:null,session:null,messageId:d==null?void 0:d.message_id},error:u}}throw new Wd("You must provide either an email or phone number.")}catch(l){if(oe(l))return{data:{user:null,session:null},error:l};throw l}}async verifyOtp(t){var n,r;try{let i,a;"options"in t&&(i=(n=t.options)===null||n===void 0?void 0:n.redirectTo,a=(r=t.options)===null||r===void 0?void 0:r.captchaToken);const{data:o,error:l}=await me(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},t),{gotrue_meta_security:{captcha_token:a}}),redirectTo:i,xform:Us});if(l)throw l;if(!o)throw new Error("An error occurred on token verification.");const c=o.session,d=o.user;return c!=null&&c.access_token&&(await this._saveSession(c),await this._notifyAllSubscribers(t.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",c)),{data:{user:d,session:c},error:null}}catch(i){if(oe(i))return{data:{user:null,session:null},error:i};throw i}}async signInWithSSO(t){var n,r,i;try{let a=null,o=null;return this.flowType==="pkce"&&([a,o]=await wa(this.storage,this.storageKey)),await me(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in t?{provider_id:t.providerId}:null),"domain"in t?{domain:t.domain}:null),{redirect_to:(r=(n=t.options)===null||n===void 0?void 0:n.redirectTo)!==null&&r!==void 0?r:void 0}),!((i=t==null?void 0:t.options)===null||i===void 0)&&i.captchaToken?{gotrue_meta_security:{captcha_token:t.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:a,code_challenge_method:o}),headers:this.headers,xform:mF})}catch(a){if(oe(a))return{data:null,error:a};throw a}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async t=>{const{data:{session:n},error:r}=t;if(r)throw r;if(!n)throw new hr;const{error:i}=await me(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:n.access_token});return{data:{user:null,session:null},error:i}})}catch(t){if(oe(t))return{data:{user:null,session:null},error:t};throw t}}async resend(t){try{const n=`${this.url}/resend`;if("email"in t){const{email:r,type:i,options:a}=t,{error:o}=await me(this.fetch,"POST",n,{headers:this.headers,body:{email:r,type:i,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}},redirectTo:a==null?void 0:a.emailRedirectTo});return{data:{user:null,session:null},error:o}}else if("phone"in t){const{phone:r,type:i,options:a}=t,{data:o,error:l}=await me(this.fetch,"POST",n,{headers:this.headers,body:{phone:r,type:i,gotrue_meta_security:{captcha_token:a==null?void 0:a.captchaToken}}});return{data:{user:null,session:null,messageId:o==null?void 0:o.message_id},error:l}}throw new Wd("You must provide either an email or phone number and a type")}catch(n){if(oe(n))return{data:{user:null,session:null},error:n};throw n}}async getSession(){return await this.initializePromise,await this._acquireLock(-1,async()=>this._useSession(async n=>n))}async _acquireLock(t,n){this._debug("#_acquireLock","begin",t);try{if(this.lockAcquired){const r=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),i=(async()=>(await r,await n()))();return this.pendingInLock.push((async()=>{try{await i}catch{}})()),i}return await this.lock(`lock:${this.storageKey}`,t,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const r=n();for(this.pendingInLock.push((async()=>{try{await r}catch{}})()),await r;this.pendingInLock.length;){const i=[...this.pendingInLock];await Promise.all(i),this.pendingInLock.splice(0,i.length)}return await r}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(t){this._debug("#_useSession","begin");try{const n=await this.__loadSession();return await t(n)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let t=null;const n=await Gd(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",n),n!==null&&(this._isValidSession(n)?t=n:(this._debug("#getSession()","session from storage is not val
826id"),await this._removeSession())),!t)return{data:{session:null},error:null};const r=t.expires_at?t.expires_at*1e3-Date.now()<Tp:!1;if(this._debug("#__loadSession()",`session has${r?"":" not"} expired`,"expires_at",t.expires_at),!r){if(this.storage.isServer){let o=this.suppressGetSessionWarning;t=new Proxy(t,{get:(c,d,u)=>(!o&&d==="user"&&(console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and may not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),o=!0,this.suppressGetSessionWarning=!0),Reflect.get(c,d,u))})}return{data:{session:t},error:null}}const{session:i,error:a}=await this._callRefreshToken(t.refresh_token);return a?{data:{session:null},error:a}:{data:{session:i},error:null}}finally{this._debug("#__loadSession()","end")}}async getUser(t){return t?await this._getUser(t):(await this.initializePromise,await this._acquireLock(-1,async()=>await this._getUser()))}async _getUser(t){try{return t?await me(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:t,xform:br}):await this._useSession(async n=>{var r,i,a;const{data:o,error:l}=n;if(l)throw l;return!(!((r=o.session)===null||r===void 0)&&r.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new hr}:await me(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(a=(i=o.session)===null||i===void 0?void 0:i.access_token)!==null&&a!==void 0?a:void 0,xform:br})})}catch(n){if(oe(n))return $7(n)&&(await this._removeSession(),await qd(this.storage,`${this.storageKey}-code-verifier`)),{data:{user:null},error:n};throw n}}async updateUser(t,n={}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._updateUser(t,n))}async _updateUser(t,n={}){try{return await this._useSession(async r=>{const{data:i,error:a}=r;if(a)throw a;if(!i.session)throw new hr;const o=i.session;let l=null,c=null;this.flowType==="pkce"&&t.email!=null&&([l,c]=await wa(this.storage,this.storageKey));const{data:d,error:u}=await me(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:n==null?void 0:n.emailRedirectTo,body:Object.assign(Object.assign({},t),{code_challenge:l,code_challenge_method:c}),jwt:o.access_token,xform:br});if(u)throw u;return o.user=d.user,await this._saveSession(o),await this._notifyAllSubscribers("USER_UPDATED",o),{data:{user:o.user},error:null}})}catch(r){if(oe(r))return{data:{user:null},error:r};throw r}}async setSession(t){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._setSession(t))}async _setSession(t){try{if(!t.access_token||!t.refresh_token)throw new hr;const n=Date.now()/1e3;let r=n,i=!0,a=null;const{payload:o}=Ap(t.access_token);if(o.exp&&(r=o.exp,i=r<=n),i){const{session:l,error:c}=await this._callRefreshToken(t.refresh_token);if(c)return{data:{user:null,session:null},error:c};if(!l)return{data:{user:null,session:null},error:null};a=l}else{const{data:l,error:c}=await this._getUser(t.access_token);if(c)throw c;a={access_token:t.access_token,refresh_token:t.refresh_token,user:l.user,token_type:"bearer",expires_in:r-n,expires_at:r},await this._saveSession(a),await this._notifyAllSubscribers("SIGNED_IN",a)}return{data:{user:a.user,session:a},error:null}}catch(n){if(oe(n))return{data:{session:null,user:null},error:n};throw n}}async refreshSession(t){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._refreshSession(t))}async _refreshSession(t){try{return await this._useSession(async n=>{var r;if(!t){const{data:o,error:l}=n;if(l)throw l;t=(r=o.session)!==null&&r!==void 0?r:void 0}if(!(t!=null&&t.refresh_token))throw new hr;const{session:i,error:a}=await this._callRefreshToken(t.refresh_token);return a?{data:{user:null,session:null},error:a}:i?{data:{user:i.user,session:i},error:null}:{data:{user:null,session:null},error:null}})}catch(n){if(oe(n))return{data:{user:null,session:null},error:n};throw n}}async _getSessionFromURL(t,n){try{if(!Bn())throw new Hd("No browser detected.");
826if(t.error||t.error_description||t.error_code)throw new Hd(t.error_description||"Error in URL with unspecified error_description",{error:t.error||"unspecified_error",code:t.error_code||"unspecified_code"});switch(n){case"implicit":if(this.flowType==="pkce")throw new $w("Not a valid PKCE flow url.");break;case"pkce":if(this.flowType==="implicit")throw new Hd("Not a valid implicit grant flow url.");break;default:}if(n==="pkce"){if(this._debug("#_initialize()","begin","is PKCE flow",!0),!t.code)throw new $w("No code detected.");const{data:y,error:w}=await this._exchangeCodeForSession(t.code);if(w)throw w;const j=new URL(window.location.href);return j.searchParams.delete("code"),window.history.replaceState(window.history.state,"",j.toString()),{data:{session:y.session,redirectType:null},error:null}}const{provider_token:r,provider_refresh_token:i,access_token:a,refresh_token:o,expires_in:l,expires_at:c,token_type:d}=t;if(!a||!l||!o||!d)throw new Hd("No session defined in URL");const u=Math.round(Date.now()/1e3),h=parseInt(l);let m=u+h;c&&(m=parseInt(c));const p=m-u;p*1e3<=Sa&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${p}s, should have been closer to ${h}s`);const g=m-h;u-g>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",g,m,u):u-g<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clock for skew",g,m,u);const{data:f,error:b}=await this._getUser(a);if(b)throw b;const v={provider_token:r,provider_refresh_token:i,access_token:a,expires_in:h,expires_at:m,refresh_token:o,token_type:d,user:f.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),{data:{session:v,redirectType:t.type},error:null}}catch(r){if(oe(r))return{data:{session:null,redirectType:null},error:r};throw r}}_isImplicitGrantCallback(t){return!!(t.access_token||t.error_description)}async _isPKCECallback(t){const n=await Gd(this.storage,`${this.storageKey}-code-verifier`);return!!(t.code&&n)}async signOut(t={scope:"global"}){return await this.initializePromise,await this._acquireLock(-1,async()=>await this._signOut(t))}async _signOut({scope:t}={scope:"global"}){return await this._useSession(async n=>{var r;const{data:i,error:a}=n;if(a)return{error:a};const o=(r=i.session)===null||r===void 0?void 0:r.access_token;if(o){const{error:l}=await this.admin.signOut(o,t);if(l&&!(F7(l)&&(l.status===404||l.status===401||l.status===403)))return{error:l}}return t!=="others"&&(await this._removeSession(),await qd(this.storage,`${this.storageKey}-code-verifier`)),{error:null}})}onAuthStateChange(t){const n=Q7(),r={id:n,callback:t,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",n),this.stateChangeEmitters.delete(n)}};return this._debug("#onAuthStateChange()","registered callback with id",n),this.stateChangeEmitters.set(n,r),(async()=>(await this.initializePromise,await this._acquireLock(-1,async()=>{this._emitInitialSession(n)})))(),{data:{subscription:r}}}async _emitInitialSession(t){return await this._useSession(async n=>{var r,i;try{const{data:{session:a},error:o}=n;if(o)throw o;await((r=this.stateChangeEmitters.get(t))===null||r===void 0?void 0:r.callback("INITIAL_SESSION",a)),this._debug("INITIAL_SESSION","callback id",t,"session",a)}catch(a){await((i=this.stateChangeEmitters.get(t))===null||i===void 0?void 0:i.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",t,"error",a),console.error(a)}})}async resetPasswordForEmail(t,n={}){let r=null,i=null;this.flowType==="pkce"&&([r,i]=await wa(this.storage,this.storageKey,!0));try{return await me(this.fetch,"POST",`${this.url}/recover`,{body:{email:t,code_challenge:r,code_challenge_method:i,gotrue_meta_security:{captcha_token:n.captchaToken}},headers:this.headers,redirectTo:n.redirectTo})}catch(a){if(oe(a))return{data:null,error:a};throw a}}async getUserIdentities(){var t;try{const{data:n,error:r}=await this.getUser();if(r)throw r;return{data:{identities:(t=n.user.identities)!==null&&t!==void 0?t:[]},error:null}}catch(n){if(oe(n))return{data:null,error:n};throw n}}async linkIdentity(t){var n;try{const{data:r,error:i}=await this._useSession(async a=>{var o,l,c,d,u;const{data:h,error:m}=a;if(m)throw m;const p=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,t.provider,{redirectTo:(o=t.options)===null||o===void 0?void 0:o.redirectTo,scopes:(l=t.options)===null||l===void 0?void 0:l.scopes,queryParams:(c=t.options)===null||c===void 0?void 0:c.queryParams,skipBrowserRedirect:!0});return await me(this.fetch,"GET",p,{headers:this.headers,jwt:(u=(d=h.session)===null||d===void 0?void 0:d.access_token)!==null&&u!==void 0?u:void 0})});if(i)throw i;return Bn()&&!(!((n=t.options)===null||n===void 0)&&n.skipBrowserRedirect)&&window.location.assign(r==null?void 0:r.url),{data:{provider:t.provider,url:r==null?void 0:r.url},error:null}}catch(r){if(oe(r))return{data:{provider:t.provider,url:null},error:r};throw r}}async unlinkIdentity(t){try{return await this._useSession(async n=>{var r,i;const{data:a,error:o}=n;
826if(o)throw o;return await me(this.fetch,"DELETE",`${this.url}/user/identities/${t.identity_id}`,{headers:this.headers,jwt:(i=(r=a.session)===null||r===void 0?void 0:r.access_token)!==null&&i!==void 0?i:void 0})})}catch(n){if(oe(n))return{data:null,error:n};throw n}}async _refreshAccessToken(t){const n=`#_refreshAccessToken(${t.substring(0,5)}...)`;this._debug(n,"begin");try{const r=Date.now();return await Z7(async i=>(i>0&&await J7(200*Math.pow(2,i-1)),this._debug(n,"refreshing attempt",i),await me(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:t},headers:this.headers,xform:Us})),(i,a)=>{const o=200*Math.pow(2,i);return a&&_p(a)&&Date.now()+o-r<Sa})}catch(r){if(this._debug(n,"error",r),oe(r))return{data:{session:null,user:null},error:r};throw r}finally{this._debug(n,"end")}}_isValidSession(t){return typeof t=="object"&&t!==null&&"access_token"in t&&"refresh_token"in t&&"expires_at"in t}async _handleProviderSignIn(t,n){const r=await this._getUrlForProvider(`${this.url}/authorize`,t,{redirectTo:n.redirectTo,scopes:n.scopes,queryParams:n.queryParams});return this._debug("#_handleProviderSignIn()","provider",t,"options",n,"url",r),Bn()&&!n.skipBrowserRedirect&&window.location.assign(r),{data:{provider:t,url:r},error:null}}async _recoverAndRefresh(){var t;const n="#_recoverAndRefresh()";this._debug(n,"begin");try{const r=await Gd(this.storage,this.storageKey);if(this._debug(n,"session from storage",r),!this._isValidSession(r)){this._debug(n,"session is not valid"),r!==null&&await this._removeSession();return}const i=((t=r.expires_at)!==null&&t!==void 0?t:1/0)*1e3-Date.now()<Tp;if(this._debug(n,`session has${i?"":" not"} expired with margin of ${Tp}
826s`),i){if(this.autoRefreshToken&&r.refresh_token){const{error:a}=await this._callRefreshToken(r.refresh_token);a&&(console.error(a),_p(a)||(this._debug(n,"refresh failed with a non-retryable error, removing the session",a),await this._removeSession()))}}else await this._notifyAllSubscribers("SIGNED_IN",r)}catch(r){this._debug(n,"error",r),console.error(r);return}finally{this._debug(n,"end")}}async _callRefreshToken(t){var n,r;if(!t)throw new hr;if(this.refreshingDeferred)return this.refreshingDeferred.promise;const i=`#_callRefreshToken(${t.substring(0,5)}...)`;this._debug(i,"begin");try{this.refreshingDeferred=new bm;const{data:a,error:o}=await this._refreshAccessToken(t);if(o)throw o;if(!a.session)throw new hr;await this._saveSession(a.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",a.session);const l={session:a.session,error:null};return this.refreshingDeferred.resolve(l),l}catch(a){if(this._debug(i,"error",a),oe(a)){const o={session:null,error:a};return _p(a)||await this._removeSession(),(n=this.refreshingDeferred)===null||n===void 0||n.resolve(o),o}throw(r=this.refreshingDeferred)===null||r===void 0||r.reject(a),a}finally{this.refreshingDeferred=null,this._debug(i,"end")}}async _notifyAllSubscribers(t,n,r=!0){const i=`#_notifyAllSubscribers(${t})`;this._debug(i,"begin",n,`broadcast = ${r}`);try{this.broadcastChannel&&r&&this.broadcastChannel.postMessage({event:t,session:n});const a=[],o=Array.from(this.stateChangeEmitters.values()).map(async l=>{try{await l.callback(t,n)}catch(c){a.push(c)}});if(await Promise.all(o),a.length>0){for(let l=0;l<a.length;l+=1)console.error(a[l]);throw a[0]}}finally{this._debug(i,"end")}}async _saveSession(t){this._debug("#_saveSession()",t),this.suppressGetSessionWarning=!0,await PC(this.storage,this.storageKey,t)}async _removeSession(){this._debug("#_removeSession()"),await qd(this.storage,this.storageKey),await this._notifyAllSubscribers("SIGNED_OUT",null)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const t=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{t&&Bn()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",t)}catch(n){console.error("removing visibilitychange callback failed",n)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const t=setInterval(()=>this._autoRefreshTokenTick(),Sa);this.autoRefreshTicker=t,t&&typeof t=="object"&&typeof t.unref=="function"?t.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(t),setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const t=this.autoRefreshTicker;this.autoRefreshTicker=null,t&&clearInterval(t)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{const t=Date.now();try{return await this._useSession(async n=>{const{data:{session:r}}=n;if(!r||!r.refresh_token||!r.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const i=Math.floor((r.expires_at*1e3-t)/Sa);this._debug("#_autoRefreshTokenTick()",`access token expires in ${i} ticks, a tick lasts ${Sa}ms, refresh threshold is ${Zx} ticks`),i<=Zx&&await this._callRefreshToken(r.refresh_token)})}catch(n){console.error("Auto refresh tick failed with error. This is likely a transient error.",n)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(t){if(t.isAcquireTimeout||t instanceof EC)this._debug("auto refresh token tick lock not available");else throw t}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!Bn()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(!1),window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(t){console.error("_handleVisibilityChange",t)}}async _onVisibilityChanged(t){const n=`#_onVisibilityChanged(${t})`;this._debug(n,"visibilityState",document.visibilityState),document.visibilityState==="visible"?(this.autoRefreshToken&&this._startAutoRefresh(),t||(await this.initializePromise,await this._acquireLock(-1,async()=>
826{if(document.visibilityState!=="visible"){this._debug(n,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))):document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(t,n,r){const i=[`provider=${encodeURIComponent(n)}`];if(r!=null&&r.redirectTo&&i.push(`redirect_to=${encodeURIComponent(r.redirectTo)}`),r!=null&&r.scopes&&i.push(`scopes=${encodeURIComponent(r.scopes)}`),this.flowType==="pkce"){const[a,o]=await wa(this.storage,this.storageKey),l=new URLSearchParams({code_challenge:`${encodeURIComponent(a)}`,code_challenge_method:`${encodeURIComponent(o)}`});i.push(l.toString())}if(r!=null&&r.queryParams){const a=new URLSearchParams(r.queryParams);i.push(a.toString())}return r!=null&&r.skipBrowserRedirect&&i.push(`skip_http_redirect=${r.skipBrowserRedirect}`),`${t}?${i.join("&")}`}async _unenroll(t){try{return await this._useSession(async n=>{var r;const{data:i,error:a}=n;return a?{data:null,error:a}:await me(this.fetch,"DELETE",`${this.url}/factors/${t.factorId}`,{headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token})})}catch(n){if(oe(n))return{data:null,error:n};throw n}}async _enroll(t){try{return await this._useSession(async n=>{var r,i;const{data:a,error:o}=n;if(o)return{data:null,error:o};const l=Object.assign({friendly_name:t.friendlyName,factor_type:t.factorType},t.factorType==="phone"?{phone:t.phone}:{issuer:t.issuer}),{data:c,error:d}=await me(this.fetch,"POST",`${this.url}/factors`,{body:l,headers:this.headers,jwt:(r=a==null?void 0:a.session)===null||r===void 0?void 0:r.access_token});return d?{data:null,error:d}:(t.factorType==="totp"&&(!((i=c==null?void 0:c.totp)===null||i===void 0)&&i.qr_code)&&(c.totp.qr_code=`data:image/svg+xml;utf-8,${c.totp.qr_code}`),{data:c,error:null})})}catch(n){if(oe(n))return{data:null,error:n};throw n}}async _verify(t){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var r;const{data:i,error:a}=n;if(a)return{data:null,error:a};const{data:o,error:l}=await me(this.fetch,"POST",`${this.url}/factors/${t.factorId}/verify`,{body:{code:t.code,challenge_id:t.challengeId},headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token});return l?{data:null,error:l}:(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+o.expires_in},o)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",o),{data:o,error:l})})}catch(n){if(oe(n))return{data:null,error:n};throw n}})}async _challenge(t){return this._acquireLock(-1,async()=>{try{return await this._useSession(async n=>{var r;const{data:i,error:a}=n;return a?{data:null,error:a}:await me(this.fetch,"POST",`${this.url}/factors/${t.factorId}/challenge`,{body:{channel:t.channel},headers:this.headers,jwt:(r=i==null?void 0:i.session)===null||r===void 0?void 0:r.access_token})})}catch(n){if(oe(n))return{data:null,error:n};throw n}})}async _challengeAndVerify(t){const{data:n,error:r}=await this._challenge({factorId:t.factorId});return r?{data:null,error:r}:await this._verify({factorId:t.factorId,challengeId:n.id,code:t.code})}async _listFactors(){const{data:{user:t},error:n}=await this.getUser();if(n)return{data:null,error:n};const r=(t==null?void 0:t.factors)||[],i=r.filter(o=>o.factor_type==="totp"&&o.status==="verified"),a=r.filter(o=>o.factor_type==="phone"&&o.status==="verified");return{data:{all:r,totp:i,phone:a},error:null}}async _getAuthenticatorAssuranceLevel(){return this._acquireLock(-1,async()=>await this._useSession(async t=>{var n,r;const{data:{session:i},error:a}=t;if(a)return{data:null,error:a};if(!i)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const{payload:o}=Ap(i.access_token);let l=null;o.aal&&(l=o.aal);let c=l;((r=(n=i.user.factors)===null||n===void 0?void 0:n.filter(h=>h.status==="verified"))!==null&&r!==void 0?r:[]).length>0&&(c="aal2");const u=o.amr||[];return{data:{currentLevel:l,nextLevel:c,currentAuthenticationMethods:u},error:null}}))}async fetchJwk(t,n={keys:[]}){let r=n.keys.find(o=>o.kid===t);if(r||(r=this.jwks.keys.find(o=>o.kid===t),r&&this.jwks_cached_at+I7>Date.now()))return r;const{data:i,error:a}=await me(this.fetch,"GET",`${this.url}/.well-known/jwks.json`,{headers:this.headers});if(a)throw a;if(!i.keys||i.keys.length===0)throw new Hl("JWKS is empty");if(this.jwks=i,this.jwks_cached_at=Date.now(),r=i.keys.find(o=>o.kid===t),!r)throw new Hl("No matching signing key found in JWKS");return r}async getClaims(t,n={keys:[]}){try{let r=t;if(!r){const{data:p,error:g}
826=await this.getSession();if(g||!p.session)return{data:null,error:g};r=p.session.access_token}const{header:i,payload:a,signature:o,raw:{header:l,payload:c}}=Ap(r);if(aF(a.exp),!i.kid||i.alg==="HS256"||!("crypto"in globalThis&&"subtle"in globalThis.crypto)){const{error:p}=await this.getUser(r);if(p)throw p;return{data:{claims:a,header:i,signature:o},error:null}}const d=oF(i.alg),u=await this.fetchJwk(i.kid,n),h=await crypto.subtle.importKey("jwk",u,d,!0,["verify"]);if(!await crypto.subtle.verify(d,h,o,G7(`${l}.${c}`)))throw new Hl("Invalid JWT signature");return{data:{claims:a,header:i,signature:o},error:null}}catch(r){if(oe(r))return{data:null,error:r};throw r}}}Cc.nextInstanceID=0;const kF=Cc;class SF extends kF{constructor(t){super(t)}}var CF=function(e,t,n,r){function i(a){return a instanceof n?a:new n(function(o){o(a)})}return new(n||(n=Promise))(function(a,o){function l(u){try{d(r.next(u))}catch(h){o(h)}}function c(u){try{d(r.throw(u))}catch(h){o(h)}}function d(u){u.done?a(u.value):i(u.value).then(l,c)}d((r=r.apply(e,t||[])).next())})};class PF{constructor(t,n,r){var i,a,o;if(this.supabaseUrl=t,this.supabaseKey=n,!t)throw new Error("supabaseUrl is required.");if(!n)throw new Error("supabaseKey is required.");const l=_7(t),c=new URL(l);this.realtimeUrl=new URL("realtime/v1",c),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",c),this.storageUrl=new URL("storage/v1",c),this.functionsUrl=new URL("functions/v1",c);const d=`sb-${c.hostname.split(".")[0]}-auth-token`,u={db:j7,realtime:k7,auth:Object.assign(Object.assign({},N7),{storageKey:d}),global:w7},h=A7(r??{},u);this.storageKey=(i=h.auth.storageKey)!==null&&i!==void 0?i:"",this.headers=(a=h.global.headers)!==null&&a!==void 0?a:{},h.accessToken?(this.accessToken=h.accessToken,this.auth=new Proxy({},{get:(m,p)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(p)} is not possible`)}})):this.auth=this._initSupabaseAuthClient((o=h.auth)!==null&&o!==void 0?o:{},this.headers,h.global.fetch),this.fetch=E7(n,this._getAccessToken.bind(this),h.global.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers,accessToken:this._getAccessToken.bind(this)},h.realtime)),this.rest=new WO(new URL("rest/v1",c).href,{headers:this.headers,schema:h.db.schema,fetch:this.fetch}),h.accessToken||this._listenForAuthEvents()}get functions(){return new bO(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}get storage(){return new v7(this.storageUrl.href,this.headers,this.fetch)}from(t){return this.rest.from(t)}schema(t){return this.rest.schema(t)}rpc(t,n={},r={}){return this.rest.rpc(t,n,r)}channel(t,n={config:{}}){return this.realtime.channel(t,n)}getChannels(){return this.realtime.getChannels()}removeChannel(t){return this.realtime.removeChannel(t)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var t,n;return CF(this,void 0,void 0,function*(){if(this.accessToken)return yield this.accessToken();const{data:r}=yield this.auth.getSession();return(n=(t=r.session)===null||t===void 0?void 0:t.access_token)!==null&&n!==void 0?n:null})}_initSupabaseAuthClient({autoRefreshToken:t,persistSession:n,detectSessionInUrl:r,storage:i,storageKey:a,flowType:o,lock:l,debug:c},d,u){const h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new SF({url:this.authUrl.href,headers:Object.assign(Object.assign({},h),d),storageKey:a,autoRefreshToken:t,persistSession:n,detectSessionInUrl:r,storage:i,flowType:o,lock:l,debug:c,fetch:u,hasCustomAuthorizationHeader:"Authorization"in this.headers})}_initRealtimeClient(t){return new r7(this.realtimeUrl.href,Object.assign(Object.assign({},t),{params:Object.assign({apikey:this.supabaseKey},t==null?void 0:t.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((n,r)=>{this._handleTokenChanged(n,"CLIENT",r==null?void 0:r.access_token)})}_handleTokenChanged(t,n,r){(t==="TOKEN_REFRESHED"||t==="SIGNED_IN")&&this.changedAccessToken!==r?this.changedAccessToken=r:t==="SIGNED_OUT"&&(this.realtime.setAuth(),n=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}}const EF=(e,t,n)=>new PF(e,t,n),TF="https://pzauynhxbjdyyffythir.supabase.co",_F="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InB6YXV5bmh4YmpkeXlmZnl0aGlyIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NDgwODY5ODksImV4cCI6MjA2MzY2Mjk4OX0.NLCJa5G2k7z1HEW8a-2-B4dLNyHQWKCGTGxvf4oEo-Y",xn=EF(TF,_F),ui=()=>
826{const[e,t]=x.useState({name:"",email:"",companySize:"",skuCount:"",industry:"",comments:""}),[n,r]=x.useState(!1),{toast:i}=sr(),a=async l=>{if(l.preventDefault(),!e.name||!e.email){i({title:"Validation Error",description:"Please fill in all required fields (Name and Email).",variant:"destructive"});return}r(!0);try{let c="";try{c=await new Promise((u,h)=>{const m=window.grecaptcha;if(!m){h(new Error("reCAPTCHA not loaded"));return}m.ready(()=>{m.execute("6LeqpGcpAAAAABuwMn2bxQkDLCr6vrxP2Q1xhiTR",{action:"contact_submit"}).then(u).catch(h)})})}catch(u){console.error("reCAPTCHA error:",u),i({title:"Verification Error",description:"Could not verify you are human. Please refresh and try again.",variant:"destructive"}),r(!1);return}const{error:d}=await xn.functions.invoke("send-contact-email",{body:{...e,recaptchaToken:c}});if(d)throw d;i({title:"Message Sent!",description:"Thank you for your message. We'll get back to you soon."}),t({name:"",email:"",companySize:"",skuCount:"",industry:"",comments:""})}catch(c){console.error("Error sending message:",c),i({title:"Error",description:"Failed to send message. Please try again.",variant:"destructive"})}finally{r(!1)}},o=(l,c)=>{t(d=>({...d,[l]:c}))};return s.jsxs("div",{className:"min-h-screen bg-black relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-purple-900/20 via-blue-900/30 to-teal-900/20"}),s.jsx("div",{className:"absolute inset-0 bg-gradient-to-tl from-pink-900/10 via-trans
826parent to-cyan-900/10"}),s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-gradient-to-r from-purple-500/30 to-pink-500/30 rounded-full blur-3xl opacity-50 animate-pulse"}),s.jsx("div",{className:"absolute bottom-20 right-10 w-80 h-80 bg-gradient-to-r from-blue-500/30 to-teal-500/30 rounded-full blur-3xl opacity-50 animate-pulse delay-1000"}),s.jsx("div",{className:"absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 w-72 h-72 bg-gradient-to-r from-cyan-500/20 to-blue-500/20 rounded-full blur-3xl opacity-40 animate-pulse delay-500"}),s.jsx("section",{className:"relative py-20 z-10",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-16 max-w-7xl mx-auto",children:[s.jsxs("div",{className:"text-white flex flex-col",children:[s.jsx("h1",{className:"text-5xl lg:text-6xl font-light mb-8 leading-tight",children:"Connect With Us"}),s.jsx("p",{className:"text-white/70 text-lg mb-12 leading-relaxed max-w-md",children:"Find out more about how SmartLinks can help your brand, book a demo with one of our specialists and start enabling new channels of commerce, information and communication on your products today"}),s.jsxs("div",{className:"space-y-8 flex-grow",children:[s.jsx("div",{children:s.jsxs("p",{className:"text-white/70",children:["71-75 Shelton Street,",s.jsx("br",{}),"Covent Garden,",s.jsx("br",{}),"London, WC2H 9JQ"]})}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx(w_,{className:"w-5 h-5 text-purple-400"}),s.jsx("a",{href:"mailto:[email protected]",className:"text-white/70 hover:text-purple-400 transition-colours underline-offset-4 hover:underline",children:"[email protected]"})]}),s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx(P_,{className:"w-5 h-5 text-purple-400"}),s.jsx("span",{className:"text-white/70",children:"+44 (0) 800 233 5652"})]}),s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx(Ak,{className:"w-5 h-5 text-purple-400"}),s.jsx("a",{href:"https://www.linkedin.com/showcase/smartlinksapp/",target:"_blank",rel:"noopener noreferrer",className:"text-white/70 hover:text-purple-400 transition-colours underline-offset-4 hover:underline",children:"LinkedIn"})]})]})]}),s.jsx("div",{className:"mt-auto",children:s.jsxs("div",{className:"p-6 bg-white/5 backdrop-blur-xl rounded-2xl border border-white/10",children:[s.jsxs("div",{className:"flex items-center space-x-3 mb-4",children:[s.jsx(Hh,{className:"w-6 h-6 text-purple-400"}),s.jsx("h3",{className:"text-xl font-medium text-white",children:"Schedule a Discovery Meeting"})]}),s.jsx("p",{className:"text-white/70 mb-4",children:"Book a personalised demo to see how SmartLinks can transform your product engagement."}),s.jsx("a",{href:"https://calendly.com/prove-anything/prove-anything-discovery-meeting",target:"_blank",rel:"noopener noreferrer",className:"inline-block",children:s.jsx(H,{className:"bg-gradient-to-r from-purple-500 to-pink-500 text-white hover:from-purple-600 hover:to-pink-600 font-semibold rounded-xl transition-all hover:scale-[1.02] active:scale-[0.98] shadow-lg hover:shadow-purple-500/25 cursor-pointer",children:"Schedule Meeting"})})]})})]}),s.jsxs("div",{className:"relative flex",children:[s.jsx("div",{className:"absolute -inset-4 bg-gradient-to-r from-purple-500/30 via-pink-500/30 to-cyan-500/30 rounded-3xl blur-2xl opacity-60 animate-pulse"}),s.jsx("div",{className:"absolute -inset-2 bg-gradient-to-br from-blue-500/20 via-purple-500/20 to-teal-500/20 rounded-3xl blur-xl opacity-80"}),s.jsxs("div",{className:"relative bg-white/5 backdrop-blur-2xl rounded-3xl p-8 border border-white/10 shadow-2xl hover:shadow-purple-500/20 transition-all duration-500 hover:border-white/20 flex-1 flex flex-col",children:[s.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-white/10 via-trans
826parent to-white/5 rounded-3xl"}),s.jsxs("form",{onSubmit:a,className:"relative z-10 space-y-6 flex-1 flex flex-col",children:[s.jsxs("div",{children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"Name *"}),s.jsx(fn,{value:e.name,onChange:l=>o("name",l.target.value),className:"bg-white/10 border-white/20 text-white h-12 rounded-xl placeholder:text-white/50 backdrop-blur-sm focus:bg-white/15 focus:border-white/30 transition-all",placeholder:"Enter name",required:!0})]}),s.jsxs("div",{children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"Email *"}),s.jsx(fn,{type:"email",value:e.email,onChange:l=>o("email",l.target.value),className:"bg-white/10 border-white/20 text-white h-12 rounded-xl placeholder:text-white/50 backdrop-blur-sm focus:bg-white/15 focus:border-white/30 transition-all",placeholder:"Enter Email",required:!0})]}),s.jsxs("div",{children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"Company size"}),s.jsxs(Ul,{value:e.companySize,onValueChange:l=>o("companySize",l),children:[s.jsx(to,{"aria-label":"Company size",className:"bg-white/10 border-white/20 text-white h-12 rounded-xl backdrop-blur-sm focus:bg-white/15 focus:border-white/30",children:s.jsx(Vl,{placeholder:"Choose your company size"})}),s.jsxs(no,{className:"bg-white border-grey-200 backdrop-blur-xl z-50",children:[s.jsx(at,{value:"1-10",children:"1-10 employees"}),s.jsx(at,{value:"11-50",children:"11-50 employees"}),s.jsx(at,{value:"51-200",children:"51-200 employees"}),s.jsx(at,{value:"201-1000",children:"201-1000 employees"}),s.jsx(at,{value:"1000+",children:"1000+ employees"})]})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"How many SKUs do you have?"}),s.jsxs(Ul,{value:e.skuCount,onValueChange:l=>o("skuCount",l),children:[s.jsx(to,{"aria-label":"SKU count",className:"bg-white/10 border-white/20 text-white h-12 rounded-xl backdrop-blur-sm focus:bg-white/15 focus:border-white/30",children:s.jsx(Vl,{placeholder:"Choose SKU"})}),s.jsxs(no,{className:"bg-white border-grey-200 backdrop-blur-xl z-50",children:[s.jsx(at,{value:"1-100",children:"1-100 SKUs"}),s.jsx(at,{value:"101-1000",children:"101-1000 SKUs"}),s.jsx(at,{value:"1001-10000",children:"1001-10000 SKUs"}),s.jsx(at,{value:"10000+",children:"10000+ SKUs"})]})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"Industry"}),s.jsxs(Ul,{value:e.industry,onValueChange:l=>o("industry",l),children:[s.jsx(to,{"aria-label":"Industry",className:"bg-white/10 border-white/20 text-white h-12 rounded-xl backdrop-blur-sm focus:bg-white/15 focus:border-white/30",children:s.jsx(Vl,{placeholder:"Choose Industry"})}),s.jsxs(no,{className:"bg-white border-grey-200 backdrop-blur-xl z-50",children:[s.jsx(at,{value:"food-beverage",children:"Food & Beverage"}),s.jsx(at,{value:"health-beauty",children:"Health & Beauty"}),s.jsx(at,{value:"clothing-apparel",children:"Clothing & Apparel"}),s.jsx(at,{value:"retail",children:"Retail"}),s.jsx(at,{value:"manufacturing",children:"Manufacturing"}),s.jsx(at,{value:"other",children:"Other"})]})]})]}),s.jsxs("div",{className:"flex-1",children:[s.jsx("label",{className:"block text-white text-sm font-medium mb-3",children:"Any other comments, including timescales and solutions required"}),s.jsx(_o,{value:e.comments,onChange:l=>o("comments",l.target.value),className:"bg-white/10 border-white/20 text-white min-h-[100px] rounded-xl placeholder:text-white/50 resize-none backdrop-blur-sm focus:bg-white/15 focus:border-white/30 transition-all flex-1",placeholder:"Message"})]}),s.jsx(H,{type:"submit",disabled:n,className:"w-full bg-gradient-to-r from-purple-500 to-pink-500 text-white hover:from-purple-600 hover:to-pink-600 font-semibold h-12 rounded-xl transition-all hover:scale-[1.02] active:scale-[0.98] shadow-lg hover:shadow-purple-500/25 disabled:opacity-50 disabled:cursor-not-allowed mt-auto",children:n?"Sending...":"Submit"})]})]})]})]})})})]})},it=()=>{const e=()=>{window.open("https://smartlinks.app/solutions/","_blank")};return s.jsxs("footer",{className:"relative py-12",children:[s.jsx("div",{className:"absolute inset-0 bg-gradient-to-r from-purple-500/10 via-pink-500/10 to-cyan-500/10 rounded-3xl blur-2xl opacity-60"}),s.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-blue-500/5 via-purple-500/5 to-teal-500/5 rounded-3xl blur-xl opacity-80"}),s.jsxs("div",{className:"relative bg-slate-900/80 backdrop-blur-2xl rounded-3xl mx-6 border border-white/10 shadow-2xl",children:[s.jsx("div",{className:"absolute inset-0 bg-gradient-to-br from-white/5 via-trans
826parent to-transparent rounded-3xl"}),s.jsxs("div",{className:"relative z-10 container mx-auto px-8 py-8",children:[s.jsxs("nav",{"aria-label":"Footer navigation",className:"grid md:grid-cols-4 gap-8",children:[s.jsxs("div",{className:"col-span-2",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(he,{src:"/lovable-uploads/a2bca0a4-f6af-4810-8899-964966455d7b.webp",alt:"SmartLinks Logo",size:"auto",className:"h-8"})}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed mb-6 max-w-md",children:"Transforming packaging into connected experiences that bridge the physical and digital worlds for enhanced customer engagement."}),s.jsx("div",{className:"flex space-x-4",children:s.jsx("a",{href:"https://www.linkedin.com/showcase/smartlinksapp/",target:"_blank",rel:"noopener noreferrer","aria-label":"SmartLinks on LinkedIn",className:"w-10 h-10 bg-white/10 backdrop-blur-sm rounded-lg flex items-center justify-center cursor-pointer hover:bg-white/20 transition-all border border-white/10",children:s.jsx(Ak,{className:"w-5 h-5 text-white"})})})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"Solutions"}),s.jsxs("ul",{className:"space-y-3 text-white/70 text-sm",children:[s.jsx("li",{children:s.jsx("a",{href:"/food-beverages",className:"hover:text-white transition-colors",children:"Food & Beverages"})}),s.jsx("li",{children:s.jsx("a",{href:"/clothing-apparel",className:"hover:text-white transition-colors",children:"Clothing & Apparel"})}),s.jsx("li",{children:s.jsx("a",{href:"/health-beauty",className:"hover:text-white transition-colors",children:"Health & Beauty"})}),s.jsx("li",{children:s.jsx("button",{onClick:e,className:"hover:text-white transition-colors text-left",children:"Enterprise"})})]})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"Company"}),s.jsxs("ul",{className:"space-y-3 text-white/70 text-sm",children:[s.jsx("li",{children:s.jsx("a",{href:"/news",className:"hover:text-white transition-colors",children:"News"})}),s.jsx("li",{children:s.jsx("button",{onClick:()=>{window.location.href="https://smartlinks.app/solutions/case-studies"},className:"hover:text-white transition-colors text-left",children:"Case Studies"})}),s.jsx("li",{children:s.jsx("a",{href:"/contact",className:"hover:text-white transition-colors",children:"Contact"})})]})]})]}),s.jsxs("div",{className:"border-t border-white/10 mt-8 pt-6 flex flex-col md:flex-row justify-between items-center",children:[s.jsx("p",{className:"text-white/50 text-sm",children:"© 2024 SmartLinks. All rights reserved."}),s.jsxs("div",{className:"flex space-x-6 mt-4 md:mt-0",children:[s.jsx("a",{href:"/privacy",className:"text-white/50 text-sm hover:text-white transition-colors",children:"Privacy"}),s.jsx("a",{href:"/terms",className:"text-white/50 text-sm hover:text-white transition-colors",children:"Terms"}),s.jsx("a",{href:"/cookies",className:"text-white/50 text-sm hover:text-white transition-colors",children:"Cookies"})]})]})]})]})]})},Kd="https://smartlinks-public-site.lovable.app",Se=({title:e="SmartLinks - GS1 Digital Link QR Codes & Product Authentication",description:t="Transform your products with GS1 Digital Link QR codes. SmartLinks provides comprehensive product authentication, transparency, and customer engagement solutions for food, clothing, beauty, and more.",keywords:n="GS1 Digital Link, QR codes, product authentication, ESPR compliance, digital product passport, SmartLinks, product transparency, customer engagement",image:r=`${Kd}/lovable-uploads/54bca548-3c3e-4fac-bcf2-8694f0c307fc.webp`,url:i=Kd,type:a="website",structuredData:o,additionalStructuredData:l=[],breadcrumbs:c,faqItems:d,canonical:u,noindex:h=!1})=>{const m=e.includes("SmartLinks")?e:`${e} | SmartLinks`,p=u||i,g=u||i,f={"@context":"https://schema.org","@type":"Organization",name:"SmartLinks",url:Kd,logo:`${Kd}/logo.webp`,description:"Leading provider of GS1 Digital Link QR code solutions for product authentication and customer engagement",sameAs:["https://linkedin.com/company/smartlinks","https://twitter.com/smartlinks"]},b=[o||f];return c&&c.length>0&&b.push({"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:c.map((v,y)=>({"@type":"ListItem",position:y+1,name:v.name,item:v.url}))}),d&&d.length>0&&b.push({"@context":"https://schema.org","@type":"FAQPage",mainEntity:d.map(v=>
826({"@type":"Question",name:v.question,acceptedAnswer:{"@type":"Answer",text:v.answer}}))}),b.push(...l),s.jsxs(JS,{children:[s.jsx("title",{children:m}),s.jsx("meta",{name:"description",content:t}),s.jsx("meta",{name:"keywords",content:n}),s.jsx("meta",{name:"robots",content:h?"noindex, nofollow":"index, follow"}),s.jsx("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),s.jsx("link",{rel:"canonical",href:g}),s.jsx("meta",{property:"og:title",content:m}),s.jsx("meta",{property:"og:description",content:t}),s.jsx("meta",{property:"og:image",content:r}),s.jsx("meta",{property:"og:url",content:p}),s.jsx("meta",{property:"og:type",content:a}),s.jsx("meta",{property:"og:site_name",content:"SmartLinks"}),s.jsx("meta",{name:"twitter:card",content:"summary_large_image"}),s.jsx("meta",{name:"twitter:title",content:m}),s.jsx("meta",{name:"twitter:description",content:t}),s.jsx("meta",{name:"twitter:image",content:r}),s.jsx("meta",{name:"twitter:site",content:"@smartlinks"}),s.jsx("meta",{name:"author",content:"SmartLinks"}),s.jsx("meta",{name:"theme-color",content:"#000000"}),s.jsx("meta",{name:"msapplication-TileColor",content:"#000000"}),b.map((v,y)=>s.jsx("script",{type:"application/ld+json",children:JSON.stringify(v)},y))]})},AF=()=>{const e={"@context":"https://schema.org","@type":"Organization",name:"SmartLinks Platform Ecosystem",url:"https://smartlinks-public-site.lovable.app",logo:"https://smartlinks-public-site.lovable.app/logo.webp",description:"Complete physical-to-digital transformation platform ecosystem including SmartLinks, KeepTags, and SmartDocent for retail, facilities, and industrial asset management",services:["Physical to Digital Asset Management","Retail Workforce Efficiency","Infrastructure Management","Industrial Equipment Tracking","GS1 Digital Link Solutions"],industry:"Technology",sameAs:["https://www.keeptags.com/","https://smartdocent.com/"]},t={"@context":"https://schema.org","@type":"WebSite",name:"SmartLinks",url:"https://smartlinks-public-site.lovable.app",potentialAction:{"@type":"SearchAction",target:"https://smartlinks-public-site.lovable.app/blog?q={search_term_string}","query-input":"required name=search_term_string"}};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks Platform Ecosystem - Physical to Digital Transformation",description:"Complete platform ecosystem for physical-to-digital transformation. SmartLinks, KeepTags, and SmartDocent provide comprehensive solutions for retail, facilities, and industrial asset management.",keywords:"SmartLinks platform, physical to digital, asset management, retail efficiency, KeepTags, SmartDocent, digital transformation, infrastru
826cture management",url:"https://smartlinks-public-site.lovable.app",canonical:"https://smartlinks-public-site.lovable.app",structuredData:e,additionalStructuredData:[t]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl op
826acity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10 space-y-0",children:[s.jsx(rt,{}),s.jsx(X8,{}),s.jsx(l4,{}),s.jsx(OL,{}),s.jsx(c4,{}),s.jsx(d4,{}),s.jsx(FL,{}),s.jsx(UL,{}),s.jsx($L,{}),s.jsx(Zc,{}),s.jsx(h4,{}),s.jsx(VL,{}),s.jsx(ui,{}),s.jsx(it,{})]})]})]})},RF=({})=>s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"absolute top-1 left-1 sm:top-2 sm:left-2 md:top-8 md:left-8 lg:top-16 lg:left-16",children:s.jsx("div",{className:"w-32 h-32 sm:w-40 sm:h-40 md:w-48 md:h-48 lg:w-96 lg:h-96 rounded-2xl flex items-center justify-center shadow-2xl animate-fade-in",children:s.jsx(he,{src:"/lovable-uploads/13164ff8-786a-4fbf-b4c8-9dc1380ba07a.webp",alt:"Shopping Cart",className:"w-32 h-32 sm:w-40 sm:h-40 md:w-48 md:h-48 lg:w-96 lg:h-96",priority:!0})})}),s.jsx("div",{className:"absolute top-1 right-1 sm:top-2 sm:right-2 md:top-8 md:right-8 lg:top-16 lg:right-16",children:s.jsx("div",{className:"w-32 h-32 sm:w-40 sm:h-40 md:w-48 md:h-48 lg:w-96 lg:h-96 rounded-2xl flex items-center justify-center shadow-2xl animate-fade-in",style:{animationDelay:"0.5s"},children:s.jsx(he,{src:"/lovable-uploads/cdd30208-6155-40e5-812b-aeccf29c4d94.webp",alt:"Badge",className:"w-32 h-32 sm:w-40 sm:h-40 md:w-48 md:h-48 lg:w-96 lg:h-96",priority:!0})})})]}),DF=({})=>s.jsxs("div",{className:"relative z-20 pt-8 sm:pt-12 lg:pt-16 pb-6 sm:pb-8 lg:pb-10",children:[s.jsxs("h1",{className:"relative text-3xl sm:text-4xl md:text-5xl lg:text-7xl font-bold text-white mb-4 sm:mb-6 leading-tight px-4 sm:px-0 animate-fade-in",style:{animationDelay:"0.7s"},children:[s.jsx("span",{className:"text-4xl sm:text-5xl md:text-6xl lg:text-8xl pb-4 block bg-gradient-to-r from-cyan-300 via-blue-400 via-green-400 via-yellow-400 via-orange-400 to-red-500 bg-clip-text text-transparent",children:"Connecting"}),"Physical to Digital"]}),s.jsx("p",{className:"relative text-sm sm:text-base md:text-lg lg:text-xl text-white/80 mb-4 sm:mb-6 leading-relaxed max-w-3xl mx-auto px-4 sm:px-0 animate-fade-in",style:{animationDelay:"1s"},children:"We are the ultimate flexible platform for connecting physical things to digital stories"}),s.jsx("div",{className:"relative inline-block rounded-full mb-4 animate-fade-in",style:{marginTop:"30px",animationDelay:"1.3s"},children:s.jsx(he,{src:"/lovable-uploads/5335e038-e434-4aa5-8794-65ecd5701872.webp",alt:"SmartLinks Logo",className:"h-12 sm:h-14 lg:h-16 w-auto",priority:!0})})]}),MF=()=>{const e=()=>{const t=document.getElementById("product-categories");t&&t.scrollIntoView({behavior:"smooth"})};return s.jsxs("section",{className:"relative overflow-hidden pt-28 pb-8 cursor-pointer",onClick:e,children:[s.jsx(ZS,{}),s.jsx("div",{className:"absolute inset-0 bg-gradient-to-b from-black/80 via-black/60 to-black/40",style:{height:"80%"}}),s.jsx("div",{className:"absolute bottom-0 left-0 right-0 bg-gradient-to-b from-black/40 to-transparent",style:{height:"20%"}}),s.jsx("div",{className:"relative z-10 container mx-auto px-6",children:s.jsx("div",{className:"flex flex-col items-center justify-center text-center",children:s.jsxs("div",{className:"relative w-full max-w-6xl mx-auto",children:[s.jsx(RF,{}),s.jsx(DF,{})]})})}),s.jsx(e4,{})]})},LF=()=>s.jsx("section",{className:"py-6",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsx("div",{className:"space-y-4",children:u4.map((e,t)=>s.jsx("div",{className:"bg-white/10 backdrop-blur-sm rounded-2xl p-3 lg:p-4 border border-white/10",children:s.jsxs("div",{className:"flex flex-col gap-3",children:[s.jsxs("div",{className:"flex items-start mb-3",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-purple-600 rounded-lg flex items-center justify-center mr-4 mt-2",children:s.jsx(e.icon,{className:"w-6 h-6 text-white"})}),s.jsx("div",{className:"h-12 px-4 bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 rounded-lg text-base font-medium text-white flex items-center justify-center mt-2",children:e.label})]}),s.jsx("h3",{className:"text-xl lg:text-2xl font-bold mb-3 text-white leading-tight",children:e.title}),s.jsx("p",{className:"text-white/50 text-sm mb-2",children:e.description}),s.jsx("ul",{className:"space-y-1.5",children:e.points.map((n,r)=>s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm leading-relaxed",children:n})]},r))})]})},t))})})}),IF=()=>{const e=[{icon:Tt,title:"Anti-counterfeiting",description:"Protect your brand with advanced security features and authentication technology."},{icon:dt,title:"Consumer engagement",description:"Create meaningful connections with customers through interactive experiences."},{icon:rr,title:"Supply chain traceability",description:"Track products from manufacture to consumer with complete transparency."},{icon:Ki,title:"Global reach",description:"Deploy connected packaging solutions worldwide with localized experiences."}];return s.jsx("section",{className:"py-20 bg-transparent",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"text-center mb-16",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"SmartLinks Features"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Discover how our
826comprehensive platform delivers value across every aspect of connected packaging, from security to engagement."})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-8 mb-16",children:e.map((t,n)=>s.jsxs("div",{className:"bg-gray-900/50 rounded-xl p-6 border border-gray-800 hover:border-blue-500/50 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-purple-600 rounded-lg flex items-center justify-center mb-4",children:s.jsx(t.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:t.title}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:t.description})]},n))}),s.jsx("div",{className:"text-center",children:s.jsx(H,{className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 rounded-lg font-semibold",children:"Book a Demo"})})]})})},OF=()=>{const e={"@context":"https://schema.org","@type":"Organization",name:"SmartLinks",url:"https://smartlinks-public-site.lovable.app/overview",logo:"https://smartlinks-public-site.lovable.app/lovable-uploads/54bca548-3c3e-4fac-bcf2-8694f0c307fc.webp",description:"SmartLinks platform overview - GS1 Digital Link QR code solutions for product authentication and customer engagement",services:["GS1 Digital Link QR Codes","Product Authentication","Digital Product Passports","Customer Engagement Solutions"],industry:"Technology"};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks Platform Overview - GS1 Digital Link Solutions",description:"Comprehensive overview of SmartLinks GS1 Digital Link QR code platform for product authentication, transparency, and customer engagement across food, clothing, beauty sectors.",keywords:"SmartLinks overview, GS1 Digital Link, QR codes, product authentication, platform overview",url:"https://smartlinks-public-site.lovable.app/overview",canonical:"https://smartlinks-public-site.lovable.app/overview",structuredData:e,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Platform Overview",url:"https://smartlinks-public-site.lovable.app/overview"}]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(MF,{}),s.jsx(d4,{}),s.jsx(c4,{}),s.jsx(l4,{}),s.jsx(Zc,{}),s.jsx(LF,{}),s.jsx(IF,{}),s.jsx(h4,{}),s.jsx(ui,{}),s.jsx(it,{})]})]})]})},FF=()=>{const e=zt(),t=()=>{const r=document.getElementById("pricing-section");r&&r.scrollIntoView({behavior:"smooth"})},n=()=>{e("/contact")};return s.jsx("section",{className:"pt-20 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"Food & Drink"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Prove Anything's SmartLinks labelling solution has benefits for the food industry bringing new standards to communicate to customers"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"We create digital portals built around your food and beverage products that engage, inform and connect with your consumers"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"As a GS1 UK approved partner SmartLinks also helps companies make the switch to the new GS1 Digital Link standard with a powerful and comprehensive content management system."}),s.jsxs("div",{className:"flex gap-4",children:[s.jsx(H,{onClick:t,className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 rounded",children:"Start For Free"}),s.jsx(H,{variant:"outline",className:"border-white/30 text-white px-8 py-3 rounded font-semibold bg-sky-800 hover:bg-sky-700",onClick:n,children:"Learn More"})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/47dce6fb-2b37-4250-9284-a1cdf9c448f7.webp",alt:"Grandeo pasta sauce jars with QR codes",size:"auto",className:"w-3/4 h-auto object-fill mx-auto"})})})]})})})},$F=()=>{const e=[{icon:Tt,title:"Create Product Trust & Transparency",description:"Give consumers instant access to detailed product information including ingredients, sourcing, nutritional data, and allergen details. Build confidence in your brand by showcasing your commitment to quality and transparency.",color:"from-cyan-500 to-blue-500"},{icon:Kc,title:"Enhance Consumer Engagement",description:"Transform your packaging into an interactive experience with recipes, cooking tips, brand stories, and exclusive content. Create deeper connections with your customers and encourage repeat purchases through engaging digital portals.",color:"from-green-500 to-emerald-500"},{icon:qh,title:"Meet Regulatory Requirements",description:"Stay ahead of evolving food labeling regulations and digital product passport requirements. Ensure compliance while providing consumers with the detailed information they need to make informed choices about what they eat and drink.",color:"from-purple-500 to-pink-500"}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("div",{className:"text-center mb-16",children:s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Why Smartlinks"})}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:e.map((t,n)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${t.color} rounded-xl flex items-center justify-center mb-6`,children:s.jsx(t.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-4",children:t.title}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:t.description})]},n))})]})})},BF=()=>s.jsx("section",{className:"px-6 py-[36px]",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/961d3e98-c6ba-406b-b1b2-4af5b632ba55.webp",alt:"Gourmet Cut
826s Premium Ribeye packaging with QR code and SmartLinks mobile app interface",size:"auto",className:"w-4/5 h-auto object-contain"})})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Product Specific Portals"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Product Portals link to dynamic and updatable consumer information for:"}),s.jsxs("ul",{className:"space-y-3 text-white/80",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Origin and provenance stories"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Ingredients and allergens â with immediate allergy alerts"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Nutrition and diet information"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Recipes and cooking instructions"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Localised and personalised content"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Commerce links for repurchasing and related products"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Competitions & engagement"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-pink-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Push notifications for alerts, recalls and labelling err"})]})]})]})]})})}),zF=()=>s.jsx("section",{className:"px-6 py-0",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center py-[24px]",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Engage"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Turn your products into an interactive experience with our extensive range of engagement modules that provide:"}),s.jsxs("ul",{className:"space-y-3 text-white/80",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Videos & Articles â Showcase your brand story, product creation & recipes"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Ingredient Provenance â Show exactly where your ingredients come from with traceability maps"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Rich Information â Manage and display ingredients in a visually engaging way"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsx("span",{children:"Product & Brand Stories â Share charitable initiatives, ethical sourcing, and environmental contributions"})]})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/fa4a5936-fce5-4ff8-a7d7-fbc340109779.webp",alt:"Pale Heart beer mobile app interface showing interactive product portal",size:"auto",className:"w-80 h-auto object-contain transform rotate-3"})})})]})})}),UF=()=>s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/27a1adfb-babe-466a-b821-f8a0198ec15c.webp",alt:"Premium smoked
826salmon packaging with QR code and SmartLinks mobile app interface",size:"auto",className:"max-w-full h-auto object-contain"})})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Inform"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Give your products a voice by sharing their journeyâwhere they come from, how they're made, and why they matter."}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Consumers today demand transparency in the food they eat, whether for:"}),s.jsxs("ul",{className:"space-y-3 text-white/80 mb-6",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-green-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsxs("span",{children:[s.jsx("strong",{children:"Health & Nutrition"})," â Understanding ingredients, allergens, and dietary benefits"]})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-green-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsxs("span",{children:[s.jsx("strong",{children:"Ethical & Environmental Impact"})," â Supporting sustainable sourcing and responsible farming"]})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("div",{className:"w-2 h-2 bg-green-500 rounded-full mr-3 mt-2 flex-shrink-0"}),s.jsxs("span",{children:[s.jsx("strong",{children:"Dietary & Religious Preferences"})," â Meeting dietary needs like Organic, Halal, Kosher, or Vegan"]})]})]}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:"SmartLinks makes it easy to educate and build trust by offering real-time insights into your ingredients and supply chain."})]})]})})}),VF=()=>{zt();const e=n=>{n==="ENTERPRISE"?window.open("https://calendly.com/prove-anything/prove-anything-discovery-meeting","_blank"):window.open("https://smartlinks.app/console/signup/createAccount?type=food","_blank")},t=[{name:"FREE",price:"0",period:"/month",description:"A completely free plan that lets you show basic ingredient and allergy information to your customers.",buttonText:"Sign Up",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Nutritional Information","Allergy Alerts","Social Links","Includes 10 Product SKUs"]},{name:"INFORM",price:"9.50",period:"/month",originalPrice:"19.99",discount:"50% Discount",description:"Display all your essential HACCP information and add connection and customisation to inform your customers",buttonText:"Sign Up",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Nutritional Information","Allergy Alerts","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Cooking Guides","FAQs","Social Links","Includes 20 Product SKUs"]},{name:"ENGAGE",price:"19.50",period:"/month",originalPrice:"39.99",discount:"50% Discount",mostPopular:!0,description:"Connect with your consumers with enhanced Product Homepages with rich media and utilising personalised product lists for targeted customer engagement.",buttonText:"Sign Up",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Nutritional Information","Allergy Alerts","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Cooking Guides","Videos & Sliders","FAQs","Feedback","Mailing List","Serialised Product Data","Social Links","Includes 50 Product SKUs"]},{name:"ENTERPRISE",price:"£150+",period:"/month",description:"For companies that need more than 50 SKUs and who need to use our powerful enterprise features that allow for different sets of information to be displayed dependant on location, retailer or other conditions.",buttonText:"Book Demo",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Nutritional Information","Allergy Alerts","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Advanced Commerce Features","Cooking Guides","Videos & Sliders","FAQs","Feedback","Mailing List","Social Links","Serialised Product Data","Includes Unlimited Product SKUs","Advanced Condition Based Display Options"]}];return s.jsx("section",{id:"pricing-section",className:"px-6 py-0",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-16",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Choose Your Plan"}),s.jsx("p",{className:"text-white/70 text-lg",children:"Select the perfect plan for your business needs"})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6",children:t.map((n,r)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300 relative",children:[n.mostPopular&&s.jsx("div",{className:"absolute -top-3 left-1/2 transform -translate-x-1/2",children:s.jsx("div",{className:"bg-pink-500 backdrop-blur-md border border-pink-400/20 px-4 py-1 rounded-lg text-xs font-semibold text-white shadow-lg whitespace-nowrap",children:"MOST POPULAR"})}),s.jsxs("div",{className:"text-center mb-6",children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:n.name}),s.jsxs("div",{className:"mb-2",children:[s.jsx("span",{className:"text-3xl font-bold text-white",children:n.name==="ENTE
826RPRISE"?n.price:`£${n.price}`}),s.jsx("span",{className:"text-white/60 ml-1",children:n.period})]}),n.originalPrice&&s.jsx("div",{className:"text-white/50 line-through text-sm",children:n.originalPrice}),n.discount&&s.jsx("div",{className:"mt-1",children:s.jsx("span",{className:"bg-gradient-to-r from-orange-500 to-red-500 text-white px-3 py-1 rounded-full text-xs font-semibold",children:n.discount})}),s.jsx("p",{className:"text-white/70 text-sm mt-3",children:n.description})]}),s.jsx("ul",{className:"space-y-3 mb-8",children:n.features.map((i,a)=>s.jsxs("li",{className:"flex items-start space-x-3",children:[s.jsx(En,{className:"w-4 h-4 text-green-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:i})]},a))}),s.jsx(H,{onClick:()=>e(n.name),className:`w-full ${n.buttonClass} text-white border-none`,children:n.buttonText})]},r))}),s.jsx("div",{className:"text-center mt-12",children:s.jsx("p",{className:"text-white/60 text-sm",children:"All plans include SSL security, mobile optimization, and basic support"})})]})})},uv=()=>{const e=zt();return s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-16 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-8",children:"SmartLinks is a GS1 approved partner"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Digital Links convert traditional barcodes into dynamic QR Codes, called 2d Barcodes, that not only help you meet EU labelling and Digital-Product-Passport legislation, but signpost your consumers to product specific information, updates and offers."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"This means valuable GTIN/SKU data can be read directly from the code even without internet access, which can include batch and expiry/BBE information directly in the URL."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"Useful for everything from stock and expiry checks, recall information, staff discounts, this can speed up a staff member's job or make it easier for them to help a customer."}),s.jsx(H,{onClick:()=>e("/gs1-digital-link"),className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-6 py-3 rounded-lg font-semibold",children:"Learn More About GS1 Digital Link"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"max-w-lg w-full",children:s.jsx(he,{src:"/lovable-uploads/25626a04-2fef-4981-8626-7c9eb1c2f26d.webp",alt:"GS1 UK Approved certification badge showing the official GS1 logo in a star-shaped design",size:"lg",className:"w-full h-auto object-contain"})})})]})})})},WF=()=>{const e={"@context":"https://schema.org","@type":"Service",name:"SmartLinks Food & Beverages Solutions",description:"GS1 Digital Link QR codes for food and beverage products. Enhance transparency, meet regulatory requirements, and engage consumers.",provider:{"@type":"Organization",name:"SmartLinks"},serviceType:"Food Product Authentication",areaServed:"Worldwide"};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Food & Beverages QR Code Solutions - Digital Product Transparency",description:"Enhance food product transparency with GS1 Digital Link QR codes. Meet regulatory requirements, share ingredients & sourcing info, and engage consumers with SmartLinks solutions.",keywords:"food QR codes, beverage labeling, GS1 Digital Link, food transparency, ingredient information, nutritional data, allergen details, food safety",url:"https://smartlinks-public-site.lovable.app/food-beverages",canonical:"https://smartlinks-public-site.lovable.app/food-beverages",structuredData:e,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Industry Solutions",url:"https://smartlinks-public-site.lovable.app/"},{name:"Food & Beverages",url:"https://smartlinks-public-site.lovable.app/food-beverages"}]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(FF,{}),s.jsx($F,{}),s.jsx(BF,{}),s.jsx(zF,{}),s.jsx(UF,{}),s.jsx(VF,{}),s.jsx(Zc,{}),s.jsx(uv,{}),s.jsx(it,{})]})]})]})},HF=()=>{const e=zt(),t=()=>{const r=document.getElementById("pricing-section");r&&r.scrollIntoView({behavior:"smooth"})},n=()=>{e("/contact")};return s.jsx("section",{className:"py-6 px-6 pt-20",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"Clothing & Apparel"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"The SmartLinks platform allows you to create QR codes that sit on a swing tag or on top of the label, allowing you to minimise other sections to meet legal compliance, and encourage uses only to cut off if needed 'below the line'."}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"As a GS1 UK approved partner SmartLinks also helps companies make the switch to the new GS1 Digital Link standard with a powerful and comprehensive content management system."}),s.jsxs("div",{className:"flex gap-4",children:[s.jsx(H,{onClick:t,className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 rounded",children:"Start For Free"}),s.jsx(H,{variant:"outline",className:"border-white/30 text-white px-8 py-3 rounded font-semibold bg-sky-800 hover:bg-sky-700",onClick:n,children:"Learn More"})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/f92ca121-1923-4d7a-bcea-f811dd32dec9.webp",alt:"Bespoke Tailors suit with QR code and SmartLinks mobile app interface",size:"auto",className:"max-w-full h-auto object-contain"})})})]})})})},GF=()=>{const e=[{icon:Tt,title:"Build Authentic Brand Connections",description:"Transform your garments into storytelling platforms. Share your brand's journey, sustainability efforts, and craftsmanship details to create meaningful relationships with conscious consumers who value transparency and authenticity.",color:"from-cyan-500 to-blue-500"},{icon:Kc,title:"Enhance Customer Experience",description:"Provide instant access to care instructions, styling tips, size guides, and outfit inspiration. Create engaging digital experiences that help customers get the most from their purchases and reduce returns.",color:"from-green-500 to-emerald-500"},{icon:qh,title:"Meet Sustainability Standards",description:"Demonstrate your commitment to sustainable fashion with detailed supply chain transparency. Meet upcoming digital product passport requirements while showcasing ethical sourcing, material origins, and environmental impact data.",color:"from-purple-500 to-pink-500"}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("div",{className:"text-center mb-16",children:s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Why Smartlinks"})}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:e.map((t,n)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${t.color} rounded-xl flex items-center justify-center mb-6`,children:s.jsx(t.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-4",children:t.title}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:t.description})]},n))})]})})},qF=()=>s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/c1f8e2f8-af40-4790-9bec-8291dc3dca41.webp",alt:"Clothing tag with QR code and SmartLinks mobile app interface",size:"auto",className:"max-w-full h-auto rounded-lg"})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Digital Product Passports"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Incoming EU law around textiles in 2026 will insist that all clothing has full traceability and details around its environment impact."}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Equally, younger consumers are starting to care about the ethical of companies, and they want to see that directly reflected in the products they buy."}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"SmartLinks can help you track this information, and report on it directly to the customer on a per product basis."}),s.jsx("div",{className:"bg-white/5 border border-white/10 rounded-lg p-6 mb-6",children:s.jsxs("p",{className:"text-white/90 text-base leading-relaxed font-medium",children:[s.jsx("strong",{children:"Important:"})," While SmartLinks helps present and bring your DPP to life for your customers and assists with ownership traceability, we do not handle factory-level DPP creation. Instead, we partner with specialist DPP platforms to ensure comprehensive coverage from production to consumer."]})}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed font-semibold",children:"The kinds of stories that can be told include:"}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"The complete materials story from sourcing through to processing and transport, from distance travelled to ethical audits"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"The total carbon footprint from manufacture, sales, usage to re
826cycling"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"The % of materials and packaging that are both mode up from recycling materials and that can be recycled"})]})]})]})]})})}),KF=()=>s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Marketing & Engagement"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"As of today, many manufacturers and retailers use QR codes to simply create engagement with customers. However often these end up with embarrassing dead links or closed competitions."}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"As well as practical legal information SmartLinks⢠can link to all of your current or planned QR code engagements with dynamically updatable data that can connect with:"}),s.jsxs("div",{className:"space-y-4 mb-8",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Mobile apps"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Competitions and games"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Surveys and feedback"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Social links and websites"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Offers, discounts and loyalty"})]})]})]}),s.jsx("div",{className:"relative",children:s.jsx("img",{src:"/lovable-uploads/2331c1f8-fa4c-4599-8f7d-c8461bd3959e.webp",alt:"SUBEDGE hoodie with SmartLinks mobile app interface showing exclusive club features",className:"max-w-full h-auto rounded-lg"})})]})})}),QF=()=>s.jsx("section",{className:"py-20 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/282e218b-99c9-4aa7-b773-cd24bd777fd2.webp",alt:"RUNPRO running shoe with QR code tag and SmartLinks mobile app interface showing product info, training videos, and accessories",size:"auto",className:"max-w-full h-auto rounded-lg"})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Digital Wardrobe"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Putting SmartLinks⢠QR Code, or NFC Tags. in y
826our clothing is not just about showing your eco-credentials, it can be all about connecting you with your customers, by keeping product data even after it's gone from the ecommerce store. From a simple code on Swing Tags or in sewn in labels you could:"}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Create your own wardrobe & fashion edit of owned items or wish lists (deep linking to the existing apps)"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Recommend to friends â with rewards"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Find and purchase matching products"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Give size and fit feedback"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Resell on your own or other secondary markets"})]})]})]})]})})}),YF=()=>s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Labelling & Care Instructions"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Clothing Labels are getting more and more complex, both for the sewn tags and the hang tags, often containing:"}),s.jsxs("div",{className:"space-y-3 mb-6",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Branding details"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Washing symbols"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Written washing instructions in multiple languages"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Material details in multiple languages"})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-500 rounded-full mt-2"}),s.jsx("p",{className:"text-white/70",children:"Manufacturing Origin"})]})]}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"These sometimes mean that sewn tags extend to multiple tags and are written in harder and harder to read font sizes, all of which frustrates. As a result, users often just cut out tags and losing important information."}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Additionally hang tags, are getting longer and more complex, with a mess of brand and material marketing information, which is expensive and ultimately just thrown away by the consumer immediately"}),s.jsxs("div",{className:"grid grid-cols-2 gap-6",children:[s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-12 h-12 bg-blue-500 rounded-lg flex items-center justify-center mx-auto mb-2",children:s.jsx("span",{className:"text-white text-xl",children:"ð§º"})}),s.jsx("p",{className:"text-white/70 text-sm",children:"Care Guide"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-12 h-12 bg-green-500 rounded-lg flex items-center justify-center mx-auto mb-2",children:s.jsx("span",{className:"text-white text-xl",children:"â»ï¸"})}),s.jsx("p",{className:"text-white/70 text-sm",children:"Sustainability"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-12 h-12 bg-purple-500 rounded-lg flex items-center justify-center mx-auto mb-2",children:s.jsx("span",{className:"text-white text-xl",children:"ð·ï¸"})}),s.jsx("p",{className:"text-white/70 text-sm",children:"Smart Labels"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-12 h-12 bg-orange-500 rounded-lg flex items-center justify-center mx-auto mb-2",children:s.jsx("span",{className:"text-white text-xl",children:"ð"})}),s.jsx("p",{className:"text-white/70 text-sm",children:"Instructions"})]})]})]}),s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/c2ceb72d-7303-4479-8e7e-f5fb6f3b7d1f.webp",alt:"FUTURWEAR clothing tag with QR code and SmartLinks mobile app interface showing digital ID, care instructions, and product information",size:"auto",className:"max-w-[75%] h-auto rounded-lg mx-auto"})})]})})}),XF=()=>{zt();const e=n=>{n==="ENTERPRISE"?window.open("https://calendly.com/prove-anything/prove-anything-discovery-meeting","_blank"):window.open("https://smartlinks.app/console/signup/createAccount?type=apparel","_blank")},t=[{name:"FREE",price:"0",period:"/Month",description:"Free multi language care labels and basic Digital Product Passport solution for your business",buttonText:"Start For Free",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Basic DPP Solution","Social Links","Includes 10 Product SKUs"]}
826,{name:"INFORM",price:"9.50",period:"/Month",originalPrice:"19.99",discount:"50% Discount",description:"Display all your essential Digital Product Passport information and add connection and customisation to inform your customers",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Advanced DPP Solution","Social Links","Includes 20 Product SKUs","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","FAQs"]},{name:"ENGAGE",price:"19.50",period:"/Month",originalPrice:"39.99",discount:"50% Discount",mostPopular:!0,description:"Connect with your consumers with enhanced Product Homepages with rich media and utilising serialised product ids for targeted customer engagement and our full featured DPP solution.",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Advanced DPP Solution","Social Links","Includes 50 Product SKUs","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Mailing List","FAQs","Serialised Product Data"]},{name:"ENTERPRISE",price:"£150+",period:"/Month",description:"For companies that need more than 50 SKUs and who need to use our powerful enterprise features that allow for different sets of information to be displayed dependant on location, retailer or other conditions.",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Advanced DPP Solution","Social Links","Advanced Condition Based Display Options","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Mailing List","FAQs","Serialised Product Data","Includes Unlimited Product SKUs"]}];return s.jsx("section",{id:"pricing-section",className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-16",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Choose Your Plan"}),s.jsx("p",{className:"text-white/70 text-lg",children:"Select the perfect plan for your business needs"})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6",children:t.map((n,r)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300 relative",children:[n.mostPopular&&s.jsx("div",{className:"absolute -top-3 left-1/2 transform -translate-x-1/2",children:s.jsx("div",{className:"bg-pink-500 backdrop-blur-md border border-pink-400/20 px-4 py-1 rounded-lg text-xs font-semibold text-white shadow-lg whitespace-nowrap",children:"MOST POPULAR"})}),s.jsxs("div",{className:"text-center mb-6",children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:n.name}),s.jsxs("div",{className:"mb-2",children:[s.jsx("span",{className:"text-3xl font-bold text-white",children:n.name==="ENTERPRISE"?n.price:`£${n.price}`}),s.jsx("span",{className:"text-white/60 ml-1",children:n.period})]}),n.originalPrice&&s.jsx("div",{className:"text-white/50 line-through text-sm",children:n.originalPrice}),n.discount&&s.jsx("div",{className:"mt-1",children:s.jsx("span",{className:"bg-gradient-to-r from-orange-500 to-red-500 text-white px-3 py-1 rounded-full text-xs font-semibold",children:n.discount})}),s.jsx("p",{className:"text-white/70 text-sm mt-3",children:n.description})]}),s.jsx("ul",{className:"space-y-3 mb-8",children:n.features.map((i,a)=>s.jsxs("li",{className:"flex items-start space-x-3",children:[s.jsx(En,{className:"w-4 h-4 text-green-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:i})]},a))}),s.jsx(H,{onClick:()=>e(n.name),className:`w-full ${n.buttonClass} text-white border-none`,children:n.buttonText})]},r))}),s.jsx("div",{className:"text-center mt-12",children:s.jsx("p",{className:"text-white/60 text-sm",children:"All plans include SSL security, mobile optimization, and basic support"})})]})})},JF=()=>{const e={"@context":"https://schema.org","@type":"Service",name:"SmartLinks Clothing & Apparel Solutions",description:"Digital product passports and QR codes for fashion brands. Enhance sustainability transparency, care instructions, and customer engagement.",provider:{"@type":"Organization",name:"SmartLinks"},serviceType:"Fashion Product Authentication",areaServed:"Worldwide"};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Clothing & Apparel QR Codes - Digital Product Passports for Fashion",description:"Transform fashion with digital product passports. Share sustainability info, care instructions, and brand stories through GS1 Digital Link QR codes for clothing and apparel.",keywords:"fashion QR codes, digital product passport, clothing labels, apparel transparency, sustainability fashion, care instructions, brand storytelling",url:"https://smartlinks-public-site.lovable.app/clothing-apparel",canonical:"https://smartlinks-public-site.lovable.app/clothing-apparel",structuredData:e,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Industry Solutions",url:"https://smartlinks-public-site.lovable.app/"},{name:"Clothing & Apparel",url:"https://smartlinks-public-site.lovable.app/clothing-apparel"}]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(HF,{}),s.jsx(GF,{}),s.jsx(qF,{}),s.jsx(KF,{}),s.jsx(QF,{}),s.jsx(YF,{}),s.jsx(XF,{}),s.jsx(Zc,{}),s.jsx(uv,{}),s.jsx(it,{})]})]})]})},ZF=()=>{const e=zt(),t=()=>{const r=document.getElementById("pricing-section");r&&r.scrollIntoView({behavior:"smooth"})},n=()=>{e("/contact")};return s.jsx("section",{className:"pt-20 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{className:"text-white",children:[s.jsx("h1",{className:"text-5xl lg:text-6xl font-bold mb-6 leading-tight",children:"Health & Beauty"}),s.jsx("p",{className:"text-xl text-white/80 mb-8 leading-relaxed",children:"The health and beauty sector thrives on personal connections, brand trust, and ongoing consumer engagement."}),s.jsx("p",{className:"text-lg text-white/70 mb-8 leading-relaxed",children:"With SmartLinks, you can revolutionise how customers interact with your products, fostering loyalty and driving sales through tailored digital experiences."}),s.jsxs("div",{className:"flex flex-col sm:flex-row gap-4",children:[s.jsx(H,{onClick:t,className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 rounded font-semibold",children:"Start for Free"}),s.jsx(H,{variant:"outline",className:"border-white/30 text-white px-8 py-3 rounded font-semibold bg-sky-800 hover:bg-sky-700",onClick:n,children:"Learn More"})]})]}),s.jsx("div",{className:"relative flex items-center justify-center",children:s.jsx("img",{alt:"Transformulas MIRACLE beauty product with SmartLinks mobile app interface showing top tips, subscription offers, and video content",className:"max-w-full h-auto rounded",src:"/lovable-uploads/03ba484c-aa15-421b-85bd-4a78bd6f158d.webp"})})]})})})},e9=()=>{const e=[{icon:Tt,title:"Create a Unique Shopping Experience",description:"Connect customers to product-specific content with a simple scan. Share beauty tutorials, skincare tips, and personalised product recommendations to enrich their journey and keep them coming back for more.",colour:"from-cyan-500 to-blue-500"},{icon:Kc,title:"Build Brand Loyalty",description:"Leverage gamification, competitions, and exclusive offers to reward loyal customers. Launch point-based loyalty programmes that turn one-time buyers into long-term brand advocates.",colour:"from-green-500 to-emerald-500"},{icon:qh,title:"Boost Product Transparency",description:"Empower customers with access to detailed product information. Whether it's ingredients, sourcing, or ethical practices, SmartLinks provides instant access to everything your consumers care about, building trust and confidence in your brand.",colour:"from-purple-500 to-pink-500"}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("div",{className:"text-center mb-16",children:s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Why Smartlinks"})}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:e.map((t,n)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${t.colour} rounded-xl flex items-center justify-center mb-6`,children:s.jsx(t.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-4",children:t.title}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:t.description})]},n))})]})})},t9=()=>{const e=[{icon:nt,title:"Scan or Tap to Engage",description:"With a simple scan of a QR code on your product packaging, your customers can access personalised content like usage guides, tutorials, ingredient breakdowns, and promotional offers."},{icon:Ft,title:"Personalised Content & Recommendations",description:"Deliver tailored content based on product type, consumer preferences, and purchase history. SmartLinks makes it easy to guide customers through skincare routines, makeup tips, and the best ways to use your products."},{icon:ii,title:"Gamification for Engagement",description:"Run quizzes, competitions, and giveaways directly through SmartLinks to engage your audience. The more they interact, the more they learn about your products and feel connected to your brand."}];return s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-16 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-12",children:"How Does It Work?"}),s.jsx("div",{className:"space-y-8",children:e.map((t,n)=>s.jsxs("div",{className:"flex items-start space-x-4",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-purple-600 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(t.icon,{className:"w-6 h-6 text-white"})}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:t.title}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:t.description})]})]},n))})]}),s.jsx("div",{className:"relative flex items-center justify-center",children:s.jsx("img",{src:"/lovable-uploads/2c0b9f2b-f99f
826-455d-ac72-210f10bc195f.webp",alt:"STARBURST eyeshadow product with SmartLinks mobile app interface showing eyeshadow portal, tutorials, and how-to videos",className:"w-3/4 h-auto rounded-lg transform rotate-3"})})]})})})},n9=()=>{const e=["Product Tutorials & How-Tos","Shoppable Content","Customer Feedback & Reviews","Exclusive Offers & Loyalty Programmes"],t=["Help customers make the most of their purchase with step-by-step tutorials and expert tips, all accessible through a quick scan or tap.","Enable seamless shopping experiences by linking directly to your online store. Consumers can browse, learn, and shop directly from the content they access via SmartLinks.","Collect valuable customer feedback, reviews, and testimonials to continually improve your products and brand offerings.","Encourage repeat purchases with exclusive discounts, loyalty points, and early access to new products. SmartLinks allows you to tailor offers to customer behaviours and preferences."];return s.jsx("section",{className:"py-20 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-16 items-center",children:[s.jsx("div",{className:"relative",children:s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("img",{src:"/lovable-uploads/484fd9fd-2af8-4d51-95f5-9b876b0a1e12.webp",alt:"LUXIANA Volume Shampoo with SmartLinks mobile app interface showing product info, how-to video, and special offers",className:"w-4/5 h-auto rounded-lg"})})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Supercharge Your Product"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Unlock the full potential of your health and beauty products with SmartLinks' innovative connected packaging solutions. Transform every product into a gateway for enhanced customer engagement and brand loyalty."}),s.jsx("div",{className:"space-y-6 mb-8",children:e.map((n,r)=>s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center space-x-3",children:[s.jsx(Ar,{className:"w-5 h-5 text-green-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 font-semibold",children:n})]}),s.jsx("p",{className:"text-white/70 ml-8 leading-relaxed",children:t[r]})]},r))}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"From compliance tracking to loyalty programmes, our comprehensive platform provides everything you need to create meaningful connections between your products and customers whilst gathering valuable insights to drive business growth."})]})]})})})},s9=()=>{zt();const e=n=>{n==="ENTERPRISE"?window.open("https://calendly.com/prove-anything/prove-anything-discovery-meeting","_blank"):window.open("https://smartlinks.app/console/signup/createAccount?type=health","_blank")},t=[{name:"FREE",price:"0",period:"/Month",description:"A completely free plan that lets you show basic ingredient and allergy information to your customers.",buttonText:"Start For Free",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Basic DPP Solution","Social Links","Includes 10 Product SKUs"]},{name:"INFORM",price:"9.50",period:"/Month",originalPrice:"19.99",discount:"50% Discount",description:"Display all your essential FMCG information and add connection and customisation to inform your customers.",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Care Label","Advanced DPP Solution","Social Links","Includes 20 Product SKUs","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","FAQs"]},{name:"ENGAGE",price:"19.50",period:"/Month",originalPrice:"39.99",discount:"50% Discount",mostPopular:!0,description:"Connect with your consumers with enhanced Product Homepages with rich media and utilising personalised product ids for targeted customer engagement.",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Advanced DPP Solution","Social Links","Includes 50 Product SKUs","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Mailing List","FAQs","Serialised Product Data"]},{name:"ENTERPRISE",price:"£150+",period:"/Month",description:"For companies that need more than 50 SKUs and who need to use our powerful enterprise features that allow for different sets of information to be displayed dependant on location, retailer or other conditions.",buttonText:"Get Started",buttonClass:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700",features:["Product Homepage","Ingredients","Nutritional Information","Allergy Alerts","Social Links","Advanced Condition Based Display Options","Multilingual","Custom Domain","Blogs & Content Pages","Repurchase Links","Related Products & Offers","Mailing List","FAQs","Serialised Product Data","Includes Unlimited Product SKUs"]}];return s.jsx("section",{id:"pricing-section",className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-16",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"Choose Your Plan"}),s.jsx("p",{className:"text-white/70 text-lg",children:"Select the perfect plan for your business needs"})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6",children:t.map((n,r)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300 relative",children:[n.mostPopular&&s.jsx("div",{className:"absolute -top-3 left-1/2 transform -translate-x-1/2",children:s.jsx("div",{className:"bg-pink-500 backdrop-blur-md border border-pink-400/20 px-4 py-1 rounded-lg text-xs font-semibold text-white shadow-lg whitespace-nowrap",children:"MOST POPULAR"})}),s.jsxs("div",{className:"text-center mb-6",children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:n.name}),s.jsxs("div",{className:"mb-2",children:[s.jsx("span",{className:"text-3xl font-bold text-white",children:n.name==="ENTE
826RPRISE"?n.price:`£${n.price}`}),s.jsx("span",{className:"text-white/60 ml-1",children:n.period})]}),n.originalPrice&&s.jsx("div",{className:"text-white/50 line-through text-sm",children:n.originalPrice}),n.discount&&s.jsx("div",{className:"mt-1",children:s.jsx("span",{className:"bg-gradient-to-r from-orange-500 to-red-500 text-white px-3 py-1 rounded-full text-xs font-semibold",children:n.discount})}),s.jsx("p",{className:"text-white/70 text-sm mt-3",children:n.description})]}),s.jsx("ul",{className:"space-y-3 mb-8",children:n.features.map((i,a)=>s.jsxs("li",{className:"flex items-start space-x-3",children:[s.jsx(En,{className:"w-4 h-4 text-green-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:i})]},a))}),s.jsx(H,{onClick:()=>e(n.name),className:`w-full ${n.buttonClass} text-white border-none`,children:n.buttonText})]},r))}),s.jsx("div",{className:"text-center mt-12",children:s.jsx("p",{className:"text-white/60 text-sm",children:"All plans include SSL security, mobile optimisation, and basic support"})})]})})},r9=()=>{const e={"@context":"https://schema.org","@type":"Service",name:"SmartLinks Health & Beauty Solutions",description:"QR code solutions for cosmetics and health products. Share ingredient information, usage instructions, and brand stories to build customer trust.",provider:{"@type":"Organization",name:"SmartLinks"},serviceType:"Beauty Product Authentication",areaServed:"Worldwide"};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Health & Beauty QR Codes - Cosmetics Product Authentication",description:"Enhance beauty product trust with GS1 Digital Link QR codes. Share ingredient info, usage instructions, and brand stories for cosmetics and health products.",keywords:"beauty QR codes, cosmetics labeling, health product authentication, ingredient transparency, skincare information, beauty brand engagement",url:"https://smartlinks-public-site.lovable.app/health-beauty",canonical:"https://smartlinks-public-site.lovable.app/health-beauty",structuredData:e,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Industry Solutions",url:"https://smartlinks-public-site.lovable.app/"},{name:"Health & Beauty",url:"https://smartlinks-public-site.lovable.app/health-beauty"}]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(ZF,{}),s.jsx(e9,{}),s.jsx(t9,{}),s.jsx(n9,{}),s.jsx(s9,{}),s.jsx(Zc,{}),s.jsx(uv,{}),s.jsx(it,{})]})]})]})},i9=()=>s.jsx("section",{className:"pt-20 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center min-h-[600px]",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"Understanding the Ecodesign for Sustainable Products Regulation (ESPR) and Its Impact on UK and EU Manufacturers"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"The Ecodesign for Sustainable Products Regulation (ESPR) is a landmark legislation by the European Union, aimed at making products placed on the EU market more sustainable and environmentally friendly."}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"This new regulation impacts manufacturers in both the EU and the UK, especially those operating within or exporting to the European market. In this guide, we will explore what the ESPR entails, its implications for manufacturers, and how platforms like SmartLinks can help businesses comply and thrive in this new regulatory environment."}),s.jsx(H,{className:"border-white/30 text-white px-8 py-3 rounded font-semibold bg-sky-800 hover:bg-sky-700",children:"Learn More"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/6869d05c-b865-4937-b062-9a58a8a5ebb9.webp",alt:"Wind turbines in green field representing sustainable energy",className:"w-full h-auto rounded object-cover"})})})]})})}),a9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid grid-cols-3 gap-12 items-start",children:[s.jsxs("div",{className:"text-white",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold mb-6 leading-tight",children:"What Is The Ecodesign For Sustainable Products Regulation (ESPR)?"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:"The ESPR is a core component of the EU's Circular Economy Action Plan, which seeks to promote sustainable product design and reduce waste. It focuses on several key areas:"})]}),s.jsxs("div",{className:"col-span-2 space-y-4",children:[s.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[s.jsxs("div",{className:"bg-green-800/80 backdrop-blur-sm border border-green-600/30 rounded-lg p-6 hover:bg-green-800/90 transition-colors",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(En,{className:"w-8 h-8 text-green-400"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:"Transparency and Consumer Information"}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:"Manufacturers must provide clear information about the environmental impact of their products, enabling consumers to make informed choices."})]}),s.jsxs("div",{className:"bg-green-800/80 backdrop-blur-sm border border-green-600/30 rounded-lg p-6 hover:bg-green-800/90 transition-colors",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(Po,{className:"w-8 h-8 text-green-400"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:"Digital Product Passports (DPPs)"}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:"The regulation mandates the inclusion of digital product passports that provide detailed information on a product's composition, environmental impact, and recycling instructions."})]})]}),s.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[s.jsxs("div",{className:"bg-green-600/70 backdrop-blur-sm border border-green-500/30 rounded-lg p-6 hover:bg-green-600/80 transition-colors",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(Tt,{className:"w-8 h-8 text-green-300"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:"Reduction of Hazardous Substances"}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:"The ESPR imposes stricter controls on the use of harmful chemicals and materials in product manufacturing."})]}),s.jsxs("div",{className:"bg-green-600/70 backdrop-blur-sm border border-green-500/30 rounded-lg p-6 hover:bg-green-600/80 transition-colors",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(Zs,{className:"w-8 h-8 text-green-300"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:"Resource Efficiency"}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:"Products should use fewer resources during production and be easier to recycle or repurpose at the end of their life."})]}),s.jsxs("div",{className:"bg-green-600/70 backdrop-blur-sm border border-green-500/30 rounded-lg p-6 hover:bg-green-600/80 transition-colors",children:[s.jsx("div",{className:"flex items-center mb-4",children:s.jsx(Mk,{className:"w-8 h-8 text-green-300"})}),s.jsx("h3",{className:"text-white font-semibold text-lg mb-3",children:"Durability and Reusability"}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:"Products must be designed to last longer and be easily repairable or upgradable, reducing the need for frequent replacements."})]})]})]})]})})}),o9=()=>{const e=[{title:"Product Design Changes",description:"Companies will need to redesign products to meet new durability, repairability, and resource efficiency standards. This might involve rethinking the entire supply chain and production process."},{title:"Increased Documentation",description:"The introduction of Digital Product Passports means that manufacturers must collect, maintain, and present detailed product data throughout the product's lifecycle. This requires robust data management systems and transparent supply chains."},{title:"Cost Implications",description:"Whilst the ESPR aims to reduce long-term environmental costs, there could be initial increased costs related to research, development, and compliance."},{title:"Market Competitiveness",description:"Compliant products could see a competitive advantage as consumers increasingly prioritise sustainability in their purchasing decisions."}];return s.jsx("section",{className:"py-16 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-8",children:"Impact On UK And EU Manufacturers"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Manufacturers within the UK and EU who operate or export to the EU market must comply with the ESPR's requirements. Non-compliance could result in penalties, including the prohibition of products in the EU market."}),s.jsx("h3",{className:"text-xl font-semibold text-white mb-6",children:"Key impacts include:"}),s.jsx("div",{className:"space-y-6 mb-8",children:e.map((t,n)=>s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx(Ar,{className:"w-6 h-6 text-green-400 mt-1 flex-shrink-0"}),s.jsxs("h4",{className:"text-white font-semibold",children:[t.title,":"]}
826)]}),s.jsx("p",{className:"text-white/80 ml-9",children:t.description})]},n))}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"See further information about the ESPR regulations here"}),s.jsx(H,{className:"bg-blue-500 hover:bg-blue-600 text-white px-8 py-3 rounded",children:"Book a Demo"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{alt:"Manufacturing worker in industrial setting",src:"https://images.unsplash.com/photo-1581091226825-a6a2a5aee158?w=500&h=600&fit=crop&crop=center",className:"w-full h-auto rounded object-cover"})})})]})})})},l9=()=>{const e=["Digital Product Passports: SmartLinks enables the creation and management of Digital Product Passports (DPPs) via QR codes or NFC tags on products, providing instant access to key product details like origin, sustainability, and recycling.","Enhanced Transparency: The platform delivers detailed product informationâprovenance, sustainability, recyclingâdirectly to consumers, aligning with ESPR transparency standards.","Analytics and Compliance: SmartLinks' analytics tools give insights into consumer interactions and compliance, aiding brands in adjusting strategies to maintain ESPR compliance.","Sustainability Marketing: SmartLinks helps brands effectively communicate their sustainability efforts through dynamic content, strengthening connections with eco-conscious consumers and enhancing brand loyalty."];return s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsxs("div",{className:"relative max-w-md",children:[s.jsx("div",{className:"rounded-lg p-6 shadow-2xl bg-transparent",children:s.jsx(he,{src:"/lovable-uploads/d52c8d6d-7270-4876-91d4-3ddee143ad7e.webp",alt:"Washing machine with SmartLinks QR code and mobile app interface",className:"w-full h-auto object-contain rounded-lg"})}),s.jsx("div",{className:"absolute -right-4 -top-4 bg-black rounded-lg p-4 max-w-xs",children:s.jsxs("div",{className:"text-white text-sm space-y-2",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ar,{className:"w-4 h-4 text-green-400"}),s.jsx("span",{children:"Digital Product Passport"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ar,{className:"w-4 h-4 text-green-400"}),s.jsx("span",{children:"Full Traceability"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ar,{className:"w-4 h-4 text-green-400"}),s.jsx("span",{children:"ESPR Compliant"})]})]})})]})}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-8",children:"SmartLinks Platform ESPR Solution"}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"SmartLinks offers a dynamic platform that helps manufacturers and brands meet regulatory needs whilst boosting consumer engagement through innovative digital solutions."}),s.jsx("div",{className:"space-y-6",children:e.map((t,n)=>s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx(Ar,{className:"w-6 h-6 text-green-400 mt-1 flex-shrink-0"}),s.jsx("p",{className:"text-white/80 leading-relaxed",children:t})]},n))})]})]})})})},c9=()=>s.jsx("section",{className:"py-16 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-8",children:"Engage And Connect"}),s.jsxs("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:["We work with your existing data and APIs and also with third party data and intelligence providers such as ",s.jsx("a",{href:"https://fabacus.com/",target:"_blank",rel:"noopener noreferrer",className:"underline hover:text-white transition-colors",children:"Fabacus"})," for end to end ESPR traceability and sustainability compliance."]}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"Our solution can not only help you comply with these new regulations, but also transform your approach to consumer engagement and sustainability marketing, ultimately gaining a competitive edge in the marketplace."})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative max-w-md",children:s.jsxs("div",{className:"bg-gradient-to-br from-orange-500 to-red-600 rounded-lg p-6 shadow-2xl",children:[s.jsx("div",{className:"bg-black/20 rounded-lg p-4 mb-4",children:s.jsx(he,{src:"/lovable-uploads/6f4a5c50-c7c2-4d13-ac72-2a05057bb45e.webp",alt:"Cresha lawn mower with QR code and SmartLinks mobile app interface",size:"auto",className:"w-full h-auto object-contain rounded-lg"})}),s.jsxs("div",{className:"text-white space-y-2",children:[s.jsx("div",{className:"bg-black/30 rounded p-2 text-sm",children:"ð± Digital Product Passport"}),s.jsx("div",{className:"bg-black/30 rounded p-2 text-sm",children:"ð§ Maintenance History"}),s.jsx("div",{className:"bg-black/30 rounded p-2 text-sm",children:"ð± Environmental Impact"}),s.jsx("div",{className:"bg-black/30 rounded p-2 text-sm",children:"ð Compliance Data"})]})]})})})]})})}),d9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"max-w-4xl mx-auto text-center",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-8",children:"Book A Demo"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-12",children:"Find out more about how we can help you integrate robust Digital Product Passports (DPPs) and supply chain transparency into your business to comply with ESPR requirements. Schedule a personalised demo with our experts to see how SmartLinks can streamline your compliance journey."}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 mb-12",children:[s.jsxs("div",{className:"bg-white/5 rounded-lg p-6 border border-white/10",children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"What You'll Learn"}),s.jsxs("ul",{className:"text-white/70 text-left space-y-2",children:[s.jsx("li",{children:"⢠ESPR compliance strategies for your industry"}),s.jsx("li",{children:"⢠Digital Product Passport implementation"}),s.jsx("li",{children:"⢠Supply chain transparency solutions"}),s.jsx("li",{children:"⢠ROI calculations and business benefits"})]})]}),s.jsxs("div",{className:"bg-white/5 rounded-lg p-6 border border-white/10",children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"Demo Includes"}),s.jsxs("ul",{className:"text-white/70 text-left space-y-2",children:[s.jsx("li",{children:"⢠Live DPP demonstrations"}),s.jsx("li",{children:"⢠Platform walkthrough and features"}),s.jsx("li",{children:"⢠ESPR compliance roadmap discussion"}),s.jsx("li",{children:"⢠Q&A with compliance experts"})]})]})]}),s.jsx(H,{className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 text-lg",children:"Schedule Your Demo"})]})})}),u9=()=>{const e={"@context":"https://schema.org","@type":"Article",headline:"ESPR Compliance Solutions - Digital Product Passports",description:"Navigate EU ESPR regulations with SmartLinks digital product passport solutions. Ensure compliance while enhancing customer engagement.",author:{"@type":"Organization",name:"SmartLinks"},publisher:{"@type":"Organization",name:"SmartLinks"}};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"ESPR Compliance Solutions - Digital Product Passports & EU Regulations",description:"Navigate EU ESPR regulations with SmartLinks digital product passport solutions. Ensure compliance while enhancing customer engagement and product transparency.",ke
826ywords:"ESPR compliance, digital product passport, EU regulations, sustainable products, circular economy, product transparency, environmental compliance",url:"https://smartlinks-public-site.lovable.app/espr",canonical:"https://smartlinks-public-site.lovable.app/espr",type:"article",structuredData:e,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"ESPR Compliance",url:"https://smartlinks-public-site.lovable.app/espr"}],faqItems:[{question:"What is ESPR?",answer:"The Ecodesign for Sustainable Products Regulation (ESPR) is an EU regulation requiring Digital Product Passports for products sold in the European market, promoting sustainability and circular economy principles."},{question:"What is a Digital Product Passport?",answer:"A Digital Product Passport (DPP) is a digital record containing information about a product's sustainability, composition, repairability, and end-of-life handling, accessible via QR codes or digital links."},{question:"How does SmartLinks help with ESPR compliance?",answer:"SmartLinks provides a complete platform for creating GS1 Digital Link QR codes that connect to Digital Product Passports, ensuring regulatory compliance while enabling customer engagement."}]}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(i9,{}),s.jsx(a9,{}),s.jsx(o9,{}),s.jsx(l9,{}),s.jsx(c9,{}),s.jsx(d9,{}),s.jsx(ui,{}),s.jsx(it,{})]})]})]})},h9=()=>s.jsx("section",{className:"pt-32 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h1",{className:"text-5xl lg:text-6xl font-bold text-white mb-6 leading-tight",children:"GS1 Digital Link Guide"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Welcome to SmartLinks guide to the GS1 Digital Link standard. Discover how this new standard revolutionises product interaction, supply chain management, and consumer engagement."}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"As a GS1 UK approved partner SmartLinks also helps companies make the switch to the new GS1 Digital Link standard with our powerful and comprehensive content management system."})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx(he,{src:"/lovable-uploads/e1f9b33f-1757-4ebb-a4d7-a9a61a2cf669.webp",alt:"GS1 Logo",className:"w-80 h-80 object-contain"})})})]})})}),m9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"mb-16",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-8 text-center",children:"What Is The GS1 Digital Link?"}),s.jsxs("div",{className:"text-white/80 text-lg leading-relaxed max-w-4xl mx-auto text-justify space-y-6 mb-12",children:[s.jsx("p",{children:"The GS1 Digital Link transforms traditional barcodes into dynamic web addresses incorporating the product's GTIN. Brands can enhance the granularity of the information by including additional identifiers within the URL, such as batch numbers or individual item codes."}),s.jsx("p",{children:"The GS1 Digital Link transforms traditional barcodes into dynamic web addresses. This integration brings product information into the digital realm, enhancing accessibility for consumers, retailers, and supply chain partners."}),s.jsx("p",{children:"Developed by GS1, this new global standard outlines the specifications for encoding product identifiers and additional attributes into a web link. It ensures seamless integration and interoperability across industries."})]})]}),s.jsx("div",{className:"relative flex items-center justify-center mb-8",children:s.jsx("div",{className:"max-w-6xl w-full",children:s.jsx("img",{alt:"GS1 Digital Link ecosystem diagram showing QR code connected to various features like Digital Product Passport, Traceability, Authentication, Brand & Product Information, Recipes & Inspiration, Health & Nutrition, Allergens & Ingredients, Offers & Promotions, Sustainability & Recycling, Returns Management, Inventory Management, Waste reduction, and Regulation & Legislation",src:"/lovable-uploads/e1d9c20b-c1f3-4ab8-88e7-6417eb140ffb.webp",className:"w-full h-auto rounded-lg object-contain"})})})]})}),p9=()=>s.jsx("section",{className:"px-6 py-[11px]",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-12 text-center",children:"How Does A Digital Link Work?"}),s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"By
826scanning a 2D barcode, such as a QR code, users are redirected to a wealth of online content related to the product."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"The GS1 Digital Link uses a structured web link called URI (Uniform Resource Identifier), to connect products to online resources."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"The URI, embedded in a 2D barcode, is processed by a tool called a Resolver, directing users to the appropriate content based on their device and context."}),s.jsxs("div",{className:"mb-8",children:[s.jsx("p",{className:"text-white text-lg font-semibold mb-4",children:"The GS1 Digital Link standard works with all kinds of machine-readable technologies including:"}),s.jsxs("div",{className:"space-y-2 text-white/80",children:[s.jsx("p",{children:"⢠2D Barcodes (QR Codes)"}),s.jsx("p",{children:"⢠Near-field communication (NFC)"}),s.jsx("p",{children:"⢠Other technologies, such as Digital Watermarking and RFID."})]})]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center gap-4 p-4 bg-blue-600/10 rounded-lg border border-blue-500/20",children:[s.jsx(M_,{className:"w-8 h-8 text-blue-400"}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-white font-semibold mb-1",children:"Step 1: Scan"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Consumer scans QR code or taps NFC tag"})]})]}),s.jsxs("div",{className:"flex items-center gap-4 p-4 bg-green-600/10 rounded-lg border border-green-500/20",children:[s.jsx(tn,{className:"w-8 h-8 text-green-400"}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-white font-semibold mb-1",children:"Step 2: Resolve"}),s.jsx("p",{className:"text-white/70 text-sm",children:"GS1 Digital Link resolves to product data"})]})]}),s.jsxs("div",{className:"flex items-center gap-4 p-4 bg-purple-600/10 rounded-lg border border-purple-500/20",children:[s.jsx(Ki,{className:"w-8 h-8 text-purple-400"}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-white font-semibold mb-1",children:"Step 3: Experience"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Access digital content and services"})]})]})]})]}),s.jsx("div",{className:"flex justify-center",children:s.jsx("div",{className:"max-w-lg w-full",children:s.jsx("img",{alt:"GS1 Digital Link diagram showing QR code with Base URL, Product GTIN, Serial Number, Product Key, and Serial Key components",src:"/lovable-uploads/b317f5f1-8959-4ad3-8195-f0b0bba84492.webp",className:"w-full h-auto rounded-lg object-contain bg-white/5 p-4"})})})]})]})}),f9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"order-2 lg:order-1",children:s.jsx("div",{className:"w-full h-64 bg-white/10 rounded-lg border border-white/20 overflow-hidden",children:s.jsx("img",{alt:"Barcode example",className:"w-full h-full object-cover opacity-60",src:"/lovable-uploads/437f13e1-16e1-40f1-a4fa-e3eb0e422b1e.webp"})})}),s.jsxs("div",{className:"order-1 lg:order-2",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-6",children:"Digital Link For Any Barcode"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Transform any existing barcode into a powerful digital gateway. GS1 Digital Links work with traditional barcodes, QR codes, and NFC tags, making it easy to upgrade your current product identification system."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"Whether you're using UPC, EAN, or other GS1 standards, Digital Links provide a seamless bridge between your physical products and digital experiences, enhancing customer engagement while maintaining compatibility with existing systems."}),s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-400 rounded-full"}),s.jsx("span",{className:"text-white/80",children:"Compatible with existing GS1 standards"})]}),s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-400 rounded-full"}),s.jsx("span",{className:"text-white/80",children:"Works with any barcode format"})]}),s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-blue-400 rounded-full"}),s.jsx("span",{className:"text-white/80",children:"Easy integration process"})]})]})]})]})})}),x9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-12 text-center",children:"What's A Resolver?"}),s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"To ensure that the information accessed is relevant to the user, GS1 Digital Link utilises a 'Resolver'. This tool acts more like a pathfinder than a direct source of information, redirecting requests from one server to another."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"It's designed to link the GTIN within a URL to various types of informationâwhether it's traceability details, nutritional facts, or sustainability data."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"Resolvers are dynamic, allowing links to be updated with new information such as time-sensitive promotions or important product updates. This dynamic capability means that a single barcode can offer endless resources to support both B2B and B2C interactions."}),s.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[s.jsxs("div",{className:"text-center p-4 bg-blue-600/10 rounded-lg border border-blue-500/20",children:[s.jsx(tn,{className:"w-8 h-8 text-blue-400 mx-auto mb-2"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Data Storage"})]}),s.jsxs("div",{className:"text-center p-4 bg-green-600/10 rounded-lg border border-green-500/20",children:[s.jsx(cx,{className:"w-8 h-8 text-green-400 mx-auto mb-2"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Processing"})]}),s.jsxs("div",{className:"text-center p-4 bg-purple-600/10 rounded-lg border border-purple-500/20",children:[s.jsx(Ki,{className:"w-8 h-8 text-purple-400 mx-auto mb-2"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Delivery"})]})]})]}),s.jsx("div",{className:"flex justify-center",children:s.jsx("div",{className:"max-w-lg w-full",children:s.jsx("img",{alt:"GS1 Digital Link resolver diagram showing QR code connected to various product information destinations including Product Information Page, Product Information Leaflet, TV ad/other related video, Nutritional Information, Recall status, and Other digital content",src:"/lovable-uploads/e325d8bd-321d-45ae-a387-80ca548a0130.webp",className:"w-full h-auto rounded-lg object-contain bg-white/5 p-4"})})})]})]})}),g9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-8",children:"Who Uses A GS1 Digital Link?"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"GS1 Digital Links are adopted by brands worldwide across various industries to enhance product transparency, consumer engagement, and supply chain efficie
826ncy. From global retailers to emerging brands, organizations use Digital Links to build trust and create value."}),s.jsxs("div",{className:"space-y-6",children:[s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-2",children:"Retail & Consumer Goods"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Major retailers and FMCG brands use Digital Links for product authentication, recalls, and customer engagement."})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-2",children:"Pharmaceuticals & Healthcare"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Healthcare companies leverage Digital Links for drug verification, patient information, and regulatory compliance."})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-2",children:"Food & Beverage"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Food brands use Digital Links for traceability, nutritional information, and sustainability storytelling."})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-2",children:"Fashion & Apparel"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Fashion brands implement Digital Links for authenticity verification, care instructions, and brand experiences."})]})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"max-w-lg w-full",children:s.jsx("img",{alt:"GS1 UK Approved certification badge showing the official GS1 logo in a star-shaped design",src:"/lovable-uploads/25626a04-2fef-4981-8626-7c9eb1c2f26d.webp",className:"w-full h-auto object-contain"})})})]})})}),v9=()=>s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"max-w-4xl mx-auto text-center",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-white mb-8",children:"Book A Demo"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-12",children:"Ready to explore how GS1 Digital Links can transform your product strategy? Schedule a personalised demo with our experts to see the technology in action and discover how it can benefit your business."}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 mb-12",children:[s.jsxs("div",{className:"bg-white/5 rounded-lg p-6 border border-white/10",children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"What You'll Learn"}),s.jsxs("ul",{className:"text-white/70 text-left space-y-2",children:[s.jsx("li",{children:"⢠Implementation strategies for your industry"}),s.jsx("li",{children:"⢠ROI calculations and business benefits"}),s.jsx("li",{children:"⢠Technical requirements and integration"}),s.jsx("li",{children:"⢠Best practices from successful deployments"})]})]}),s.jsxs("div",{className:"bg-white/5 rounded-lg p-6 border border-white/10",children:[s.jsx("h4",{className:"text-white font-semibold mb-4",children:"Demo Includes"}),s.jsxs("ul",{className:"text-white/70 text-left space-y-2",children:[s.jsx("li",{children:"⢠Live product scanning demonstrations"}),s.jsx("li",{children:"⢠Platform walkthrough and features"}),s.jsx("li",{children:"⢠Custom use case discussions"}),s.jsx("li",{children:"⢠Q&A with technical experts"})]})]})]}),s.jsx(H,{className:"bg-gradient-to-r from-blue-500 to-purple-600 hover:from-blue-600 hover:to-purple-700 text-white px-8 py-3 text-lg",children:"Schedule Your Demo"})]})})}),y9=()=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(Se,{title:"GS1 Digital Link QR Codes - SmartLinks",description:"Learn how GS1 Digital Link QR codes revolutionise product packaging with standardised, scannable codes that connect consumers to rich product information.",keywords:"GS1 Digital Link, QR codes, barcode evolution, product information, GS1 resolver, supply chain",canonical:"https://smartlinks-public-site.lovable.app/gs1-digital-link",structuredData:{"@context":"https://schema.org","@type":"TechArticle",headline:"GS1 Digital Link QR Codes",description:"How GS1 Digital Link QR codes transform product packaging with standardised digital identifiers",url:"https://smartlinks-public-site.lovable.app/gs1-digital-link",publisher:{"@type":"Organization",name:"SmartLinks"}},breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"GS1 Digital Link",url:"https://smartlinks-public-site.lovable.app/gs1-digital-link"}],faqItems:[{question:"What is a GS1 Digital Link?",answer:"A GS1 Digital Link is a web-enabled ver
826sion of a barcode that connects products to online information using standardised GS1 identifiers embedded in QR codes or other data carriers."},{question:"How does a GS1 Digital Link QR code differ from a regular QR code?",answer:"Unlike regular QR codes, GS1 Digital Link QR codes contain standardised product identifiers (GTINs) and resolve through GS1-compliant resolvers, enabling multiple destinations from a single code."},{question:"Who uses GS1 Digital Links?",answer:"Brands across food & beverages, clothing & apparel, health & beauty, electronics, and other industries use GS1 Digital Links for product transparency, regulatory compliance, and customer engagement."}]}),s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl op
826acity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(h9,{}),s.jsx(m9,{}),s.jsx(p9,{}),s.jsx(f9,{}),s.jsx(x9,{}),s.jsx(g9,{}),s.jsx(v9,{}),s.jsx(ui,{}),s.jsx(it,{})]})]}),b9=()=>s.jsxs("main",{className:"min-h-screen bg-black",children:[s.jsx(Se,{title:"Contact Us - Get in Touch with SmartLinks",description:"Contact SmartLinks to learn how GS1 Digital Link QR codes can transform your product packaging. Book a demo or request information about our solutions.",keywords:"contact SmartLinks, book a demo, GS1 Digital Link enquiry, product authentication contact",canonical:"https://smartlinks-public-site.lovable.app/contact",structuredData:{"@context":"https://schema.org","@type":"ContactPage",name:"Contact SmartLinks",url:"https://smartlinks-public-site.lovable.app/contact",mainEntity:{"@type":"Organization",name:"SmartLinks",url:"https://smartlinks-public-site.lovable.app"}}}),s.jsx(rt,{}),s.jsx(ui,{}),s.jsx(it,{})]}),TC=()=>s.jsx("section",{className:"pt-24 pb-16",children:s.jsx("div",{className:"container mx-auto px-6 text-center",children:s.jsx("h1",{className:"text-5xl md:text-6xl font-bold text-white mb-8",children:"SmartLinks NEWS"})})}),Tn=x.forwardRef(({className:e,...t},n)=>s.jsx("div",{ref:n,className:J("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));Tn.displayName="Card";const _s=x.forwardRef(({className:e,...t},n)=>s.jsx("div",{ref:n,className:J("flex flex-col space-y-1.5 p-6",e),...t}));_s.displayName="CardHeader";const As=x.forwardRef(({className:e,...t},n)=>s.jsx("h3",{ref:n,className:J("text-2xl font-semibold leading-none tracking-tight",e),...t}));As.displayName="CardTitle";const w9=x.forwardRef(({className:e,...t},n)=>s.jsx("p",{ref:n,className:J("text-sm text-muted-foreground",e),...t}));w9.displayName="CardDescription";const _n=x.forwardRef(({className:e,...t},n)=>s.jsx("div",{ref:n,className:J("p-6 pt-0",e),...t}));_n.displayName="CardContent";const j9=x.forwardRef(({className:e,...t},n)=>s.jsx("div",{ref:n,className:J("flex items-center p-6 pt-0",e),...t}));j9.displayName="CardFooter";const N9=Wh("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Jr({className:e,variant:t,...n}){return s.jsx("div",{className:J(N9({variant:t}),e),...n})}function je(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function gn(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function Mt(e,t){const n=je(e);return isNaN(t)?gn(e,NaN):(t&&n.setDate(n.getDate()+t),n)}function ss(e,t){const n=je(e);if(isNaN(t))return gn(e,NaN);if(!t)return n;const r=n.getDate(),i=gn(e,n.getTime());i.setMonth(n.getMonth()+t+1,0);const a=i.getDate();return r>=a?i:(n.setFullYear(i.getFullYear(),i.getMonth(),r),n)}const hv=6048e5,k9=864e5;let S9={};function rd(){return S9}function Rs(e,t){var l,c,d,u;const n=rd(),r=(t==null?void 0:t.weekStartsOn)??((c=(l=t==null?void 0:t.locale)==null?void 0:l.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((u=(d=n.locale)==null?void 0:d.options)==null?void 0:u.weekStartsOn)??0,i=je(e),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function ta(e){return Rs(e,{weekStartsOn:1}
826)}function _C(e){const t=je(e),n=t.getFullYear(),r=gn(e,0);r.setFullYear(n+1,0,4),r.setHours(0,0,0,0);const i=ta(r),a=gn(e,0);a.setFullYear(n,0,4),a.setHours(0,0,0,0);const o=ta(a);return t.getTime()>=i.getTime()?n+1:t.getTime()>=o.getTime()?n:n-1}function Ro(e){const t=je(e);return t.setHours(0,0,0,0),t}function ph(e){const t=je(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function js(e,t){const n=Ro(e),r=Ro(t),i=+n-ph(n),a=+r-ph(r);return Math.round((i-a)/k9)}function C9(e){const t=_C(e),n=gn(e,0);return n.setFullYear(t,0,4),n.setHours(0,0,0,0),ta(n)}function ng(e,t){const n=t*7;return Mt(e,n)}function P9(e,t){return ss(e,t*12)}function E9(e){let t;return e.forEach(function(n){const r=je(n);(t===void 0||t<r||isNaN(Number(r)))&&(t=r)}),t||new Date(NaN)}function T9(e){let t;return e.forEach(n=>{const r=je(n);(!t||t>r||isNaN(+r))&&(t=r)}),t||new Date(NaN)}function Kt(e,t){const n=Ro(e),r=Ro(t);return+n==+r}function mv(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function _9(e){if(!mv(e)&&typeof e!="number")return!1;const t=je(e);return!isNaN(Number(t))}function Pc(e,t){const n=je(e),r=je(t),i=n.getFullYear()-r.getFullYear(),a=n.getMonth()-r.getMonth();return i*12+a}function A9(e,t,n){const r=Rs(e,n),i=Rs(t,n),a=+r-ph(r),o=+i-ph(i);return Math.round((a-o)/hv)}function pv(e){const t=je(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function Zt(e){const t=je(e);return t.setDate(1),t.setHours(0,0,0,0),t}function AC(e){const t=je(e),n=gn(e,0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function fv(e,t){var l,c,d,u;const n=rd(),r=(t==null?void 0:t.weekStartsOn)??((c=(l=t==null?void 0:t.locale)==null?void 0:l.options)==null?void 0:c.weekStartsOn)??n.weekStartsOn??((u=(d=n.locale)==null?void 0:d.options)==null?void 0:u.weekStartsOn)??0,i=je(e),a=i.getDay(),o=(a<r?-7:0)+6-(a-r);return i.setDate(i.getDate()+o),i.setHours(23,59,59,999),i}function RC(e){return fv(e,{weekStartsOn:1})}const R9={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},D9=(e,t,n)=>{let r;const i=R9[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Dp(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const M9={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},L9={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},I9={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},O9={date:Dp({formats:M9,defaultWidth:"full"}),time:Dp({formats:L9,defaultWidth:"full"}),dateTime:Dp({formats:I9,defaultWidth:"full"})},F9={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},$9=(e,t,n,r)=>F9[e];function vl(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let i;if(r==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,l=n!=null&&n.width?String(n.width):o;i=e.formattingValues[l]||e.formattingValues[o]}else{const o=e.defaultWidth,l=n!=null&&n.width?String(n.width):e.defaultWidth;i=e.values[l]||e.values[o]}const a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const B9={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},z9={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},U9={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},V9={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Frid
826ay","Saturday"]},W9={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},H9={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},G9=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},q9={ordinalNumber:G9,era:vl({values:B9,defaultWidth:"wide"}),quarter:vl({values:z9,defaultWidth:"wide",argumentCallback:e=>e-1}),month:vl({values:U9,defaultWidth:"wide"}),day:vl({values:V9,defaultWidth:"wide"}),dayPeriod:vl({values:W9,defaultWidth:"wide",formattingValues:H9,defaultFormattingWidth:"wide"})};function yl(e){return(t,n={})=>{const r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;const o=a[0],l=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(l)?Q9(l,h=>h.test(o)):K9(l,h=>h.test(o));let d;d=e.valueCallback?e.valueCallback(c):c,d=n.valueCallback?n.valueCallback(d):d;const u=t.slice(o.length);return{value:d,rest:u}}}function K9(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Q9(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Y9(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;const l=t.slice(i.length);return{value:o,rest:l}}}const X9=/^(\d+)(th|st|nd|rd)?/i,J9=/\d+/i,Z9={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},e$={any:[/^b/i,/^(a|c)/i]},t$={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},n$={any:[/1/i,/2/i,/3/i,/4/i]},s$={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},r$={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},i$={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},a$={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},o$={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},l$={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},c$={ordinalNumber:Y9({matchPattern:X9,parsePattern:J9,valueCallback:e=>parseInt(e,10)}),era:yl({matchPatterns:Z9,defaultMatchWidth:"wide",parsePatterns:e$,defaultParseWidth:"any"}),quarter:yl({matchPatterns:t$,defaultMatchWidth:"wide",parsePatterns:n$,defaultParseWidth:"any",valueCallback:e=>e+1}),month:yl({matchPatterns:s$,defaultMatchWidth:"wide",parsePatterns:r$,defaultParseWidth:"any"}),day:yl({matchPatterns:i$,defaultMatchWidth:"wide",parsePatterns:a$,defaultParseWidth:"any"}),dayPeriod:yl({matchPatterns:o$,defaultMatchWidth:"any",parsePatterns:l$,defaultParseWidth:"any"})},DC={code:"en-US",formatDistance:D9,formatLong:O9,formatRelative:$9,localize:q9,match:c$,options:{weekStartsOn:0,firstWeekContainsDate:1}};function d$(e){const t=je(e);return js(t,AC(t))+1}function MC(e){const t=je(e),n=+ta(t)-+C9(t);return Math.round(n/hv)+1}function LC(e,t){var u,h,m,p;const n=je(e),r=n.getFullYear(),i=rd(),a=(t==null?void 0:t.firstWeekContainsDate)??((h=(u=t==null?void 0:t.locale)==null?void 0:u.options)==null?void 0:h.firstWeekContainsDate)??i.firstWeekContainsDate??((p=(m=i.locale)==null?void 0:m.options)==null?void 0:p.firstWeekContainsDate)??1,o=gn(e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);const l=Rs(o,t),c=gn(e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);const d=Rs(c,t);return n.getTime()>=l.getTime()?r+1:n.getTime()>=d.getTime()?r:r-1}function u$(e,t){var l,c,d,u;const n=rd(),r=(t==null?void 0:t.firstWeekContainsDate)??((c=(l=t==null?void 0:t.locale)==null?void 0:l.options)==null?void 0:c.firstWeekContainsDate)??n.firstWeekContainsDate??((u=(d=n.locale)==null?void 0:d.options)==null?void 0:u.firstWeekContainsDate)??1,i=LC(e,t),a=gn(e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),Rs(a,t)}function IC(e,t){const n=je(e),r=+Rs(n,t)-+u$(n,t);return Math.round(r/hv)+1}function Pe(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const cr={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return Pe(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):Pe(n+1,2)},d(e,t){return Pe(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return Pe(e.getHours()%12||12,t.length)},H(e,t){return Pe(e.getHours(),t.length)},m(e,t){return Pe(e.getMinutes(),t.length)},s(e,t){return Pe(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),i=Math.trunc(r*Math.pow(10,n-3));return Pe(i,t.length)}},ka={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Kw={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return cr.y(e,t)},Y:function(e,t,n,r){const i=LC(e,r),a=i>0?i:1-i;if(t==="YY"){const o=a%100;return Pe(o,2)}return t==="Yo"?n.ordinalNumber(a,{unit:"year"}):Pe(a,t.length)},R:function(e,t){const n=_C(e);return Pe(n,t.length)},u:function(e,t){const n=e.getFullYear();return Pe(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return Pe(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return Pe(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return cr.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return Pe(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const i=IC(e,r);return t==="wo"?n.ordinalNumber(i,{unit:"week"}):Pe(i,t.length)},I:function(e,t,n){const r=MC(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):Pe(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):cr.d(e,t)},D:function(e,t,n){const r=d$(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):Pe(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return Pe(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return Pe(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),i=r===0?7:r;switch(t){case"i":return String(i);case"ii":return Pe(i,t.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const i=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let i;switch(r===12?i=ka.noon:r===0?i=ka.midnight:i=r/12>
vendor: 4,693 bytes, line 826
826=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let i;switch(r>=17?i=ka.evening:r>=12?i=ka.afternoon:r>=4?i=ka.morning:i=ka.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return cr.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):cr.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):Pe(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):Pe(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):cr.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):cr.s(e,t)},S:function(e,t){return cr.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Yw(r);case"XXXX":case"XX":return ji(r);case"XXXXX":case"XXX":default:return ji(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return Yw(r);case"xxxx":case"xx":return ji(r);case"xxxxx":case"xxx":default:return ji(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Qw(r,":");case"OOOO":default:return"GMT"+ji(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Qw(r,":");case"zzzz":default:return"GMT"+ji(r,":")}},t:function(e,t,n){const r=Math.trunc(e.getTime()/1e3);return Pe(r,t.length)},T:function(e,t,n){const r=e.getTime();return Pe(r,t.length)}};function Qw(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+Pe(a,2)}function Yw(e,t){return e%60===0?(e>0?"-":"+")+Pe(Math.abs(e)/60,2):ji(e,t)}function ji(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),i=Pe(Math.trunc(r/60),2),a=Pe(r%60,2);return n+i+t+a}const Xw=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},OC=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},h$=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return Xw(e,t);let a;switch(r){case"P":a=t.dateTime({width:"short"});break;case"PP":a=t.dateTime({width:"medium"});break;case"PPP":a=t.dateTime({width:"long"});break;case"PPPP":default:a=t.dateTime({width:"full"});break}return a.replace("{{date}}",Xw(r,t)).replace("{{time}}",OC(i,t))},m$={p:OC,P:h$},p$=/^D+$/,f$=/^Y+$/,x$=["D","DD","YY","YYYY"];function g$(e){return p$.test(e)}function v$(e){return f$.test(e)}function y$(e,t,n){const r=b$(e,t,n);if(console.warn(r),x$.includes(e))throw new RangeError(r)}function b$(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const w$=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,j$=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,N$=/^'([^]*?)'?$/,k$=/''/g,S$=/[a-zA-Z]/;function Ls(e,t,n){var u,h,m,p,g,f,b,v;const r=rd(),i=(n==null?void 0:n.locale)??r.locale??DC,a=(n==null?void 0:n.firstWeekContainsDate)??((h=(u=n==null?void 0:n.locale)==null?void 0:u.options)==null?void 0:h.firstWeekContainsDate)??r.firstWeekContainsDate??((p=(m=r.locale)==null?void 0:m.options)==null?void 0:p.firstWeekContainsDate)??1,o=(n==null?void 0:n.weekStartsOn)??((f=(g=n==null?void 0:n.locale)==null?void 0:g.options)==null?void 0:f.weekStartsOn)??r.weekStartsOn??((v=(b=r.locale)==null?void 0:b.options)==null?void 0:v.weekStartsOn)??0,l=je(e);if(!_9(l))throw new RangeError("Invalid time value");let c=t.match(j$).map(y=>{const w=y[0];if(w==="p"||w==="P"){const j=m$[w];return j(y,i.formatLong)}return y}).join("").match(w$).map(y=>{if(y==="''")return{isToken:!1,value:"'"};const w=y[0];if(w==="'")return{isToken:!1,value:C$(y)};if(Kw[w])return{isToken:!0,value:y};
826if(w.match(S$))throw new RangeError("Format string contains an unescaped latin alphabet character `"+w+"`");return{isToken:!1,value:y}});i.localize.preprocessor&&(c=i.localize.preprocessor(l,c));const d={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(y=>{if(!y.isToken)return y.value;const w=y.value;(!(n!=null&&n.useAdditionalWeekYearTokens)&&v$(w)||!(n!=null&&n.useAdditionalDayOfYearTokens)&&g$(w))&&y$(w,t,String(e));const j=Kw[w[0]];return j(l,w,i.localize,d)}).join("")}function C$(e){const t=e.match(N$);return t?t[1].replace(k$,"'"):e}function P$(e){const t=je(e),n=t.getFullYear(),r=t.getMonth(),i=gn(e,0);return i.setFullYear(n,r+1,0),i.setHours(0,0,0,0),i.getDate()}function E$(e){return Math.trunc(+je(e)/1e3)}function T$(e){const t=je(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(0,0,0,0),t}function _$(e,t){return A9(T$(e),Zt(e),t)+1}function sg(e,t){const n=je(e),r=je(t);return n.getTime()>r.getTime()}function FC(e,t){const n=je(e),r=je(t);return+n<+r}function xv(e,t){const n=je(e),r=je(t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()}function A$(e,t){const n=je(e),r=je(t);return n.getFullYear()===r.getFullYear()}function Mp(e,t){return Mt(e,-t)}function Lp(e,t){const n=je(e),r=n.getFullYear(),i=n.getDate(),a=gn(e,0);a.setFullYear(r,t,15),a.setHours(0,0,0,0);const o=P$(a);return n.setMonth(t,Math.min(i,o)),n}function Jw(e,t){const n=je(e);return isNaN(+n)?gn(e,NaN):(n.setFullYear(t),n)}const R$="smartlinks-public-site.lovable.app",$C=e=>{if(!e)return[];const t=e.trim();let n=t;if(/^https?:\/\//i.test(t))try{const i=new URL(t);i.hostname===R$&&(n=`${i.pathname}${i.search}`)}catch{n=t}const r=n.replace(/\.webp(\?.*)?$/i,".jpg$1");return Array.from(new Set([n,r])).filter(Boolean)},BC=(e,t,n=3)=>{const r=t==null?void 0:t.trim().toLowerCase();return Array.from(new Set((e??[]).map(i=>i.trim()).filter(Boolean).filter(i=>i.toLowerCase()!==r))).slice(0,n)},D$=({blog:e,onClick:t})=>{const[n,r]=x.useState(0),i=$C(e.featured_image),a=i[n],o=BC(e.tags,e.category,1);return s.jsxs(Tn,{className:"bg-black/40 border-white/10 hover:border-white/20 transition-all duration-300 overflow-hidden group cursor-pointer",onClick:t,children:[a&&s.jsxs("div",{className:"aspect-video relative overflow-hidden",children:[s.jsx("img",{src:a,alt:e.title,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-300",onError:()=>{n<i.length-1&&r(l=>l+1)}}),s.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/60 via-trans
826parent to-transparent"})]}),s.jsxs(_n,{className:"p-6",children:[s.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[s.jsx(Jr,{variant:"secondary",className:"bg-purple-600/20 text-purple-300 border-purple-600/30",children:e.category}),o.length>0&&s.jsx(Jr,{variant:"outline",className:"border-white/20 text-white/60",children:o[0]})]}),s.jsx("h3",{className:"text-white text-xl font-bold mb-3 line-clamp-2 group-hover:text-purple-300 transition-colors",children:e.title}),e.excerpt&&s.jsx("p",{className:"text-white/70 text-sm mb-4 line-clamp-3",children:e.excerpt}),s.jsx("div",{className:"flex items-center justify-between text-sm text-white/60",children:s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsxs("div",{className:"flex items-center gap-1",children:[s.jsx(Xh,{className:"w-4 h-4"}),s.jsx("span",{children:e.author_name})]}),e.published_at&&s.jsxs("div",{className:"flex items-center gap-1",children:[s.jsx(Hh,{className:"w-4 h-4"}),s.jsx("span",{children:Ls(new Date(e.published_at),"MMM dd, yyyy")})]})]})})]})]})},gv=(e,t,n=!1)=>q0({queryKey:["blogs",e,t,n],queryFn:async()=>{let r=xn.from("blogs").select("*").order("published_at",{ascending:!1,nullsFirst:!1}).order("created_at",{ascending:!1});n||(r=r.eq("status","published")),e&&(r=r.eq("category",e));const{data:i,error:a}=await r;if(a)throw console.error("Error fetching blogs:",a),a;return i}}),M$=e=>q0({queryKey:["blog",e],queryFn:async()=>{const{data:t,error:n}=await xn.from("blogs").select("*").eq("slug",e).eq("status","published").single();if(n)throw console.error("Error fetching blog:",n),n;return t},enabled:!!e}),wm=()=>q0({queryKey:["blog-categories"],queryFn:async()=>{const{data:e,error:t}=await xn.from("blog_categories").select("*").order("name");if(t)throw console.error("Error fetching blog categories:",t),t;return e}});function wr({className:e,...t}){return s.jsx("div",{className:J("animate-pulse rounded-md bg-muted",e),...t})}const zC=()=>{const[e,t]=x.useState(void 0),n=zt(),{data:r,isLoading:i}=gv(e),{data:a,isLoading:o}=wm(),l=c=>{n(`/blog/${c}`)};return i?s.jsx("section",{className:"py-16",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8",children:[...Array(6)].map((c,d)=>s.jsxs("div",{className:"space-y-4",children:[s.jsx(wr,{className:"aspect-video w-full bg-white/10"}),s.jsx(wr,{className:"h-4 w-3/4 bg-white/10"}),s.jsx(wr,{className:"h-4 w-1/2 bg-white/10"})]},d))})})}):s.jsx("section",{className:"py-16",children:s.jsxs("div",{className:"container mx-auto px-6",children:[!o&&a&&s.jsxs("div",{className:"flex flex-wrap gap-4 mb-12 justify-center",children:[s.jsx(Jr,{variant:e===void 0?"default":"outline",className:`cursor-pointer transition-colors ${e===void 0?"bg-purple-600 text-white":"border-white/20 text-white/60 hover:border-white/40 hover:text-white"}`,onClick:()=>t(void 0),children:"All Categories"}),a.map(c=>s.jsx(Jr,{variant:e===c.name?"default":"outline",className:`cursor-pointer transition-colors ${e===c.name?"bg-purple-600 text-white":"border-white/20 text-white/60 hover:border-white/40 hover:text-white"}`,onClick:()=>t(c.name),children:c.name},c.id))]}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8",children:r==null?void 0:r.map(c=>s.jsx(D$,{blog:c,onClick:()=>l(c.slug)},c.id))}),r&&r.length===0&&s.jsx("div",{className:"text-center py-16",children:s.jsx("p",{className:"text-white/60 text-lg",children:"No blog posts found in this category."})})]})})},L$=()=>s.jsx(zC,{}),I$=()=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(Se,{title:"News & Updates - SmartLinks",description:"Stay up to date with the latest SmartLinks news, product updates, GS1 Digital Link developments, and industry insights.",keywords:"SmartLinks news, GS1 Digital Link updates, product authentication news, QR code industry",canonical:"https://smartlinks-public-site.lovable.app/news",structuredData:{"@context":"https://schema.org","@type":"CollectionPage",name:"SmartLinks News",description:"Latest news and updates from SmartLinks",url:"https://smartlinks-public-site.lovable.app/news"}}),s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
826acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(TC,{}),s.jsx(L$,{}),s.jsx(it,{})]})]});function O$(e){if(/<\/?[a-z][\s\S]*>/i.test(e))return e;const t=e.split(` 827`),n=[];let r=!1;for(let i=0;i<t.length;i++){const a=t[i].trim();if(!a){r&&(n.push("</ul>"),r=!1);continue}const o=a.match(/^[-â¢*]\s+(.+)/);if(o){r||(n.push("<ul>"),r=!0),n.push(`<li>${Ip(o[1])}</li>`);continue}r&&(n.push("</ul>"),r=!1),a.length<100&&!a.endsWith(".")&&!a.endsWith(",")&&!a.endsWith(":")&&a===a.replace(/^\w/,c=>c.toUpperCase())&&a.split(" ").length>=3&&a.split(" ").length<=15&&(F$(a)||a.match(/^[A-Z][^.!?]*$/))&&i>0?n.push(`<h2>${Ip(a)}</h2>`):n.push(`<p>${Ip(a)}</p>`)}return r&&n.push("</ul>"),n.join(` 828`)}function F$(e){const t=e.split(" ");return t.filter(r=>/^[A-Z]/.test(r)).length>=t.length*.5}function Ip(e){return e.replace(/(https?:\/\/[^\s<]+)/g,'<a href="$1" target="_blank" rel="noopener noreferrer">$1</a>')}const $$=()=>s.jsx("svg",{viewBox:"0 0 24 24",className:"w-4 h-4 fill-current",children:s.jsx("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})}),B$=()=>s.jsx("svg",{viewBox:"0 0 24 24",className:"w-4 h-4 fill-current",children:s.jsx("path",{d:"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"})}),z$=()=>s.jsx("svg",{viewBox:"0 0 24 24",className:"w-4 h-4 fill-current",children:s.jsx("path",{d:"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"})}),Zw=({title:e,url:t,description:n})=>{const[r,i]=x.useState(!1),a=encodeURIComponent(e),o=encodeURIComponent(t),l=u=>{window.open(u,"_blank","width=600,height=400,noopener,noreferrer")},c=async()=>{await navigator.clipboard.writeText(t),i(!0),setTimeout(()=>i(!1),2e3)},d=[{label:"X",icon:s.jsx($$,{}),onClick:()=>l(`https://twitter.com/intent/tweet?text=${a}&url=${o}`)},{label:"LinkedIn",icon:s.jsx(B$,{}),onClick:()=>l(`https://www.linkedin.com/sharing/share-offsite/?url=${o}`)},{label:"Facebook",icon:s.jsx(z$,{}),onClick:()=>l(`https://www.facebook.com/sharer/sharer.php?u=${o}`)},{label:r?"Copied!":"Copy link",icon:r?s.jsx(En,{className:"w-4 h-4"}):s.jsx(_k,{className:"w-4 h-4"}),onClick:c}];return s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("span",{className:"text-sm text-white/40",children:"Share:"}),d.map(u=>s.jsxs("button",{onClick:u.onClick,className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-xs font-medium text-white/70 bg-white/5 border border-white/10 hover:bg-purple-600/20 hover:text-purple-300 hover:border-purple-500/30 transition-colors","aria-label":u.label,children:[u.icon,u.label]},u.label))]})},U$=({slug:e})=>{const{data:t,isLoading:n,error:r}=M$(e),i=zt(),[a,o]=x.useState(0);if(x.useEffect(()=>{o(0)},[t==null?void 0:t.featured_image,e]),n)return s.jsx("div",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto max-w-4xl",children:[s.jsx(wr,{className:"h-8 w-32 mb-8 bg-white/10"}),s.jsx(wr,{className:"h-12 w-3/4 mb-6 bg-white/10"}),s.jsx(wr,{className:"h-6 w-1/2 mb-8 bg-white/10"}),s.jsx(wr,{className:"aspect-video w-full mb-8 bg-white/10"}),s.jsx("div",{className:"space-y-4",children:[...Array(10)].map((h,m)=>s.jsx(wr,{className:"h-4 w-full bg-white/10"},m))})]})});if(r||!t)return s.jsx("div",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto max-w-4xl text-center",children:[s.jsx("h1",{className:"text-4xl font-bold text-white mb-4",children:"Blog Post Not Found"}),s.jsx("p",{className:"text-white/70 mb-8",children:"The blog post you're looking for doesn't exist or has been removed."}),s.jsxs(H,{onClick:()=>i("/news"),className:"bg-purple-600 hover:bg-purple-700 text-white",children:[s.jsx(So,{className:"w-4 h-4 mr-2"}),"Back to News"]})]})});const l=$C(t==null?void 0:t.featured_image),c=l[a],d=BC(t==null?void 0:t.tags,t==null?void 0:t.category,3),u={"@context":"https://schema.org","@type":"Article",headline:t.title,de
828scription:t.meta_description||t.excerpt||t.title,author:{"@type":"Person",name:t.author_name},publisher:{"@type":"Organization",name:"SmartLinks"},datePublished:t.published_at||t.created_at,dateModified:t.updated_at,...c&&{image:c},url:`https://smartlinks-public-site.lovable.app/blog/${e}`,mainEntityOfPage:{"@type":"WebPage","@id":`https://smartlinks-public-site.lovable.app/blog/${e}`}};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:t.meta_title||`${t.title} - SmartLinks Blog`,description:t.meta_description||t.excerpt||`Read ${t.title} on the SmartLinks blog.`,keywords:d.join(", ")||"SmartLinks, blog",canonical:`https://smartlinks-public-site.lovable.app/blog/${e}`,type:"article",image:c||void 0,structuredData:u,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Blog",url:"https://smartlinks-public-site.lovable.app/blog"},{name:t.title,url:`https://smartlinks-public-site.lovable.app/blog/${e}`}]}),s.jsx("article",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto max-w-4xl",children:[s.jsxs(H,{variant:"ghost",onClick:()=>i("/news"),className:"mb-8 text-white/70 hover:text-white p-0",children:[s.jsx(So,{className:"w-4 h-4 mr-2"}),"Back to News"]}),s.jsxs("header",{className:"mb-8",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-4",children:[s.jsx(Jr,{variant:"secondary",className:"bg-purple-600/20 text-purple-300 border-purple-600/30",children:t.category}),d.map(h=>s.jsx(Jr,{variant:"outline",className:"border-white/20 text-white/60",children:h},h))]}),s.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-white mb-6 leading-tight",children:t.title}),s.jsxs("div",{className:"flex items-center gap-6 text-white/60",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Xh,{className:"w-4 h-4"}),s.jsx("span",{children:t.author_name})]}),t.published_at&&s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Hh,{className:"w-4 h-4"}),s.jsx("span",{children:Ls(new Date(t.published_at),"MMMM dd, yyyy")})]})]}),s.jsx(Zw,{title:t.title,url:`https://smartlinks-public-site.lovable.app/blog/${e}`,description:t.excerpt||void 0})]}),c&&s.jsx("div",{className:"mb-8 aspect-video overflow-hidden rounded-lg",children:s.jsx("img",{src:c,alt:t.title,className:"w-full h-full object-cover",onError:()=>{a<l.length-1&&o(h=>h+1)}})}),t.excerpt&&s.jsx("div",{className:"mb-8 p-6 bg-white/5 rounded-lg border border-white/10",children:s.jsx("p",{className:"text-lg text-white/80 italic",children:t.excerpt})}),s.jsx("div",{className:"blog-content",dangerouslySetInnerHTML:{__html:O$(t.content)}}),s.jsx("div",{className:"mt-12 pt-8 border-t border-white/10",children:s.jsx(Zw,{title:t.title,url:`https://smartlinks-public-site.lovable.app/blog/${e}`,description:t.excerpt||void 0})})]})})]})},e1=()=>{const{slug:e}=zS();return e?s.jsx(s.Fragment,{children:s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
828acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("div",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(U$,{slug:e}),s.jsx(it,{})]})]})}):s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Blog - SmartLinks News & Insights",description:"Stay updated with the latest news, insights, and developments from SmartLinks. Discover industry trends, product updates, and expert insights.",keywords:"SmartLinks blog, QR code news, digital product passports, industry insights, technology updates",url:"https://smartlinks-public-site.lovable.app/blog",canonical:"https://smartlinks-public-site.lovable.app/blog"}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
828acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("div",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx(TC,{}),s.jsx(zC,{}),s.jsx(it,{})]})]})]})},UC=()=>{const[e,t]=x.useState(null),[n,r]=x.useState(!0);x.useEffect(()=>{const o=localStorage.getItem("admin_user");if(o)try{const l=JSON.parse(o);t(l),console.log("Admin user loaded from localStorage:",l)}catch(l){console.error("Error parsing admin user data:",l),localStorage.removeItem("admin_user")}r(!1)},[]);const i=async(o,l)=>{try{if(console.log("Attempting login with:",{username:o,password:l}),o==="admin"&&l==="SmartLinks2025!Admin"){const c={id:"1",username:"admin",email:"[email protected]",role:"admin"};return localStorage.setItem("admin_user",JSON.stringify(c)),t(()=>(console.log("Login successful, user set:",c),c)),{success:!0}}else return console.log("Invalid credentials provided"),{success:!1,error:"Invalid credentials"}}catch(c){return console.error("Login error:",c),{success:!1,error:"Login failed"}}},a=()=>{console.log("Logging out admin user"),localStorage.removeItem("admin_user"),t(null)};return console.log("Current auth state:",{user:e==null?void 0:e.username,loading:n,isAuthenticated:!!e}),{user:e,loading:n,login:i,logout:a,isAuthenticated:!!e}};var V$="Label",VC=x.forwardRef((e,t)=>s.jsx(ye.label,{...e,ref:t,onMouseDown:n=>{var i;n.target.closest("button, input, select, textarea")||((i=e.onMouseDown)==null||i.call(e,n),!n.defaultPrevented&&n.detail>1&&n.preventDefault())}}));VC.displayName=V$;var WC=VC;const W$=Wh("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),mt=x.forwardRef(({className:e,...t},n)=>s.jsx(WC,{ref:n,className:J(W$(),e),...t}));mt.displayName=WC.displayName;const H$=()=>{const[e,t]=x.useState(""),[n,r]=x.useState(""),[i,a]=x.useState(!1),{login:o}=UC(),{toast:l}=sr();console.log("AdminLogin component rendered");const c=async d=>{d.preventDefault(),console.log("Login form submitted with:",{username:e}),a(!0);const u=await o(e,n);console.log("Login result:",u),u.success?(l({title:"Login successful",description:"Welcome to the admin panel"}),console.log("Login successful, toast shown"),setTimeout(()=>{a(!1)},100)):(l({title:"Login failed",description:u.error||"Invalid credentials",variant:"destructive"}),console.log("Login failed:",u.error),a(!1))};return s.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-b from-black via-purple-900 to-black p-6",children:s.jsxs(Tn,{className:"w-full max-w-md bg-black/40 border-white/10",children:[s.jsxs(_s,{className:"text-center",children:[s.jsx(As,{className:"text-2xl font-bold text-white",children:"Admin Login"}),s.jsx("p",{className:"text-white/60",children:"Access the SmartLinks admin panel"})]}),s.jsxs(_n,{children:[s.jsxs("form",{onSubmit:c,className:"space-y-4",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsx(mt,{htmlFor:"username",className:"text-white",children:"Username"}),s.jsx(fn,{id:"username",type:"text",value:e,onChange:d=>t(d.target.value),className:"bg-white/10 border-white/20 text-white placeholder:text-white/50",placeholder:"Enter your username",required:!0})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx(mt,{htmlFor:"password",className:"text-white",children:"Password"}),s.jsx(fn,{id:"password",type:"password",value:n,onChange:d=>r(d.target.value),className:"bg-white/10 border-white/20 text-white placeholder:text-white/50",placeholder:"Enter your password",required:!0})]}),s.jsx(H,{type:"submit",className:"w-full bg-purple-600 hover:bg-purple-700 text-white",disabled:i,children:i?"Logging in...":"Login"})]}),s.jsxs("div",{className:"mt-6 p-4 bg-white/5 rounded-lg border border-white/10",children:[s.jsx("p",{className:"text-white/60 text-sm mb-2",children:"Demo Credentials:"}),s.jsx("p",{className:"text-white text-sm font-mono",children:"Username: admin"}),s.jsx("p",{className:"text-white text-sm font-mono",children:"Password: SmartLinks2025!Admin"})]})]})]})})},G$=({children:e})=>{const{user:t,logout:n,loading:r}=UC(),i=zt(),a=oi();if(console.log("AdminLayout render:",{user:t==null?void 0:t.username,loading:r}),r)return console.log("AdminLayout: Still loading..."),s.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-b from-black via-purple-900 to-black",children:s.jsx("div",{className:"text-white",children:"Loading..."})});if(!t)return console.log("AdminLayout: No user found, showing login"),s.jsx(H$,{});
828console.log("AdminLayout: User authenticated, showing admin panel");const o=[{path:"/admin",icon:E0,label:"Dashboard"},{path:"/admin/blogs",icon:Co,label:"Blog Posts"},{path:"/admin/categories",icon:Ek,label:"Categories"},{path:"/admin/users",icon:dt,label:"Admin Users"}];return s.jsx("div",{className:"min-h-screen bg-gradient-to-b from-black via-purple-900 to-black",children:s.jsxs("div",{className:"flex",children:[s.jsxs("div",{className:"w-64 bg-black/40 backdrop-blur-sm border-r border-white/10 min-h-screen",children:[s.jsxs("div",{className:"p-6",children:[s.jsx("h1",{className:"text-white text-xl font-bold mb-6",children:"SmartLinks Admin"}),s.jsx("nav",{className:"space-y-2",children:o.map(l=>s.jsxs(H,{variant:a.pathname===l.path?"secondary":"ghost",className:`w-full justify-start text-white hover:bg-white/10 ${a.pathname===l.path?"bg-purple-600/20":""}`,onClick:()=>i(l.path),children:[s.jsx(l.icon,{className:"w-4 h-4 mr-2"}),l.label]},l.path))})]}),s.jsxs("div",{className:"absolute bottom-6 left-6 right-6",children:[s.jsxs("div",{className:"bg-white/5 rounded-lg p-4 mb-4",children:[s.jsx("p",{className:"text-white/60 text-sm",children:"Logged in as:"}),s.jsx("p",{className:"text-white font-medium",children:t.username})]}),s.jsxs(H,{variant:"ghost",className:"w-full text-white hover:bg-red-600/20 hover:text-red-300",onClick:n,children:[s.jsx(b_,{className:"w-4 h-4 mr-2"}),"Logout"]})]})]}),s.jsx("div",{className:"flex-1 p-6",children:e})]})})},q$=({formData:e,setFormData:t,onTitleChange:n,isCreating:r})=>s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Post Content"})}),s.jsxs(_n,{className:"space-y-4",children:[s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"title",className:"text-white",children:"Title"}),s.jsx(fn,{id:"title",value:e.title,onChange:i=>n(i.target.value),className:"bg-white/10 border-white/20 text-white",placeholder:"Enter post title"})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"slug",className:"text-white",children:"Slug"}),s.jsx(fn,{id:"slug",value:e.slug,onChange:i=>t(a=>({...a,slug:i.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"post-slug"})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"excerpt",className:"text-white",children:"Excerpt"}),s.jsx(_o,{id:"excerpt",value:e.excerpt,onChange:i=>t(a=>({...a,excerpt:i.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"Brief description of the post",rows:3})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"content",className:"text-white",children:"Content"}),s.jsx(_o,{id:"content",value:e.content,onChange:i=>t(a=>({...a,content:i.target.value})),className:"bg-white/10 border-white/20 text-white min-h-[400px]",placeholder:"Write your blog post content here..."})]})]})]});var ee=function(){return ee=Object.assign||function(t){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a])}return t},ee.apply(this,arguments)};function K$(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function HC(e,t,n){for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}function id(e){return e.mode==="multiple"}function ad(e){return e.mode==="range"}function jm(e){return e.mode==="single"}var Q$={root:"rdp",multiple_months:"rdp-multiple_months",with_weeknumber:"rdp-with_weeknumber",vhidden:"rdp-vhidden",button_reset:"rdp-button_reset",button:"rdp-button",caption:"rdp-caption",caption_start:"rdp-caption_start",caption_end:"rdp-caption_end",caption_between:"rdp-caption_between",caption_label:"rdp-caption_label",caption_dropdowns:"rdp-caption_dropdowns",dropdown:"rdp-dropdown",dropdown_month:"rdp-dropdown_month",dropdown_year:"rdp-dropdown_year",dropdown_icon:"rdp-dropdown_icon",months:"rdp-months",month:"rd
828p-month",table:"rdp-table",tbody:"rdp-tbody",tfoot:"rdp-tfoot",head:"rdp-head",head_row:"rdp-head_row",head_cell:"rdp-head_cell",nav:"rdp-nav",nav_button:"rdp-nav_button",nav_button_previous:"rdp-nav_button_previous",nav_button_next:"rdp-nav_button_next",nav_icon:"rdp-nav_icon",row:"rdp-row",weeknumber:"rdp-weeknumber",cell:"rdp-cell",day:"rdp-day",day_today:"rdp-day_today",day_outside:"rdp-day_outside",day_selected:"rdp-day_selected",day_disabled:"rdp-day_disabled",day_hidden:"rdp-day_hidden",day_range_start:"rdp-day_range_start",day_range_end:"rdp-day_range_end",day_range_middle:"rdp-day_range_middle"};function Y$(e,t){return Ls(e,"LLLL y",t)}function X$(e,t){return Ls(e,"d",t)}function J$(e,t){return Ls(e,"LLLL",t)}function Z$(e){return"".concat(e)}function eB(e,t){return Ls(e,"cccccc",t)}function tB(e,t){return Ls(e,"yyyy",t)}var nB=Object.freeze({__proto__:null,formatCaption:Y$,formatDay:X$,formatMonthCaption:J$,formatWeekNumber:Z$,formatWeekdayName:eB,formatYearCaption:tB}),sB=function(e,t,n){return Ls(e,"do MMMM (EEEE)",n)},rB=function(){return"Month: "},iB=function(){return"Go to next month"},aB=function(){return"Go to previous month"},oB=function(e,t){return Ls(e,"cccc",t)},lB=function(e){return"Week n. ".concat(e)},cB=function(){return"Year: "},dB=Object.freeze({__proto__:null,labelDay:sB,labelMonthDropdown:rB,labelNext:iB,labelPrevious:aB,labelWeekNumber:lB,labelWeekday:oB,labelYearDropdown:cB});function uB(){var e="buttons",t=Q$,n=DC,r={},i={},a=1,o={},l=new Date;return{captionLayout:e,classNames:t,formatters:nB,labels:dB,locale:n,modifiersClassNames:r,modifiers:i,numberOfMonths:a,styles:o,today:l,mode:"default"}}function hB(e){var t=e.fromYear,n=e.toYear,r=e.fromMonth,i=e.toMonth,a=e.fromDate,o=e.toDate;return r?a=Zt(r):t&&(a=new Date(t,0,1)),i?o=pv(i):n&&(o=new Date(n,11,31)),{fromDate:a?Ro(a):void 0,toDate:o?Ro(o):void 0}}var GC=x.createContext(void 0);function mB(e){var t,n=e.initialProps,r=uB(),i=hB(n),a=i.fromDate,o=i.toDate,l=(t=n.captionLayout)!==null&&t!==void 0?t:r.captionLayout;l!=="buttons"&&(!a||!o)&&(l="buttons");var c;(jm(n)||id(n)||ad(n))&&(c=n.onSelect);var d=ee(ee(ee({},r),n),{captionLayout:l,classNames:ee(ee({},r.classNames),n.classNames),components:ee({},n.components),formatters:ee(ee({},r.formatters),n.formatters),fromDate:a,labels:ee(ee({},r.labels),n.labels),mode:n.mode||r.mode,modifiers:ee(ee({},r.modifiers),n.modifiers),modifiersClassNames:ee(ee({},r.modifiersClassNames),n.modifiersClassNames),onSelect:c,styles:ee(ee({},r.styles),n.styles),toDate:o});return s.jsx(GC.Provider,{value:d,children:e.children})}function Ie(){var e=x.useContext(GC);if(!e)throw new Error("useDayPicker must be used within a DayPickerProvider.");return e}function qC(e){var t=Ie(),n=t.locale,r=t.classNames,i=t.styles,a=t.formatters.formatCaption;return s.jsx("div",{className:r.caption_label,style:i.caption_label,"aria-live":"polite",role:"presentation",id:e.id,children:a(e.displayMonth,{locale:n})})}function pB(e){return s.jsx("svg",ee({width:"8px",height:"8px",viewBox:"0 0 120 120","data-testid":"iconDropdown"},e,{children:s.jsx("path",{d:"M4.22182541,48.2218254 C8.44222828,44.0014225 15.2388494,43.9273804 19.5496459,47.9996989 L19.7781746,48.2218254 L60,88.443 L100.221825,48.2218254 C104.442228,44.0014225 111.238849,43.9273804 115.549646,47.9996989 L115.778175,48.2218254 C119.998577,52.4422283 120.07262,59.2388494 116.000301,63.5496459 L115.778175,63.7781746 L67.7781746,111.778175 C63.5577717,115.998577 56.7611506,116.07262 52.4503541,112.000301 L52.2218254,111.778175 L4.22182541,63.7781746 C-0.0739418023,59.4824074 -0.0739418023,52.5175926 4.22182541,48.2218254 Z",fill:"currentColor",fillRule:"nonzero"})}))}function KC(e){var t,n,r=e.onChange,i=e.value,a=e.children,o=e.caption,l=e.className,c=e.style,d=Ie(),u=(n=(t=d.components)===null||t===void 0?void 0:t.IconDropdown)!==null&&n!==void 0?n:pB;return s.jsxs("div",{className:l,style:c,children:[s.jsx("span",{className:d.classNames.vhidden,children:e["aria-label"]}),s.jsx("select",{name:e.name,"aria-label":e["aria-label"],className:d.classNames.dropdown,style:d.styles.dropdown,value:i,onChange:r,children:a}),s.jsxs("div",{className:d.classNames.caption_label,style:d.styles.caption_label,"aria-hidden":"true",children:[o,s.jsx(u,{className:d.classNames.dropdown_icon,style:d.styles.dropdown_icon})]})]})}function fB(e){var t,n=Ie(),r=n.fromDate,i=n.toDate,a=n.styles,o=n.locale,l=n.formatters.formatMonthCaption,c=n.classNames,d=n.components,u=n.labels.labelMonthDropdown;if(!r)return s.jsx(s.Fragment,{});if(!i)return s.jsx(s.Fragment,{});var h=[];if(A$(r,i))for(var m=Zt(r),p=r.getMonth();p<=i.getMonth();p++)h.push(Lp(m,p));else for(var m=Zt(new Date),p=0;p<=11;p++)h.push(Lp(m,p));
828var g=function(b){var v=Number(b.target.value),y=Lp(Zt(e.displayMonth),v);e.onChange(y)},f=(t=d==null?void 0:d.Dropdown)!==null&&t!==void 0?t:KC;return s.jsx(f,{name:"months","aria-label":u(),className:c.dropdown_month,style:a.dropdown_month,onChange:g,value:e.displayMonth.getMonth(),caption:l(e.displayMonth,{locale:o}),children:h.map(function(b){return s.jsx("option",{value:b.getMonth(),children:l(b,{locale:o})},b.getMonth())})})}function xB(e){var t,n=e.displayMonth,r=Ie(),i=r.fromDate,a=r.toDate,o=r.locale,l=r.styles,c=r.classNames,d=r.components,u=r.formatters.formatYearCaption,h=r.labels.labelYearDropdown,m=[];if(!i)return s.jsx(s.Fragment,{});if(!a)return s.jsx(s.Fragment,{});for(var p=i.getFullYear(),g=a.getFullYear(),f=p;f<=g;f++)m.push(Jw(AC(new Date),f));var b=function(y){var w=Jw(Zt(n),Number(y.target.value));e.onChange(w)},v=(t=d==null?void 0:d.Dropdown)!==null&&t!==void 0?t:KC;return s.jsx(v,{name:"years","aria-label":h(),className:c.dropdown_year,style:l.dropdown_year,onChange:b,value:n.getFullYear(),caption:u(n,{locale:o}),children:m.map(function(y){return s.jsx("option",{value:y.getFullYear(),children:u(y,{locale:o})},y.getFullYear())})})}function gB(e,t){var n=x.useState(e),r=n[0],i=n[1],a=t===void 0?r:t;return[a,i]}function vB(e){var t=e.month,n=e.defaultMonth,r=e.today,i=t||n||r||new Date,a=e.toDate,o=e.fromDate,l=e.numberOfMonths,c=l===void 0?1:l;if(a&&Pc(a,i)<0){var d=-1*(c-1);i=ss(a,d)}return o&&Pc(i,o)<0&&(i=o),Zt(i)}function yB(){var e=Ie(),t=vB(e),n=gB(t,e.month),r=n[0],i=n[1],a=function(o){var l;if(!e.disableNavigation){var c=Zt(o);i(c),(l=e.onMonthChange)===null||l===void 0||l.call(e,c)}};return[r,a]}function bB(e,t){for(var n=t.reverseMonths,r=t.numberOfMonths,i=Zt(e),a=Zt(ss(i,r)),o=Pc(a,i),l=[],c=0;c<o;c++){var d=ss(i,c);l.push(d)}return n&&(l=l.reverse()),l}function wB(e,t){if(!t.disableNavigation){var n=t.toDate,r=t.pagedNavigation,i=t.numberOfMonths,a=i===void 0?1:i,o=r?a:1,l=Zt(e);if(!n)return ss(l,o);var c=Pc(n,e);if(!(c<a))return ss(l,o)}}function jB(e,t){if(!t.disableNavigation){var n=t.fromDate,r=t.pagedNavigation,i=t.numberOfMonths,a=i===void 0?1:i,o=r?a:1,l=Zt(e);if(!n)return ss(l,-o);var c=Pc(l,n);if(!(c<=0))return ss(l,-o)}}var QC=x.createContext(void 0);function NB(e){var t=Ie(),n=yB(),r=n[0],i=n[1],a=bB(r,t),o=wB(r,t),l=jB(r,t),c=function(h){return a.some(function(m){return xv(h,m)})},d=function(h,m){c(h)||(m&&FC(h,m)?i(ss(h,1+t.numberOfMonths*-1)):i(h))},u={currentMonth:r,displayMonths:a,goToMonth:i,goToDate:d,previousMonth:l,nextMonth:o,isDateDisplayed:c};return s.jsx(QC.Provider,{value:u,children:e.children})}function od(){var e=x.useContext(QC);if(!e)throw new Error("useNavigation must be used within a NavigationProvider");return e}function t1(e){var t,n=Ie(),r=n.classNames,i=n.styles,a=n.components,o=od().goToMonth,l=function(u){o(ss(u,e.displayIndex?-e.dis
828playIndex:0))},c=(t=a==null?void 0:a.CaptionLabel)!==null&&t!==void 0?t:qC,d=s.jsx(c,{id:e.id,displayMonth:e.displayMonth});return s.jsxs("div",{className:r.caption_dropdowns,style:i.caption_dropdowns,children:[s.jsx("div",{className:r.vhidden,children:d}),s.jsx(fB,{onChange:l,displayMonth:e.displayMonth}),s.jsx(xB,{onChange:l,displayMonth:e.displayMonth})]})}function kB(e){return s.jsx("svg",ee({width:"16px",height:"16px",viewBox:"0 0 120 120"},e,{children:s.jsx("path",{d:"M69.490332,3.34314575 C72.6145263,0.218951416 77.6798462,0.218951416 80.8040405,3.34314575 C83.8617626,6.40086786 83.9268205,11.3179931 80.9992143,14.4548388 L80.8040405,14.6568542 L35.461,60 L80.8040405,105.343146 C83.8617626,108.400868 83.9268205,113.317993 80.9992143,116.454839 L80.8040405,116.656854 C77.7463184,119.714576 72.8291931,119.779634 69.6923475,116.852028 L69.490332,116.656854 L18.490332,65.6568542 C15.4326099,62.5991321 15.367552,57.6820069 18.2951583,54.5451612 L18.490332,54.3431458 L69.490332,3.34314575 Z",fill:"currentColor",fillRule:"nonzero"})}))}function SB(e){return s.jsx("svg",ee({width:"16px",height:"16px",viewBox:"0 0 120 120"},e,{children:s.jsx("path",{d:"M49.8040405,3.34314575 C46.6798462,0.218951416 41.6145263,0.218951416 38.490332,3.34314575 C35.4326099,6.40086786 35.367552,11.3179931 38.2951583,14.4548388 L38.490332,14.6568542 L83.8333725,60 L38.490332,105.343146 C35.4326099,108.400868 35.367552,113.317993 38.2951583,116.454839 L38.490332,116.656854 C41.5480541,119.714576 46.4651794,119.779634 49.602025,116.852028 L49.8040405,116.656854 L100.804041,65.6568542 C103.861763,62.5991321 103.926821,57.6820069 100.999214,54.5451612 L100.804041,54.3431458 L49.8040405,3.34314575 Z",fill:"currentColor"})}))}var fh=x.forwardRef(function(e,t){var n=Ie(),r=n.classNames,i=n.styles,a=[r.button_reset,r.button];e.className&&a.push(e.className);var o=a.join(" "),l=ee(ee({},i.button_reset),i.button);return e.style&&Object.assign(l,e.style),s.jsx("button",ee({},e,{ref:t,type:"button",className:o,style:l}))});function CB(e){var t,n,r=Ie(),i=r.dir,a=r.locale,o=r.classNames,l=r.styles,c=r.labels,d=c.labelPrevious,u=c.labelNext,h=r.components;if(!e.nextMonth&&!e.previousMonth)return s.jsx(s.Fragment,{});var m=d(e.previousMonth,{locale:a}),p=[o.nav_button,o.nav_button_previous].join(" "),g=u(e.nextMonth,{locale:a}),f=[o.nav_button,o.nav_button_next].join(" "),b=(t=h==null?void 0:h.IconRight)!==null&&t!==void 0?t:SB,v=(n=h==null?void 0:h.IconLeft)!==null&&n!==void 0?n:kB;return s.jsxs("div",{className:o.nav,style:l.nav,children:[!e.hidePrevious&&s.jsx(fh,{name:"previous-month","aria-label":m,className:p,style:l.nav_button_previous,disabled:!e.previousMonth,onClick:e.onPreviousClick,children:i==="rtl"?s.jsx(b,{className:o.nav_icon,style:l.nav_icon}):s.jsx(v,{className:o.nav_icon,style:l.nav_icon})}),!e.hideNext&&s.jsx(fh,{name:"next-month","aria-label":g,className:f,style:l.nav_button_next,disabled:!e.nextMonth,onClick:e.onNextClick,children:i==="rtl"?s.jsx(v,{className:o.nav_icon,style:l.nav_icon}):s.jsx(b,{className:o.nav_icon,style:l.nav_icon})})]})}function n1(e){var t=Ie().numberOfMonths,n=od(),r=n.previousMonth,i=n.nextMonth,a=n.goToMonth,o=n.displayMonths,l=o.findIndex(function(g){return xv(e.displayMonth,g)}),c=l===0,d=l===o.length-1,u=t>1&&(c||!d),h=t>1&&(d||!c),m=function(){r&&a(r)},p=function(){i&&a(i)};return s.jsx(CB,{displayMonth:e.displayMonth,hideNext:u,hidePrevious:h,nextMonth:i,previousMonth:r,onPreviousClick:m,onNextClick:p})}function PB(e){var t,n=Ie(),r=n.classNames,i=n.disableNavigation,a=n.styles,o=n.captionLayout,l=n.components,c=(t=l==null?void 0:l.CaptionLabel)!==null&&t!==void 0?t:qC,d;return i?d=s.jsx(c,{id:e.id,displayMonth:e.displayMonth}):o==="dropdown"?d=s.jsx(t1,{displayMonth:e.displayMonth,id:e.id}):o==="dropdown-buttons"?d=s.jsxs(s.Fragment,{children:[s.jsx(t1,{displayMonth:e.displayMonth,displayIndex:e.displayIndex,id:e.id}),s.jsx(n1,{displayMonth:e.displayMonth,displayIndex:e.displayIndex,id:e.id})]}):d=s.jsxs(s.Fragment,{children:[s.jsx(c,{id:e.id,displayMonth:e.displayMonth,displayIndex:e.displayIndex}),s.jsx(n1,{displayMonth:e.displayMonth,id:e.id})]}),s.jsx("div",{className:r.caption,style:a.caption,children:d})}function EB(e){var t=Ie(),n=t.footer,r=t.styles,i=t.classNames.tfoot;return n?s.jsx("tfoot",{className:i,style:r.tfoot,children:s.jsx("tr",{children:s.jsx("td",{colSpan:8,children:n})})}):s.jsx(s.Fragment,{})}function TB(e,t,n){for(var r=n?ta(new Date):Rs(new Date,{locale:e,weekStartsOn:t}),i=[],a=0;a<7;a++){var o=Mt(r,a);i.push(o)}return i}function _B(){var e=Ie(),t=e.classNames,n=e.styles,r=e.showWeekNumber,i=e.locale,a=e.weekStartsOn,o=e.ISOWeek,l=e.formatters.formatWeekdayName,c=e.labels.labelWeekday,d=TB(i,a,o);return s.jsxs("tr",{style:n.head_row,className:t.head_row,children:[r&&s.jsx("td",{style:n.head_cell,className:t.head_cell}),d.map(function(u,h){return s.jsx("th",{scope:"col",className:t.head_cell,style:n.head_cell,"aria-label":c(u,{locale:i}),children:l(u,{locale:i})},h)})]})}function AB(){var e,t=Ie(),n=t.classNames,r=t.styles,i=t.components,a=(e=i==null?void 0:i.HeadRow)!==null&&e!==void 0?e:_B;return s.jsx("thead",{style:r.head,className:n.head,children:s.jsx(a,{})})}function RB(e){var t=Ie(),n=t.locale,r=t.formatters.formatDay;return s.jsx(s.Fragment,{children:r(e.date,{locale:n})})}var vv=x.createContext(void 0);function DB(e){if(!id(e.initialProps)){var t={selected:void 0,modifiers:{disabled:[]}};return s.jsx(vv.Provider,{value:t,children:e.children})}return s.jsx(MB,{initialProps:e.initialProps,children:e.children})}function MB(e){var t=e.initialProps,n=e.children,r=t.selected,i=t.min,a=t.max,o=function(d,u,h){var m,p;(m=t.onDayClick)===null||m===void 0||m.call(t,d,u,h);var g=!!(u.selected&&i&&(r==null?void 0:r.length)===i);if(!g){var f=!!(!u.selected&&a&&(r==null?void 0:r.length)===a);if(!f){var b=r?HC([],r):[];if(u.selected){var v=b.findIndex(function(y){return Kt(d,y)});b.splice(v,1)}else b.push(d);(p=t.onSelect)===null||p===void 0||p.call(t,b,d,u,h)}}},l={disabled:[]};r&&l.disabled.push(function(d){var u=a&&r.length>a-1,h=r.some(function(m){return Kt(m,d)});return!!(u&&!h)});var c={selected:r,onDayClick:o,modifiers:l};return s.jsx(vv.Provider,{value:c,children:n})}function yv(){var e=x.useContext(vv);if(!e)throw new Error("useSelectMultiple must be used within a SelectMultipleProvider");return e}function LB(e,t){var n=t||{},r=n.from,i=n.to;return r&&i?Kt(i,e)&&Kt(r,e)?void 0:Kt(i,e)?{from:i,to:void 0}:Kt(r,e)?void 0:sg(r,e)?{from:e,to:i}:{from:r,to:e}:i?sg(e,i)?{from:i,to:e}:{from:e,to:i}:r?FC(e,r)?{from:e,to:r}:{from:r,to:e}:{from:e,to:void 0}}var bv=x.createContext(void 0);function IB(e){if(!ad(e.initialProps)){var t={selected:void 0,modifiers:{range_start:[],range_end:[],range_middle:[],disabled:[]}};return s.jsx(bv.Provider,{value:t,children:e.children})}return s.jsx(OB,{initialProps:e.initialProps,children:e.children})}function OB(e){var t=e.initialProps,n=e.children,r=t.selected,i=r||{},a=i.from,o=i.to,l=t.min,c=t.max,d=function(p,g,f){var b,v;(b=t.onDayClick)===null||b===void 0||b.call(t,p,g,f);var y=LB(p,r);(v=t.onSelect)===null||v===void 0||v.call(t,y,p,g,f)},u={range_start:[],range_end:[],range_middle:[],disabled:[]};if(a?(u.range_start=[a],o?(u.range_end=[o],Kt(a,o)||(u.range_middle=[{after:a,before:o}])):u.range_end=[a]):o&&(u.range_start=[o],u.range_end=[o]),l&&(a&&!o&&u.disabled.push({after:Mp(a,l-1),before:Mt(a,l-1)}),a&&o&&u.disabled.push({after:a,before:Mt(a,l-1)}),!a&&o&&u.disabled.push({after:Mp(o,l-1),before:Mt(o,l-1)})),c){if(a&&!o&&(u.disabled.push({before:Mt(a,-c+1)}),u.disabled.push({after:Mt(a,c-1)})),a&&o){var h=js(o,a)+1,m=c-h;u.disabled.push({before:Mp(a,m)}),u.disabled.push({after:Mt(o,m)})}!a&&o&&(u.disabled.push({before:Mt(o,-c+1)}),u.disabled.push({after:Mt(o,c-1)}))}return s.jsx(bv.Provider,{value:{selected:r,onDayClick:d,modifiers:u},children:n})}function wv(){var e=x.useContext(bv);if(!e)throw new Error("useSelectRange must be used within a SelectRangeProvider");return e}function bu(e){return Array.isArray(e)?HC([],e):e!==void 0?[e]:[]}function FB(e){var t={};return Object.entries(e).forEach(function(n){var r=n[0],i=n[1];t[r]=bu(i)}),t}var rs;(function(e){e.Outside="outside",e.Disabled="disabled",e.Selected="selected",e.Hidden="hidden",e.Today="today",e.RangeStart="range_start",e.RangeEnd="range_end",e.RangeMiddle="range_middle"})(rs||(rs={}));var $B=rs.Selected,Bs=rs.Disabled,BB=rs.Hidden,zB=rs.Today,Op=rs.RangeEnd,Fp=rs.RangeMiddle,$p=rs.RangeStart,UB=rs.Outside;function VB(e,t,n){var r,i=(r={},r[$B]=bu(e.selected),r[Bs]=bu(e.disabled),r[BB]=bu(e.hidden),r[zB]=[e.today],r[Op]=[],r[Fp]=[],r[$p]=[],r[UB]=[],r);return e.fromDate&&i[Bs].push({before:e.fromDate}),e.toDate&&i[Bs].push({after:e.toDate}
828),id(e)?i[Bs]=i[Bs].concat(t.modifiers[Bs]):ad(e)&&(i[Bs]=i[Bs].concat(n.modifiers[Bs]),i[$p]=n.modifiers[$p],i[Fp]=n.modifiers[Fp],i[Op]=n.modifiers[Op]),i}var YC=x.createContext(void 0);function WB(e){var t=Ie(),n=yv(),r=wv(),i=VB(t,n,r),a=FB(t.modifiers),o=ee(ee({},i),a);return s.jsx(YC.Provider,{value:o,children:e.children})}function XC(){var e=x.useContext(YC);if(!e)throw new Error("useModifiers must be used within a ModifiersProvider");return e}function HB(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function GB(e){return!!(e&&typeof e=="object"&&"from"in e)}function qB(e){return!!(e&&typeof e=="object"&&"after"in e)}function KB(e){return!!(e&&typeof e=="object"&&"before"in e)}function QB(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function YB(e,t){var n,r=t.from,i=t.to;if(r&&i){var a=js(i,r)<0;a&&(n=[i,r],r=n[0],i=n[1]);var o=js(e,r)>=0&&js(i,e)>=0;return o}return i?Kt(i,e):r?Kt(r,e):!1}function XB(e){return mv(e)}function JB(e){return Array.isArray(e)&&e.every(mv)}function ZB(e,t){return t.some(function(n){if(typeof n=="boolean")return n;if(XB(n))return Kt(e,n);if(JB(n))return n.includes(e);if(GB(n))return YB(e,n);if(QB(n))return n.dayOfWeek.includes(e.getDay());if(HB(n)){var r=js(n.before,e),i=js(n.after,e),a=r>0,o=i<0,l=sg(n.before,n.after);return l?o&&a:a||o}return qB(n)?js(e,n.after)>0:KB(n)?js(n.before,e)>0:typeof n=="function"?n(e):!1})}function jv(e,t,n){var r=Object.keys(t).reduce(function(a,o){var l=t[o];return ZB(e,l)&&a.push(o),a},[]),i={};return r.forEach(function(a){return i[a]=!0}),n&&!xv(e,n)&&(i.outside=!0),i}function ez(e,t){for(var n=Zt(e[0]),r=pv(e[e.length-1]),i,a,o=n;o<=r;){var l=jv(o,t),c=!l.disabled&&!l.hidden;if(!c){o=Mt(o,1);continue}if(l.selected)return o;l.today&&!a&&(a=o),i||(i=o),o=Mt(o,1)}return a||i}var tz=365;function JC(e,t){var n=t.moveBy,r=t.direction,i=t.context,a=t.modifiers,o=t.retry,l=o===void 0?{count:0,lastFocused:e}:o,c=i.weekStartsOn,d=i.fromDate,u=i.toDate,h=i.locale,m={day:Mt,week:ng,month:ss,year:P9,startOfWeek:function(b){return i.ISOWeek?ta(b):Rs(b,{locale:h,weekStartsOn:c})},endOfWeek:function(b){return i.ISOWeek?RC(b):fv(b,{locale:h,weekStartsOn:c})}},p=m[n](e,r==="after"?1:-1);r==="before"&&d?p=E9([d,p]):r==="after"&&u&&(p=T9([u,p]));var g=!0;if(a){var f=jv(p,a);g=!f.disabled&&!f.hidden}return g?p:l.count>tz?l.lastFocused:JC(p,{moveBy:n,direction:r,context:i,modifiers:a,retry:ee(ee({},l),{count:l.count+1})})}var ZC=x.createContext(void 0);function nz(e){var t=od(),n=XC(),r=x.useState(),i=r[0],a=r[1],o=x.useState(),l=o[0],c=o[1],d=ez(t.displayMonths,n),u=i??(l&&t.isDateDisplayed(l))?l:d,h=function(){c(i),a(void 0)},m=function(b){a(b)},p=Ie(),g=function(b,v){if(i){var y=JC(i,{moveBy:b,direction:v,context:p,modifiers:n});Kt(i,y)||(t.goToDate(y,i),m(y))}},f={focusedDay:i,focusTarget:u,blur:h,focus:m,focusDayAfter:function(){return g("day","after")},focusDayBefore:function(){return g("day","before")},focusWeekAfter:function(){return g("week","after")},focusWeekBefore:function(){return g("week","before")},focusMonthBefore:function(){return g("month","before")},focusMonthAfter:function(){return g("month","after")},focusYearBefore:function(){return g("year","before")},focusYearAfter:function(){return g("year","after")},focusStartOfWeek:function(){return g("startOfWeek","before")},focusEndOfWeek:function(){return g("endOfWeek","after")}};return s.jsx(ZC.Provider,{value:f,children:e.children})}function Nv(){var e=x.useContext(ZC);if(!e)throw new Error("useFocusContext must be used within a FocusProvider");return e}function sz(e,t){var n=XC(),r=jv(e,n,t);return r}var kv=x.createContext(void 0);function rz(e){if(!jm(e.initialProps)){var t={selected:void 0};return s.jsx(kv.Provider,{value:t,children:e.children})}return s.jsx(iz,{initialProps:e.initialProps,children:e.children})}function iz(e){var t=e.initialProps,n=e.children,r=function(a,o,l){var c,d,u;if((c=t.onDayClick)===null||c===void 0||c.call(t,a,o,l),o.selected&&!t.required){(d=t.onSelect)===null||d===void 0||d.call(t,void 0,a,o,l);return}(u=t.onSelect)===null||u===void 0||u.call(t,a,a,o,l)}
828,i={selected:t.selected,onDayClick:r};return s.jsx(kv.Provider,{value:i,children:n})}function e5(){var e=x.useContext(kv);if(!e)throw new Error("useSelectSingle must be used within a SelectSingleProvider");return e}function az(e,t){var n=Ie(),r=e5(),i=yv(),a=wv(),o=Nv(),l=o.focusDayAfter,c=o.focusDayBefore,d=o.focusWeekAfter,u=o.focusWeekBefore,h=o.blur,m=o.focus,p=o.focusMonthBefore,g=o.focusMonthAfter,f=o.focusYearBefore,b=o.focusYearAfter,v=o.focusStartOfWeek,y=o.focusEndOfWeek,w=function(I){var S,M,U,O;jm(n)?(S=r.onDayClick)===null||S===void 0||S.call(r,e,t,I):id(n)?(M=i.onDayClick)===null||M===void 0||M.call(i,e,t,I):ad(n)?(U=a.onDayClick)===null||U===void 0||U.call(a,e,t,I):(O=n.onDayClick)===null||O===void 0||O.call(n,e,t,I)},j=function(I){var S;m(e),(S=n.onDayFocus)===null||S===void 0||S.call(n,e,t,I)},N=function(I){var S;h(),(S=n.onDayBlur)===null||S===void 0||S.call(n,e,t,I)},C=function(I){var S;(S=n.onDayMouseEnter)===null||S===void 0||S.call(n,e,t,I)},k=function(I){var S;(S=n.onDayMouseLeave)===null||S===void 0||S.call(n,e,t,I)},P=function(I){var S;(S=n.onDayPointerEnter)===null||S===void 0||S.call(n,e,t,I)},_=function(I){var S;(S=n.onDayPointerLeave)===null||S===void 0||S.call(n,e,t,I)},T=function(I){var S;(S=n.onDayTouchCancel)===null||S===void 0||S.call(n,e,t,I)},R=function(I){var S;(S=n.onDayTouchEnd)===null||S===void 0||S.call(n,e,t,I)},L=function(I){var S;(S=n.onDayTouchMove)===null||S===void 0||S.call(n,e,t,I)},W=function(I){var S;(S=n.onDayTouchStart)===null||S===void 0||S.call(n,e,t,I)},D=function(I){var S;(S=n.onDayKeyUp)===null||S===void 0||S.call(n,e,t,I)},V=function(I){var S;switch(I.key){case"ArrowLeft":I.preventDefault(),I.stopPropagation(),n.dir==="rtl"?l():c();break;case"ArrowRight":I.preventDefault(),I.stopPropagation(),n.dir==="rtl"?c():l();break;case"ArrowDown":I.preventDefault(),I.stopPropagation(),d();break;case"ArrowUp":I.preventDefault(),I.stopPropagation(),u();break;case"PageUp":I.preventDefault(),I.stopPropagation(),I.shiftKey?f():p();break;case"PageDown":I.preventDefault(),I.stopPropagation(),I.shiftKey?b():g();break;case"Home":I.preventDefault(),I.stopPropagation(),v();break;case"End":I.preventDefault(),I.stopPropagation(),y();break}(S=n.onDayKeyDown)===null||S===void 0||S.call(n,e,t,I)},z={onClick:w,onFocus:j,onBlur:N,onKeyDown:V,onKeyUp:D,onMouseEnter:C,onMouseLeave:k,onPointerEnter:P,onPointerLeave:_,onTouchCancel:T,onTouchEnd:R,onTouchMove:L,onTouchStart:W};return z}function oz(){var e=Ie(),t=e5(),n=yv(),r=wv(),i=jm(e)?t.selected:id(e)?n.selected:ad(e)?r.selected:void 0;return i}function lz(e){return Object.values(rs).includes(e)}function cz(e,t){var n=[e.classNames.day];return Object.keys(t).forEach(function(r){var i=e.modifiersClassNames[r];if(i)n.push(i);else if(lz(r)){var a=e.classNames["day_".concat(r)];a&&n.push(a)}}),n}function dz(e,t){var n=ee({},e.styles.day);return Object.keys(t).forEach(function(r){var i;n=ee(ee({},n),(i=e.modifiersStyles)===null||i===void 0?void 0:i[r])}),n}function uz(e,t,n){var r,i,a,o=Ie(),l=Nv(),c=sz(e,t),d=az(e,c),u=oz(),h=!!(o.onDayCl
828ick||o.mode!=="default");x.useEffect(function(){var C;c.outside||l.focusedDay&&h&&Kt(l.focusedDay,e)&&((C=n.current)===null||C===void 0||C.focus())},[l.focusedDay,e,n,h,c.outside]);var m=cz(o,c).join(" "),p=dz(o,c),g=!!(c.outside&&!o.showOutsideDays||c.hidden),f=(a=(i=o.components)===null||i===void 0?void 0:i.DayContent)!==null&&a!==void 0?a:RB,b=s.jsx(f,{date:e,displayMonth:t,activeModifiers:c}),v={style:p,className:m,children:b,role:"gridcell"},y=l.focusTarget&&Kt(l.focusTarget,e)&&!c.outside,w=l.focusedDay&&Kt(l.focusedDay,e),j=ee(ee(ee({},v),(r={disabled:c.disabled,role:"gridcell"},r["aria-selected"]=c.selected,r.tabIndex=w||y?0:-1,r)),d),N={isButton:h,isHidden:g,activeModifiers:c,selectedDays:u,buttonProps:j,divProps:v};return N}function hz(e){var t=x.useRef(null),n=uz(e.date,e.displayMonth,t);return n.isHidden?s.jsx("div",{role:"gridcell"}):n.isButton?s.jsx(fh,ee({name:"day",ref:t},n.buttonProps)):s.jsx("div",ee({},n.divProps))}function mz(e){var t=e.number,n=e.dates,r=Ie(),i=r.onWeekNumberClick,a=r.styles,o=r.classNames,l=r.locale,c=r.labels.labelWeekNumber,d=r.formatters.formatWeekNumber,u=d(Number(t),{locale:l});if(!i)return s.jsx("span",{className:o.weeknumber,style:a.weeknumber,children:u});var h=c(Number(t),{locale:l}),m=function(p){i(t,n,p)};return s.jsx(fh,{name:"week-number","aria-label":h,className:o.weeknumber,style:a.weeknumber,onClick:m,children:u})}function pz(e){var t,n,r=Ie(),i=r.styles,a=r.classNames,o=r.showWeekNumber,l=r.components,c=(t=l==null?void 0:l.Day)!==null&&t!==void 0?t:hz,d=(n=l==null?void 0:l.WeekNumber)!==null&&n!==void 0?n:mz,u;return o&&(u=s.jsx("td",{className:a.cell,style:i.cell,children:s.jsx(d,{number:e.weekNumber,dates:e.dates})})),s.jsxs("tr",{className:a.row,style:i.row,children:[u,e.dates.map(function(h){return s.jsx("td",{className:a.cell,style:i.cell,role:"presentation",children:s.jsx(c,{displayMonth:e.displayMonth,date:h})},E$(h))})]})}function s1(e,t,n){for(var r=n!=null&&n.ISOWeek?RC(t):fv(t,n),i=n!=null&&n.ISOWeek?ta(e):Rs(e,n),a=js(r,i),o=[],l=0;l<=a;l++)o.push(Mt(i,l));var c=o.reduce(function(d,u){var h=n!=null&&n.ISOWeek?MC(u):IC(u,n),m=d.find(function(p){return p.weekNumber===h});return m?(m.dates.push(u),d):(d.push({weekNumber:h,dates:[u]}),d)},[]);return c}function fz(e,t){var n=s1(Zt(e),pv(e),t);if(t!=null&&t.useFixedWeeks){var r=_$(e,t);if(r<6){var i=n[n.length-1],a=i.dates[i.dates.length-1],o=ng(a,6-r),l=s1(ng(a,1),o,t);n.push.apply(n,l)}}return n}function xz(e){var t,n,r,i=Ie(),a=i.locale,o=i.classNames,l=i.styles,c=i.hideHead,d=i.fixedWeeks,u=i.components,h=i.weekStartsOn,m=i.firstWeekContainsDate,p=i.ISOWeek,g=fz(e.displayMonth,{useFixedWeeks:!!d,ISOWeek:p,locale:a,weekStartsOn:h,firstWeekContainsDate:m}),f=(t=u==null?void 0:u.Head)!==null&&t!==void 0?t:AB,b=(n=u==null?void 0:u.Row)!==null&&n!==void 0?n:pz,v=(r=u==null?void 0:u.Footer)!==null&&r!==void 0?r:EB;return s.jsxs("table",{id:e.id,className:o.table,style:l.table,role:"grid","aria-labelledby":e["aria-labelledby"],children:[!c&&s.jsx(f,{}),s.jsx("tbody",{className:o.tbody,style:l.tbody,children:g.map(function(y){return s.jsx(b,{displayMonth:e.displayMonth,dates:y.dates,weekNumber:y.weekNumber},y.weekNumber)})}),s.jsx(v,{displayMonth:e.displayMonth})]})}function gz(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}var vz=gz()?x.useLayoutEffect:x.useEffect,Bp=!1,yz=0;function r1(){return"react-day-picker-".concat(++yz)}function bz(e){var t,n=e??(Bp?r1():null),r=x.useState(n),i=r[0],a=r[1];return vz(function(){i===null&&a(r1())},[]),x.useEffect(function(){Bp===!1&&(Bp=!0)},[]),(t=e??i)!==null&&t!==void 0?t:void 0}function wz(e){var t,n,r=Ie(),i=r.dir,a=r.classNames,o=r.styles,l=r.components,c=od().displayMonths,d=bz(r.id?"".concat(r.id,"-").concat(e.displayIndex):void 0),u=r.id?"".concat(r.id,"-grid-").concat(e.displayIndex):void 0,h=[a.month],m=o.month,p=e.displayIndex===0,g=e.displayIndex===c.length-1,f=!p&&!g;i==="rtl"&&(t=[p,g],g=t[0],p=t[1]),p&&(h.push(a.caption_start),m=ee(ee({},m),o.caption_start)),g&&(h.push(a.caption_end),m=ee(ee({},m),o.caption_end)),f&&(h.push(a.caption_between),m=ee(ee({},m),o.caption_between));var b=(n=l==null?void 0:l.Caption)!==null&&n!==void 0?n:PB;return s.jsxs("div",{className:h.join(" "),style:m,children:[s.jsx(b,{id:d,displayMonth:e.displayMonth,displayIndex:e.displayIndex}),s.jsx(xz,{id:u,"aria-labelledby":d,displayMonth:e.displayMonth})]},e.displayIndex)}function jz(e){var t=Ie(),n=t.classNames,r=t.styles;return s.jsx("div",{className:n.months,style:r.months,children:e.children})}
vendor: 4,462 bytes, line 828
828function Nz(e){var t,n,r=e.initialProps,i=Ie(),a=Nv(),o=od(),l=x.useState(!1),c=l[0],d=l[1];x.useEffect(function(){i.initialFocus&&a.focusTarget&&(c||(a.focus(a.focusTarget),d(!0)))},[i.initialFocus,c,a.focus,a.focusTarget,a]);var u=[i.classNames.root,i.className];i.numberOfMonths>1&&u.push(i.classNames.multiple_months),i.showWeekNumber&&u.push(i.classNames.with_weeknumber);var h=ee(ee({},i.styles.root),i.style),m=Object.keys(r).filter(function(g){return g.startsWith("data-")}).reduce(function(g,f){var b;return ee(ee({},g),(b={},b[f]=r[f],b))},{}),p=(n=(t=r.components)===null||t===void 0?void 0:t.Months)!==null&&n!==void 0?n:jz;return s.jsx("div",ee({className:u.join(" "),style:h,dir:i.dir,id:i.id,nonce:r.nonce,title:r.title,lang:r.lang},m,{children:s.jsx(p,{children:o.displayMonths.map(function(g,f){return s.jsx(wz,{displayIndex:f,displayMonth:g},f)})})}))}function kz(e){var t=e.children,n=K$(e,["children"]);return s.jsx(mB,{initialProps:n,children:s.jsx(NB,{children:s.jsx(rz,{initialProps:n,children:s.jsx(DB,{initialProps:n,children:s.jsx(IB,{initialProps:n,children:s.jsx(WB,{children:s.jsx(nz,{children:t})})})})})})})}function Sz(e){return s.jsx(kz,ee({},e,{children:s.jsx(Nz,{initialProps:e})}))}function t5({className:e,classNames:t,showOutsideDays:n=!0,...r}){return s.jsx(Sz,{showOutsideDays:n,className:J("p-3",e),classNames:{months:"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"flex justify-center pt-1 relative items-center",caption_label:"text-sm font-medium",nav:"space-x-1 flex items-center",nav_button:J(Bx({variant:"outline"}),"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:"h-9 w-9 text-center text-sm p-0 relative [&:has([aria-selected].day-range-end)]:rounded-r-md [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected])]:bg-accent first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md focus-within:relative focus-within:z-20",day:J(Bx({variant:"ghost"}),"h-9 w-9 p-0 font-normal aria-selected:opacity-100"),day_range_end:"day-range-end",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...t},components:{IconLeft:({...i})=>s.jsx(ax,{className:"h-4 w-4"}),IconRight:({...i})=>s.jsx(eh,{className:"h-4 w-4"})},...r})}t5.displayName="Calendar";var Sv="Popover",[n5,YK]=Vc(Sv,[Wo]),ld=Wo(),[Cz,hi]=n5(Sv),s5=e=>{const{__scopePopover:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!1}=e,l=ld(t),c=x.useRef(null),[d,u]=x.useState(!1),[h=!1,m]=pc({prop:r,defaultProp:i,onChange:a});return s.jsx(mS,{...l,children:s.jsx(Cz,{scope:t,contentId:Bi(),triggerRef:c,open:h,onOpenChange:m,onOpenToggle:x.useCallback(()=>m(p=>!p),[m]),hasCustomAnchor:d,onCustomAnchorAdd:x.useCallback(()=>u(!0),[]),onCustomAnchorRemove:x.useCallback(()=>u(!1),[]),modal:o,children:n})})};s5.displayName=Sv;var r5="PopoverAnchor",Pz=x.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,i=hi(r5,n),a=ld(n),{onCustomAnchorAdd:o,onCustomAnchorRemove:l}=i;return x.useEffect(()=>(o(),()=>l()),[o,l]),s.jsx(nm,{...a,...r,ref:t})});Pz.displayName=r5;var i5="PopoverTrigger",a5=x.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,i=hi(i5,n),a=ld(n),o=Re(t,i.triggerRef),l=s.jsx(ye.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":u5(i.open),...r,ref:o,onClick:se(e.onClick,i.onOpenToggle)});return i.hasCustomAnchor?l:s.jsx(nm,{asChild:!0,...a,children:l})});a5.displayName=i5;var Cv="PopoverPortal",[Ez,Tz]=n5(Cv,{forceMount:void 0}),o5=e=>{const{__scopePopover:t,forceMount:n,children:r,container:i}=e,a=hi(Cv,t);return s.jsx(Ez,{scope:t,forceMount:n,children:s.jsx(ri,{present:n||a.open,children:s.jsx(Wc,{asChild:!0,container:i,children:r})})})};o5.displayName=Cv;var Do="PopoverContent",l5=x.forwardRef((e,t)=>
828{const n=Tz(Do,e.__scopePopover),{forceMount:r=n.forceMount,...i}=e,a=hi(Do,e.__scopePopover);return s.jsx(ri,{present:r||a.open,children:a.modal?s.jsx(_z,{...i,ref:t}):s.jsx(Az,{...i,ref:t})})});l5.displayName=Do;var _z=x.forwardRef((e,t)=>{const n=hi(Do,e.__scopePopover),r=x.useRef(null),i=Re(t,r),a=x.useRef(!1);return x.useEffect(()=>{const o=r.current;if(o)return rv(o)},[]),s.jsx(dm,{as:Gr,allowPinchZoom:!0,children:s.jsx(c5,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:se(e.onCloseAutoFocus,o=>{var l;o.preventDefault(),a.current||(l=n.triggerRef.current)==null||l.focus()}),onPointerDownOutside:se(e.onPointerDownOutside,o=>{const l=o.detail.originalEvent,c=l.button===0&&l.ctrlKey===!0,d=l.button===2||c;a.current=d},{checkForDefaultPrevented:!1}),onFocusOutside:se(e.onFocusOutside,o=>o.preventDefault(),{checkForDefaultPrevented:!1})})})}),Az=x.forwardRef((e,t)=>{const n=hi(Do,e.__scopePopover),r=x.useRef(!1),i=x.useRef(!1);return s.jsx(c5,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{var o,l;(o=e.onCloseAutoFocus)==null||o.call(e,a),a.defaultPrevented||(r.current||(l=n.triggerRef.current)==null||l.focus(),a.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:a=>{var c,d;(c=e.onInteractOutside)==null||c.call(e,a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(i.current=!0));const o=a.target;((d=n.triggerRef.current)==null?void 0:d.contains(o))&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&i.current&&a.preventDefault()}})}),c5=x.forwardRef((e,t)=>{const{__scopePopover:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,disableOutsidePointerEvents:o,onEscapeKeyDown:l,onPointerDownOutside:c,onFocusOutside:d,onInteractOutside:u,...h}=e,m=hi(Do,n),p=ld(n);return sv(),s.jsx(lm,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:s.jsx(Bo,{asChild:!0,disableOutsidePointerEvents:o,onInteractOutside:u,onEscapeKeyDown:l,onPointerDownOutside:c,onFocusOutside:d,onDismiss:()=>m.onOpenChange(!1),children:s.jsx(B0,{"data-state":u5(m.open),role:"dialog",id:m.contentId,...p,...h,ref:t,style:{...h.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),d5="PopoverClose",Rz=x.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,i=hi(d5,n);return s.jsx(ye.button,{type:"button",...r,ref:t,onClick:se(e.onClick,()=>i.onOpenChange(!1))})});Rz.displayName=d5;var Dz="PopoverArrow",Mz=x.forwardRef((e,t)=>{const{__scopePopover:n,...r}=e,i=ld(n);return s.jsx(z0,{...i,...r,ref:t})});Mz.displayName=Dz;function u5(e){return e?"open":"closed"}var Lz=s5,Iz=a5,Oz=o5,h5=l5;const Fz=Lz,$z=Iz,m5=x.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},i)=>s.jsx(Oz,{children:s.jsx(h5,{ref:i,align:t,sideOffset:n,className:J("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...r})}));m5.displayName=h5.displayName;const Bz=({value:e,onChange:t,label:n="Image",className:r})=>{const[i,a]=x.useState(!1),{toast:o}=sr(),l=async d=>{var h;const u=(h=d.target.files)==null?void 0:h[0];if(u){if(!u.type.startsWith("image/")){o({title:"Invalid file type",description:"Please upload an image file",variant:"destructive"});return}if(u.size>50*1024*1024){o({title:"File too large",description:"Please upload an image smaller than 50MB",variant:"destructive"});return}a(!0);try{const m=u.name.split(".").pop(),p=`${Date.now()}-${Math.random().toString(36).substring(2)}.${m}`;console.log("Attempting to upload file:",p);const{data:g,error:f}=await xn.storage.from("blog-images").upload(p,u,{cacheControl:"3600",upsert:!1});if(f)throw console.error("Upload error:",f),f;console.log("Upload successful:",g);const{data:{publicUrl:b}}=xn.storage.from("blog-images").getPublicUrl(g.path);console.log("Public URL:",b),t(b),o({title:"Success",description:"Image uploaded successfully"})}catch(m){console.error("Error uploading image:",m),o({title:"Upload failed",description:m instanceof Error?m.message:"Failed to upload image. Please try again.",variant:"destructive"})}finally{a(!1)}}},c=()=>{t("")};return s.jsxs("div",{className:r,children:[s.jsx(mt,{className:"text-white",children:n}),e?s.jsxs("div",{className:"mt-2 space-y-2",children:[s.jsxs("div",{className:"relative",children:[s.jsx("img",{src:e,alt:"Preview",className:"w-full h-48 object-cover rounded-lg border border-white/20"}),s.jsx(H,{type:"button",variant:"destructive",size:"sm",onClick:c,className:"absolute top-2 right-2",children:s.jsx(Jh,{className:"w-4 h-4"})})]}
828),s.jsx(fn,{value:e,onChange:d=>t(d.target.value),className:"bg-white/10 border-white/20 text-white",placeholder:"Or enter image URL manually"})]}):s.jsxs("div",{className:"mt-2",children:[s.jsxs("label",{className:"flex flex-col items-center justify-center w-full h-48 border-2 border-white/20 border-dashed rounded-lg cursor-pointer bg-white/5 hover:bg-white/10 transition-colors",children:[s.jsxs("div",{className:"flex flex-col items-center justify-center pt-5 pb-6",children:[s.jsx(g_,{className:"w-8 h-8 mb-4 text-white/60"}),s.jsxs("p",{className:"mb-2 text-sm text-white/60",children:[s.jsx("span",{className:"font-semibold",children:"Click to upload"})," or drag and drop"]}),s.jsx("p",{className:"text-xs text-white/40",children:"PNG, JPG, WebP or GIF (MAX. 50MB)"})]}),s.jsx("input",{type:"file",className:"hidden",accept:"image/*",onChange:l,disabled:i})]}),s.jsx("div",{className:"mt-2",children:s.jsx(fn,{value:e,onChange:d=>t(d.target.value),className:"bg-white/10 border-white/20 text-white",placeholder:"Or enter image URL manually"})})]}),i&&s.jsxs("div",{className:"mt-2 flex items-center space-x-2 text-white/60",children:[s.jsx(B_,{className:"w-4 h-4 animate-spin"}),s.jsx("span",{className:"text-sm",children:"Uploading..."})]})]})},zz=({formData:e,setFormData:t})=>{const[n,r]=x.useState(!1),{toast:i}=sr(),a=async()=>{if(!e.title||!e.content){i({title:"Missing Content",description:"Please add a title and content before generating SEO",variant:"destructive"});return}r(!0);try{console.log("Calling generate-seo function with:",{title:e.title,content:e.content.substring(0,100)+"...",excerpt:e.excerpt});const{data:o,error:l}=await xn.functions.invoke("generate-seo",{body:{title:e.title,content:e.content,excerpt:e.excerpt}});if(console.log("Function response:",{data:o,error:l}),l)throw console.error("Supabase function error:",l),l;if(!o||!o.meta_title&&!o.meta_description)throw console.error("Invalid response data:",o),new Error("Invalid response from SEO generation service");t(c=>({...c,meta_title:o.meta_title||c.meta_title,meta_description:o.meta_description||c.meta_description})),i({title:"Success",description:"SEO content generated successfully"})}catch(o){console.error("Error generating SEO:",o),i({title:"Generation Failed",description:o instanceof Error?o.message:"Failed to generate SEO content. Please try again.",variant:"destructive"})}finally{r(!1)}};return s.jsxs("div",{className:"space-y-4 pt-4 border-t border-white/10",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(mt,{className:"text-white",children:"SEO Settings"}),s.jsxs(H,{type:"button",variant:"outline",size:"sm",onClick:a,disabled:n,className:"bg-purple-600/20 border-purple-600/40 text-purple-300 hover:bg-purple-600/30",children:[s.jsx(ke,{className:"w-4 h-4 mr-2"}),n?"Generating...":"Auto Generate"]})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"meta_title",className:"text-white",children:"Meta Title"}),s.jsx(fn,{id:"meta_title",value:e.meta_title,onChange:o=>t(l=>({...l,meta_title:o.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"SEO title (50-60 characters)"}),s.jsxs("div",{className:"text-xs text-white/40 mt-1",children:[e.meta_title.length,"/60 characters"]})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"meta_description",className:"text-white",children:"Meta Description"}),s.jsx(_o,{id:"meta_description",value:e.meta_description,onChange:o=>t(l=>({...l,meta_description:o.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"SEO description (150-160 characters)",rows:3}),s.jsxs("div",{className:"text-xs text-white/40 mt-1",children:[e.meta_description.length,"/160 characters"]})]})]})},Uz=({formData:e,setFormData:t,onSave:n,onStatusChange:r,isLoading:i,isCreating:a})=>{const{data:o}=wm(),l=c=>{const d=c.split(",").map(u=>u.trim()).filter(u=>u);t(u=>({...u,tags:d}))};return s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Post Settings"})}),s.jsxs(_n,{className:"space-y-4",children:[s.jsxs("div",{children:[s.jsx(mt,{className:"text-white",children:"Status"}),s.jsxs(Ul,{value:e.status,onValueChange:r,children:[s.jsx(to,{className:"bg-white/10 border-white/20 text-white",children:s.jsx(Vl,{})}),s.jsxs(no,{children:[s.jsx(at,{value:"draft",children:"Draft"}),s.jsx(at,{value:"published",children:"Published"})]})]})]}),s.jsxs("div",{children:[s.jsx(mt,{className:"text-white",children:"Published Date"}),s.jsxs(Fz,{children:[s.jsx($z,{asChild:!0,children:s.jsxs(H,{variant:"outline",className:J("w-full justify-start text-left font-normal bg-white/10 border-white/20 text-white hover:bg-white/20",!e.published_at&&"text-white/60"),children:[s.jsx(Hh,{className:"mr-2 h-4 w-4"}),e.published_at?Ls(e.published_at,"PPP"):s.jsx("span",{children:"Pick a date"})]})}),s.jsx(m5,{className:"w-auto p-0",align:"start",children:s.jsx(t5,{mode:"single",selected:e.published_at,onSelect:c=>t(d=>({...d,published_at:c})),initialFocus:!0,className:"pointer-events-auto"})})]}),s.jsx("p",{className:"text-xs text-white/40 mt-1",children:"Set the published date. Required for published posts."})]}),s.jsxs("div",{children:[s.jsx(mt,{className:"text-white",children:"Category"}),s.jsxs(Ul,{value:e.category,onValueChange:c=>t(d=>({...d,category:c})),children:[s.jsx(to,{className:"bg-white/10 border-white/20 text-white",children:s.jsx(Vl,{})}),s.jsx(no,{children:o==null?void 0:o.map(c=>s.jsx(at,{value:c.name,children:c.name},c.id))})]})]}),s.jsx(Bz,{value:e.featured_image,onChange:c=>t(d=>({...d,featured_image:c})),label:"Featured Image"}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"tags",className:"text-white",children:"Tags (comma separated)"}),s.jsx(fn,{id:"tags",value:e.tags.join(", "),onChange:c=>l(c.target.value),className:"bg-white/10 border-white/20 text-white",placeholder:"tag1, tag2, tag3"})]}),s.jsx(zz,{formData:e,setFormData:t}),s.jsxs(H,{onClick:n,disabled:i,className:"w-full bg-purple-600 hover:bg-purple-700",children:[s.jsx(Lk,{className:"w-4 h-4 mr-2"}),i?"Saving...":a?"Create Post":"Update Post"]})]})]})},Vz=({blog:e,onClose:t,isCreating:n})=>{const{toast:r}=sr(),[i,a]=x.useState(!1),[o,l]=x.useState({title:"",slug:"",content:"",excerpt:"",featured_image:"",category:"News",status:"draft",meta_title:"",meta_description:"",tags:[],published_at:null});x.useEffect(()=>{e&&!n&&l({title:e.title,slug:e.slug,content:e.content,excerpt:e.excerpt||"",featured_image:e.featured_image||"",category:e.category,status:e.status,meta_title:e.meta_title||"",meta_description:e.meta_description||"",tags:e.tags||[],published_at:e.published_at?new Date(e.published_at):null})},[e,n]);const c=m=>m.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").trim(),d=m=>{l(p=>({...p,title:m,slug:n?c(m):p.slug}))},u=m=>{l(p=>({...p,status:m,published_at:m==="published"&&!p.published_at?new Date:p.published_at}))},h=async()=>
828{if(!o.title.trim()||!o.content.trim()){r({title:"Validation Error",description:"Title and content are required",variant:"destructive"});return}const m=/<\/?[a-z][\s\S]*>/i.test(o.content);if(o.status==="published"&&!m){r({title:"Content Warning",description:"Your content has no HTML formatting (headings, paragraphs, etc.). Articles should use <h2>, <p>, <ul> tags for proper display. Add HTML structure or save as draft.",variant:"destructive"});return}if(o.status==="published"&&!o.published_at){r({title:"Validation Error",description:"Published posts must have a published date",variant:"destructive"});return}a(!0);try{const p={...o,published_at:o.status==="published"&&o.published_at?o.published_at.toISOString():null,updated_at:new Date().toISOString()};if(n){const{error:g}=await xn.from("blogs").insert([p]);if(g)throw g;r({title:"Success",description:"Blog post created successfully"})}else{const{error:g}=await xn.from("blogs").update(p).eq("id",e.id);if(g)throw g;r({title:"Success",description:"Blog post updated successfully"})}t()}catch(p){console.error("Error saving blog:",p),r({title:"Error",description:"Failed to save blog post",variant:"destructive"})}finally{a(!1)}};return s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center mb-6",children:[s.jsxs(H,{variant:"ghost",onClick:t,className:"text-white hover:bg-white/10 mr-4",children:[s.jsx(So,{className:"w-4 h-4 mr-2"}),"Back to Blog Management"]}),s.jsx("h1",{className:"text-3xl font-bold text-white",children:n?"Create New Post":"Edit Post"})]}),s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[s.jsx("div",{className:"lg:col-span-2",children:s.jsx(q$,{formData:o,setFormData:l,onTitleChange:d,isCreating:n})}),s.jsx("div",{children:s.jsx(Uz,{formData:o,setFormData:l,onSave:h,onStatusChange:u,isLoading:i,isCreating:n})})]})]})};var Pv="Dialog",[p5,XK]=Vc(Pv),[Wz,is]=p5(Pv),f5=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,l=x.useRef(null),c=x.useRef(null),[d=!1,u]=pc({prop:r,defaultProp:i,onChange:a});return s.jsx(Wz,{scope:t,triggerRef:l,contentRef:c,contentId:Bi(),titleId:Bi(),descriptionId:Bi(),open:d,onOpenChange:u,onOpenToggle:x.useCallback(()=>u(h=>!h),[u]),modal:o,children:n})};f5.displayName=Pv;var x5="DialogTrigger",Hz=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=is(x5,n),a=Re(t,i.triggerRef);return s.jsx(ye.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":_v(i.open),...r,ref:a,onClick:se(e.onClick,i.onOpenToggle)})});Hz.displayName=x5;var Ev="DialogPortal",[Gz,g5]=p5(Ev,{forceMount:void 0}),v5=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=is(Ev,t);return s.jsx(Gz,{scope:t,forceMount:n,children:x.Children.map(r,o=>s.jsx(ri,{present:n||a.open,children:s.jsx(Wc,{asChild:!0,container:i,children:o})}))})};v5.displayName=Ev;var xh="DialogOverlay",y5=x.forwardRef((e,t)=>{const n=g5(xh,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=is(xh,e.__scopeDialog);return a.modal?s.jsx(ri,{present:r||a.open,children:s.jsx(qz,{...i,ref:t})}):null});y5.displayName=xh;var qz=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=is(xh,n);return s.jsx(dm,{as:Gr,allowPinchZoom:!0,shards:[i.contentRef],children:s.jsx(ye.div,{"data-state":_v(i.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),na="DialogContent",b5=x.forwardRef((e,t)=>{const n=g5(na,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=is(na,e.__scopeDialog);return s.jsx(ri,{present:r||a.open,children:a.modal?s.jsx(Kz,{...i,ref:t}):s.jsx(Qz,{...i,ref:t})})});b5.displayName=na;var Kz=x.forwardRef((e,t)=>{const n=is(na,e.__scopeDialog),r=x.useRef(null),i=Re(t,n.contentRef,r);return x.useEffect(()=>{const a=r.current;if(a)return rv(a)},[]),s.jsx(w5,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:se(e.onCloseAutoFocus,a=>{var o;a.preventDefault(),(o=n.triggerRef.current)==null||o.focus()}),onPointerDownOutside:se(e.onPointerDownOutside,a=>{const o=a.detail.originalEvent,l=o.button===0&&o.ctrlKey===!0;(o.button===2||l)&&a.preventDefault()}),onFocusOutside:se(e.onFocusOutside,a=>a.preventDefault())})}),Qz=x.forwardRef((e,t)=>
vendor: 3,659 bytes, lines 828-832
828{const n=is(na,e.__scopeDialog),r=x.useRef(!1),i=x.useRef(!1);return s.jsx(w5,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{var o,l;(o=e.onCloseAutoFocus)==null||o.call(e,a),a.defaultPrevented||(r.current||(l=n.triggerRef.current)==null||l.focus(),a.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:a=>{var c,d;(c=e.onInteractOutside)==null||c.call(e,a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(i.current=!0));const o=a.target;((d=n.triggerRef.current)==null?void 0:d.contains(o))&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&i.current&&a.preventDefault()}})}),w5=x.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,l=is(na,n),c=x.useRef(null),d=Re(t,c);return sv(),s.jsxs(s.Fragment,{children:[s.jsx(lm,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:s.jsx(Bo,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":_v(l.open),...o,ref:d,onDismiss:()=>l.onOpenChange(!1)})}),s.jsxs(s.Fragment,{children:[s.jsx(Yz,{titleId:l.titleId}),s.jsx(Jz,{contentRef:c,descriptionId:l.descriptionId})]})]})}),Tv="DialogTitle",j5=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=is(Tv,n);return s.jsx(ye.h2,{id:i.titleId,...r,ref:t})});j5.displayName=Tv;var N5="DialogDescription",k5=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=is(N5,n);return s.jsx(ye.p,{id:i.descriptionId,...r,ref:t})});k5.displayName=N5;var S5="DialogClose",C5=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,i=is(S5,n);return s.jsx(ye.button,{type:"button",...r,ref:t,onClick:se(e.onClick,()=>i.onOpenChange(!1))})});C5.displayName=S5;function _v(e){return e?"open":"closed"}var P5="DialogTitleWarning",[JK,E5]=c6(P5,{contentName:na,titleName:Tv,docsSlug:"dialog"}),Yz=({titleId:e})=>{const t=E5(P5),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users. 829 830If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component. 831 832For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return x.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},Xz="DialogDescriptionWarning",Jz=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${E5(Xz).contentName}}.`;return x.useEffect(()=>{var a;const i=(a=e.current)==null?void 0:a.getAttribute("aria-describedby");t&&i&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},Zz=f5,eU=v5,T5=y5,_5=b5,A5=j5,R5=k5,tU=C5;const D5=Zz,nU=eU,M5=x.forwardRef(({className:e,...t},n)=>s.jsx(T5,{ref:n,className:J("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));M5.displayName=T5.displayName;const Av=x.forwardRef(({className:e,children:t,...n},r)=>s.jsxs(nU,{children:[s.jsx(M5,{}),s.jsxs(_5,{ref:r,className:J("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...n,children:[t,s.jsxs(tU,{className:"absolute right-4 top-4 roun
832ded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[s.jsx(Jh,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Av.displayName=_5.displayName;const Rv=({className:e,...t})=>s.jsx("div",{className:J("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});Rv.displayName="DialogHeader";const Dv=({className:e,...t})=>s.jsx("div",{className:J("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});Dv.displayName="DialogFooter";const Mv=x.forwardRef(({className:e,...t},n)=>s.jsx(A5,{ref:n,className:J("text-lg font-semibold leading-none tracking-tight",e),...t}));Mv.displayName=A5.displayName;const Lv=x.forwardRef(({className:e,...t},n)=>s.jsx(R5,{ref:n,className:J("text-sm text-muted-foreground",e),...t}));Lv.displayName=R5.displayName;const sU=({blog:e,onClose:t})=>{const[n,r]=x.useState(!1),{toast:i}=sr(),a=async()=>{r(!0);try{const{error:o}=await xn.from("blogs").delete().eq("id",e.id);if(o)throw o;i({title:"Success",description:"Blog post deleted successfully"}),t()}catch(o){console.error("Error deleting blog:",o),i({title:"Error",description:"Failed to delete blog post",variant:"destructive"})}finally{r(!1)}};return s.jsx(D5,{open:!0,onOpenChange:()=>t(),children:s.jsxs(Av,{className:"bg-black/90 border-white/10",children:[s.jsxs(Rv,{children:[s.jsxs(Mv,{className:"text-white flex items-center",children:[s.jsx(Yh,{className:"w-5 h-5 mr-2 text-red-400"}),"Delete Blog Post"]}),s.jsxs(Lv,{className:"text-white/60",children:['Are you sure you want to delete "',e.title,'"? This action cannot be undone.']})]}),s.jsxs(Dv,{children:[s.jsx(H,{variant:"ghost",onClick:t,className:"text-white hover:bg-white/10",children:"Cancel"}),s.jsx(H,{variant:"destructive",onClick:a,disabled:n,className:"bg-red-600 hover:bg-red-700",children:n?"Deleting...":"Delete"})]})]})})},L5=({title:e,buttonText:t,onButtonClick:n})=>s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h1",{className:"text-3xl font-bold text-white",children:e}),s.jsxs(H,{onClick:n,className:"bg-purple-600 hover:bg-purple-700",children:[s.jsx(T_,{className:"w-4 h-4 mr-2"}),t]})]}),Iv=x.forwardRef(({className:e,...t},n)=>s.jsx("div",{className:"relative w-full overflow-auto",children:s.jsx("table",{ref:n,className:J("w-full caption-bottom text-sm",e),...t})}));Iv.displayName="Table";const Ov=x.forwardRef(({className:e,...t},n)=>s.jsx("thead",{ref:n,className:J("[&_tr]:border-b",e),...t}));Ov.displayName="TableHeader";const Fv=x.forwardRef(({className:e,...t},n)=>s.jsx("tbody",{ref:n,className:J("[&_tr:last-child]:border-0",e),...t}));Fv.displayName="TableBody";const rU=x.forwardRef(({className:e,...t},n)=>s.jsx("tfoot",{ref:n,className:J("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));rU.displayName="TableFooter";const Ec=x.forwardRef(({className:e,...t},n)=>s.jsx("tr",{ref:n,className:J("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));Ec.displayName="TableRow";const bs=x.forwardRef(({className:e,...t},n)=>s.jsx("th",{ref:n,className:J("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),...t}));bs.displayName="TableHead";const ws=x.forwardRef(({className:e,...t},n)=>s.jsx("td",{ref:n,className:J("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));ws.displayName="TableCell";const iU=x.forwardRef(({className:e,...t},n)=>s.jsx("caption",{ref:n,className:J("mt-4 text-sm text-muted-foreground",e),...t}));iU.displayName="TableCaption";const aU=({blogs:e,onEdit:t,onDelete:n})=>s.jsxs(Iv,{children:[s.jsx(Ov,{children:s.jsxs(Ec,{className:"border-white/10",children:[s.jsx(bs,{className:"text-white/80",children:"Title"}),s.jsx(bs,{className:"text-white/80",children:"Category"}),s.jsx(bs,{className:"text-white/80",children:"Status"}),s.jsx(bs,{className:"text-white/80",children:"Published"}),s.jsx(bs,{className:"text-white/80",children:"Actions"})]})}),s.jsx(Fv,{children:e==null?void 0:e.map(r=>s.jsxs(Ec,{className:"border-white/10",children:[s.jsx(ws,{className:"text-white font-medium",children:r.title}),s.jsx(ws,{className:"text-white/60",children:r.category}),s.jsx(ws,{children:s.jsx(Jr,{variant:r.status==="published"?"default":"secondary",className:r.status==="published"?"bg-green-600/20 text-green-300":"bg-yellow-600/20 text-yellow-300",children:r.status})}),s.jsx(ws,{className:"text-white/60",children:r.published_at?new Date(r.published_at).toLocaleDateString():"Not published"}),s.jsx(ws,{children:s.jsxs("div",{className:"flex space-x-2",children:[s.jsx(H,{variant:"ghost",size:"sm",onClick:()=>t(r),className:"text-blue-400 hover:text-blue-300 hover:bg-blue-600/20",children:s.jsx(Ok,{className:"w-4 h-4"})}),s.jsx(H,{variant:"ghost",size:"sm",onClick:()=>n(r),className:"text-red-400 hover:text-red-300 hover:bg-red-600/20",children:s.jsx(Yh,{className:"w-4 h-4"})})]})})]},r.id))})]}),oU=()=>{const{data:e,refetch:t}
832=gv(void 0,void 0,!0),[n,r]=x.useState(null),[i,a]=x.useState(!1),[o,l]=x.useState(!1),[c,d]=x.useState(null),u=f=>{r(f),a(!0)},h=()=>{r(null),l(!0)},m=()=>{a(!1),l(!1),r(null),t()},p=f=>{d(f)},g=()=>{d(null),t()};return i||o?s.jsx(Vz,{blog:n,onClose:m,isCreating:o}):s.jsxs("div",{children:[s.jsx(L5,{title:"Blog Management",buttonText:"New Post",onButtonClick:h}),s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"All Blog Posts"})}),s.jsx(_n,{children:s.jsx(aU,{blogs:e,onEdit:u,onDelete:p})})]}),c&&s.jsx(sU,{blog:c,onClose:g})]})},lU=({category:e,onClose:t,isCreating:n})=>{const{toast:r}=sr(),[i,a]=x.useState(!1),[o,l]=x.useState({name:"",slug:"",description:""});x.useEffect(()=>{e&&!n&&l({name:e.name,slug:e.slug,description:e.description||""})},[e,n]);const c=h=>h.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-").trim(),d=h=>{l(m=>({...m,name:h,slug:n?c(h):m.slug}))},u=async()=>{if(!o.name.trim()){r({title:"Validation Error",description:"Category name is required",variant:"destructive"});return}a(!0);try{if(n){const{error:h}=await xn.from("blog_categories").insert([o]);if(h)throw h;r({title:"Success",description:"Category created successfully"})}else{const{error:h}=await xn.from("blog_categories").update(o).eq("id",e.id);if(h)throw h;r({title:"Success",description:"Category updated successfully"})}t()}catch(h){console.error("Error saving category:",h),r({title:"Error",description:"Failed to save category",variant:"destructive"})}finally{a(!1)}};return s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center mb-6",children:[s.jsxs(H,{variant:"ghost",onClick:t,className:"text-white hover:bg-white/10 mr-4",children:[s.jsx(So,{className:"w-4 h-4 mr-2"}),"Back to Categories"]}),s.jsx("h1",{className:"text-3xl font-bold text-white",children:n?"Create New Category":"Edit Category"})]}),s.jsxs(Tn,{className:"bg-black/40 border-white/10 max-w-2xl",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Category Details"})}),s.jsxs(_n,{className:"space-y-4",children:[s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"name",className:"text-white",children:"Name"}),s.jsx(fn,{id:"name",value:o.name,onChange:h=>d(h.target.value),className:"bg-white/10 border-white/20 text-white",placeholder:"Enter category name"})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"slug",className:"text-white",children:"Slug"}),s.jsx(fn,{id:"slug",value:o.slug,onChange:h=>l(m=>({...m,slug:h.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"category-slug"})]}),s.jsxs("div",{children:[s.jsx(mt,{htmlFor:"description",className:"text-white",children:"Description"}),s.jsx(_o,{id:"description",value:o.description,onChange:h=>l(m=>({...m,description:h.target.value})),className:"bg-white/10 border-white/20 text-white",placeholder:"Category description",rows:4})]}),s.jsxs(H,{onClick:u,disabled:i,className:"w-full bg-purple-600 hover:bg-purple-700",children:[s.jsx(Lk,{className:"w-4 h-4 mr-2"}),i?"Saving...":n?"Create Category":"Update Category"]})]})]})]})},cU=({category:e,onClose:t})=>{const[n,r]=x.useState(!1),{toast:i}=sr(),a=async()=>{r(!0);try{const{error:o}=await xn.from("blog_categories").delete().eq("id",e.id);if(o)throw o;i({title:"Success",description:"Category deleted successfully"}),t()}catch(o){console.error("Error deleting category:",o),i({title:"Error",description:"Failed to delete category",variant:"destructive"})}finally{r(!1)}};return s.jsx(D5,{open:!0,onOpenChange:()=>t(),children:s.jsxs(Av,{className:"bg-black/90 border-white/10",children:[s.jsxs(Rv,{children:[s.jsxs(Mv,{className:"text-white flex items-center",children:[s.jsx(Yh,{className:"w-5 h-5 mr-2 text-red-400"}),"Delete Category"]}),s.jsxs(Lv,{className:"text-white/60",children:['Are you sure you want to delete the category "',e.name,'"? This action cannot be undone.']})]}),s.jsxs(Dv,{children:[s.jsx(H,{variant:"ghost",onClick:t,className:"text-white hover:bg-white/10",children:"Cancel"}),s.jsx(H,{variant:"destructive",onClick:a,disabled:n,className:"bg-red-600 hover:bg-red-700",children:n?"Deleting...":"Delete"})]})]})})},dU=({categories:e,onEdit:t,onDelete:n})=>s.jsxs(Iv,{children:[s.jsx(Ov,{children:s.jsxs(Ec,{className:"border-white/10",children:[s.jsx(bs,{className:"text-white/80",children:"Name"}),s.jsx(bs,{className:"text-white/80",children:"Slug"}),s.jsx(bs,{className:"text-white/80",children:"Description"}),s.jsx(bs,{className:"text-white/80",children:"Actions"})]})}),s.jsx(Fv,{children:e==null?void 0:e.map(r=>s.jsxs(Ec,{className:"border-white/10",children:[s.jsx(ws,{className:"text-white font-medium",children:r.name}),s.jsx(ws,{className:"text-white/60",children:r.slug}),s.jsx(ws,{className:"text-white/60",children:r.description||"No description"}),s.jsx(ws,{children:s.jsxs("div",{className:"flex space-x-2",children:[s.jsx(H,{variant:"ghost",size:"sm",onClick:()=>t(r),className:"text-blue-400 hover:text-blue-300 hover:bg-blue-600/20",children:s.jsx(Ok,{className:"w-4 h-4"})}),s.jsx(H,{variant:"ghost",size:"sm",onClick:()=>n(r),className:"text-red-400 hover:text-red-300 hover:bg-red-600/20",children:s.jsx(Yh,{className:"w-4 h-4"})})]})})]},r.id))})]}),uU=()=>{const{data:e,refetch:t}
832=wm(),[n,r]=x.useState(null),[i,a]=x.useState(!1),[o,l]=x.useState(!1),[c,d]=x.useState(null),u=f=>{r(f),a(!0)},h=()=>{r(null),l(!0)},m=()=>{a(!1),l(!1),r(null),t()},p=f=>{d(f)},g=()=>{d(null),t()};return i||o?s.jsx(lU,{category:n,onClose:m,isCreating:o}):s.jsxs("div",{children:[s.jsx(L5,{title:"Category Management",buttonText:"New Category",onButtonClick:h}),s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"All Categories"})}),s.jsx(_n,{children:s.jsx(dU,{categories:e,onEdit:u,onDelete:p})})]}),c&&s.jsx(cU,{category:c,onClose:g})]})},hU=()=>s.jsxs("div",{children:[s.jsx("h1",{className:"text-3xl font-bold text-white mb-6",children:"Admin Users Management"}),s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Current Admin Users"})}),s.jsxs(_n,{children:[s.jsx("div",{className:"space-y-4",children:s.jsxs("div",{className:"flex items-center justify-between p-4 bg-white/5 rounded-lg",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-medium",children:"admin"}),s.jsx("p",{className:"text-white/60 text-sm",children:"[email protected]"})]}),s.jsx(Jr,{className:"bg-purple-600/20 text-purple-300",children:"Admin"})]})}),s.jsx("div",{className:"mt-6 p-4 bg-yellow-600/10 border border-yellow-600/20 rounded-lg",children:s.jsxs("p",{className:"text-yellow-300 text-sm",children:[s.jsx("strong",{children:"Note:"})," User management functionality is currently simplified. In a production environment, you would implement full user creation, editing, and role management capabilities here."]})})]})]})]}),mU=()=>{const{data:e}=gv(),{data:t}=wm(),n=[{title:"Total Blog Posts",value:(e==null?void 0:e.length)||0,icon:Co,color:"text-blue-400"},{title:"Published Posts",value:(e==null?void 0:e.filter(r=>r.status==="published").length)||0,icon:Zs,color:"text-green-400"},{title:"Categories",value:(t==null?void 0:t.length)||0,icon:Ek,color:"text-purple-400"},{title:"Admin Users",value:1,icon:dt,color:"text-orange-400"}];return s.jsxs("div",{children:[s.jsx("h1",{className:"text-3xl font-bold text-white mb-8",children:"Dashboard"}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8",children:n.map(r=>s.jsx(Tn,{className:"bg-black/40 border-white/10",children:s.jsx(_n,{className:"p-6",children:s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white/60 text-sm",children:r.title}),s.jsx("p",{className:"text-2xl font-bold text-white",children:r.value})]}),s.jsx(r.icon,{className:`w-8 h-8 ${r.color}`})]})})},r.title))}),s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Recent Blog Posts"})}),s.jsx(_n,{children:s.jsx("div",{className:"space-y-4",children:e==null?void 0:e.slice(0,5).map(r=>s.jsxs("div",{className:"flex items-center justify-between p-3 bg-white/5 rounded-lg",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-medium truncate",children:r.title}),s.jsx("p",{className:"text-white/60 text-sm",children:r.category})]}),s.jsx("span",{className:`px-2 py-1 rounded-full text-xs ${r.status==="published"?"bg-green-600/20 text-green-300":"bg-yellow-600/20 text-yellow-300"}`,children:r.status})]},r.id))})})]}),s.jsxs(Tn,{className:"bg-black/40 border-white/10",children:[s.jsx(_s,{children:s.jsx(As,{className:"text-white",children:"Categories"})}),s.jsx(_n,{children:s.jsx("div",{className:"space-y-4",children:t==null?void 0:t.map(r=>s.jsxs("div",{className:"flex items-center justify-between p-3 bg-white/5 rounded-lg",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-medium",children:r.name}),s.jsx("p",{className:"text-white/60 text-sm",children:r.description})]}),s.jsxs("span",{className:"text-white/60 text-sm",children:[(e==null?void 0:e.filter(i=>i.category===r.name).length)||0," posts"]})]},r.id))})})]})]})]})},i1=()=>{const{section:e}=zS();return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Admin | SmartLinks",noindex:!0}),s.jsxs(G$,{children:[!e&&s.jsx(mU,{}),e==="blogs"&&s.jsx(oU,{}),e==="categories"&&s.jsx(uU,{}),e==="users"&&s.jsx(hU,{})]})]})},pU=()=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(Se,{title:"Transformulas Case Study - SmartLinks",description:"How Transformulas uses SmartLinks GS1 Digital Link QR codes to enhance customer engagement, drive competition entries, and grow their membership club.",keywords:"Transformulas, case study, QR codes, cosmetics, customer engagement, GS1 Digital Link, SmartLinks",canonical:"https://smartlinks-public-site.lovable.app/transformulas",type:"article",structuredData:{"@context":"https://schema.org","@type":"Article",headline:"Transformulas Case Study",description:"How Transformulas enhanced customer engagement with SmartLinks GS1 Digital Link QR codes",url:"https://smartlinks-public-site.lovable.app/transformulas",publisher:{"@type":"Organization",name:"SmartLinks"},articleSection:"Case Studies"}}),s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
832acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-purple-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-purple-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-purple-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx("section",{className:"pt-20 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-cyan-400 text-sm font-medium mb-4 uppercase tracking-wider",children:"CASE STUDY"}),s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"TRANSFORMULAS"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Transformulas, a leading cosmetics brand is using Prove Anything's Smartlinks platform to add GS1 digital link QR codes on their packaging."}),s.jsx("p",{className:"text-white/80 text-lg mb-8 leading-relaxed",children:"This innovative solution not only streamlined their product information but also enhanced customer engagement through competitions & membership club sign-ups."}),s.jsx(H,{className:"bg-cyan-400 hover:bg-cyan-500 text-black px-8 py-3 rounded-lg font-semibold",children:"Learn More"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{alt:"Transformulas MIRACLE product with SmartLinks mobile app interface showing top tips, win a 12 month subscription, and watch videos",className:"w-full h-auto max-w-md rounded-lg",src:"/lovable-uploads/4ead3f6f-508a-4c11-bf65-e1d8c0e4c1c8.webp"})})})]})})}),s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"About"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Renowned for its innovative, non-surgical beauty solutions with a focus on high-performance, clinically-proven products, Transformulas has earned a reputation for delivering effective, surgery-free beauty treatments, solidifying its status as a trusted leader in the skincare industry."})]}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"The Challenge"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Transformulas wanted to enhance their customer engagement strategy and provide a seamless way for customers to access product information. Additionally, they aimed to increase their database of email addresses for targeted marketing through competitions and a membership club."})]})]})})}),s.jsx("section",{className:"py-16 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"The Solution"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"We implemented GS1 digital links through QR codes on Transformulas' product packaging. These QR codes enabled customers to instantly access detailed product information by simply scanning the code."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Additionally, the QR codes were integrated with digital platforms to collect email addresses for competitions and membership club registrations."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"The implementation was carried out in phases: with the most popular product going live on packaging first."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"Designing and generating GS1 digital link QR codes was made easy with the smartlinks platform, configuring a welcome page video and message from Transformulas foun
832der, Rosi Chapman and a sign up campaign to capture email addresses with the promise of exclusive deals and competitions."}),s.jsx(H,{className:"bg-cyan-400 hover:bg-cyan-500 text-black px-8 py-3 rounded-lg font-semibold",children:"Book a Demo"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{alt:"Transformulas Marine Miracle Crème product package showing the green spherical container with product information",src:"/lovable-uploads/ba0047cc-5a88-4a56-8c4e-50c36521370f.webp",className:"w-full h-auto max-w-md rounded-lg shadow-2xl"})})})]})})}),s.jsx("section",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-12 text-center",children:"The Results"}),s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{alt:"Transformulas MIRACLE product with SmartLinks mobile app interface showing top tips, win a 12 month subscription, and watch videos",src:"/lovable-uploads/2a7ea48d-c79e-49a2-bad3-d86eade84681.webp",className:"w-full h-auto max-w-md rounded-lg shadow-2xl"})})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"The implementation of SmartLinks' dynamic QR code solution has yielded significant benefits for Transformulas."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Since going live with the new packaging, Transformulas has seen an uptick in customer engagement, with a significant increase in competition entries and membership registrations. The QR codes have also enhanced the customer experience by providing instant access to product details."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"By implementing SmartLinks, Transformulas successfully enhanced its customer engagement strategy, leveraging cutting-edge technology to drive brand loyalty and business growth. If you're looking to enhance your customer engagement and streamline product information delivery, contact us today to learn how we
832can help you achieve similar success."})]})]})]})}),s.jsx("section",{className:"py-16 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"GS1 UK Approved"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"By partnering with us, Transformulas benefits from certified GS1 UK compliance, ensuring they meet all regulatory requirements whilst providing enhanced customer experiences through standardised global identification and data sharing protocols."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"This certification guarantees that all product information and digital experiences are delivered through trusted, industry-standard frameworks and enhanced customer engagement levels."})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{src:"/lovable-uploads/09a1cc70-ac9c-4e41-a3a7-6df8c59877ad.webp",alt:"GS1 UK Approved certification badge",className:"w-full h-auto max-w-md"})})})]})})}),s.jsx(ui,{}),s.jsx(it,{})]})]}),fU=()=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(Se,{title:"Vinca Wines Case Study - SmartLinks",description:"How Vinca Wines navigates complex EU wine regulations with SmartLinks dynamic QR codes powered by GS1 Digital Links, enabling geo-targeted content delivery.",keywords:"Vinca Wines, case study, EU wine regulations, QR codes, GS1 Digital Link, geo-targeting, SmartLinks",canonical:"https://smartlinks-public-site.lovable.app/vinca-wines",type:"article",structuredData:{"@context":"https://schema.org","@type":"Article",headline:"Vinca Wines Case Study",description:"How Vinca Wines navigates EU wine regulations with SmartLinks dynamic QR code solutions",url:"https://smartlinks-public-site.lovable.app/vinca-wines",publisher:{"@type":"Organization",name:"SmartLinks"},articleSection:"Case Studies"}}),s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-pink-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-pink-600 rounded-full blur-3xl op
832acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-pink-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-pink-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-pink-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-pink-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-pink-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-pink-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsx("section",{className:"pt-20 py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-cyan-400 text-sm font-medium mb-4 uppercase tracking-wider",children:"CASE STUDY"}),s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"VINCA WINES"}),s.jsx("p",{className:"text-white/80 text-lg mb-6 leading-relaxed",children:"Proof Anything exclusive Wine Vinca navigates complex EU wine regulations using an innovative QR code solution, powered by GS1 Digital Links and providing customer engagement and compliance."}),s.jsx(H,{className:"bg-cyan-400 hover:bg-cyan-500 text-black px-8 py-3 rounded-lg font-semibold",children:"Learn More"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{src:"/lovable-uploads/bbc79a9a-39e2-447f-8c51-f8b159f6d45f.webp",alt:"Vinca wine can with organic wine branding in pink aesthetic",className:"w-full h-auto max-w-md rounded-lg shadow-2xl"})})})]})})}),s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"About"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Vinca Wines is an innovative wine producer specialising in premium wines packaged in eco-friendly cans. With a mission to make quality wine more accessible and sustainable, Vinca Wines has quickly gained popularity for its commitment to sustainability and its fresh approach to wine packaging."})]}),s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"The Challenge"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"The brand was facing regulatory challenges when trying to engage consumers via QR codes on their packaging within the EU. These regulations prohibit QR codes on wine packaging that show marketing and customer engagement content. This is an opportunity lost for Vinca to communicate directly with their customers whilst interacting with their product."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"To navigate this, Vinca Wines partnered with SmartLinks to implement a dynamic QR code solution that complies with EU laws whilst maximising customer engagement. This case study explores how our innovative QR codes enabled Vinca Wines to seamlessly tailor their content based on user location, ensuring legal compliance and enhanced user experience."})]})]})})}),s.jsx("section",{className:"py-16 px-6 bg-transparent",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"The Solution"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"To address this challenge, Smartlinks developed a sophisticated solution that allows Vinca Wines to comply with EU regulations whilst still offering dynamic QR code functionality globally. The solution involved the use of GS1 Digital Links, which allowed Vinca Wines to manage their product information in a standardised way, ensuring both legal compliance and future-proofing their data structure."}),s.jsxs("div",{className:"space-y-4 mb-8",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-cyan-400 rounded-full mt-2 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-1",children:"IP-Based Filtering"}),s.jsx("p",{className:"text-white/70 text-sm",children:"When a customer scans a QR code on a Vinca Wines can, our system checks the user's IP address to determine their geographic location."})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-cyan-400 rounded-full mt-2 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-1",children:"Dynamic Content Delivery"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Based on the location of the user, the QR code directs them to different c
832ontent. For users within the EU, the QR code leads to legally compliant content without any marketing or engagement features. For users outside the EU, the QR code directs them to a more interactive experience, including promotional offers, competitions, and brand information."})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-2 h-2 bg-cyan-400 rounded-full mt-2 flex-shrink-0"}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold mb-1",children:"GS1 Digital Links QR codes"}),s.jsx("p",{className:"text-white/70 text-sm",children:"By utilising GS1 Digital Links, Vinca Wines ensures that each QR code adheres to international standards for product information, enhancing both compliance and user experience. This framework ensures that their digital content stays scalable and adaptable as regulations evolve."})]})]})]}),s.jsx(H,{className:"bg-cyan-400 hover:bg-cyan-500 text-black px-8 py-3 rounded-lg font-semibold",children:"Book a Demo"})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{src:"/lovable-uploads/8b52e845-c7a9-4c84-9b41-aff937458018.webp",alt:"Vinca wine cans in different varieties displayed on white platforms",className:"w-full h-auto max-w-md rounded-lg shadow-2xl"})})})]})})}),s.jsx("section",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-12 text-center",children:"The Results"}),s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{alt:"Vinca wine cans with awards showing three different varieties",className:"w-full h-auto max-w-md rounded-lg shadow-2xl",src:"/lovable-uploads/479a4ee4-8a0e-4624-be44-c923190ae4a5.webp"})})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"The implementation of SmartLinks' dynamic QR code solution has yielded significant benefits for Vinca Wines"}),s.jsxs("div",{className:"space-y-6 mb-8",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-semibold text-white mb-2",children:"Legal Compliance:"}),s.jsx("p",{className:"text-white/80",children:"Vinca Wines is now fully compliant with EU regulations whilst still utilising QR codes on their packaging."})]}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-semibold text-white mb-2",children:"Enhanced Customer Engagement:"}),s.jsx("p",{className:"text-white/80",children:"Outside the EU, customers engage with rich, interactive content, driving brand loyalty and increasing participation in promotional activities."})]}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-semibold text-white mb-2",children:"Global Flexibility:"}),s.jsx("p",{className:"text-white/80",children:"SmartLinks conditions engine ensures that Vinca Wines can deliver the appropriate content to users no matter where they are, without the need for multiple packaging versions."})]})]}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"By partnering with SmartLinks, Vinca Wines successfully overcame the regulatory challenges of the EU market whilst still leveraging the power of QR codes to connect with customers around the world."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:"This case study highlights how innovative technology can be used to navigate complex regulations and enhance customer engagement in a global marketplace."})]})]})]})}),s.jsx("section",{className:"py-16 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-6",children:"GS1 UK Approved"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"By partnering with us, Vinca Wines benefits from certified GS1 UK compliance, ensuring they meet all regulatory requirements whilst providing enhanced customer experiences through standardised global identification and data sharing protocols."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-8",children:"This certification guarantees that all product information and digital experiences are delivered through trusted, industry-standard frameworks and enhanced customer engagement levels."})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"relative",children:s.jsx("img",{src:"/lovable-uploads/09a1cc70-ac9c-4e41-a3a7-6df8c59877ad.webp",alt:"GS1 UK Approved certification badge",className:"w-full h-auto max-w-md"})})})]})})}),s.jsx(ui,{}),s.jsx(it,{})]})]}),xU=()=>s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-slate-50 via-slate-100 to-slate-200",children:[s.jsxs("div",{className:"absolute inset-0 opacity-30",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-green-200/20 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-blue-200/15 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute bottom-40 left-1/3 w-72 h-72 bg-emerald-200/25 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute bottom-20 right-10 w-64 h-64 bg-teal-200/20 rounded-full blur-3xl"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-white/5 via-trans
832parent to-slate-100/10"})]}),gU=()=>s.jsx("section",{className:"relative overflow-hidden bg-transparent pt-32 pb-12 lg:pt-36 lg:pb-16",children:s.jsx("div",{className:"container relative z-10 mx-auto px-4",children:s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8 items-center",children:[s.jsxs("div",{className:"lg:col-span-2 lg:hidden",children:[s.jsx("div",{className:"text-center mb-4",children:s.jsx("span",{className:"text-sm font-medium text-slate-600 uppercase tracking-wider",children:"About"})}),s.jsx("h1",{className:"text-4xl lg:text-6xl font-bold text-slate-900 leading-tight mb-8 text-center lg:text-left",children:"Connected for Impact: Earth Positive & SmartLinks"}),s.jsx("p",{className:"text-lg text-slate-600 text-center lg:text-left mb-8",children:"Leaders in Sustainable Interactive Apparel since 2024"})]}),s.jsxs("div",{className:"relative order-1 lg:order-1",children:[s.jsx("div",{className:"aspect-[4/3] bg-white rounded-xl shadow-lg flex items-center justify-center overflow-hidden border border-slate-200",children:s.jsx("img",{src:"/lovable-uploads/641c4083-f368-433c-9fad-fdbd9e4f00ec.webp",alt:"Earth Positive hoodie with SmartLinks technology interface",className:"w-full h-full object-contain p-1"})}),s.jsx("div",{className:"absolute -top-4 -right-4 w-12 h-12 bg-green-500/10 rounded-full flex items-center justify-center border border-green-200",children:s.jsx(Ft,{className:"w-6 h-6 text-green-600"})}),s.jsx("div",{className:"absolute -bottom-4 -left-4 w-12 h-12 bg-blue-500/10 rounded-full flex items-center justify-center border border-blue-200",children:s.jsx(dt,{className:"w-6 h-6 text-blue-600"})})]}),s.jsxs("div",{className:"space-y-6 order-2 lg:order-2",children:[s.jsxs("div",{className:"hidden lg:block",children:[s.jsx("div",{className:"mb-4"}),s.jsx("h1",{className:"text-4xl lg:text-5xl font-bold text-slate-900 leading-tight mb-4",children:"Merch as a Gateway: Earth Positive & SmartLinks"}),s.jsx("p",{className:"text-lg text-slate-600 mb-6",children:"Leaders in Sustainable Interactive Apparel since 2024"})]}),s.jsx("p",{className:"text-lg text-slate-700 leading-relaxed",children:"Combining Earth Positive's 17 years of sustainable fashion expertise with SmartLinks' cutting-edge NFC technology to create the world's first truly interactive, eco-conscious merchandise."}),s.jsx("p",{className:"text-lg text-slate-700 leading-relaxed",children:"Every piece transforms into a digital gateway, connecting fans to exclusive content while maintaining our commitment to environmental responsibility."}),s.jsx(H,{size:"lg",className:"bg-slate-900 hover:bg-slate-800 text-white text-base px-8 py-3 rounded-md",onClick:()=>{const e=document.getElementById("earth-positive-about");e&&e.scrollIntoView({behavior:"smooth"})},children:"Discover Earth Positive"})]})]})})}),vU=()=>s.jsx("style",{children:` 833 @keyframes gateway-shimmer { 834 0% { background-position: -200% 0; } 835 100% { background-position: 200% 0; } 836 } 837 838 @keyframes icon-pulse { 839 0% { color: #ec4899; } /* pink */ 840 33% { color: #3b82f6; } /* blue */ 841 66% { color: #8b5cf6; } /* violet */ 842 100% { color: #ec4899; } /* back to pink */ 843 } 844 845 @keyframes rainbow-ripple { 846 0% { 847 color: #22c55e; /* green */ 848 filter: drop-shadow(0 0 8px rgba(34, 197, 94, 0.5)); 849 transform: scale(1); 850 } 851 33% { 852 color: #3b82f6; /* blue */ 853 filter: drop-shadow(0 0 8px rgba(59, 130, 246, 0.5)); 854 transform: scale(1.05); 855 } 856 66% { 857 color: #ec4899; /* pink */ 858 filter: drop-shadow(0 0 8px rgba(236, 72, 153, 0.5)); 859 transform: scale(1.08); 860 } 861 100% { 862 color: #22c55e; /* back to green */ 863 filter: drop-shadow(0 0 8px rgba(34, 197, 94, 0.5)); 864 transform: scale(1); 865 } 866 } 867 868 .rainbow-icon { 869 animation: rainbow-ripple 6s ease-in-out infinite; 870 } 871 872 .rainbow-icon:nth-child(1) { animation-delay: 0s; } 873 .rainbow-icon:nth-child(2) { animation-delay: 0.5s; } 874 .rainbow-icon:nth-child(3) { animation-delay: 1s; } 875 .rainbow-icon:nth-child(4) { animation-delay: 1.5s; } 876 877 @keyframes nfc-ripple-small {
878 0% { 879 opacity: 0.8; 880 transform: scale(0.1); 881 border-color: rgba(59, 130, 246, 0.8); 882 box-shadow: 0 0 20px rgba(59, 130, 246, 0.4), 0 0 30px rgba(139, 92, 246, 0.2); 883 } 884 50% { 885 opacity: 0.5; 886 transform: scale(1); 887 border-color: rgba(139, 92, 246, 0.6); 888 box-shadow: 0 0 40px rgba(139, 92, 246, 0.3), 0 0 50px rgba(16, 185, 129, 0.2); 889 } 890 100% { 891 opacity: 0; 892 transform: scale(2); 893 border-color: rgba(16, 185, 129, 0.2); 894 box-shadow: 0 0 60px rgba(16, 185, 129, 0.1), 0 0 80px rgba(236, 72, 153, 0.1); 895 } 896 } 897 898 @keyframes nfc-ripple-medium { 899 0% { 900 opacity: 0.6; 901 transform: scale(0.2); 902 border-color: rgba(139, 92, 246, 0.7); 903 box-shadow: 0 0 30px rgba(139, 92, 246, 0.4), 0 0 45px rgba(16, 185, 129, 0.2); 904 } 905 50% { 906 opacity: 0.4; 907 transform: scale(1.5); 908 border-color: rgba(59, 130, 246, 0.5); 909 box-shadow: 0 0 50px rgba(59, 130, 246, 0.3), 0 0 70px rgba(236, 72, 153, 0.2); 910 } 911 100% { 912 opacity: 0; 913 transform: scale(3); 914 border-color: rgba(16, 185, 129, 0.1); 915 box-shadow: 0 0 80px rgba(16, 185, 129, 0.1), 0 0 100px rgba(139, 92, 246, 0.1); 916 } 917 } 918 919 @keyframes nfc-ripple-large { 920 0% { 921 opacity: 0.4; 922 transform: scale(0.3); 923 border-color: rgba(16, 185, 129, 0.6); 924 box-shadow: 0 0 40px rgba(16, 185, 129, 0.3), 0 0 60px rgba(236, 72, 153, 0.2); 925 } 926 50% { 927 opacity: 0.3; 928 transform: scale(2); 929 border-color: rgba(139, 92, 246, 0.4); 930 box-shadow: 0 0 60px rgba(139, 92, 246, 0.2), 0 0 90px rgba(59, 130, 246, 0.2); 931 } 932 100% { 933 opacity: 0; 934 transform: scale(4); 935 border-color: rgba(59, 130, 246, 0.1); 936 box-shadow: 0 0 100px rgba(59, 130, 246, 0.05), 0 0 120px rgba(16, 185, 129, 0.05); 937 } 938 } 939 940 @keyframes nfc-pulse-center { 941 0%, 100% { 942 opacity: 0.3; 943 transform: scale(1); 944 background: radial-gradient(circle, rgba(59, 130, 246, 0.3), rgba(139, 92, 246, 0.2), transparent); 945 } 946 50% { 947 opacity: 0.6; 948 transform: scale(1.2); 949 background: radial-gradient(circle, rgba(139, 92, 246, 0.4), rgba(16, 185, 129, 0.3), transparent); 950 } 951 } 952 `}),yU=()=>{const e=[{icon:s.jsx(Ft,{className:"w-8 h-8 rainbow-icon"}),title:"Tap to Connect",description:"Simply tap your smartphone to the NFC-enabled garment to instantly connect."},{icon:s.jsx(dt,{className:"w-8 h-8 rainbow-icon"}),title:"Exclusive Content",description:"Access behind-the-scenes content, exclusive music, and artist interactions."},{icon:s.jsx(Fk,{className:"w-8 h-8 rainbow-icon"}),title:"Fan Experiences",description:"Unlock VIP experiences, competitions, and personalised fan content."},{icon:s.jsx(ii,{className:"w-8 h-8 rainbow-icon"}),title:"Real-Time Updates",description:"Get instant notifications about tours, releases, and special events."}];return s.jsxs(s.Fragment,{children:[s.jsx(vU,{}),s.jsxs("section",{id:"how-it-works",className:"py-20 bg-white relative overflow-hidden",children:[s.jsxs("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[s.jsxs("div",{className:"absolute inset-0 opacity-40",children:[s.jsx("div",{className:"absolute w-40 h-40 rounded-full top-1/4 left-1/4",style:{animation:"nfc-pulse-center 4s ease-in-out infinite"}}),s.jsx("div",{className:"absolute w-32 h-32 rounded-full top-3/4 right-1/3",style:{animation:"nfc-pulse-center 5s ease-in-out infinite",animationDelay:"2s"}})]}),s.jsx("div",{className:"absolute inset-0 opacity-70",children:Array.from({length:8},(t,n)=>s.jsx("div",{className:"absolute border-2 rounded-full",style:{width:`${Math.random()*60+40}px`,height:`${Math.random()*60+40}px`,left:`${Math.random()*100}%`,top:`${Math.random()*100}%`,animation:`nfc-ripple-small ${Math.random()*3+2}s ease-out infinite`,animationDelay:`${Math.random()*2}s`}},`small-ripple-${n}`))}),s.jsx("div",{className:"absolute inset-0 opacity-50",children:Array.from({length:5},(t,n)=>s.jsx("div",{className:"absolute border-2 rounded-full",style:{width:`${Math.random()*100+80}px`,height:`${Math.random()*100+80}px`,left:`${Math.random()*100}%`,top:`${Math.random()*100}%`,animation:`nfc-ripple-medium ${Math.random()*4+3}s ease-out infinite`,animationDelay:`${Math.random()*3}s`}},`medium-ripple-${n}`))}),s.jsx("div",{className:"absolute inset-0 opacity-30",children:Array.from({length:3},(t,n)=>s.jsx("div",{className:"absolute border-2 rounded-full",style:{width:`${Math.random()*150+120}px`,height:`${Math.random()*150+120}px`,left:`${Math.random()*100}%`,top:`${Math.random()*100}%`,animation:`nfc-ripple-large ${Math.random()*5+4}s ease-out infinite`,animationDelay:`${Math.random()*4}s`}},`large-ripple-${n}`))})]}),s.jsxs("div",{className:"container mx-auto px-6 relative z-10",children:[s.jsxs("div",{className:"text-center space-y-6 mb-16",children:[s.jsx("h2",{className:"text-3xl lg:text-4xl font-bold text-slate-900",children:"How Our Technology Works"}),s.jsx("p",{className:"text-lg text-slate-600 max-w-3xl mx-auto leading-relaxed",children:"Each Earth Positive garment features embedded NFC technology that turns it into a powerful communication device, enabling you to share your brand's story and values directly with your audience."})]}),s.jsx("div",{className:"mb-12 relative",children:s.jsx("div",{className:"flex justify-center",children:s.jsx("img",{src:"/lovable-uploads/553307b9-7425-4912-b294-f091ec01f16d.webp",alt:"How SmartLinks NFC technology transforms merchandise - from NFC tag to interactive experience",className:"w-full max-w-3xl h-auto object-contain"})})}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8",children:e.map((t,n)=>s.jsxs("div",{className:"bg-slate-50/80 backdrop-blur-sm rounded-lg p-6 border border-slate-200 hover:shadow-md transition-all duration-300 text-center space-y-4",children:[s.jsx("div",{className:"flex justify-center",children:s.jsx("div",{className:"w-16 h-16 bg-white rounded-full flex items-center justify-center border border-slate-200 shadow-sm",children:t.icon})}),s.jsx("h3",{className:"text-lg font-semibold text-slate-900",children:t.title}),s.jsx("p",{className:"text-slate-600 leading-relaxed",children:t.description})]},n))})]})]})]})},a1="/assets/rock-concert-merchandise-DiTHCtwn.jpg",bU=()=>{console.log("EPMerchandiseGateway component rendering - v2",{merchandiseImage:a1});const e=[{icon:s.jsx(F_,{className:"w-6 h-6"}),title:"Early Ticket Access",description:"Give your most loyal fans priority access to concert tickets and special events before they go on sale to the general public, creating an exclusive experience that rewards their merchandise investment and builds deeper fan loyalty."},{icon:s.jsx(T0,{className:"w-6 h-6"}),title:"Exclusive Merchandise & FOMO Sales",description:"Use the fear of missing out by providing exclusive, time-sensitive offers that fans can only access through their NFC-enabled merchandise, creating a sense of urgency and exclusivity."},{icon:s.jsx(Kc,{className:"w-6 h-6"}),title:"Meet and Greets",description:"Provide opportunities for personal interactions with artists and influencers."},{icon:s.jsx(d_,{className:"w-6 h-6"}),title:"VIP Areas",description:"Grant special access to VIP experiences, exclusive lounges, and backstage areas."}];return s.jsx("section",{className:"relative py-20 bg-slate-100 overflow-hidden",children:s.jsx("div",{className:"container mx-auto px-4 relative z-10",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-16",children:[s.jsxs("div",{className:"space-y-8",children:[s.jsxs("div",{className:"space-y-6",children:[s.jsxs("h2",{className:"text-3xl lg:text-4xl font-bold text-slate-900",children:["Merchandise Becomes"," ",s.jsx("span",{className:"text-green-600",children:"Point of Sale"})]}),s.jsx("p",{className:"text-lg text-slate-700 max-w-2xl leading-relaxed",children:"Your merchandise becomes an interactive point-of-sale gateway, opening up unprecedented access for fans to:"})]}),s.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-6",children:e.map((t,n)=>s.jsxs("div",{className:"bg-white rounded-lg p-6 border border-slate-200 hover:shadow-md transition-all duration-300 space-y-4",children:[s.jsx("div",{className:"flex items-center space-x-3",children:s.jsx("div",{className:"w-12 h-12 bg-slate-100 rounded-lg flex items-center justify-center border border-slate-200",children:s.jsx("div",{className:"w-6 h-6 text-slate-700",children:t.icon})})}),s.jsxs("div",{className:"space-y-2",children:[s.jsx("h3",{className:"text-lg font-semibold text-slate-900",children:t.title}),s.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:t.description})]})]},n))})]}),s.jsx("div",{className:"relative flex items-end justify-center",children:s.jsx("div",{className:"relative overflow-hidden rounded-lg bg-white border border-slate-200 shadow-sm",children:s.jsx("div",{className:"aspect-[4/3] flex items-center justify-center p-4",children:s.jsx("img",{src:a1,alt:"Smart merchandise gateway with NFC technology",className:"w-full h-full object-cover rounded-lg",onError:t=>{t.currentTarget.style.display="none";const n=t.currentTarget.parentElement;if(n&&!n.querySelector(".fallback-content")){const r=document.createElement("div");r.className="fallback-content flex items-center justify-center h-full text-slate-600",r.innerHTML='<div class="text-center"><div class="text-6xl mb-4">ð</div><p class="text-lg">Smart Merchandise Gateway</p><p class="text-sm text-slate-500">NFC-Enabled Digital Experiences</p></div>',n.appendChild(r)}}})})})})]})})})},wU=()=>{const e=[{title:"Sustainable Innovation",description:"Combine Earth Positive's 17+ years of sustainable fashion expertise with cutting-edge digital technology.",icon:s.jsx(Po,{className:"w-6 h-6 text-green-600"})},{title:"Enhanced Fan Engagement",description:"Transform traditional merchandise into interactive experiences that create deeper connections with your audience.",icon:s.jsx(P0,{className:"w-6 h-6 text-red-500"})},{title:"Future-Ready Merchandise",description:"Stay ahead of the curve with NFC-enabled apparel that bridges the physical and digital worlds seamlessly.",icon:s.jsx(ke,{className:"w-6 h-6 text-blue-600"})}];return s.jsx("section",{className:"py-20 bg-white",children:s.jsxs("div",{className:"container mx-auto px-4",children:[s.jsxs("div",{className:"text-center space-y-4 mb-16",children:[s.jsx("h2",{className:"text-3xl lg:text-4xl font-bold text-slate-900",children:"Why Choose Our Partnership"}),s.jsx("p",{className:"text-lg text-slate-600 max-w-2xl mx-auto",children:"The perfect combination of sustainable fashion and innovative technology"})]}
952),s.jsx("div",{className:"max-w-4xl mx-auto space-y-6",children:e.map((t,n)=>s.jsx("div",{className:"bg-slate-50 rounded-lg p-8 border border-slate-200 hover:shadow-md transition-all duration-300",children:s.jsxs("div",{className:"flex items-start space-x-6",children:[s.jsx("div",{className:"w-12 h-12 bg-white rounded-lg flex items-center justify-center border border-slate-200 shadow-sm flex-shrink-0",children:t.icon}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-semibold text-slate-900 mb-3",children:t.title}),s.jsx("p",{className:"text-slate-600 leading-relaxed",children:t.description})]})]})},n))})]})})},jU=()=>s.jsx("section",{className:"py-20 bg-slate-50",children:s.jsx("div",{className:"container mx-auto px-4",children:s.jsx("div",{className:"text-center space-y-8",children:s.jsxs("div",{className:"max-w-4xl mx-auto",children:[s.jsx("h2",{className:"text-3xl lg:text-4xl font-bold text-slate-900 mb-8",children:"Complete End-to-End Solution"}),s.jsx("p",{className:"text-lg text-slate-700 leading-relaxed mb-8",children:"From sustainable apparel production to digital activation, we provide everything you need for next-generation merchandise experiences. Our integrated platform combines Earth Positive's ethical manufacturing with SmartLinks' cutting-edge NFC technology and engagement tools."}),s.jsxs("div",{className:"grid md:grid-cols-3 gap-8 mt-12",children:[s.jsxs("div",{className:"bg-white rounded-lg p-6 border border-slate-200 shadow-sm",children:[s.jsx("div",{className:"w-12 h-12 bg-green-100 rounded-full flex items-center justify-center mb-4 mx-auto",children:s.jsx(Ki,{className:"w-6 h-6 text-green-600"})}),s.jsx("h3",{className:"text-slate-900 font-semibold mb-2",children:"Sustainable Production"}),s.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:"Ethically-made apparel using Earth Positive's sustainable materials and processes"})]}),s.jsxs("div",{className:"bg-white rounded-lg p-6 border border-slate-200 shadow-sm",children:[s.jsx("div",{className:"w-12 h-12 bg-blue-100 rounded-full flex items-center justify-center mb-4 mx-auto",children:s.jsx(Ft,{className:"w-6 h-6 text-blue-600"})}),s.jsx("h3",{className:"text-slate-900 font-semibold mb-2",children:"NFC Integration"}),s.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:"Seamless NFC technology embedded directly into the merchandise during production"})]}),s.jsxs("div",{className:"bg-white rounded-lg p-6 border border-slate-200 shadow-sm",children:[s.jsx("div",{className:"w-12 h-12 bg-purple-100 rounded-full flex items-center justify-center mb-4 mx-auto",children:s.jsx(rr,{className:"w-6 h-6 text-purple-600"})}),s.jsx("h3",{className:"text-slate-900 font-semibold mb-2",children:"Digital Engagement"}),s.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:"Full-featured SaaS platform for creating and managing interactive fan experiences"})]})]})]})})})}),NU=()=>s.jsx("section",{className:"py-20 bg-transparent backdrop-blur-sm",children:s.jsx("div",{className:"container mx-auto px-4",children:s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"inline-block bg-gradient-to-r from-blue-500 to-purple-600 text-transparent bg-clip-text px-4 py-2 mb-8",children:s.jsx("span",{className:"text-lg font-bold",children:"FIRST TO MARKET"})}),s.jsxs("div",{className:"max-w-5xl mx-auto space-y-8",children:[s.jsx("h2",{className:"text-4xl md:text-5xl font-bold text-gray-900 mb-6",children:"The Future of Fan Engagement"}),s.jsx("p",{className:"text-xl text-gray-700 leading-relaxed mb-8",children:"Earth Positive is pioneering the next generation of merchandise with SmartLinks NFC technology. While others follow traditional paths, we're creating tomorrow's fan experience today."}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 text-left",children:[s.jsxs("div",{className:"bg-white/80 backdrop-blur-sm rounded-xl p-6",children:[s.jsx("h3",{className:"text-xl font-semibold text-gray-900 mb-4",children:"For Artists & Bands"}),s.jsxs("ul",{className:"space-y-3 text-gray-700",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-blue-400 mr-2",children:"â¢"}),"Direct fan connection through every piece of merchandise"]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-blue-400 mr-2",children:"â¢"}),"Real-time engagement data and fan insights"]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-blue-400 mr-2",children:"â¢"}),"New revenue streams from digital content delivery"]})]})]}),s.jsxs("div",{className:"bg-white/80 backdrop-blur-sm rounded-xl p-6",children:[s.jsx("h3",{className:"text-xl font-semibold text-gray-900 mb-4",children:"For Brands & Labels"}),s.jsxs("ul",{className:"space-y-3 text-gray-700",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-purple-400 mr-2",children:"â¢"}),"Be first to market with next-generation merchandise"]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-purple-400 mr-2",children:"â¢"}),"Establish industry leadership in fan technology"]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-purple-400 mr-2",children:"â¢"}),"Capture market share before competitors catch up"]})]})]})]}),s.jsx("p",{className:"text-gray-600 text-sm max-w-3xl mx-auto",children:"Join Earth Positive in revolutionizing how artists connect with fans. While the industry catches up, you'll already be leading the conversation."})]})]})})}),kU=()=>{const e=[{icon:s.jsx(Po,{className:"w-6 h-6 text-green-600"}),title:"100% GOTS Certified Organic Cotton",description:"Combining tradition, innovation and science for the benefit of the environment and to promote a good quality of life for everyone involved."},{icon:s.jsx(h_,{className:"w-6 h-6 text-blue-600"}),title:"Zero Water Discharge",description:"All wastewater is thoroughly treated and purified, then re-circulated in a closed-loop dye house system with no external discharging."},{icon:s.jsx(Ar,{className:"w-6 h-6 text-slate-700"}),title:"90% Reduced Carbon Footprint",description:"Climate Neutral production that saves 7kg of CO2 per t-shirt and up to 28kg per hooded sweatshirt without carbon offsetting."},{icon:s.jsx(dt,{className:"w-6 h-6 text-orange-600"}),title:"Fair Wear Foundation",description:"Workers earn above minimum wage plus living wage premium, with 100% of production undergoing annual FWF audits since 2006."}];return s.jsx("section",{id:"earth-positive-about",className:"py-20 bg-slate-50",children:s.jsxs("div",{className:"container mx-auto px-4",children:[s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-8 items-center mb-16",children:[s.jsx("div",{className:"lg:col-span-1 flex justify-center items-center",children:s.jsx("img",{src:"/lovable-uploads/b438cde3-74a2-498c-8ff6-9fa7d0cce80c.webp",alt:"Earth Positive Logo",className:"h-[8.4rem] w-auto"})}),s.jsxs("div",{className:"lg:col-span-2 text-center lg:text-left space-y-4",children:[s.jsx("div",{className:"mb-3",children:s.jsx("span",{className:"text-sm font-medium text-slate-600 uppercase tracking-wider",children:"About Earth Positive"})}),s.jsx("h2",{className:"text-3xl lg:text-4xl font-bold text-slate-900",children:"Pioneers in Sustainable Apparel since 2007"}),s.jsx("p",{className:"text-lg text-slate-600 leading-relaxed",children:"In 2007, Earth Positive was launched to prove that it's possible to produce cotton clothing without any detrimental effects to the Earth's soil, water or inhabitants, whether they be animals, plants or people, or to its climate."})]})]}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 mb-16",children:e.map((t,n)=>s.jsx("div",{className:"bg-white rounded-lg p-6 border border-slate-200 shadow-sm hover:shadow-md transition-shadow duration-300",children:s.jsxs("div",{className:"flex items-start space-x-4",children:[s.jsx("div",{className:"flex-shrink-0 w-12 h-12 bg-slate-50 rounded-lg flex items-center justify-center border border-slate-200",children:t.icon}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-lg font-semibold text-slate-900 mb-2",children:t.title}),s.jsx("p",{className:"text-slate-600 leading-relaxed text-sm",children:t.description})]})]})}
952,n))}),s.jsxs("div",{className:"bg-white rounded-lg p-6 border border-slate-200 shadow-sm",children:[s.jsx("h3",{className:"text-xl font-bold text-slate-900 mb-4 text-center",children:"Environmental Impact"}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mx-auto mb-3",children:s.jsx("span",{className:"text-xl font-bold text-green-600",children:"7kg"})}),s.jsx("h4",{className:"font-semibold text-slate-900 mb-1",children:"CO2 Saved per T-shirt"}),s.jsx("p",{className:"text-slate-600 text-xs",children:"Actual reductions achieved"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mx-auto mb-3",children:s.jsx("span",{className:"text-xl font-bold text-green-600",children:"28kg"})}),s.jsx("h4",{className:"font-semibold text-slate-900 mb-1",children:"CO2 Saved per Hoodie"}),s.jsx("p",{className:"text-slate-600 text-xs",children:"Without carbon offsetting"})]})]})]})]})})},SU=()=>s.jsx("section",{className:"py-20 bg-white",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-16 items-center",children:[s.jsxs("div",{className:"order-1 lg:order-1",children:[s.jsx("h2",{className:"text-4xl lg:text-5xl font-bold text-slate-900 leading-tight mb-8",children:"Your Shirt. Your Story. Your Earth Positive Future."}),s.jsxs("div",{className:"space-y-6 text-lg text-slate-600",children:[s.jsx("p",{children:"Each Earth Positive garment embedded with a SmartLinks chip reflects your brand's commitment to a more sustainable, transparent future. It shows your audience that you care â not just about what you create, but how you create it."}),s.jsx("p",{children:"And with SmartLinks, every shirt becomes a digital touchpoint. A simple scan reveals your story: your values, your creative vision, your positive impact. From exclusive content to behind-the-scenes moments, your message travels with every product."}),s.jsx("p",{className:"font-medium text-slate-800",children:"By incorporating NFC tags, we empower you with cutting-edge technology that enhances your connection with your audience while reinforcing your commitment to sustainability."})]})]}),s.jsx("div",{className:"order-2 lg:order-2",children:s.jsxs("div",{className:"relative",children:[s.jsx(he,{src:"/lovable-uploads/0e76aa90-73f7-4ae5-be34-95c63f374a14.webp",alt:"Two people wearing Earth Positive sustainable t-shirts showcasing front and back designs",className:"w-full h-auto rounded-xl shadow-lg"}),s.jsx("div",{className:"absolute -bottom-4 -left-4 w-12 h-12 bg-green-500/10 rounded-full flex items-center justify-center border border-green-200",children:s.jsx("div",{className:"w-4 h-4 bg-green-500 rounded-full"})}),s.jsx("div",{className:"absolute -top-4 -right-4 w-8 h-8 bg-blue-500/10 rounded-full border border-blue-200"})]})})]})})}),CU=()=>{const e={"@context":"https://schema.org","@type":"WebPage",name:"SmartLinks x Earth Positive Collaboration",description:"Discover how SmartLinks and Earth Positive transform sustainable merchandise into interactive digital experiences with embedded NFC technology.",url:"https://smartlinks.ai/earth-positive-collaboration",about:{"@type":"Thing",name:"NFC Merchandise Technology",description:"Interactive digital experiences through NFC-enabled sustainable apparel"}};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks x Earth Positive Collaboration | Interactive NFC Merchandise",description:"Discover how SmartLinks and Earth Positive transform sustainable merchandise into interactive digital experiences with embedded NFC technology.",keywords:"NFC merchandise, digital engagement, sustainable apparel, fan engagement solutions, interactive merchandise, Earth Positive, SmartLinks",url:"https://smartlinks.ai/earth-positive-collaboration",canonical:"https://smartlinks.ai/earth-positive-collaboration",structuredData:e}),s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(xU,{}),s.jsxs("main",{className:"relative z-10 space-y-0",children:[s.jsx(rt,{}),s.jsx(gU,{}),s.jsx(SU,{}),s.jsx(yU,{}),s.jsx(bU,{}),s.jsx(jU,{}),s.jsx(NU,{}),s.jsx(kU,{}),s.jsx(wU,{}),s.jsx(ui,{}),s.jsx(it,{})]})]})]})},PU=()=>{const e=oi(),t=[{title:"Overview",path:"/syndigo-partnership",icon:E0},{title:"DPP Portals",path:"/syndigo-partnership/ai-portals",icon:ke},{title:"Engagement",path:"/syndigo-partnership/engagement",icon:rr},{title:"Analytics",path:"/syndigo-partnership/analytics",icon:ii},{title:"Authenticity",path:"/syndigo-partnership/authenticity",icon:Tt},{title:"Tagging",path:"/syndigo-partnership/tagging",icon:Es},{title:"Industry Solutions",path:"/syndigo-partnership/industry-solutions",icon:qc}],n=r=>e.pathname===r;return s.jsxs(s.Fragment,{children:[s.jsx(rt,{}),s.jsx("div",{className:"fixed top-20 left-0 right-0 z-40 bg-slate-800/95 backdrop-blur-lg border-b border-white/10",children:s.jsx("div",{className:"container mx-auto px-4",children:s.jsx("div",{className:"flex items-center justify-between overflow-x-auto scrollbar-hide py-4",children:t.map(r=>{const i=r.icon,a=n(r.path);return s.jsxs(ve,{to:r.path,className:"flex flex-col items-center gap-2 min-w-[80px] group",children:[s.jsx("div",{className:`w-12 h-12 rounded-full flex items-center justify-center transition-all duration-300 ${a?"bg-gradient-to-r from-cyan-400 to-blue-500 shadow-lg shadow-cyan-500/50":"bg-slate-700 group-hover:bg-slate-600"}`,children:s.jsx(i,{className:`w-5 h-5 ${a?"text-white":"text-white/70 group-hover:text-white"}`})}),s.jsx("span",{className:`text-xs text-center transition-colors ${a?"text-cyan-400 font-medium":"text-white/60 group-hover:text-white/80"}`,children:r.title})]},r.path)})})})})]})},ma=({children:e,prevPage:t,nextPage:n})=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-blue-950 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-blue-600 rounded-full blur-3xl op
952acity-30"}),s.jsx("div",{className:"absolute top-40 right-20 w-80 h-80 bg-cyan-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-blue-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-96 right-10 w-64 h-64 bg-cyan-600 rounded-full blur-3xl opacity-30"}),s.jsx("div",{className:"absolute bottom-40 left-20 w-88 h-88 bg-blue-700 rounded-full blur-3xl opacity-25"}),s.jsx("div",{className:"absolute top-1/2 right-1/3 w-56 h-56 bg-blue-900 rounded-full blur-3xl opacity-40"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-blue-900/20 to-black/40"})]}),s.jsxs("div",{className:"relative z-10",children:[s.jsx(PU,{}),s.jsxs("main",{className:"pt-40 pb-12 px-6",children:[s.jsx("div",{className:"container mx-auto",children:e}),s.jsxs("div",{className:"container mx-auto mt-16 flex items-center justify-between gap-4",children:[t?s.jsxs(ve,{to:t.path,className:"flex items-center gap-2 px-6 py-3 bg-white/5 hover:bg-white/10 border border-white/10 rounded-lg transition-all duration-300 text-white/80 hover:text-white group",children:[s.jsx(So,{className:"w-4 h-4 group-hover:-translate-x-1 transition-transform"}),s.jsxs("div",{className:"text-left",children:[s.jsx("div",{className:"text-xs text-white/60",children:"Previous"}),s.jsx("div",{className:"font-medium",children:t.title})]})]}):s.jsx("div",{}),n&&s.jsxs(ve,{to:n.path,className:"flex items-center gap-2 px-6 py-3 bg-cyan-400/10 hover:bg-cyan-400/20 border border-cyan-400/30 rounded-lg transition-all duration-300 text-cyan-400 hover:text-cyan-300 group ml-auto",children:[s.jsxs("div",{className:"text-right",children:[s.jsx("div",{className:"text-xs text-cyan-400/60",children:"Next"}),s.jsx("div",{className:"font-medium",children:n.title})]}),s.jsx(ue,{className:"w-4 h-4 group-hover:translate-x-1 transition-transform"})]})]})]}),s.jsx(it,{})]})]}),Qd=[{image:"/lovable-uploads/power-drill-portal-hero.webp",alt:"SmartLinks product portal for cordless power drill with QR code, service guides, and spare parts",industry:"Industrial & DIY"},{image:"/lovable-uploads/pasta-sauce-portal.png",alt:"SmartLinks product portal for pasta sauce showing ingredients, recipes, and nutritional information",industry:"Food & Beverage"},{image:"/lovable-uploads/trainer-portal-hero.png",alt:"SmartLinks product portal for running trainers showing sustainability info and care instructions",industry:"Fashion & Apparel"},{image:"/lovable-uploads/sonika-speaker-portal.png",alt:"SmartLinks product portal for wireless speaker showing specs, manuals, and warranty info",industry:"Consumer Electronics"},{image:"/lovable-uploads/escooter-portal-hero.png",alt:"SmartLinks product portal for electric scooter showing battery info, safety guides, and registration",industry:"Mobility & Transport"}],EU=()=>{const[e,t]=x.useState(0);return x.useEffect(()=>{const n=setInterval(()=>{t(r=>(r+1)%Qd.length)},4e3);return()=>clearInterval(n)},[]),s.jsx("section",{className:"pt-20 pb-8 px-6",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-cyan-400 text-sm font-medium mb-4 uppercase tracking-wider",children:"SmartLinks à Syndigo"}),s.jsx("h1",{className:"text-5xl font-bold text-white mb-6",children:"The Digital Twin of Every Product"}),s.jsxs("p",{className:"text-white/70 text-lg mb-6",children:["Syndigo manages the world's richest product data. SmartLinks takes it further â delivering it to consumers ",s.jsx("em",{className:"text-cyan-400 not-italic font-medium",children:"on the product, on the web, and via AI"}),"."]}),s.jsxs("ul",{className:"space-y-3",children:[s.jsxs("li",{className:"flex items-start gap-3",children:[s.jsx("span",{className:"text-cyan-400 mt-1",children:"â"}),s.jsx("span",{className:"text-white/80",children:"On the product â the destination for every Link Manager QR code"})]}),s.jsxs("li",{className:"flex items-start gap-3",children:[s.jsx("span",{className:"text-cyan-400 mt-1",children:"â"}),s.jsx("span",{className:"text-white/80",children:"On the web â permanent product pages for every product ever sold"})]}),s.jsxs("li",{className:"flex items-start gap-3",children:[s.jsx("span",{className:"text-cyan-400 mt-1",children:"â"}),s.jsx("span",{className:"text-white/80",children:"On AI â LLM-optimised, RAG-ready data so AI answers with your data"})]}),s.jsxs("li",{className:"flex items-start gap-3",children:[s.jsx("span",{className:"text-cyan-400 mt-1",children:"â"}),s.jsx("span",{className:"text-white/80",children:"Extensible micro apps for engagement, loyalty, support & DPP compliance"})]})]})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsxs("div",{className:"relative w-full max-w-lg",children:[s.jsx("div",{className:"relative overflow-hidden rounded-2xl",children:s.jsx("div",{className:"flex transition-transform duration-700 ease-in-out",style:{transform:`translateX(-${e*100}%)`},children:Qd.map((n,r)=>s.jsx("div",{className:"w-full flex-shrink-0",children:s.jsx(he,{src:n.image,alt:n.alt,className:"w-full h-auto object-contain"})},r))})}),s.jsx("div",{className:"absolute -bottom-2 left-1/2 transform -translate-x-1/2 translate-y-full",children:s.jsx("div",{className:"bg-gradient-to-r from-cyan-500 to-blue-500 px-4 py-2 rounded-full",children:s.jsx("span",{className:"text-white text-sm font-medium",children:Qd[e].industry})})}),s.jsx("div",{className:"flex justify-center gap-2 mt-8 pt-4",children:Qd.map((n,r)=>s.jsx("button",{onClick:()=>t(r),className:`w-2 h-2 rounded-full transition-all duration-300 ${r===e?"bg-cyan-400 w-6":"bg-white/30 hover:bg-white/50"}`,"aria-label":`Go to slide ${r+1}`},r))})]})})]})})})},TU=()=>{const e=[{icon:Ft,title:"Instant Engagement",description:"One scan unlocks the full product experience"},{icon:dt,title:"First-Party Data",description:"Build direct relationships, no intermediaries"},{icon:Jt,title:"Verified Authenticity",description:"Consumers know it's real"}];return s.jsx("section",{className:"py-12 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"The Power of QR on Pack"}),s.jsx("h2",{className:"text-4xl md:text-5xl font-bold text-white mb-4",children:"Every Scan Starts a Conversation"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Transform passive packaging into an active engagement channel"})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-6 max-w-6xl mx-auto",children:e.map((t,n)=>s.jsxs("div",{className:"bg-gradient-to-br from-cyan-500/10 to-purple-500/10 backdrop-blur-sm rounded-2xl p-6 border border-white/10 text-center hover:border-cyan-500/30 transition-all duration-300",children:[s.jsx("div",{className:"w-14 h-14 bg-gradient-to-r from-cyan-500 to-purple-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(t.icon,{className:"w-7 h-7 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:t.title}),s.jsx("p",{className:"text-white/70",children:t.description})]},n))})]})})},_U=()=>{const e=[{icon:ke,title:"AI-Powered Portal Creation",points:["Turn Syndigo PIM data into consumer-ready product experiences in seconds","Dynamic, accessible portals â not redirects to PDFs or generic websites","The purpose-built destination for every Link Manager QR code"],gradient:"from-purple-500 to-pink-500"},{icon:ii,title:"Consumer Intelligence",points:["Capture every scan, click, and interaction across every product","Understand how consumers engage with products post-purchase","Data that QR redirects and e-commerce analytics can never provide"],gradient:"from-blue-500 to-cyan-500"},{icon:rr,title:"Compliance to Revenue",points:["Full ESPR-ready Digital Product Passports â not just QR resolution","Turn DPP compliance into engagement, loyalty, and repeat purchase","Discontinued products become upgrade and trade-in opportunities"],gradient:"from-orange-500 to-red-500"},{icon:Ln,title:"AI Data Syndication",points:["Product data parsed into structured Markdown and RAG-ready content","MCP-compatible feeds for AI assistant integration","A new syndication channel â from PIM to AI â that no competitor offers"],gradient:"from-green-500 to-emerald-500"}];return s.jsx("section",{className:"py-12 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-16",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-4",children:"What SmartLinks Adds to the Syndigo Stack"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"Syndigo has the data, the distribution, and the QR infrastru
952cture. SmartLinks provides the consumer experience layer â on the product, on the web, and via AI â that turns product data into ongoing customer relationships."})]}),s.jsx("div",{className:"grid md:grid-cols-2 gap-8",children:e.map((t,n)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${t.gradient} rounded-xl flex items-center justify-center mb-6`,children:s.jsx(t.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h3",{className:"text-2xl font-bold text-white mb-4",children:t.title}),s.jsx("ul",{className:"space-y-3",children:t.points.map((r,i)=>s.jsxs("li",{className:"text-white/70 leading-relaxed flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:r})]},i))})]},n))})]})})},AU=()=>s.jsx("section",{className:"py-12 px-6",children:s.jsxs("div",{className:"container mx-auto max-w-6xl",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"The Syndigo Product Experience Cloud"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-bold text-white mb-4",children:"Syndigo's Strategic Evolution"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"Syndigo is evolving from B2B data syndication into a direct-to-consumer product experience platform. Each acquisition extends the reach closer to the end consumer. SmartLinks completes the journey."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mb-8",children:[{label:"1WorldSync",role:"Product Data Network",description:"The world's largest GDSN data pool â structured product content syndicated to thousands of retailers and trading partners globally.",position:"Upstream",icon:tn,gradient:"from-blue-600 to-indigo-600"},{label:"Taggstar",role:"Conversion Optimisation",description:"AI-powered social proof messaging â real-time signals like 'Trending' and 'Bestseller' that boost e-commerce conversions.",position:"Online",icon:Zs,gradient:"from-emerald-600 to-teal-600"},{label:"SmartLinks",role:"Product Experience Platform",description:"The digital twin of every product â delivering Syndigo's data on the product, on the web, and via AI. The next logical step.",position:"Next Step",icon:Ft,gradient:"from-cyan-500 to-blue-500",highlight:!0}].map((e,t)=>s.jsxs("div",{className:"relative",children:[s.jsxs("div",{className:`rounded-2xl p-6 border transition-all duration-300 h-full flex flex-col ${e.highlight?"bg-cyan-500/10 border-cyan-500/30 shadow-lg shadow-cyan-500/10":"bg-white/5 border-white/10"}`,children:[s.jsx("span",{className:`inline-block self-start px-3 py-1 rounded-full text-xs font-medium mb-4 ${e.highlight?"bg-cyan-500/20 text-cyan-400":"bg-white/10 text-white/50"}`,children:e.position}),s.jsx("div",{className:`w-12 h-12 bg-gradient-to-r ${e.gradient} rounded-xl flex items-center justify-center mb-4 shadow-lg`,children:s.jsx(e.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:`text-lg font-bold mb-1 ${e.highlight?"text-cyan-400":"text-white"}`,children:e.label}),s.jsx("p",{className:"text-white/50 text-xs font-medium uppercase tracking-wider mb-3",children:e.role}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed flex-grow",children:e.description})]}),t<2&&s.jsx("div",{className:"hidden md:flex absolute -right-3 top-1/2 -translate-y-1/2 z-10",children:s.jsx(ue,{className:"w-5 h-5 text-white/20"})})]},t))}),s.jsxs("div",{className:"mb-6",children:[s.jsx("h3",{className:"text-xl font-bold text-white text-center mb-6",children:"Three New Channels for Syndigo's Data"}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4",children:[{icon:Qh,label:"On the Product",description:"Link Manager creates the QR code. SmartLinks is the destination â the consumer experience every scan should land on.",gradient:"from-amber-500 to-orange-500"},{icon:Ln,label:"On the Web",description:"The 'Wayback Machine' for products â permanent, SEO-optimised pages for every product ever sold. Current, historical, and archived.",gradient:"from-purple-500 to-pink-500"},{icon:xs,label:"On AI",description:"Product data converted to RAG-ready, MCP-compatible formats. When ChatGPT answers about a product, it uses Syndigo's data â not guesswork.",gradient:"from-green-500 to-emerald-500"}].map((e,t)=>s.jsxs("div",{className:"bg-gradient-to-br from-cyan-500/5 to-blue-500/5 border border-cyan-500/20 rounded-xl p-5 text-center",children:[s.jsx("div",{className:`w-12 h-12 bg-gradient-to-r ${e.gradient} rounded-xl flex items-center justify-center mx-auto mb-3`,children:s.jsx(e.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:e.label}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:e.description})]},t))})]})]})}),RU=()=>{const e=[{icon:ke,title:"DPP Portals",description:"Transform PIM data into compliant Digital Product Passport portals at unprecedented scale with seamless Syndigo integration.",path:"/syndigo-partnership/ai-portals",gradient:"from-purple-500 to-pink-500"},{icon:rr,title:"Engagement",description:"Turn DPP compliance into revenue-generating customer touchpoints and loyalty drivers.",path:"/syndigo-partnership/engagement",gradient:"from-orange-500 to-red-500"},{icon:ii,title:"Analytics",description:"Convert every interaction into actionable business insights that drive strategic decisions.",path:"/syndigo-partnership/analytics",gradient:"from-blue-500 to-cyan-500"},{icon:Tt,title:"Authenticity",description:"Combat counterfeiting with multi-layer authentication technology that protects your brand.",path:"/syndigo-partnership/authenticity",gradient:"from-green-500 to-emerald-500"},{icon:Es,title:"Tagging",description:"Flexible tagging solutions from QR codes to NFC labels that connect products to digital experiences.",path:"/syndigo-partnership/tagging",gradient:"from-cyan-500 to-blue-500"},{icon:qc,title:"Industry Solutions",description:"Tailored solutions for every industry with enterprise-grade infrastru
952cture that scales globally.",path:"/syndigo-partnership/industry-solutions",gradient:"from-pink-500 to-red-500"}],t={"@context":"https://schema.org","@type":"WebPage",name:"SmartLinks x Syndigo Partnership",description:"Discover how SmartLinks extends Syndigo's Digital Product Passport solution with automated portal creation, advanced analytics, and engagement tools.",url:"https://smartlinks.app/syndigo-partnership"};return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks x Syndigo Partnership | Beyond Digital Product Passports",description:"Discover how SmartLinks extends Syndigo's Digital Product Passport solution with automated portal creation, advanced analytics, and engagement tools that transform compliance into opportunity.",keywords:"Syndigo partnership, Digital Product Passport, DPP solution, PIM integration, product engagement, portal automation, analytics intelligence",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership",structuredData:t,breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"}]}),s.jsxs(ma,{nextPage:{title:"DPP Product Portals",path:"/syndigo-partnership/ai-portals"},children:[s.jsx(EU,{}),s.jsx(AU,{}),s.jsx("section",{className:"py-8",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsx("h2",{className:"text-3xl font-bold text-white mb-8 text-center",children:"Explore the Partnership"}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6 max-w-6xl mx-auto",children:e.map((n,r)=>s.jsxs(ve,{to:n.path,className:"group bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 hover:border-white/20 transition-all duration-300",children:[s.jsx("div",{className:`w-12 h-12 bg-gradient-to-r ${n.gradient} rounded-lg flex items-center justify-center mb-4 group-hover:scale-110 transition-transform`,children:s.jsx(n.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-lg font-bold text-white mb-2 group-hover:text-cyan-400 transition-colors",children:n.title}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed mb-4",children:n.description}),s.jsxs("div",{className:"flex items-center text-cyan-400 text-sm font-semibold group-hover:gap-2 transition-all",children:[s.jsx("span",{children:n.title==="Get in Touch"?"Contact Us":"Discover More"}),s.jsx(ue,{className:"w-4 h-4 group-hover:translate-x-1 transition-transform"})]})]},r))})]})}),s.jsx(TU,{}),s.jsx(_U,{}),s.jsx("section",{className:"py-12",children:s.jsx("div",{className:"container mx-auto",children:s.jsxs("div",{className:"bg-gradient-to-r from-cyan-500/10 to-blue-500/10 border border-cyan-500/20 rounded-2xl p-8 max-w-6xl mx-auto",children:[s.jsx("h3",{className:"text-2xl font-bold text-white mb-4 text-center",children:"The Next Logical Step"}),s.jsxs("p",{className:"text-white/80 text-lg leading-relaxed text-center max-w-4xl mx-auto mb-4",children:["Syndigo is evolving from B2B data syndication to a direct-to-consumer product experience platform. SmartLinks completes that journey â delivering Syndigo's data on the product, on the web, and via AI. A white-labelled ",s.jsx("span",{className:"text-cyan-400 font-semibold",children:'"SmartLinks by Syndigo"'})," adds a new recurring revenue line with zero R&D investment."]}),s.jsx("div",{className:"text-center",children:s.jsx("a",{href:"https://smartlinks.app/solutions/hub",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-cyan-400 hover:text-cyan-300 font-medium transition-colors text-sm",children:s.jsx("span",{children:"Learn more about SmartLinks Hub â"})})})]})})})]})]})},DU=()=>{const e=[{icon:tn,title:"PIM Integration",description:"Automatically pull product data, specifications, and metadata from Syndigo's PIM."},{icon:hl,title:"Smart Templates",description:"Pre-built templates with AI that assists customers with questions and support."},{icon:Ps,title:"Drag-and-Drop Builder",description:"Visual editor enables non-technical users to design portalsâno coding required."},{icon:xc,title:"Bulk Operations",description:"Create or modify thousands of portals simultaneously with batch operations."}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"DPP Solution"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"DPP Product Portals"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-purple-400 mb-6",children:"Compliant & Engaging"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"Transform your entire product catalogue into compliant Digital Product Passport experiences with drag-and-drop simplicity. Automated PIM integration means no manual data entryâcreate DPP-ready portals in minutes, not weeks."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:e.map((t,n)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(t.icon,{className:"w-5 h-5 text-purple-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:t.title}),s.jsx("div",{className:"text-white/60 text-xs",children:t.description})]})]},n))})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-full max-w-lg",children:s.jsx(he,{src:"/lovable-uploads/trainer-portal-hero.png",alt:"SmartLinks product portal example showing RUNPRO running shoe with QR code tag and mobile interface displaying product info, training videos, shop accessories, and warranty",className:"w-full h-auto rounded-2xl"})})})]}),s.jsx("div",{className:"mt-20 mb-12",children:s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-8 border border-white/10",children:[s.jsxs("div",{className:"mb-6 text-center",children:[s.jsx("h3",{className:"text-2xl font-bold text-white mb-2",children:"Syndigo x SmartLinks DPP Solution"}),s.jsx("p",{className:"text-white/70",children:"See the integrated solution in action"})]}),s.jsx(he,{src:"/lovable-uploads/syndigo-dpp-solution.webp",alt:"Syndigo SmartLinks Digital Product Passport solution showing Hollister Skinny Jeans with compliance metrics, product information, and QR code generation",className:"w-full h-auto rounded-lg shadow-2xl"})]})}),s.jsx("div",{className:"mt-12 mb-20",children:s.jsx("div",{className:"bg-gradient-to-br from-purple-500/10 to-pink-500/10 backdrop-blur-sm rounded-2xl p-8 md:p-12 border border-purple-500/20",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-8 items-center",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"inline-flex items-center gap-2 bg-gradient-to-r from-purple-500 to-pink-500 text-white px-4 py-2 rounded-full text-sm font-semibold mb-4",children:[s.jsx(ke,{className:"w-4 h-4"}),"AI-Powered"]}),s.jsx("h2",{className:"text-3xl md:text-4xl font-bold text-white mb-4",children:"Build Your DPP Section Effortlessly with AI"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"While product portals are created through our intuitive drag-and-drop builder, the Digital Product Passport section is powered by advanced AI that does the heavy lifting for you. Simply provide your product data, and our AI assistant generates comprehensive, compliant DPP content automatically."}),s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-6 h-6 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx(hl,{className:"w-3.5 h-3.5 text-white"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold",children:"Automated Content Generation"}),s.jsx("p",{className:"text-white/70 text-sm",children:"AI transforms raw product data into engaging, regulation-compliant content"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-6 h-6 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx(hl,{className:"w-3.5 h-3.5 text-white"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold",children:"Intelligent Data Structuring"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Automatically organises sustainability metrics, materials, and circularity information"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-6 h-6 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx(hl,{className:"w-3.5 h-3.5 text-white"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold",children:"Regulatory Compliance Built-in"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Ensures DPP
952content meets ESPR and other emerging regulations"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-6 h-6 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx(hl,{className:"w-3.5 h-3.5 text-white"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold",children:"Multilingual Support"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Generate DPP content in 50+ languages for global market reach"})]})]})]})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-8 border border-white/10",children:[s.jsxs("h3",{className:"text-xl font-bold text-white mb-4 flex items-center gap-2",children:[s.jsx(ke,{className:"w-5 h-5 text-purple-400"}),"How It Works"]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 text-white font-bold text-sm",children:"1"}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold mb-1",children:"Connect Your PIM Data"}),s.jsx("p",{className:"text-white/70 text-sm",children:"AI pulls product specifications, materials, and certifications from Syndigo"})]})]}),s.jsxs("div",{className:"flex gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 text-white font-bold text-sm",children:"2"}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold mb-1",children:"AI Generates DPP Content"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Intelligent processing creates comprehensive sustainability narratives"})]})]}),s.jsxs("div",{className:"flex gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 text-white font-bold text-sm",children:"3"}),s.jsxs("div",{children:[s.jsx("p",{className:"text-white font-semibold mb-1",children:"Review & Publish"}),s.jsx("p",{className:"text-white/70 text-sm",children:"Fine-tune if needed, then deploy instantly across your product catalogue"})]})]})]}),s.jsx("div",{className:"mt-6 pt-6 border-t border-white/10",children:s.jsx("p",{className:"text-white/60 text-xs italic",children:"Save weeks of manual content creation and ensure 100% consistency across thousands of products"})})]})]})})}),s.jsxs("div",{className:"mt-12 grid lg:grid-cols-2 gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Modular Micro App Architecture"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"SmartLinks product portals are built on a revolutionary micro app architecture that transforms static product pages into extensible digital platforms. Each portal can host multiple purpose-built applications that enhance the consumer experience whilst maintaining complete independence from one another."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"This modular approach enables Syndigo customers to deploy features incrementally, update individual components without affecting the entire portal, and maintain perfect brand consistency across white-labelled implementations. Add new capabilities as your strategy evolves without rebuilding existing infrastructure."}),s.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-lg p-4 border border-white/10",children:[s.jsx("div",{className:"text-white font-semibold mb-1",children:"Modular Deployment"}),s.jsx("div",{className:"text-white/60 text-sm",children:"Launch features independently"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-lg p-4 border border-white/10",children:[s.jsx("div",{className:"text-white font-semibold mb-1",children:"Independent Updates"}),s.jsx("div",{className:"text-white/60 text-sm",children:"No system-wide disruption"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-lg p-4 border border-white/10",children:[s.jsx("div",{className:"text-white font-semibold mb-1",children:"White-Label Ready"}),s.jsx("div",{className:"text-white/60 text-sm",children:"Perfect brand consistency"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-lg p-4 border border-white/10",children:[s.jsx("div",{className:"text-white font-semibold mb-1",children:"Infinite Extensibility"}),s.jsx("div",{className:"text-white/60 text-sm",children:"Custom development APIs"})]})]})]}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-4",children:[s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-green-500 to-emerald-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Po,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Sustainability Tracker"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Carbon footprint, certifications, eco-labels, circular economy metrics"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-yellow-500 to-orange-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Kc,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Reviews & Ratings"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Customer feedback, UGC integration, verified reviews, sentiment analysis"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-pink-500 to-rose-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(r_,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Recipe & Usage Ideas"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Contextual content, how-to guides, serving suggestions, pairing recommendations"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-indigo-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Tt,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Authentication & Loyalty"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"SSO integration, loyalty programme connection, personalised offers"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-purple-500 to-violet-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(_0,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"E-Commerce Integration"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Where to buy, price comparison, stock availability, direct purchasing"})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-cyan-500 to-teal-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(A_,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Custom Micro Apps"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Build your own with APIs, white-label options, unlimited possibilities"})]})]})]}),s.jsxs("div",{className:"mt-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Seamless Enterprise Integration"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed max-w-3xl mx-auto",children:"Our API-first ar
952chitecture enables effortless integration with your existing enterprise technology stack. Connect product portals to CRMs, e-commerce platforms, analytics tools, and authentication providers through pre-built connectors or custom API implementations."})]}),s.jsxs("div",{className:"grid lg:grid-cols-2 gap-8 items-stretch",children:[s.jsxs("div",{className:"grid gap-6 content-start",children:[s.jsx("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-cyan-500 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(dt,{className:"w-6 h-6 text-white"})}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:"CRM & Marketing Automation"}),s.jsxs("ul",{className:"text-white/70 leading-relaxed space-y-2",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Synchronise customer interactions in real-time"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Trigger automated campaigns based on product engagement"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Maintain unified customer profiles across all touchpoints"})]})]})]})]})}),s.jsx("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-purple-500 to-pink-500 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(yt,{className:"w-6 h-6 text-white"})}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:"E-Commerce Platforms"}),s.jsxs("ul",{className:"text-white/70 leading-relaxed space-y-2",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Enable unified inventory management"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Synchronise pricing and availability"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Create seamless purchasing journeys from discovery to checkout"})]})]})]})]})}),s.jsx("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-green-500 to-emerald-500 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(n_,{className:"w-6 h-6 text-white"})}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:"Analytics & Insights"}),s.jsxs("ul",{className:"text-white/70 leading-relaxed space-y-2",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Track attribution across channels"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Measure portal performance"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Gain actionable insights into consumer behaviour"})]})]})]})]})}),s.jsx("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-orange-500 to-red-500 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(v_,{className:"w-6 h-6 text-white"})}),s.jsxs("div",{children:[s.jsx("h3",{className:"text-xl font-bold text-white mb-2",children:"Authentication Providers"}),s.jsxs("ul",{className:"text-white/70 leading-relaxed space-y-2",children:[s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Implement single sign-on (SSO) across your digital ecosystem"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Maintain secure user sessions"})]}),s.jsxs("li",{className:"flex items-start",children:[s.jsx("span",{className:"text-cyan-400 mr-2",children:"â¢"}),s.jsx("span",{children:"Provide frictionless authentication experiences"})]})]})]})]})})]}),s.jsx("div",{className:"flex",children:s.jsxs("div",{className:"bg-gradient-to-br from-white/10 to-white/5 backdrop-blur-sm rounded-xl p-8 border border-white/20 h-full w-full",children:[s.jsx("h3",{className:"text-3xl font-bold text-white mb-8",children:"Technical Capabilities"}),s.jsxs("div",{className:"space-y-6",children:[s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx("div",{className:"w-2.5 h-2.5 bg-white rounded-full"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-semibold mb-2 text-lg",children:"RESTful API Architecture"}),s.jsx("div",{className:"text-white/70 text-base",children:"Comprehensive documentation, versioned endpoints, standardised response formats"})]})]}),s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx("div",{className:"w-2.5 h-2.5 bg-white rounded-full"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-semibold mb-2 text-lg",children:"Webhook Support"}),s.jsx("div",{className:"text-white/70 text-base",children:"Real-time event notifications, customisable triggers, reliable delivery guarantees"})]})]}),s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx("div",{className:"w-2.5 h-2.5 bg-white rounded-full"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-semibold mb-2 text-lg",children:"Custom Connector Builder"}),s.jsx("div",{className:"text-white/70 text-base",children:"Build integrations with proprietary systems, map custom data fields, transform formats"})]})]}),s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx("div",{className:"w-2.5 h-2.5 bg-white rounded-full"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-semibold mb-2 text-lg",children:"Enterprise SLA Support"}),s.jsx("div",{className:"text-white/70 text-base",children:"Rate limiting protection, guaranteed uptime, dedicated support channels"})]})]}),s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx("div",{className:"w-8 h-8 bg-gradient-to-r from-purple-500 to-pink-500 rounded-full flex items-center justify-center flex-shrink-0 mt-1",children:s.jsx("div",{className:"w-2.5 h-2.5 bg-white rounded-full"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-semibold mb-2 text-lg",children:"Secure Data Transmission"}),s.jsx("div",{className:"text-white/70 text-base",children:"OAuth 2.0 authentication, end-to-e
952nd encryption, compliance with industry standards"})]})]})]})]})})]})]}),s.jsxs("div",{className:"mt-12",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("h2",{className:"text-4xl font-bold text-white mb-6",children:"Enterprise-Grade Portal Features"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed max-w-3xl mx-auto",children:"Go far beyond basic product pages with sophisticated capabilities designed for enterprise-scale operations. SmartLinks portals deliver personalised experiences, optimisation tools, rich media support, and built-in complianceâall out of the box."})]}),s.jsxs("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:[s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-purple-500 to-pink-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(ke,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"Dynamic Personalisation"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Adapt content based on geo-location, browsing behaviour, language preferences, and user history. Deliver contextually relevant experiences that resonate with each individual consumer whilst maintaining brand consistency."})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-blue-500 to-cyan-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(x_,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"GS1 Digital Link Compliance"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Generate fully compliant GS1 Digital Link QR codes and NFC tags. Automatically structure product identifiers, batch numbers, and expiry dates according to international standards for seamless retail and regulatory compliance."})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-pink-500 to-rose-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(f_,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"Rich Media Support"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Embed high-resolution images, video players, 3D product models, and augmented reality experiences. Create immersive product storytelling that drives engagement and builds emotional connections with consumers."})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-green-500 to-emerald-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Ft,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"Progressive Web App"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Deliver app-like experiences through the web browser. Enable offline access, home screen installation, push notifications, and native-feeling performance without requiring app store distribution."})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-orange-500 to-red-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Zs,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"Built-in Analytics"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Track engagement metrics, conversion funnels, and user journey paths without additional setup. Export comprehensive reports, visualise performance trends, and gain actionable insights to inform strategy."})]}),s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-indigo-500 to-purple-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(Tt,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:"Compliance & Accessibility"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"GDPR-ready data handling, accessibility best-practice support, cookie consent management, and data privacy controls. Designed to help you meet regulatory requirements across global markets without additional development."})]})]})]})]})})},MU={"ai-portals":["Automatic portal creation from Syndigo data","No design skills needed - AI handles it","Launch thousands of products in minutes"],engagement:["Direct customer connection at point of product","Built-in commerce and subscription tools","Every scan builds your customer database"],analytics:["See exactly how customers interact with products","Real-time data across all touchpoints","Insights that drive actual business decisions"],authenticity:["Instant verification for customers","Counterfeiters can't replicate it","Grey market visibility and control"],tagging:["QR codes, NFC, woven labels - your choice","One product, multiple entry points","Works with existing packaging workflows"],"industry-solutions":["Pre-built templates for your sector","Compliance requirements handled","Best practices baked in"]},Qo=({variant:e})=>{const t=MU[e];return s.jsx("section",{className:"py-10 px-6 bg-gradient-to-b from-transparent to-black/30",children:s.jsxs("div",{className:"container mx-auto max-w-6xl",children:[s.jsx("div",{className:"text-center mb-6",children:s.jsx("h3",{className:"text-2xl font-bold text-white",children:"Why SmartLinks"})}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mb-8",children:t.map((n,r)=>s.jsxs("div",{className:"flex items-center gap-3 group bg-white/5 backdrop-blur-sm rounded-xl p-4 border border-white/10",children:[s.jsx("div",{className:"w-6 h-6 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-full flex items-center justify-center flex-shrink-0",children:s.jsx(En,{className:"w-4 h-4 text-white",strokeWidth:3})}),s.jsx("span",{className:"text-sm md:text-base font-medium text-white group-hover:text-cyan-400 transition-colors",children:n})]},r))}),s.jsx("div",{className:"text-center",children:s.jsxs("div",{className:"inline-flex items-center gap-3 bg-gradient-to-r from-cyan-500/20 to-purple-500/20 border border-cyan-500/30 rounded-full px-6 py-3",children:[s.jsx(ke,{className:"w-5 h-5 text-cyan-400"}),s.jsx("span",{className:"text-lg font-semibold bg-gradient-to-r from-cyan-400 to-purple-400 bg-clip-text text-transparent",children:"Transform Your Product Experiences Today"}),s.jsx(ke,{className:"w-5 h-5 text-purple-400"})]})})]})})},LU=()=>{const e=[{icon:lx,title:"On the Product",description:"Scan any product â current or discontinued â and get the right information. QR codes and NFC tags link directly to the product's permanent digital home."},{icon:Ln,title:"On the Web",description:"Every product gets a dedicated, SEO-optimised page. Your full catalogue â searchable, browsable, current and historical. A living resource for owners, secondhand buyers, and gift recipients."},{icon:xs,title:"On AI",description:"Product manuals and specs converted to structured RAG data and MCP-compatible feeds. When customers ask ChatGPT about your product, it answers with your verified data â not hallucinations."}],t=[{icon:X6,title:"The Wayback Machine for Products",description:"Every product gets a permanent digital home â persisted for the lifetime of the product, even years after discontinuation. No more 404s when a product is delisted. Previous models promote upgrades, trade-ins, and current-season alternatives, turning archive pages into revenue."},{icon:nn,title:"B2B & D2C Ready",description:"Whether you're a manufacturer supporting trade customers with technical specs, SDSs, and installation guides â or a consumer brand providing c
952are instructions, warranty, and accessories â the Hub adapts to both models."},{icon:Zu,title:"Product-Centric, Not Transaction-Centric",description:"CRMs organise around customers. E-commerce organises around transactions. Helpdesks organise around tickets. The Hub organises around the product â the only platform built this way. It connects to Syndigo PIM data and can be live in under an hour."},{icon:Jt,title:"AI-Ready Data Syndication",description:"A new syndication channel for Syndigo: from PIM to AI. Product manuals and documentation parsed into structured Markdown, RAG-ready content, and MCP-compatible feeds â so AI assistants answer with Syndigo's verified data."}],n=[{icon:$a,label:"Lifetime persistence",detail:"Products live on after discontinuation"},{icon:Ln,label:"50+ languages",detail:"Conditional multi-language content"},{icon:tn,label:"PIM-powered",detail:"Direct Syndigo data integration"},{icon:Ps,label:"Modular micro apps",detail:"Extend with any functionality"},{icon:R_,label:"Always current",detail:"Real-time sync with source data"}];return s.jsx("section",{className:"py-16 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"The Digital Twin of Every Product"}),s.jsx("h2",{className:"text-4xl md:text-5xl font-bold text-white mb-4",children:"SmartLinks Hub"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto leading-relaxed",children:"The single source of product truth for Syndigo customers. Every product they sell â and every product they've ever sold â gets a permanent digital home, served through three channels so customers always find the right information, however they search."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-6 mb-12",children:e.map((r,i)=>s.jsxs("div",{className:"bg-gradient-to-br from-cyan-500/10 to-blue-500/10 border border-cyan-500/20 rounded-xl p-6 text-center hover:border-cyan-500/40 transition-all duration-300",children:[s.jsx("div",{className:"w-14 h-14 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(r.icon,{className:"w-7 h-7 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:r.title}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:r.description})]},i))}),s.jsx("div",{className:"grid md:grid-cols-2 gap-8 mb-12",children:t.map((r,i)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 hover:border-cyan-500/20 transition-all duration-300",children:[s.jsx("div",{className:"w-14 h-14 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-xl flex items-center justify-center mb-5",children:s.jsx(r.icon,{className:"w-7 h-7 text-white"})}),s.jsx("h3",{className:"text-xl font-bold text-white mb-3",children:r.title}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:r.description})]},i))}),s.jsx("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl border border-white/10 p-6 mb-8",children:s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-5 gap-4",children:n.map((r,i)=>s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-10 h-10 bg-cyan-500/20 rounded-lg flex items-center justify-center mx-auto mb-2",children:s.jsx(r.icon,{className:"w-5 h-5 text-cyan-400"})}),s.jsx("p",{className:"text-white font-medium text-sm",children:r.label}),s.jsx("p",{className:"text-white/50 text-xs",children:r.detail})]},i))})}),s.jsx("div",{className:"text-center",children:s.jsxs("a",{href:"https://smartlinks.app/solutions/hub",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-6 py-3 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-full text-white font-medium hover:opacity-90 transition-opacity",children:[s.jsx("span",{children:"Explore the SmartLinks Hub Platform"}),s.jsx(Pk,{className:"w-4 h-4"})]})}),s.jsxs("div",{className:"mt-12",children:[s.jsx("h3",{className:"text-2xl font-bold text-white mb-6 text-center",children:"How Syndigo Customers Use the Hub"}),s.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[s.jsxs("div",{className:"bg-white/5 rounded-xl p-6 border border-white/10",children:[s.jsx("div",{className:"text-2xl mb-3",children:"ð§"}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Electronics Manufacturer"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Product discontinued 3 years ago? The Hub still serves the owner with manuals, firmware updates, and troubleshooting. ChatGPT also answers correctly because the data is LLM-optimised."})]}),s.jsxs("div",{className:"bg-white/5 rounded-xl p-6 border border-white/10",children:[s.jsx("div",{className:"text-2xl mb-3",children:"ð"}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Fashion Brand (D2C)"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Every garment's Hub page shows care instructions, material provenance, and repair services. Last season's collection promotes this season's â turning archive pages into revenue."})]}),s.jsxs("div",{className:"bg-white/5 rounded-xl p-6 border border-white/10",children:[s.jsx("div",{className:"text-2xl mb-3",children:"ð"}),s.jsx("h4",{className:"text-white font-bold mb-2",children:"Industrial B2B Supplier"}),s.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Trade customers scan a component to access technical specs, safety data sheets, and installation guides â all from a single persistent URL, searchable on the web and via AI."})]})]})]})]})})},IU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Product Portal Creation | SmartLinks x Syndigo",description:"Transform Syndigo PIM data into engaging product portals at scale with powerful automation and drag-and-drop simplicity.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/ai-portals",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/ai-portals",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Product Portals",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/ai-portals"}]}
952),s.jsxs(ma,{prevPage:{title:"Overview",path:"/syndigo-partnership"},nextPage:{title:"Engagement Tools",path:"/syndigo-partnership/engagement"},children:[s.jsx(DU,{}),s.jsx(LU,{}),s.jsx(Qo,{variant:"ai-portals"})]})]}),OU=()=>{const e=[{icon:ii,title:"Real-Time Data",description:"Live scan metrics"},{icon:Ln,title:"Global Insights",description:"Worldwide coverage"},{icon:Tt,title:"Privacy First",description:"GDPR compliant"},{icon:rr,title:"Instant Reports",description:"No delays"}],t=[{icon:dt,title:"Consumer Behaviour Intelligence",description:"Deep insights into how customers discover, interact with, and engage with your products across every touchpoint.",features:["Scan patterns and frequency analysis","Content engagement heatmaps","Customer journey mapping","Repeat engagement tracking"],gradient:"from-cyan-500 to-blue-500"},{icon:Rk,title:"Geographic & Market Intelligence",description:"Visualise where your products are being scanned globally to identify emerging markets and distribution patterns.",features:["Real-time global scan mapping","Regional engagement comparisons","Market penetration analysis","Grey market detection alerts"],gradient:"from-purple-500 to-pink-500"},{icon:Zs,title:"Predictive Analytics",description:"Leverage historical data and AI-powered insights to forecast demand, identify trends, and anticipate market shifts.",features:["Demand forecasting models","Trend identification algorithms","Seasonal pattern recognition","Inventory optimisation signals"],gradient:"from-orange-500 to-red-500"}],n=[{title:"Product Performance",insights:["Which products generate the most engagement","Content types that drive conversions","Optimal times for customer engagement","Cross-sell and upsell opportunities"]},{title:"Customer Understanding",insights:["Customer demographic patterns","Device and platform preferences","Language and regional preferences","Repeat engagement behaviour"]},{title:"Market Intelligence",insights:["Geographic distribution of engagement","Emerging market identification","Competitive positioning signals","Distribution channel effectiveness"]}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-blue-500/20 text-blue-400 rounded-full text-sm font-medium mb-4",children:"Analytics & Intelligence"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"Intelligence with"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-blue-400 mb-6",children:"Every Interaction"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"Every scan, click, and interaction generates valuable data. SmartLinks transforms this raw information into actionable business intelligence that drives strategic decisions and measurable results."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:e.map((r,i)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(r.icon,{className:"w-5 h-5 text-blue-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:r.title}),s.jsx("div",{className:"text-white/60 text-xs",children:r.description})]})]},i))})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-full max-w-xl",children:s.jsx(he,{src:"/lovable-uploads/sonika-speaker-portal.png",alt:"Sonika wireless speaker with SmartLinks product tag and mobile interface showing exclusive offers, product registration, owner's manual, and customer support",className:"w-full h-auto rounded-2xl"})})})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"Analytics Capabilities"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Comprehensive Data Intelligence"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"From real-time engagement metrics to predictive market intelligence, get the insights you need to make informed decisions."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:t.map((r,i)=>s.jsxs("div",{className:"group bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${r.gradient} rounded-xl flex items-center justify-center mb-6 group-hover:scale-110 transition-transform`,children:s.jsx(r.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h4",{className:"text-2xl font-bold text-white mb-3",children:r.title}),s.jsx("p",{className:"text-white/70 mb-6 leading-relaxed",children:r.description}),s.jsx("ul",{className:"space-y-3",children:r.features.map((a,o)=>s.jsxs("li",{className:"flex items-start gap-3 text-white/60 text-sm",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{children:a})]},o))})]},i))})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"Business Insights"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Actionable Intelligence"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Transform raw data into strategic insights that drive business outcomes."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-6",children:n.map((r,i)=>s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/80 to-slate-900/80 rounded-2xl p-6 border border-white/10",children:[s.jsx("h4",{className:"text-xl font-bold text-white mb-4",children:r.title}),s.jsx("ul",{className:"space-y-3",children:r.insights.map((a,o)=>s.jsxs("li",{className:"flex items-start gap-3 text-white/70 text-sm",children:[s.jsx(t_,{className:"w-4 h-4 text-purple-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{children:a})]},o))})]},i))})]}),s.jsxs("div",{className:"bg-gradient-to-r from-blue-500/20 to-purple-500/20 border border-blue-500/30 rounded-2xl p-8 max-w-4xl mx-auto text-center",children:[s.jsx(s_,{className:"w-12 h-12 text-blue-400 mx-auto mb-4"}),s.jsx("h4",{className:"text-2xl font-bold text-white mb-4",children:"Every Scan Tells a Story"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed max-w-2xl mx-auto",children:"Unlock the power of connected product data. From consumer behaviour insights to predictive market intelligence, SmartLinks analytics transform every interaction into strategic advantage."})]})]})})},FU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Analytics Intelligence | SmartLinks x Syndigo",description:"Transform product interactions into actionable business intelligence with comprehensive analytics and real-time insights.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/analytics",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/analytics",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Analytics Intelligence",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/analytics"}]}
952),s.jsxs(ma,{prevPage:{title:"Engagement Tools",path:"/syndigo-partnership/engagement"},nextPage:{title:"Authenticity",path:"/syndigo-partnership/authenticity"},children:[s.jsx(OU,{}),s.jsx(Qo,{variant:"analytics"})]})]}),$U=()=>{const e=[{icon:rr,title:"Instant Activation",description:"Scan to engage"},{icon:Ln,title:"Global Reach",description:"180+ countries"},{icon:Ft,title:"No App Required",description:"Works instantly"},{icon:Zs,title:"Drive Revenue",description:"Convert browsers"}],t=[{icon:T0,title:"Direct Commerce Integration",bullets:["Direct links to e-commerce platforms","Instant purchasing capabilities","Seamless checkout experiences"]},{icon:Tk,title:"Promotional Campaigns",bullets:["Targeted promotions and exclusive discounts","Personalised offers by behaviour and location","Drive conversions with limited-time offers"]},{icon:P0,title:"Loyalty Programme Integration",bullets:["Connect to loyalty and reward schemes","Earn points through product interactions","Unlock exclusive content and benefits"]},{icon:U_,title:"Rich Media Content",bullets:["Embed videos, tutorials, and demonstrations","Showcase products in action","Share brand stories and educational content"]},{icon:Co,title:"Dynamic Content Delivery",bullets:["Context-aware content by location and language","Personalised based on customer interactions","Relevant information for specific needs"]},{icon:I_,title:"Social Sharing Features",bullets:["Share products and experiences on social media","Turn customers into brand advocates","Amplify organic reach with user content"]},{icon:J6,title:"Gamification Elements",bullets:["Interactive challenges and quizzes","Reward mechanisms for engagement","Memorable brand experiences"]},{icon:k_,title:"Direct Customer Communication",bullets:["Two-way communication channels","Collect feedback and answer questions","Build relationships through messaging"]}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-orange-500/20 text-orange-400 rounded-full text-sm font-medium mb-4",children:"Customer Engagement"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"From Compliance"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-orange-400 mb-6",children:"To Opportunity"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"Digital Product Passports shouldn't be mere regulatory boxes to tick. SmartLinks transforms mandatory compliance into powerful customer engagement that drives sales and builds loyalty."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:e.map((n,r)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(n.icon,{className:"w-5 h-5 text-orange-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:n.title}),s.jsx("div",{className:"text-white/60 text-xs",children:n.description})]})]},r))})]}),s.jsx("div",{className:"flex items-center justify-start overflow-x-clip",children:s.jsx("div",{className:"w-[140%] flex-shrink-0 -mr-[40%]",children:s.jsx(he,{src:"/lovable-uploads/syndigo-engagement-hero-2.webp",alt:"SmartLinks product engagement showcase featuring multiple product portals with commerce, loyalty, and interactive content capabilities",className:"w-full h-auto"})})})]}),s.jsx("div",{className:"mb-16 max-w-5xl mx-auto",children:s.jsxs("div",{className:"mb-12",children:[s.jsx("h3",{className:"text-4xl font-bold text-white mb-6 text-center",children:"Transform Products into Dynamic Engagement Hubs"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed mb-6",children:"Think of SmartLinks as the Linktree for physical products, but significantly more powerful. Rather than simply listing links, we create comprehensive product ecosystems that blend compliance information with compelling content, commerce opportunities, and customer engagement tools."}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:"Each product portal becomes a dynamic hub where customers can discover product information, watch demonstrations, make purchases, join loyalty programmes, share experiences, and interact with your brandâall from a single scan."})]})}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6 mb-16",children:t.map((n,r)=>{const i=["from-orange-500 via-red-500 to-pink-500","from-cyan-500 via-blue-500 to-purple-500","from-green-500 via-emerald-500 to-teal-500","from-yellow-500 via-orange-500 to-red-500","from-purple-500 via-pink-500 to-rose-500","from-blue-500 via-indigo-500 to-violet-500","from-teal-500 via-cyan-500 to-sky-500","from-rose-500 via-red-500 to-orange-500"],a=i[r%i.length];return s.jsxs("div",{className:"group relative rounded-2xl p-[1px] bg-gradient-to-br from-white/20 via-white/5 to-transparent hover:from-white/40 hover:via-white/10 transition-all duration-500",children:[s.jsx("div",{className:`absolute inset-0 rounded-2xl bg-gradient-to-r ${a} opacity-0 group-hover:opacity-20 blur-xl transition-opacity duration-500`}),s.jsxs("div",{className:"relative bg-gradient-to-br from-slate-900/90 via-slate-800/90 to-slate-900/90 backdrop-blur-xl rounded-2xl p-6 h-full overflow-hidden",children:[s.jsx("div",{className:`absolute -top-12 -right-12 w-32 h-32 bg-gradient-to-br ${a} opacity-10 rounded-full blur-2xl group-hover:opacity-20 transition-opacity duration-500`}),s.jsxs("div",{className:"relative mb-5",children:[s.jsx("div",{className:`w-14 h-14 roun
952ded-xl bg-gradient-to-r ${a} p-[2px] group-hover:scale-110 transition-transform duration-300`,children:s.jsx("div",{className:"w-full h-full bg-slate-900 rounded-[10px] flex items-center justify-center",children:s.jsx(n.icon,{className:"w-7 h-7 text-white"})})}),s.jsx("div",{className:`absolute inset-0 w-14 h-14 rounded-xl bg-gradient-to-r ${a} opacity-0 group-hover:opacity-40 group-hover:animate-ping`})]}),s.jsx("h3",{className:"text-lg font-bold text-white mb-4 group-hover:text-transparent group-hover:bg-clip-text group-hover:bg-gradient-to-r group-hover:from-white group-hover:to-white/80 transition-all duration-300",children:n.title}),s.jsx("ul",{className:"space-y-3",children:n.bullets.map((o,l)=>s.jsxs("li",{className:"flex items-start gap-3 text-white/70 text-sm group-hover:text-white/80 transition-colors duration-300",children:[s.jsx("div",{className:`w-1.5 h-1.5 bg-gradient-to-r ${a} rounded-full mt-1.5 flex-shrink-0 group-hover:scale-125 transition-transform duration-300`}),s.jsx("span",{children:o})]},l))}),s.jsx("div",{className:`absolute bottom-0 left-0 right-0 h-[2px] bg-gradient-to-r ${a} opacity-0 group-hover:opacity-100 transition-opacity duration-500`})]})]},r)})}),s.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-16",children:[s.jsxs("div",{className:"bg-gradient-to-br from-green-500/20 to-emerald-500/20 border border-green-500/30 rounded-xl p-6",children:[s.jsx("h4",{className:"text-xl font-bold text-white mb-3",children:"Product Launch"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Generate buzz with exclusive early access, limited-time offers, and behind-the-scenes content that rewards engaged customers."})]}),s.jsxs("div",{className:"bg-gradient-to-br from-blue-500/20 to-cyan-500/20 border border-blue-500/30 rounded-xl p-6",children:[s.jsx("h4",{className:"text-xl font-bold text-white mb-3",children:"Seasonal Campaign"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Drive sales during key periods with themed content, special promotions, and time-sensitive offers delivered through product portals."})]}),s.jsxs("div",{className:"bg-gradient-to-br from-purple-500/20 to-pink-500/20 border border-purple-500/30 rounded-xl p-6",children:[s.jsx("h4",{className:"text-xl font-bold text-white mb-3",children:"Customer Retention"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Build loyalty through exclusive member content, rewards programmes, and personalised experiences that keep customers engaged long after purchase."})]})]}),s.jsxs("div",{className:"bg-gradient-to-r from-orange-500/20 to-red-500/20 border border-orange-500/30 rounded-xl p-8 max-w-4xl mx-auto",children:[s.jsx("h4",{className:"text-2xl font-bold text-white mb-4",children:"Revenue Impact"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:"By transforming compliance requirements into engagement opportunities, brands turn cost centres into revenue drivers. Every mandatory DPP becomes a potential touchpoint for sales, marketing, and customer relationship building."})]})]})})},BU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Engagement Tools | SmartLinks x Syndigo",description:"Transform DPP compliance into revenue-generating opportunities with comprehensive customer engagement tools and commerce integration.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/engagement",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/engagement",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Engagement Tools",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/engagement"}]}),s.jsxs(ma,{prevPage:{title:"Product Portals",path:"/syndigo-partnership/ai-portals"},nextPage:{title:"Analytics Intelligence",path:"/syndigo-partnership/analytics"},children:[s.jsx($U,{}),s.jsx(Qo,{variant:"engagement"})]})]}),zU=()=>{const e=[{icon:Ss,name:"Consumer Goods",link:"https://smartlinks.app/solutions/home",challenge:"Diverse product categories require flexible solutions that can adapt to varying regulatory requirements and customer expectations.",solution:"Flexible, scalable platform that adapts to any product category, from compliance documentation to brand storytelling and customer engagement.",benefits:["One platform for all product categories","Adapt quickly to changing regulations","Consistent brand experience across portfolio"],gradient:"from-indigo-500 to-violet-500"},{icon:qc,name:"Fashion & Apparel",link:"https://smartlinks.app/solutions/apparel",challenge:"EU Digital Product Passport regulations require detailed material composition, care instructions, and supply chain transparency.",s
952olution:"Transform mandatory DPP information into engaging brand stories with material sourcing, sustainability credentials, styling tips, and exclusive member rewards.",benefits:["Meet ESPR compliance whilst building brand loyalty","Reduce returns through detailed care information","Drive repeat purchases with styling recommendations"],gradient:"from-purple-500 to-pink-500"},{icon:y_,name:"Electronics & Technology",link:"https://smartlinks.app/solutions/electrical",challenge:"Complex products require detailed specifications, setup guides, warranty information, and ongoing support throughout the product lifecycle.",solution:"Create comprehensive product hubs with setup videos, troubleshooting guides, software updates, and offer extended warranties and accessories directly.",benefits:["Reduce support costs through self-service resources","Drive accessory and upgrade sales","Extend customer relationships beyond initial purchase"],gradient:"from-blue-500 to-cyan-500"},{icon:E0,name:"Home & Garden",link:"https://smartlinks.app/solutions/garden-diy",challenge:"Products require assembly instructions, maintenance guides, and ongoing care information that customers need to reference repeatedly.",solution:"Provide always-accessible digital manuals, maintenance schedules, video tutorials, and enable warranty registration and spare parts ordering.",benefits:["Eliminate printed manual costs","Drive spare parts and maintenance product sales","Build long-term customer relationships"],gradient:"from-orange-500 to-amber-500"},{icon:Z6,name:"Batteries & Industrial",link:"https://smartlinks.app/solutions/industrial/batteries",challenge:"Battery regulations demand detailed lifecycle data, recycling information, and safety documentation. Industrial products require comprehensive compliance and traceability.",solution:"Deliver complete battery passport compliance with safety data, recycling instructions, and supply chain transparency. Provide industrial product documentation, certifications, and maintenance guides in one unified portal.",benefits:["Meet EU Battery Regulation requirements","Streamline compliance documentation","Enable circular economy initiatives"],gradient:"from-yellow-500 to-orange-500"},{icon:Y6,name:"Consumables",link:"https://smartlinks.app/solutions/food-beverage",challenge:"Consumers demand transparency about ingredients, allergens, sourcing, and authenticity across food, beverage, beauty, and personal care products.",solution:"Create engaging experiences with ingredient transparency, usage instructions, sourcing stories, recipe ideas, and authenticity verification. Connect customers to loyalty programmes, subscriptions, and personalized recommendations.",benefits:["Build trust through transparency and traceability","Combat counterfeiting with verification features","Drive subscriptions and recurring revenue"],gradient:"from-green-500 to-emerald-500"}],t=[{icon:cx,title:"Global Cloud Infrastructure & Scalability",bullets:["Enterprise-grade cloud with automatic scaling","Global CDN across 180+ countries","No limits on products, portals, or users","Seamless growth from pilot to millions of SKUs","Multi-language support for 50+ languages"]},{icon:th,title:"Enterprise Security & Governance",bullets:["GDPR compliant with industry security standards","Regular penetration testing and encrypted data","Role-based access controls and team workspaces","Approval workflows for complex organizations","Comprehensive audit logging"]},{icon:e_,title:"Analytics & Business Intelligence",bullets:["Custom reporting dashboards","Scheduled reports and data exports","Business intelligence tool integration","Custom visualizations and real-time analytics","Actionable insights across product portfolio"]}],n=[{icon:cx,title:"Enterprise Scale",description:"Global infrastructure that scales from pilot to millions of SKUs"},{icon:o_,title:"API Integration",description:"Seamless connection with Syndigo's PIM infrastructure"},{icon:Zs,title:"Revenue Growth",description:"Transform compliance into revenue opportunities"},{icon:th,title:"Global Compliance",description:"Meet regulatory requirements across all markets"}];return s.jsx("section",{className:"py-20 px-6 bg-black/20",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-green-500/20 text-green-400 rounded-full text-sm font-medium mb-4",children:"Industry Solutions"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"Tailored for"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-green-400 mb-6",children:"Every Industry"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"SmartLinks delivers tailored solutions for every industry, backed by enterprise-grade infrastru
952cture that scales from pilot programmes to global deploymentsâpowered by robust API integration with Syndigo's PIM infrastructure."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:n.map((r,i)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(r.icon,{className:"w-5 h-5 text-green-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:r.title}),s.jsx("div",{className:"text-white/60 text-xs",children:r.description})]})]},i))})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-full max-w-lg",children:s.jsx(he,{src:"/lovable-uploads/power-drill-portal.png",alt:"SmartLinks Industry Solutions portal showing product experience across multiple industries",className:"w-full h-auto rounded-2xl"})})})]}),s.jsx("div",{className:"mb-16 bg-gradient-to-br from-green-500/10 to-emerald-500/10 rounded-3xl p-8 md:p-10 border border-green-500/20",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-8 items-center",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-green-500/20 text-green-400 rounded-full text-sm font-medium mb-4",children:"Food & Beverage"}),s.jsx("h3",{className:"text-3xl font-bold text-white mb-4",children:"Where Transparency Meets Taste"}),s.jsx("p",{className:"text-white/70 mb-6 leading-relaxed",children:"Transform every product into a gateway for recipes, provenance stories, and loyalty rewards. Give consumers the transparency they demand while driving repeat purchases."}),s.jsxs("div",{className:"grid sm:grid-cols-2 gap-4 mb-6",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-green-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(z_,{className:"w-5 h-5 text-green-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Recipes & Pairings"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Inspire with meal ideas and serving suggestions"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-green-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(P0,{className:"w-5 h-5 text-green-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Allergen Transparency"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Clear info beyond the label"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-green-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Po,{className:"w-5 h-5 text-green-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Provenance Stories"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Farm-to-table traceability"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-green-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Tk,{className:"w-5 h-5 text-green-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Promotions & Loyalty"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Seasonal offers and rewards"})]})]})]}),s.jsxs(ve,{to:"/food-beverages",className:"inline-flex items-center gap-2 text-green-400 hover:text-green-300 font-semibold transition-colors",children:["Explore F&B Solutions",s.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 8l4 4m0 0l-4 4m4-4H3"})})]})]}),s.jsx("div",{className:"flex justify-center",children:s.jsx(he,{src:"/lovable-uploads/pasta-sauce-portal.png",alt:"SmartLinks Food & Beverage portal showing pasta sauce product with recipes, ingredients, and promotional offers",className:"w-full max-w-sm rounded-2xl shadow-2xl"})})]})}),s.jsx("div",{className:"mb-16 bg-gradient-to-br from-purple-500/10 to-pink-500/10 rounded-3xl p-8 md:p-10 border border-purple-500/20",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-8 items-center",children:[s.jsx("div",{className:"order-2 lg:order-1 flex justify-center",children:s.jsx(he,{src:"/lovable-uploads/trainer-portal-hero.png",alt:"SmartLinks Fashion portal showing RUNPRO trainer with digital product passport, care instructions, and sustainability info",className:"w-full max-w-sm rounded-2xl shadow-2xl"})}),s.jsxs("div",{className:"order-1 lg:order-2",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium",children:"Fashion & Apparel"}),s.jsxs("span",{className:"inline-flex items-center gap-1 px-3 py-1 bg-amber-500/20 text-amber-400 rounded-full text-xs font-bold",children:[s.jsx($a,{className:"w-3 h-3"}),"ESPR 2026"]}
952)]}),s.jsx("h3",{className:"text-3xl font-bold text-white mb-4",children:"Compliance That Creates Value"}),s.jsx("p",{className:"text-white/70 mb-6 leading-relaxed",children:"Don't just meet EU ESPR requirementsâuse Digital Product Passports to build brand loyalty, reduce returns, and enable circular economy initiatives."}),s.jsxs("div",{className:"grid sm:grid-cols-2 gap-4 mb-6",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-purple-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Es,{className:"w-5 h-5 text-purple-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Digital Care Labels"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Instructions that never fade"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-purple-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Po,{className:"w-5 h-5 text-purple-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Material Transparency"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Supply chain visibility"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-purple-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Mk,{className:"w-5 h-5 text-purple-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Circular Economy"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Enable resale & recycling"})]})]}),s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"w-10 h-10 bg-purple-500/20 rounded-lg flex items-center justify-center flex-shrink-0",children:s.jsx(Zu,{className:"w-5 h-5 text-purple-400"})}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-white font-semibold text-sm",children:"Styling & Cross-Sell"}),s.jsx("p",{className:"text-white/60 text-xs",children:"Outfit suggestions & upsells"})]})]})]}),s.jsxs(ve,{to:"/clothing-apparel",className:"inline-flex items-center gap-2 text-purple-400 hover:text-purple-300 font-semibold transition-colors",children:["Explore Apparel Solutions",s.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 8l4 4m0 0l-4 4m4-4H3"})})]})]})]})}),s.jsxs("div",{className:"mb-20",children:[s.jsx("h3",{className:"text-3xl font-bold text-white mb-12 text-center",children:"Tailored Solutions for Your Industry"}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-8",children:e.map((r,i)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-12 h-12 bg-gradient-to-r ${r.gradient} rounded-lg flex items-center justify-center mb-4`,children:s.jsx(r.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-xl font-bold text-white mb-3",children:r.name}),s.jsx("p",{className:"text-white/60 text-sm mb-3 font-semibold",children:"The Challenge:"}),s.jsx("p",{className:"text-white/70 text-sm mb-4 leading-relaxed",children:r.challenge}),s.jsx("p",{className:"text-white/60 text-sm mb-3 font-semibold",children:"The SmartLinks Solution:"}),s.jsx("p",{className:"text-white/70 text-sm mb-4 leading-relaxed",children:r.solution}),s.jsx("div",{className:"space-y-2 mb-6",children:r.benefits.map((a,o)=>s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsx("span",{className:"text-cyan-400 mt-1 text-xs",children:"â"}),s.jsx("span",{className:"text-white/80 text-sm",children:a})]},o))}),s.jsxs(ve,{to:r.link,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-cyan-400 hover:text-cyan-300 text-sm font-semibold transition-colors",children:["Discover More",s.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})})]})]},i))})]}),s.jsxs("div",{className:"bg-gradient-to-r from-cyan-500/10 to-blue-500/10 border border-cyan-500/20 rounded-2xl p-8 mb-16",children:[s.jsx("h3",{className:"text-2xl font-bold text-white mb-6 text-center",children:"Universal Benefits Across All Industries"}),s.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[s.jsxs("div",{children:[s.jsx("h4",{className:"text-lg font-bold text-white mb-3",children:"Revenue Impact"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Transform compliance requirements into revenue opportunities. Drive direct sales, subscriptions, and customer lifetime value through every product interaction."})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-lg font-bold text-white mb-3",children:"Brand Building"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Turn regulatory obligations into authentic brand storytelling opportunities. Build trust, transparency, and lasting customer relationships."})]}),s.jsxs("div",{children:[s.jsx("h4",{className:"text-lg font-bold text-white mb-3",children:"Competitive Advantage"}),s.jsx("p",{className:"text-white/70 leading-relaxed",children:"Lead your industry with innovative Digital Product Passports whilst competitors struggle with basic compliance. Be first to market with customer-centric solutions."})]})]})]}),s.jsxs("div",{className:"mb-16",children:[s.jsx("h3",{className:"text-3xl font-bold text-white mb-12 text-center",children:"Enterprise-Grade Infrastru
952cture"}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6 mb-12",children:t.map((r,i)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-lg flex items-center justify-center mb-4",children:s.jsx(r.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h3",{className:"text-lg font-bold text-white mb-3",children:r.title}),s.jsx("ul",{className:"space-y-2",children:r.bullets.map((a,o)=>s.jsxs("li",{className:"flex items-start gap-2 text-white/70 text-sm",children:[s.jsx("div",{className:"w-1 h-1 bg-cyan-400 rounded-full mt-2 flex-shrink-0"}),s.jsx("span",{children:a})]},o))})]},i))}),s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/40 to-slate-900/40 rounded-2xl p-8 md:p-12 border border-white/10",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("h4",{className:"text-3xl font-bold text-white mb-4",children:"From Compliance Requirement to Customer Connection"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"Regulatory standards are often seen as a necessary cost â another box to tick. SmartLinks transforms that investment into a powerful engagement channel."})]}),s.jsxs("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-6 mb-10",children:[s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-xl border border-white/10",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-purple-500 to-pink-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx("svg",{className:"w-6 h-6 text-white",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 8l4 4m0 0l-4 4m4-4H3"})})}),s.jsx("h5",{className:"text-xl font-bold text-white mb-2",children:"Extend"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Go beyond compliance data with brand storytelling, videos, and interactive content"})]}),s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-xl border border-white/10",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(rr,{className:"w-6 h-6 text-white"})}),s.jsx("h5",{className:"text-xl font-bold text-white mb-2",children:"Automate"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Connect to your PIM and product data systems for real-time, always-accurate information"})]}),s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-xl border border-white/10",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-orange-500 to-red-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(dt,{className:"w-6 h-6 text-white"})}),s.jsx("h5",{className:"text-xl font-bold text-white mb-2",children:"Engage"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Transform passive scans into active relationships with loyalty, reviews, and community"})]}),s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-xl border border-white/10",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-emerald-500 to-teal-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(u_,{className:"w-6 h-6 text-white"})}),s.jsx("h5",{className:"text-xl font-bold text-white mb-2",children:"Monetise"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Add commerce, promotions, and re-purchase flows to every product interaction"})]})]}),s.jsx("div",{className:"text-center",children:s.jsxs("div",{className:"inline-flex items-center gap-3 px-6 py-3 bg-gradient-to-r from-emerald-500/20 to-blue-500/20 rounded-full border border-emerald-500/30",children:[s.jsx(Zs,{className:"w-5 h-5 text-emerald-400"}),s.jsx("span",{className:"text-white font-medium",children:"Turn compliance costs into measurable customer engagement and revenue"})]})})]})]}),s.jsxs("div",{className:"bg-gradient-to-r from-cyan-500/10 to-blue-500/10 border border-cyan-500/20 rounded-2xl p-8 text-center",children:[s.jsx("h3",{className:"text-2xl font-bold text-white mb-4",children:"Ready to Transform Your Product Experience?"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed max-w-3xl mx-auto",children:"SmartLinks provides industry-specific solutions backed by enterprise infrastru
952cture and scalability. From pilot programmes to global rollouts, we're built to support your growth every step of the way."})]})]})})},UU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Industry Solutions | SmartLinks x Syndigo",description:"Tailored DPP solutions for every industry with enterprise-grade infrastructure. From fashion to electronics, scale from pilot to global deployment.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/industry-solutions",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/industry-solutions",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Industry Solutions",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/industry-solutions"}]}),s.jsxs(ma,{prevPage:{title:"Tagging Options",path:"/syndigo-partnership/tagging"},children:[s.jsx(zU,{}),s.jsx(Qo,{variant:"industry-solutions"})]})]}),VU=()=>{const e=[{icon:nt,title:"Serialised QR Codes",description:"Every product receives a unique identifier linking to its digital twin, enabling instant authenticity verification.",features:["Unique identifier per individual product unit","Batch and lot number integration","Manufacturing date and location tracking","Instant scan verification via smartphone"],gradient:"from-cyan-500 to-blue-500"},{icon:Ft,title:"NFC Authentication",description:"Premium authentication for high-value products using NFC tags with enhanced security and cryptographic protection.",features:["Tap-to-verify authentication without app","Secure NFC chip with unique signature","Encrypted secure element authentication","Works offline with cloud verification"],gradient:"from-purple-500 to-pink-500"},{icon:th,title:"Cryptographic Security",description:"Multi-layered security architecture making counterfeiting virtually impossible through software orchestration.",features:["424-bit unique chip identifiers","Challenge-response protocols","Immutable platform binding","Cryptographic signing verification"],gradient:"from-orange-500 to-red-500"}],t=[{step:1,title:"Customer Scans",description:"Customer scans product QR code or taps NFC tag using smartphone",detail:"Instant connection to product digital twin"},{step:2,title:"System Verifies",description:"Unique ID checked against database, scan location and history analysed",detail:"Authenticity status determined in milliseconds"},{step:3,title:"Customer Informed",description:"Clear confirmation of authenticity with product details and batch information",detail:"Trust built, engagement begins"},{step:4,title:"Red Flags Detected",description:"Suspicious patterns trigger alerts for potential counterfeits",detail:"Multiple scans, impossible locations, unknown IDs"}],n=[{icon:dx,text:"ID not found in database (fake code)"},{icon:Rk,text:"Multiple scans in impossible locations"},{icon:$a,text:"Scan velocity exceeds realistic patterns"},{icon:qh,text:"ID already registered to another customer"}],r=[{icon:He,text:"Verified authentic product confirmation"},{icon:Lb,text:"Batch information and manufacturing details"},{icon:Ft,text:"Add to digital wallet option"},{icon:$a,text:"Expiry reminders and renewal notifications"}],i=[{icon:T0,name:"Fashion & Luxury"},{icon:qr,name:"Electronics"},{icon:dt,name:"Beauty & Cosmetics"},{icon:da,name:"Food & Beverage"},{icon:Ln,name:"Pharmaceuticals"},{icon:Ps,name:"Consumer Goods"}],a=[{icon:Tt,title:"Multi-Layer Security",description:"QR + NFC + Crypto"},{icon:Ln,title:"Global Verification",description:"Works anywhere"},{icon:$a,title:"Instant Check",description:"Under 1 second"},{icon:Ft,title:"No App Required",description:"Scan & verify"}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"Product Authentication"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"Protect Your Brand"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-purple-400 mb-6",children:"Build Customer Trust"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"Combat counterfeiting and grey market diversion with advanced authentication technology. Every product verified through unique identifiers, protecting brand reputation and revenue."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:a.map((o,l)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(o.icon,{className:"w-5 h-5 text-purple-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:o.title}),s.jsx("div",{className:"text-white/60 text-xs",children:o.description})]})]},l))})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-[416px] h-[374px]",children:s.jsx(he,{src:"/lovable-uploads/syndigo-authenticity-hero.webp",alt:"SmartLinks multi-layer authentication technology featuring QR codes, NFC, fingerprint verification and cryptographic security",className:"w-full h-full object-cover rounded-2xl"})})})]}),s.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-20 max-w-4xl mx-auto",children:[s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-2xl border border-white/10",children:[s.jsx("div",{className:"text-4xl font-bold text-cyan-400 mb-2",children:"100%"}),s.jsx("div",{className:"text-white/70",children:"Product Traceability"})]}),s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-2xl border border-white/10",children:[s.jsx("div",{className:"text-4xl font-bold text-purple-400 mb-2",children:"<1s"}),s.jsx("div",{className:"text-white/70",children:"Verification Time"})]}),s.jsxs("div",{className:"text-center p-6 bg-white/5 rounded-2xl border border-white/10",children:[s.jsx("div",{className:"text-4xl font-bold text-orange-400 mb-2",children:"Multi-Layer"}),s.jsx("div",{className:"text-white/70",children:"Security Architecture"})]})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"Authentication Technology"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Multi-Layer Authentication Architecture"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Flexible authentication options tailored to product value, market r
952isk, and customer experience requirements."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-8",children:e.map((o,l)=>s.jsxs("div",{className:"group bg-white/5 backdrop-blur-sm rounded-2xl p-8 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:`w-16 h-16 bg-gradient-to-r ${o.gradient} rounded-xl flex items-center justify-center mb-6 group-hover:scale-110 transition-transform`,children:s.jsx(o.icon,{className:"w-8 h-8 text-white"})}),s.jsx("h4",{className:"text-2xl font-bold text-white mb-3",children:o.title}),s.jsx("p",{className:"text-white/70 mb-6 leading-relaxed",children:o.description}),s.jsx("ul",{className:"space-y-3",children:o.features.map((c,d)=>s.jsxs("li",{className:"flex items-start gap-3 text-white/60 text-sm",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 mt-0.5 flex-shrink-0"}),s.jsx("span",{children:c})]},d))})]},l))})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"How It Works"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Authentication Verification Flow"})]}),s.jsx("div",{className:"grid md:grid-cols-4 gap-6 max-w-5xl mx-auto",children:t.map((o,l)=>s.jsxs("div",{className:"relative",children:[s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/80 to-slate-900/80 rounded-2xl p-6 border border-white/10 h-full",children:[s.jsx("div",{className:"w-10 h-10 bg-gradient-to-r from-cyan-500 to-purple-500 rounded-full flex items-center justify-center mb-4 text-white font-bold",children:o.step}),s.jsx("h4",{className:"text-lg font-bold text-white mb-2",children:o.title}),s.jsx("p",{className:"text-white/70 text-sm mb-3",children:o.description}),s.jsxs("p",{className:"text-cyan-400 text-xs",children:["â ",o.detail]})]}),l<t.length-1&&s.jsx("div",{className:"hidden md:block absolute top-1/2 -right-3 w-6 h-[2px] bg-gradient-to-r from-cyan-500 to-purple-500"})]},l))})]}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 mb-20 max-w-5xl mx-auto",children:[s.jsxs("div",{className:"bg-gradient-to-br from-green-500/10 to-emerald-500/10 border border-green-500/30 rounded-2xl p-8",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[s.jsx("div",{className:"w-12 h-12 bg-green-500/20 rounded-xl flex items-center justify-center",children:s.jsx(He,{className:"w-6 h-6 text-green-400"})}),s.jsx("h4",{className:"text-2xl font-bold text-white",children:"Genuine Product"})]}),s.jsx("p",{className:"text-white/70 mb-6",children:"When verification succeeds, customers see:"}),s.jsx("ul",{className:"space-y-4",children:r.map((o,l)=>s.jsxs("li",{className:"flex items-center gap-3 text-white/80",children:[s.jsx(o.icon,{className:"w-5 h-5 text-green-400"}),s.jsx("span",{children:o.text})]},l))})]}),s.jsxs("div",{className:"bg-gradient-to-br from-red-500/10 to-orange-500/10 border border-red-500/30 rounded-2xl p-8",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[s.jsx("div",{className:"w-12 h-12 bg-red-500/20 rounded-xl flex items-center justify-center",children:s.jsx(dx,{className:"w-6 h-6 text-red-400"})}),s.jsx("h4",{className:"text-2xl font-bold text-white",children:"Counterfeit Detection"})]}),s.jsx("p",{className:"text-white/70 mb-6",children:"Warning signs that trigger alerts:"}),s.jsx("ul",{className:"space-y-4",children:n.map((o,l)=>s.jsxs("li",{className:"flex items-center gap-3 text-white/80",children:[s.jsx(o.icon,{className:"w-5 h-5 text-red-400"}),s.jsx("span",{children:o.text})]},l))})]})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-orange-500/20 text-orange-400 rounded-full text-sm font-medium mb-4",children:"Intelligence Layer"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"SmartLinks is the Orchestration Platform"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"Not just a tagâan orchestration platform that coordinates verification across multiple technologies, creating a singular signature that counterfeiters cannot replicate."})]}),s.jsx("div",{className:"bg-gradient-to-br from-slate-800/50 to-slate-900/50 rounded-2xl p-8 border border-white/10 max-w-4xl mx-auto",children:s.jsxs("div",{className:"grid md:grid-cols-3 gap-8",children:[s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-16 h-16 bg-gradient-to-r from-cyan-500 to-blue-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(Lb,{className:"w-8 h-8 text-white"})}),s.jsx("h5",{className:"text-lg font-bold text-white mb-2",children:"Cryptographic Identity"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Unique, factory-burned identifiers that cannot be cloned"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-16 h-16 bg-gradient-to-r from-purple-500 to-pink-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx(th,{className:"w-8 h-8 text-white"})}),s.jsx("h5",{className:"text-lg font-bold text-white mb-2",children:"Software Binding"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Immutable link between tag identity and product at registration"})]}),s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"w-16 h-16 bg-gradient-to-r from-orange-500 to-red-500 rounded-xl flex items-center justify-center mx-auto mb-4",children:s.jsx($a,{className:"w-8 h-8 text-white"})}),s.jsx("h5",{className:"text-lg font-bold text-white mb-2",children:"Temporal Verification"}),s.jsx("p",{className:"text-white/60 text-sm",children:"Every attempt logged with timestamp and location for anomaly detection"})]})]})})]}),s.jsxs("div",{className:"mb-16",children:[s.jsxs("div",{className:"text-center mb-10",children:[s.jsx("h3",{className:"text-3xl font-bold text-white mb-4",children:"Protecting Products Across Industries"}),s.jsx("p",{className:"text-white/70 text-lg",children:"Authentication solutions tailored to the unique challenges of each sector"})]}),s.jsx("div",{className:"flex flex-wrap justify-center gap-4 max-w-4xl mx-auto",children:i.map((o,l)=>s.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 bg-white/5 rounded-full border border-white/10 hover:bg-white/10 transition-colors",children:[s.jsx(o.icon,{className:"w-4 h-4 text-cyan-400"}),s.jsx("span",{className:"text-white/80 text-sm",children:o.name})]},l))})]}),s.jsxs("div",{className:"bg-gradient-to-r from-cyan-500/20 to-purple-500/20 border border-cyan-500/30 rounded-2xl p-8 max-w-4xl mx-auto text-center",children:[s.jsx(Tt,{className:"w-12 h-12 text-cyan-400 mx-auto mb-4"}),s.jsx("h4",{className:"text-2xl font-bold text-white mb-4",children:"Every Scan Proves It's Real"}),s.jsx("p",{className:"text-white/80 text-lg leading-relaxed max-w-2xl mx-auto",children:"Protect your brand reputation, combat counterfeiting, and build customer trust with authentication technology that scales from individual products to millions of units across global supply chains."})]})]})})},WU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Authenticity & Brand Protection | SmartLinks x Syndigo",description:"Combat counterfeiting with multi-layer authentication technology. Protect brand reputation and build customer trust with verified product authenticity.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/authenticity",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/authenticity",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Authenticity",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/authenticity"}]}
952),s.jsxs(ma,{prevPage:{title:"Analytics Intelligence",path:"/syndigo-partnership/analytics"},nextPage:{title:"Tagging Options",path:"/syndigo-partnership/tagging"},children:[s.jsx(VU,{}),s.jsx(Qo,{variant:"authenticity"})]})]}),HU=()=>{const e=[{icon:Tt,title:"DPP Ready",description:"EU regulation compliant"},{icon:Ln,title:"GS1 Digital Link",description:"Global standards"},{icon:He,title:"GDPR Compliant",description:"Privacy by design"},{icon:Ft,title:"No App Required",description:"Instant access"}],t=[{icon:nt,title:"Serialised QR Codes",description:"Cost-effective solution for high-volume products. Each code is unique and links to a dynamic digital experience.",features:["Unique identifier per product unit","Print directly on packaging or labels","Dynamic content updates","Sub-penny unit cost at scale"],bestFor:"FMCG, Food & Beverage, CPG",gradient:"from-cyan-500 to-blue-500",image:"/lovable-uploads/tagging-qr-codes.webp"},{icon:c_,title:"KeepTags NFC Cards",description:"Premium credit-card sized NFC cards that become collectible companions to products. Tap to unlock digital experiences.",features:["Credit card sized, durable design","NFC + QR dual access","Collectible and branded","Sustainable card options available"],bestFor:"Luxury, Premium, Collectibles",gradient:"from-purple-500 to-pink-500",image:"/lovable-uploads/tagging-nfc-cards.webp"},{icon:Es,title:"Woven & Printed Labels",description:"Integrate SmartLinks directly into existing care labels and hang tags. Seamless integration with current manufacturing.",features:["Woven QR integration","Care label compatible","Heat transfer options","No packaging changes required"],bestFor:"Fashion, Apparel, Textiles",gradient:"from-orange-500 to-red-500",image:"/lovable-uploads/tagging-woven-patch-nfc.webp"},{icon:Ft,title:"Embedded NFC Tags",description:"Hidden NFC chips embedded within products or packaging. Invisible authentication with premium tap-to-verify experience.",features:["Invisible integration","Cryptographic security","Tamper-evident options","Works through materials"],bestFor:"Electronics, High-Value Items",gradient:"from-green-500 to-emerald-500",image:"/lovable-uploads/tagging-embedded-nfc.webp?v=2"}],n=[{step:1,title:"Receive",description:"Tag included with product"},{step:2,title:"Tap or Scan",description:"NFC tap or scan QR code"},{step:3,title:"Experience",description:"Digital content loads instantly"},{step:4,title:"Connect",description:"Ongoing relationship with brand"}],r=["No app required","Works offline","Instant response","Secure & private"],i=[{icon:qc,title:"Fashion & Apparel",description:"Woven labels, hang tags, and care instructions with integrated authentication and styling guides.",examples:"Luxury fashion, streetwear, sustainable brands"},{icon:W_,title:"Food & Beverage",description:"Serialised QR codes on packaging linking to provenance, recipes, and authenticity verification.",examples:"Premium wines, craft spirits, specialty foods"},{icon:ke,title:"Beauty & Cosmetics",description:"Product authentication, usage guides, and refill reminders through scan-and-verify experiences.",examples:"Skincare, fragrances, premium cosmetics"},{icon:E_,title:"Pharmaceuticals",description:"Serialised verification for anti-counterfeiting, patient information, and regulatory compliance.",examples:"Prescription drugs, OTC medicines, supplements"},{icon:qr,title:"Electronics",description:"Embedded NFC for warranty registration, authenticity verification, and smart manuals.",examples:"Consumer electronics, components, accessories"},{icon:da,title:"Industrial & B2B",description:"Asset tracking, maintenance records, and compliance documentation through durable tagging.",examples:"Equipment, parts, industrial supplies"}];return s.jsx("section",{className:"py-20 px-6",children:s.jsxs("div",{className:"container mx-auto",children:[s.jsxs("div",{className:"grid md:grid-cols-2 gap-12 items-center mb-16",children:[s.jsxs("div",{children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-cyan-500/20 text-cyan-400 rounded-full text-sm font-medium mb-4",children:"Tagging Technology"}),s.jsx("h2",{className:"text-5xl md:text-6xl font-bold text-white mb-4",children:"Connect Every Product"}),s.jsx("h3",{className:"text-3xl md:text-4xl font-bold text-cyan-400 mb-6",children:"To Every Customer"}),s.jsx("p",{className:"text-white/80 text-xl leading-relaxed mb-8",children:"Flexible tagging options for every product type, price point, and industry. From seri
952alised QR codes to premium NFC cards, SmartLinks integrates seamlessly with Syndigo's product data ecosystem."}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:e.map((a,o)=>s.jsxs("div",{className:"flex items-center gap-3 p-3 bg-white/5 rounded-lg border border-white/10",children:[s.jsx(a.icon,{className:"w-5 h-5 text-cyan-400"}),s.jsxs("div",{children:[s.jsx("div",{className:"text-white font-medium text-sm",children:a.title}),s.jsx("div",{className:"text-white/60 text-xs",children:a.description})]})]},o))})]}),s.jsx("div",{className:"flex items-center justify-center",children:s.jsx("div",{className:"w-[416px] h-[374px]",children:s.jsx(he,{src:"/lovable-uploads/syndigo-tagging-hero.webp?v=6",alt:"SmartLinks Tagging Technology - QR codes, NFC chips, and smart labels",className:"w-full h-full object-cover rounded-2xl"})})})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"Technology Options"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Choose Your Tagging Technology"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Multiple tagging options to match your product strategy, budget, and customer experience requirements."})]}),s.jsx("div",{className:"grid md:grid-cols-2 gap-8",children:t.map((a,o)=>s.jsxs("div",{className:"group bg-white/5 backdrop-blur-sm rounded-2xl overflow-hidden border border-white/10 hover:bg-white/10 transition-all duration-300",children:[a.image?s.jsx("div",{className:"w-full h-48 overflow-hidden",children:s.jsx(he,{src:a.image,alt:a.title,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500"})}):s.jsx("div",{className:`w-full h-48 bg-gradient-to-br ${a.gradient} flex items-center justify-center`,children:s.jsx(a.icon,{className:"w-16 h-16 text-white/80"})}),s.jsxs("div",{className:"p-6",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[s.jsx("div",{className:`w-10 h-10 bg-gradient-to-r ${a.gradient} rounded-lg flex items-center justify-center flex-shrink-0`,children:s.jsx(a.icon,{className:"w-5 h-5 text-white"})}),s.jsx("h4",{className:"text-xl font-bold text-white",children:a.title})]}),s.jsx("p",{className:"text-white/70 mb-4 leading-relaxed text-sm",children:a.description}),s.jsx("ul",{className:"space-y-2 mb-4",children:a.features.map((l,c)=>s.jsxs("li",{className:"flex items-center gap-2 text-white/60 text-sm",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 flex-shrink-0"}),s.jsx("span",{children:l})]},c))}),s.jsxs("div",{className:"pt-4 border-t border-white/10",children:[s.jsx("span",{className:"text-xs text-white/50",children:"Best for: "}),s.jsx("span",{className:"text-cyan-400 text-sm",children:a.bestFor})]})]})]},o))})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-orange-500/20 text-orange-400 rounded-full text-sm font-medium mb-4",children:"Customer Journey"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"The SmartLinks Experience"})]}),s.jsxs("div",{className:"max-w-4xl mx-auto",children:[s.jsx("div",{className:"grid grid-cols-4 gap-4 mb-8",children:n.map((a,o)=>s.jsxs("div",{className:"relative",children:[s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/80 to-slate-900/80 rounded-2xl p-6 border border-white/10 text-center h-full",children:[s.jsx("div",{className:"w-10 h-10 bg-gradient-to-r from-cyan-500 to-purple-500 rounded-full flex items-center justify-center mx-auto mb-3 text-white font-bold",children:a.step}),s.jsx("h5",{className:"text-white font-bold mb-1",children:a.title}),s.jsx("p",{className:"text-white/60 text-sm",children:a.description})]}),o<n.length-1&&s.jsx("div",{className:"hidden md:block absolute top-1/2 -right-2 w-4 h-[2px] bg-gradient-to-r from-cyan-500 to-purple-500"})]},o))}),s.jsx("div",{className:"flex flex-wrap justify-center gap-4",children:r.map((a,o)=>s.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 bg-white/5 rounded-full border border-white/10",children:[s.jsx(He,{className:"w-4 h-4 text-green-400"}),s.jsx("span",{className:"text-white/80 text-sm",children:a})]},o))})]})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-purple-500/20 text-purple-400 rounded-full text-sm font-medium mb-4",children:"Industry Solutions"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Tailored for Every Industry"}),s.jsx("p",{className:"text-white/70 text-lg max-w-2xl mx-auto",children:"Tagging solutions designed for the unique requirements of each sector."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-6",children:i.map((a,o)=>s.jsxs("div",{className:"bg-white/5 backdrop-blur-sm rounded-2xl p-6 border border-white/10 hover:bg-white/10 transition-all duration-300",children:[s.jsx("div",{className:"w-12 h-12 bg-gradient-to-r from-cyan-500 to-purple-500 rounded-xl flex items-center justify-center mb-4",children:s.jsx(a.icon,{className:"w-6 h-6 text-white"})}),s.jsx("h4",{className:"text-xl font-bold text-white mb-2",children:a.title}),s.jsx("p",{className:"text-white/70 text-sm mb-4 leading-relaxed",children:a.description}),s.jsxs("div",{className:"pt-3 border-t border-white/10",children:[s.jsx("span",{className:"text-xs text-white/50",children:"Examples: "}),s.jsx("span",{className:"text-cyan-400 text-xs",children:a.examples})]})]},o))})]}),s.jsxs("div",{className:"mb-20",children:[s.jsxs("div",{className:"text-center mb-12",children:[s.jsx("span",{className:"inline-block px-4 py-1 bg-emerald-500/20 text-emerald-400 rounded-full text-sm font-medium mb-4",children:"Built on Global Standards"}),s.jsx("h3",{className:"text-4xl font-bold text-white mb-4",children:"Extend What You Already Have"}),s.jsx("p",{className:"text-white/70 text-lg max-w-3xl mx-auto",children:"SmartLinks is fully compatible with GS1 Digital Link and SmartLabel® â the established standards that retailers and regulators already trust. We don't replace these frameworks; we amplify them."})]}),s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 mb-12",children:[s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/60 to-slate-900/60 rounded-2xl p-8 border border-white/10",children:[s.jsxs("div",{className:"flex items-center gap-4 mb-4",children:[s.jsx("div",{className:"w-14 h-14 bg-emerald-500/20 rounded-xl flex items-center justify-center",children:s.jsx(Ln,{className:"w-7 h-7 text-emerald-400"})}),s.jsx("h4",{className:"text-2xl font-bold text-white",children:"GS1 Digital Link"})]}),s.jsx("p",{className:"text-white/70 mb-6",children:"The global standard for connecting physical products to digital information, trusted by retailers worldwide."}),s.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-emerald-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Universal compatibility"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-emerald-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Retailer-ready"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-emerald-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Future-proof"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-emerald-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Global resolver network"})]})]})]}),s.jsxs("div",{className:"bg-gradient-to-br from-slate-800/60 to-slate-900/60 rounded-2xl p-8 border border-white/10",children:[s.jsxs("div",{className:"flex items-center gap-4 mb-4",children:[s.jsx("div",{className:"w-14 h-14 bg-blue-500/20 rounded-xl flex items-center justify-center",children:s.jsx(Es,{className:"w-7 h-7 text-blue-400"})}),s.jsx("h4",{className:"text-2xl font-bold text-white",children:"SmartLabel®"})]}),s.jsx("p",{className:"text-white/70 mb-6",children:"The leading US transparency standard trusted by major retailers and brands for ingredient and product disclosure."}),s.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Major retailer ready"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"FDA & USDA compliant"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Consumer transparency"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(He,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}),s.jsx("span",{className:"text-white/80 text-sm",children:"Ingredient disclosure"})]})]})]})]})]})]})})},GU=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Tagging Options | SmartLinks x Syndigo",description:"Flexible tagging technologies for every product type. From seri
952alised QR codes to premium NFC cards, connect every product to digital experiences.",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/tagging",canonical:"https://smartlinks-public-site.lovable.app/syndigo-partnership/tagging",breadcrumbs:[{name:"Home",url:"https://smartlinks-public-site.lovable.app/"},{name:"Syndigo Partnership",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership"},{name:"Tagging Options",url:"https://smartlinks-public-site.lovable.app/syndigo-partnership/tagging"}]}),s.jsxs(ma,{prevPage:{title:"Authenticity",path:"/syndigo-partnership/authenticity"},nextPage:{title:"Industry Solutions",path:"/syndigo-partnership/industry-solutions"},children:[s.jsx(HU,{}),s.jsx(Qo,{variant:"tagging"})]})]}),$v=x.createContext({});function Bv(e){const t=x.useRef(null);return t.current===null&&(t.current=e()),t.current}const qU=typeof window<"u",I5=qU?x.useLayoutEffect:x.useEffect,Nm=x.createContext(null);function zv(e,t){e.indexOf(t)===-1&&e.push(t)}function gh(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const Ds=(e,t,n)=>n>t?t:n<e?e:n;let km=()=>{},Mo=()=>{};const Zr={},O5=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function F5(e){return typeof e=="object"&&e!==null}const $5=e=>/^0[^.\s]+$/u.test(e);function B5(e){let t;return()=>(t===void 0&&(t=e()),t)}const An=e=>e,KU=(e,t)=>n=>t(e(n)),cd=(...e)=>e.reduce(KU),Tc=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class Uv{constructor(){this.subscriptions=[]}add(t){return zv(this.subscriptions,t),()=>gh(this.subscriptions,t)}notify(t,n,r){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](t,n,r);else for(let a=0;a<i;a++){const o=this.subscriptions[a];o&&o(t,n,r)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const en=e=>e*1e3,Cn=e=>e/1e3;function z5(e,t){return t?e*(1e3/t):0}const U5=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,QU=1e-7,YU=12;function XU(e,t,n,r,i){let a,o,l=0;do o=t+(n-t)/2,a=U5(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>QU&&++l<YU);return o}function dd(e,t,n,r){if(e===t&&n===r)return An;const i=a=>XU(a,0,1,e,n);return a=>a===0||a===1?a:U5(i(a),t,r)}const V5=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,W5=e=>t=>1-e(1-t),H5=dd(.33,1.53,.69,.99),Vv=W5(H5),G5=V5(Vv),q5=e=>e>=1?1:(e*=2)<1?.5*Vv(e):.5*(2-Math.pow(2,-10*(e-1))),Wv=e=>1-Math.sin(Math.acos(e)),K5=W5(Wv),Q5=V5(Wv),JU=dd(.42,0,1,1),ZU=dd(0,0,.58,1),Y5=dd(.42,0,.58,1),eV=e=>Array.isArray(e)&&typeof e[0]!="number",X5=e=>Array.isArray(e)&&typeof e[0]=="number",o1={linear:An,easeIn:JU,easeInOut:Y5,easeOut:ZU,circIn:Wv,circInOut:Q5,circOut:K5,backIn:Vv,backInOut:G5,backOut:H5,anticipate:q5},tV=e=>typeof e=="string",l1=e=>{if(X5(e)){Mo(e.length===4,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");const[t,n,r,i]=e;return dd(t,n,r,i)}else if(tV(e))return Mo(o1[e]!==void 0,`Invalid easing type '${e}'`,"invalid-easing-type"),o1[e];return e},Yd=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],c1={value:null,addProjectionMetrics:null};function nV(e,t){let n=new Set,r=new Set,i=!1,a=!1;const o=new WeakSet;let l={delta:0,timestamp:0,isProcessing:!1},c=0;function d(h){o.has(h)&&(u.schedule(h),e()),c++,h(l)}const u={schedule:(h,m=!1,p=!1)=>{const f=p&&i?n:r;return m&&o.add(h),f.add(h),h},cancel:h=>{r.delete(h),o.delete(h)},process:h=>{if(l=h,i){a=!0;return}i=!0;const m=n;n=r,r=m,n.forEach(d),t&&c1.value&&c1.value.frameloop[t].push(c),c=0,n.clear(),i=!1,a&&(a=!1,u.process(h))}};return u}const sV=40;function J5(e,t){let n=!1,r=!0;const i={delta:0,timestamp:0,isProcessing:!1},a=()=>n=!0,o=Yd.reduce((w,j)=>(w[j]=nV(a,t?j:void 0),w),{}),{setup:l,read:c,resolveKeyframes:d,preUpdate:u,update:h,preRender:m,render:p,postRender:g}=o,f=()=>{const w=Zr.useManualTiming,j=w?i.timestamp:performance.now();n=!1,w||(i.delta=r?1e3/60:Math.max(Math.min(j-i.timestamp,sV),1)),i.timestamp=j,i.isProcessing=!0,l.process(i),c.process(i),d.process(i),u.process(i),h.process(i),m.process(i),p.process(i),g.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(f))},b=()=>{n=!0,r=!0,i.isProcessing||e(f)};return{schedule:Yd.reduce((w,j)=>{const N=o[j];return w[j]=(C,k=!1,P=!1)=>(n||b(),N.schedule(C,k,P)),w},{}),cancel:w=>{for(let j=0;j<Yd.length;j++)o[Yd[j]].cancel(w)},state:i,steps:o}}const{schedule:Ae,cancel:ei,state:gt,steps:zp}=J5(typeof requestAnimationFrame<"u"?requestAnimationFrame:An,!0);let wu;function rV(){wu=void 0}const Lt={now:()=>(wu===void 0&&Lt.set(gt.isProcessing||Zr.useManualTiming?gt.timestamp:performance.now()),wu),set:e=>{wu=e,queueMicrotask(rV)}},Z5=e=>t=>typeof t=="string"&&t.startsWith(e),eP=Z5("--"),iV=Z5("var(--"),Hv=e=>iV(e)?aV.test(e.split("/*")[0].trim()):!1,aV=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function d1(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const Yo={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},_c={...Yo,transform:e=>Ds(0,1,e)},Xd={...Yo,default:1},ql=e=>Math.round(e*1e5)/1e5,Gv=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function oV(e){return e==null}const lV=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,qv=(e,t)=>
vendor: 25,590 bytes, line 952
952n=>!!(typeof n=="string"&&lV.test(n)&&n.startsWith(e)||t&&!oV(n)&&Object.prototype.hasOwnProperty.call(n,t)),tP=(e,t,n)=>r=>{if(typeof r!="string")return r;const[i,a,o,l]=r.match(Gv);return{[e]:parseFloat(i),[t]:parseFloat(a),[n]:parseFloat(o),alpha:l!==void 0?parseFloat(l):1}},cV=e=>Ds(0,255,e),Up={...Yo,transform:e=>Math.round(cV(e))},Ei={test:qv("rgb","red"),parse:tP("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+Up.transform(e)+", "+Up.transform(t)+", "+Up.transform(n)+", "+ql(_c.transform(r))+")"};function dV(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}const rg={test:qv("#"),parse:dV,transform:Ei.transform},ud=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),mr=ud("deg"),Cs=ud("%"),Y=ud("px"),uV=ud("vh"),hV=ud("vw"),u1={...Cs,parse:e=>Cs.parse(e)/100,transform:e=>Cs.transform(e*100)},Ba={test:qv("hsl","hue"),parse:tP("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Cs.transform(ql(t))+", "+Cs.transform(ql(n))+", "+ql(_c.transform(r))+")"},et={test:e=>Ei.test(e)||rg.test(e)||Ba.test(e),parse:e=>Ei.test(e)?Ei.parse(e):Ba.test(e)?Ba.parse(e):rg.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Ei.transform(e):Ba.transform(e),getAnimatableNone:e=>{const t=et.parse(e);return t.alpha=0,et.transform(t)}},mV=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function pV(e){var t,n;return isNaN(e)&&typeof e=="string"&&(((t=e.match(Gv))==null?void 0:t.length)||0)+(((n=e.match(mV))==null?void 0:n.length)||0)>0}const nP="number",sP="color",fV="var",xV="var(",h1="${}",gV=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Lo(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[];let a=0;const l=t.replace(gV,c=>(et.test(c)?(r.color.push(a),i.push(sP),n.push(et.parse(c))):c.startsWith(xV)?(r.var.push(a),i.push(fV),n.push(c)):(r.number.push(a),i.push(nP),n.push(parseFloat(c))),++a,h1)).split(h1);return{values:n,split:l,indexes:r,types:i}}function vV(e){return Lo(e).values}function rP({split:e,types:t}){const n=e.length;return r=>{let i="";for(let a=0;a<n;a++)if(i+=e[a],r[a]!==void 0){const o=t[a];o===nP?i+=ql(r[a]):o===sP?i+=et.transform(r[a]):i+=r[a]}return i}}function yV(e){return rP(Lo(e))}const bV=e=>typeof e=="number"?0:et.test(e)?et.getAnimatableNone(e):e,wV=(e,t)=>typeof e=="number"?t!=null&&t.trim().endsWith("/")?e:0:bV(e);function jV(e){const t=Lo(e);return rP(t)(t.values.map((r,i)=>wV(r,t.split[i])))}const Zn={test:pV,parse:vV,createTransformer:yV,getAnimatableNone:jV};function Vp(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function NV({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,a=0,o=0;if(!t)i=a=o=n;else{const l=n<.5?n*(1+t):n+t-n*t,c=2*n-l;i=Vp(c,l,e+1/3),a=Vp(c,l,e),o=Vp(c,l,e-1/3)}return{red:Math.round(i*255),green:Math.round(a*255),blue:Math.round(o*255),alpha:r}}function vh(e,t){return n=>n>0?t:e}const $e=(e,t,n)=>e+(t-e)*n,Wp=(e,t,n)=>{const r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},kV=[rg,Ei,Ba],SV=e=>kV.find(t=>t.test(e));function m1(e){const t=SV(e);if(km(!!t,`'${e}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!t)return!1;let n=t.parse(e);return t===Ba&&(n=NV(n)),n}const p1=(e,t)=>{const n=m1(e),r=m1(t);if(!n||!r)return vh(e,t);const i={...n};return a=>(i.red=Wp(n.red,r.red,a),i.green=Wp(n.green,r.green,a),i.blue=Wp(n.blue,r.blue,a),i.alpha=$e(n.alpha,r.alpha,a),Ei.transform(i))},ig=new Set(["none","hidden"]);function CV(e,t){return ig.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function PV(e,t){return n=>$e(e,t,n)}function Kv(e){return typeof e=="number"?PV:typeof e=="string"?Hv(e)?vh:et.test(e)?p1:_V:Array.isArray(e)?iP:typeof e=="object"?et.test(e)?p1:EV:vh}function iP(e,t){const n=[...e],r=n.length,i=e.map((a,o)=>Kv(a)(a,t[o]));return a=>{for(let o=0;o<r;o++)n[o]=i[o](a);return n}}function EV(e,t){const n={...e,...t},r={};for(const i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=Kv(e[i])(e[i],t[i]));return i=>{for(const a in r)n[a]=r[a](i);return n}}function TV(e,t){const n=[],r={color:0,var:0,number:0};for(let i=0;i<t.values.length;i++){const a=t.types[i],o=e.indexes[a][r[a]],l=e.values[o]??0;n[i]=l,r[a]++}return n}const _V=(e,t)=>{const n=Zn.createTransformer(t),r=Lo(e),i=Lo(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?ig.has(e)&&!i.values.length||ig.has(t)&&!r.values.length?CV(e,t):cd(iP(TV(r,i),i.values),n):(km(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),vh(e,t))};function aP(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?$e(e,t,n):Kv(e)(e,t)}const AV=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>Ae.update(t,n),stop:()=>ei(t),now:()=>gt.isProcessing?gt.timestamp:Lt.now()}},oP=(e,t,n=10)=>{let r="";const i=Math.max(Math.round(t/n),2);for(let a=0;a<i;a++)r+=Math.round(e(a/(i-1))*1e4)/1e4+", ";return`linear(${r.substring(0,r.length-2)})`},yh=2e4;function Qv(e){let t=0;const n=50;let r=e.next(t);for(;!r.done&&t<yh;)t+=n,r=e.next(t);return t>=yh?1/0:t}function RV(e,t=100,n){const r=n({...e,keyframes:[0,t]}),i=Math.min(Qv(r),yh);return{type:"keyframes",ease:a=>r.next(i*a).value/t,duration:Cn(i)}}const Ge={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1};function ag(e,t){return e*Math.sqrt(1-t*t)}const DV=12;function MV(e,t,n){let r=n;for(let i=1;i<DV;i++)r=r-e(r)/t(r);return r}const Hp=.001;function LV({duration:e=Ge.duration,bounce:t=Ge.bounce,velocity:n=Ge.velocity,mass:r=Ge.mass}){let i,a;km(e<=en(Ge.maxDuration),"Spring duration must be 10 seconds or less","spring-duration-limit");let o=1-t;o=Ds(Ge.minDamping,Ge.maxDamping,o),e=Ds(Ge.minDuration,Ge.maxDuration,Cn(e)),o<1?(i=d=>{const u=d*o,h=u*e,m=u-n,p=ag(d,o),g=Math.exp(-h);return Hp-m/p*g},a=d=>{const h=d*o*e,m=h*n+n,p=Math.pow(o,2)*Math.pow(d,2)*e,g=Math.exp(-h),f=ag(Math.pow(d,2),o);return(-i(d)+Hp>0?-1:1)*((m-p)*g)/f}):(i=d=>{const u=Math.exp(-d*e),h=(d-n)*e+1;return-Hp+u*h},a=d=>{const u=Math.exp(-d*e),h=(n-d)*(e*e);return u*h});const l=5/e,c=MV(i,a,l);if(e=en(e),isNaN(c))return{stiffness:Ge.stiffness,damping:Ge.damping,duration:e};{const d=Math.pow(c,2)*r;return{stiffness:d,damping:o*2*Math.sqrt(r*d),duration:e}}}const IV=["duration","bounce"],OV=["stiffness","damping","mass"];function f1(e,t){return t.some(n=>e[n]!==void 0)}function FV(e){let t={velocity:Ge.velocity,stiffness:Ge.stiffness,damping:Ge.damping,mass:Ge.mass,isResolvedFromDuration:!1,...e};if(!f1(e,OV)&&f1(e,IV))if(t.velocity=0,e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),i=r*r,a=2*Ds(.05,1,1-(e.bounce||0))*Math.sqrt(i);t={...t,mass:Ge.mass,stiffness:i,damping:a}}else{const n=LV({...e,velocity:0});t={...t,...n,mass:Ge.mass},t.isResolvedFromDuration=!0}return t}function bh(e=Ge.visualDuration,t=Ge.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:i}=n;const a=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],l={done:!1,value:a},{stiffness:c,damping:d,mass:u,duration:h,velocity:m,isResolvedFromDuration:p}=FV({...n,velocity:-Cn(n.velocity||0)}),g=m||0,f=d/(2*Math.sqrt(c*u)),b=o-a,v=Cn(Math.sqrt(c/u)),y=Math.abs(b)<5;r||(r=y?Ge.restSpeed.granular:Ge.restSpeed.default),i||(i=y?Ge.restDelta.granular:Ge.restDelta.default);let w,j,N,C,k,P;if(f<1)N=ag(v,f),C=(g+f*v*b)/N,w=T=>{const R=Math.exp(-f*v*T);return o-R*(C*Math.sin(N*T)+b*Math.cos(N*T))},k=f*v*C+b*N,P=f*v*b-C*N,j=T=>Math.exp(-f*v*T)*(k*Math.sin(N*T)+P*Math.cos(N*T));else if(f===1){w=R=>o-Math.exp(-v*R)*(b+(g+v*b)*R);const T=g+v*b;j=R=>Math.exp(-v*R)*(v*T*R-g)}else{const T=v*Math.sqrt(f*f-1);w=D=>{const V=Math.exp(-f*v*D),z=Math.min(T*D,300);return o-V*((g+f*v*b)*Math.sinh(z)+T*b*Math.cosh(z))/T};const R=(g+f*v*b)/T,L=f*v*R-b*T,W=f*v*b-R*T;j=D=>{const V=Math.exp(-f*v*D),z=Math.min(T*D,300);return V*(L*Math.sinh(z)+W*Math.cosh(z))}}const _={calculatedDuration:p&&h||null,velocity:T=>en(j(T)),next:T=>{if(!p&&f<1){const L=Math.exp(-f*v*T),W=Math.sin(N*T),D=Math.cos(N*T),V=o-L*(C*W+b*D),z=en(L*(k*W+P*D));return l.done=Math.abs(z)<=r&&Math.abs(o-V)<=i,l.value=l.done?o:V,l}const R=w(T);if(p)l.done=T>=h;else{const L=en(j(T));l.done=Math.abs(L)<=r&&Math.abs(o-R)<=i}return l.value=l.done?o:R,l},toString:()=>{const T=Math.min(Qv(_),yh),R=oP(L=>_.next(T*L).value,T,30);return T+"ms "+R},toTransition:()=>{}};return _}bh.applyToOptions=e=>{const t=RV(e,100,bh);return e.ease=t.ease,e.duration=en(t.duration),e.type="keyframes",e};const $V=5;function lP(e,t,n){const r=Math.max(t-$V,0);return z5(n-e(r),t-r)}function og({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:a=500,modifyTarget:o,min:l,max:c,restDelta:d=.5,restSpeed:u}){const h=e[0],m={done:!1,value:h},p=P=>l!==void 0&&P<l||c!==void 0&&P>c,g=P=>l===void 0?c:c===void 0||Math.abs(l-P)<Math.abs(c-P)?l:c;let f=n*t;const b=h+f,v=o===void 0?b:o(b);v!==b&&(f=v-h);const y=P=>-f*Math.exp(-P/r),w=P=>v+y(P),j=P=>{const _=y(P),T=w(P);m.done=Math.abs(_)<=d,m.value=m.done?v:T};let N,C;const k=P=>{p(m.value)&&(N=P,C=bh({keyframes:[m.value,g(m.value)],velocity:lP(w,P,m.value),damping:i,stiffness:a,restDelta:d,restSpeed:u}))};return k(0),{calculatedDuration:null,next:P=>{let _=!1;return!C&&N===void 0&&(_=!0,j(P),k(P)),N!==void 0&&P>=N?C.next(P-N):(!_&&j(P),m)}}}function BV(e,t,n){const r=[],i=n||Zr.mix||aP,a=e.length-1;for(let o=0;o<a;o++){let l=i(e[o],e[o+1]);if(t){const c=Array.isArray(t)?t[o]||An:t;l=cd(c,l)}r.push(l)}return r}function zV(e,t,{clamp:n=!0,ease:r,mixer:i}={}){const a=e.length;if(Mo(a===t.length,"Both input and output ranges must be the same length","range-length"),a===1)return()=>t[0];if(a===2&&t[0]===t[1])return()=>t[1];const o=e[0]===e[1];e[0]>e[a-1]&&(e=[...e].reverse(),t=[...t].reverse());const l=BV(t,r,i),c=l.length,d=u=>{if(o&&u<e[0])return t[0];let h=0;if(c>1)for(;h<e.length-2&&!(u<e[h+1]);h++);const m=Tc(e[h],e[h+1],u);return l[h](m)};return n?u=>d(Ds(e[0],e[a-1],u)):d}function UV(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const i=Tc(0,t,r);e.push($e(n,1,i))}}function VV(e){const t=[0];return UV(t,e.length-1),t}function WV(e,t){return e.map(n=>n*t)}function HV(e,t){return e.map(()=>t||Y5).splice(0,e.length-1)}function Kl({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const i=eV(r)?r.map(l1):l1(r),a={done:!1,value:t[0]},o=WV(n&&n.length===t.length?n:VV(t),e),l=zV(o,t,{ease:Array.isArray(i)?i:HV(t,i)});return{calculatedDuration:e,next:c=>(a.value=l(c),a.done=c>=e,a)}}const GV=e=>e!==null;function Sm(e,{repeat:t,repeatType:n="loop"},r,i=1){const a=e.filter(GV),l=i<0||t&&n!=="loop"&&t%2===1?0:a.length-1;return!l||r===void 0?a[l]:r}const qV={decay:og,inertia:og,tween:Kl,keyframes:Kl,spring:bh};function cP(e){typeof e.type=="string"&&(e.type=qV[e.type])}class Yv{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const KV=e=>e/100;class wh extends Yv{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.delayState={done:!1,value:void 0},this.stop=()=>{var r,i;const{motionValue:n}=this.options;n&&n.updatedAt!==Lt.now()&&this.tick(Lt.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(i=(r=this.options).onStop)==null||i.call(r))},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;cP(t);const{type:n=Kl,repeat:r=0,repeatDelay:i=0,repeatType:a,velocity:o=0}=t;let{keyframes:l}=t;const c=n||Kl;c!==Kl&&typeof l[0]!="number"&&(this.mixKeyframes=cd(KV,aP(l[0],l[1])),l=[0,100]);const d=c({...t,keyframes:l});a==="mirror"&&(this.mirroredGenerator=c({...t,keyframes:[...l].reverse(),velocity:-o})),d.calculatedDuration===null&&(d.calculatedDuration=Qv(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+i,this.totalDuration=this.resolvedDuration*(r+1)-i,this.generator=d}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:i,mixKeyframes:a,mirroredGenerator:o,resolvedDuration:l,calculatedDuration:c}=this;if(this.startTime===null)return r.next(0);const{delay:d=0,keyframes:u,repeat:h,repeatType:m,repeatDelay:p,type:g,onUpdate:f,finalKeyframe:b}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-i/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const v=this.currentTime-d*(this.playbackSpeed>=0?1:-1),y=this.playbackSpeed>=0?v<0:v>i;this.currentTime=Math.max(v,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let w=this.currentTime,j=r;if(h){const P=Math.min(this.currentTime,i)/l;let _=Math.floor(P),T=P%1;!T&&P>=1&&(T=1),T===1&&_--,_=Math.min(_,h+1),!!(_%2)&&(m==="reverse"?(T=1-T,p&&(T-=p/l)):m==="mirror"&&(j=o)),w=Ds(0,1,T)*l}let N;y?(this.delayState.value=u[0],N=this.delayState):N=j.next(w),a&&!y&&(N.value=a(N.value));let{done:C}=N;!y&&c!==null&&(C=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const k=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&C);return k&&g!==og&&(N.value=Sm(u,this.options,b,this.speed)),f&&f(N.value),k&&this.finish(),N}then(t,n){return this.finished.then(t,n)}get duration(){return Cn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Cn(t)}get time(){return Cn(this.currentTime)}set time(t){t=en(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}getGeneratorVelocity(){const t=this.currentTime;if(t<=0)return this.options.velocity||0;if(this.generator.velocity)return this.generator.velocity(t);const n=this.generator.next(t).value;return lP(r=>this.generator.next(r).value,t,n)}get speed(){return this.playbackSpeed}set speed(t){const n=this.playbackSpeed!==t;n&&this.driver&&this.updateTime(Lt.now()),this.playbackSpeed=t,n&&this.driver&&(this.time=Cn(this.currentTime))}play(){var i,a;if(this.isStopped)return;const{driver:t=AV,startTime:n}=this.options;this.driver||(this.driver=t(o=>this.tick(o))),(a=(i=this.options).onPlay)==null||a.call(i);const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(Lt.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var t,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(t=this.options).onComplete)==null||n.call(t)}cancel(){var t,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(t=this.options).onCancel)==null||n.call(t)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),t.observe(this)}}function QV(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}const Ti=e=>e*180/Math.PI,lg=e=>{const t=Ti(Math.atan2(e[1],e[0]));return cg(t)},YV={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:lg,rotateZ:lg,skewX:e=>Ti(Math.atan(e[1])),skewY:e=>Ti(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},cg=e=>(e=e%360,e<0&&(e+=360),e),x1=lg,g1=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),v1=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),XV={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:g1,scaleY:v1,scale:e=>(g1(e)+v1(e))/2,rotateX:e=>cg(Ti(Math.atan2(e[6],e[5]))),rotateY:e=>cg(Ti(Math.atan2(-e[2],e[0]))),rotateZ:x1,rotate:x1,skewX:e=>Ti(Math.atan(e[4])),skewY:e=>Ti(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function dg(e){return e.includes("scale")?1:0}function ug(e,t){if(!e||e==="none")return dg(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,i;if(n)r=XV,i=n;else{const l=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=YV,i=l}if(!i)return dg(t);const a=r[t],o=i[1].split(",").map(ZV);return typeof a=="function"?a(o):o[a]}const JV=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return ug(n,t)};function ZV(e){return parseFloat(e.trim())}const Xo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Jo=new Set(Xo),y1=e=>e===Yo||e===Y,eW=new Set(["x","y","z"]),tW=Xo.filter(e=>!eW.has(e));function nW(e){const t=[];return tW.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const Mr={width:({x:e},{paddingLeft:t="0",paddingRight:n="0",boxSizing:r})=>{const i=e.max-e.min;return r==="border-box"?i:i-parseFloat(t)-parseFloat(n)},height:({y:e},{paddingTop:t="0",paddingBottom:n="0",boxSizing:r})=>{const i=e.max-e.min;return r==="border-box"?i:i-parseFloat(t)-parseFloat(n)},top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>ug(t,"x"),y:(e,{transform:t})=>ug(t,"y")};Mr.translateX=Mr.x;Mr.translateY=Mr.y;const zi=new Set;let hg=!1,mg=!1,pg=!1;function dP(){if(mg){const e=Array.from(zi).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const i=nW(r);i.length&&(n.set(r,i),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const i=n.get(r);i&&i.forEach(([a,o])=>{var l;(l=r.getValue(a))==null||l.set(o)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}mg=!1,hg=!1,zi.forEach(e=>e.complete(pg)),zi.clear()}function uP(){zi.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(mg=!0)})}function sW(){pg=!0,uP(),dP(),pg=!1}class Xv{constructor(t,n,r,i,a,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=i,this.element=a,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(zi.add(this),hg||(hg=!0,Ae.read(uP),Ae.resolveKeyframes(dP))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:i}=this;if(t[0]===null){const a=i==null?void 0:i.get(),o=t[t.length-1];if(a!==void 0)t[0]=a;else if(r&&n){const l=r.readValue(n,o);l!=null&&(t[0]=l)}t[0]===void 0&&(t[0]=o),i&&a===void 0&&i.set(t[0])}QV(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),zi.delete(this)}cancel(){this.state==="scheduled"&&(zi.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const rW=e=>e.startsWith("--");function hP(e,t,n){rW(t)?e.style.setProperty(t,n):e.style[t]=n}const iW={};function mP(e,t){const n=B5(e);return()=>iW[t]??n()}const aW=mP(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),pP=mP(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),_l=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,b1={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:_l([0,.65,.55,1]),circOut:_l([.55,0,1,.45]),backIn:_l([.31,.01,.66,-.59]),backOut:_l([.33,1.53,.69,.99])};function fP(e,t){if(e)return typeof e=="function"?pP()?oP(e,t):"ease-out":X5(e)?_l(e):Array.isArray(e)?e.map(n=>fP(n,t)||b1.easeOut):b1[e]}function oW(e,t,n,{delay:r=0,duration:i=300,repeat:a=0,repeatType:o="loop",ease:l="easeOut",times:c}={},d=void 0){const u={[t]:n};c&&(u.offset=c);const h=fP(l,i);Array.isArray(h)&&(u.easing=h);const m={delay:r,duration:i,easing:Array.isArray(h)?"linear":h,fill:"both",iterations:a+1,direction:o==="reverse"?"alternate":"normal"};return d&&(m.pseudoElement=d),e.animate(u,m)}function xP(e){return typeof e=="function"&&"applyToOptions"in e}function lW({type:e,...t}){return xP(e)&&pP()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class gP extends Yv{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:n,name:r,keyframes:i,pseudoElement:a,allowFlatten:o=!1,finalKeyframe:l,onComplete:c}=t;this.isPseudoElement=!!a,this.allowFlatten=o,this.options=t,Mo(typeof t.type!="string",`Mini animate() doesn't support "type" as a string.`,"mini-spring");const d=lW(t);this.animation=oW(n,r,i,d,a),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!a){const u=Sm(i,this.options,l,this.speed);this.updateMotionValue&&this.updateMotionValue(u),hP(n,r,u),this.animation.cancel()}c==null||c(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var t,n;(n=(t=this.animation).finish)==null||n.call(t)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var n,r,i;const t=(n=this.options)==null?void 0:n.element;!this.isPseudoElement&&(t!=null&&t.isConnected)&&((i=(r=this.animation).commitStyles)==null||i.call(r))}get duration(){var n,r;const t=((r=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:r.call(n).duration)||0;return Cn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Cn(t)}get time(){return Cn(Number(this.animation.currentTime)||0)}set time(t){const n=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=en(t),n&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:n,rangeEnd:r,observe:i}){var a;return this.allowFlatten&&((a=this.animation.effect)==null||a.updateTiming({easing:"linear"})),this.animation.onfinish=null,t&&aW()?(this.animation.timeline=t,n&&(this.animation.rangeStart=n),r&&(this.animation.rangeEnd=r),An):i(this)}}const vP={anticipate:q5,backInOut:G5,circInOut:Q5};function cW(e){return e in vP}function dW(e){typeof e.ease=="string"&&cW(e.ease)&&(e.ease=vP[e.ease])}const Gp=10;class uW extends gP{constructor(t){dW(t),cP(t),super(t),t.startTime!==void 0&&t.autoplay!==!1&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:i,element:a,...o}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const l=new wh({...o,autoplay:!1}),c=Math.max(Gp,Lt.now()-this.startTime),d=Ds(0,Gp,c-Gp),u=l.sample(c).value,{name:h}=this.options;a&&h&&hP(a,h,u),n.setWithVelocity(l.sample(Math.max(0,c-d)).value,u,d),l.stop()}}const w1=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(Zn.test(e)||e==="0")&&!e.startsWith("url("));function hW(e){const t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function mW(e,t,n,r){const i=e[0];if(i===null)return!1;if(t==="display"||t==="visibility")return!0;const a=e[e.length-1],o=w1(i,t),l=w1(a,t);return km(o===l,`You are trying to animate ${t} from "${i}" to "${a}". "${o?a:i}" is not an animatable value.`,"value-not-animatable"),!o||!l?!1:hW(e)||(n==="spring"||xP(n))&&r}function fg(e){e.duration=0,e.type="keyframes"}const yP=new Set(["opacity","clipPath","filter","transform"]),pW=/^(?:oklch|oklab|lab|lch|color|color-mix|light-dark)\(/;function fW(e){for(let t=0;t<e.length;
952t++)if(typeof e[t]=="string"&&pW.test(e[t]))return!0;return!1}const xW=new Set(["color","backgroundColor","outlineColor","fill","stroke","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"]),gW=B5(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function vW(e){var h;const{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:a,type:o,keyframes:l}=e;if(!(((h=t==null?void 0:t.owner)==null?void 0:h.current)instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:u}=t.owner.getProps();return gW()&&n&&(yP.has(n)||xW.has(n)&&fW(l))&&(n!=="transform"||!u)&&!d&&!r&&i!=="mirror"&&a!==0&&o!=="inertia"}const yW=40;class bW extends Yv{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:i=0,repeatDelay:a=0,repeatType:o="loop",keyframes:l,name:c,motionValue:d,element:u,...h}){var g;super(),this.stop=()=>{var f,b;this._animation&&(this._animation.stop(),(f=this.stopTimeline)==null||f.call(this)),(b=this.keyframeResolver)==null||b.cancel()},this.createdAt=Lt.now();const m={autoplay:t,delay:n,type:r,repeat:i,repeatDelay:a,repeatType:o,name:c,motionValue:d,element:u,...h},p=(u==null?void 0:u.KeyframeResolver)||Xv;this.keyframeResolver=new p(l,(f,b,v)=>this.onKeyframesResolved(f,b,m,!v),c,d,u),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(t,n,r,i){var v,y;this.keyframeResolver=void 0;const{name:a,type:o,velocity:l,delay:c,isHandoff:d,onUpdate:u}=r;this.resolvedAt=Lt.now();let h=!0;mW(t,a,o,l)||(h=!1,(Zr.instantAnimations||!c)&&(u==null||u(Sm(t,r,n))),t[0]=t[t.length-1],fg(r),r.repeat=0);const p={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>yW?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},g=h&&!d&&vW(p),f=(y=(v=p.motionValue)==null?void 0:v.owner)==null?void 0:y.current;let b;if(g)try{b=new uW({...p,element:f})}catch{b=new wh(p)}else b=new wh(p);b.finished.then(()=>{this.notifyFinished()}).catch(An),this.pendingTimeline&&(this.stopTimeline=b.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=b}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){var t;return this._animation||((t=this.keyframeResolver)==null||t.resume(),sW()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var t;this._animation&&this.animation.cancel(),(t=this.keyframeResolver)==null||t.cancel()}}function bP(e,t,n,r=0,i=1){const a=Array.from(e).sort((d,u)=>d.sortNodePosition(u)).indexOf(t),o=e.size,l=(o-1)*r;return typeof n=="function"?n(a,o):i===1?a*r:l-a*r}const wW=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function jW(e){const t=wW.exec(e);if(!t)return[,];const[,n,r,i]=t;return[`--${n??r}`,i]}const NW=4;function wP(e,t,n=1){Mo(n<=NW,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,"max-css-var-depth");const[r,i]=jW(e);if(!r)return;const a=window.getComputedStyle(t).getPropertyValue(r);if(a){const o=a.trim();return O5(o)?parseFloat(o):o}return Hv(i)?wP(i,t,n+1):i}const kW={type:"spring",stiffness:500,damping:25,restSpeed:10},SW=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),CW={type:"keyframes",duration:.8},PW={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},EW=(e,{keyframes:t})=>t.length>2?CW:Jo.has(e)?e.startsWith("scale")?SW(t[1]):kW:PW;function jP(e,t){if(e!=null&&e.inherit&&t){const{inherit:n,...r}=e;return{...t,...r}}return e}function Jv(e,t){const n=(e==null?void 0:e[t])??(e==null?void 0:e.default)??e;return n!==e?jP(n,e):n}const TW=new Set(["when","delay","delayChildren","staggerChildren","staggerDirection","repeat","repeatType","repeatDelay","from","elapsed"]);function _W(e){for(const t in e)if(!TW.has(t))return!0;return!1}const Zv=(e,t,n,r={},i,a)=>o=>{const l=Jv(r,e)||{},c=l.delay||r.delay||0;let{elapsed:d=0}=r;d=d-en(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...l,delay:-d,onUpdate:m=>{t.set(m),l.onUpdate&&l.onUpdate(m)},onComplete:()=>{o(),l.onComplete&&l.onComplete()},name:e,motionValue:t,element:a?void 0:i};_W(l)||Object.assign(u,EW(e,u)),u.duration&&(u.duration=en(u.duration)),u.repeatDelay&&(u.repeatDelay=en(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let h=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(fg(u),u.delay===0&&(h=!0)),(Zr.instantAnimations||Zr.skipAnimations||i!=null&&i.shouldSkipAnimations)&&(h=!0,fg(u),u.delay=0),u.allowFlatten=!l.type&&!l.ease,h&&!a&&t.get()!==void 0){const m=Sm(u.keyframes,l);if(m!==void 0){Ae.update(()=>{u.onUpdate(m),u.onComplete()});return}}return l.isSync?new wh(u):new bW(u)};function j1(e){const t=[{},{}];
vendor: 60,392 bytes, line 952
952return e==null||e.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function ey(e,t,n,r){if(typeof t=="function"){const[i,a]=j1(r);t=t(n!==void 0?n:e.custom,i,a)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[i,a]=j1(r);t=t(n!==void 0?n:e.custom,i,a)}return t}function Ui(e,t,n){const r=e.getProps();return ey(r,t,n!==void 0?n:r.custom,e)}const NP=new Set(["width","height","top","left","right","bottom",...Xo]),N1=30,AW=e=>!isNaN(parseFloat(e));class RW{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{var a;const i=Lt.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&((a=this.events.change)==null||a.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=Lt.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=AW(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new Uv);const r=this.events[t].add(n);return t==="change"?()=>{r(),Ae.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var t;(t=this.events.change)==null||t.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=Lt.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>N1)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,N1);return z5(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var t,n;(t=this.dependents)==null||t.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Io(e,t){return new RW(e,t)}const xg=e=>Array.isArray(e);function DW(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Io(n))}function MW(e){return xg(e)?e[e.length-1]||0:e}function LW(e,t){const n=Ui(e,t);let{transitionEnd:r={},transition:i={},...a}=n||{};a={...a,...r};for(const o in a){const l=MW(a[o]);DW(e,o,l)}}const bt=e=>!!(e&&e.getVelocity);function IW(e){return!!(bt(e)&&e.add)}function gg(e,t){const n=e.getValue("willChange");if(IW(n))return n.add(t);if(!n&&Zr.WillChange){const r=new Zr.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function ty(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const OW="framerAppearId",kP="data-"+ty(OW);function SP(e){return e.props[kP]}function FW({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function CP(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:a,transitionEnd:o,...l}=t;const c=e.getDefaultTransition();a=a?jP(a,c):c;const d=a==null?void 0:a.reduceMotion;r&&(a=r);const u=[],h=i&&e.animationState&&e.animationState.getState()[i];for(const m in l){const p=e.getValue(m,e.latestValues[m]??null),g=l[m];if(g===void 0||h&&FW(h,m))continue;const f={delay:n,...Jv(a||{},m)},b=p.get();if(b!==void 0&&!p.isAnimating()&&!Array.isArray(g)&&g===b&&!f.velocity){Ae.update(()=>p.set(g));continue}let v=!1;if(window.MotionHandoffAnimation){const j=SP(e);if(j){const N=window.MotionHandoffAnimation(j,m,Ae);N!==null&&(f.startTime=N,v=!0)}}gg(e,m);const y=d??e.shouldReduceMotion;p.start(Zv(m,p,g,y&&NP.has(m)?{type:!1}:f,e,v));const w=p.animation;w&&u.push(w)}if(o){const m=()=>Ae.update(()=>{o&&LW(e,o)});u.length?Promise.all(u).then(m):m()}return u}function vg(e,t,n={}){var c;const r=Ui(e,t,n.type==="exit"?(c=e.presenceContext)==null?void 0:c.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const a=r?()=>Promise.all(CP(e,r,n)):()=>Promise.resolve(),o=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:u=0,staggerChildren:h,staggerDirection:m}=i;return $W(e,t,d,u,h,m,n)}:()=>Promise.resolve(),{when:l}=i;if(l){const[d,u]=l==="beforeChildren"?[a,o]:[o,a];return d().then(()=>u())}else return Promise.all([a(),o(n.delay)])}function $W(e,t,n=0,r=0,i=0,a=1,o){const l=[];for(const c of e.variantChildren)c.notify("AnimationStart",t),l.push(vg(c,t,{...o,delay:n+(typeof r=="function"?0:r)+bP(e.variantChildren,c,r,i,a)}).then(()=>c.notify("AnimationComplete",t)));return Promise.all(l)}function BW(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(a=>vg(e,a,n));r=Promise.all(i)}else if(typeof t=="string")r=vg(e,t,n);else{const i=typeof t=="function"?Ui(e,t,n.custom):t;r=Promise.all(CP(e,i,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}const zW={test:e=>e==="auto",parse:e=>e},PP=e=>t=>t.test(e),EP=[Yo,Y,Cs,mr,hV,uV,zW],k1=e=>EP.find(PP(e));function UW(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||$5(e):!0}const VW=new Set(["brightness","contrast","saturate","opacity"]);function WW(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(Gv)||[];if(!r)return e;const i=n.replace(r,"");let a=VW.has(t)?1:0;return r!==n&&(a*=100),t+"("+a+i+")"}const HW=/\b([a-z-]*)\(.*?\)/gu,yg={...Zn,getAnimatableNone:e=>{const t=e.match(HW);return t?t.map(WW).join(" "):e}},bg={...Zn,getAnimatableNone:e=>{const t=Zn.parse(e);return Zn.createTransformer(e)(t.map(r=>typeof r=="number"?0:typeof r=="object"?{...r,alpha:1}:r))}},S1={...Yo,transform:Math.round},GW={rotate:mr,rotateX:mr,rotateY:mr,rotateZ:mr,scale:Xd,scaleX:Xd,scaleY:Xd,scaleZ:Xd,skew:mr,skewX:mr,skewY:mr,distance:Y,translateX:Y,translateY:Y,translateZ:Y,x:Y,y:Y,z:Y,perspective:Y,transformPerspective:Y,opacity:_c,originX:u1,originY:u1,originZ:Y},ny={borderWidth:Y,borderTopWidth:Y,borderRightWidth:Y,borderBottomWidth:Y,borderLeftWidth:Y,borderRadius:Y,borderTopLeftRadius:Y,borderTopRightRadius:Y,borderBottomRightRadius:Y,borderBottomLeftRadius:Y,width:Y,maxWidth:Y,height:Y,maxHeight:Y,top:Y,right:Y,bottom:Y,left:Y,inset:Y,insetBlock:Y,insetBlockStart:Y,insetBlockEnd:Y,insetInline:Y,insetInlineStart:Y,insetInlineEnd:Y,padding:Y,paddingTop:Y,paddingRight:Y,paddingBottom:Y,paddingLeft:Y,paddingBlock:Y,paddingBlockStart:Y,paddingBlockEnd:Y,paddingInline:Y,paddingInlineStart:Y,paddingInlineEnd:Y,margin:Y,marginTop:Y,marginRight:Y,marginBottom:Y,marginLeft:Y,marginBlock:Y,marginBlockStart:Y,marginBlockEnd:Y,marginInline:Y,marginInlineStart:Y,marginInlineEnd:Y,fontSize:Y,backgroundPositionX:Y,backgroundPositionY:Y,...GW,zIndex:S1,fillOpacity:_c,strokeOpacity:_c,numOctaves:S1},qW={...ny,color:et,backgroundColor:et,outlineColor:et,fill:et,stroke:et,borderColor:et,borderTopColor:et,borderRightColor:et,borderBottomColor:et,borderLeftColor:et,filter:yg,WebkitFilter:yg,mask:bg,WebkitMask:bg},TP=e=>qW[e],KW=new Set([yg,bg]);function _P(e,t){let n=TP(e);return KW.has(n)||(n=Zn),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const QW=new Set(["auto","none","0"]);function YW(e,t,n){let r=0,i;for(;r<e.length&&!i;){const a=e[r];typeof a=="string"&&!QW.has(a)&&Lo(a).values.length&&(i=e[r]),r++}if(i&&n)for(const a of t)e[a]=_P(n,i)}class XW extends Xv{constructor(t,n,r,i,a){super(t,n,r,i,a,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:n,name:r}=this;if(!n||!n.current)return;super.readKeyframes();for(let u=0;u<t.length;u++){let h=t[u];if(typeof h=="string"&&(h=h.trim(),Hv(h))){const m=wP(h,n.current);m!==void 0&&(t[u]=m),u===t.length-1&&(this.finalKeyframe=h)}}if(this.resolveNoneKeyframes(),!NP.has(r)||t.length!==2)return;const[i,a]=t,o=k1(i),l=k1(a),c=d1(i),d=d1(a);if(c!==d&&Mr[r]){this.needsMeasurement=!0;return}if(o!==l)if(y1(o)&&y1(l))for(let u=0;u<t.length;u++){const h=t[u];typeof h=="string"&&(t[u]=parseFloat(h))}else Mr[r]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:t,name:n}=this,r=[];for(let i=0;i<t.length;i++)(t[i]===null||UW(t[i]))&&r.push(i);r.length&&YW(t,r,n)}measureInitialState(){const{element:t,unresolvedKeyframes:n,name:r}=this;if(!t||!t.current)return;r==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Mr[r](t.measureViewportBox(),window.getComputedStyle(t.current)),n[0]=this.measuredOrigin;const i=n[n.length-1];i!==void 0&&t.getValue(r,i).jump(i,!1)}measureEndState(){var l;const{element:t,name:n,unresolvedKeyframes:r}=this;if(!t||!t.current)return;const i=t.getValue(n);i&&i.jump(this.measuredOrigin,!1);const a=r.length-1,o=r[a];r[a]=Mr[n](t.measureViewportBox(),window.getComputedStyle(t.current)),o!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=o),(l=this.removedTransforms)!=null&&l.length&&this.removedTransforms.forEach(([c,d])=>{t.getValue(c).set(d)}),this.resolveNoneKeyframes()}}function AP(e,t,n){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){const i=document.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e).filter(r=>r!=null)}const RP=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function ju(e){return F5(e)&&"offsetHeight"in e&&!("ownerSVGElement"in e)}const{schedule:sy,cancel:ZK}=J5(queueMicrotask,!1),Un={x:!1,y:!1};function DP(){return Un.x||Un.y}function JW(e){return e==="x"||e==="y"?Un[e]?null:(Un[e]=!0,()=>{Un[e]=!1}):Un.x||Un.y?null:(Un.x=Un.y=!0,()=>{Un.x=Un.y=!1})}function MP(e,t){const n=AP(e),r=new AbortController,i={passive:!0,...t,signal:r.signal};return[n,i,()=>r.abort()]}function ZW(e){return!(e.pointerType==="touch"||DP())}function eH(e,t,n={}){const[r,i,a]=MP(e,n);return r.forEach(o=>{let l=!1,c=!1,d;const u=()=>{o.removeEventListener("pointerleave",g)},h=b=>{d&&(d(b),d=void 0),u()},m=b=>{l=!1,window.removeEventListener("pointerup",m),window.removeEventListener("pointercancel",m),c&&(c=!1,h(b))},p=()=>{l=!0,window.addEventListener("pointerup",m,i),window.addEventListener("pointercancel",m,i)},g=b=>{if(b.pointerType!=="touch"){if(l){c=!0;return}h(b)}},f=b=>{if(!ZW(b))return;c=!1;const v=t(o,b);typeof v=="function"&&(d=v,o.addEventListener("pointerleave",g,i))};o.addEventListener("pointerenter",f,i),o.addEventListener("pointerdown",p,i)}),a}const LP=(e,t)=>t?e===t?!0:LP(e,t.parentElement):!1,ry=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,tH=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function nH(e){return tH.has(e.tagName)||e.isContentEditable===!0}const sH=new Set(["INPUT","SELECT","TEXTAREA"]);function rH(e){return sH.has(e.tagName)||e.isContentEditable===!0}const Nu=new WeakSet;function C1(e){return t=>{t.key==="Enter"&&e(t)}}function qp(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const iH=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=C1(()=>{if(Nu.has(n))return;qp(n,"down");const i=C1(()=>{qp(n,"up")}),a=()=>qp(n,"cancel");n.addEventListener("keyup",i,t),n.addEventListener("blur",a,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function P1(e){return ry(e)&&!DP()}const E1=new WeakSet;function aH(e,t,n={}){const[r,i,a]=MP(e,n),o=l=>{const c=l.currentTarget;if(!P1(l)||E1.has(l))return;Nu.add(c),n.stopPropagation&&E1.add(l);const d=t(c,l),u=(p,g)=>{window.removeEventListener("pointerup",h),window.removeEventListener("pointercancel",m),Nu.has(c)&&Nu.delete(c),P1(p)&&typeof d=="function"&&d(p,{success:g})},h=p=>{u(p,c===window||c===document||n.useGlobalTarget||LP(c,p.target))},m=p=>{u(p,!1)};window.addEventListener("pointerup",h,i),window.addEventListener("pointercancel",m,i)};return r.forEach(l=>{(n.useGlobalTarget?window:l).addEventListener("pointerdown",o,i),ju(l)&&(l.addEventListener("focus",d=>iH(d,i)),!nH(l)&&!l.hasAttribute("tabindex")&&(l.tabIndex=0))}),a}function iy(e){return F5(e)&&"ownerSVGElement"in e}const ku=new WeakMap;let pr;const IP=(e,t,n)=>(r,i)=>i&&i[0]?i[0][e+"Size"]:iy(r)&&"getBBox"in r?r.getBBox()[t]:r[n],oH=IP("inline","width","offsetWidth"),lH=IP("block","height","offsetHeight");function cH({target:e,borderBoxSize:t}){var n;(n=ku.get(e))==null||n.forEach(r=>{r(e,{get width(){return oH(e,t)},get height(){return lH(e,t)}})})}function dH(e){e.forEach(cH)}function uH(){typeof ResizeObserver>"u"||(pr=new ResizeObserver(dH))}function hH(e,t){pr||uH();const n=AP(e);return n.forEach(r=>{let i=ku.get(r);i||(i=new Set,ku.set(r,i)),i.add(t),pr==null||pr.observe(r)}),()=>{n.forEach(r=>{const i=ku.get(r);i==null||i.delete(t),i!=null&&i.size||pr==null||pr.unobserve(r)})}}const Su=new Set;let za;function mH(){za=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};Su.forEach(t=>t(e))},window.addEventListener("resize",za)}function pH(e){return Su.add(e),za||mH(),()=>{Su.delete(e),!Su.size&&typeof za=="function"&&(window.removeEventListener("resize",za),za=void 0)}}function T1(e,t){return typeof e=="function"?pH(e):hH(e,t)}function fH(e){return iy(e)&&e.tagName==="svg"}const xH=[...EP,et,Zn],gH=e=>xH.find(PP(e)),_1=()=>({translate:0,scale:1,origin:0,originPoint:0}),Ua=()=>({x:_1(),y:_1()}),A1=()=>({min:0,max:0}),ot=()=>({x:A1(),y:A1()}),vH=new WeakMap;function Cm(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Ac(e){return typeof e=="string"||Array.isArray(e)}const ay=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],oy=["initial",...ay];function Pm(e){return Cm(e.animate)||oy.some(t=>Ac(e[t]))}function OP(e){return!!(Pm(e)||e.variants)}function yH(e,t,n){for(const r in t){const i=t[r],a=n[r];if(bt(i))e.addValue(r,i);else if(bt(a))e.addValue(r,Io(i,{owner:e}));else if(a!==i)if(e.hasValue(r)){const o=e.getValue(r);o.liveStyle===!0?o.jump(i):o.hasAnimated||o.set(i)}else{const o=e.getStaticValue(r);e.addValue(r,Io(o!==void 0?o:i,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const wg={current:null},FP={current:!1},bH=typeof window<"u";function wH(){if(FP.current=!0,!!bH)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>wg.current=e.matches;e.addEventListener("change",t),t()}else wg.current=!1}const R1=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let jh={};function $P(e){jh=e}function jH(){return jh}class NH{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,skipAnimations:a,blockInitialAnimation:o,visualState:l},c={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=Xv,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const p=Lt.now();this.renderScheduledAt<p&&(this.renderScheduledAt=p,Ae.render(this.render,!1,!0))};const{latestValues:d,renderState:u}=l;this.latestValues=d,this.baseTarget={...d},this.initialValues=n.initial?{...d}:{},this.renderState=u,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.skipAnimationsConfig=a,this.options=c,this.blockInitialAnimation=!!o,this.isControllingVariants=Pm(n),this.isVariantNode=OP(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:h,...m}=this.scrapeMotionValuesFromProps(n,{},this);for(const p in m){const g=m[p];d[p]!==void 0&&bt(g)&&g.set(d[p])}}mount(t){var n,r;if(this.hasBeenMounted)for(const i in this.initialValues)(n=this.values.get(i))==null||n.jump(this.initialValues[i]),this.latestValues[i]=this.initialValues[i];this.current=t,vH.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((i,a)=>this.bindToMotionValue(a,i)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(FP.current||wH(),this.shouldReduceMotion=wg.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,(r=this.parent)==null||r.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){var t;this.projection&&this.projection.unmount(),ei(this.notifyUpdate),ei(this.render),this.valueSubscriptions.forEach(n=>n()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(t=this.parent)==null||t.removeChild(this);for(const n in this.events)this.events[n].clear();for(const n in this.features){const r=this.features[n];r&&(r.unmount(),r.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),n.accelerate&&yP.has(t)&&this.current instanceof HTMLElement){const{factory:o,keyframes:l,times:c,ease:d,duration:u}=n.accelerate,h=new gP({element:this.current,name:t,keyframes:l,times:c,ease:d,duration:en(u)}),m=o(h);this.valueSubscriptions.set(t,()=>{m(),h.cancel()});return}const r=Jo.has(t);r&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",o=>{this.latestValues[t]=o,this.props.onUpdate&&Ae.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let a;typeof window<"u"&&window.MotionCheckAppearSync&&(a=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{i(),a&&a(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in jh){const n=jh[t];if(!n)continue;const{isEnabled:r,Feature:i}=n;if(!this.features[t]&&i&&r(this.props)&&(this.features[t]=new i(this)),this.features[t]){const a=this.features[t];a.isMounted?a.update():(a.mount(),a.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):ot()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;r<R1.length;r++){const i=R1[r];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const a="on"+i,o=t[a];o&&(this.propEventSubscriptions[i]=this.on(i,o))}this.prevMotionValues=yH(this,this.scrapeMotionValuesFromProps(t,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(t),()=>n.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=Io(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(O5(r)||$5(r))?r=parseFloat(r):!gH(r)&&Zn.test(n)&&(r=_P(t,n)),this.setBaseTarget(t,bt(r)?r.get():r)),bt(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var a;const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=ey(this.props,n,(a=this.presenceContext)==null?void 0:a.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const i=this.getBaseTargetFromProps(this.props,t);return i!==void 0&&!bt(i)?i:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Uv),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){sy.render(this.render)}}class BP extends NH{constructor(){super(...arguments),this.KeyframeResolver=XW}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){const r=t.style;return r?r[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;bt(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}class mi{constructor(t){this.isMounted=!1,this.node=t}update(){}}function zP({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function kH({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function SH(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function Kp(e){return e===void 0||e===1}function jg({scale:e,scaleX:t,scaleY:n}){return!Kp(e)||!Kp(t)||!Kp(n)}function Ni(e){return jg(e)||UP(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function UP(e){return D1(e.x)||D1(e.y)}function D1(e){return e&&e!=="0%"}function Nh(e,t,n){const r=e-n,i=t*r;return n+i}function M1(e,t,n,r,i){return i!==void 0&&(e=Nh(e,i,r)),Nh(e,n,r)+t}function Ng(e,t=0,n=1,r,i){e.min=M1(e.min,t,n,r,i),e.max=M1(e.max,t,n,r,i)}function VP(e,{x:t,y:n}){Ng(e.x,t.translate,t.scale,t.originPoint),Ng(e.y,n.translate,n.scale,n.originPoint)}const L1=.999999999999,I1=1.0000000000001;function CH(e,t,n,r=!1){var l;const i=n.length;if(!i)return;t.x=t.y=1;let a,o;for(let c=0;c<i;c++){a=n[c],o=a.projectionDelta;const{visualElement:d}=a.options;d&&d.props.style&&d.props.style.display==="contents"||(r&&a.options.layoutScroll&&a.scroll&&a!==a.root&&(gs(e.x,-a.scroll.offset.x),gs(e.y,-a.scroll.offset.y)),o&&(t.x*=o.x.scale,t.y*=o.y.scale,VP(e,o)),r&&Ni(a.latestValues)&&Cu(e,a.latestValues,(l=a.layout)==null?void 0:l.layoutBox))}t.x<I1&&t.x>L1&&(t.x=1),t.y<I1&&t.y>L1&&(t.y=1)}function gs(e,t){e.min+=t,e.max+=t}function O1(e,t,n,r,i=.5){const a=$e(e.min,e.max,i);Ng(e,t,n,a,r)}function F1(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function Cu(e,t,n){const r=n??e;O1(e.x,F1(t.x,r.x),t.scaleX,t.scale,t.originX),O1(e.y,F1(t.y,r.y),t.scaleY,t.scale,t.originY)}function WP(e,t){return zP(SH(e.getBoundingClientRect(),t))}function PH(e,t,n){const r=WP(e,n),{scroll:i}=t;return i&&(gs(r.x,i.offset.x),gs(r.y,i.offset.y)),r}const EH={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},TH=Xo.length;function _H(e,t,n){let r="",i=!0;for(let a=0;a<TH;a++){const o=Xo[a],l=e[o];if(l===void 0)continue;let c=!0;if(typeof l=="number")c=l===(o.startsWith("scale")?1:0);else{const d=parseFloat(l);c=o.startsWith("scale")?d===1:d===0}if(!c||n){const d=RP(l,ny[o]);if(!c){i=!1;const u=EH[o]||o;r+=`${u}(${d}) `}n&&(t[o]=d)}}return r=r.trim(),n?r=n(t,i?"":r):i&&(r="none"),r}function ly(e,t,n){const{style:r,vars:i,transformOrigin:a}=e;let o=!1,l=!1;for(const c in t){const d=t[c];if(Jo.has(c)){o=!0;continue}else if(eP(c)){i[c]=d;continue}else{const u=RP(d,ny[c]);c.startsWith("origin")?(l=!0,a[c]=u):r[c]=u}}if(t.transform||(o||n?r.transform=_H(t,e.transform,n):r.transform&&(r.transform="none")),l){const{originX:c="50%",originY:d="50%",originZ:u=0}=a;r.transformOrigin=`${c} ${d} ${u}`}}function HP(e,{style:t,vars:n},r,i){const a=e.style;let o;for(o in t)a[o]=t[o];i==null||i.applyProjectionStyles(a,r);for(o in n)a.setProperty(o,n[o])}function $1(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const bl={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(Y.test(e))e=parseFloat(e);else return e;const n=$1(e,t.target.x),r=$1(e,t.target.y);return`${n}% ${r}%`}},AH={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=Zn.parse(e);if(i.length>5)return r;const a=Zn.createTransformer(e),o=typeof i[0]!="number"?1:0,l=n.x.scale*t.x,c=n.y.scale*t.y;i[0+o]/=l,i[1+o]/=c;const d=$e(l,c,.5);return typeof i[2+o]=="number"&&(i[2+o]/=d),typeof i[3+o]=="number"&&(i[3+o]/=d),a(i)}},kg={borderRadius:{...bl,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:bl,borderTopRightRadius:bl,borderBottomLeftRadius:bl,borderBottomRightRadius:bl,boxShadow:AH};function GP(e,{layout:t,layoutId:n}){return Jo.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!kg[e]||e==="opacity")}function cy(e,t,n){var o;const r=e.style,i=t==null?void 0:t.style,a={};if(!r)return a;for(const l in r)(bt(r[l])||i&&bt(i[l])||GP(l,e)||((o=n==null?void 0:n.getValue(l))==null?void 0:o.liveStyle)!==void 0)&&(a[l]=r[l]);return a}function RH(e){return window.getComputedStyle(e)}class DH extends BP{constructor(){super(...arguments),this.type="html",this.renderInstance=HP}readValueFromInstance(t,n){var r;if(Jo.has(n))return(r=this.projection)!=null&&r.isProjecting?dg(n):JV(t,n);{const i=RH(t),a=(eP(n)?i.getPropertyValue(n):i[n])||0;return typeof a=="string"?a.trim():a}}measureInstanceViewportBox(t,{transformPagePoint:n}){return WP(t,n)}build(t,n,r){ly(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return cy(t,n,r)}}const MH={offset:"stroke-dashoffset",array:"stroke-dasharray"},LH={offset:"strokeDashoffset",array:"strokeDasharray"};function IH(e,t,n=1,r=0,i=!0){e.pathLength=1;const a=i?MH:LH;e[a.offset]=`${-r}`,e[a.array]=`${t} ${n}`}const OH=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function qP(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:a=1,pathOffset:o=0,...l},c,d,u){if(ly(e,l,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:h,style:m}=e;h.transform&&(m.transform=h.transform,delete h.transform),(m.transform||h.transformOrigin)&&(m.transformOrigin=h.transformOrigin??"50% 50%",delete h.transformOrigin),m.transform&&(m.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete h.transformBox);for(const p of OH)h[p]!==void 0&&(m[p]=h[p],delete h[p]);t!==void 0&&(h.x=t),n!==void 0&&(h.y=n),r!==void 0&&(h.scale=r),i!==void 0&&IH(h,i,a,o,!1)}const KP=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),QP=e=>typeof e=="string"&&e.toLowerCase()==="svg";function FH(e,t,n,r){HP(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(KP.has(i)?i:ty(i),t.attrs[i])}function YP(e,t,n){const r=cy(e,t,n);for(const i in e)if(bt(e[i])||bt(t[i])){const a=Xo.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;r[a]=e[i]}return r}class $H extends BP{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=ot}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(Jo.has(n)){const r=TP(n);return r&&r.default||0}return n=KP.has(n)?n:ty(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return YP(t,n,r)}build(t,n,r){qP(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,i){FH(t,n,r,i)}mount(t){this.isSVGTag=QP(t.tagName),super.mount(t)}}const BH=oy.length;function XP(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?XP(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<BH;n++){const r=oy[n],i=e.props[r];(Ac(i)||i===!1)&&(t[r]=i)}return t}function JP(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}const zH=[...ay].reverse(),UH=ay.length;function VH(e){return t=>Promise.all(t.map(({animation:n,options:r})=>BW(e,n,r)))}function WH(e){let t=VH(e),n=B1(),r=!0,i=!1;const a=d=>(u,h)=>{var p;const m=Ui(e,h,d==="exit"?(p=e.presenceContext)==null?void 0:p.custom:void 0);if(m){const{transition:g,transitionEnd:f,...b}=m;u={...u,...b,...f}}return u};function o(d){t=d(e)}function l(d){const{props:u}=e,h=XP(e.parent)||{},m=[],p=new Set;let g={},f=1/0;for(let v=0;v<UH;v++){const y=zH[v],w=n[y],j=u[y]!==void 0?u[y]:h[y],N=Ac(j),C=y===d?w.isActive:null;C===!1&&(f=v);let k=j===h[y]&&j!==u[y]&&N;if(k&&(r||i)&&e.manuallyAnimateOnMount&&(k=!1),w.protectedKeys={...g},!w.isActive&&C===null||!j&&!w.prevProp||Cm(j)||typeof j=="boolean")continue;if(y==="exit"&&w.isActive&&C!==!0){w.prevResolvedValues&&(g={...g,...w.prevResolvedValues});continue}const P=HH(w.prevProp,j);let _=P||y===d&&w.isActive&&!k&&N||v>f&&N,T=!1;const R=Array.isArray(j)?j:[j];let L=R.reduce(a(y),{});C===!1&&(L={});const{prevResolvedValues:W={}}=w,D={...W,...L},V=S=>{_=!0,p.has(S)&&(T=!0,p.delete(S)),w.needsAnimating[S]=!0;const M=e.getValue(S);M&&(M.liveStyle=!1)};for(const S in D){const M=L[S],U=W[S];if(g.hasOwnProperty(S))continue;let O=!1;xg(M)&&xg(U)?O=!JP(M,U):O=M!==U,O?M!=null?V(S):p.add(S):M!==void 0&&p.has(S)?V(S):w.protectedKeys[S]=!0}w.prevProp=j,w.prevResolvedValues=L,w.isActive&&(g={...g,...L}),(r||i)&&e.blockInitialAnimation&&(_=!1);const z=k&&P;_&&(!z||T)&&m.push(...R.map(S=>{const M={type:y};if(typeof S=="string"&&(r||i)&&!z&&e.manuallyAnimateOnMount&&e.parent){const{parent:U}=e,O=Ui(U,S);if(U.enteringChildren&&O){const{delayChildren:q}=O.transition||{};M.delay=bP(U.enteringChildren,e,q)}}return{animation:S,options:M}}))}if(p.size){const v={};if(typeof u.initial!="boolean"){const y=Ui(e,Array.isArray(u.initial)?u.initial[0]:u.initial);y&&y.transition&&(v.transition=y.transition)}p.forEach(y=>{const w=e.getBaseTarget(y),j=e.getValue(y);j&&(j.liveStyle=!0),v[y]=w??null}),m.push({animation:v})}let b=!!m.length;return r&&(u.initial===!1||u.initial===u.animate)&&!e.manuallyAnimateOnMount&&(b=!1),r=!1,i=!1,b?t(m):Promise.resolve()}function c(d,u){var m;if(n[d].isActive===u)return Promise.resolve();(m=e.variantChildren)==null||m.forEach(p=>{var g;return(g=p.animationState)==null?void 0:g.setActive(d,u)}),n[d].isActive=u;const h=l(d);for(const p in n)n[p].protectedKeys={};return h}return{animateChanges:l,setActive:c,setAnimateFunction:o,getState:()=>n,reset:()=>{n=B1(),i=!0}}}function HH(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!JP(t,e):!1}function vi(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function B1(){return{animate:vi(!0),whileInView:vi(),whileHover:vi(),whileTap:vi(),whileDrag:vi(),whileFocus:vi(),exit:vi()}}function Sg(e,t){e.min=t.min,e.max=t.max}function $n(e,t){Sg(e.x,t.x),Sg(e.y,t.y)}function z1(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const ZP=1e-4,GH=1-ZP,qH=1+ZP,e3=.01,KH=0-e3,QH=0+e3;function It(e){return e.max-e.min}function YH(e,t,n){return Math.abs(e-t)<=n}function U1(e,t,n,r=.5){e.origin=r,e.originPoint=$e(t.min,t.max,e.origin),e.scale=It(n)/It(t),e.translate=$e(n.min,n.max,e.origin)-e.originPoint,(e.scale>=GH&&e.scale<=qH||isNaN(e.scale))&&(e.scale=1),(e.translate>=KH&&e.translate<=QH||isNaN(e.translate))&&(e.translate=0)}function Ql(e,t,n,r){U1(e.x,t.x,n.x,r?r.originX:void 0),U1(e.y,t.y,n.y,r?r.originY:void 0)}function V1(e,t,n,r=0){const i=r?$e(n.min,n.max,r):n.min;e.min=i+t.min,e.max=e.min+It(t)}function XH(e,t,n,r){V1(e.x,t.x,n.x,r==null?void 0:r.x),V1(e.y,t.y,n.y,r==null?void 0:r.y)}function W1(e,t,n,r=0){const i=r?$e(n.min,n.max,r):n.min;e.min=t.min-i,e.max=e.min+It(t)}function kh(e,t,n,r){W1(e.x,t.x,n.x,r==null?void 0:r.x),W1(e.y,t.y,n.y,r==null?void 0:r.y)}function H1(e,t,n,r,i){return e-=t,e=Nh(e,1/n,r),i!==void 0&&(e=Nh(e,1/i,r)),e}function JH(e,t=0,n=1,r=.5,i,a=e,o=e){if(Cs.test(t)&&(t=parseFloat(t),t=$e(o.min,o.max,t/100)-o.min),typeof t!="number")return;let l=$e(a.min,a.max,r);e===a&&(l-=t),e.min=H1(e.min,t,n,l,i),e.max=H1(e.max,t,n,l,i)}function G1(e,t,[n,r,i],a,o){JH(e,t[n],t[r],t[i],t.scale,a,o)}const ZH=["x","scaleX","originX"],eG=["y","scaleY","originY"];function q1(e,t,n,r){G1(e.x,t,ZH,n?n.x:void 0,r?r.x:void 0),G1(e.y,t,eG,n?n.y:void 0,r?r.y:void 0)}function K1(e){return e.translate===0&&e.scale===1}function t3(e){return K1(e.x)&&K1(e.y)}function Q1(e,t){return e.min===t.min&&e.max===t.max}function tG(e,t){return Q1(e.x,t.x)&&Q1(e.y,t.y)}function Y1(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function n3(e,t){return Y1(e.x,t.x)&&Y1(e.y,t.y)}function X1(e){return It(e.x)/It(e.y)}function J1(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function us(e){return[e("x"),e("y")]}function nG(e,t,n){let r="";const i=e.x.translate/t.x,a=e.y.translate/t.y,o=(n==null?void 0:n.z)||0;if((i||a||o)&&(r=`translate3d(${i}px, ${a}px, ${o}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:d,rotate:u,rotateX:h,rotateY:m,skewX:p,skewY:g}=n;d&&(r=`perspective(${d}px) ${r}`),u&&(r+=`rotate(${u}deg) `),h&&(r+=`rotateX(${h}deg) `),m&&(r+=`rotateY(${m}deg) `),p&&(r+=`skewX(${p}deg) `),g&&(r+=`skewY(${g}deg) `)}const l=e.x.scale*t.x,c=e.y.scale*t.y;return(l!==1||c!==1)&&(r+=`scale(${l}, ${c})`),r||"none"}const s3=["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"],sG=s3.length,Z1=e=>typeof e=="string"?parseFloat(e):e,ej=e=>typeof e=="number"||Y.test(e);function rG(e,t,n,r,i,a){i?(e.opacity=$e(0,n.opacity??1,iG(r)),e.opacityExit=$e(t.opacity??1,0,aG(r))):a&&(e.opacity=$e(t.opacity??1,n.opacity??1,r));for(let o=0;o<sG;o++){const l=s3[o];let c=tj(t,l),d=tj(n,l);if(c===void 0&&d===void 0)continue;c||(c=0),d||(d=0),c===0||d===0||ej(c)===ej(d)?(e[l]=Math.max($e(Z1(c),Z1(d),r),0),(Cs.test(d)||Cs.test(c))&&(e[l]+="%")):e[l]=d}(t.rotate||n.rotate)&&(e.rotate=$e(t.rotate||0,n.rotate||0,r))}function tj(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const iG=r3(0,.5,K5),aG=r3(.5,.95,An);function r3(e,t,n){return r=>r<e?0:r>t?1:n(Tc(e,t,r))}function oG(e,t,n){const r=bt(e)?e:Io(e);return r.start(Zv("",r,t,n)),r.animation}function Rc(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const lG=(e,t)=>e.depth-t.depth;class cG{constructor(){this.children=[],this.isDirty=!1}add(t){zv(this.children,t),this.isDirty=!0}remove(t){gh(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(lG),this.isDirty=!1,this.children.forEach(t)}}function dG(e,t){const n=Lt.now(),r=({timestamp:i})=>{const a=i-n;a>=t&&(ei(r),e(a-t))};return Ae.setup(r,!0),()=>ei(r)}function Pu(e){return bt(e)?e.get():e}class uG{constructor(){this.members=[]}add(t){zv(this.members,t);for(let n=this.members.length-1;n>=0;n--){const r=this.members[n];if(r===t||r===this.lead||r===this.prevLead)continue;const i=r.instance;(!i||i.isConnected===!1)&&!r.snapshot&&(gh(this.members,r),r.unmount())}t.scheduleRender()}remove(t){if(gh(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){var n;for(let r=this.members.indexOf(t)-1;r>=0;r--){const i=this.members[r];if(i.isPresent!==!1&&((n=i.instance)==null?void 0:n.isConnected)!==!1)return this.promote(i),!0}return!1}promote(t,n){var i;const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.updateSnapshot(),t.scheduleRender();const{layoutDependency:a}=r.options,{layoutDependency:o}=t.options;(a===void 0||a!==o)&&(t.resumeFrom=r,n&&(r.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),(i=t.root)!=null&&i.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{var n,r,i,a,o;(r=(n=t.options).onExitComplete)==null||r.call(n),(o=(i=t.resumingFrom)==null?void 0:(a=i.options).onExitComplete)==null||o.call(a)})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){var t;(t=this.lead)!=null&&t.snapshot&&(this.lead.snapshot=void 0)}}const Eu={hasAnimatedSinceResize:!0,hasEverUpdated:!1},Qp=["","X","Y","Z"],hG=1e3;let mG=0;function Yp(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function i3(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=SP(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:a}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",Ae,!(i||a))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&i3(r)}function a3({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(o={},l=t==null?void 0:t()){this.id=mG++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(xG),this.nodes.forEach(jG),this.nodes.forEach(NG),this.nodes.forEach(gG)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let c=0;c<this.path.length;c++)this.path[c].shouldResetTransform=!0;this.root===this&&(this.nodes=new cG)}addEventListener(o,l){return this.eventHandlers.has(o)||this.eventHandlers.set(o,new Uv),this.eventHandlers.get(o).add(l)}notifyListeners(o,...l){const c=this.eventHandlers.get(o);c&&c.notify(...l)}hasListeners(o){return this.eventHandlers.has(o)}mount(o){if(this.instance)return;this.isSVG=iy(o)&&!fH(o),this.instance=o;const{layoutId:l,layout:c,visualElement:d}=this.options;if(d&&!d.current&&d.mount(o),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||l)&&(this.isLayoutDirty=!0),e){let u,h=0;const m=()=>this.root.updateBlockedByResize=!1;Ae.read(()=>{h=window.innerWidth}),e(o,()=>{const p=window.innerWidth;p!==h&&(h=p,this.root.updateBlockedByResize=!0,u&&u(),u=dG(m,250),Eu.hasAnimatedSinceResize&&(Eu.hasAnimatedSinceResize=!1,this.nodes.forEach(rj)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&d&&(l||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:h,hasRelativeLayoutChanged:m,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||d.getDefaultTransition()||EG,{onLayoutAnimationStart:f,onLayoutAnimationComplete:b}=d.getProps(),v=!this.targetLayout||!n3(this.targetLayout,p),y=!h&&m;if(this.options.layoutRoot||this.resumeFrom||y||h&&(v||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const w={...Jv(g,"layout"),onPlay:f,onComplete:b};(d.shouldReduceMotion||this.options.layoutRoot)&&(w.delay=0,w.type=!1),this.startAnimation(w),this.setAnimationOrigin(u,y)}else h||rj(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),ei(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(kG),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&i3(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const h=this.path[u];h.shouldResetTransform=!0,(typeof h.latestValues.x=="string"||typeof h.latestValues.y=="string")&&(h.isLayoutDirty=!0),h.updateScroll("snapshot"),h.options.layoutRoot&&h.willUpdate(!1)}const{layoutId:l,layout:c}=this.options;if(l===void 0&&!c)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),o&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){const c=this.updateBlockedByResize;this.unblockUpdate(),this.updateBlockedByResize=!1,this.clearAllSnapshots(),c&&this.nodes.forEach(yG),this.nodes.forEach(nj);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(sj);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(bG),this.nodes.forEach(wG),this.nodes.forEach(pG),this.nodes.forEach(fG)):this.nodes.forEach(sj),this.clearAllSnapshots();const l=Lt.now();gt.delta=Ds(0,1e3/60,l-gt.timestamp),gt.timestamp=l,gt.isProcessing=!0,zp.update.process(gt),zp.preRender.process(gt),zp.render.process(gt),gt.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,sy.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(vG),this.sharedNodes.forEach(SG)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,Ae.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){Ae.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!It(this.snapshot.measuredBox.x)&&!It(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let c=0;c<this.path.length;c++)this.path[c].updateScroll();const o=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected||(this.layoutCorrected=ot()),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:l}=this.options;l&&l.notify("LayoutMeasure",this.layout.layoutBox,o?o.layoutBox:void 0)}updateScroll(o="measure"){let l=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===o&&(l=!1),l&&this.instance){const c=r(this.instance);this.scroll={animationId:this.root.animationId,phase:o,isRoot:c,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!i)return;const o=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,l=this.projectionDelta&&!t3(this.projectionDelta),c=this.getTransformTemplate(),d=c?c(this.latestValues,""):void 0,u=d!==this.prevTransformTemplateValue;o&&this.instance&&(l||Ni(this.latestValues)||u)&&(i(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(o=!0){const l=this.measurePageBox();let c=this.removeElementScroll(l);return o&&(c=this.removeTransform(c)),TG(c),{animationId:this.root.animationId,measuredBox:l,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var d;const{visualElement:o}=this.options;if(!o)return ot();const l=o.measureViewportBox();if(!(((d=this.scroll)==null?void 0:d.wasRoot)||this.path.some(_G))){const{scroll:u}=this.root;u&&(gs(l.x,u.offset.x),gs(l.y,u.offset.y))}return l}removeElementScroll(o){var c;const l=ot();if($n(l,o),(c=this.scroll)!=null&&c.wasRoot)return l;for(let d=0;d<this.path.length;d++){const u=this.path[d],{scroll:h,options:m}=u;u!==this.root&&h&&m.layoutScroll&&(h.wasRoot&&$n(l,o),gs(l.x,h.offset.x),gs(l.y,h.offset.y))}return l}applyTransform(o,l=!1,c){var u,h;const d=c||ot();$n(d,o);for(let m=0;m<this.path.length;m++){const p=this.path[m];!l&&p.options.layoutScroll&&p.scroll&&p!==p.root&&(gs(d.x,-p.scroll.offset.x),gs(d.y,-p.scroll.offset.y)),Ni(p.latestValues)&&Cu(d,p.latestValues,(u=p.layout)==null?void 0:u.layoutBox)}return Ni(this.latestValues)&&Cu(d,this.latestValues,(h=this.layout)==null?void 0:h.layoutBox),d}removeTransform(o){var c;const l=ot();$n(l,o);for(let d=0;d<this.path.length;d++){const u=this.path[d];if(!Ni(u.latestValues))continue;let h;u.instance&&(jg(u.latestValues)&&u.updateSnapshot(),h=ot(),$n(h,u.measurePageBox())),q1(l,u.latestValues,(c=u.snapshot)==null?void 0:c.layoutBox,h)}return Ni(this.latestValues)&&q1(l,this.latestValues),l}setTargetDelta(o){this.targetDelta=o,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(o){this.options={...this.options,...o,crossfade:o.crossfade!==void 0?o.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==gt.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(o=!1){var p;const l=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=l.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=l.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=l.isSharedProjectionDirty);const c=!!this.resumingFrom||this!==l;if(!(o||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(p=this.parent)!=null&&p.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:h}=this.options;if(!this.layout||!(u||h))return;this.resolvedRelativeTargetAt=gt.timestamp;const m=this.getClosestProjectingParent();m&&this.linkedParentVersion!==m.layoutVersion&&!m.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(this.options.layoutAnchor!==!1&&m&&m.layout?this.createRelativeTarget(m,this.layout.layoutBox,m.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=ot(),this.targetWithTransforms=ot()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),XH(this.target,this.relativeTarget,this.relativeParent.target,this.options.layoutAnchor||void 0)):this.targetDelta?(this.resumingFrom?this.applyTransform(this.layout.layoutBox,!1,this.target):$n(this.target,this.layout.layoutBox),VP(this.target,this.targetDelta)):$n(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,this.options.layoutAnchor!==!1&&m&&!!m.resumingFrom==!!this.resumingFrom&&!m.options.layoutScroll&&m.target&&this.animationProgress!==1?this.createRelativeTarget(m,this.target,m.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||jg(this.parent.latestValues)||UP(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(o,l,c){this.relativeParent=o,this.linkedParentVersion=o.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=ot(),this.relativeTargetOrigin=ot(),kh(this.relativeTargetOrigin,l,c,this.options.layoutAnchor||void 0),$n(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){var g;const o=this.getLead(),l=!!this.resumingFrom||this!==o;let c=!0;if((this.isProjectionDirty||(g=this.parent)!=null&&g.isProjectionDirty)&&(c=!1),l&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===gt.timestamp&&(c=!1),c)return;const{layout:d,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(d||u))return;$n(this.layoutCorrected,this.layout.layoutBox);const h=this.treeScale.x,m=this.treeScale.y;CH(this.layoutCorrected,this.treeScale,this.path,l),o.layout&&!o.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(o.target=o.layout.layoutBox,o.targetWithTransforms=ot());const{target:p}=o;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(z1(this.prevProjectionDelta.x,this.projectionDelta.x),z1(this.prevProjectionDelta.y,this.projectionDelta.y)),Ql(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==h||this.treeScale.y!==m||!J1(this.projectionDelta.x,this.prevProjectionDelta.x)||!J1(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(o=!0){var l;if((l=this.options.visualElement)==null||l.scheduleRender(),o){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Ua(),this.projectionDelta=Ua(),this.projectionDeltaWithTransform=Ua()}setAnimationOrigin(o,l=!1){const c=this.snapshot,d=c?c.latestValues:{},u={...this.latestValues},h=Ua();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!l;const m=ot(),p=c?c.source:void 0,g=this.layout?this.layout.source:void 0,f=p!==g,b=this.getStack(),v=!b||b.members.length<=1,y=!!(f&&!v&&this.options.crossfade===!0&&!this.path.some(PG));this.animationProgress=0;let w;this.mixTargetDelta=j=>{const N=j/1e3;ij(h.x,o.x,N),ij(h.y,o.y,N),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(kh(m,this.layout.layoutBox,this.relativeParent.layout.layoutBox,this.options.layoutAnchor||void 0),CG(this.relativeTarget,this.relativeTargetOrigin,m,N),w&&tG(this.relativeTarget,w)&&(this.isProjectionDirty=!1),w||(w=ot()),$n(w,this.relativeTarget)),f&&(this.animationValues=u,rG(u,d,this.latestValues,N,y,v)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=N},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){var l,c,d;this.notifyListeners("animationStart"),(l=this.currentAnimation)==null||l.stop(),(d=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||d.stop(),this.pendingAnimation&&(ei(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Ae.update(()=>{Eu.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=Io(0)),this.motionValue.jump(0,!1),this.currentAnimation=oG(this.motionValue,[0,1e3],{...o,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),o.onUpdate&&o.onUpdate(u)},onStop:()=>{},onComplete:()=>{o.onComplete&&o.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(hG),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:l,target:c,layout:d,latestValues:u}=o;if(!(!l||!c||!d)){if(this!==o&&this.layout&&d&&o3(this.options.animationType,this.layout.layoutBox,d.layoutBox)){c=this.target||ot();const h=It(this.layout.layoutBox.x);c.x.min=o.target.x.min,c.x.max=c.x.min+h;const m=It(this.layout.layoutBox.y);c.y.min=o.target.y.min,c.y.max=c.y.min+m}$n(l,c),Cu(l,u),Ql(this.projectionDeltaWithTransform,this.layoutCorrected,l,u)}}registerSharedNode(o,l){this.sharedNodes.has(o)||this.sharedNodes.set(o,new uG),this.sharedNodes.get(o).add(l);const d=l.options.initialPromotionConfig;l.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(l):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var l;const{layoutId:o}=this.options;return o?((l=this.getStack())==null?void 0:l.lead)||this:this}getPrevLead(){var l;const{layoutId:o}=this.options;return o?(l=this.getStack())==null?void 0:l.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:l,preserveFollowOpacity:c}={}){const d=this.getStack();d&&d.promote(this,c),o&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetSkewAndRotation(){const{visualElement:o}=this.options;if(!o)return;let l=!1;const{latestValues:c}=o;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(l=!0),!l)return;const d={};c.z&&Yp("z",o,d,this.animationValues);for(let u=0;u<Qp.length;u++)Yp(`rotate${Qp[u]}`,o,d,this.animationValues),Yp(`skew${Qp[u]}`,o,d,this.animationValues);o.render();for(const u in d)o.setStaticValue(u,d[u]),this.animationValues&&(this.animationValues[u]=d[u]);o.scheduleRender()}applyProjectionStyles(o,l){if(!this.instance||this.isSVG)return;if(!this.isVisible){o.visibility="hidden";return}const c=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,o.visibility="",o.opacity="",o.pointerEvents=Pu(l==null?void 0:l.pointerEvents)||"",o.transform=c?c(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(o.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,o.pointerEvents=Pu(l==null?void 0:l.pointerEvents)||""),this.hasProjected&&!Ni(this.latestValues)&&(o.transform=c?c({},""):"none",this.hasProjected=!1);return}o.visibility="";const u=d.animationValues||d.latestValues;this.applyTransformsToTarget();let h=nG(this.projectionDeltaWithTransform,this.treeScale,u);c&&(h=c(u,h)),o.transform=h;const{x:m,y:p}=this.projectionDelta;o.transformOrigin=`${m.origin*100}% ${p.origin*100}% 0`,d.animationValues?o.opacity=d===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:o.opacity=d===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const g in kg){if(u[g]===void 0)continue;const{correct:f,applyTo:b,isCSSVariable:v}=kg[g],y=h==="none"?u[g]:f(u[g],d);if(b){const w=b.length;for(let j=0;j<w;j++)o[b[j]]=y}else v?this.options.visualElement.renderState.vars[g]=y:o[g]=y}this.options.layoutId&&(o.pointerEvents=d===this?Pu(l==null?void 0:l.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(o=>{var l;return(l=o.currentAnimation)==null?void 0:l.stop()}),this.root.nodes.forEach(nj),this.root.sharedNodes.clear()}}}function pG(e){e.updateLayout()}function fG(e){var n;const t=((n=e.resumeFrom)==null?void 0:n.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:a}=e.options,o=t.source!==e.layout.source;if(a==="size")us(h=>{const m=o?t.measuredBox[h]:t.layoutBox[h],p=It(m);m.min=r[h].min,m.max=m.min+p});else if(a==="x"||a==="y"){const h=a==="x"?"y":"x";Sg(o?t.measuredBox[h]:t.layoutBox[h],r[h])}else o3(a,t.layoutBox,r)&&us(h=>{const m=o?t.measuredBox[h]:t.layoutBox[h],p=It(r[h]);m.max=m.min+p,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[h].max=e.relativeTarget[h].min+p)});const l=Ua();Ql(l,r,t.layoutBox);const c=Ua();o?Ql(c,e.applyTransform(i,!0),t.measuredBox):Ql(c,r,t.layoutBox);const d=!t3(l);let u=!1;if(!e.resumeFrom){const h=e.getClosestProjectingParent();if(h&&!h.resumeFrom){const{snapshot:m,layout:p}=h;if(m&&p){const g=e.options.layoutAnchor||void 0,f=ot();kh(f,t.layoutBox,m.layoutBox,g);const b=ot();kh(b,r,p.layoutBox,g),n3(f,b)||(u=!0),h.options.layoutRoot&&(e.relativeTarget=b,e.relativeTargetOrigin=f,e.relativeParent=h)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:t,delta:c,layoutDelta:l,hasLayoutChanged:d,hasRelativeLayoutChanged:u})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function xG(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function gG(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function vG(e){e.clearSnapshot()}function nj(e){e.clearMeasurements()}function yG(e){e.isLayoutDirty=!0,e.updateLayout()}function sj(e){e.isLayoutDirty=!1}function bG(e){e.isAnimationBlocked&&e.layout&&!e.isLayoutDirty&&(e.snapshot=e.layout,e.isLayoutDirty=!0)}function wG(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function rj(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function jG(e){e.resolveTargetDelta()}function NG(e){e.calcProjection()}
952function kG(e){e.resetSkewAndRotation()}function SG(e){e.removeLeadSnapshot()}function ij(e,t,n){e.translate=$e(t.translate,0,n),e.scale=$e(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function aj(e,t,n,r){e.min=$e(t.min,n.min,r),e.max=$e(t.max,n.max,r)}function CG(e,t,n,r){aj(e.x,t.x,n.x,r),aj(e.y,t.y,n.y,r)}function PG(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const EG={duration:.45,ease:[.4,0,.1,1]},oj=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),lj=oj("applewebkit/")&&!oj("chrome/")?Math.round:An;function cj(e){e.min=lj(e.min),e.max=lj(e.max)}function TG(e){cj(e.x),cj(e.y)}function o3(e,t,n){return e==="position"||e==="preserve-aspect"&&!YH(X1(t),X1(n),.2)}function _G(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const AG=a3({attachResizeListener:(e,t)=>Rc(e,"resize",t),measureScroll:()=>{var e,t;return{x:document.documentElement.scrollLeft||((e=document.body)==null?void 0:e.scrollLeft)||0,y:document.documentElement.scrollTop||((t=document.body)==null?void 0:t.scrollTop)||0}},checkIsScrollRoot:()=>!0}),Xp={current:void 0},l3=a3({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Xp.current){const e=new AG({});e.mount(window),e.setOptions({layoutScroll:!0}),Xp.current=e}return Xp.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),dy=x.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function dj(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function RG(...e){return t=>{let n=!1;const r=e.map(i=>{const a=dj(i,t);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let i=0;i<r.length;i++){const a=r[i];typeof a=="function"?a():dj(e[i],null)}}}}function DG(...e){return x.useCallback(RG(...e),e)}class MG extends x.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(ju(n)&&t.isPresent&&!this.props.isPresent&&this.props.pop!==!1){const r=n.offsetParent,i=ju(r)&&r.offsetWidth||0,a=ju(r)&&r.offsetHeight||0,o=getComputedStyle(n),l=this.props.sizeRef.current;l.height=parseFloat(o.height),l.width=parseFloat(o.width),l.top=n.offsetTop,l.left=n.offsetLeft,l.right=i-l.width-l.left,l.bottom=a-l.height-l.top}return null}componentDidUpdate(){}render(){return this.props.children}}function LG({children:e,isPresent:t,anchorX:n,anchorY:r,root:i,pop:a}){var m;const o=x.useId(),l=x.useRef(null),c=x.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:d}=x.useContext(dy),u=((m=e.props)==null?void 0:m.ref)??(e==null?void 0:e.ref),h=DG(l,u);return x.useInsertionEffect(()=>{const{width:p,height:g,top:f,left:b,right:v,bottom:y}=c.current;if(t||a===!1||!l.current||!p||!g)return;const w=n==="left"?`left: ${b}`:`right: ${v}`,j=r==="bottom"?`bottom: ${y}`:`top: ${f}`;l.current.dataset.motionPopId=o;const N=document.createElement("style");d&&(N.nonce=d);const C=i??document.head;return C.appendChild(N),N.sheet&&N.sheet.insertRule(` 953 [data-motion-pop-id="${o}"] { 954 position: absolute !important; 955 width: ${p}px !important; 956 height: ${g}px !important; 957 ${w}px !important; 958 ${j}px !important; 959 } 960 `),()=>{var k;(k=l.current)==null||k.removeAttribute("data-motion-pop-id"),C.contains(N)&&C.removeChild(N)}},[t]),s.jsx(MG,{isPresent:t,childRef:l,sizeRef:c,pop:a,children:a===!1?e:x.cloneElement(e,{ref:h})})}const IG=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:a,mode:o,anchorX:l,anchorY:c,root:d})=>{const u=Bv(OG),h=x.useId();let m=!0,p=x.useMemo(()=>(m=!1,{id:h,initial:t,isPresent:n,custom:i,onExitComplete:g=>{u.set(g,!0);for(const f of u.values())if(!f)return;r&&r()},register:g=>(u.set(g,!1),()=>u.delete(g))}),[n,u,r]);return a&&m&&(p={...p}),x.useMemo(()=>{u.forEach((g,f)=>u.set(f,!1))},[n]),x.useEffect(()=>{!n&&!u.size&&r&&r()},[n]),e=s.jsx(LG,{pop:o==="popLayout",isPresent:n,anchorX:l,anchorY:c,root:d,children:e}),s.jsx(Nm.Provider,{value:p,children:e})};function OG(){return new Map}function c3(e=!0){const t=x.useContext(Nm);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,a=x.useId();x.useEffect(()=>{if(e)return i(a)},[e]);const o=x.useCallback(()=>e&&r&&r(a),[a,r,e]);return!n&&r?[!1,o]:[!0]}const Jd=e=>e.key||"";function uj(e){const t=[];
vendor: 4,469 bytes, line 960
960return x.Children.forEach(e,n=>{x.isValidElement(n)&&t.push(n)}),t}const FG=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:i=!0,mode:a="sync",propagate:o=!1,anchorX:l="left",anchorY:c="top",root:d})=>{const[u,h]=c3(o),m=x.useMemo(()=>uj(e),[e]),p=o&&!u?[]:m.map(Jd),g=x.useRef(!0),f=x.useRef(m),b=Bv(()=>new Map),v=x.useRef(new Set),[y,w]=x.useState(m),[j,N]=x.useState(m);I5(()=>{g.current=!1,f.current=m;for(let P=0;P<j.length;P++){const _=Jd(j[P]);p.includes(_)?(b.delete(_),v.current.delete(_)):b.get(_)!==!0&&b.set(_,!1)}},[j,p.length,p.join("-")]);const C=[];if(m!==y){let P=[...m];for(let _=0;_<j.length;_++){const T=j[_],R=Jd(T);p.includes(R)||(P.splice(_,0,T),C.push(T))}return a==="wait"&&C.length&&(P=C),N(uj(P)),w(m),null}const{forceRender:k}=x.useContext($v);return s.jsx(s.Fragment,{children:j.map(P=>{const _=Jd(P),T=o&&!u?!1:m===j||p.includes(_),R=()=>{if(v.current.has(_))return;if(b.has(_))v.current.add(_),b.set(_,!0);else return;let L=!0;b.forEach(W=>{W||(L=!1)}),L&&(k==null||k(),N(f.current),o&&(h==null||h()),r&&r())};return s.jsx(IG,{isPresent:T,initial:!g.current||n?void 0:!1,custom:t,presenceAffectsLayout:i,mode:a,root:d,onExitComplete:T?void 0:R,anchorX:l,anchorY:c,children:P},_)})})},d3=x.createContext({strict:!1}),hj={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let mj=!1;function $G(){if(mj)return;const e={};for(const t in hj)e[t]={isEnabled:n=>hj[t].some(r=>!!n[r])};$P(e),mj=!0}function u3(){return $G(),jH()}function BG(e){const t=u3();for(const n in e)t[n]={...t[n],...e[n]};$P(t)}const zG=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Sh(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||zG.has(e)}let h3=e=>!Sh(e);function UG(e){typeof e=="function"&&(h3=t=>t.startsWith("on")?!Sh(t):e(t))}try{UG(require("@emotion/is-prop-valid").default)}catch{}function VG(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||bt(e[i])||(h3(i)||n===!0&&Sh(i)||!t&&!Sh(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}const Em=x.createContext({});function WG(e,t){if(Pm(e)){const{initial:n,animate:r}=e;return{initial:n===!1||Ac(n)?n:void 0,animate:Ac(r)?r:void 0}}return e.inherit!==!1?t:{}}function HG(e){const{initial:t,animate:n}=WG(e,x.useContext(Em));return x.useMemo(()=>({initial:t,animate:n}),[pj(t),pj(n)])}function pj(e){return Array.isArray(e)?e.join(" "):e}const uy=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function m3(e,t,n){for(const r in t)!bt(t[r])&&!GP(r,n)&&(e[r]=t[r])}function GG({transformTemplate:e},t){return x.useMemo(()=>{const n=uy();return ly(n,t,e),Object.assign({},n.vars,n.style)},[t])}function qG(e,t){const n=e.style||{},r={};return m3(r,n,e),Object.assign(r,GG(e,t)),r}function KG(e,t){const n={},r=qG(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const p3=()=>({...uy(),attrs:{}});function QG(e,t,n,r){const i=x.useMemo(()=>{const a=p3();return qP(a,t,QP(r),e.transformTemplate,e.style),{...a.attrs,style:{...a.style}}},[t]);if(e.style){const a={};m3(a,e.style,e),i.style={...a,...i.style}}return i}const YG=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function hy(e){return typeof e!="string"||e.includes("-")?!1:!!(YG.indexOf(e)>-1||/[A-Z]/u.test(e))}
vendor: 22,869 bytes, line 960
960function XG(e,t,n,{latestValues:r},i,a=!1,o){const c=(o??hy(e)?QG:KG)(t,r,i,e),d=VG(t,typeof e=="string",a),u=e!==x.Fragment?{...d,...c,ref:n}:{},{children:h}=t,m=x.useMemo(()=>bt(h)?h.get():h,[h]);return x.createElement(e,{...u,children:m})}function JG({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:ZG(n,r,i,e),renderState:t()}}function ZG(e,t,n,r){const i={},a=r(e,{});for(const m in a)i[m]=Pu(a[m]);let{initial:o,animate:l}=e;const c=Pm(e),d=OP(e);t&&d&&!c&&e.inherit!==!1&&(o===void 0&&(o=t.initial),l===void 0&&(l=t.animate));let u=n?n.initial===!1:!1;u=u||o===!1;const h=u?l:o;if(h&&typeof h!="boolean"&&!Cm(h)){const m=Array.isArray(h)?h:[h];for(let p=0;p<m.length;p++){const g=ey(e,m[p]);if(g){const{transitionEnd:f,transition:b,...v}=g;for(const y in v){let w=v[y];if(Array.isArray(w)){const j=u?w.length-1:0;w=w[j]}w!==null&&(i[y]=w)}for(const y in f)i[y]=f[y]}}}return i}const f3=e=>(t,n)=>{const r=x.useContext(Em),i=x.useContext(Nm),a=()=>JG(e,t,r,i);return n?a():Bv(a)},eq=f3({scrapeMotionValuesFromProps:cy,createRenderState:uy}),tq=f3({scrapeMotionValuesFromProps:YP,createRenderState:p3}),nq=Symbol.for("motionComponentSymbol");function sq(e,t,n){const r=x.useRef(n);x.useInsertionEffect(()=>{r.current=n});const i=x.useRef(null);return x.useCallback(a=>{var l;a&&((l=e.onMount)==null||l.call(e,a));const o=r.current;if(typeof o=="function")if(a){const c=o(a);typeof c=="function"&&(i.current=c)}else i.current?(i.current(),i.current=null):o(a);else o&&(o.current=a);t&&(a?t.mount(a):t.unmount())},[t])}const x3=x.createContext({});function Ca(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function rq(e,t,n,r,i,a){var w,j;const{visualElement:o}=x.useContext(Em),l=x.useContext(d3),c=x.useContext(Nm),d=x.useContext(dy),u=d.reducedMotion,h=d.skipAnimations,m=x.useRef(null),p=x.useRef(!1);r=r||l.renderer,!m.current&&r&&(m.current=r(e,{visualState:t,parent:o,props:n,presenceContext:c,blockInitialAnimation:c?c.initial===!1:!1,reducedMotionConfig:u,skipAnimations:h,isSVG:a}),p.current&&m.current&&(m.current.manuallyAnimateOnMount=!0));const g=m.current,f=x.useContext(x3);g&&!g.projection&&i&&(g.type==="html"||g.type==="svg")&&iq(m.current,n,i,f);const b=x.useRef(!1);x.useInsertionEffect(()=>{g&&b.current&&g.update(n,c)});const v=n[kP],y=x.useRef(!!v&&typeof window<"u"&&!((w=window.MotionHandoffIsComplete)!=null&&w.call(window,v))&&((j=window.MotionHasOptimisedAnimation)==null?void 0:j.call(window,v)));return I5(()=>{p.current=!0,g&&(b.current=!0,window.MotionIsMounted=!0,g.updateFeatures(),g.scheduleRenderMicrotask(),y.current&&g.animationState&&g.animationState.animateChanges())}),x.useEffect(()=>{g&&(!y.current&&g.animationState&&g.animationState.animateChanges(),y.current&&(queueMicrotask(()=>{var N;(N=window.MotionHandoffMarkAsComplete)==null||N.call(window,v)}),y.current=!1),g.enteringChildren=void 0)}),g}function iq(e,t,n,r){const{layoutId:i,layout:a,drag:o,dragConstraints:l,layoutScroll:c,layoutRoot:d,layoutAnchor:u,layoutCrossfade:h}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:g3(e.parent)),e.projection.setOptions({layoutId:i,layout:a,alwaysMeasureLayout:!!o||l&&Ca(l),visualElement:e,animationType:typeof a=="string"?a:"both",initialPromotionConfig:r,crossfade:h,layoutScroll:c,layoutRoot:d,layoutAnchor:u})}function g3(e){if(e)return e.options.allowProjection!==!1?e.projection:g3(e.parent)}function Jp(e,{forwardMotionProps:t=!1,type:n}={},r,i){r&&BG(r);const a=n?n==="svg":hy(e),o=a?tq:eq;function l(d,u){let h;const m={...x.useContext(dy),...d,layoutId:aq(d)},{isStatic:p}=m,g=HG(d),f=o(d,p);if(!p&&typeof window<"u"){oq();const b=lq(m);h=b.MeasureLayout,g.visualElement=rq(e,f,m,i,b.ProjectionNode,a)}return s.jsxs(Em.Provider,{value:g,children:[h&&g.visualElement?s.jsx(h,{visualElement:g.visualElement,...m}):null,XG(e,d,sq(f,g.visualElement,u),f,p,t,a)]})}l.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const c=x.forwardRef(l);return c[nq]=e,c}function aq({layoutId:e}){const t=x.useContext($v).id;return t&&e!==void 0?t+"-"+e:e}function oq(e,t){x.useContext(d3).strict}function lq(e){const t=u3(),{drag:n,layout:r}=t;if(!n&&!r)return{};const i={...n,...r};return{MeasureLayout:n!=null&&n.isEnabled(e)||r!=null&&r.isEnabled(e)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}function cq(e,t){if(typeof Proxy>"u")return Jp;const n=new Map,r=(a,o)=>Jp(a,o,e,t),i=(a,o)=>r(a,o);return new Proxy(i,{get:(a,o)=>o==="create"?r:(n.has(o)||n.set(o,Jp(o,void 0,e,t)),n.get(o))})}const dq=(e,t)=>t.isSVG??hy(e)?new $H(t):new DH(t,{allowProjection:e!==x.Fragment});class uq extends mi{constructor(t){super(t),t.animationState||(t.animationState=WH(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Cm(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)==null||t.call(this)}}let hq=0;class mq extends mi{constructor(){super(...arguments),this.id=hq++,this.isExitComplete=!1}update(){var a;if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;if(t&&r===!1){if(this.isExitComplete){const{initial:o,custom:l}=this.node.getProps();if(typeof o=="string"){const c=Ui(this.node,o,l);if(c){const{transition:d,transitionEnd:u,...h}=c;for(const m in h)(a=this.node.getValue(m))==null||a.jump(h[m])}}this.node.animationState.reset(),this.node.animationState.animateChanges()}else this.node.animationState.setActive("exit",!1);this.isExitComplete=!1;return}const i=this.node.animationState.setActive("exit",!t);n&&!t&&i.then(()=>{this.isExitComplete=!0,n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const pq={animation:{Feature:uq},exit:{Feature:mq}};function hd(e){return{point:{x:e.pageX,y:e.pageY}}}const fq=e=>t=>ry(t)&&e(t,hd(t));function Yl(e,t,n,r){return Rc(e,t,fq(n),r)}const v3=({current:e})=>e?e.ownerDocument.defaultView:null,fj=(e,t)=>Math.abs(e-t);function xq(e,t){const n=fj(e.x,t.x),r=fj(e.y,t.y);return Math.sqrt(n**2+r**2)}const xj=new Set(["auto","scroll"]);class y3{constructor(t,n,{transformPagePoint:r,contextWindow:i=window,dragSnapToOrigin:a=!1,distanceThreshold:o=3,element:l}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.lastRawMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=p=>{this.handleScroll(p.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;this.lastRawMoveEventInfo&&(this.lastMoveEventInfo=Zd(this.lastRawMoveEventInfo,this.transformPagePoint));const p=Zp(this.lastMoveEventInfo,this.history),g=this.startEvent!==null,f=xq(p.offset,{x:0,y:0})>=this.distanceThreshold;if(!g&&!f)return;const{point:b}=p,{timestamp:v}=gt;this.history.push({...b,timestamp:v});const{onStart:y,onMove:w}=this.handlers;g||(y&&y(this.lastMoveEvent,p),this.startEvent=this.lastMoveEvent),w&&w(this.lastMoveEvent,p)},this.handlePointerMove=(p,g)=>{this.lastMoveEvent=p,this.lastRawMoveEventInfo=g,this.lastMoveEventInfo=Zd(g,this.transformPagePoint),Ae.update(this.updatePoint,!0)},this.handlePointerUp=(p,g)=>{this.end();const{onEnd:f,onSessionEnd:b,resumeAnimation:v}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&v&&v(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const y=Zp(p.type==="pointercancel"?this.lastMoveEventInfo:Zd(g,this.transformPagePoint),this.history);this.startEvent&&f&&f(p,y),b&&b(p,y)},!ry(t))return;this.dragSnapToOrigin=a,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=o,this.contextWindow=i||window;const c=hd(t),d=Zd(c,this.transformPagePoint),{point:u}=d,{timestamp:h}=gt;this.history=[{...u,timestamp:h}];const{onSessionStart:m}=n;m&&m(t,Zp(d,this.history)),this.removeListeners=cd(Yl(this.contextWindow,"pointermove",this.handlePointerMove),Yl(this.contextWindow,"pointerup",this.handlePointerUp),Yl(this.contextWindow,"pointercancel",this.handlePointerUp)),l&&this.startScrollTracking(l)}startScrollTracking(t){let n=t.parentElement;for(;n;){const r=getComputedStyle(n);(xj.has(r.overflowX)||xj.has(r.overflowY))&&this.scrollPositions.set(n,{x:n.scrollLeft,y:n.scrollTop}),n=n.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const n=this.scrollPositions.get(t);if(!n)return;const r=t===window,i=r?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},a={x:i.x-n.x,y:i.y-n.y};a.x===0&&a.y===0||(r?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=a.x,this.lastMoveEventInfo.point.y+=a.y):this.history.length>0&&(this.history[0].x-=a.x,this.history[0].y-=a.y),this.scrollPositions.set(t,i),Ae.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),ei(this.updatePoint)}}function Zd(e,t){return t?{point:t(e.point)}:e}function gj(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Zp({point:e},t){return{point:e,delta:gj(e,b3(t)),offset:gj(e,gq(t)),velocity:vq(t,.1)}}function gq(e){return e[0]}function b3(e){return e[e.length-1]}function vq(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=b3(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>en(t)));)n--;if(!r)return{x:0,y:0};r===e[0]&&e.length>2&&i.timestamp-r.timestamp>en(t)*2&&(r=e[1]);const a=Cn(i.timestamp-r.timestamp);if(a===0)return{x:0,y:0};const o={x:(i.x-r.x)/a,y:(i.y-r.y)/a};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function yq(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?$e(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?$e(n,e,r.max):Math.min(e,n)),e}function vj(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function bq(e,{top:t,left:n,bottom:r,right:i}){return{x:vj(e.x,n,i),y:vj(e.y,t,r)}}function yj(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function wq(e,t){return{x:yj(e.x,t.x),y:yj(e.y,t.y)}}function jq(e,t){let n=.5;const r=It(e),i=It(t);return i>r?n=Tc(t.min,t.max-r,e.min):r>i&&(n=Tc(e.min,e.max-i,t.min)),Ds(0,1,n)}function Nq(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const Cg=.35;function kq(e=Cg){return e===!1?e=0:e===!0&&(e=Cg),{x:bj(e,"left","right"),y:bj(e,"top","bottom")}}function bj(e,t,n){return{min:wj(e,t),max:wj(e,n)}}function wj(e,t){return typeof e=="number"?e:e[t]||0}const Sq=new WeakMap;class Cq{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=ot(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const a=h=>{n&&this.snapToCursor(hd(h).point),this.stopAnimation()},o=(h,m)=>{const{drag:p,dragPropagation:g,onDragStart:f}=this.getProps();if(p&&!g&&(this.openDragLock&&this.openDragLock(),this.openDragLock=JW(p),!this.openDragLock))return;this.latestPointerEvent=h,this.latestPanInfo=m,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),us(v=>{let y=this.getAxisMotionValue(v).get()||0;if(Cs.test(y)){const{projection:w}=this.visualElement;if(w&&w.layout){const j=w.layout.layoutBox[v];j&&(y=It(j)*(parseFloat(y)/100))}}this.originPoint[v]=y}),f&&Ae.update(()=>f(h,m),!1,!0),gg(this.visualElement,"transform");const{animationState:b}=this.visualElement;b&&b.setActive("whileDrag",!0)},l=(h,m)=>{this.latestPointerEvent=h,this.latestPanInfo=m;const{dragPropagation:p,dragDirectionLock:g,onDirectionLock:f,onDrag:b}=this.getProps();if(!p&&!this.openDragLock)return;const{offset:v}=m;if(g&&this.currentDirection===null){this.currentDirection=Eq(v),this.currentDirection!==null&&f&&f(this.currentDirection);return}this.updateAxis("x",m.point,v),this.updateAxis("y",m.point,v),this.visualElement.render(),b&&Ae.update(()=>b(h,m),!1,!0)},c=(h,m)=>{this.latestPointerEvent=h,this.latestPanInfo=m,this.stop(h,m),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>{const{dragSnapToOrigin:h}=this.getProps();(h||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:u}=this.getProps();this.panSession=new y3(t,{onSessionStart:a,onStart:o,onMove:l,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:r,contextWindow:v3(this.visualElement),element:this.visualElement.current})}stop(t,n){const r=t||this.latestPointerEvent,i=n||this.latestPanInfo,a=this.isDragging;if(this.cancel(),!a||!i||!r)return;const{velocity:o}=i;this.startAnimation(o);const{onDragEnd:l}=this.getProps();l&&Ae.postRender(()=>l(r,i))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!eu(t,i,this.currentDirection))return;const a=this.getAxisMotionValue(t);let o=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(o=yq(o,this.constraints[t],this.elastic[t])),a.set(o)}resolveConstraints(){var a;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(a=this.visualElement.projection)==null?void 0:a.layout,i=this.constraints;t&&Ca(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=bq(r.layoutBox,t):this.constraints=!1,this.elastic=kq(n),i!==this.constraints&&!Ca(t)&&r&&this.constraints&&!this.hasMutatedConstraints&&us(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=Nq(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Ca(t))return!1;const r=t.current;Mo(r!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");const{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const a=PH(r,i.root,this.visualElement.getTransformPagePoint());let o=wq(i.layout.layoutBox,a);if(n){const l=n(kH(o));this.hasMutatedConstraints=!!l,l&&(o=zP(l))}return o}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:a,dragSnapToOrigin:o,onDragTransitionEnd:l}=this.getProps(),c=this.constraints||{},d=us(u=>{if(!eu(u,n,this.currentDirection))return;let h=c&&c[u]||{};(o===!0||o===u)&&(h={min:0,max:0});const m=i?200:1e6,p=i?40:1e7,g={type:"inertia",velocity:r?t[u]:0,bounceStiffness:m,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...a,...h};return this.startAxisValueAnimation(u,g)});return Promise.all(d).then(l)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return gg(this.visualElement,t),r.start(Zv(t,r,0,n,this.visualElement,!1))}stopAnimation(){us(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){us(n=>{const{drag:r}=this.getProps();if(!eu(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,a=this.getAxisMotionValue(n);if(i&&i.layout){const{min:o,max:l}=i.layout.layoutBox[n],c=a.get()||0;a.set(t[n]-$e(o,l,.5)+c)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Ca(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};us(o=>{const l=this.getAxisMotionValue(o);if(l&&this.constraints!==!1){const c=l.get();i[o]=jq({min:c,max:c},this.constraints[o])}});const{transformTemplate:a}=this.visualElement.getProps();this.visualElement.current.style.transform=a?a({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.constraints=!1,this.resolveConstraints(),us(o=>{if(!eu(o,t,null))return;const l=this.getAxisMotionValue(o),{min:c,max:d}=this.constraints[o];l.set($e(c,d,i[o]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;Sq.set(this.visualElement,this);const t=this.visualElement.current,n=Yl(t,"pointerdown",d=>{const{drag:u,dragListener:h=!0}=this.getProps(),m=d.target,p=m!==t&&rH(m);u&&h&&!p&&this.start(d)});let r;const i=()=>{const{dragConstraints:d}=this.getProps();Ca(d)&&d.current&&(this.constraints=this.resolveRefConstraints(),r||(r=Pq(t,d.current,()=>this.scalePositionWithinConstraints())))},{projection:a}=this.visualElement,o=a.addEventListener("measure",i);a&&!a.layout&&(a.root&&a.root.updateScroll(),a.updateLayout()),Ae.read(i);const l=Rc(window,"resize",()=>this.scalePositionWithinConstraints()),c=a.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u})=>{this.isDragging&&u&&(us(h=>{const m=this.getAxisMotionValue(h);m&&(this.originPoint[h]+=d[h].translate,m.set(m.get()+d[h].translate))}),this.visualElement.render())});return()=>{l(),n(),o(),c&&c(),r&&r()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:a=!1,dragElastic:o=Cg,dragMomentum:l=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:a,dragElastic:o,dragMomentum:l}}}function jj(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function Pq(e,t,n){const r=T1(e,jj(n)),i=T1(t,jj(n));return()=>{r(),i()}}function eu(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Eq(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Tq extends mi{constructor(t){super(t),this.removeGroupControls=An,this.removeListeners=An,this.controls=new Cq(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||An}update(){const{dragControls:t}=this.node.getProps(),{dragControls:n}=this.node.prevProps||{};t!==n&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const ef=e=>(t,n)=>{e&&Ae.update(()=>e(t,n),!1,!0)};class _q extends mi{constructor(){super(...arguments),this.removePointerDownListener=An}onPointerDown(t){this.session=new y3(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:v3(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:ef(t),onStart:ef(n),onMove:ef(r),onEnd:(a,o)=>{delete this.session,i&&Ae.postRender(()=>i(a,o))}}}mount(){this.removePointerDownListener=Yl(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let tf=!1;class Aq extends x.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:a}=t;a&&(n.group&&n.group.add(a),r&&r.register&&i&&r.register(a),tf&&a.root.didUpdate(),a.addEventListener("animationComplete",()=>{this.safeToRemove()}),a.setOptions({...a.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),Eu.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:a}=this.props,{projection:o}=r;return o&&(o.isPresent=a,t.layoutDependency!==n&&o.setOptions({...o.options,layoutDependency:n}),tf=!0,i||t.layoutDependency!==n||n===void 0||t.isPresent!==a?o.willUpdate():this.safeToRemove(),t.isPresent!==a&&(a?o.promote():o.relegate()||Ae.postRender(()=>{const l=o.getStack();(!l||!l.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{visualElement:t,layoutAnchor:n}=this.props,{projection:r}=t;r&&(r.options.layoutAnchor=n,r.root.didUpdate(),sy.postRender(()=>{!r.currentAnimation&&r.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;tf=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function w3(e){const[t,n]=c3(),r=x.useContext($v);return s.jsx(Aq,{...e,layoutGroup:r,switchLayoutGroup:x.useContext(x3),isPresent:t,safeToRemove:n})}const Rq={pan:{Feature:_q},drag:{Feature:Tq,ProjectionNode:l3,MeasureLayout:w3}};function Nj(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,a=r[i];a&&Ae.postRender(()=>a(t,hd(t)))}class Dq extends mi{mount(){const{current:t}=this.node;t&&(this.unmount=eH(t,(n,r)=>(Nj(this.node,r,"Start"),i=>Nj(this.node,i,"End"))))}unmount(){}}class Mq extends mi{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=cd(Rc(this.node.current,"focus",()=>this.onFocus()),Rc(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function kj(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),a=r[i];a&&Ae.postRender(()=>a(t,hd(t)))}class Lq extends mi{mount(){const{current:t}=this.node;if(!t)return;
960const{globalTapTarget:n,propagate:r}=this.node.props;this.unmount=aH(t,(i,a)=>(kj(this.node,a,"Start"),(o,{success:l})=>kj(this.node,o,l?"End":"Cancel")),{useGlobalTarget:n,stopPropagation:(r==null?void 0:r.tap)===!1})}unmount(){}}const Pg=new WeakMap,nf=new WeakMap,Iq=e=>{const t=Pg.get(e.target);t&&t(e)},Oq=e=>{e.forEach(Iq)};function Fq({root:e,...t}){const n=e||document;nf.has(n)||nf.set(n,{});const r=nf.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(Oq,{root:e,...t})),r[i]}function $q(e,t,n){const r=Fq(t);return Pg.set(e,n),r.observe(e),()=>{Pg.delete(e),r.unobserve(e)}}const Bq={some:0,all:1};class zq extends mi{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){var c;(c=this.stopObserver)==null||c.call(this);const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:a}=t,o={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:Bq[i]},l=d=>{const{isIntersecting:u}=d;if(this.isInView===u||(this.isInView=u,a&&!u&&this.hasEnteredView))return;u&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",u);const{onViewportEnter:h,onViewportLeave:m}=this.node.getProps(),p=u?h:m;p&&p(d)};this.stopObserver=$q(this.node.current,o,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Uq(t,n))&&this.startObserver()}unmount(){var t;(t=this.stopObserver)==null||t.call(this),this.hasEnteredView=!1,this.isInView=!1}}function Uq({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const Vq={inView:{Feature:zq},tap:{Feature:Lq},focus:{Feature:Mq},hover:{Feature:Dq}},Wq={layout:{ProjectionNode:l3,MeasureLayout:w3}},Hq={...pq,...Vq,...Rq,...Wq},sa=cq(Hq,dq),as=({eyebrow:e,title:t,children:n,align:r="left",media:i})=>{const a=(i==null?void 0:i.position)==="behind";return s.jsxs("div",{className:`relative w-full h-full flex flex-col justify-center ${r==="center"?"items-center text-center":""}`,children:[a&&i&&s.jsx("img",{src:i.src,alt:i.alt,className:`pointer-events-none absolute inset-0 w-full h-full object-cover ${i.opacity??"opacity-10"}`}),s.jsxs("div",{className:"relative z-10 w-full",children:[e&&s.jsx("div",{className:"text-xs uppercase tracking-[0.3em] text-cyan-400 font-medium mb-6",children:e}),t&&s.jsx("h1",{className:"text-4xl md:text-5xl lg:text-6xl font-bold text-white leading-[1.1] mb-8 max-w-5xl",children:t}),s.jsx("div",{className:`text-white/80 ${r==="center"?"max-w-3xl":"max-w-5xl"}`,children:n})]})]})},wl=[{image:"/lovable-uploads/power-drill-portal-hero.webp",alt:"SmartLinks portal for a cordless power drill",industry:"Industrial & DIY"},{image:"/lovable-uploads/pasta-sauce-portal.png",alt:"SmartLinks portal for pasta sauce with recipes and nutrition",industry:"Food & Beverage"},{image:"/lovable-uploads/trainer-portal-hero.png",alt:"SmartLinks portal for running trainers with care info",industry:"Fashion & Apparel"},{image:"/lovable-uploads/sonika-speaker-portal.png",alt:"SmartLinks portal for a wireless speaker with manuals and warranty",industry:"Consumer Electronics"},{image:"/lovable-uploads/escooter-portal-hero.png",alt:"SmartLinks portal for an electric scooter with safety and registration",industry:"Mobility & Transport"}],Gq=()=>{const[e,t]=x.useState(0);return x.useEffect(()=>{const n=setInterval(()=>t(r=>(r+1)%wl.length),4e3);return()=>clearInterval(n)},[]),s.jsxs("div",{className:"w-full max-w-md mx-auto",children:[s.jsx("div",{className:"relative aspect-square",children:wl.map((n,r)=>s.jsx("img",{src:n.image,alt:n.alt,className:`absolute inset-0 w-full h-full object-contain transition-opacity duration-700 ${r===e?"opacity-100":"opacity-0"}`},n.image))}),s.jsxs("div",{className:"mt-4 flex flex-col items-center gap-3",children:[s.jsx("span",{className:"text-xs uppercase tracking-[0.3em] text-cyan-400 font-medium",children:wl[e].industry}),s.jsx("div",{className:"flex gap-2",children:wl.map((n,r)=>s.jsx("button",{onClick:()=>t(r),"aria-label":`Show ${wl[r].industry}`,className:`h-1.5 rounded-full transition-all ${r===e?"w-6 bg-cyan-400":"w-1.5 bg-white/30"}`},r))})]})]})},ra="transition-all duration-500 hover:border-cyan-500/30 hover:shadow-[0_0_40px_-10px_rgba(34,211,238,0.15)]",ia=({className:e="",tone:t="cyan"})=>s.jsx("div",{"aria-hidden":"true",className:`pointer-events-none absolute rounded-full blur-3xl ${t==="cyan"?"bg-cyan-500/[0.07]":"bg-blue-500/[0.06]"} ${e}`}),qq={hidden:{},show:{transition:{staggerChildren:.08,delayChildren:.05}}},Kq={hidden:{opacity:0,y:6},show:{opacity:1,y:0,transition:{duration:.5,ease:[.25,.1,.25,1]}}},Tm=({children:e,className:t})=>s.jsx(sa.div,{variants:qq,initial:"hidden",animate:"show",className:t,children:e}),_m=({children:e,className:t})=>s.jsx(sa.div,{variants:Kq,className:t,children:e}),Qq=()=>s.jsxs("div",{className:"w-full h-full flex flex-col items-center justify-center text-center",children:[s.jsx("div",{className:"text-xs uppercase tracking-[0.4em] text-cyan-400 font-medium mb-6",children:"A private conversation"}),s.jsxs("h1",{className:"text-5xl md:text-6xl font-bold text-white leading-[1.05] mb-4",children:["SmartLinks ",s.jsx("span",{className:"text-white/40",children:"Ã"})," Syndigo"]}),s.jsx("p",{className:"text-lg md:text-xl text-white/60 max-w-2xl leading-relaxed mb-8",children:"Completing the journey from product data to product experience."}),s.jsx(Gq,{}),s.jsx("div",{className:"mt-8 text-sm text-white/30",children:"Prepared for Syndigo · Europe"})]}),Yq=()=>s.jsxs("div",{className:"w-full h-full flex flex-col justify-center",style:{transform:"translateY(-50px)"},children:[s.jsx("div",{className:"flex justify-center mb-16 mt-8",children:s.jsx("img",{src:"/lovable-uploads/smartlinks-logo.webp",alt:"SmartLinks logo",className:"h-16 md:h-20 w-auto opacity-70"})}),s.jsx("div",{children:s.jsx(as,{eyebrow:"Who we are",title:s.jsxs(s.Fragment,{children:["SmartLinks turns physical products into ",s.jsx("span",{className:"text-cyan-400",children:"digital experiences"}),"."]}),children:s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"-top-20 -right-20 w-[28rem] h-[28rem]",tone:"cyan"}),s.jsx(Tm,{className:"relative grid md:grid-cols-3 gap-6 mt-4",children:[{k:"What",v:"A product experience platform. Every item becomes a permanent, intelligent digital twin â accessible from a QR, NFC, or a search."},{k:"Who",v:"Brands, retailers and manufacturers across consumer goods, apparel, food & beverage, health & beauty, and industrial."},{k:"Why now",v:"DPP regulation, GS1 Digital Link, and AI-driven product discovery are converging. The product page is moving off the retailer site."}].map(e=>s.jsxs(_m,{className:`bg-white/5 border border-white/10 rounded-2xl p-6 ${ra}`,children:[s.jsx("div",{className:"text-cyan-400 text-xs uppercase tracking-widest font-medium mb-3",children:e.k}),s.jsx("p",{className:"text-white/80 text-base leading-relaxed",children:e.v})]},e.k))})]})})})]}),Xq=()=>s.jsxs(as,{eyebrow:"The shape of the platform",title:s.jsx(s.Fragment,{children:"Built for scale. Designed for trust."}),children:[s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"-top-10 left-1/2 -translate-x-1/2 w-[32rem] h-[20rem]",tone:"cyan"}
960),s.jsx(Tm,{className:"relative grid md:grid-cols-4 gap-5 mt-6",children:[{n:"1 product",l:"= 1 permanent digital twin"},{n:"Any tag",l:"QR, NFC, GS1 Digital Link, image"},{n:"Every channel",l:"On-pack · Web · AI"},{n:"Enterprise",l:"Multi-brand, multi-region, white-label"}].map(e=>s.jsxs(_m,{className:`relative bg-gradient-to-br from-white/5 to-white/[0.02] border border-white/10 rounded-2xl p-6 ${ra}`,children:[s.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-0 rounded-2xl bg-cyan-500/[0.06] blur-2xl animate-pulse",style:{animationDuration:"5s"}}),s.jsx("div",{className:"relative text-3xl font-bold text-cyan-400 mb-2",children:e.n}),s.jsx("div",{className:"relative text-white/60 text-sm leading-snug",children:e.l})]},e.l))})]}),s.jsx("p",{className:"text-white/60 text-base mt-8 leading-relaxed max-w-3xl",children:"We are platform-native: APIs, schema, multi-tenant, white-labelable. Designed to be embedded inside larger ecosystems â not just sold direct."})]}),Jq=()=>s.jsxs(as,{eyebrow:"The Syndigo trajectory",title:s.jsxs(s.Fragment,{children:["From ",s.jsx("span",{className:"text-white/50",children:"data syndication"})," to ",s.jsx("span",{className:"text-cyan-400",children:"product experience"}),"."]}),children:[s.jsx("p",{className:"text-white/70 text-lg mb-8 leading-relaxed max-w-3xl",children:"Each Syndigo move has stepped closer to the consumer. 1WorldSync delivered the data layer. Taggstar moved onto the retailer page. The next step is the product itself."}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4",children:[{label:"1WorldSync",role:"Product Data Network",desc:"The world's largest GDSN data pool. Structured product content syndicated to thousands of retailers globally.",icon:tn,position:"Upstream"},{label:"Taggstar",role:"Conversion Optimisation",desc:"AI-driven social proof on the retailer PDP. Real-time signals that lift e-commerce conversion.",icon:Zs,position:"On the page"},{label:"SmartLinks",role:"Product Experience Platform",desc:"The digital twin of every product. Syndigo data delivered on the product, on the web, and via AI.",icon:Ft,position:"On the product",highlight:!0}].map((e,t)=>s.jsxs("div",{className:`relative rounded-2xl p-5 border h-full ${e.highlight?"bg-cyan-500/10 border-cyan-500/30":"bg-white/5 border-white/10"}`,children:[s.jsx("span",{className:`inline-block px-2.5 py-1 rounded-full text-[10px] font-medium mb-3 ${e.highlight?"bg-cyan-500/20 text-cyan-300":"bg-white/10 text-white/50"}`,children:e.position}),s.jsx(e.icon,{className:`w-7 h-7 mb-3 ${e.highlight?"text-cyan-400":"text-white/60"}`}),s.jsx("div",{className:`text-lg font-bold mb-1 ${e.highlight?"text-cyan-400":"text-white"}`,children:e.label}),s.jsx("div",{className:"text-white/40 text-[10px] uppercase tracking-wider mb-2",children:e.role}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:e.desc}),t<2&&s.jsx(ue,{className:"hidden md:block absolute -right-3 top-1/2 -translate-y-1/2 w-5 h-5 text-white/20"})]},t))})]}),Zq=()=>s.jsx(as,{eyebrow:"The missing channel",title:s.jsxs(s.Fragment,{children:["Syndigo's data lives ",s.jsx("span",{className:"text-white/50",children:"everywhere except"})," the product itself."]}),children:s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"top-0 -left-24 w-[26rem] h-[26rem]",tone:"blue"}),s.jsx(ia,{className:"-bottom-10 -right-20 w-[28rem] h-[28rem]",tone:"cyan"}),s.jsxs("div",{className:"relative grid md:grid-cols-2 gap-6 mt-4",children:[s.jsxs(sa.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:.5,ease:[.25,.1,.25,1]},className:`bg-white/5 border border-white/10 rounded-2xl p-7 ${ra}`,children:[s.jsx("div",{className:"text-white/50 text-xs uppercase tracking-widest mb-4",children:"Today"}),s.jsxs("ul",{className:"space-y-3 text-white/80",children:[s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-white/40 mt-1",children:"·"}),s.jsx("span",{children:"Product content is syndicated to retailers and trading partners."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-white/40 mt-1",children:"·"}),s.jsx("span",{children:"Conversion is optimised on the retailer PDP."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-white/40 mt-1",children:"·"}),s.jsx("span",{children:"The brand has no presence after the product leaves the shelf."})]})]})]}),s.jsxs(sa.div,{initial:{opacity:0,y:6}
960,animate:{opacity:1,y:0},transition:{duration:.5,delay:.15,ease:[.25,.1,.25,1]},className:`bg-cyan-500/5 border border-cyan-500/20 rounded-2xl p-7 ${ra}`,children:[s.jsx("div",{className:"text-cyan-400 text-xs uppercase tracking-widest mb-4",children:"With SmartLinks"}),s.jsxs("ul",{className:"space-y-3 text-white/90",children:[s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 mt-1 shrink-0 animate-pulse",style:{animationDuration:"4s"}}),s.jsxs("span",{children:["Syndigo data appears ",s.jsx("strong",{children:"on the product"})," at every scan."]})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 mt-1 shrink-0 animate-pulse",style:{animationDuration:"4s",animationDelay:"0.5s"}}),s.jsx("span",{children:"Permanent product pages live on the open web â indexed by Google."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-4 h-4 text-cyan-400 mt-1 shrink-0 animate-pulse",style:{animationDuration:"4s",animationDelay:"1s"}}),s.jsx("span",{children:"The same data is syndicated to LLMs as authoritative source."})]})]})]})]})]})}),eK=()=>s.jsx(as,{eyebrow:"A new distribution surface",title:s.jsx(s.Fragment,{children:"Three new channels for Syndigo's data."}),children:s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"-top-16 right-0 w-[24rem] h-[24rem]",tone:"cyan"}),s.jsx(Tm,{className:"relative grid md:grid-cols-3 gap-5 mt-6",children:[{icon:Qh,label:"On the product",desc:"Every QR, NFC or GS1 Digital Link scan opens a Syndigo-powered experience. The on-pack moment becomes a brand asset."},{icon:Ln,label:"On the web",desc:"A permanent, SEO-optimised page for every product ever sold. The 'Wayback Machine' for products â current, historical, archived."},{icon:xs,label:"On AI",desc:"Product data formatted for RAG and MCP. When ChatGPT or Perplexity answers about a product, it uses Syndigo data â not guesswork."}].map((e,t)=>s.jsxs(_m,{className:`group bg-gradient-to-br from-cyan-500/5 to-blue-500/5 border border-cyan-500/20 rounded-2xl p-6 ${ra}`,children:[s.jsxs("div",{className:"relative inline-block mb-4",children:[s.jsx("div",{"aria-hidden":"true",className:"absolute inset-0 bg-cyan-500/30 blur-xl rounded-full opacity-0 group-hover:opacity-100 transition-opacity duration-500"}),s.jsx(e.icon,{className:"relative w-8 h-8 text-cyan-400 animate-pulse",style:{animationDuration:"3s",animationDelay:`${t*.4}s`}})]}),s.jsx("div",{className:"text-white text-lg font-bold mb-2",children:e.label}),s.jsx("p",{className:"text-white/70 text-sm leading-relaxed",children:e.desc})]},t))})]})}),tK=()=>{const e=[{icon:tn,k:"Structured JSON-LD",v:"Schema.org Product, Brand, Offer â Google + LLM ready."},{icon:xs,k:"MCP endpoints",v:"Agents query product data directly from the source."},{icon:ke,k:"RAG-ready chunks",v:"Pre-chunked, embedding-friendly product knowledge."},{icon:Ln,k:"llms.txt",v:"Explicit guidance for crawlers on what to index."}];return s.jsx(as,{eyebrow:"The AI shift â and why it matters now",title:s.jsxs(s.Fragment,{children:["The product page is moving ",s.jsx("span",{className:"text-cyan-400",children:"off the retailer site"}),"."]}),children:s.jsxs("div",{className:"grid md:grid-cols-2 gap-10 items-stretch",children:[s.jsxs("div",{className:"flex flex-col justify-center h-full space-y-5 text-white/80 text-[17px] leading-relaxed",children:[s.jsx("p",{children:"Consumers increasingly research products through ChatGPT, Perplexity, Gemini and AI-powered search."}),s.jsx("p",{children:"The model decides what's true. If a brand isn't represented in the training data and retrieval indexes, it isn't in the answer."}),s.jsx("p",{className:"text-cyan-300 border-l-2 border-cyan-500/40 pl-4",children:"Syndigo already owns the authoritative data. SmartLinks is the channel that publishes it to AI in the formats agents expect."})]}),s.jsxs("div",{className:"bg-white/5 border border-white/10 rounded-2xl p-6 h-full flex flex-col",children:[s.jsx("div",{className:"text-cyan-400 text-xs uppercase tracking-widest mb-4",children:"What we publish"}),s.jsx("div",{className:"grid grid-cols-2 gap-3 flex-1",children:e.map(t=>s.jsxs("div",{className:"bg-white/[0.04] border border-white/10 rounded-lg p-4 flex flex-col",children:[s.jsx(t.icon,{className:"w-5 h-5 text-cyan-400 mb-2"}),s.jsx("div",{className:"text-white text-sm font-semibold mb-1",children:t.k}),s.jsx("div",{className:"text-white/60 text-xs leading-snug",children:t.v})]},t.k))})]})]})})},nK=()=>s.jsx(as,{eyebrow:"What SmartLinks brings",title:s.jsx(s.Fragment,{children:"A complete product experience layer."}),children:s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mt-4",children:[{icon:ke,t:"DPP Portals",d:"Compliant Digital Product Passport portals generated from PIM data at scale."},{icon:Es,t:"Tagging",d:"QR, NFC, GS1 Digital Link, image recognition â one platform, every carrier."},{icon:Tt,t:"Authenticity",d:"Multi-layer authentication. Anti-counterfeit built in."},{icon:ii,t:"Analytics",d:"Every scan, every interaction, every region â measurable."},{icon:Ft,t:"Engagement",d:"Warranty, registration, loyalty, competitions, content â post-purchase becomes a channel."},{icon:da,t:"Industry templates",d:"Pre-built solutions for apparel, F&B, health & beauty, industrial."}].map(e=>s.jsxs("div",{className:"bg-white/5 border border-white/10 rounded-xl p-5",children:[s.jsx(e.icon,{className:"w-6 h-6 text-cyan-400 mb-3"}),s.jsx("div",{className:"text-white font-semibold mb-1",children:e.t}),s.jsx("div",{className:"text-white/60 text-sm leading-snug",children:e.d})]},e.t))})}),sK=()=>s.jsxs(as,{eyebrow:"SmartLinks Hub",title:s.jsx(s.Fragment,{children:"The permanent home of every product."}
960),children:[s.jsxs("div",{className:"grid md:grid-cols-5 gap-8 items-stretch",children:[s.jsx("div",{className:"md:col-span-3",children:s.jsx("div",{className:"aspect-[16/10] w-full overflow-hidden rounded-xl border border-white/10",children:s.jsx("img",{src:"/lovable-uploads/smartlinks-hub-jeans-frontend.webp",alt:"A pair of jeans alongside its permanent SmartLinks Hub product page â care, provenance, repairs and resale, all in one place.",className:"w-full h-full object-cover"})})}),s.jsxs("div",{className:"md:col-span-2 h-full bg-gradient-to-br from-cyan-500/10 to-blue-500/5 border border-cyan-500/20 rounded-2xl p-7 flex flex-col",children:[s.jsx("div",{className:"text-cyan-400 text-xs uppercase tracking-widest mb-4",children:"Why it matters to Syndigo"}),s.jsxs("ul",{className:"space-y-3 text-white/90 text-sm",children:[s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-cyan-400",children:"â"}),s.jsx("span",{children:"Extends Syndigo data into the consumer relationship."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-cyan-400",children:"â"}),s.jsx("span",{children:"Creates a permanent, branded surface for every SKU."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-cyan-400",children:"â"}),s.jsx("span",{children:"Becomes the trusted source AI models cite."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-cyan-400",children:"â"}),s.jsx("span",{children:"Closes the loop: proves which content actually reaches end consumers."})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx("span",{className:"text-cyan-400",children:"â"}),s.jsx("span",{children:"Opens a new revenue line â recurring, per-SKU, post-syndication."})]})]})]})]}),s.jsxs("div",{className:"mt-6 max-w-4xl space-y-2 text-white/70 text-sm leading-relaxed",children:[s.jsx("p",{children:"The Hub is the consumer-facing archive: every product Syndigo's customers have ever made, permanently accessible to the people who own them."}),s.jsxs("p",{children:["It is the layer that PIMs and DAMs were never built for: ",s.jsx("span",{className:"text-cyan-300",children:"post-purchase, consumer-grade, search-indexed."})]})]})]}),rK=()=>{const e=[{t:"The data is already there",d:"1WorldSync is the source. SmartLinks consumes it natively. No new content programme needed."},{t:"The customers are already there",d:"Syndigo's brand customers all need a DPP, AI and on-product strategy. SmartLinks is the answer they're already asking for."},{t:"The roadmap fits",d:"Acquisition pattern: each step gets closer to the consumer. SmartLinks is the next logical step â already built."},{t:"Zero R&D risk",d:"White-label or co-brand a proven platform. Time-to-market measured in weeks, not years."}],t=[0,.08,.16,.24];return s.jsx(as,{eyebrow:"Why this fits Syndigo",title:s.jsx(s.Fragment,{children:"A natural extension. Not a new business to build."}),children:s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[32rem] h-[32rem]",tone:"cyan"}),s.jsx("div",{className:"relative grid md:grid-cols-2 gap-5 mt-4",children:e.map((n,r)=>s.jsxs(sa.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:.5,delay:t[r],ease:[.25,.1,.25,1]},className:`bg-white/5 border border-white/10 rounded-2xl p-6 ${ra}`,children:[s.jsx("div",{className:"text-white text-lg font-semibold mb-2",children:n.t}),s.jsx("div",{className:"text-white/70 text-sm leading-relaxed",children:n.d})]},n.t))})]})})},iK=()=>s.jsxs(as,{eyebrow:"The commercial shape",title:s.jsxs(s.Fragment,{children:['"SmartLinks ',s.jsx("span",{className:"text-cyan-400",children:"by Syndigo"}),'" â a new recurring line.']}),children:[s.jsxs("div",{className:"relative",children:[s.jsx(ia,{className:"-top-10 right-1/4 w-[24rem] h-[24rem]",tone:"cyan"}),s.jsx(Tm,{className:"relative grid md:grid-cols-3 gap-5 mt-4",children:[{t:"White-label",d:"SmartLinks branded as Syndigo. Sold into the existing Syndigo book.",tag:"Fastest"},{t:"Co-brand",d:"Joint go-to-market. Both brands present. Suited to enterprise and DPP-led deals.",tag:"Balanced"},{t:"Strategic",d:"Deeper integration with 1WorldSync data flows. Eventually a single product surface.",tag:"Long-term"}].map(e=>s.jsxs(_m,{className:`group bg-white/5 border border-white/10 rounded-2xl p-6 flex flex-col ${ra}`,children:[s.jsx(sa.span,{initial:{opacity:0,y:-4}
960,animate:{opacity:1,y:0},transition:{duration:.4,delay:.35,ease:"easeOut"},className:"self-start text-[10px] uppercase tracking-widest text-cyan-400 bg-cyan-500/10 group-hover:bg-cyan-500/20 transition-colors duration-500 px-2 py-1 rounded-full mb-4",children:e.tag}),s.jsx("div",{className:"text-white text-lg font-semibold mb-2",children:e.t}),s.jsx("div",{className:"text-white/70 text-sm leading-relaxed",children:e.d})]},e.t))})]}),s.jsx("p",{className:"text-white/60 text-sm mt-8 max-w-3xl",children:"All three are recurring SaaS. All three add a new revenue line with no additional R&D or acquisition cost to Syndigo."})]}),aK=()=>s.jsx(as,{eyebrow:"The proposal",title:s.jsxs(s.Fragment,{children:["Let's run a ",s.jsx("span",{className:"text-cyan-400",children:"white-label pilot"})," â together."]}),children:s.jsxs("div",{className:"grid md:grid-cols-2 gap-8 mt-4",children:[s.jsxs("div",{className:"space-y-5",children:[s.jsx("p",{className:"text-white/80 text-lg leading-relaxed",children:'Pick one or two mutual customers. We deliver "SmartLinks by Syndigo" against a real DPP or AI use case, end-to-end, in 90 days.'}),s.jsx("p",{className:"text-white/60 text-base leading-relaxed",children:"A defined pilot lets both teams validate the fit, prove the commercial model, and decide on a wider partnership â without committing to it on day one."}),s.jsx("img",{src:"/lovable-uploads/syndigo-engagement-hero.webp",alt:"Brand engagement and post-purchase consumer experience powered by SmartLinks",className:"w-full h-auto rounded-xl border border-white/10 mt-4"})]}),s.jsxs("div",{className:"bg-gradient-to-br from-cyan-500/10 to-blue-500/5 border border-cyan-500/30 rounded-2xl p-6",children:[s.jsx("div",{className:"text-cyan-400 text-sm uppercase tracking-widest mb-5",children:"90-day pilot â what's in it"}),s.jsxs("ul",{className:"space-y-4 text-white/90 text-base",children:[s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-5 h-5 text-cyan-400 mt-0.5 shrink-0"}),s.jsx("span",{children:"1â2 mutual customers selected and agreed jointly by both teams"})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-5 h-5 text-cyan-400 mt-0.5 shrink-0"}),s.jsx("span",{children:'Fully white-labelled deployment, branded as "SmartLinks by Syndigo"'})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-5 h-5 text-cyan-400 mt-0.5 shrink-0"}),s.jsx("span",{children:"Native integration with live 1WorldSync product data feeds"})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-5 h-5 text-cyan-400 mt-0.5 shrink-0"}),s.jsx("span",{children:"Joint commercial framework documented and signed in advance"})]}),s.jsxs("li",{className:"flex gap-3",children:[s.jsx(He,{className:"w-5 h-5 text-cyan-400 mt-0.5 shrink-0"}),s.jsx("span",{children:"Clear go / no-go decision criteria and timeline at day 90"})]})]})]})]})}),oK=()=>s.jsxs("div",{className:"w-full h-full flex flex-col items-center justify-center text-center",children:[s.jsxs("div",{className:"relative mb-10",children:[s.jsx("div",{className:"absolute inset-0 bg-cyan-500/20 blur-3xl rounded-full","aria-hidden":"true"}),s.jsx("img",{src:"/lovable-uploads/syndigo-closing-hero.webp",alt:"Product information moving from a retailer screen onto the physical product via SmartLinks.",className:"relative w-full max-w-2xl h-56 object-contain"})]}),s.jsx("div",{className:"text-xs uppercase tracking-[0.4em] text-cyan-400 font-medium mb-6",children:"Thank you"}),s.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-white leading-[1.05] mb-6 max-w-4xl",children:"The product page is moving onto the product."}),s.jsx("p",{className:"text-lg text-white/60 max-w-2xl leading-relaxed mb-8",children:"Syndigo owns the data. SmartLinks is the channel. Together, we own the next surface."}),s.jsx("div",{className:"text-sm text-white/40",children:"Let's pick the pilot."})]}),sf=[{id:"cover",component:Qq},{id:"who",component:Yq},{id:"shape",component:Xq},{id:"evolution",component:Jq},{id:"gap",component:Zq},{id:"channels",component:eK},{id:"ai",component:tK},{id:"capabilities",component:nK},{id:"hub",component:sK},{id:"fit",component:rK},{id:"commercial",component:iK},{id:"ask",component:aK},{id:"close",component:oK}],lK=()=>
960{const[e,t]=x.useState(0),n=sf.length,r=x.useCallback(()=>t(o=>Math.min(o+1,n-1)),[n]),i=x.useCallback(()=>t(o=>Math.max(o-1,0)),[]);x.useEffect(()=>{const o=l=>{var c,d,u;["ArrowRight"," ","PageDown"].includes(l.key)?(l.preventDefault(),r()):["ArrowLeft","PageUp"].includes(l.key)?(l.preventDefault(),i()):l.key==="Home"?t(0):l.key==="End"?t(n-1):(l.key==="f"||l.key==="F")&&(document.fullscreenElement?(u=document.exitFullscreen)==null||u.call(document):(d=(c=document.documentElement).requestFullscreen)==null||d.call(c))};return window.addEventListener("keydown",o),()=>window.removeEventListener("keydown",o)},[r,i,n]);const a=sf[e].component;return s.jsxs(s.Fragment,{children:[s.jsxs(JS,{children:[s.jsx("title",{children:"SmartLinks à Syndigo â Private Presentation"}),s.jsx("meta",{name:"robots",content:"noindex, nofollow, noarchive"}),s.jsx("meta",{name:"googlebot",content:"noindex, nofollow"})]}),s.jsxs("div",{className:"fixed inset-0 bg-black text-white overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:s.jsx("div",{className:"w-full h-full max-w-[1600px] max-h-[900px] mx-auto px-12 py-10 flex items-center justify-center",children:s.jsx(FG,{mode:"wait",initial:!1,children:s.jsx(sa.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},exit:{opacity:0,y:-8},transition:{duration:.35,ease:[.25,.1,.25,1]},className:"w-full h-full",children:s.jsx(a,{})},e)})})}),s.jsxs("div",{className:"absolute top-0 left-0 right-0 flex items-center justify-between px-6 py-4 z-50 pointer-events-none",children:[s.jsx("div",{className:"text-xs uppercase tracking-[0.2em] text-white/40 font-medium",children:"SmartLinks à Syndigo · Private"}),s.jsx("button",{onClick:()=>{var o,l,c;document.fullscreenElement?(c=document.exitFullscreen)==null||c.call(document):(l=(o=document.documentElement).requestFullscreen)==null||l.call(o)},className:"pointer-events-auto text-white/40 hover:text-white/80 transition-colors","aria-label":"Toggle fullscreen",children:s.jsx(j_,{size:16})})]}),s.jsx("button",{onClick:i,disabled:e===0,className:"absolute left-4 top-1/2 -translate-y-1/2 z-50 flex items-center justify-center w-16 h-16 rounded-full bg-white/5 hover:bg-white/10 disabled:opacity-20 disabled:hover:bg-white/5 transition-all group","aria-label":"Previous slide",children:s.jsx(ax,{size:32,className:"text-white/60 group-hover:text-white transition-colors"})}),s.jsx("button",{onClick:r,disabled:e===n-1,className:"absolute right-4 top-1/2 -translate-y-1/2 z-50 flex items-center justify-center w-16 h-16 rounded-full bg-white/5 hover:bg-white/10 disabled:opacity-20 disabled:hover:bg-white/5 transition-all group","aria-label":"Next slide",children:s.jsx(eh,{size:32,className:"text-white/60 group-hover:text-white transition-colors"})}),s.jsxs("div",{className:"absolute bottom-0 left-0 right-0 flex items-center justify-between px-6 py-5 z-50",children:[s.jsxs("button",{onClick:i,disabled:e===0,className:"flex items-center gap-2 text-white/40 hover:text-white disabled:opacity-20 disabled:hover:text-white/40 transition-colors text-sm","aria-label":"Previous slide",children:[s.jsx(ax,{size:18}),s.jsx("span",{className:"hidden sm:inline",children:"Prev"})]}),s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"flex gap-1.5",children:sf.map((o,l)=>s.jsx("button",{onClick:()=>t(l),className:`h-1 rounded-full transition-all ${l===e?"w-8 bg-cyan-400":"w-1.5 bg-white/20 hover:bg-white/40"}`,"aria-label":`Go to slide ${l+1}`},l))}),s.jsxs("span",{className:"text-xs text-white/40 tabular-nums ml-2",children:[String(e+1).padStart(2,"0")," / ",String(n).padStart(2,"0")]})]}),s.jsxs("button",{onClick:r,disabled:e===n-1,className:"flex items-center gap-2 text-white/40 hover:text-white disabled:opacity-20 disabled:hover:text-white/40 transition-colors text-sm","aria-label":"Next slide",children:[s.jsx("span",{className:"hidden sm:inline",children:"Next"}),s.jsx(eh,{size:18})]})]}),s.jsxs("div",{className:"absolute inset-0 -z-10 bg-gradient-to-br from-black via-slate-950 to-black",children:[s.jsx("div",{className:"absolute top-1/4 left-1/4 w-[600px] h-[600px] bg-blue-600/10 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute bottom-1/4 right-1/4 w-[500px] h-[500px] bg-cyan-600/10 rounded-full blur-3xl"})]})]})]})},my=({title:e,description:t,canonical:n,lastUpdated:r,children:i})=>s.jsxs("div",{className:"min-h-screen relative",children:[s.jsx(Se,{title:`${e} - SmartLinks`,description:t,canonical:n}),s.jsxs("div",{className:"fixed inset-0 bg-gradient-to-b from-black via-purple-900 to-black",children:[s.jsxs("div",{className:"absolute inset-0 opacity-60",children:[s.jsx("div",{className:"absolute top-20 left-10 w-96 h-96 bg-purple-600 rounded-full blur-3xl op
960acity-30"}),s.jsx("div",{className:"absolute top-96 left-1/3 w-72 h-72 bg-purple-800 rounded-full blur-3xl opacity-35"}),s.jsx("div",{className:"absolute bottom-40 right-10 w-64 h-64 bg-purple-700 rounded-full blur-3xl opacity-25"})]}),s.jsx("div",{className:"absolute inset-0 bg-gradient-radial from-transparent via-purple-900/20 to-black/40"})]}),s.jsxs("main",{className:"relative z-10",children:[s.jsx(rt,{}),s.jsxs("article",{className:"container mx-auto px-6 pt-32 pb-16 max-w-3xl",children:[s.jsxs("header",{className:"mb-10",children:[s.jsx("h1",{className:"text-4xl md:text-5xl font-bold text-white mb-3",children:e}),s.jsxs("p",{className:"text-white/60 text-sm",children:["Last updated: ",r]})]}),s.jsx("div",{className:`bg-white/5 backdrop-blur-sm border border-white/10 rounded-2xl p-8 md:p-10 text-white/80 leading-relaxed space-y-6 961 [&_h2]:text-white [&_h2]:text-2xl [&_h2]:font-semibold [&_h2]:mt-8 [&_h2]:mb-3 962 [&_h3]:text-white [&_h3]:text-lg [&_h3]:font-semibold [&_h3]:mt-6 [&_h3]:mb-2 963 [&_p]:text-white/75 964 [&_ul]:list-disc [&_ul]:pl-6 [&_ul]:space-y-2 [&_ul]:text-white/75 965 [&_a]:text-purple-300 [&_a]:underline hover:[&_a]:text-purple-200 966 [&_strong]:text-white`,children:i})]}),s.jsx(it,{})]})]}),cK=()=>s.jsxs(my,{title:"Privacy Policy",description:"How SmartLinks collects, uses and protects personal data across our website and Digital Product Passport platform.",canonical:"https://smartlinks-public-site.lovable.app/privacy",lastUpdated:"May 2026",children:[s.jsx("h2",{children:"1. Introduction"}),s.jsx("p",{children:'SmartLinks is operated by Prove Anything Limited ("we", "us", "our"), a company registered in England and Wales. This Privacy Policy explains how we collect, use, disclose and safeguard information when you visit our website, request a demo, or use the SmartLinks Digital Product Passport (DPP) platform and related services.'}),s.jsx("h2",{children:"2. Information We Collect"}),s.jsxs("ul",{children:[s.jsxs("li",{children:[s.jsx("strong",{children:"Account & contact data:"})," name, business email, phone number, company and role, provided when you sign up, contact us, or request a demo."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Platform data:"})," product, brand and DPP content you or your team upload to the platform, along with associated metadata."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Usage data:"})," pages viewed, features used, and aggregated interaction data with SmartLinks experiences (for example, scan counts and approximate location)."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Device data:"})," IP address, browser type, operating system and device identifiers."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Cookies and similar technologies:"})," see our ",s.jsx("a",{href:"/cookies",children:"Cookies Policy"}),"."]})]}),s.jsx("h2",{children:"3. How We Use Information"}),s.jsxs("ul",{children:[s.jsx("li",{children:"To provide, operate and improve the SmartLinks platform and related services."}),s.jsx("li",{children:"To respond to enquiries, support requests and demo bookings."}),s.jsx("li",{children:"To send service updates and, where lawful, marketing communications you may opt out of at any time."}),s.jsx("li",{children:"To produce aggregated analytics for our customers (for example, scan and engagement reports for their products)."}),s.jsx("li",{children:"To meet legal, regulatory and contractual obligations and to protect against fraud or misuse."})]}),s.jsx("h2",{children:"4. Legal Bases (UK/EU GDPR)"}),s.jsx("p",{children:"We process personal data on the basis of contract performance, our legitimate interests in operating and improving the service, your consent (where required, e.g. for non-essential cookies and marketing), and compliance with legal obligations."}),s.jsx("h2",{children:"5. Data Sharing"}),s.jsx("p",{children:"We do not sell personal data. We share data with vetted sub-processors who help us run the service (hosting, analytics, email delivery, customer support, payment processing) under written data processing agreements. We may disclose data where required by law or to protect our rights and users."}),s.jsx("h2",{children:"6. Customer Data & Our Role"}),s.jsxs("p",{children:["For data that our business customers upload or generate through the platform, we generally act as a ",s.jsx("strong",{children:"data processor"}),"on their behalf. The customer is the controller and determines retention and end-user rights. For our own website visitors, enquiries and account holders, we act as the ",s.jsx("strong",{children:"controller"}),"."]}),s.jsx("h2",{children:"7. International Transfers"}),s.jsx("p",{children:"Where personal data is transferred outside the UK or EEA, we rely on appropriate safeguards such as the UK International Data Transfer Agreement, the EU Standard Contractual Clauses, or adequacy decisions."}),s.jsx("h2",{children:"8. Retention"}),s.jsx("p",{children:"We keep personal data only for as long as necessary for the purposes set out above, to comply with our legal obligations, resolve disputes and enforce agreements. Customer-uploaded data is retained in line with the customer's instructions and our service agreement."}),s.jsx("h2",{children:"9. Security"}),s.jsx("p",{children:"We implement appropriate technical and organisational measures, including encryption in transit, access controls, logging and regular reviews of our security posture. No system is perfectly secure, but we work to reduce risk continuously."}),s.jsx("h2",{children:"10. Your Rights"}),s.jsx("p",{children:"Subject to local law, you may have the right to:"}),s.jsxs("ul",{children:[s.jsx("li",{children:"Access the personal data we hold about you"}
966),s.jsx("li",{children:"Request correction or deletion"}),s.jsx("li",{children:"Object to or restrict processing"}),s.jsx("li",{children:"Request portability"}),s.jsx("li",{children:"Withdraw consent at any time"}),s.jsx("li",{children:"Lodge a complaint with the UK Information Commissioner's Office (ICO) or your local supervisory authority"})]}),s.jsx("h2",{children:"11. Children"}),s.jsx("p",{children:"SmartLinks is a B2B service not directed at children. We do not knowingly collect personal data from anyone under 16."}),s.jsx("h2",{children:"12. Changes"}),s.jsx("p",{children:'We may update this policy from time to time. We will post changes here and update the "Last updated" date above.'}),s.jsx("h2",{children:"13. Contact"}),s.jsxs("p",{children:["Questions or requests: ",s.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),"."]})]}),dK=()=>s.jsxs(my,{title:"Terms of Service",description:"The terms governing use of the SmartLinks website and Digital Product Passport platform.",canonical:"https://smartlinks-public-site.lovable.app/terms",lastUpdated:"May 2026",children:[s.jsx("h2",{children:"1. Acceptance"}),s.jsx("p",{children:'By accessing the SmartLinks website (smartlinks.app) or using the SmartLinks platform and related services (the "Services"), you agree to these Terms of Service. The Services are provided by Prove Anything Limited, a company registered in England and Wales ("SmartLinks", "we", "us").'}),s.jsx("h2",{children:"2. The Services"}),s.jsx("p",{children:"SmartLinks provides a SaaS Digital Product Passport (DPP) platform, including DPP Portals, GS1 Digital Link resolution, analytics and engagement tools that connect physical products to digital experiences. Specific features, limits and service levels may be set out in an Order Form, subscription plan or written agreement."}),s.jsx("h2",{children:"3. Accounts"}),s.jsxs("ul",{children:[s.jsx("li",{children:"You must provide accurate registration information and keep credentials confidential."}),s.jsx("li",{children:"You are responsible for activity carried out under your account."}),s.jsx("li",{children:"You must promptly notify us of any unauthorised use."})]}),s.jsx("h2",{children:"4. Acceptable Use"}),s.jsx("p",{children:"You agree not to:"}),s.jsxs("ul",{children:[s.jsx("li",{children:"Use the Services unlawfully or in breach of third-party rights."}),s.jsx("li",{children:"Upload content that is misleading, infringing, defamatory, harmful or unlawful."}),s.jsx("li",{children:"Reverse engineer, scrape, probe or interfere with the Services or underlying infrastructure."}),s.jsx("li",{children:"Attempt to gain unauthorised access to accounts, systems or data."}),s.jsx("li",{children:"Use the Services to send spam or unsolicited communications."})]}),s.jsx("h2",{children:"5. Customer Content"}),s.jsx("p",{children:'You retain ownership of the data, brand assets and product information you submit ("Customer Content"). You grant us a worldwide, non-exclusive licence to host, process and display Customer Content solely to provide the Services. You are responsible for ensuring you have the rights to upload Customer Content and that it complies with applicable law.'}),s.jsx("h2",{children:"6. Subscriptions, Fees & Trials"}),s.jsx("p",{children:"Paid plans are billed in accordance with the applicable Order Form or pricing page. Unless stated otherwise, fees are non-refundable, exclusive of VAT, and renew automatically for successive periods until cancelled. Free trials and freemium tiers may be subject to limits and may be modified or discontinued."}),s.jsx("h2",{children:"7. Intellectual Property"}),s.jsx("p",{children:"The SmartLinks platform, software, designs, trademarks and documentation are owned by Prove Anything Limited or its licensors. We grant you a limited, non-exclusive, non-transferable right to use the Services during your subscription, subject to these Terms."}),s.jsx("h2",{children:"8. Service Availability"}),s.jsx("p",{children:"We aim to maintain high availability but do not guarantee uninterrupted access. We may perform maintenance, release updates, and modify features. Any service-level commitments are set out in a written SLA where applicable."}),s.jsx("h2",{children:"9. Third-Party Services"}),s.jsx("p",{children:"The Services may interoperate with third-party tools (e.g. Syndigo, Shopify, GS1 registries). We are not responsible for third-party services and your use of them is governed by their own terms."}),s.jsx("h2",{children:"10. Confidentiality & Data Protection"}),s.jsxs("p",{children:["Each party will protect the other's confidential information. Personal data is handled in accordance with our",s.jsx("a",{href:"/privacy",children:" Privacy Policy"}),". Where we process personal data on your behalf, our Data Processing Addendum forms part of the agreement."]}),s.jsx("h2",{children:"11. Warranties & Disclaimers"}),s.jsx("p",{children:'The Services are provided on an "as is" and "as available" basis. To the maximum extent permitted by law, we disclaim all implied warranties, including merchantability, fitness for a particular purpose and non-infringement.'}),s.jsx("h2",{children:"12. Limitation of Liability"}),s.jsx("p",{children:"To the fullest extent permitted by law, neither party will be liable for indirect, incidental, special, consequential or punitive damages, or for loss of profits, revenue, data or goodwill. Our aggregate liability for claims arising from or related to the Services is limited to the fees paid by you in the twelve (12) months immediately preceding the event giving rise to the claim. Nothing in these Terms limits liability that cannot be excluded by law."}),s.jsx("h2",{children:"13. Indemnity"}),s.jsx("p",{children:"You will indemnify us against claims arising from your Customer Content or your breach of these Terms, except to the extent caused by our negligence or wilful misconduct."}),s.jsx("h2",{children:"14. Suspension & Termination"}),s.jsx("p",{children:"We may suspend or terminate access for material breach, non-payment, or where required by law. On termination, your right to use the Services ends and we may delete Customer Content after a reasonable retention window unless legally required to keep it."}),s.jsx("h2",{children:"15. Changes"}),s.jsx("p",{children:"We may update these Terms from time to time. Material changes will be notified via the website or by email. Continued use of the Services after changes take effect constitutes acceptance."}),s.jsx("h2",{children:"16. Governing Law"}),s.jsx("p",{children:"These Terms are governed by the laws of England and Wales. The courts of England and Wales have exclusive jurisdiction over any dispute, except where mandatory local law provides otherwise."}),s.jsx("h2",{children:"17. Contact"}),s.jsx("p",{children:s.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"})})]}),uK=()=>s.jsxs(my,{title:"Cookies Policy",description:"How SmartLinks uses cookies and similar technologies on our website and platform.",canonical:"https://smartlinks-public-site.lovable.app/cookie
966s",lastUpdated:"May 2026",children:[s.jsx("h2",{children:"1. What Are Cookies?"}),s.jsx("p",{children:"Cookies are small text files placed on your device when you visit a website. They help sites function properly, remember preferences, and provide information to the site owner. We also use related technologies such as local storage and pixels."}),s.jsx("h2",{children:"2. Categories We Use"}),s.jsx("h3",{children:"Strictly necessary"}),s.jsx("p",{children:"Required for the website and platform to operate (for example, session management, security, load balancing and reCAPTCHA on forms). These cannot be switched off."}),s.jsx("h3",{children:"Functional"}),s.jsx("p",{children:"Remember choices you make, such as language or display preferences, to provide a more personalised experience."}),s.jsx("h3",{children:"Analytics"}),s.jsx("p",{children:"Help us understand how visitors interact with the site so we can improve content, performance and structure (for example, page views and aggregated interaction data). We aim to use privacy-respecting analytics where possible."}),s.jsx("h3",{children:"Marketing"}),s.jsx("p",{children:"Used in limited cases to measure the effectiveness of campaigns. We do not run third-party advertising trackers across our site by default."}),s.jsx("h2",{children:"3. Third-Party Services"}),s.jsx("p",{children:"We may use the following categories of third-party providers, each with their own cookie practices:"}),s.jsxs("ul",{children:[s.jsxs("li",{children:[s.jsx("strong",{children:"Google reCAPTCHA"})," â to protect contact and demo forms from abuse."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Hosting and CDN providers"})," â to deliver the site reliably and securely."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Analytics"})," â to understand aggregate site usage."]}),s.jsxs("li",{children:[s.jsx("strong",{children:"Embedded content"})," (e.g. YouTube, LinkedIn) â which may set their own cookies when loaded."]})]}),s.jsx("h2",{children:"4. Managing Cookies"}),s.jsx("p",{children:"You can control or delete cookies through your browser settings at any time. Blocking strictly necessary cookies may affect site functionality. Where required by law, we ask for consent before setting non-essential cookies via our cookie banner."}),s.jsx("h2",{children:"5. Do Not Track"}),s.jsx("p",{children:'Browser "Do Not Track" signals are not yet handled consistently across the web. We honour explicit consent choices made via our cookie banner and respect applicable legal requirements.'}),s.jsx("h2",{children:"6. Changes"}),s.jsx("p",{children:'We may update this policy as our site and tools evolve. The "Last updated" date above reflects the most recent revision.'}),s.jsx("h2",{children:"7. Contact"}),s.jsxs("p",{children:["Questions about cookies: ",s.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),". For more on how we handle personal data, see our ",s.jsx("a",{href:"/privacy",children:"Privacy Policy"}),"."]})]}),hK=[{icon:Gc,label:"Certifications & compliance"},{icon:nn,label:"Service & maintenance history"},{icon:a_,label:"Manuals & spec sheets"},{icon:Jt,label:"Warranty & ownership"},{icon:Q6,label:"Inspection & audit trail"},{icon:nt,label:"Scannable on the asset itself"}],mK=[{eyebrow:"01",title:"Commercial & installed equipment",body:"HVAC, fire safety, electrical, building systems, industrial machinery. Field teams scan the asset and get the record they need in seconds â not a phone call to head office.",proof:"Cuts time-to-information at the asset"},{eyebrow:"02",title:"Higher-value manufactured goods",body:"Furniture, appliances, interiors, specialist manufacturing. Warranty, provenance, parts and care travel with the product for its entire life â not just the first 30 days.",proof:"Reduces support load and returns"},{eyebrow:"03",title:"Authenticated & lifecycle products",body:"Premium goods, resale, collectibles, regulated items. A persistent identity that survives ownership changes, resale and secondary markets.",proof:"Protects brand value over time"}],pK=[{before:"Paper manuals in a drawer",after:"Live record on the asset"},{before:"Spreadsheet service logs",after:"Structured, queryable history"},{before:"Lost warranty information",after:"Ownership that travels with the product"},{before:"Audit panic before inspections",after:"Continuous audit readiness"},{before:"Re-keying data into AI tools",after:"AI-retrievable by default"}];
966function fK(){const[e,t]=x.useState(!1);return x.useEffect(()=>{const n=()=>t(window.scrollY>8);return window.addEventListener("scroll",n),()=>window.removeEventListener("scroll",n)},[]),s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Operational Product Identity â Concept",description:"Internal concept page exploring a narrower commercial positioning for SmartLinks.",url:"https://smartlinks-public-site.lovable.app/concepts/operational-identity",canonical:"https://smartlinks-public-site.lovable.app/concepts/operational-identity",noindex:!0}),s.jsxs("div",{className:"min-h-screen bg-[#f6f5f1] text-stone-900 font-sans antialiased selection:bg-stone-900 selection:text-stone-50",children:[s.jsx("header",{className:`sticky top-0 z-50 transition-all duration-300 ${e?"bg-[#f6f5f1]/85 backdrop-blur border-b border-stone-200":"bg-transparent"}`,children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 lg:px-10 h-16 flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-2 h-2 rounded-full bg-stone-900"}),s.jsx("span",{className:"text-sm tracking-[0.18em] uppercase font-medium",children:"SmartLinks"}),s.jsx("span",{className:"hidden sm:inline text-xs text-stone-500 ml-3 pl-3 border-l border-stone-300",children:"Concept · Operational Identity"})]}),s.jsxs("nav",{className:"hidden md:flex items-center gap-8 text-sm text-stone-600",children:[s.jsx("a",{href:"#wedge",className:"hover:text-stone-900",children:"The wedge"}),s.jsx("a",{href:"#who",className:"hover:text-stone-900",children:"Who it's for"}),s.jsx("a",{href:"#how",className:"hover:text-stone-900",children:"How it works"}),s.jsx("a",{href:"#proof",className:"hover:text-stone-900",children:"Trust"})]}),s.jsxs(ve,{to:"/contact",className:"inline-flex items-center gap-1.5 text-sm font-medium bg-stone-900 text-stone-50 px-4 py-2 rounded-full hover:bg-stone-700 transition",children:["Talk to us ",s.jsx(ue,{className:"w-3.5 h-3.5"})]})]})}),s.jsx("section",{className:"px-6 lg:px-10 pt-20 pb-24 lg:pt-32 lg:pb-32 border-b border-stone-200",children:s.jsxs("div",{className:"max-w-7xl mx-auto",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-10",children:[s.jsx("span",{className:"text-xs tracking-[0.2em] uppercase text-stone-500",children:"Operational Product Intelligence"}),s.jsx("span",{className:"h-px w-12 bg-stone-300"}),s.jsx("span",{className:"text-xs text-stone-500",children:"For operations, service & compliance teams"})]}),s.jsxs("h1",{className:"text-[clamp(2.5rem,7vw,6rem)] leading-[0.95] tracking-[-0.03em] font-medium max-w-5xl",children:["Give every product a"," ",s.jsx("span",{className:"italic font-serif text-stone-900",children:"live digital record."})]}),s.jsx("p",{className:"mt-10 text-xl md:text-2xl text-stone-600 max-w-3xl leading-relaxed",children:"Service history, certifications, manuals, warranty and ownership â attached to the asset itself, scannable in seconds, structured for audit and AI retrieval."}),s.jsxs("div",{className:"mt-12 flex flex-wrap items-center gap-4",children:[s.jsxs(ve,{to:"/contact",className:"group inline-flex items-center gap-2 bg-stone-900 text-stone-50 px-7 py-4 rounded-full text-base font-medium hover:bg-stone-700 transition",children:["Book a 20-minute walkthrough",s.jsx(ue,{className:"w-4 h-4 group-hover:translate-x-0.5 transition"})]}),s.jsxs("a",{href:"#wedge",className:"inline-flex items-center gap-2 text-stone-700 hover:text-stone-900 text-base font-medium px-5 py-4",children:["See how it works ",s.jsx(eh,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"mt-24 grid grid-cols-2 md:grid-cols-4 gap-8 border-t border-stone-200 pt-10",children:[{k:"Seconds",v:"to retrieve any record in the field"},{k:"100%",v:"of products carry their own history"},{k:"Zero",v:"lost manuals, warranties or certificates"},{k:"Audit-ready",v:"by default, not by sprint"}].map(n=>s.jsxs("div",{children:[s.jsx("div",{className:"text-3xl md:text-4xl font-serif text-stone-900",children:n.k}),s.jsx("div",{className:"mt-2 text-sm text-stone-500 leading-snug",children:n.v})]},n.k))})]})}),s.jsx("section",{id:"wedge",className:"px-6 lg:px-10 py-24 lg:py-32 border-b border-stone-200",children:s.jsxs("div",{className:"max-w-7xl mx-auto grid lg:grid-cols-[1fr_1.4fr] gap-16 lg:gap-24",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-500 mb-6",children:"The wedge"}),s.jsxs("h2",{className:"text-4xl md:text-5xl tracking-[-0.02em] leading-[1.05] font-medium",children:["One live record.",s.jsx("br",{}),s.jsx("span",{className:"italic font-serif",children:"Attached to the product."})]}),s.jsx("p",{className:"mt-8 text-stone-600 text-lg leading-relaxed",children:"Not a brochure page. Not a marketing experience. A working operational record â owned by you, updated over time, and accessible by anyone holding the product."}),s.jsx("p",{className:"mt-6 text-stone-500 text-sm leading-relaxed",children:"Digital Product Passports, GS1 Digital Link and AI retrieval become features of this record â not separate products to buy."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-px bg-stone-200 border border-stone-200 rounded-2xl overflow-hidden",children:hK.map(n=>s.jsxs("div",{className:"bg-[#f6f5f1] p-7 flex items-start gap-4 hover:bg-white transition",children:[s.jsx("div",{className:"w-10 h-10 rounded-full bg-stone-900 text-stone-50 flex items-center justify-center flex-shrink-0",children:s.jsx(n.icon,{className:"w-4 h-4"})}),s.jsx("div",{className:"pt-1.5 text-stone-800 font-medium leading-snug",children:n.label})]},n.label))})]})}),s.jsx("section",{className:"px-6 lg:px-10 py-24 lg:py-32 bg-stone-900 text-stone-100",children:s.jsxs("div",{className:"max-w-7xl mx-auto",children:[s.jsxs("div",{className:"max-w-3xl",children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-400 mb-6",children:"Today vs. with SmartLinks"}),s.jsxs("h2",{className:"text-4xl md:text-5xl tracking-[-0.02em] leading-[1.05] font-medium",children:["Stop searching for product information.",s.jsx("br",{}),s.jsx("span",{className:"italic font-serif text-stone-300",children:"Start scanning the product."})]})]}),s.jsx("div",{className:"mt-16 divide-y divide-stone-800 border-y border-stone-800",children:pK.map(n=>s.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-[1fr_auto_1fr] items-center gap-6 py-6",children:[s.jsx("div",{className:"text-stone-500 line-through decoration-stone-700",children:n.before}),s.jsx(ue,{className:"hidden md:block w-4 h-4 text-stone-500 mx-auto"}),s.jsx("div",{className:"text-stone-50 font-medium",children:n.after})]},n.before))})]})}),s.jsx("section",{id:"who",className:"px-6 lg:px-10 py-24 lg:py-32 border-b border-stone-200",children:s.jsxs("div",{className:"max-w-7xl mx-auto",children:[s.jsxs("div",{className:"flex flex-col md:flex-row md:items-end md:justify-between gap-6 mb-16",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-500 mb-6",children:"Where it bites first"}),s.jsxs("h2",{className:"text-4xl md:text-5xl tracking-[-0.02em] leading-[1.05] font-medium max-w-3xl",children:["Three places where"," ",s.jsx("span",{className:"italic font-serif",children:"a missing record costs real money."})]})]}),s.jsx("div",{className:"text-sm text-stone-500 max-w-xs",children:"We're starting narrow. The platform underneath is broad â but the doorway is operational."})]}),s.jsx("div",{className:"grid md:grid-cols-3 gap-px bg-stone-200 border border-stone-200 rounded-2xl overflow-hidden",children:mK.map(n=>s.jsxs("article",{className:"bg-[#f6f5f1] p-8 flex flex-col",children:[s.jsx("div",{className:"text-xs tracking-[0.2em] text-stone-400 mb-8",children:n.eyebrow}),s.jsx("h3",{className:"text-2xl font-medium tracking-[-0.01em] leading-snug mb-5",children:n.title}),s.jsx("p",{className:"text-stone-600 leading-relaxed mb-8",children:n.body}),s.jsx("div",{className:"mt-auto pt-6 border-t border-stone-200 text-sm text-stone-900 font-medium",children:n.proof})]},n.title))})]})}),s.jsx("section",{id:"how",className:"px-6 lg:px-10 py-24 lg:py-32 border-b border-stone-200",children:s.jsxs("div",{className:"max-w-7xl mx-auto",children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-500 mb-6",children:"How it works"}),s.jsxs("h2",{className:"text-4xl md:text-5xl tracking-[-0.02em] leading-[1.05] font-medium max-w-3xl",children:["Three steps."," ",s.jsx("span",{className:"italic font-serif",children:"No platform project required."})]}),s.jsx("div",{className:"mt-16 grid md:grid-cols-3 gap-12",children:[{n:"01",t:"Assign identity",d:"Every product, batch or asset gets a persistent identity â printed, NFC-tagged or applied to existing GS1 codes."},{n:"02",t:"Attach the record",d:"Pull in what already exists: PIM data, manuals, certificates, warranty, service logs. Add what's missing as you go."},{n:"03",t:"Scan to retrieve",d:"Anyone with the product â staff, service partners, owners, auditors, AI agents â gets exactly the view they need."}].map(n=>s.jsxs("div",{children:[s.jsx("div",{className:"text-5xl font-serif text-stone-300 mb-6",children:n.n}),s.jsx("h3",{className:"text-xl font-medium mb-3",children:n.t}),s.jsx("p",{className:"text-stone-600 leading-relaxed",children:n.d})]},n.n))})]})}),s.jsx("section",{id:"proof",className:"px-6 lg:px-10 py-24 lg:py-32 border-b border-stone-200",children:s.jsxs("div",{className:"max-w-7xl mx-auto grid lg:grid-cols-2 gap-16 items-start",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-500 mb-6",children:"Qu
966iet infrastructure"}),s.jsxs("h2",{className:"text-4xl md:text-5xl tracking-[-0.02em] leading-[1.05] font-medium",children:["Built on the standards"," ",s.jsx("span",{className:"italic font-serif",children:"your auditors already know."})]}),s.jsx("p",{className:"mt-8 text-stone-600 text-lg leading-relaxed",children:"GS1-approved. Digital Link resolver. ESPR / DPP-ready. Structured for AI retrieval. We lead the conversation with the outcome â but the infrastructure is unfashionably solid."})]}),s.jsx("ul",{className:"space-y-px bg-stone-200 border border-stone-200 rounded-2xl overflow-hidden",children:[{k:"GS1 Digital Link",v:"Approved solution provider · resolver included"},{k:"DPP / ESPR",v:"Compliant data model · update without re-issuing codes"},{k:"AI-retrievable",v:"Structured records, ready for MCP and RAG agents"},{k:"Your data, your domain",v:"Custom domains, export, no lock-in"}].map(n=>s.jsxs("li",{className:"bg-[#f6f5f1] px-6 py-5 flex items-center justify-between gap-6 hover:bg-white transition",children:[s.jsx("span",{className:"font-medium text-stone-900",children:n.k}),s.jsx("span",{className:"text-sm text-stone-500 text-right",children:n.v})]},n.k))})]})}),s.jsx("section",{className:"px-6 lg:px-10 py-28 lg:py-40",children:s.jsxs("div",{className:"max-w-5xl mx-auto text-center",children:[s.jsx("div",{className:"text-xs tracking-[0.2em] uppercase text-stone-500 mb-8",children:"The next conversation"}),s.jsxs("h2",{className:"text-[clamp(2.25rem,5vw,4.5rem)] leading-[1.02] tracking-[-0.02em] font-medium",children:["Bring one product line.",s.jsx("br",{}),s.jsx("span",{className:"italic font-serif",children:"We'll show you the record in 20 minutes."})]}),s.jsx("p",{className:"mt-8 text-stone-600 text-lg max-w-2xl mx-auto",children:"No platform pitch. No 12-month rollout. One product, one record, one scan â and a clear picture of what changes operationally."}),s.jsx("div",{className:"mt-12 flex flex-wrap items-center justify-center gap-4",children:s.jsxs(ve,{to:"/contact",className:"group inline-flex items-center gap-2 bg-stone-900 text-stone-50 px-8 py-4 rounded-full text-base font-medium hover:bg-stone-700 transition",children:["Book the walkthrough",s.jsx(fc,{className:"w-4 h-4 group-hover:-translate-y-0.5 group-hover:translate-x-0.5 transition"})]})})]})}),s.jsx("footer",{className:"px-6 lg:px-10 py-10 border-t border-stone-200 text-xs text-stone-500",children:s.jsxs("div",{className:"max-w-7xl mx-auto flex flex-col md:flex-row md:items-center md:justify-between gap-3",children:[s.jsx("div",{children:"Internal concept · not publicly linked · noindex"}),s.jsx("div",{className:"flex items-center gap-4",children:s.jsx(ve,{to:"/",className:"hover:text-stone-900",children:"Current homepage â"})})]})})]})]})}const xK=[{icon:Gc,title:"Digital Product Passports",body:"Compliance-ready product identity, structured for regulation and resale."},{icon:nn,title:"Product Support",body:"Manuals, guides, FAQs and warranty â surfaced at the point of need."},{icon:Jt,title:"Authentication",body:"Verify genuine products at any point in the supply or ownership chain."},{icon:yt,title:"Connected Retail",body:"Shelf-edge and in-store interactions tied to the product itself."},{icon:xc,title:"Asset & Service Records",body:"Permissioned operational workflows for the teams who maintain the asset."},{icon:ke,title:"Customer Engagement",body:"Post-purchase experiences, registration and loyalty â without a new app."},{icon:tn,title:"AI-Ready Product Data",body:"Connected, structured product intelligence agents and systems can query."}],gK=[{icon:Ss,title:"Retail & Packaging",body:"Connected packaging and shelf-edge experiences."},{icon:qc,title:"Fashion & Apparel",body:"DPP, resale, authenticity and customer engagement."},{icon:ca,title:"Consumer Products",body:"Support, warranty and lifecycle interactions."},{icon:nn,title:"Asset & Facilities",body:"Service records and operational workflows."},{icon:m_,title:"Manufacturing",body:"Connected product lifecycle and traceability."},{icon:Fk,title:"Fan & Collectibles",body:"Authenticated, interactive ownership experiences."}],Sj=[{icon:nt,label:"QR"},{icon:Dk,label:"NFC"},{icon:Yi,label:"RFID"},{icon:Qh,label:"GS1 Digital Link"}],vK=["Permissioned, role-aware experiences","Serialized, per-item identities","APIs & SDKs for product teams","Dynamic routing & rules engine","Native GS1 Digital Link support","Scalable, multi-tenant cloud","Granular access controls","Event streams & webhooks"],yK=["GS1 alignment","Packaging & label partners","PIM / DAM integrations","NFC & RFID hardware","Enterprise workflow systems","Resale & circular platforms"];function bK(){return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks â Connected identity for physical products",description:"The connected identity layer for physical products and assets. Turn QR, NFC, RFID and GS1 Digital Link into Digital Product Passports, support, authentication, lifecycle and operational workflows.",url:"https://smartlinks-public-site.lovable.app/concepts/connected-identity",canonical:"https://smartlinks-public-site.lovable.app/concepts/connected-identity",noindex:!0}),s.jsxs("div",{className:"ci-root min-h-screen",children:[s.jsx("style",{children:` 967 .ci-root { 968 --ci-bg: #ffffff; 969 --ci-bg-soft: #f7f8fa; 970 --ci-line: #e6e8ec; 971 --ci-ink: #0a0f1f; 972 --ci-ink-2: #3d465c; 973 --ci-muted: #6b7385; 974 --ci-accent: #635bff; /* stripe-ish indigo */ 975 --ci-accent-2: #00d4ff; 976 --ci-accent-3: #ff80b5; 977 --ci-grad: linear-gradient(135deg,#635bff 0%,#00d4ff 60%,#ff80b5 100%); 978 background: var(--ci-bg); 979 color: var(--ci-ink); 980 font-family: ui-sans-serif, system-ui, -apple-system, "Inter", "Segoe UI", sans-serif; 981 -webkit-font-smoothing: antialiased; 982 } 983 .ci-root h1, .ci-root h2, .ci-root h3 { 984 font-family: "Inter", ui-sans-serif, system-ui, sans-serif; 985 letter-spacing: -0.02em; 986 } 987 .ci-eyebrow { 988 display:inline-flex;align-items:center;gap:.5rem; 989 font-size:.75rem;font-weight:600;letter-spacing:.08em; 990 text-transform:uppercase;color:var(--ci-accent); 991 } 992 .ci-eyebrow::before{ 993 content:"";width:6px;height:6px;border-radius:999px; 994 background:var(--ci-grad); 995 } 996 .ci-btn-primary{ 997 display:inline-flex;align-items:center;gap:.5rem; 998 background:var(--ci-ink);color:#fff; 999 padding:.7rem 1.1rem;border-radius:999px; 1000 font-weight:500;font-size:.95rem; 1001 transition:transform .15s ease, background .15s ease; 1002 } 1003 .ci-btn-primary:hover{ background:#1a2238; transform: translateY(-1px); } 1004 .ci-btn-secondary{ 1005 display:inline-flex;align-items:center;gap:.5rem; 1006 color:var(--ci-ink);font-weight:500;font-size:.95rem; 1007 padding:.7rem 1rem;border-radius:999px; 1008 border:1px solid var(--ci-line); 1009 transition:border-color .15s ease, background .15s ease; 1010 } 1011 .ci-btn-secondary:hover{ border-color:#cdd2db; background:#fafbfd; } 1012 .ci-card{ 1013 background:#fff;border:1px solid var(--ci-line); 1014 border-radius:14px;padding:1.5rem; 1015 transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease; 1016 } 1017 .ci-card:hover{ 1018 border-color:#cdd2db; 1019 box-shadow: 0 12px 40px -16px rgba(10,15,31,.12); 1020 transform: translateY(-2px); 1021 } 1022 .ci-grid-bg{ 1023 background-image: 1024 linear-gradient(to right, rgba(10,15,31,.05) 1px, transparent 1px), 1025 linear-gradient(to bottom, rgba(10,15,31,.05) 1px, transparent 1px); 1026 background-size: 56px 56px; 1027 mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 40%, transparent 75%); 1028 } 1029 .ci-gradient-text{ 1030 background: var(--ci-grad); 1031 -webkit-background-clip:text;background-clip:text;color:transparent; 1032 } 1033 .ci-chip{ 1034 display:inline-flex;align-items:center;gap:.4rem; 1035 font-size:.78rem;font-weight:500;color:var(--ci-ink-2); 1036 background:#fff;border:1px solid var(--ci-line); 1037 padding:.35rem .65rem;border-radius:999px; 1038 } 1039 .ci-divider{ height:1px;background:var(--ci-line); } 1040 .ci-mono{ font-family: ui-monospace, "JetBrains Mono", Menlo, monospace; } 1041 `}),s.jsx("header",{className:"border-b border-[var(--ci-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[s.jsxs(ve,{to:"/",className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-7 h-7 rounded-md",style:{background:"var(--ci-grad)"}}),s.jsx("span",{className:"font-semibold tracking-tight text-[var(--ci-ink)]",children:"SmartLinks"}),s.jsx("span",{className:"ci-chip ml-2",children:"Concept B"})]}),s.jsxs("nav",{className:"hidden md:flex items-center gap-7 text-sm text-[var(--ci-ink-2)]",children:[s.jsx("a",{href:"#platform",className:"hover:text-[var(--ci-ink)]",children:"Platform"}),s.jsx("a",{href:"#solutions",className:"hover:text-[var(--ci-ink)]",children:"Solutions"}),s.jsx("a",{href:"#partners",className:"hover:text-[var(--ci-ink)]",children:"Partners"}),s.jsx("a",{href:"#enterprise",className:"hover:text-[var(--ci-ink)]",children:"Enterprise"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(ve,{to:"/contact",className:"ci-btn-secondary text-sm",children:"Sign in"}),s.jsxs(ve,{to:"/contact",className:"ci-btn-primary text-sm",children:["Book demo ",s.jsx(ue,{className:"w-4 h-4"})]})]})]})}),s.jsxs("section",{className:"relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 ci-grid-bg pointer-events-none"}),s.jsx("div",{className:"absolute -top-32 right-[-10%] w-[520px] h-[520px] rounded-full opacity-30 pointer-events-none",style:{background:"var(--ci-grad)",filter:"blur(120px)"}}),s.jsxs("div",{className:"relative max-w-7xl mx-auto px-6 pt-20 pb-24 grid lg:grid-cols-[1.1fr_1fr] gap-14 items-center",children:[s.jsxs("div",{children:[s.jsx("span",{className:"ci-eyebrow mb-5",children:"Connected identity infrastru
1041cture"}),s.jsxs("h1",{className:"text-5xl md:text-6xl font-semibold leading-[1.05] mb-6",children:["Turn every product into a"," ",s.jsx("span",{className:"ci-gradient-text",children:"connected digital experience."})]}),s.jsx("p",{className:"text-lg text-[var(--ci-ink-2)] max-w-xl mb-8 leading-relaxed",children:"SmartLinks is the connected identity layer for physical products and assets. Turn QR, NFC, RFID and GS1 Digital Link into Digital Product Passports, support, authentication, lifecycle records and operational workflows â from one platform."}),s.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-8",children:[s.jsxs(ve,{to:"/contact",className:"ci-btn-primary",children:["Book demo ",s.jsx(ue,{className:"w-4 h-4"})]}),s.jsxs("a",{href:"#solutions",className:"ci-btn-secondary",children:["Explore solutions ",s.jsx(fc,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"flex flex-wrap gap-2",children:Sj.map(({icon:e,label:t})=>s.jsxs("span",{className:"ci-chip",children:[s.jsx(e,{className:"w-3.5 h-3.5"})," ",t]},t))})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute -inset-6 rounded-3xl opacity-40 pointer-events-none",style:{background:"var(--ci-grad)",filter:"blur(60px)"}}),s.jsxs("div",{className:"relative bg-white border border-[var(--ci-line)] rounded-2xl p-6 shadow-[0_30px_80px_-30px_rgba(10,15,31,.18)]",children:[s.jsxs("div",{className:"flex items-center justify-between mb-5",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center",style:{background:"#0a0f1f"},children:s.jsx(nt,{className:"w-5 h-5 text-white"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-sm font-medium",children:"Acme Cordless Drill · SN 8841-203"}),s.jsx("div",{className:"ci-mono text-xs text-[var(--ci-muted)]",children:"id.smartlinks/01/0614141999996/21/8841203"})]})]}),s.jsxs("span",{className:"ci-chip",children:[s.jsx(En,{className:"w-3.5 h-3.5 text-emerald-500"})," Verified"]})]}),s.jsx("div",{className:"grid sm:grid-cols-3 gap-3",children:[{who:"Consumer",what:"Support · Warranty · Registration",tint:"from-indigo-500/10 to-indigo-500/0"},{who:"Staff",what:"Inventory · Service tools · Stock",tint:"from-sky-500/10 to-sky-500/0"},{who:"Inspector",what:"Compliance · Audit · Records",tint:"from-pink-500/10 to-pink-500/0"}].map(e=>s.jsxs("div",{className:`rounded-xl border border-[var(--ci-line)] p-3 bg-gradient-to-br ${e.tint}`,children:[s.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[s.jsx(ox,{className:"w-3.5 h-3.5 text-[var(--ci-muted)]"}),s.jsx("div",{className:"text-xs font-semibold",children:e.who})]}),s.jsx("div",{className:"text-xs text-[var(--ci-ink-2)] leading-snug",children:e.what})]},e.who))}),s.jsxs("div",{className:"mt-5 pt-5 border-t border-[var(--ci-line)] flex items-center justify-between text-xs text-[var(--ci-muted)]",children:[s.jsx("span",{className:"ci-mono",children:"POST /resolve"}),s.jsx("span",{children:"Same identifier · different experience"})]})]})]})]})]}),s.jsx("section",{className:"border-t border-[var(--ci-line)] bg-[var(--ci-bg-soft)]",children:s.jsx("div",{className:"max-w-7xl mx-auto px-6 py-20",children:s.jsxs("div",{className:"grid lg:grid-cols-[1fr_1.2fr] gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"The shift"}),s.jsx("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1] mb-5",children:"Every physical product is becoming digitally connected."}),s.jsx("p",{className:"text-[var(--ci-ink-2)] leading-relaxed",children:"GS1 Digital Link, Digital Product Passports, smart packaging, connected retail, serialized lifecycle data and AI-ready product intelligence are arriving together. Most businesses are not prepared to turn product identifiers into useful digital interactions. SmartLinks bridges that gap."})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3",children:[{icon:Ss,label:"Packaging"},{icon:nt,label:"Identifier"},{icon:qr,label:"SmartLinks"},{icon:ke,label:"Experience"}].map((e,t)=>s.jsxs("div",{className:"ci-card text-center py-5",children:[s.jsx("div",{className:"w-9 h-9 mx-auto mb-2 rounded-lg flex items-center justify-center bg-[var(--ci-bg-soft)] border border-[var(--ci-line)]",children:s.jsx(e.icon,{className:"w-4 h-4 text-[var(--ci-ink)]"})}),s.jsxs("div",{className:"text-xs text-[var(--ci-muted)] ci-mono",children:["0",t+1]}
vendor: 6,093 bytes, line 1041
1041),s.jsx("div",{className:"text-sm font-medium mt-1",children:e.label})]},e.label))}),s.jsx("div",{className:"mt-4 text-xs text-[var(--ci-muted)] text-center",children:"Packaging â identifier â identity layer â permissioned experience â data."})]})]})})}),s.jsx("section",{id:"solutions",className:"border-t border-[var(--ci-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"One platform"}),s.jsxs("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1] mb-4",children:["One connected identity layer. ",s.jsx("span",{className:"ci-gradient-text",children:"Multiple business outcomes."})]}),s.jsx("p",{className:"text-[var(--ci-ink-2)] leading-relaxed",children:"Not separate products. Applications built on a shared identity infrastructure â so one identifier can power any combination, and evolve over time."})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:xK.map(e=>s.jsxs("div",{className:"ci-card",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center mb-4 border border-[var(--ci-line)] bg-[var(--ci-bg-soft)]",children:s.jsx(e.icon,{className:"w-5 h-5 text-[var(--ci-ink)]"})}),s.jsx("h3",{className:"text-lg font-semibold mb-1.5",children:e.title}),s.jsx("p",{className:"text-sm text-[var(--ci-ink-2)] leading-relaxed",children:e.body})]},e.title))})]})}),s.jsx("section",{id:"platform",className:"border-t border-[var(--ci-line)] bg-[var(--ci-bg-soft)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"Architecture"}),s.jsx("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1] mb-4",children:"Built for connected product ecosystems."}),s.jsx("p",{className:"text-[var(--ci-ink-2)] leading-relaxed",children:"Identifiers connect to the SmartLinks identity layer, which routes scans to the right experience for the right person â with the apps, integrations and workflows around it."})]}),s.jsxs("div",{className:"grid lg:grid-cols-3 gap-4",children:[s.jsxs("div",{className:"ci-card",children:[s.jsx("div",{className:"ci-eyebrow mb-3",children:"Identifiers"}),s.jsx("div",{className:"space-y-2",children:Sj.map(({icon:e,label:t})=>s.jsxs("div",{className:"flex items-center gap-2.5 text-sm text-[var(--ci-ink-2)]",children:[s.jsx(e,{className:"w-4 h-4 text-[var(--ci-ink)]"})," ",t]},t))})]}),s.jsxs("div",{className:"ci-card relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 opacity-[0.07] pointer-events-none",style:{background:"var(--ci-grad)"}}),s.jsx("div",{className:"ci-eyebrow mb-3",children:"Identity layer"}),s.jsx("div",{className:"text-xl font-semibold mb-1.5",children:"SmartLinks"}),s.jsx("p",{className:"text-sm text-[var(--ci-ink-2)] leading-relaxed mb-4",children:"Resolves every scan to the right context â product, owner, role, region, channel â with permissions, rules and serialized records."}),s.jsxs("div",{className:"flex flex-wrap gap-1.5",children:[s.jsxs("span",{className:"ci-chip",children:[s.jsx(xc,{className:"w-3 h-3"})," Routing"]}),s.jsxs("span",{className:"ci-chip",children:[s.jsx(ox,{className:"w-3 h-3"})," Permissions"]}),s.jsxs("span",{className:"ci-chip",children:[s.jsx(tn,{className:"w-3 h-3"})," Records"]}),s.jsxs("span",{className:"ci-chip",children:[s.jsx(Ki,{className:"w-3 h-3"})," GS1 DL"]})]})]}),s.jsxs("div",{className:"ci-card",children:[s.jsx("div",{className:"ci-eyebrow mb-3",children:"Apps & integrations"}),s.jsxs("div",{className:"space-y-2 text-sm text-[var(--ci-ink-2)]",children:[s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx(ke,{className:"w-4 h-4 text-[var(--ci-ink)]"})," Modular experience apps"]}),s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx(qr,{className:"w-4 h-4 text-[var(--ci-ink)]"})," APIs & SDKs"]}),s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx(xc,{className:"w-4 h-4 text-[var(--ci-ink)]"})," Workflows & webhooks"]}),s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx(tn,{className:"w-4 h-4 text-[var(--ci-ink)]"})," PIM / DAM / ERP"]})]})]})]})]})}),s.jsx("section",{className:"border-t border-[var(--ci-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"flex items-end justify-between flex-wrap gap-6 mb-12",children:[s.jsxs("div",{className:"max-w-2xl",children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"Where it lands"}),s.jsx("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1]",children:"Built for the industries where product identity matters most."})]}),s.jsxs(ve,{to:"/contact",className:"ci-btn-secondary",children:["Discuss your sector ",s.jsx(fc,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4",children:gK.map(e=>s.jsxs("div",{className:"ci-card group",children:[s.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[s.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center border border-[var(--ci-line)] bg-[var(--ci-bg-soft)]",children:s.jsx(e.icon,{className:"w-4 h-4 text-[var(--ci-ink)]"})}),s.jsx("h3",{className:"font-semibold",children:e.title})]}),s.jsx("p",{className:"text-sm text-[var(--ci-ink-2)] leading-relaxed",children:e.body})]},e.title))})]})}),s.jsx("section",{id:"partners",className:"border-t border-[var(--ci-line)] bg-[var(--ci-bg-soft)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24 grid lg:grid-cols-[1fr_1.2fr] gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"Ecosystem"}),s.jsx("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1] mb-5",children:"Designed to integrate into existing product and packaging ecosystems."}),s.jsx("p",{className:"text-[var(--ci-ink-2)] leading-relaxed mb-6",children:"SmartLinks is infrastru
1041cture. It works alongside the systems and partners already producing, tagging, storing and distributing your products â not in place of them."}),s.jsxs(ve,{to:"/contact",className:"ci-btn-primary",children:["Talk to partnerships ",s.jsx(ue,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:yK.map(e=>s.jsxs("div",{className:"ci-card flex items-center gap-3",children:[s.jsx(En,{className:"w-4 h-4 text-emerald-500 shrink-0"}),s.jsx("span",{className:"text-sm text-[var(--ci-ink-2)]",children:e})]},e))})]})}),s.jsx("section",{id:"enterprise",className:"border-t border-[var(--ci-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"ci-eyebrow mb-4",children:"Enterprise"}),s.jsx("h2",{className:"text-4xl md:text-[2.6rem] font-semibold leading-[1.1]",children:"Enterprise-ready connected identity infrastructure."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-3",children:vK.map(e=>s.jsx("div",{className:"ci-card py-4",children:s.jsxs("div",{className:"flex items-start gap-2.5",children:[s.jsx("div",{className:"w-1.5 h-1.5 rounded-full mt-2",style:{background:"var(--ci-grad)"}}),s.jsx("span",{className:"text-sm text-[var(--ci-ink-2)] leading-relaxed",children:e})]})},e))})]})}),s.jsxs("section",{className:"border-t border-[var(--ci-line)] relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 opacity-[0.08] pointer-events-none",style:{background:"var(--ci-grad)"}}),s.jsxs("div",{className:"relative max-w-5xl mx-auto px-6 py-24 text-center",children:[s.jsxs("h2",{className:"text-4xl md:text-5xl font-semibold leading-[1.1] mb-5",children:["Start building ",s.jsx("span",{className:"ci-gradient-text",children:"connected products."})]}),s.jsx("p",{className:"text-[var(--ci-ink-2)] text-lg max-w-2xl mx-auto mb-8 leading-relaxed",children:"Launch Digital Product Passports, connected packaging, support journeys, authentication and operational workflows from a single identity platform."}),s.jsxs("div",{className:"flex flex-wrap justify-center gap-3",children:[s.jsxs(ve,{to:"/contact",className:"ci-btn-primary",children:["Book demo ",s.jsx(ue,{className:"w-4 h-4"})]}),s.jsx(ve,{to:"/contact",className:"ci-btn-secondary",children:"Talk to partnerships"}),s.jsx("a",{href:"#platform",className:"ci-btn-secondary",children:"Explore platform"})]})]})]}),s.jsx("footer",{className:"border-t border-[var(--ci-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex items-center justify-between text-xs text-[var(--ci-muted)]",children:[s.jsx("span",{children:"SmartLinks · Concept B â connected identity"}),s.jsx("span",{className:"ci-mono",children:"/concepts/connected-identity"})]})})]})]})}const Cj=[{icon:nt,label:"QR"},{icon:Dk,label:"NFC"},{icon:Yi,label:"RFID"},{icon:Qh,label:"GS1 Digital Link"}],wK=[{icon:nt,title:"QR codes still link to static pages.",body:"One URL, one audience, no context. The identifier is doing almost none of the work it could."},{icon:Ps,title:"Product records are fragmented.",body:"PIM, DAM, ERP, service software, marketing â nothing meets at the product itself."},{icon:nn,title:"Service history is disconnected.",body:"Paper forms, spreadsheets and PDFs that the next technician will never see."},{icon:dt,title:"Teams scan but get nothing useful.",body:"Retail staff, technicians and inspectors see the same consumer page as everyone else."},{icon:Gc,title:"DPP and traceability are landing.",body:"Regulation is increasing. Most product stacks are not ready for serialized, structured records."},{icon:tn,title:"AI needs structured product data.",body:"Agents and assistants can't reason about products that don't have a connected identity."}],Pj=[{who:"Customer",icon:dt,points:["Product info & manuals","Warranty & registration","Support & FAQs","Authenticity check"]},{who:"Technician",icon:C0,points:["Service history","Maintenance workflows","Parts & replacements","Inspection records"]}
1041,{who:"Retail staff",icon:_0,points:["Stock & inventory","Shelf-edge workflows","Replenishment","Product operations"]},{who:"Inspector",icon:Gh,points:["Compliance records","DPP data","Audit history","Chain of custody"]}],jK=[{icon:Gc,title:"Digital Product Passports",body:"Serialized, regulation-ready product records â one application of the identity layer, not the whole platform."},{icon:nn,title:"Connected Asset Operations",body:"Live service records, inspections and maintenance tied to the asset itself."},{icon:Jt,title:"Authentication",body:"Verify genuine products across supply, retail and ownership."},{icon:yt,title:"Retail & Packaging",body:"Connected packaging, shelf-edge tools and in-store experiences."},{icon:ca,title:"Product Support",body:"Manuals, guides, warranty and post-purchase service at the point of need."},{icon:tn,title:"AI-Ready Product Data",body:"Structured, queryable product intelligence for agents and downstream systems."}],NK=[{icon:ox,label:"Permissions"},{icon:xc,label:"Routing"},{icon:L_,label:"Rules engine"},{icon:V_,label:"APIs & webhooks"},{icon:tn,label:"Lifecycle data"},{icon:qr,label:"Context engine"}];function kK(){return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks â Connected identity infrastructure for products & assets",description:"The connected identity layer for physical products and assets. Turn QR, NFC, RFID and GS1 Digital Link into operational workflows, DPP, support, authentication and lifecycle records.",url:"https://smartlinks-public-site.lovable.app/concepts/connected-infrastructure",canonical:"https://smartlinks-public-site.lovable.app/concepts/connected-infrastructure",noindex:!0}),s.jsxs("div",{className:"cf-root min-h-screen",children:[s.jsx("style",{children:` 1042 .cf-root { 1043 --cf-bg: #ffffff; 1044 --cf-bg-soft: #f6f7f9; 1045 --cf-bg-ink: #0a0f1f; 1046 --cf-line: #e6e8ec; 1047 --cf-line-strong: #cdd2db; 1048 --cf-ink: #0a0f1f; 1049 --cf-ink-2: #3d465c; 1050 --cf-muted: #6b7385; 1051 --cf-accent: #635bff; 1052 --cf-accent-2: #00d4ff; 1053 --cf-grad: linear-gradient(135deg,#635bff 0%,#00d4ff 100%); 1054 background: var(--cf-bg); 1055 color: var(--cf-ink); 1056 font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; 1057 -webkit-font-smoothing: antialiased; 1058 } 1059 .cf-root h1, .cf-root h2, .cf-root h3 { letter-spacing: -0.022em; } 1060 .cf-eyebrow { 1061 display:inline-flex;align-items:center;gap:.5rem; 1062 font-size:.72rem;font-weight:600;letter-spacing:.10em; 1063 text-transform:uppercase;color:var(--cf-accent); 1064 } 1065 .cf-eyebrow::before{ 1066 content:"";width:6px;height:6px;border-radius:999px;background:var(--cf-grad); 1067 } 1068 .cf-btn-primary{ 1069 display:inline-flex;align-items:center;gap:.5rem; 1070 background:var(--cf-ink);color:#fff; 1071 padding:.7rem 1.1rem;border-radius:8px; 1072 font-weight:500;font-size:.95rem; 1073 transition:transform .15s ease, background .15s ease; 1074 } 1075 .cf-btn-primary:hover{ background:#1a2238; transform: translateY(-1px); } 1076 .cf-btn-secondary{ 1077 display:inline-flex;align-items:center;gap:.5rem; 1078 color:var(--cf-ink);font-weight:500;font-size:.95rem; 1079 padding:.7rem 1rem;border-radius:8px; 1080 border:1px solid var(--cf-line); 1081 transition:border-color .15s ease, background .15s ease; 1082 } 1083 .cf-btn-secondary:hover{ border-color:var(--cf-line-strong); background:#fafbfd; } 1084 .cf-card{ 1085 background:#fff;border:1px solid var(--cf-line); 1086 border-radius:12px;padding:1.4rem; 1087 transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease; 1088 } 1089 .cf-card:hover{ 1090 border-color:var(--cf-line-strong); 1091 box-shadow: 0 10px 32px -16px rgba(10,15,31,.10); 1092 } 1093 .cf-grid-bg{ 1094 background-image: 1095 linear-gradient(to right, rgba(10,15,31,.05) 1px, transparent 1px), 1096 linear-gradient(to bottom, rgba(10,15,31,.05) 1px, transparent 1px); 1097 background-size: 56px 56px; 1098 mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 35%, transparent 75%); 1099 } 1100 .cf-gradient-text{ 1101 background: var(--cf-grad); 1102 -webkit-background-clip:text;background-clip:text;color:transparent; 1103 } 1104 .cf-chip{ 1105 display:inline-flex;align-items:center;gap:.4rem; 1106 font-size:.78rem;font-weight:500;color:var(--cf-ink-2); 1107 background:#fff;border:1px solid var(--cf-line); 1108 padding:.35rem .65rem;border-radius:999px; 1109 } 1110 .cf-mono{ font-family: ui-monospace, "JetBrains Mono", Menlo, monospace; } 1111 .cf-arrow{ 1112 position:relative;height:1px;background:var(--cf-line-strong); 1113 } 1114 .cf-arrow::after{ 1115 content:"";position:absolute;right:-1px;top:-3px; 1116 border-left:6px solid var(--cf-line-strong); 1117 border-top:3.5px solid transparent;border-bottom:3.5px solid transparent; 1118 } 1119 .cf-layer{ 1120 border:1px solid var(--cf-line);border-radius:12px;background:#fff; 1121 padding:1rem 1.1rem; 1122 } 1123 `}),s.jsx("header",{className:"border-b border-[var(--cf-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[s.jsxs(ve,{to:"/",className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-7 h-7 rounded-md",style:{background:"var(--cf-grad)"}}),s.jsx("span",{className:"font-semibold tracking-tight",children:"SmartLinks"}),s.jsx("span",{className:"cf-chip ml-2",children:"Concept C"})]}),s.jsxs("nav",{className:"hidden md:flex items-center gap-7 text-sm text-[var(--cf-ink-2)]",children:[s.jsx("a",{href:"#problem",className:"hover:text-[var(--cf-ink)]",children:"Problem"}),s.jsx("a",{href:"#platform",className:"hover:text-[var(--cf-ink)]",children:"Platform"}),s.jsx("a",{href:"#applications",className:"hover:text-[var(--cf-ink)]",children:"Applications"}),s.jsx("a",{href:"#assets",className:"hover:text-[var(--cf-ink)]",children:"Asset operations"})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(ve,{to:"/contact",className:"cf-btn-secondary text-sm",children:"Sign in"}),s.jsxs(ve,{to:"/contact",className:"cf-btn-primary text-sm",children:["Book demo ",s.jsx(ue,{className:"w-4 h-4"})]})]})]})}),s.jsxs("section",{className:"relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 cf-grid-bg pointer-events-none"}),s.jsx("div",{className:"absolute -top-32 right-[-10%] w-[520px] h-[520px] rounded-full opacity-25 pointer-events-none",style:{background:"var(--cf-grad)",filter:"blur(120px)"}}),s.jsxs("div",{className:"relative max-w-7xl mx-auto px-6 pt-20 pb-20 grid lg:grid-cols-[1.15fr_1fr] gap-14 items-center",children:[s.jsxs("div",{children:[s.jsx("span",{className:"cf-e
1123yebrow mb-5",children:"Connected identity infrastructure"}),s.jsxs("h1",{className:"text-[2.6rem] md:text-6xl font-semibold leading-[1.04] mb-6",children:["Stop sending product QR codes to"," ",s.jsx("span",{className:"cf-gradient-text",children:"static web pages."})]}),s.jsx("p",{className:"text-lg text-[var(--cf-ink-2)] max-w-xl mb-8 leading-relaxed",children:"SmartLinks turns QR, NFC, RFID and GS1 Digital Link into a connected identity for every product and asset â with support, lifecycle, compliance and operational workflows built in. One identifier. Different experiences for every user."}),s.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-8",children:[s.jsxs(ve,{to:"/contact",className:"cf-btn-primary",children:["Book a 20-minute walkthrough ",s.jsx(ue,{className:"w-4 h-4"})]}),s.jsxs("a",{href:"#platform",className:"cf-btn-secondary",children:["See how it works ",s.jsx(fc,{className:"w-4 h-4"})]})]}),s.jsx("div",{className:"flex flex-wrap gap-2",children:Cj.map(({icon:e,label:t})=>s.jsxs("span",{className:"cf-chip",children:[s.jsx(e,{className:"w-3.5 h-3.5"})," ",t]},t))})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute -inset-6 rounded-3xl opacity-30 pointer-events-none",style:{background:"var(--cf-grad)",filter:"blur(60px)"}}),s.jsxs("div",{className:"relative bg-white border border-[var(--cf-line)] rounded-2xl p-6 shadow-[0_30px_80px_-30px_rgba(10,15,31,.18)]",children:[s.jsxs("div",{className:"flex items-center justify-between mb-5",children:[s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center",style:{background:"var(--cf-bg-ink)"},children:s.jsx(nt,{className:"w-5 h-5 text-white"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-sm font-medium",children:"Acme Cordless Drill · SN 8841-203"}),s.jsx("div",{className:"cf-mono text-xs text-[var(--cf-muted)]",children:"id.smartlinks/01/0614141999996/21/8841203"})]})]}),s.jsxs("span",{className:"cf-chip",children:[s.jsx(En,{className:"w-3.5 h-3.5 text-emerald-500"})," Verified"]})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-2.5",children:Pj.map(e=>s.jsxs("div",{className:"rounded-lg border border-[var(--cf-line)] p-3 bg-[var(--cf-bg-soft)]",children:[s.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[s.jsx(e.icon,{className:"w-3.5 h-3.5 text-[var(--cf-accent)]"}),s.jsx("div",{className:"text-xs font-semibold",children:e.who})]}),s.jsx("div",{className:"text-xs text-[var(--cf-ink-2)] leading-snug",children:e.points.slice(0,2).join(" · ")})]},e.who))}),s.jsxs("div",{className:"mt-5 pt-4 border-t border-[var(--cf-line)] flex items-center justify-between text-xs text-[var(--cf-muted)]",children:[s.jsx("span",{className:"cf-mono",children:"POST /resolve"}),s.jsx("span",{children:"Same identifier · different experience"})]})]})]})]})]}),s.jsx("section",{id:"problem",className:"border-t border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-20",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsxs("span",{className:"cf-eyebrow mb-4",children:[s.jsx(dx,{className:"w-3.5 h-3.5"})," The problem"]}),s.jsx("h2",{className:"text-3xl md:text-[2.4rem] font-semibold leading-[1.1] mb-4",children:"Most product identifiers still lead nowhere useful."}),s.jsx("p",{className:"text-[var(--cf-ink-2)] leading-relaxed",children:"Connected products are arriving â through GS1 Digital Link, Digital Product Passports, smart packaging, connected retail and AI-driven service. But the systems underneath most products were never built for it."})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-3",children:wK.map(e=>s.jsxs("div",{className:"cf-card",children:[s.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center mb-3 border border-[var(--cf-line)] bg-white",children:s.jsx(e.icon,{className:"w-4 h-4 text-[var(--cf-ink)]"})}),s.jsx("h3",{className:"text-[0.98rem] font-semibold mb-1.5",children:e.title}),s.jsx("p",{className:"text-sm text-[var(--cf-ink-2)] leading-relaxed",children:e.body})]},e.title))}),s.jsxs("div",{className:"mt-10 cf-card flex flex-col md:flex-row md:items-center gap-4 md:gap-6",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center",style:{background:"var(--cf-grad)"},children:s.jsx(qr,{className:"w-5 h-5 text-white"})}),s.jsxs("div",{className:"flex-1",children:[s.jsx("div",{className:"text-sm font-semibold mb-0.5",children:"SmartLinks is the connected identity layer that fixes this."}),s.jsx("div",{className:"text-sm text-[var(--cf-ink-2)]",children:"One platform that gives every product a serialized, permissioned identity â and the workflows around it."})]}),s.jsxs("a",{href:"#platform",className:"cf-btn-secondary text-sm",children:["See the architecture ",s.jsx(ue,{className:"w-4 h-4"})]})]})]})}),s.jsx("section",{className:"border-t border-[var(--cf-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"cf-e
1123yebrow mb-4",children:"Core capability"}),s.jsxs("h2",{className:"text-3xl md:text-[2.4rem] font-semibold leading-[1.1] mb-4",children:["One identity. ",s.jsx("span",{className:"cf-gradient-text",children:"Different experiences for every user."})]}),s.jsx("p",{className:"text-[var(--cf-ink-2)] leading-relaxed",children:"Most QR systems are static, public and single-purpose. SmartLinks resolves the same identifier into different information for different people â based on who they are, where they are, and what the product needs from them."})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-4 gap-3",children:Pj.map(e=>s.jsxs("div",{className:"cf-card",children:[s.jsxs("div",{className:"flex items-center gap-2.5 mb-3",children:[s.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center border border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:s.jsx(e.icon,{className:"w-4 h-4 text-[var(--cf-ink)]"})}),s.jsx("h3",{className:"text-base font-semibold",children:e.who})]}),s.jsx("ul",{className:"space-y-1.5",children:e.points.map(t=>s.jsxs("li",{className:"flex items-start gap-2 text-sm text-[var(--cf-ink-2)]",children:[s.jsx(En,{className:"w-3.5 h-3.5 mt-0.5 text-[var(--cf-accent)] flex-shrink-0"}),s.jsx("span",{children:t})]},t))})]},e.who))})]})}),s.jsx("section",{id:"platform",className:"border-t border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"cf-eyebrow mb-4",children:"Architecture"}),s.jsx("h2",{className:"text-3xl md:text-[2.4rem] font-semibold leading-[1.1] mb-4",children:"One infrastructure layer. Many applications."}),s.jsx("p",{className:"text-[var(--cf-ink-2)] leading-relaxed",children:"The identifier on the product is the easy part. SmartLinks is the layer between it and every downstream system â permissioned, routed, queryable and ready for AI."})]}),s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"cf-layer",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"cf-eyebrow",children:"01 · Physical identifiers"}),s.jsx("span",{className:"text-xs text-[var(--cf-muted)]",children:"on the product"})]}),s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2.5",children:Cj.map(({icon:e,label:t})=>s.jsxs("div",{className:"flex items-center gap-2 px-3 py-2.5 rounded-lg border border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:[s.jsx(e,{className:"w-4 h-4 text-[var(--cf-ink)]"}),s.jsx("span",{className:"text-sm font-medium",children:t})]},t))})]}),s.jsx("div",{className:"flex justify-center",children:s.jsx("div",{className:"cf-arrow w-8 rotate-90 my-2"})}),s.jsxs("div",{className:"cf-layer relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 opacity-[0.04] pointer-events-none",style:{background:"var(--cf-grad)"}}),s.jsxs("div",{className:"relative",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"cf-eyebrow",children:"02 · SmartLinks identity layer"}),s.jsx("span",{className:"text-xs text-[var(--cf-muted)]",children:"the platform"})]}),s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-2.5",children:NK.map(({icon:e,label:t})=>s.jsxs("div",{className:"flex items-center gap-2 px-3 py-2.5 rounded-lg border border-[var(--cf-line)] bg-white",children:[s.jsx(e,{className:"w-4 h-4 text-[var(--cf-accent)]"}),s.jsx("span",{className:"text-sm font-medium",children:t})]},t))})]})]}),s.jsx("div",{className:"flex justify-center",children:s.jsx("div",{className:"cf-arrow w-8 rotate-90 my-2"})}),s.jsxs("div",{className:"cf-layer",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"cf-eyebrow",children:"03 · Applications"}),s.jsx("span",{className:"text-xs text-[var(--cf-muted)]",children:"downstream workflows"})]}),s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-2.5",children:[{icon:Gc,label:"DPP"},{icon:nn,label:"Asset ops"},{icon:Jt,label:"Authentication"},{icon:yt,label:"Retail"},{icon:ca,label:"Support"},{icon:tn,label:"AI / data"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"flex items-center gap-2 px-3 py-2.5 rounded-lg border border-[var(--cf-line)] bg-[var(--cf-bg
1123-soft)]",children:[s.jsx(e,{className:"w-4 h-4 text-[var(--cf-ink)]"}),s.jsx("span",{className:"text-sm font-medium",children:t})]},t))})]})]})]})}),s.jsx("section",{id:"applications",className:"border-t border-[var(--cf-line)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("span",{className:"cf-eyebrow mb-4",children:"Applications"}),s.jsx("h2",{className:"text-3xl md:text-[2.4rem] font-semibold leading-[1.1] mb-4",children:"Six things buyers can stand up on the same identity layer."}),s.jsx("p",{className:"text-[var(--cf-ink-2)] leading-relaxed",children:"Start with one. Add the others when the business is ready. The identifier on the product doesn't change â what it does for you grows."})]}),s.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-3",children:jK.map(e=>s.jsxs("div",{className:"cf-card",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg flex items-center justify-center mb-3 border border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:s.jsx(e.icon,{className:"w-5 h-5 text-[var(--cf-ink)]"})}),s.jsx("h3",{className:"text-base font-semibold mb-1.5",children:e.title}),s.jsx("p",{className:"text-sm text-[var(--cf-ink-2)] leading-relaxed",children:e.body})]},e.title))})]})}),s.jsx("section",{id:"assets",className:"border-t border-[var(--cf-line)] bg-[var(--cf-bg-ink)] text-white",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-24 grid lg:grid-cols-[1fr_1.1fr] gap-12 items-center",children:[s.jsxs("div",{children:[s.jsx("span",{className:"cf-eyebrow mb-4",style:{color:"#9ea9ff"},children:"Featured wedge"}),s.jsx("h2",{className:"text-3xl md:text-[2.4rem] font-semibold leading-[1.1] mb-5",children:"Connected Asset Operations."}),s.jsx("p",{className:"text-white/70 leading-relaxed mb-6",children:"Replace paper service records, scattered PDFs and ageing spreadsheets with a live, connected identity on the asset itself. Servicing, inspections, maintenance and compliance â read and written from the QR or NFC tag in the field."}),s.jsx("ul",{className:"space-y-2.5 mb-7",children:["Live service history on the asset, not in a folder","Permissioned workflows for technicians, inspectors and managers","Connect inventory, parts and lifecycle records to each unit","Audit-ready compliance for electrical, HVAC, facilities and field service"].map(e=>s.jsxs("li",{className:"flex items-start gap-2.5 text-sm text-white/85",children:[s.jsx(En,{className:"w-4 h-4 mt-0.5 text-[#00d4ff] flex-shrink-0"}),s.jsx("span",{children:e})]},e))}),s.jsxs(ve,{to:"/contact",className:"cf-btn-primary",style:{background:"#fff",color:"var(--cf-ink)"},children:["Talk to us about asset operations ",s.jsx(ue,{className:"w-4 h-4"})]})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute -inset-8 rounded-3xl opacity-25 pointer-events-none",style:{background:"var(--cf-grad)",filter:"blur(80px)"}}),s.jsxs("div",{className:"relative rounded-2xl border border-white/10 bg-white/[0.04] backdrop-blur p-6",children:[s.jsxs("div",{className:"flex items-center justify-between mb-5 pb-4 border-b border-white/10",children:[s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx("div",{className:"w-9 h-9 rounded-lg flex items-center justify-center bg-white/10",children:s.jsx(nn,{className:"w-4 h-4 text-white"})}),s.jsxs("div",{children:[s.jsx("div",{className:"text-sm font-medium",children:"HVAC Unit · RTU-04 · Building C"}),s.jsx("div",{className:"cf-mono text-xs text-white/50",children:"asset.smartlinks/ac/RTU-04"})]})]}),s.jsx("span",{className:"text-xs px-2 py-1 rounded-full bg-emerald-500/15 text-emerald-300 border border-emerald-500/20",children:"In service"})]}),s.jsx("div",{className:"space-y-2.5",children:[{d:"12 May 2026",t:"Quarterly inspection passed",who:"T. Reed · Engineer"},{d:"03 Feb 2026",t:"Compressor replaced (P-2244)",who:"M. Aoki · Technician"},{d:"18 Nov 2025",t:"Filter service complete",who:"J. Patel · Technician"}].map(e=>s.jsxs("div",{className:"flex items-start justify-between gap-4 py-2 px-3 rounded-lg bg-white/[0.03] border border-white/5",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-sm font-medium",children:e.t}),s.jsx("div",{className:"text-xs text-white/55",children:e.who})]}),s.jsx("div",{className:"cf-mono text-xs text-white/45 whitespace-nowrap",children:e.d})]},e.d))})]})]})]})}),s.jsx("section",{className:"border-t border-[var(--cf-line)]",children:s.jsxs("div",{className:"max-w-5xl mx-auto px-6 py-24 text-center",children:[s.jsx("span",{className:"cf-e
1123yebrow mb-5 justify-center",children:"Positioning"}),s.jsxs("h2",{className:"text-3xl md:text-[2.6rem] font-semibold leading-[1.1] mb-5",children:["SmartLinks is the ",s.jsx("span",{className:"cf-gradient-text",children:"connected identity layer"}),s.jsx("br",{className:"hidden md:block"}),"for physical products and assets."]}),s.jsx("p",{className:"text-[var(--cf-ink-2)] leading-relaxed max-w-2xl mx-auto mb-8",children:"Not a QR tool. Not a DPP-only platform. Not a digital twin gimmick. One infrastructure layer that turns every product identifier into something operationally useful â for the business that makes it, the people who maintain it, and the customers who own it."}),s.jsxs("div",{className:"flex flex-wrap justify-center gap-3",children:[s.jsxs(ve,{to:"/contact",className:"cf-btn-primary",children:["Book a 20-minute walkthrough ",s.jsx(ue,{className:"w-4 h-4"})]}),s.jsxs("a",{href:"#problem",className:"cf-btn-secondary",children:["Start at the problem ",s.jsx(fc,{className:"w-4 h-4"})]})]})]})}),s.jsx("footer",{className:"border-t border-[var(--cf-line)] bg-[var(--cf-bg-soft)]",children:s.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 flex flex-col md:flex-row items-center justify-between gap-3 text-xs text-[var(--cf-muted)]",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-5 h-5 rounded-md",style:{background:"var(--cf-grad)"}}),s.jsx("span",{children:"SmartLinks · Concept C · Connected identity infrastructure"})]}),s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsx(ve,{to:"/privacy",className:"hover:text-[var(--cf-ink)]",children:"Privacy"}),s.jsx(ve,{to:"/terms",className:"hover:text-[var(--cf-ink)]",children:"Terms"}),s.jsx(ve,{to:"/",className:"hover:text-[var(--cf-ink)]",children:"Main site"})]})]})})]})]})}const py="/assets/concept-hero-scan-Dc2uUg_t.jpg",fy="/assets/concept-technician-nfc-B_j7Duxo.jpg",rf={dpp:{label:"Connected Products & DPP",icon:Ss,pain:"Static product pages and fragmented product data fall short of DPP, GS1 Digital Link and connected packaging requirements.",solution:"A connected product identity carrying lifecycle, support and compliance data â accessible to the right user at the right moment.",outcome:"DPP readiness, richer customer engagement, AI-ready structured product data."},assets:{label:"Asset & Service Operations",icon:nn,pain:"Disconnected asset records, paper inspection tags and fragmented service history slow down operations and audits.",solution:"Live connected asset identities with permissioned workflows, inspection logs and lifecycle tracking.",outcome:"Operational visibility, compliance evidence, complete maintenance history, stronger field service."},retail:{label:"Retail & Shelf Edge",icon:yt,pain:"Shelf labels, planograms and in-store product interactions remain static and disconnected from product data.",solution:"Connected retail identities powering customer, staff and inventory interactions from a single scan.",outcome:"Smarter retail workflows, faster staff tasks and richer in-store experiences."},auth:{label:"Authentication & Traceability",icon:Jt,pain:"Brands struggle with counterfeit products, grey-market diversion and disconnected lifecycle tracking.",solution:"Serialized connected identities with authentication, provenance and traceability workflows.",outcome:"Trust, provenance, resale support and lifecycle transparency."},support:{label:"Connected Support & Ownership",icon:Qi,pain:"Customers lose manuals, warranty access and product context the moment the box is opened.",solution:"Persistent product identities linking support, warranty, registration and ownership journeys.",outcome:"Reduced support friction and a much stronger post-purchase relationship."}},SK=()=>{const[e,t]=x.useState("dpp"),n=rf[e];return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Concept â Connected Infrastructure Homepage",description:"Hidden concept homepage exploring SmartLinks as connected identity infrastructure for products and assets.",url:"https://smartlinks-public-site.lovable.app/concepts/connected-platform",noindex:!0}),s.jsx("style",{children:` 1124 .cp-root { background: #f7f8fa; color: #1a1d23; } 1125 .cp-section { padding: 96px 0; } 1126 .cp-container { max-width: 1180px; margin: 0 auto; padding: 0 24px; } 1127 .cp-eyebrow { font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: #6b7280; font-weight: 600; } 1128 .cp-h1 { font-size: clamp(40px, 6vw, 68px); line-height: 1.05; font-weight: 600; letter-spacing: -0.02em; color: #0a0c10; } 1129 .cp-h2 { font-size: clamp(28px, 3.6vw, 44px); line-height: 1.1; font-weight: 600; letter-spacing: -0.02em; color: #0a0c10; } 1130 .cp-lead { font-size: clamp(16px, 1.4vw, 19px); line-height: 1.6; color: #4b5563; max-width: 760px; } 1131 .cp-body { color: #374151; } 1132 .cp-muted { color: #6b7280; } 1133 .cp-strong { color: #0a0c10; } 1134 .cp-card { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 16px; box-shadow: 0 1px 2px rgba(15,23,42,0.03); } 1135 .cp-card-soft { background: #ffffff; border: 1px solid #eceff3; border-radius: 16px; } 1136 .cp-divider { border-top: 1px solid #e5e7eb; } 1137 .cp-gradient-text { background: linear-gradient(90deg,#1e3a8a,#0f766e); -webkit-background-clip: text; background-clip: text; color: transparent; } 1138 .cp-tab { transition: all .15s ease; background:#ffffff; border:1px solid #e5e7eb; color:#4b5563; } 1139 .cp-tab:hover { color:#0a0c10; border-color:#d1d5db; } 1140 .cp-tab[data-active="true"] { background: #0a0c10; border-color: #0a0c10; color: #ffffff; } 1141 .cp-pill { display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border-radius:999px; background:#ffffff; border:1px solid #e5e7eb; font-size:12px; color:#4b5563;} 1142 .cp-arch-node { background:#ffffff; border:1px solid #e5e7eb; border-radius:14px; padding:18px 20px; } 1143 .cp-row { background:#ffffff; border:1px solid #eceff3; border-radius:10px; } 1144 .cp-btn-primary { background:#0a0c10; color:#ffffff; } 1145 .cp-btn-primary:hover { background:#1f2937; } 1146 .cp-btn-outline { background:#ffffff; color:#0a0c10; border:1px solid #d1d5db; } 1147 .cp-btn-outline:hover { background:#f3f4f6; } 1148 .cp-nav-overlay { position: relative; }
1149 /* The shared Navigation is dark; give it space and keep our hero light below it */ 1150 `}),s.jsxs("div",{className:"cp-root min-h-screen",children:[s.jsx(rt,{}),s.jsx("section",{className:"cp-section pt-32",children:s.jsx("div",{className:"cp-container",children:s.jsxs("div",{className:"grid lg:grid-cols-12 gap-12 items-center",children:[s.jsxs("div",{className:"lg:col-span-7",children:[s.jsx("span",{className:"cp-eyebrow",children:"Connected identity infrastructure"}),s.jsxs("h1",{className:"cp-h1 mt-5",children:["The connected identity platform for ",s.jsx("span",{className:"cp-gradient-text",children:"products and assets."})]}),s.jsx("p",{className:"cp-lead mt-6",children:"SmartLinks turns QR, NFC, RFID and GS1 Digital Link into connected identity infrastructure â powering Digital Product Passports, service operations, authentication, retail experiences and lifecycle workflows from a single platform."}),s.jsxs("div",{className:"flex flex-wrap gap-3 mt-8",children:[s.jsxs(H,{size:"lg",className:"cp-btn-primary rounded-full px-6",children:["Explore solutions ",s.jsx(ue,{className:"w-4 h-4 ml-1"})]}),s.jsx(H,{size:"lg",className:"cp-btn-outline rounded-full px-6",children:"Book a demo"})]}),s.jsxs("div",{className:"flex flex-wrap gap-2 mt-8",children:[s.jsxs("span",{className:"cp-pill",children:[s.jsx(nt,{className:"w-3 h-3"})," QR"]}),s.jsxs("span",{className:"cp-pill",children:[s.jsx(Yi,{className:"w-3 h-3"})," NFC"]}),s.jsxs("span",{className:"cp-pill",children:[s.jsx(Es,{className:"w-3 h-3"})," RFID"]}),s.jsxs("span",{className:"cp-pill",children:[s.jsx(Ps,{className:"w-3 h-3"})," GS1 Digital Link"]})]})]}),s.jsx("div",{className:"lg:col-span-5",children:s.jsxs("div",{className:"relative overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm",children:[s.jsx("img",{src:py,alt:"A hand scanning a QR code on a premium metallic product with a smartphone",width:1024,height:1024,className:"w-full h-full object-cover aspect-[4/5]"}),s.jsxs("div",{className:"absolute bottom-4 left-4 right-4 flex items-center justify-between rounded-xl bg-white/90 backdrop-blur-sm border border-slate-200 px-4 py-3",children:[s.jsxs("div",{className:"flex items-center gap-2 text-xs cp-muted",children:[s.jsx(Ik,{className:"w-4 h-4 text-slate-900"}),s.jsx("span",{children:"One identifier · many contexts"})]}),s.jsx("span",{className:"text-xs cp-strong font-medium",children:"GS1 · NFC · QR"})]})]})})]})})}),s.jsx("section",{className:"py-14 border-t border-slate-200 bg-white",children:s.jsxs("div",{className:"cp-container",children:[s.jsxs("div",{className:"flex flex-col lg:flex-row lg:items-center lg:justify-between gap-8",children:[s.jsxs("div",{className:"shrink-0",children:[s.jsx("div",{className:"cp-eyebrow",children:"Trusted by"}),s.jsx("div",{className:"text-sm cp-muted mt-2 max-w-xs",children:"Brands, manufacturers and asset operators using SmartLinks in production."})]}),s.jsx("div",{className:"grid grid-cols-3 sm:grid-cols-4 lg:grid-cols-6 gap-6 items-center flex-1",children:["/lovable-uploads/dfb2c36b-de46-4970-85de-b826441f3e6f.webp","/lovable-uploads/cbffa78b-67bd-4d9d-9d11-76ea856a72e6.webp","/lovable-uploads/3a7b3a09-c70f-45c3-b74a-77d057e65927.webp","/lovable-uploads/a94b8768-b1c7-493f-b29e-8f1b02dc16a1.webp","/lovable-uploads/520adcd9-c394-4908-8a5b-2caf3ccb9fb4.webp","/lovable-uploads/101cdd54-bb76-4d31-988a-e240ba529763.webp"].map(r=>s.jsx("div",{className:"flex items-center justify-center h-10",children:s.jsx("img",{src:r,alt:"Client logo",loading:"lazy",className:"max-h-8 max-w-full object-contain opacity-60 hover:opacity-100 transition-opacity",style:{filter:"grayscale(100%) contrast(0.9)"}})},r))})]}),s.jsxs("div",{className:"mt-10 pt-8 border-t border-slate-100 grid sm:grid-cols-3 gap-6 text-sm",children:[s.jsxs("div",{children:[s.jsx("div",{className:"cp-strong font-medium",children:"GS1 Approved Partner"}),s.jsx("div",{className:"cp-muted mt-1",children:"GS1 Digital Link native, compliant identifier schemes."})]}),s.jsxs("div",{children:[s.jsx("div",{className:"cp-strong font-medium",children:"Enterprise-grade"}),s.jsx("div",{className:"cp-muted mt-1",children:"Permissioned identities, audit trails, role-based access."})]}),s.jsxs("div",{children:[s.jsx("div",{className:"cp-strong font-medium",children:"Standards-first"}),s.jsx("div",{className:"cp-muted mt-1",children:"Open, portable, no proprietary lock-in."})]})]})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"Why now"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"Static identifiers and static QR destinations are becoming obsolete."}),s.jsx("p",{className:"cp-lead mt-5",children:"GS1 Digital Link is replacing the traditional barcode. Digital Product Passports are moving from policy to mandate. Connected packaging, NFC, RFID and AI-readable product data are becoming part of how products are made, sold, serviced and resold. The shift is no longer optional â it is infrastru
1150cture."}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4 mt-10",children:[["GS1 Digital Link","The barcode evolves into a resolvable URL."],["Digital Product Passports","Regulated product data, attached to the product."],["Connected packaging","Every SKU becomes individually addressable."],["NFC, RFID, serialized QR","Multi-carrier identification at scale."],["AI-readable products","Structured product data consumable by agents."],["Lifecycle traceability","From manufacture to resale, on one identity."]].map(([r,i])=>s.jsxs("div",{className:"cp-card-soft p-5",children:[s.jsx("div",{className:"cp-strong font-medium",children:r}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:i})]},r))})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"The differentiator"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"One identity. Different experiences for every user."}),s.jsx("p",{className:"cp-lead mt-5",children:"A single connected identity serves the consumer, the technician, the retailer, the inspector and the warehouse â each with the right data, the right tools and the right permissions. One scan, many contexts."}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mt-10",children:[{icon:Qi,who:"Consumer",what:"Authenticity, support, warranty, registration."},{icon:nn,who:"Technician",what:"Service history, manuals, parts, work orders."},{icon:yt,who:"Retail staff",what:"Stock, planogram, pricing, replenishment."},{icon:Jt,who:"Inspector",what:"Compliance evidence, certificates, audit trail."},{icon:ca,who:"Warehouse",what:"Receiving, picking, location, condition."},{icon:da,who:"Regulator",what:"DPP data, materials, sustainability disclosures."}].map(({icon:r,who:i,what:a})=>s.jsxs("div",{className:"cp-card p-5",children:[s.jsx(r,{className:"w-5 h-5 text-slate-500"}),s.jsx("div",{className:"cp-strong font-medium mt-3",children:i}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:a})]},i))})]})}),s.jsx("section",{className:"cp-divider",children:s.jsx("div",{className:"cp-container py-16",children:s.jsxs("div",{className:"grid lg:grid-cols-12 gap-10 items-center",children:[s.jsx("div",{className:"lg:col-span-7 order-2 lg:order-1 overflow-hidden rounded-2xl border border-slate-200",children:s.jsx("img",{src:fy,alt:"A field service technician tapping a smartphone against an NFC tag on industrial equipment",loading:"lazy",width:1024,height:896,className:"w-full h-full object-cover aspect-[4/3]"})}),s.jsxs("div",{className:"lg:col-span-5 order-1 lg:order-2",children:[s.jsx("span",{className:"cp-eyebrow",children:"In the field"}),s.jsx("h3",{className:"cp-h2 mt-4",children:"Every scan resolves to the right experience."}),s.jsx("p",{className:"cp-lead mt-5",children:"A technician taps an NFC tag on a valve and sees the full service history. A consumer scans the same kind of identifier on a product and sees support and warranty. One infrastructure, many contexts â governed by permissions, not separate systems."})]})]})})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"Where it applies"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"Operational narratives across connected products and assets."}),s.jsx("p",{className:"cp-lead mt-5",children:"Five concrete narratives. Pick the one closest to your operation."}),s.jsxs("div",{className:"mt-10 grid lg:grid-cols-12 gap-6",children:[s.jsx("div",{className:"lg:col-span-4 flex lg:flex-col gap-2 overflow-x-auto",children:Object.keys(rf).map(r=>{const i=rf[r],a=i.icon;return s.jsxs("button",{"data-active":e===r,onClick:()=>t(r),className:"cp-tab text-left flex items-center gap-3 px-4 py-3 rounded-xl whitespace-nowrap lg:whitespace-normal",children:[s.jsx(a,{className:"w-4 h-4 shrink-0"}),s.jsx("span",{className:"text-sm font-medium",children:i.label})]},r)})}),s.jsx("div",{className:"lg:col-span-8",children:s.jsxs("div",{className:"cp-card p-8",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx(n.icon,{className:"w-5 h-5 text-slate-500"}),s.jsx("div",{className:"cp-strong text-lg font-semibold",children:n.label})]}),s.jsxs("div",{className:"grid sm:grid-cols-3 gap-6 mt-6",children:[s.jsxs("div",{children:[s.jsx("div",{className:"cp-eyebrow",children:"Pain"}),s.jsx("p",{className:"cp-body text-sm mt-2 leading-relaxed",children:n.pain})]}),s.jsxs("div",{children:[s.jsx("div",{className:"cp-eyebrow",children:"Solution"}),s.jsx("p",{className:"cp-body text-sm mt-2 leading-relaxed",children:n.solution})]}),s.jsxs("div",{children:[s.jsx("div",{className:"cp-eyebrow",children:"Outcome"}),s.jsx("p",{className:"cp-body text-sm mt-2 leading-relaxed",children:n.outcome})]})]}),s.jsx("div",{className:"mt-8 pt-6 border-t border-slate-200",children:s.jsxs("a",{className:"inline-flex items-center gap-2 text-sm cp-strong hover:underline",children:["See the full solution ",s.jsx(ue,{className:"w-4 h-4"})]})})]})})]})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"Architecture"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"Built as connected identity infrastru
1150cture."}),s.jsx("p",{className:"cp-lead mt-5",children:"Identifiers in. Applications out. A permissioned identity layer in the middle â with APIs, SDKs and a micro-app architecture designed to scale across product lines, sites and partners."}),s.jsxs("div",{className:"grid md:grid-cols-[1fr_auto_1fr_auto_1fr] gap-4 mt-10 items-stretch",children:[s.jsxs("div",{className:"cp-arch-node",children:[s.jsx(qr,{className:"w-5 h-5 text-slate-500"}),s.jsx("div",{className:"cp-strong font-medium mt-3",children:"Physical identifier"}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:"QR, NFC, RFID, GS1 Digital Link, serialized codes."})]}),s.jsx("div",{className:"hidden md:flex items-center justify-center text-slate-400",children:s.jsx(ue,{className:"w-5 h-5"})}),s.jsxs("div",{className:"cp-arch-node",children:[s.jsx(nh,{className:"w-5 h-5 text-slate-500"}),s.jsx("div",{className:"cp-strong font-medium mt-3",children:"SmartLinks identity layer"}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:"Resolution, permissions, routing, orchestration, data."})]}),s.jsx("div",{className:"hidden md:flex items-center justify-center text-slate-400",children:s.jsx(ue,{className:"w-5 h-5"})}),s.jsxs("div",{className:"cp-arch-node",children:[s.jsx(Ps,{className:"w-5 h-5 text-slate-500"}),s.jsx("div",{className:"cp-strong font-medium mt-3",children:"Applications & workflows"}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:"DPP, support, authentication, asset ops, retail, AI."})]})]})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"One platform, three entry points"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"From a single product line to global infrastructure."}),s.jsx("p",{className:"cp-lead mt-5",children:"The same connected identity model scales from a small producer printing their first QR codes to a multinational deploying serialized identities across millions of items. You enter where you are today."}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mt-10",children:[{tier:"Start",for:"Small brands & producers",desc:"Self-serve connected products. Generate QR codes, publish product pages, capture engagement â without writing code.",notes:["Self-serve sign-up","Templated product portals","Per-SKU or per-batch identifiers"],cta:"Explore Start"},{tier:"Scale",for:"Growing brands & operators",desc:"Connected identities across product lines, with custom workflows, deeper analytics and integrations into the systems you already run.",notes:["Custom workflows & branding","API & integration access","Multi-product, multi-site"],cta:"Explore Scale",featured:!0},{tier:"Enterprise",for:"Manufacturers, federations & asset operators",desc:"Connected identity infrastructure at scale. Permissioned identities, DPP readiness, serialized authentication and lifecycle workflows.",notes:["GS1 Digital Link native","DPP & compliance workflows","Enterprise security & SSO"],cta:"Talk to sales"}].map(r=>s.jsxs("div",{className:`cp-card p-6 flex flex-col ${r.featured?"ring-1 ring-slate-900":""}`,children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"cp-strong text-lg font-semibold",children:["SmartLinks ",r.tier]}),r.featured&&s.jsx("span",{className:"text-[10px] tracking-widest uppercase font-semibold text-white bg-slate-900 px-2 py-1 rounded-full",children:"Most common"})]}),s.jsx("div",{className:"cp-eyebrow mt-3",children:r.for}),s.jsx("p",{className:"cp-body text-sm mt-3 leading-relaxed",children:r.desc}),s.jsx("ul",{className:"mt-5 space-y-2",children:r.notes.map(i=>s.jsxs("li",{className:"text-sm cp-muted flex items-start gap-2",children:[s.jsx("span",{className:"mt-2 w-1 h-1 rounded-full bg-slate-400 shrink-0"}),s.jsx("span",{children:i})]},i))}),s.jsx("div",{className:"mt-auto pt-6",children:s.jsxs("a",{className:"inline-flex items-center gap-1 text-sm cp-strong hover:underline cursor-pointer",children:[r.cta," ",s.jsx(ue,{className:"w-4 h-4"})]})})]},r.tier))}),s.jsx("p",{className:"text-sm cp-muted mt-8 max-w-3xl",children:"One platform underneath. The data model, identifier scheme and resolution layer are identical at every tier â so a programme that starts on Start can graduate to Enterprise without re-platforming."})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"Ecosystem"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"Designed to embed into the systems you already run."}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4 mt-10",children:[["GS1 alignment","GS1 Digital Link native; compliant identifier schemes."],["NFC, RFID & packaging","Works with leading tag, chip and packaging partners."],["PIM & MDM","Integrates with Syndigo and other product data systems."],["Enterprise workflows","ERP, CMMS, service and commerce platform compatibility."],["AI & agents","Structured, permissioned data for RAG and MCP-ready agents."],["Standards-first","Open, portable identities â no proprietary lock-in."]].map(([r,i])=>s.jsxs("div",{className:"cp-card-soft p-5",children:[s.jsx("div",{className:"cp-strong font-medium",children:r}),s.jsx("div",{className:"text-sm cp-muted mt-1",children:i})]},r))})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container",children:[s.jsx("span",{className:"cp-eyebrow",children:"In production"}),s.jsx("h2",{className:"cp-h2 mt-4 max-w-3xl",children:"Connected identities, deployed at scale."}),s.jsx("p",{className:"cp-lead mt-5",children:"A selection of customer programmes running on SmartLinks today â across consumer goods, sport, and regulated product categories."}),s.jsx("div",{className:"grid md:grid-cols-3 gap-4 mt-10",children:[{sector:"Consumer Goods",client:"Premium FMCG brand",outcome:"Connected product identities across millions of SKUs, powering DPP-ready experiences and post-purchase engagement."},{sector:"Sport & Federations",client:"England Rugby",outcome:"Connected merchandise and matchday assets â authentication, fan engagement and provenance on a single identity."},{sector:"Industrial Assets",client:"Field service operator",outcome:"Permissioned asset identities replacing paper inspection tags â full service history accessible by scan."}].map(r=>s.jsxs("div",{className:"cp-card p-6 flex flex-col",children:[s.jsx("div",{className:"cp-eyebrow",children:r.sector}
1150),s.jsx("div",{className:"cp-strong font-medium mt-3",children:r.client}),s.jsx("div",{className:"text-sm cp-muted mt-2 leading-relaxed",children:r.outcome}),s.jsx("div",{className:"mt-auto pt-5",children:s.jsxs("a",{className:"inline-flex items-center gap-1 text-sm cp-strong hover:underline",children:["Read the case ",s.jsx(ue,{className:"w-4 h-4"})]})})]},r.client))}),s.jsx("div",{className:"cp-card mt-8 p-8 md:p-10",children:s.jsxs("div",{className:"grid md:grid-cols-12 gap-8 items-center",children:[s.jsxs("div",{className:"md:col-span-8",children:[s.jsx("div",{className:"text-xl md:text-2xl cp-strong leading-snug",children:'"SmartLinks gave us one identity per product that every part of the business â marketing, support, compliance, retail â could plug into. It replaced four overlapping tools."'}),s.jsx("div",{className:"text-sm cp-muted mt-4",children:"Head of Digital, global consumer brand"})]}),s.jsxs("div",{className:"md:col-span-4 grid grid-cols-3 gap-4 text-center",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-2xl cp-strong font-semibold",children:"10M+"}),s.jsx("div",{className:"text-xs cp-muted mt-1",children:"Connected items"})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-2xl cp-strong font-semibold",children:"40+"}),s.jsx("div",{className:"text-xs cp-muted mt-1",children:"Brand programmes"})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-2xl cp-strong font-semibold",children:"99.9%"}),s.jsx("div",{className:"text-xs cp-muted mt-1",children:"Resolution uptime"})]})]})]})})]})}),s.jsx("section",{className:"cp-section cp-divider",children:s.jsxs("div",{className:"cp-container text-center",children:[s.jsx("h2",{className:"cp-h2 max-w-3xl mx-auto",children:"Build connected products and assets."}),s.jsx("p",{className:"cp-lead mt-5 mx-auto",children:"Launch Digital Product Passports, connected service workflows, support journeys and retail interactions from a single connected identity platform."}),s.jsxs("div",{className:"flex flex-wrap gap-3 justify-center mt-8",children:[s.jsxs(H,{size:"lg",className:"cp-btn-primary rounded-full px-6",children:["Explore solutions ",s.jsx(ue,{className:"w-4 h-4 ml-1"})]}),s.jsx(H,{size:"lg",className:"cp-btn-outline rounded-full px-6",children:"Book a demo"})]})]})}),s.jsx(it,{})]})]})},af={support:{label:"Product Support & AI Knowledge",icon:Qi,audience:"Manufacturers · D2C brands · Product businesses",pain:"Product information is fragmented, hard to maintain and increasingly invisible to AI systems.",solution:"Connected product hubs for manuals, warranties, FAQs, support content and AI assistants â anchored to the product itself.",outcome:"Lower support costs, AI-ready product data and a stronger ownership experience after the box is opened.",cta:"Explore Product Support"},assets:{label:"Connected Asset Operations",icon:nn,audience:"Field service · Facilities · Electrical · Maintenance",pain:"Disconnected service records, paper tags and fragmented lifecycle history slow operations and audits.",solution:"Connected asset identities with service history, parts tracking, permissions and operational workflows.",outcome:"Better compliance, faster servicing and connected lifecycle visibility across every asset.",cta:"Explore Asset Operations"},dpp:{label:"Connected Products & DPP",icon:Ss,audience:"Retail · Packaging · Product manufacturers",pain:"Static packaging and disconnected product identities fall short of DPP and connected retail requirements.",solution:"Connected product identity infrastructure powering DPP, authentication, lifecycle tracking and customer interaction.",outcome:"Future-ready product infrastru
1150cture and connected packaging workflows ready for what's next.",cta:"Explore Connected Products"},retail:{label:"Retail & Shelf Edge",icon:yt,audience:"Retail · In-store operations",pain:"Shelf-edge interactions and retail product workflows remain disconnected and static.",solution:"Connected shelf-edge and retail identity experiences for customers and staff alike.",outcome:"Smarter in-store operations and richer, measurable customer interaction.",cta:"Explore Retail Solutions"}},CK=[{icon:dt,label:"Customer",note:"Support, warranty, ownership"},{icon:C0,label:"Technician",note:"Service history, parts, sign-off"},{icon:yt,label:"Retailer",note:"Shelf-edge, stock, promotions"},{icon:Gh,label:"Regulator",note:"DPP, compliance evidence"},{icon:ca,label:"Warehouse",note:"Provenance, location, lifecycle"},{icon:Kh,label:"Support",note:"Context, history, AI assist"}],PK=()=>{const[e,t]=x.useState("support"),n=af[e];return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"The Connected Identity Platform for Products and Assets",description:"SmartLinks turns QR, NFC, RFID and GS1 Digital Links into connected operational workflows for product support, asset operations, DPP and AI-ready product experiences.",url:"https://smartlinks-public-site.lovable.app/concepts/identity-platform",canonical:"https://smartlinks-public-site.lovable.app/concepts/identity-platform"}),s.jsxs("div",{className:"min-h-screen bg-[#0a0a12] text-white",children:[s.jsx(rt,{}),s.jsxs("section",{className:"relative overflow-hidden pt-32 pb-20 lg:pt-40 lg:pb-28",children:[s.jsxs("div",{className:"absolute inset-0 -z-10",children:[s.jsx("div",{className:"absolute top-1/3 left-1/4 w-[600px] h-[600px] bg-blue-600/20 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute top-1/2 right-1/4 w-[500px] h-[500px] bg-purple-700/15 rounded-full blur-3xl"})]}),s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 mb-6 rounded-full bg-white/5 border border-white/10 text-xs uppercase tracking-widest text-white/70",children:[s.jsx(ke,{className:"w-3 h-3"})," Connected identity platform"]}),s.jsx("h1",{className:"text-4xl md:text-5xl lg:text-6xl font-semibold leading-[1.05] tracking-tight",children:"The connected identity platform for products and assets."}),s.jsx("p",{className:"mt-6 text-lg text-white/70 leading-relaxed max-w-xl",children:"SmartLinks transforms QR, NFC, RFID and GS1 Digital Links into connected operational workflows â powering product support, asset operations, Digital Product Passports and AI-ready product experiences."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3",children:[s.jsxs(H,{size:"lg",className:"bg-white text-black hover:bg-white/90",children:["Explore Solutions ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]}),s.jsx(H,{size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:"Book Demo"})]}),s.jsxs("div",{className:"mt-10 flex flex-wrap gap-4 text-xs uppercase tracking-widest text-white/40",children:[s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(nt,{className:"w-3.5 h-3.5"}),"QR"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(Yi,{className:"w-3.5 h-3.5"}),"NFC"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(Es,{className:"w-3.5 h-3.5"}),"RFID"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(nh,{className:"w-3.5 h-3.5"}),"GS1 Digital Link"]})]})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute -inset-4 bg-gradient-to-tr from-blue-500/20 to-purple-500/20 rounded-3xl blur-2xl"}),s.jsx("img",{src:py,alt:"Connected product being scanned",className:"relative rounded-2xl border border-white/10 shadow-2xl w-full"})]})]})})]}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Why now"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Physical products are becoming digitally connected."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Static identifiers and disconnected product information are becoming obsolete. The shift is structural â driven by regulation, AI and rising expectations of every connected thing."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[["GS1 Digital Link","A single barcode now resolves to multiple services and audiences."],["DPP regulation","Digital Product Passports are becoming a market requirement, not a future concept."],["AI-readable products","Product data needs to be structured, retrievable and machine-trustworthy."],["Connected packaging","Packaging is becoming an operational and engagement surface, not just decoration."],["Contextual experiences","The same scan should mean different things to a customer, a technician and a regulator."],["Lifecycle transparency","Provenance, repair, resale and end-of-life are now part of the product story."]].map(([r,i])=>s.jsxs("div",{className:"p-6 rounded-xl bg-white/[0.03] border border-white/10",children:[s.jsx("div",{className:"text-sm font-medium text-white",children:r}),s.jsx("p",{className:"mt-2 text-sm text-white/60 leading-relaxed",children:i})]},r))})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"The core differentiator"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"One identity. Different interactions."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"A single connected identity behaves differently depending on who is interacting with it â contextual, permissioned and operational."})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"grid md:grid-cols-3 lg:grid-cols-6 gap-3",children:CK.map(({icon:r,label:i,note:a})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 hover:border-white/20 transition-colors",children:[s.jsx(r,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:i}),s.jsx("div",{className:"text-xs text-white/50 mt-1 leading-relaxed",children:a})]},i))}),s.jsx("div",{className:"mt-8 p-5 rounded-xl border border-white/10 bg-gradient-to-r from-blue-500/10 via-trans
1150parent to-purple-500/10 text-sm text-white/70 text-center",children:"One product. One identity. Six different jobs to do."})]})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Choose your operational workflow"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Built for different operational challenges."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Pick the workflow that matches the problem you're solving. The platform is the same â the operational story is different."})]}),s.jsxs("div",{className:"grid lg:grid-cols-[280px_1fr] gap-6",children:[s.jsx("div",{className:"flex lg:flex-col gap-2 overflow-x-auto lg:overflow-visible",children:Object.keys(af).map(r=>{const i=af[r],a=i.icon,o=e===r;return s.jsxs("button",{onClick:()=>t(r),className:`flex items-center gap-3 p-4 rounded-xl text-left border transition-all whitespace-nowrap lg:whitespace-normal ${o?"bg-white text-black border-white":"bg-white/[0.03] text-white/80 border-white/10 hover:border-white/25"}`,children:[s.jsx(a,{className:"w-4 h-4 shrink-0"}),s.jsx("span",{className:"text-sm font-medium",children:i.label})]},r)})}),s.jsxs("div",{className:"p-8 lg:p-10 rounded-2xl bg-gradient-to-br from-white/[0.05] to-white/[0.02] border border-white/10",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-blue-300 mb-2",children:n.audience}),s.jsx("h3",{className:"text-2xl md:text-3xl font-semibold tracking-tight",children:n.label}),s.jsxs("div",{className:"mt-8 grid md:grid-cols-3 gap-6",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-2",children:"Pain"}),s.jsx("p",{className:"text-sm text-white/75 leading-relaxed",children:n.pain})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-2",children:"Solution"}),s.jsx("p",{className:"text-sm text-white/75 leading-relaxed",children:n.solution})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-2",children:"Outcome"}),s.jsx("p",{className:"text-sm text-white/75 leading-relaxed",children:n.outcome})]})]}),s.jsx("div",{className:"mt-8",children:s.jsxs(H,{variant:"outline",className:"border-white/20 bg-white/5 hover:bg-white/10 text-white",children:[n.cta," ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})})]})]})]})}),s.jsxs("section",{className:"relative py-24 lg:py-32 border-t border-white/5 overflow-hidden",children:[s.jsxs("div",{className:"absolute inset-0 -z-10",children:[s.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[900px] h-[500px] bg-blue-500/15 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute top-10 right-10 w-[400px] h-[400px] bg-purple-500/10 rounded-full blur-3xl"})]}),s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-[1.1fr_1fr] gap-12 items-start",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 mb-6 rounded-full bg-blue-500/15 border border-blue-400/30 text-xs uppercase tracking-widest text-blue-200",children:[s.jsx(ke,{className:"w-3 h-3"})," Flagship product"]}),s.jsx("h2",{className:"text-3xl md:text-5xl font-semibold tracking-tight leading-[1.05]",children:"Introducing SmartLinks Hub."}),s.jsx("p",{className:"mt-5 text-lg text-white/75 leading-relaxed max-w-xl",children:"AI-ready product support and lifecycle infrastru
1150cture for modern product businesses."}),s.jsx("p",{className:"mt-4 text-white/60 leading-relaxed max-w-xl",children:"Unify manuals, FAQs, warranties, product content and AI assistants into connected product hubs â designed for customers, resellers and AI-driven support workflows."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3",children:[s.jsx(H,{asChild:!0,size:"lg",className:"bg-white text-black hover:bg-white/90",children:s.jsxs(ve,{to:"/concepts/identity-platform/hub",children:["Explore SmartLinks Hub ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})}),s.jsx(H,{size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:"Book Demo"})]})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:[{icon:Qi,title:"Centralised product support",body:"One home for manuals, FAQs, warranties and guidance."},{icon:ke,title:"AI-ready product knowledge",body:"Structured for retrieval by AI assistants and agents."},{icon:nt,title:"QR-ready product identity",body:"Persistent identifiers anchored to the product itself."},{icon:Kh,title:"Reduced support friction",body:"Self-serve answers, fewer tickets, faster resolution."},{icon:dt,title:"Better ownership journeys",body:"Onboarding, care and lifecycle in one place."},{icon:yt,title:"Reseller-ready",body:"Consistent product information across every channel."}].map(({icon:r,title:i,body:a})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 hover:border-blue-400/30 transition-colors",children:[s.jsx(r,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:i}),s.jsx("div",{className:"text-xs text-white/55 mt-1 leading-relaxed",children:a})]},i))})]})})]}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Platform architecture"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Built as connected identity infrastructure."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Identifiers in. Operational workflows out. A single identity layer in the middle that everything else plugs into."})]}),s.jsxs("div",{className:"grid lg:grid-cols-3 gap-4",children:[s.jsxs("div",{className:"p-6 rounded-2xl bg-white/[0.03] border border-white/10",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-4",children:"1 · Identifiers"}),s.jsxs("div",{className:"space-y-2 text-sm text-white/75",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(nt,{className:"w-4 h-4 text-blue-300"})," QR codes"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Yi,{className:"w-4 h-4 text-blue-300"})," NFC tags"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Es,{className:"w-4 h-4 text-blue-300"})," RFID"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(nh,{className:"w-4 h-4 text-blue-300"})," GS1 Digital Link"]})]})]}),s.jsxs("div",{className:"p-6 rounded-2xl bg-gradient-to-br from-blue-500/15 to-purple-500/15 border border-blue-400/20",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-blue-200 mb-4",children:"2 · SmartLinks identity layer"}),s.jsxs("div",{className:"space-y-2 text-sm text-white/80",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ps,{className:"w-4 h-4"})," Connected identities"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Jt,{className:"w-4 h-4"})," Permissions & roles"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(qr,{className:"w-4 h-4"})," APIs & integrations"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(ca,{className:"w-4 h-4"})," Lifecycle data model"]})]})]}),s.jsxs("div",{className:"p-6 rounded-2xl bg-white/[0.03] border border-white/10",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-4",children:"3 · Applications & workflows"}),s.jsxs("div",{className:"space-y-2 text-sm text-white/75",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Qi,{className:"w-4 h-4 text-blue-300"})," Support & ownership"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(nn,{className:"w-4 h-4 text-blue-300"})," Asset operations"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ss,{className:"w-4 h-4 text-blue-300"})," DPP & compliance"]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(yt,{className:"w-4 h-4 text-blue-300"})," Retail interaction"]})]})]})]})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"AI capabilities"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"AI built into connected workflows."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Operational AI powered by connected identity and structured product data â embedded in the workflows that already exist, not bolted on as a separate product."}),s.jsx("img",{src:fy,alt:"Technician tapping an NFC tag in the field",className:"mt-8 rounded-2xl border border-white/10 w-full"})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:["AI product assistants","AI manual retrieval","AI-generated service reports","Voice-to-certificate workflows","AI support guidance","AI-powered product comparison","AI-ready product knowledge","Contextual recommendations"].map(r=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.03] border border-white/10",children:[s.jsx(ke,{className:"w-4 h-4 text-blue-300 mb-2"}),s.jsx("div",{className:"text-sm text-white/80",children:r})]},r))})]})})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Ecosystem"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Infrastru
1150cture that lives inside bigger ecosystems."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"SmartLinks doesn't replace what you already run â it connects to it. GS1, PIM, packaging, RFID, AI and enterprise systems all plug into the same identity layer."})]}),s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-3",children:["GS1","RFID / NFC","Packaging","PIM integrations","AI workflows","Enterprise"].map(r=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 text-center",children:[s.jsx(da,{className:"w-4 h-4 text-blue-300 mx-auto mb-2"}),s.jsx("div",{className:"text-sm text-white/80",children:r})]},r))})]})}),s.jsxs("section",{className:"py-24 lg:py-32 border-t border-white/5 relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 -z-10",children:s.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[400px] bg-blue-500/15 rounded-full blur-3xl"})}),s.jsxs("div",{className:"container mx-auto px-6 text-center max-w-3xl",children:[s.jsx("h2",{className:"text-4xl md:text-5xl font-semibold tracking-tight",children:"Build connected products and assets."}),s.jsx("p",{className:"mt-5 text-white/70 text-lg leading-relaxed",children:"Launch connected support, lifecycle operations, Digital Product Passports and AI-ready workflows from one connected identity platform."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3 justify-center",children:[s.jsxs(H,{size:"lg",className:"bg-white text-black hover:bg-white/90",children:["Explore Solutions ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]}),s.jsx(H,{size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:"Book Demo"})]})]})]}),s.jsx(it,{})]})]})},EK=()=>s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"SmartLinks Hub â AI-ready product support and lifecycle infrastru
1150cture",description:"SmartLinks Hub centralises manuals, FAQs, warranties and AI-powered support into connected product experiences for customers, resellers and support teams.",url:"https://smartlinks-public-site.lovable.app/concepts/identity-platform/hub",canonical:"https://smartlinks-public-site.lovable.app/concepts/identity-platform/hub"}),s.jsxs("div",{className:"min-h-screen bg-[#0a0a12] text-white",children:[s.jsx(rt,{}),s.jsxs("section",{className:"relative overflow-hidden pt-32 pb-20 lg:pt-40 lg:pb-28",children:[s.jsxs("div",{className:"absolute inset-0 -z-10",children:[s.jsx("div",{className:"absolute top-1/3 left-1/4 w-[700px] h-[600px] bg-blue-600/20 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute top-1/2 right-1/4 w-[500px] h-[500px] bg-purple-700/15 rounded-full blur-3xl"})]}),s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"max-w-3xl",children:[s.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 mb-6 rounded-full bg-white/5 border border-white/10 text-xs uppercase tracking-widest text-white/70",children:[s.jsx(ke,{className:"w-3 h-3"})," SmartLinks Hub"]}),s.jsx("h1",{className:"text-4xl md:text-5xl lg:text-6xl font-semibold leading-[1.05] tracking-tight",children:"AI-ready product support for modern product businesses."}),s.jsx("p",{className:"mt-6 text-lg text-white/70 leading-relaxed max-w-2xl",children:"SmartLinks Hub centralises manuals, FAQs, warranties, product guidance and AI-powered support into connected product experiences â for customers, resellers and support teams."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3",children:[s.jsxs(H,{size:"lg",className:"bg-white text-black hover:bg-white/90",children:["Book Demo ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]}),s.jsx(H,{size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:"See Hub in Action"})]})]})})]}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"The problem"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Most product support experiences are fragmented."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Information lives in too many places. Customers can't find it, resellers can't trust it, and AI systems can't read it."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-3",children:[{icon:Co,title:"Manuals buried in PDFs",body:"Critical product knowledge locked away in unsearchable files."},{icon:Ps,title:"Disconnected support systems",body:"Knowledge bases, helpdesks and product content all live in silos."},{icon:yt,title:"Inconsistent reseller information",body:"Channel partners and retailers receive different versions of the truth."},{icon:Jt,title:"Difficult warranty processes",body:"Registration, claims and proof of ownership are still mostly manual."},{icon:xs,title:"Poor AI discoverability",body:"Product content isn't structured for AI assistants and retrieval."},{icon:lx,title:"Customers can't find answers",body:"Self-service fails and tickets pile up â even for simple questions."}].map(({icon:e,title:t,body:n})=>s.jsxs("div",{className:"p-6 rounded-xl bg-white/[0.03] border border-white/10",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:t}),s.jsx("p",{className:"mt-2 text-sm text-white/60 leading-relaxed",children:n})]},t))})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"The solution"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"One connected hub for product knowledge and support."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"Every product gets a persistent hub â connecting documentation, support, AI assistance and reseller-ready content into a single experience that works wherever the product exists."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-3",children:[{icon:Zu,label:"Manuals"},{icon:S_,label:"FAQs"},{icon:Jt,label:"Warranty flows"},{icon:Co,label:"Guides & docs"},{icon:Mb,label:"Troubleshooting"},{icon:dt,label:"Support journeys"},{icon:xs,label:"AI assistants"},{icon:yt,label:"Reseller portals"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 hover:border-white/20 transition-colors",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:t})]},t))}),s.jsx("div",{className:"mt-8 grid sm:grid-cols-2 lg:grid-cols-4 gap-3",children:[{icon:Ki,label:"On the website"},{icon:nt,label:"Via QR & NFC"},{icon:xs,label:"For AI systems"},{icon:Ss,label:"Across the lifecycle"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"p-5 rounded-xl bg-gradient-to-br from-blue-500/10 to-purple-500/10 border border-blue-400/20 text-center",children:[s.jsx(e,{className:"w-5 h-5 text-blue-200 mx-auto mb-2"}),s.jsx("div",{className:"text-sm text-white/85",children:t})]},t))})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"AI-ready product knowledge"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Built for the AI-driven support era."}),s.jsx("p",{className:"mt-5 text-white/70 leading-relaxed",children:"Customers increasingly ask AI instead of searching websites. Product knowledge needs to be structured and AI-readable."}),s.jsx("p",{className:"mt-4 text-white/60 leading-relaxed",children:"SmartLinks Hub prepares product content for AI retrieval and intelligent support workflows â practical, operational and embedded in the experiences your customers already have."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:[{icon:xs,label:"AI product assistants"},{icon:lx,label:"AI manual search"},{icon:Mb,label:"AI troubleshooting"},{icon:C_,label:"Voice & conversational support"},{icon:l_,label:"Structured markdown ingestion"},{icon:ke,label:"Retrieval-ready content"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.03] border border-white/10",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mb-2"}),s.jsx("div",{className:"text-sm text-white/80",children:t})]},t))})]})})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Product journey"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Available everywhere your products exist."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"The same product identity and support experience persists across every channel â physical and digital, customer and reseller."})]}),s.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-7 gap-3",children:[{icon:Ki,label:"Website"},{icon:nt,label:"QR codes"},{icon:Ss,label:"Packaging"},{icon:yt,label:"Resellers"},{icon:Ik,label:"Retail"},{icon:xs,label:"AI assistants"},{icon:nn,label:"Support"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 text-center",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mx-auto mb-2"}),s.jsx("div",{className:"text-xs text-white/80",children:t})]},t))})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Business outcomes"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"Reduce support friction and improve product ownership."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-3",children:[{icon:$_,title:"Reduced supp
1150ort costs",body:"Self-service answers cut ticket volume."},{icon:dt,title:"Better self-service",body:"Customers find answers faster, on any device."},{icon:yt,title:"Reseller confidence",body:"Consistent, trusted product information everywhere."},{icon:Zu,title:"Faster onboarding",body:"Setup, care and first-use guidance built in."},{icon:xs,title:"Better AI discoverability",body:"Your product knowledge surfaces correctly in AI."},{icon:O_,title:"Improved satisfaction",body:"A better post-purchase experience, end to end."}].map(({icon:e,title:t,body:n})=>s.jsxs("div",{className:"p-6 rounded-xl bg-white/[0.03] border border-white/10",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:t}),s.jsx("p",{className:"mt-2 text-sm text-white/60 leading-relaxed",children:n})]},t))})]})}),s.jsx("section",{className:"py-20 lg:py-28 border-t border-white/5 bg-white/[0.015]",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"Built on the SmartLinks platform"}),s.jsx("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:"From product support to connected products."}),s.jsx("p",{className:"mt-5 text-white/65 text-lg leading-relaxed",children:"SmartLinks Hub is the commercial entry point into a wider connected identity platform. QR deployment, connected packaging, DPP, authentication and lifecycle identity all extend naturally from the same foundation."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-5 gap-3",children:[{icon:nt,label:"QR deployment"},{icon:Ss,label:"Connected packaging"},{icon:Jt,label:"DPP & compliance"},{icon:Yi,label:"Authentication"},{icon:Ps,label:"Lifecycle identity"}].map(({icon:e,label:t})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 text-center",children:[s.jsx(e,{className:"w-5 h-5 text-blue-300 mx-auto mb-2"}),s.jsx("div",{className:"text-sm text-white/80",children:t})]},t))})]})}),s.jsxs("section",{className:"py-24 lg:py-32 border-t border-white/5 relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 -z-10",children:s.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[400px] bg-blue-500/15 rounded-full blur-3xl"})}),s.jsxs("div",{className:"container mx-auto px-6 text-center max-w-3xl",children:[s.jsx("h2",{className:"text-4xl md:text-5xl font-semibold tracking-tight",children:"See SmartLinks Hub in action."}),s.jsx("p",{className:"mt-5 text-white/70 text-lg leading-relaxed",children:"Connected product support, AI-ready knowledge and lifecycle infrastru
1150cture â running on the SmartLinks identity platform."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3 justify-center",children:[s.jsxs(H,{size:"lg",className:"bg-white text-black hover:bg-white/90",children:["Book Demo ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]}),s.jsx(H,{size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:"See Hub in Action"})]})]})]}),s.jsx(it,{})]})]}),of={support:{label:"Product support & AI knowledge",icon:Qi,audience:"Manufacturers · D2C brands · Product businesses",pain:"Product information is fragmented, hard to maintain and increasingly invisible to AI systems.",solution:"Connected product hubs for manuals, warranties, FAQs and AI assistants â anchored to the product itself.",outcome:"Lower support costs, AI-ready product data and a stronger ownership experience after the box is opened.",cta:"Explore product support"},assets:{label:"Connected asset operations",icon:nn,audience:"Field service · Facilities · Maintenance",pain:"Disconnected service records, paper tags and fragmented lifecycle history slow operations and audits.",solution:"Connected asset identities with service history, parts tracking, permissions and operational workflows.",outcome:"Better compliance, faster servicing and connected lifecycle visibility across every asset.",cta:"Explore asset operations"},dpp:{label:"Connected products & DPP",icon:Ss,audience:"Retail · Packaging · Manufacturers",pain:"Static packaging and disconnected product identities fall short of DPP and connected retail requirements.",solution:"Connected product identity for DPP, authentication, lifecycle tracking and customer interaction.",outcome:"Future-ready product infrastru
1150cture and connected packaging workflows ready for what's next.",cta:"Explore connected products"},retail:{label:"Retail & shelf edge",icon:yt,audience:"Retail · In-store operations",pain:"Shelf-edge interactions and retail product workflows remain disconnected and static.",solution:"Connected shelf-edge and retail identity experiences for customers and staff alike.",outcome:"Smarter in-store operations and richer, measurable customer interaction.",cta:"Explore retail solutions"}},TK=[{icon:dt,label:"Customer",note:"Support, warranty, ownership"},{icon:C0,label:"Technician",note:"Service history, parts, sign-off"},{icon:yt,label:"Retailer",note:"Shelf-edge, stock, promotions"},{icon:Gh,label:"Regulator",note:"DPP, compliance evidence"},{icon:ca,label:"Warehouse",note:"Provenance, location, lifecycle"},{icon:Kh,label:"Support",note:"Context, history, AI assist"}],_K=()=>{const[e,t]=x.useState("support"),n=of[e];return s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Connected products and assets â SmartLinks",description:"SmartLinks gives every product and asset a connected identity â powering support, lifecycle operations, Digital Product Passports and AI-ready product experiences.",url:"https://smartlinks-public-site.lovable.app/concepts/homepage-v2",canonical:"https://smartlinks-public-site.lovable.app/concepts/homepage-v2",noindex:!0}),s.jsxs("div",{className:"min-h-screen bg-[#f7f6f2] text-stone-900",children:[s.jsx(rt,{}),s.jsxs("section",{className:"relative overflow-hidden pt-32 pb-20 lg:pt-40 lg:pb-24",children:[s.jsxs("div",{className:"absolute inset-0 -z-10",children:[s.jsx("div",{className:"absolute top-1/3 -left-20 w-[500px] h-[500px] bg-blue-200/40 rounded-full blur-3xl"}),s.jsx("div",{className:"absolute bottom-0 right-0 w-[500px] h-[500px] bg-amber-100/50 rounded-full blur-3xl"})]}),s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-center",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 mb-6 rounded-full bg-white border border-stone-200 text-xs uppercase tracking-widest text-stone-600",children:[s.jsx(ke,{className:"w-3 h-3"})," Connected products & assets"]}),s.jsxs("h1",{className:"text-4xl md:text-5xl lg:text-6xl font-semibold leading-[1.03] tracking-tight text-stone-900",children:["Every product, every asset â"," ",s.jsx("span",{className:"italic font-serif text-stone-800",children:"given a connected identity."})]}),s.jsx("p",{className:"mt-6 text-lg text-stone-600 leading-relaxed max-w-xl",children:"SmartLinks turns QR, NFC, RFID and GS1 Digital Links into working operational identity â for product support, asset operations, Digital Product Passports and AI-ready product experiences."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3",children:[s.jsx(H,{asChild:!0,size:"lg",className:"bg-stone-900 text-stone-50 hover:bg-stone-700",children:s.jsxs(ve,{to:"/contact",children:["Book a walkthrough ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})}),s.jsx(H,{asChild:!0,size:"lg",variant:"outline",className:"border-stone-300 bg-white text-stone-900 hover:bg-stone-50",children:s.jsx(ve,{to:"/concepts/identity-platform/hub",children:"Explore SmartLinks Hub"})})]}),s.jsxs("div",{className:"mt-10 flex flex-wrap gap-4 text-xs uppercase tracking-widest text-stone-500",children:[s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(nt,{className:"w-3.5 h-3.5"}),"QR"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(Yi,{className:"w-3.5 h-3.5"}),"NFC"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(Es,{className:"w-3.5 h-3.5"}),"RFID"]}),s.jsxs("span",{className:"flex items-center gap-1.5",children:[s.jsx(nh,{className:"w-3.5 h-3.5"}),"GS1 Digital Link"]})]})]}),s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"absolute -inset-4 bg-gradient-to-tr from-blue-200/50 to-amber-100/50 rounded-3xl blur-2xl"}),s.jsx("img",{src:py,alt:"Connected product being scanned",className:"relative rounded-2xl border border-stone-200 shadow-xl w-full"})]})]})})]}),s.jsx("section",{className:"py-10 border-y border-stone-200 bg-white",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"flex flex-col md:flex-row md:items-center md:justify-between gap-6",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500",children:"GS1-approved · DPP-ready · AI-retrievable · Trusted by enterprise brands"}),s.jsxs("div",{className:"flex flex-wrap items-center gap-6 text-sm text-stone-700",children:[s.jsxs("span",{className:"flex items-center gap-2",children:[s.jsx(Jt,{className:"w-4 h-4 text-stone-500"})," GS1 Digital Link resolver"]}),s.jsxs("span",{className:"flex items-center gap-2",children:[s.jsx(Gh,{className:"w-4 h-4 text-stone-500"})," ESPR / DPP compliant"]}),s.jsxs("span",{className:"flex items-center gap-2",children:[s.jsx(ke,{className:"w-4 h-4 text-stone-500"})," MCP & RAG ready"]})]})]})})}),s.jsx("section",{className:"py-20 lg:py-28",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-3",children:"Why now"}),s.jsxs("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight text-stone-900",children:["Physical products are becoming"," ",s.jsx("span",{className:"italic font-serif",children:"digitally connected."})]}),s.jsx("p",{className:"mt-5 text-stone-600 text-lg leading-relaxed",children:"Static identifiers and disconnected product information are becoming obsolete. The shift is structural â driven by regulation, AI, and rising expectations of every connected thing."})]}),s.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[["GS1 Digital Link","A single barcode now resolves to multiple services and audiences."],["DPP regulation","Digital Product Passports are becoming a market requirement, not a future concept."],["AI-readable products","Product data needs to be structured, retrievable and machine-trustworthy."],["Connected packaging","Packaging is becoming an operational and engagement surface, not just decoration."],["Contextual experiences","The same scan should mean different things to a customer, a technician and a regulator."],["Lifecycle transparency","Provenance, repair, resale and end-of-life are now part of the product story."]].map(([r,i])=>s.jsxs("div",{className:"p-6 rounded-xl bg-white border border-stone-200",children:[s.jsx("div",{className:"text-sm font-medium text-stone-900",children:r}),s.jsx("p",{className:"mt-2 text-sm text-stone-600 leading-relaxed",children:i})]},r))})]})}),s.jsx("section",{className:"py-20 lg:py-28 bg-white border-y border-stone-200",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-14",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-3",children:"How it works"}),s.jsxs("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:["One identity."," ",s.jsx("span",{className:"italic font-serif",children:"Different interactions."})]}),s.jsx("p",{className:"mt-5 text-stone-600 text-lg leading-relaxed",children:"A single connected identity behaves differently depending on who is interacting with it â contextual, permissioned and operational."})]}),s.jsx("div",{className:"grid md:grid-cols-3 lg:grid-cols-6 gap-3",children:TK.map(({icon:r,label:i,note:a})=>s.jsxs("div",{className:"p-5 rounded-xl bg-[#f7f6f2] border border-stone-200",children:[s.jsx(r,{className:"w-5 h-5 text-stone-700 mb-3"}),s.jsx("div",{className:"text-sm font-medium text-stone-900",children:i}),s.jsx("div",{className:"text-xs text-stone-500 mt-1 leading-relaxed",children:a})]},i))}),s.jsx("div",{className:"mt-8 p-5 rounded-xl border border-stone-200 bg-stone-900 text-stone-50 text-sm text-center",children:"One product. One identity. Six different jobs to do."})]})}),s.jsx("section",{className:"py-20 lg:py-28",children:s.jsxs("div",{className:"container mx-auto px-6",children:[s.jsxs("div",{className:"max-w-3xl mb-12",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-3",children:"Operational workflows"}),s.jsxs("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:["Built for different"," ",s.jsx("span",{className:"italic font-serif",children:"operational challenges."})]}),s.jsx("p",{className:"mt-5 text-stone-600 text-lg leading-relaxed",children:"Pick the workflow that matches the problem you're solving. The foundation is the same â the operational story is different."})]}),s.jsxs("div",{className:"grid lg:grid-cols-[280px_1fr] gap-6",children:[s.jsx("div",{className:"flex lg:flex-col gap-2 overflow-x-auto lg:overflow-visible",children:Object.keys(of).map(r=>{const i=of[r],a=i.icon,o=e===r;return s.jsxs("button",{onClick:()=>t(r),className:`flex items-center gap-3 p-4 rounded-xl text-left border transition-all whitespace-nowrap lg:whitespace-normal ${o?"bg-stone-900 text-stone-50 border-stone-900":"bg-white text-stone-700 border-stone-200 hover:border-stone-400"}`,children:[s.jsx(a,{className:"w-4 h-4 shrink-0"}),s.jsx("span",{className:"text-sm font-medium",children:i.label})]},r)})}),s.jsxs("div",{className:"p-8 lg:p-10 rounded-2xl bg-white border border-stone-200",children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-2",children:n.audience}),s.jsx("h3",{className:"text-2xl md:text-3xl font-semibold tracking-tight",children:n.label}),s.jsxs("div",{className:"mt-8 grid md:grid-cols-3 gap-6",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-2",children:"Pain"}),s.jsx("p",{className:"text-sm text-stone-700 leading-relaxed",children:n.pain})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-2",children:"Solution"}),s.jsx("p",{className:"text-sm text-stone-700 leading-relaxed",children:n.solution})]}),s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-2",children:"Outcome"}),s.jsx("p",{className:"text-sm text-stone-700 leading-relaxed",children:n.outcome})]})]}),s.jsx("div",{className:"mt-8",children:s.jsxs(H,{variant:"outline",className:"border-stone-300 bg-white hover:bg-stone-50 text-stone-900",children:[n.cta," ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})})]})]})]})}),s.jsxs("section",{className:"relative py-24 lg:py-32 bg-[#0a0a12] text-white overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 -z-10",children:s.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[900px] h-[500px] bg-blue-600/20 rounded-full blur-3xl"})}),s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-[1.1fr_1fr] gap-12 items-start",children:[s.jsxs("div",{children:[s.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1 mb-6 rounded-full bg-blue-500/15 border border-blue-400/30 text-xs uppercase tracking-widest text-blue-200",children:[s.jsx(ke,{className:"w-3 h-3"})," Flagship product"]}),s.jsx("h2",{className:"text-3xl md:text-5xl font-semibold tracking-tight leading-[1.05]",children:"Introducing SmartLinks Hub."}),s.jsx("p",{className:"mt-5 text-lg text-white/75 leading-relaxed max-w-xl",children:"AI-ready product support and lifecycle infrastru
1150cture for modern product businesses."}),s.jsx("p",{className:"mt-4 text-white/60 leading-relaxed max-w-xl",children:"Unify manuals, FAQs, warranties, product content and AI assistants into connected product hubs â designed for customers, resellers and AI-driven support workflows."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3",children:[s.jsx(H,{asChild:!0,size:"lg",className:"bg-white text-black hover:bg-white/90",children:s.jsxs(ve,{to:"/concepts/identity-platform/hub",children:["Explore SmartLinks Hub ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})}),s.jsx(H,{asChild:!0,size:"lg",variant:"outline",className:"border-white/20 bg-white/5 text-white hover:bg-white/10",children:s.jsx(ve,{to:"/contact",children:"Book demo"})})]})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:[{icon:Qi,title:"Centralised product support",body:"One home for manuals, FAQs, warranties and guidance."},{icon:ke,title:"AI-ready product knowledge",body:"Structured for retrieval by AI assistants and agents."},{icon:nt,title:"QR-ready product identity",body:"Persistent identifiers anchored to the product itself."},{icon:Kh,title:"Reduced support friction",body:"Self-serve answers, fewer tickets, faster resolution."},{icon:dt,title:"Better ownership journeys",body:"Onboarding, care and lifecycle in one place."},{icon:yt,title:"Reseller-ready",body:"Consistent product information across every channel."}].map(({icon:r,title:i,body:a})=>s.jsxs("div",{className:"p-5 rounded-xl bg-white/[0.04] border border-white/10 hover:border-blue-400/30 transition-colors",children:[s.jsx(r,{className:"w-5 h-5 text-blue-300 mb-3"}),s.jsx("div",{className:"text-sm font-medium",children:i}),s.jsx("div",{className:"text-xs text-white/55 mt-1 leading-relaxed",children:a})]},i))})]})})]}),s.jsx("section",{className:"py-20 lg:py-28 bg-white border-b border-stone-200",children:s.jsx("div",{className:"container mx-auto px-6",children:s.jsxs("div",{className:"grid lg:grid-cols-2 gap-12 items-start",children:[s.jsxs("div",{children:[s.jsx("div",{className:"text-xs uppercase tracking-widest text-stone-500 mb-3",children:"AI capabilities"}),s.jsxs("h2",{className:"text-3xl md:text-4xl font-semibold tracking-tight",children:["AI built into"," ",s.jsx("span",{className:"italic font-serif",children:"connected workflows."})]}),s.jsx("p",{className:"mt-5 text-stone-600 text-lg leading-relaxed",children:"Operational AI powered by connected identity and structured product data â embedded in the workflows that already exist, not bolted on as a separate product."}),s.jsx("img",{src:fy,alt:"Technician tapping an NFC tag in the field",className:"mt-8 rounded-2xl border border-stone-200 w-full"})]}),s.jsx("div",{className:"grid sm:grid-cols-2 gap-3",children:["AI product assistants","AI manual retrieval","AI-generated service reports","Voice-to-certificate workflows","AI support guidance","AI-powered product comparison","AI-ready product knowledge","Contextual recommendations"].map(r=>s.jsxs("div",{className:"p-5 rounded-xl bg-[#f7f6f2] border border-stone-200",children:[s.jsx(ke,{className:"w-4 h-4 text-stone-700 mb-2"}),s.jsx("div",{className:"text-sm text-stone-800",children:r})]},r))})]})})}),s.jsxs("section",{className:"py-24 lg:py-32 relative overflow-hidden",children:[s.jsx("div",{className:"absolute inset-0 -z-10",children:s.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 w-[700px] h-[400px] bg-blue-200/40 rounded-full blur-3xl"})}),s.jsxs("div",{className:"container mx-auto px-6 text-center max-w-3xl",children:[s.jsxs("h2",{className:"text-4xl md:text-5xl font-semibold tracking-tight",children:["Bring one product line."," ",s.jsx("span",{className:"italic font-serif",children:"We'll show you the record in 20 minutes."})]}),s.jsx("p",{className:"mt-5 text-stone-600 text-lg leading-relaxed",children:"No platform pitch. One product, one connected identity, one scan â and a clear picture of what changes operationally."}),s.jsxs("div",{className:"mt-8 flex flex-wrap gap-3 justify-center",children:[s.jsx(H,{asChild:!0,size:"lg",className:"bg-stone-900 text-stone-50 hover:bg-stone-700",children:s.jsxs(ve,{to:"/contact",children:["Book the walkthrough ",s.jsx(ue,{className:"ml-1 w-4 h-4"})]})}),s.jsx(H,{asChild:!0,size:"lg",variant:"outline",className:"border-stone-300 bg-white text-stone-900 hover:bg-stone-50",children:s.jsx(ve,{to:"/concepts/identity-platform/hub",children:"Explore SmartLinks Hub"})})]})]})]}),s.jsx(it,{})]})]})},AK=()=>{const e=oi();return x.useEffect(()=>{console.error("404 Error: User attempted to access non-existent route:",e.pathname)},[e.pathname]),s.jsxs(s.Fragment,{children:[s.jsx(Se,{title:"Page Not Found - SmartLinks",description:"The page you're looking for doesn't exist. Return to the SmartLinks homepage.",noindex:!0}),s.jsx("div",{className:"min-h-screen flex items-center justify-center bg-black",children:s.jsxs("div",{className:"text-center",children:[s.jsx("h1",{className:"text-6xl font-bold mb-4 text-white",children:"404"}),s.jsx("p",{className:"text-xl text-white/60 mb-4",children:"Oops! Page not found"}),s.jsx("a",{href:"/",className:"text-purple-400 hover:text-purple-300 underline",children:"Return to Home"})]})})]})},RK=new HD,DK=()=>s.jsx(YD,{client:RK,children:s.jsx(I8,{children:s.jsxs(ED,{children:[s.jsx(CA,{}),s.jsx(tR,{}),s.jsxs(r8,{children:[s.jsx(O8,{}),s.jsxs(XM,{children:[s.jsx(fe,{path:"/",element:s.jsx(AF,{})}),s.jsx(fe,{path:"/overview",element:s.jsx(OF,{})}),s.jsx(fe,{path:"/food-beverages",element:s.jsx(WF,{})}),s.jsx(fe,{path:"/clothing-apparel",element:s.jsx(JF,{})}),s.jsx(fe,{path:"/health-beauty",element:s.jsx(r9,{})}),s.jsx(fe,{path:"/espr",element:s.jsx(u9,{})}),s.jsx(fe,{path:"/gs1-digital-link",element:s.jsx(y9,{})}),s.jsx(fe,{path:"/contact",element:s.jsx(b9,{})}),s.jsx(fe,{path:"/news",element:s.jsx(I$,{})}),s.jsx(fe,{path:"/blog",element:s.jsx(e1,{})}),s.jsx(fe,{path:"/blog/:slug",element:s.jsx(e1,{})}),s.jsx(fe,{path:"/admin",element:s.jsx(i1,{})}),s.jsx(fe,{path:"/admin/:section",element:s.jsx(i1,{})}),s.jsx(fe,{path:"/case-studies/transformulas",element:s.jsx(pU,{})}),s.jsx(fe,{path:"/case-studies/vinca-wines",element:s.jsx(fU,{})}),s.jsx(fe,{path:"/earth-positive-collaboration",element:s.jsx(CU,{})}),s.jsx(fe,{path:"/syndigo-partnership",element:s.jsx(RU,{})}),s.jsx(fe,{path:"/syndigo-partnership/ai-portals",element:s.jsx(IU,{})}),s.jsx(fe,{path:"/syndigo-partnership/analytics",element:s.jsx(FU,{})}),s.jsx(fe,{path:"/syndigo-partnership/engagement",element:s.jsx(BU,{})}),s.jsx(fe,{path:"/syndigo-partnership/authenticity",element:s.jsx(WU,{})}),s.jsx(fe,{path:"/syndigo-partnership/tagging",element:s.jsx(GU,{})}),s.jsx(fe,{path:"/syndigo-partnership/industry-solutions",element:s.jsx(UU,{})}),s.jsx(fe,{path:"/pres/syndigo",element:s.jsx(lK,{})}),s.jsx(fe,{path:"/privacy",element:s.jsx(cK,{})}),s.jsx(fe,{path:"/terms",element:s.jsx(dK,{})}),s.jsx(fe,{path:"/cookies",element:s.jsx(uK,{})}
1150),s.jsx(fe,{path:"/concepts/operational-identity",element:s.jsx(fK,{})}),s.jsx(fe,{path:"/concepts/connected-identity",element:s.jsx(bK,{})}),s.jsx(fe,{path:"/concepts/connected-infrastructure",element:s.jsx(kK,{})}),s.jsx(fe,{path:"/concepts/connected-platform",element:s.jsx(SK,{})}),s.jsx(fe,{path:"/concepts/identity-platform",element:s.jsx(PK,{})}),s.jsx(fe,{path:"/concepts/identity-platform/hub",element:s.jsx(EK,{})}),s.jsx(fe,{path:"/concepts/homepage-v2",element:s.jsx(_K,{})}),s.jsx(fe,{path:"*",element:s.jsx(AK,{})})]})]})]})})});X2(document.getElementById("root")).render(s.jsx(DK,{}));
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.