@microlink/react
Version:
Turn links into beautiful previews.
3 lines (2 loc) • 41.3 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@babel/runtime/helpers/defineProperty"),n=require("@babel/runtime/helpers/objectWithoutProperties"),r=require("react"),a=require("@babel/runtime/helpers/taggedTemplateLiteral"),o=require("styled-components"),i=require("@microlink/mql");const s=["accessibility","debounce","ellipsis","is","lines","text"];function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?l(Object(r),!0).forEach((function(n){t(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const u=e=>{let{accessibility:t=!0,debounce:a=300,ellipsis:o="…",is:i="div",lines:l=3,text:u}=e,d=n(e,s);const p=r.useRef(null),m=r.useRef("."),f=c(c({ref:p},t?{title:u}:{}),d),g=r.useMemo((()=>"string"==typeof u&&u.length>0),[u]),b=r.useCallback((()=>{var e,t,n,r;if(!g)return;const a=e=>{m.current=e,null!=p.current&&(p.current.innerText=e)};a(".");const i=((null!==(t=null===(e=p.current)||void 0===e?void 0:e.clientHeight)&&void 0!==t?t:0)+1)*l+1,s="…"===o?5:1.2*o.length;let c=0,d=0,f=u.length;for(;c<=f;){if(d=Math.floor((c+f)/2),a(u.slice(0,d)),d===u.length)return;(null!==(r=null===(n=p.current)||void 0===n?void 0:n.clientHeight)&&void 0!==r?r:0)<=i?c=d+1:f=d-1}a(u.slice(0,Math.max(d-s,0)).trim()+o)}),[o,g,l,u]);return r.useEffect((()=>{b();const e=((e,t)=>{let n;const r=()=>{n=void 0,e()};return()=>{const a=null==n;clearTimeout(n),n=setTimeout(r,t),a&&e()}})(b,a);return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)}),[b,a]),g?r.createElement(i,f,m.current):null};function d(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var p,m={exports:{}};var f,g={exports:{}};var b,h=d((e=>function(){if(p)return m.exports;p=1;const e=new RegExp("^(".concat([/^(:{2}f{4}:)?10(?:\.\d{1,3}){3}$/,/^(:{2}f{4}:)?127(?:\.\d{1,3}){3}$/,/^(::f{4}:)?169\.254\.([1-9]|1?\d\d|2[0-4]\d|25[0-4])\.\d{1,3}$/,/^(:{2}f{4}:)?(172\.1[6-9]|172\.2\d|172\.3[01])(?:\.\d{1,3}){2}$/,/^(:{2}f{4}:)?192\.168(?:\.\d{1,3}){2}$/,/^f[cd][\da-f]{2}(::1$|:[\da-f]{1,4}){1,7}$/,/^fe[89ab][\da-f](::1$|:[\da-f]{1,4}){1,7}$/,/^localhost$|^0\.0\.0\.0$/].map((e=>e.source)).join("|"),")$"));return m.exports=e.test.bind(e),m.exports.regex=e,m.exports}()(e)||function(){if(f)return g.exports;f=1;const e=new RegExp("^(".concat([/^\[(::1|::)\]$/].map((e=>e.source)).join("|"),")$"));return g.exports=e.test.bind(e),g.exports.regex=e,g.exports}()(e)));const y="undefined"==typeof window,v=e=>"function"==typeof e,w=e=>"object"==typeof e,x=e=>null==e,k=e=>w(e)?e.url:e,$=function(){return o.css(b||(b=a(["\n @media (max-width: 48em) {\n ",";\n }\n "])),o.css(...arguments))},z=e=>{let{apiKey:t,contrast:n=!1,data:r,endpoint:a,force:o,headers:s,media:l,prerender:c,proxy:u,ttl:d,url:p}=e;return i.getApiUrl(p,{apiKey:t,audio:l.includes("audio"),data:r,endpoint:a,force:o,headers:s,iframe:l.includes("iframe"),palette:n,prerender:c,proxy:u,screenshot:l.includes("screenshot"),ttl:d,video:l.includes("video")})},E=e=>"large"===e,S=e=>"small"===e,O=e=>h(new URL(e).hostname)?e:"https://images.weserv.nl/?".concat(new URLSearchParams({url:e,default:e,l:9,af:"",il:"",n:-1}).toString()),C=!y&&"IntersectionObserver"in window,P=e=>{const t=parseInt(e,10);return[Math.floor(t/3600),Math.floor(t/60)%60,t%60].filter(((e,t)=>e>0||t>0)).map((e=>e>=10?e:"0".concat(e))).join(":")},M=(e,t,n)=>{switch(!0){case e<=t:return t;case e>=n:return n;default:return e}},j="microlink_card",D="".concat(j,"__content"),_="".concat(j,"__media"),R="".concat(_,"__controls"),N={main:j,content:D,title:"".concat(D,"_title"),description:"".concat(D,"_description"),url:"".concat(D,"_url"),mediaWrapper:"".concat(_,"_wrapper"),media:_,image:"".concat(_,"_image"),videoWrapper:"".concat(_,"_video_wrapper"),video:"".concat(_,"_video"),audioWrapper:"".concat(_,"_audio_wrapper"),audio:"".concat(_,"_audio"),mediaControls:R,playbackControl:"".concat(R,"_playback"),volumeControl:"".concat(R,"_volume"),rwControl:"".concat(R,"_rewind"),ffwControl:"".concat(R,"_fast_forward"),rateControl:"".concat(R,"_rate"),progressBar:"".concat(R,"_progress_bar"),progressTime:"".concat(R,"_progress_time"),spinner:"".concat(R,"_spinner"),iframe:"".concat(j,"__iframe")},F=["useNanoClamp","children"];var T,L;function V(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function I(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?V(Object(r),!0).forEach((function(n){t(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):V(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const U=o.styled((e=>{let{children:t,className:n,lines:a}=e;return x(t)?null:r.createElement(u,{className:n,lines:a,text:t,is:"p"})}))(T||(T=a(["\n &&& {\n text-align: inherit;\n font-weight: inherit;\n font-family: inherit;\n color: inherit;\n margin: 0;\n\n ","\n }\n"])),(e=>{let{$useNanoClamp:t}=e;return!t&&o.css(L||(L=a(["\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n "])))})),W=t=>{let{useNanoClamp:a=!0,children:o}=t,i=n(t,F);const s=a?i:I(I({},i),{},{as:"p",title:o});return r.createElement(U,e({$useNanoClamp:a},s),o)},B={short:"100ms",medium:"150ms",long:"300ms"},A={short:"cubic-bezier(.25,.8,.25,1)",medium:"cubic-bezier(.25,.8,.25,1)",long:"cubic-bezier(.4, 0, .2, 1)"},H=(e,t)=>{const n="".concat(B[t]," ").concat(A[t]);return e.map((e=>"".concat(e," ").concat(n))).join(", ")},q=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return H(t,"short")},X=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return H(t,"medium")},K=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return H(t,"long")},J="InterUI, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Open Sans', sans-serif",G="'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace",Q=["autoPlay","children","controls","loop","mediaRef","muted","playsInline","size"];function Y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Z(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?Y(Object(r),!0).forEach((function(n){t(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const ee={},te=r.createContext(ee),ne=e=>{let{autoPlay:t,children:a,controls:o,loop:i,mediaRef:s,muted:l,playsInline:c,size:u}=e,d=n(e,Q);const[p,m]=r.useState(ee),f=r.useCallback((e=>m((t=>Z(Z({},t),e)))),[]),g=r.useMemo((()=>({autoPlay:t,controls:o,loop:i,mediaRef:s,muted:l,playsInline:c,size:u})),[t,o,i,s,l,c,u]),b=r.useMemo((()=>({props:g,state:p,updateState:f})),[g,p,f]);return r.createElement(te.Provider,{value:b},a(d))};var re,ae,oe,ie,se,le,ce,ue,de,pe,me,fe;const ge=/^www\./,be="16px",he=o.css(re||(re=a(["\n ",";\n"])),$(ae||(ae=a(["\n > p {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n "])))),ye=o.styled("div").attrs({className:N.content})(oe||(oe=a(["\n display: flex;\n padding: 10px 15px;\n min-width: 0;\n box-sizing: border-box;\n ",";\n"])),(e=>{let{$cardSize:t}=e;return o.css(ie||(ie=a(["\n flex: ",";\n justify-content: ",";\n flex-direction: ",";\n align-items: ",";\n "])),E(t)?"0 0 125px":1,S(t)?"space-between":"space-around",S(t)?"row":"column",S(t)?"center":"stretch")})),ve=o.styled("header").attrs({className:N.title})(se||(se=a(["\n text-align: left;\n font-weight: bold;\n margin: 0;\n width: 100%;\n ","\n"])),(e=>{let{$cardSize:t}=e;return o.css(le||(le=a(["\n flex-grow: ",";\n font-size: ",";\n\n ","\n "])),S(t)?.8:1.2,S(t)?"15px":"16px",S(t)&&o.css(ce||(ce=a(["\n min-width: 0;\n padding-right: 14px;\n "]))))})),we=o.styled("div").attrs({className:N.description})(ue||(ue=a(["\n text-align: left;\n font-size: 14px;\n flex-grow: 2;\n margin: auto 0;\n line-height: 18px;\n font-weight: normal;\n ",";\n"])),(e=>{let{$cardSize:t}=e;return!E(t)&&he})),xe=o.styled("footer").attrs({className:N.url})(de||(de=a(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n text-align: left;\n margin: 0;\n flex-grow: 0;\n font-weight: normal;\n ",";\n"])),(e=>{let{$cardSize:t}=e;return o.css(pe||(pe=a(["\n font-size: ",";\n ","\n "])),S(t)?"10px":"12px",!S(t)&&"width: 100%;")})),ke=o.styled(W)(me||(me=a(["\n opacity: 0.75;\n transition: ",";\n will-change: opacity;\n\n .",":hover & {\n opacity: 1;\n }\n"])),X("opacity"),N.main),$e=o.styled("span").attrs({title:"microlink.io"})(fe||(fe=a(["\n background: url('https://cdn.microlink.io/logo/logo.svg') no-repeat center\n center;\n display: block;\n margin-left: 15px;\n transition: ",";\n will-change: filter, opacity;\n &:not(:hover) {\n filter: grayscale(100%);\n opacity: 0.75;\n }\n\n min-width: ",";\n width: ",";\n background-size: ",";\n height: ",";\n"])),X("filter","opacity"),be,be,be,"12px"),ze=()=>{const{state:{description:e,title:t,url:n},props:{size:a}}=r.useContext(te),o=S(a),i=r.useMemo((()=>(e=>{if(x(e))return"";const{hostname:t}=new URL(e);return t.replace(ge,"")})(n)),[n]),s=r.useCallback((e=>{e.preventDefault(),window.open("https://www.microlink.io","_blank")}),[]);return r.createElement(ye,{$cardSize:a},r.createElement(ve,{$cardSize:a},r.createElement(W,{$useNanoClamp:!1},t)),!o&&r.createElement(we,{$cardSize:a},r.createElement(W,{lines:2},e)),r.createElement(xe,{$cardSize:a},r.createElement(ke,{$useNanoClamp:!1},i),r.createElement($e,{onClick:s})))};var Ee,Se,Oe,Ce;const Pe=o.keyframes(Ee||(Ee=a(["\n 0% {\n background: #e1e8ed;\n }\n 70% {\n background: #cdd4d8;\n }\n 100% {\n background: #e1e8ed;\n }\n"]))),Me=o.keyframes(Se||(Se=a(["\n 0% {\n background: #e1e8ed;\n }\n 70% {\n background: #dce3e8;\n }\n 100% {\n background: #e1e8ed;\n }\n"]))),je=o.css(Oe||(Oe=a(["\n animation: "," .75s linear infinite;\n"])),Pe),De=o.css(Ce||(Ce=a(["\n animation: "," 1.25s linear infinite;\n"])),Me);var _e,Re,Ne;const Fe=o.styled("img")(_e||(_e=a(["\n height: 1px;\n width: 1px;\n position: absolute;\n z-index: -1;\n"]))),Te=o.css(Re||(Re=a(["\n &::after {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background: #e1e8ed;\n z-index: 1;\n transition: ",";\n will-change: opacity;\n\n ",";\n }\n"])),X("opacity","visibility"),(e=>{let{$isLoading:t}=e;return o.css(Ne||(Ne=a(["\n opacity: ",";\n visibility: ",";\n "])),t?1:0,t?"$visible":"hidden")}));var Le,Ve,Ie,Ue,We;const Be={small:o.css(Le||(Le=a(["\n flex: 0 0 48px;\n "]))),normal:o.css(Ve||(Ve=a(["\n flex: 0 0 125px;\n\n ","\n "])),$(Ie||(Ie=a(["\n flex: 0 0 92px;\n "])))),large:o.css(Ue||(Ue=a(["\n flex: 1;\n\n &::before {\n padding-bottom: 0;\n }\n "])))},Ae=o.styled("div")(We||(We=a(["\n background: transparent no-repeat center center / cover;\n display: block;\n overflow: hidden;\n height: auto;\n position: relative;\n\n &::before {\n content: '';\n padding-bottom: 100%;\n display: block;\n }\n\n ",";\n\n ",";\n"])),(e=>{let{$cardSize:t}=e;return Be[t]}),Te),He=t=>{const{props:{size:n}}=r.useContext(te);return r.createElement(Ae,e({$cardSize:n},t))};var qe;const Xe=o.styled(He).attrs({className:"".concat(N.media," ").concat(N.image)})(qe||(qe=a(["\n background-image: ",";\n"])),(e=>{let{url:t}=e;return t?"url('".concat(O(t),"')"):""})),Ke=t=>{const{state:{imageUrl:n}}=r.useContext(te);return r.createElement(Xe,e({url:n},t))};var Je,Ge,Qe,Ye,Ze;const et=o.styled(Ke)(Je||(Je=a(["\n ",";\n"])),De),tt=o.styled("span")(Ge||(Ge=a(["\n opacity: 0.8;\n height: 16px;\n width: ",";\n display: block;\n background: #e1e8ed;\n margin: ",";\n ",";\n\n ",";\n"])),(e=>{let{$cardSize:t}=e;return S(t)?"75%":"60%"}),(e=>{let{$cardSize:t}=e;return S(t)?"0 20px 0 0":"2px 0 8px"}),je,(e=>{let{$cardSize:t}=e;return!E(t)&&"\n height: 15px;\n "})),nt=o.styled("span")(Qe||(Qe=a(["\n opacity: 0.8;\n height: 14px;\n width: 95%;\n display: block;\n position: relative;\n ",";\n animation-delay: 0.125s;\n"])),je),rt=o.styled("span")(Ye||(Ye=a(["\n opacity: 0.8;\n height: 12px;\n width: 30%;\n display: block;\n "," animation-delay: .25s;\n\n ",";\n"])),je,(e=>{let{$cardSize:t}=e;return!E(t)&&"\n height: 10px;\n "})),at=()=>{const{props:{size:e}}=r.useContext(te),t=S(e);return r.createElement(r.Fragment,null,r.createElement(et,{$cardSize:e}),r.createElement(ye,{$cardSize:e},r.createElement(tt,{$cardSize:e}),t?null:r.createElement(r.Fragment,null,r.createElement(nt,{$cardSize:e}),r.createElement(nt,{$cardSize:e,style:{marginBottom:"12px"}})),Ze||(Ze=r.createElement(rt,null))))};var ot;const it=o.styled("div")(ot||(ot=a(["\n backface-visibility: hidden;\n filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));\n transition: ",";\n will-change: transform;\n\n > svg {\n display: block;\n }\n\n &:active:not(:focus) {\n transform: scale(0.9);\n }\n"])),q("transform"));var st,lt,ct,ut,dt,pt,mt,ft,gt;const bt=t=>r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 14 14"},t),st||(st=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M15.5 6.205l-.705-.705L13 7.295 11.205 5.5l-.705.705L12.295 8 10.5 9.795l.705.705L13 8.705l1.795 1.795.705-.705L13.705 8 15.5 6.205zM9 15a.5.5 0 01-.355-.15L4.835 11H1.5a.5.5 0 01-.5-.5v-5a.5.5 0 01.5-.5h3.335l3.81-3.85a.5.5 0 01.705 0 .5.5 0 01.15.35v13a.5.5 0 01-.5.5z",transform:"translate(-1 -1)"}))),ht=t=>r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 14 14"},t),lt||(lt=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M13.58 4.04l-.765.645a5 5 0 01-.145 6.615l.735.7a6 6 0 00.175-7.94v-.02zM10.79 6a3 3 0 01-.09 3.97l.735.68a4 4 0 00.115-5.295L10.79 6zM9 15a.5.5 0 01-.355-.15L4.835 11H1.5a.5.5 0 01-.5-.5v-5a.5.5 0 01.5-.5h3.335l3.81-3.85a.5.5 0 01.705 0 .5.5 0 01.15.35v13a.5.5 0 01-.5.5z",transform:"translate(-1 -1)"}))),yt=o.styled("div")(ct||(ct=a(["\n z-index: 2;\n position: absolute;\n bottom: ","px;\n left: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: ",";\n will-change: opacity;\n"])),(e=>{let{$cardSize:t}=e;return E(t)?18:14}),X("opacity")),vt=o.styled("svg")(ut||(ut=a(["\n stroke: #fff;\n"]))),wt=o.styled(it).attrs({className:N.volumeControl})(dt||(dt=a(["\n "," {\n width: ","px;\n height: ","px;\n\n ","\n }\n"])),vt,(e=>{let{$cardSize:t}=e;return E(t)?16:14}),(e=>{let{$cardSize:t}=e;return E(t)?16:14}),(e=>{let{$cardSize:t}=e;return!E(t)&&$(pt||(pt=a(["\n width: 12px;\n height: 12px;\n "])))})),xt=o.styled(it).attrs({className:N.rateControl})(mt||(mt=a(["\n font-size: ","px;\n min-width: ","px;\n line-height: 1;\n font-weight: bold;\n border: 1.5px solid #fff;\n border-radius: 9999px;\n padding: 1px 5px;\n text-align: center;\n color: #fff;\n margin-left: 10px;\n\n ","\n"])),(e=>{let{$cardSize:t}=e;return E(t)?12:10}),(e=>{let{$cardSize:t}=e;return E(t)?33:28}),(e=>{let{$cardSize:t}=e;return!E(t)&&$(ft||(ft=a(["\n font-size: 8px;\n margin-left: 8px;\n min-width: 23px;\n "])))})),kt=o.styled("span").attrs({className:N.progressTime})(gt||(gt=a(["\n margin: ",";\n font-family: ",";\n font-size: 12px;\n padding: 0 16px;\n color: #fff;\n text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n"])),(e=>{let{$right:t}=e;return t?"0 0 0 auto":"0 auto 0 0"}),G),$t=e=>{let{$cardSize:t,currentTime:n,endTime:a,isMuted:o,onMuteClick:i,onPlaybackRateClick:s,playbackRate:l}=e;const c=r.useMemo((()=>o?bt:ht),[o]),u=r.useMemo((()=>E(t)),[t]);return r.createElement(yt,{$cardSize:t},u&&r.createElement(kt,null,n),r.createElement(wt,{title:o?"Unmute":"Mute",$cardSize:t,onClick:i},r.createElement(vt,{as:c})),r.createElement(xt,{title:"Playback Rate",$cardSize:t,onClick:s},r.createElement("span",null,l,"x")),u&&r.createElement(kt,{$right:!0},a))},zt=["$isPlaying"];var Et,St,Ot,Ct,Pt,Mt;const jt=t=>r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 20"},t),Et||(Et=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M12 6h-2a2 2 0 00-2 2v16a2 2 0 002 2h2a2 2 0 002-2V8a2 2 0 00-2-2zm10 0h-2a2 2 0 00-2 2v16a2 2 0 002 2h2a2 2 0 002-2V8a2 2 0 00-2-2z",transform:"translate(-8 -6)"}))),Dt=t=>r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 21 24"},t),St||(St=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M7 28a1 1 0 01-1-1V5a1 1 0 011.501-.865l19 11a1 1 0 010 1.73l-19 11A.998.998 0 017 28z",transform:"translate(-6 -4)"}))),_t={large:"50px",normal:"35px",small:"20px"},Rt=o.styled("svg")(Ot||(Ot=a(["\n stroke: #fff;\n"]))),Nt=o.styled(it).attrs({className:N.playbackControl})(Ct||(Ct=a(["\n "," {\n ","\n }\n"])),Rt,(e=>{let{$cardSize:t}=e;return o.css(Pt||(Pt=a(["\n width: ",";\n height: ",";\n padding: ",";\n\n ","\n "])),_t[t],_t[t],E(t)?0:"8px",!E(t)&&!S(t)&&$(Mt||(Mt=a(["\n width: calc("," * 1.2);\n height: calc("," * 1.2);\n "])),_t.small,_t.small))})),Ft=t=>{let{$isPlaying:a}=t,o=n(t,zt);const i=r.useMemo((()=>a?jt:Dt),[a]);return r.createElement(Nt,e({title:a?"Pause":"Play"},o),r.createElement(Rt,{as:i}))};var Tt,Lt;const Vt={normal:.8,small:.9},It=o.styled("div").attrs((e=>{let{$isVisible:t,$positionX:n}=e;return{style:{left:n,transform:"scale(".concat(t?1:.5,") translate(-50%, -50%)"),opacity:t?1:0,visibility:t?"$visible":"hidden"}}}))(Tt||(Tt=a(["\n position: absolute;\n top: 50%;\n background: #ffffff;\n border-radius: 50%;\n transform-origin: center center;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);\n transition: ",";\n will-change: left, transform, opacity, visibility;\n backface-visibility: hidden;\n z-index: 3;\n\n ","\n"])),q("transform","opacity","visibility"),(e=>{let{$cardSize:t}=e;const n=(r=t,Math.floor(12*(Vt[r]||1)));var r;return o.css(Lt||(Lt=a(["\n height: ","px;\n width: ","px;\n "])),n,n)})),Ut=["$isDragging","$isVisible","label","$positionX","size"];var Wt;const Bt={normal:.8},At=o.styled("span").attrs((e=>{let{$position:t,$isDragging:n,$visible:r}=e;return{style:{left:"".concat(t,"px"),top:r?"-4px":"0px",visibility:r?"$visible":"hidden",opacity:r?1:0,transform:"translate(-50%, ".concat(n?-110:-100,"%)")}}}))(Wt||(Wt=a(["\n position: absolute;\n background: rgba(24, 25, 25, 0.75);\n color: #fff;\n text-shadow: 0 1px 2px rgba(24, 25, 25, 0.15);\n padding: 2px 3px;\n border-radius: 4px;\n font-family: ",";\n font-size: ","px;\n line-height: 1;\n transition: ",",\n ",";\n will-change: top, left, visibility, opacity, transform;\n backface-visibility: hidden;\n"])),G,(e=>{let{$cardSize:t}=e;return 11*(Bt[t]||1)}),X("opacity","visibility","transform"),K("top")),Ht=r.forwardRef(((t,a)=>{let{$isDragging:o,$isVisible:i,label:s,$positionX:l,size:c}=t,u=n(t,Ut);return r.createElement(r.Fragment,null,r.createElement(At,e({$visible:i,$position:l,$cardSize:c,ref:a,$isDragging:o},u),s))}));Ht.displayName="Tooltip";const qt=["key"];var Xt,Kt,Jt,Gt,Qt,Yt,Zt;const en={normal:.7,small:.6},tn={small:.9,large:1.4},nn=e=>Math.floor(6*(tn[e]||1)),rn=o.styled("div").attrs((()=>({className:N.progressBar})))(Xt||(Xt=a(["\n position: relative;\n padding: ","px ","px ","px;\n z-index: 2;\n backface-visibility: hidden;\n"])),6,3,3),an=o.styled("div").attrs((e=>{let{$cardSize:t,$isDragging:n}=e;if(n){const e=nn(t);return{style:{height:"".concat(e,"px")}}}return{}}))(Kt||(Kt=a(["\n background: transparent;\n border-radius: 9999px;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n background: rgba(255, 255, 255, 0.15);\n transition: ",";\n will-change: height;\n pointer-events: none;\n position: relative;\n\n ","\n"])),q("height"),(e=>{let{$cardSize:t}=e;const n=(r=t,Math.floor(6*(en[r]||1)));var r;const i=nn(t);return o.css(Jt||(Jt=a(["\n height: ","px;\n\n ",":hover & {\n height: ","px;\n }\n "])),n,rn,i)})),on=o.styled("div")(Gt||(Gt=a(["\n border-radius: inherit;\n height: 100%;\n position: relative;\n overflow: hidden;\n"]))),sn=o.styled("div").attrs((e=>{let{$maskScale:t}=e;return{style:{transform:"scaleX(".concat(t,")")}}}))(Qt||(Qt=a(["\n position: absolute;\n left: 0;\n top: -50%;\n height: 200%;\n width: 100%;\n background: #ffffff;\n transform-origin: left center;\n will-change: transform;\n"]))),ln=o.styled("div").attrs((e=>{let{$cursorRatio:t,$isHovering:n,$progressPercent:r}=e;return{style:{left:r,transform:"scaleX(".concat(t,")"),opacity:n?1:0,visibility:n?"$visible":"hidden"}}}))(Yt||(Yt=a(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.4);\n transform-origin: left center;\n transition: ",";\n will-change: left, transform, opacity, $visible;\n"])),q("opacity","visibility")),cn=o.styled("div").attrs((e=>{let{start:t,end:n}=e;return{style:{left:"".concat(t,"px"),right:"".concat(n,"px")}}}))(Zt||(Zt=a(["\n background: rgba(255, 255, 255, 0.35);\n position: absolute;\n top: 0;\n bottom: 0;\n"]))),un=t=>{let{bufferedMedia:a,cursorX:o,duration:i,hoveredTime:s,$isDragging:l,$isHovering:c,onClick:u,onMouseDown:d,onMouseOver:p,progress:m,showTooltip:f}=t;const{props:{size:g}}=r.useContext(te),b=r.useRef(),h=r.useRef(),y=r.useMemo((()=>S(g)),[g]),v=r.useCallback((()=>b.current?b.current.getBoundingClientRect().width-6:0),[]),w=r.useMemo((()=>M(m/i,0,1)),[i,m]),x=r.useMemo((()=>"".concat(M(100*w,1,99),"%")),[w]),k=r.useMemo((()=>{if(b.current){const e=v(),t=w*e,n=o-t;if(n>0)return M((n/(e-t)).toFixed(3),0,.99)}return 0}),[o,v,w]),$=r.useMemo((()=>{const e=v();return a.map(((t,n)=>({key:n,start:t.start*e,end:e-t.end*e})))}),[a,v]),z=r.useMemo((()=>P(s)),[s]),E=r.useMemo((()=>{if(b.current&&h.current){const e=v(),t=h.current.getBoundingClientRect().width/2;return M(o,t,e-t)}return 0}),[o,v]),O=r.useMemo((()=>({onClick:u,onMouseDown:d,onMouseOver:p})),[u,d,p]),C=r.useMemo((()=>l||c),[l,c]);return r.createElement(rn,e({$cardSize:g,ref:b},O),r.createElement(an,{$cardSize:g,$isDragging:l},r.createElement(on,null,r.createElement(ln,{$cursorRatio:k,$isHovering:c,$progressPercent:x}),$.map((t=>{let{key:a}=t,o=n(t,qt);return r.createElement(cn,e({key:a},o))})),r.createElement(sn,{$maskScale:w})),r.createElement(It,{$cardSize:g,$isVisible:C,$positionX:x}),!y&&r.createElement(Ht,{$isDragging:l,$isVisible:C,label:z,$positionX:E,ref:h,size:g})))};var dn,pn,mn,fn,gn;const bn=["$cardSize"],hn=["$cardSize"],yn=["type","$cardSize"],vn=t=>{let a=n(t,bn);return r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 29"},a),dn||(dn=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M4 18c0 6.627 5.373 12 12 12s12-5.373 12-12S22.627 6 16 6h-4V1L6 7l6 6V8h4c5.523 0 10 4.477 10 10s-4.477 10-10 10S6 23.523 6 18H4zm15.63 4.13a2.84 2.84 0 01-1.28-.27 2.44 2.44 0 01-.89-.77 3.57 3.57 0 01-.52-1.25 7.69 7.69 0 01-.17-1.68 7.83 7.83 0 01.17-1.68c.094-.445.27-.87.52-1.25.23-.325.535-.59.89-.77.4-.188.838-.28 1.28-.27a2.44 2.44 0 012.16 1 5.23 5.23 0 01.7 2.93 5.23 5.23 0 01-.7 2.93 2.44 2.44 0 01-2.16 1.08zm0-1.22c.411.025.8-.19 1-.55a3.38 3.38 0 00.37-1.51v-1.38a3.31 3.31 0 00-.29-1.5 1.23 1.23 0 00-2.06 0 3.31 3.31 0 00-.29 1.5v1.38a3.38 3.38 0 00.29 1.51c.195.356.575.57.98.55zm-9 1.09v-1.18h2v-5.19l-1.86 1-.55-1.06 2.32-1.3H14v6.5h1.78V22h-5.15z",transform:"translate(-4 -1)"})))},wn=t=>{let a=n(t,hn);return r.createElement("svg",e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 29"},a),pn||(pn=r.createElement("path",{fill:"#FFF",fillRule:"evenodd",stroke:"none",strokeWidth:"1",d:"M26 18c0 5.523-4.477 10-10 10S6 23.523 6 18 10.477 8 16 8h4v5l6-6-6-6v5h-4C9.373 6 4 11.373 4 18s5.373 12 12 12 12-5.373 12-12h-2zm-6.36 4.13a2.81 2.81 0 01-1.28-.27 2.36 2.36 0 01-.89-.77 3.39 3.39 0 01-.47-1.25 7.12 7.12 0 01-.17-1.68 7.24 7.24 0 01.17-1.68 3.46 3.46 0 01.52-1.25 2.36 2.36 0 01.89-.77c.4-.19.838-.282 1.28-.27a2.44 2.44 0 012.16 1 5.31 5.31 0 01.7 2.93 5.31 5.31 0 01-.7 2.93 2.44 2.44 0 01-2.21 1.08zm0-1.22a1 1 0 001-.55c.22-.472.323-.99.3-1.51v-1.38a3.17 3.17 0 00-.3-1.5 1.22 1.22 0 00-2.05 0 3.18 3.18 0 00-.29 1.5v1.38a3.25 3.25 0 00.29 1.51 1 1 0 001.05.55zm-7.02-3.49c.355.035.71-.06 1-.27a.84.84 0 00.31-.68v-.08a.94.94 0 00-.3-.74 1.2 1.2 0 00-.83-.27 1.65 1.65 0 00-.89.24 2.1 2.1 0 00-.68.68l-.93-.83a5.37 5.37 0 01.44-.51 2.7 2.7 0 01.54-.4 2.55 2.55 0 01.7-.27 3.25 3.25 0 01.87-.1 3.94 3.94 0 011.06.14c.297.078.576.214.82.4.224.168.408.383.54.63.123.26.184.543.18.83a2 2 0 01-.11.67 1.82 1.82 0 01-.32.52 1.79 1.79 0 01-.47.36 2.27 2.27 0 01-.57.2V18c.219.04.431.11.63.21a1.7 1.7 0 01.85.93c.084.234.124.481.12.73a2 2 0 01-.2.92 2 2 0 01-.58.72 2.66 2.66 0 01-.89.45 3.76 3.76 0 01-1.15.16 4.1 4.1 0 01-1-.11 3.1 3.1 0 01-.76-.31 2.76 2.76 0 01-.56-.45 4.22 4.22 0 01-.44-.55l1.07-.81c.082.147.175.288.28.42.105.128.226.243.36.34.137.097.29.171.45.22a2 2 0 00.57.07 1.45 1.45 0 001-.3 1.12 1.12 0 00.34-.85v-.08a1 1 0 00-.37-.8 1.78 1.78 0 00-1.06-.28h-.76v-1.21h.74z",transform:"translate(-4 -1)"})))},xn=o.styled("svg")(mn||(mn=a(["\n stroke: #fff;\n width: ","px;\n height: ","px;\n\n ","\n"])),(e=>{let{$cardSize:t}=e;return E(t)?30:24}),(e=>{let{$cardSize:t}=e;return E(t)?30:24}),(e=>{let{$cardSize:t}=e;return!E(t)&&$(fn||(fn=a(["\n width: 0;\n height: 0;\n "])))})),kn=o.styled(it)(gn||(gn=a(["\n margin: 0 ",";\n"])),(e=>{let{$cardSize:t}=e;return E(t)?"28px":"3px"})),$n=t=>{let{type:a="rewind",$cardSize:o}=t,i=n(t,yn);const s=r.useMemo((()=>"rewind"===a?vn:wn),[a]);return r.createElement(kn,e({title:"rewind"===a?"Rewind":"Forward",$cardSize:o},i),r.createElement(xn,{as:s,$cardSize:o}))};var zn,En,Sn,On,Cn,Pn;const Mn={normal:.8,small:.6},jn={normal:.9,small:.8},Dn=o.keyframes(zn||(zn=a(["\n 100% {\n transform: rotate(360deg);\n }\n"]))),_n=o.keyframes(En||(En=a(["\n 0% {\n stroke-dasharray: 1, 150;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -35;\n }\n 100% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -124;\n }\n"]))),Rn=o.styled(it).attrs((e=>{let{$isVisible:t}=e;return{style:{opacity:t?1:0,visibility:t?"$visible":"hidden"}}}))((e=>{let{$cardSize:t}=e;const n="".concat((e=>Math.floor(12*(jn[e]||1)))(t),"px"),r="".concat((e=>Math.floor(6*(Mn[e]||1)))(t),"px");return o.css(Sn||(Sn=a(["\n position: absolute;\n width: ",";\n right: ",";\n top: ",";\n transition: ",";\n will-change: opacity, visibility;\n pointer-events: none;\n "])),n,r,r,X("opacity","visibility"))})),Nn=o.styled("svg")(On||(On=a(["\n width: 100%;\n animation: "," 2s linear infinite;\n will-change: transform;\n"])),Dn),Fn=o.styled("circle")(Cn||(Cn=a(["\n stroke: #fff;\n stroke-linecap: round;\n stroke-width: 7;\n fill: none;\n animation: "," 1.5s ease-in-out infinite;\n will-change: stroke-dasharray, stroke-dashoffset;\n"])),_n),Tn=e=>{let{size:t,$isVisible:n}=e;return r.createElement(Rn,{$cardSize:t,className:N.spinner,$isVisible:n},Pn||(Pn=r.createElement(Nn,{viewBox:"0 0 50 50"},r.createElement(Fn,{cx:"25",cy:"25",r:"20"}))))};var Ln,Vn,In,Un,Wn;const Bn=32,An=37,Hn=39,qn=77,Xn=o.styled("div").attrs({className:N.mediaControls})(Ln||(Ln=a(["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n transition: ",", ",";\n will-change: background;\n display: flex;\n flex-direction: column;\n pointer-events: auto;\n\n ","\n"])),K("background"),X("opacity"),(e=>{let{$hasInteracted:t,$isDragging:n,$isPlaying:r}=e;const i="rgba(0, 0, 0, 0.35)",s=t&&!r;return o.css(Vn||(Vn=a(["\n .",":hover & {\n background: ",";\n }\n\n .",":not(:hover) & {\n opacity: ",";\n ",";\n }\n "])),N.main,n?"rgba(0, 0, 0, 0.2)":i,N.main,!t||s?1:0,s&&"background: ".concat(i))})),Kn=o.styled("div")(In||(In=a(["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n"]))),Jn=o.styled("div")(Un||(Un=a(["\n flex: 1;\n\n ","\n"])),(e=>{let{$isVisible:t}=e;return!t&&o.css(Wn||(Wn=a(["\n *[class*='","']:not(.",") {\n transition: ",";\n opacity: 0;\n visibility: hidden;\n }\n "])),N.mediaControls,N.progressTime,X("opacity","visibility"))})),Gn=t=>{let{MediaComponent:n,mediaProps:a}=t;const{props:{autoPlay:o,controls:i,mediaRef:s,muted:l,loop:c,size:u}}=r.useContext(te),[d,p]=r.useState(0),[m,f]=r.useState(0),[g,b]=r.useState([]),[h,y]=r.useState(0),[w,x]=r.useState(0),[k,$]=r.useState(o),[z,E]=r.useState(l),[O,C]=r.useState(!1),[j,D]=r.useState(!1),[_,R]=r.useState(!1),[F,T]=r.useState(1),[L,V]=r.useState(o),[I,U]=r.useState(!1),W=r.useRef(),B=r.useCallback((e=>{W.current=e,s&&(v(s)?s(e):s.current=e)}),[s]),A=r.useMemo((()=>!S(u)),[u]),H=r.useMemo((()=>({onCanPlay:()=>C(!1),onLoadedMetadata:e=>p(e.currentTarget.duration),onPause:()=>$(!1),onPlay:()=>$(!0),onPlaying:()=>C(!1),onProgress:e=>b(e.currentTarget.buffered),onRateChange:e=>T(e.currentTarget.playbackRate),onTimeUpdate:e=>f(e.currentTarget.currentTime),onVolumeChange:e=>E(e.currentTarget.muted),onWaiting:e=>C(!0)})),[]),q=r.useCallback((e=>{if(W.current){const t=e.currentTarget.getBoundingClientRect(),n=M(Math.floor(e.clientX-t.left),0,t.width);return{cursor:n,time:n/t.width*W.current.duration}}return{cursor:0,time:0}}),[]),X=r.useCallback((()=>{W.current&&(W.current.paused?(L||V(!0),W.current.play()):W.current.pause())}),[L]),K=r.useCallback((e=>{if(W.current){const t=M(e,0,W.current.duration);W.current.currentTime=t,f(t)}}),[]),J=r.useCallback(((e,t)=>{if(e.preventDefault(),e.stopPropagation(),W.current){const{currentTime:e}=W.current;K("rewind"===t?e-10:e+30)}}),[K]),G=r.useCallback((e=>{e.preventDefault(),e.stopPropagation(),W.current&&(W.current.muted=!W.current.muted)}),[]),Q=r.useCallback((e=>{e.preventDefault(),e.stopPropagation(),W.current&&(W.current.playbackRate=(e=>{switch(e){case 1:return 1.25;case 1.25:return 1.5;case 1.5:return 2;default:return 1}})(W.current.playbackRate))}),[]),Y=r.useCallback((e=>{e.preventDefault(),e.stopPropagation(),R(!1)}),[]),Z=r.useCallback((e=>{e.preventDefault(),e.stopPropagation(),R(!0);const{time:t}=q(e);K(t)}),[q,K]),ee=r.useCallback((()=>D(!0)),[]),ne=r.useCallback((e=>{e.preventDefault(),e.stopPropagation(),_?R(!1):X()}),[_,X]),re=r.useCallback((e=>{if((_||j)&&W.current){e.preventDefault();const{cursor:t,time:n}=q(e);x(n),y(t),_&&(W.current.paused||(W.current.pause(),U(!0)),K(n))}}),[q,_,j,K]),ae=r.useCallback((e=>{_&&0===e.buttons&&R(!1)}),[_]),oe=r.useCallback((e=>{if(_)return;const{keyCode:t}=e;if([Bn,An,Hn,qn].includes(t)&&W.current)switch(e.preventDefault(),t){case Bn:X();break;case An:K(W.current.currentTime-5);break;case Hn:K(W.current.currentTime+5);break;case qn:W.current.muted=!W.current.muted}}),[_,K,X]),ie=r.useMemo((()=>({onClick:ne,onKeyDown:oe,onMouseMove:re,onMouseOut:()=>D(!1),onMouseOver:ae})),[ne,oe,re,ae]),se=r.useMemo((()=>L?{title:""}:{}),[L]),le=r.useMemo((()=>g&&g.length&&W.current?[...Array(g.length).keys()].map((e=>({start:g.start(e)/W.current.duration,end:g.end(e)/W.current.duration}))):[]),[g]),ce=r.useMemo((()=>P(m||0)),[m]),ue=r.useMemo((()=>P(d||0)),[d]),de=r.useMemo((()=>({$cardSize:u,currentTime:ce,endTime:ue,isMuted:z,onMuteClick:G,onPlaybackRateClick:Q,playbackRate:F})),[ce,ue,z,G,Q,F,u]),pe=r.useMemo((()=>({bufferedMedia:le,cursorX:h,duration:d,hoveredTime:w,$isDragging:_,$isHovering:j,onClick:Y,onMouseDown:Z,onMouseOver:ee,progress:m,showTooltip:_||j})),[le,h,d,w,_,j,Y,Z,ee,m]);return r.useEffect((()=>{!_&&I&&W.current&&W.current.paused&&(W.current.play(),U(!1))}),[I,_]),r.createElement(r.Fragment,null,r.createElement(n,e({},a,H,{ref:B,autoPlay:o,loop:c,muted:l})),i&&r.createElement(Xn,e({},se,{tabIndex:0,$hasInteracted:L,$isDragging:_,$isPlaying:k},ie),r.createElement(Tn,{size:u,$isVisible:O}),L?r.createElement(r.Fragment,null,r.createElement(Jn,{$isVisible:!_},r.createElement(Kn,null,A&&r.createElement($n,{className:N.rwControl,type:"rewind",$cardSize:u,onClick:e=>J(e,"rewind")}),r.createElement(Ft,{$cardSize:u,$isPlaying:k}),A&&r.createElement($n,{className:N.ffwControl,type:"fastforward",$cardSize:u,onClick:e=>J(e,"fastforward")})),A&&r.createElement($t,de)),r.createElement(un,pe)):r.createElement(Kn,null,r.createElement(Ft,{$cardSize:u}))))};var Qn;const Yn=o.styled("video")(Qn||(Qn=a(["\n width: 100%;\n height: 100%;\n object-fit: cover;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n &::media-controls-start-playback-button {\n display: none;\n appearance: none;\n }\n"]))),Zn={video:t=>{const{state:{imageUrl:n,playsInline:a,videoUrl:o}}=r.useContext(te),i=r.useMemo((()=>{const e={className:"".concat(N.media," ").concat(N.video),src:o,playsInline:a};return n&&(e.poster=O(n)),e}),[n,a,o]);return r.createElement(He,e({className:"".concat(N.mediaWrapper," ").concat(N.videoWrapper)},t),r.createElement(Gn,{MediaComponent:Yn,mediaProps:i}))},image:Ke,audio:t=>{const{state:{audioUrl:n}}=r.useContext(te),a=r.useMemo((()=>({className:"".concat(N.media," ").concat(N.audio),src:n})),[n]);return r.createElement(Ke,e({className:"".concat(N.mediaWrapper," ").concat(N.audioWrapper)},t),r.createElement(Gn,{MediaComponent:"audio",mediaProps:a}))}},er=()=>{const{state:{imageUrl:e,isAudio:t,isVideo:n}}=r.useContext(te),[a,o]=r.useState(null!==k(e));const i=((e,t)=>e?"audio":t?"video":"image")(t,n),s=Zn[i];return r.createElement(r.Fragment,null,r.createElement(s,{$isLoading:a}),a&&r.createElement(Fe,{src:e,onLoad:()=>o(!1)}))},tr=["href","rel","target","as"];var nr,rr,ar,or,ir;function sr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function lr(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?sr(Object(r),!0).forEach((function(n){t(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sr(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const cr="382px",ur=e=>{let{$backgroundColor:t,color:n}=e;return o.css(nr||(nr=a(["\n background-color: ",";\n border-color: ",";\n transition-property: filter;\n will-change: filter;\n\n &&& {\n color: ",";\n }\n\n &:hover {\n filter: brightness(90%);\n }\n"])),t,n,n)},dr=o.css(rr||(rr=a(["\n flex-direction: column;\n height: ",";\n ",";\n"])),cr,$(ar||(ar=a(["\n height: calc("," * 7/9);\n "])),cr)),pr=o.css(or||(or=a(["\n transition-property: background, border-color;\n will-change: background, border-color;\n &:hover {\n background-color: var(--microlink-hover-background-color, #f5f8fa);\n border-color: var(--microlink-hover-border-color, #8899a680);\n }\n"]))),mr=e=>{let{$cardSize:t}=e;return o.css(ir||(ir=a(["\n flex-direction: ",";\n"])),E(t)?"column-reverse":"row-reverse")},fr=o.css((()=>"\n max-width: var(--microlink-max-width, 500px);\n background-color: var(--microlink-background-color, #fff);\n border-width: var(--microlink-border-width, 1px);\n border-style: var(--microlink-border-style, solid);\n border-color: var(--microlink-border-color, #e1e8ed);\n color: var(--microlink-color, #181919);\n overflow: hidden;\n font-family: ".concat(J,";\n display: flex;\n text-decoration: none;\n opacity: 1;\n position: relative;\n transition-duration: ").concat(B.medium,";\n transition-timing-function: ").concat(A.medium,";\n\n &:active,\n &:hover {\n outline: 0;\n }\n"))),gr=o.styled("a")(fr,(e=>{let{$isLoading:t,contrast:n}=e;return!t&&!n&&pr}),(e=>{let{$cardSize:t}=e;return E(t)&&dr}),(e=>{let{direction:t}=e;return"rtl"===t&&mr}),(e=>{let{$backgroundColor:t,color:n,contrast:r}=e;return r&&n&&t&&ur}),(e=>{let{$backgroundColor:t,color:n,contrast:r}=e;return r&&(!n||!t)&&pr})),br=r.forwardRef(((e,t)=>{let{href:a,rel:o="noopener noreferrer",target:i="_blank",as:s="a"}=e,l=n(e,tr);const{state:{$backgroundColor:c,color:u,title:d},props:{size:p}}=r.useContext(te);return r.createElement(gr,lr(lr(lr({},"a"===s?{href:a,rel:o,target:i}:void 0),l),{},{$backgroundColor:c,$cardSize:p,color:u,ref:t,title:d}))}));br.displayName="CardWrap";var hr,yr,vr;const wr=["className","fetchData","lazy","loading","media","setData","url","apiKey"],xr=["className","apiKey","autoPlay","controls","direction","lazy","loop","media","fetchData","muted","playsInline","size"];function kr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function $r(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?kr(Object(r),!0).forEach((function(n){t(e,n,r[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):kr(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}const zr=t=>{const{className:a,fetchData:o,lazy:s,loading:l,media:c,setData:u,url:d,apiKey:p}=t,m=n(t,wr),f=r.useMemo((()=>[].concat(c)),[c]),{updateState:g}=r.useContext(te),[b,h]=r.useState(!0),[$,E]=r.useState(null),[S,O]=r.useState(!1),P=r.useMemo((()=>void 0===l),[l]),[M,j]=r.useMemo((()=>z($r($r({},t),{},{media:f}))),[f,t]),D=r.useMemo((()=>C&&(!0===s||w(s))),[s]),_=r.useMemo((()=>w(s)?s:void 0),[s]),[R,F]=((e,t)=>{const[n,a]=r.useState(!1);return[n,r.useCallback((n=>{if(e){const e=new IntersectionObserver(((e,t)=>{let[n]=e;n.isIntersecting&&(a(!0),t.unobserve(n.target))}),t);null!==n&&e.observe(n)}else a(!0)}),[e,t])]})(D,_),T=r.useMemo((()=>!D||D&&R),[D,R]),L=r.useCallback((e=>{const t=v(u)?u(e):$r($r({},e),u),{title:n,description:r,url:a,video:o,audio:i,image:s,logo:l,iframe:c}=t,d=s||l||{};let p,m,b=d,y=!1,w=!1;const $=((e,t)=>{let n;for(let r=0;r<t.length;r++){const a=t[r],o=e[a];if(!x(o)){n=a;break}}return n})(t,f);switch($){case"audio":w=!0,m=k(i);break;case"video":y=!0,p=k(o);break;case"iframe":E(c);break;default:b=((e,t)=>e[t.find((t=>!x(e[t])))])(t,f)||d}const z=k(b),{color:S,background_color:O}=b;g({url:a,color:S,title:n,description:r,imageUrl:z,videoUrl:p,audioUrl:m,isVideo:y,isAudio:w,$backgroundColor:O}),h(!1)}),[g,f,u]),V=r.useCallback((()=>{if(T){h(!0);(o?i.fetchFromApi(M,j):Promise.resolve({})).then((e=>{let{data:t}=e;return L(t)})).catch((e=>{h(!1),O(!0),console.error("\n┌───────────────┐\n│ Microlink SDK │\n└───────────────┘\n\n".concat(e.description,"\n\n").concat(JSON.stringify(e.data),"\n\nid ").concat(e.headers["x-request-id"],"\nuri ").concat(e.url,"\ncode ").concat(e.code," (").concat(e.statusCode,")\n\nmicrolink.io/").concat(e.code.toLowerCase(),"\n"))}))}}),[j,o,M,L,T]);r.useEffect(V,[d,u,R]);const I=P?b:l;return S?r.createElement("a",e({href:d},m),d):$?(y||$.scripts.forEach((e=>{if(!document.querySelector('script[src="'.concat(e.src,'"]'))){const t=document.createElement("script");Object.keys(e).forEach((n=>t[n]=e[n])),document.body.appendChild(t)}})),r.createElement("div",e({className:N.iframe,dangerouslySetInnerHTML:{__html:$.html}},m))):r.createElement(br,e({className:"".concat(N.main," ").concat(a).trim(),href:d,$isLoading:I,ref:F},m),I?hr||(hr=r.createElement(at,null)):r.createElement(r.Fragment,null,yr||(yr=r.createElement(er,null)),vr||(vr=r.createElement(ze,null))))};Object.defineProperty(exports,"fetchFromApi",{enumerable:!0,get:function(){return i.fetchFromApi}}),exports.default=t=>{let{className:a="",apiKey:o,autoPlay:i=!0,controls:s=!0,direction:l="ltr",lazy:c=!0,loop:u=!0,media:d=["iframe","video","audio","image","logo"],fetchData:p=!0,muted:m=!0,playsInline:f=!0,size:g="normal"}=t,b=n(t,xr);return r.createElement(ne,e({className:a,apiKey:o,autoPlay:i,controls:s,direction:l,lazy:c,loop:u,media:d,fetchData:p,muted:m,playsInline:f,size:g},b),(e=>r.createElement(zr,e)))},exports.getApiUrl=z,exports.imageProxy=O;
//# sourceMappingURL=microlink.min.cjs.map