UNPKG

@venuecms/sdk-next

Version:

This is a work in progress and is heavily in flux until we launch 1.0 in February.

8 lines (5 loc) 8.63 kB
"use client"; "use strict";var L=Object.create;var g=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var X=Object.getOwnPropertyNames;var Q=Object.getPrototypeOf,z=Object.prototype.hasOwnProperty;var T=(e,r)=>{for(var n in r)g(e,n,{get:r[n],enumerable:!0})},B=(e,r,n,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of X(r))!z.call(e,a)&&a!==n&&g(e,a,{get:()=>r[a],enumerable:!(t=O(r,a))||t.enumerable});return e};var h=(e,r,n)=>(n=e!=null?L(Q(e)):{},B(r||!e||!e.__esModule?g(n,"default",{value:e,enumerable:!0}):n,e)),Z=e=>B(g({},"__esModule",{value:!0}),e);var te={};T(te,{VenueContent:()=>ee});module.exports=Z(te);var S=h(require("next/image"));var k=h(require("next/image")),w=require("react/jsx-runtime"),p="data:image/webp;base64,UklGRv4DAABXRUJQVlA4WAoAAAAgAAAAgwEAkwAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDggEAIAANAdAJ0BKoQBlAA+tVilTqktq6Ij9mohsBaJaW7gAPxl327WrOr58lOBv3B2bV5tXZG3Cs6EfYIdF424VnQj3sc4AMwGX1tsW6mMzpnfFGE1GqNdd/F7s678DobD7FfMxZq6bbtOzeddTkEpR+67ecBjZeqt6WbksaOXRpgBgEOOz4uFCd7CmYlDgXL/btUenqYAvWU/dHQyD2WRrg4L8jdr+i+96BUwSEAuxzz/yZyIpjDAU3sa721c0j+AMO4HenRSOGLzlakWd611T6K5KqXs8Am4keQ1qQED9127pMUPWP9qY5XXO1FJSju/YBoKBjsg3KYTOZAA/vUMRConj2py6XdVy2rj5AFT3UUJuYDcedD9qv+/wNrkmRL5Q+Q/p3tAMxss1zgMyXdiAuRB3G81Lg7asSIQDcl2oLiGi/r9KhPwmr3o19NXEMyqHKAFFkajHBu1F7wU9laytcLsMPFdOTmAjafCJvui62qPOt3Uq0lfNJSWaGE20X7xAR/eg4w/RSRrRSqyst9YYCZexkg5Vu30Rxz3KySFBqy+xh9KAqRuzi1iU1DEeNRWTaXMfqO4JJnl+1ljW0Gynj147omoWIfGrzVBoiEMIAft8agFKSUudUje3Gsc4cSHkqqKLhR1ZGJgAeKbNPVn3RIvYRgVcCyiJLbwIwf9aK6q7hN2psdlEPjMdq4oNmLAqSwAAA==",Y=async({src:e,image:r={},fallback:n,placeholder:t,blurDataURL:a,...s})=>{let{altText:o}=r,i=r?.metadata??{},l=e?{img:{src:e},base64:p}:{img:{src:n?.src||p},base64:p},d={x:.5,y:.5};if(i?.focus){let m=(-i.focus.y+1)/2;if(m>.5){let c=m;d.y=c>1?1:c}else{let c=m;d.y=c<0?0:c}let u=(-i.focus.x+1)/2;if(u>.5){let c=u;d.x=c>1?1:c}else{let c=u;d.x=c<0?0:c}}return(0,w.jsx)(k.default,{alt:o??"image",src:l.img.src,fill:!0,placeholder:t??"blur",blurDataURL:a??l.base64,objectFit:"cover",objectPosition:`${d.x*100}% ${d.y*100}%`,...s})},y=Y;var v=require("clsx"),W=require("tailwind-merge");function C(...e){return(0,W.twMerge)((0,v.clsx)(e))}var I=e=>e?.url&&`/media/${encodeURIComponent(e.url)}`;var f=require("react/jsx-runtime"),G={square:"aspect-square",video:"aspect-video"},N=({className:e,image:r,aspect:n,props:t})=>{if(r){let a=I(r);if(a){let{metadata:s,altText:o}=r,{width:i,height:l}=s??{};return n?(0,f.jsx)(E,{aspect:n,children:(0,f.jsx)(y,{src:a,image:r,className:e,...t})}):(0,f.jsx)(S.default,{src:a,alt:o??"image",width:i??2048,height:l??2048,className:e,...t})}}return n?(0,f.jsx)(E,{aspect:n,children:(0,f.jsx)(y,{src:"",className:e,...t})}):null},E=({children:e,aspect:r})=>(0,f.jsx)("div",{className:"flex h-full w-full flex-col gap-1",children:(0,f.jsx)("div",{className:C("relative h-full w-full bg-cover bg-center",G[r]),children:e})});var j=require("react"),M=!1,K=e=>{let r=e.data;if(!r||typeof r!="object"||r.method!=="resize")return;let n=Number(r.height);if(!Number.isFinite(n)||n<=0)return;let t=document.querySelectorAll("iframe");for(let a of Array.from(t))if(a.contentWindow===e.source){a.style.height=`${Math.round(n)}px`;break}},$=()=>{(0,j.useEffect)(()=>{M||typeof window>"u"||(M=!0,window.addEventListener("message",K))},[])},b=()=>($(),null);var F=h(require("markdown-to-jsx")),A=require("react/jsx-runtime"),D={bold:"font-bold",italic:"italic",underline:"underline",strike:"line-through",link:"underline underline-offset-[3px] cursor-pointer"},P=(e={})=>{let r={link:t=>{let{class:a,className:s,...o}=t,i=[s,e.a??D.link,a].filter(Boolean).join(" ")||void 0;return(0,A.jsx)("a",{...o,className:i})}};return{text:t=>{if(t.node.marks){let a=t.node.marks.reduce((i,l)=>r[l.type]?i:`${D[l.type]??""} ${i}`,"").trim(),s=!1,o=t.node.marks.reduce((i,l)=>{if(l.type in r){s=!0;let d=r[l.type];return d({...l.attrs,className:a,children:i})}return i},t.node.text);return s?o:(0,A.jsx)("span",{className:`${a}`,children:t.node.text})}return e.text&&(e.text,t.node.text),(0,A.jsx)(A.Fragment,{children:t.node.text})},paragraph:t=>(0,A.jsx)("p",{className:e.p,children:t.children}),bulletList:t=>(0,A.jsx)("ul",{className:e.ul,children:t.children}),orderedList:t=>(0,A.jsx)("ol",{className:e.ol,children:t.children}),listItem:t=>(0,A.jsx)("li",{className:e.li,children:t.children}),codeBlock:t=>(0,A.jsx)("pre",{children:(0,A.jsx)("code",{className:e.code,children:t.children})}),heading:t=>{switch(t.node.attrs?.level){case 1:return(0,A.jsx)("h1",{className:e.h1,children:t.children});case 2:return(0,A.jsx)("h2",{className:e.h2,children:t.children});case 3:return(0,A.jsx)("h3",{className:e.h3,children:t.children});default:return(0,A.jsx)(A.Fragment,{children:t.children})}},hardBreak:()=>(0,A.jsx)("br",{}),image:t=>{let{src:a,alt:s}=t.node.attrs??{},o={url:a.split(/^\/media\//).join(""),metadata:{altText:s}};return(0,A.jsx)(N,{className:e.image,image:o})},img:t=>{let{src:a,alt:s}=t.node,o={url:a.split(/^\/media\//).join(""),metadata:{altText:s}};return(0,A.jsx)(N,{className:e.img,image:o})},youtube:t=>{let{src:a,start:s}=t.node.attrs,o=a.split("v=")[1];return(0,A.jsx)("iframe",{src:`https://www.youtube.com/embed/${o}?modestbranding=1${s?`&amp;start=${s}`:""}`,frameBorder:"0",allowFullScreen:!0,width:"100%",height:"auto",style:{aspectRatio:"4 / 3",maxWidth:"100%"}})},iframe:t=>{let{src:a,style:s,frameborder:o,allowfullscreen:i,referrerpolicy:l,aspectRatio:d,...m}=t.node?.attrs??t,u=typeof s=="string"?s?.split(";").reduce((x,V)=>{let[J,R]=V.split(":");return R!==void 0?{...x,[J]:R.trim()}:x},{}):s;if(d)return(0,A.jsx)("iframe",{src:a,style:{...u,width:"100%",aspectRatio:String(d),height:"auto"},frameBorder:o,allowFullScreen:i,referrerPolicy:l,...m});let c=!!(a.match(/youtube.com/)||a.match(/vimeo.com/)),H=!!a.match(/bandcamp.com/),q=!!a.match(/vimeo.com/);return(0,A.jsx)("iframe",{src:a,style:{...u,...c?{maxWidth:"100%",aspectRatio:"4 / 3",height:"auto"}:{},...H&&!u?.height?{width:"100%",maxWidth:"700px",height:"42px"}:{},...q&&!u?.height?{width:"100%",aspectRatio:m.width/m.height}:{}},frameBorder:o,allowFullScreen:i,referrerPolicy:l,...m})},linkCard:t=>{let{href:a,title:s,description:o,site:i,image:l}=t.node?.attrs??t;return(0,A.jsxs)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:e.linkCard??"my-4 block overflow-hidden bg-card no-underline transition-opacity hover:opacity-80",children:[l?(0,A.jsx)("img",{src:l,alt:s??"",className:"aspect-video w-full object-cover"}):null,(0,A.jsxs)("div",{className:"p-4",children:[s?(0,A.jsx)("h3",{className:"mb-2 text-base font-semibold text-primary",children:s}):null,i?(0,A.jsx)("span",{className:"text-xs text-secondary",children:i}):null,o?(0,A.jsx)("p",{className:"mt-2 text-sm text-secondary",children:o}):null]})]})}}},_=(e={})=>{let r=P(e);return{...r,p:r.paragraph,ul:r.bulletList,ol:r.orderedList,li:r.listItem,code:r.codeBlock,h1:n=>r.heading({...n,node:{attrs:{level:1}}}),h2:n=>r.heading({...n,node:{attrs:{level:2}}}),h3:n=>r.heading({...n,node:{attrs:{level:3}}}),img:n=>r.image({...n,node:{attrs:{src:n.src,alt:n.alt}}}),hr:n=>(0,A.jsx)("hr",{...n}),a:n=>(0,A.jsx)("a",{href:n.href,className:e.a,children:n.children}),span:({children:n})=>(0,A.jsx)("span",{children:n})}},U=e=>{let{node:r,handlers:n={}}=e,t={...P(e.classes),...n},a=[];if(r.content&&r.content.forEach((o,i)=>{a.push((0,A.jsx)(U,{node:o,handlers:t},`${o.type}- ${i} `))}),!(r.type in t))return console.warn("missing type",r),(0,A.jsx)(A.Fragment,{});let s=t[r.type];return(0,A.jsx)(s,{node:r,children:a})},ee=({content:e,contentStyles:r,className:n,components:t})=>{let{contentJSON:a}=e;return a?(0,A.jsxs)("div",{className:n,children:[(0,A.jsx)(b,{}),a.content.map((s,o)=>(0,A.jsx)(U,{classes:r,node:s,handlers:t},o))]}):e.content?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(b,{}),(0,A.jsx)(F.default,{className:n,options:{overrides:{..._(r)}},children:e.content.replaceAll(/(?:\n|\r\n)\*\*\*(?:\n|\r\n)/g,` *** `)})]}):null};0&&(module.exports={VenueContent}); //# sourceMappingURL=index.js.map