webim-adapter 2.10.0 → 2.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7494,10 +7494,12 @@ var wo = (e, t, n) => {
7494
7494
  };
7495
7495
  };
7496
7496
  function To({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], colKeys: i = [], heights: a = [], spans: c, linked: l, source: f, limit: p = 10, header: _ = !0, striped: v = !0, bordered: y = !1, compact: b = !1, padX: x, padY: S, paged: C, emptyText: w, stickyHeader: T, headerBg: E, headerColor: D, headerAlign: O, valign: k, borderColor: A, maxHeight: j, caption: M = "", captionHidden: N = !1, rowHeaders: P = !1, repeat: F = "", renderCell: I, style: L, nodeRef: R, edit: z }) {
7497
- let B = u(null), V = o(Kn), H = F && !f ? vo(er(V?.entry?.data, F)) : null, U = Co(H), W = u(null), [K, ee] = d(null), [q, te] = d(null), ne = (e, t) => () => ee({
7498
- r: e,
7499
- c: t
7500
- });
7497
+ let B = u(null), V = o(Kn), H = F && !f ? vo(er(V?.entry?.data, F)) : null, U = Co(H), W = u(null), [K, ee] = d(null), [q, te] = d(null), ne = (e, t) => () => {
7498
+ ee({
7499
+ r: e,
7500
+ c: t
7501
+ }), z?.wake?.(e, t);
7502
+ };
7501
7503
  s(() => {
7502
7504
  if (!z) return;
7503
7505
  let e = W.current, t = K && e?.querySelector(`[data-cell="${K.r}-${K.c}"]`);
@@ -74,7 +74,7 @@ Error generating stack: `+e.message+`
74
74
  .wb-tedit-sep { width: 1px; align-self: stretch; margin: 0 2px; background: rgba(148, 163, 184, 0.3); }
75
75
  .wb-tedit-at { font-size: 10px; color: #94a3b8; padding-right: 2px; }
76
76
  `,go=(e,t)=>e&&t?`cell-${e}-${t}`:``,_o=e=>{if(!e||typeof e!=`object`)return e??``;let t=String(e.text??``);return typeof e.href==`string`&&e.href?(0,G.jsx)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,style:{color:`var(--page-accent, #4f46e5)`},children:t}):t},vo=e=>(Array.isArray(e)?e:e==null?[]:[e]).map(e=>typeof e==`string`?e:e?.url).filter(e=>typeof e==`string`&&e.trim()),yo=e=>{if(!Number.isFinite(e)||e<0)return``;if(e<1024)return`${e} B`;let t=[`KB`,`MB`,`GB`,`TB`],n=e,r=-1;do n/=1024,r++;while(n>=1024&&r<t.length-1);return`${n.toFixed(1)} ${t[r]}`},bo=e=>{try{let t=new URL(e,typeof window>`u`?`http://localhost`:window.location.href),n=t.pathname.match(/^(.*\/files\/[0-9a-f-]{36})\/?$/i);return n?(t.pathname=`${n[1]}/meta`,t.toString()):null}catch{return null}},xo=new Map,So=e=>{let t=bo(e);if(!t)return Promise.resolve(null);if(!xo.has(t)){let e=e=>fetch(t,{credentials:e}).then(e=>e.ok?e.json():null);xo.set(t,e(`include`).catch(()=>e(`omit`)).then(e=>e?.payload??null).catch(()=>null).then(e=>(e||xo.delete(t),e)))}return xo.get(t)};function Co(e){let[t,n]=(0,l.useState)({});return(0,l.useEffect)(()=>{let t=!0;for(let r of e??[])So(r).then(e=>t&&n(t=>({...t,[r]:e})));return()=>{t=!1}},[(e??[]).join(`
77
- `)]),t}var wo=(e,t,n)=>{let r=String(t?.name??``),i=r.includes(`.`)?r.split(`.`).pop():String(t?.mime??``).split(`/`).pop();return{name:r,size:yo(Number(t?.size)),bytes:Number.isFinite(Number(t?.size))?Number(t.size):``,type:String(i??``).toUpperCase(),url:e,download:`${e}${e.includes(`?`)?`&`:`?`}download=1`,index:n+1}};function To({columns:e=[],rows:t=[],widths:n=[],rowKeys:r=[],colKeys:i=[],heights:a=[],spans:o,linked:s,source:c,limit:u=10,header:d=!0,striped:f=!0,bordered:p=!1,compact:m=!1,padX:h,padY:g,paged:_,emptyText:v,stickyHeader:y,headerBg:b,headerColor:x,headerAlign:S,valign:C,borderColor:w,maxHeight:T,caption:E=``,captionHidden:D=!1,rowHeaders:O=!1,repeat:k=``,renderCell:A,style:j,nodeRef:M,edit:N}){let P=(0,l.useRef)(null),F=(0,l.useContext)(qn),I=k&&!c?vo(tr(F?.entry?.data,k)):null,L=Co(I),R=(0,l.useRef)(null),[B,ee]=(0,l.useState)(null),[V,H]=(0,l.useState)(null),U=(e,t)=>()=>ee({r:e,c:t});(0,l.useEffect)(()=>{if(!N)return;let e=R.current,t=B&&e?.querySelector(`[data-cell="${B.r}-${B.c}"]`);if(!t){V&&H(null);return}let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i={top:r.bottom-n.top+4,left:Math.max(0,Math.min(r.left-n.left,n.width-mo))};(V?.top!==i.top||V?.left!==i.left)&&H(i)}),(0,l.useEffect)(()=>{if(!N||!B)return;let e=e=>{R.current?.contains(e.target)||ee(null)};return document.addEventListener(`mousedown`,e,!0),()=>document.removeEventListener(`mousedown`,e,!0)},[N,B]);let{tenant:te,apiUrl:ne,revision:re,locale:ie}=(0,l.useContext)(K),ae=(0,l.useContext)(Hn),oe=ae?.[c],se=_?Un(ae):1,[ce,le]=(0,l.useState)(null);if((0,l.useEffect)(()=>{if(!c||oe)return;let e=!0,t=Math.max(1,Number(u)||10),n=_&&!c.startsWith(`api:`)?`?offset=${(se-1)*t}&limit=${t}`:``,r=c.startsWith(`api:`)?`${ne}/data/${encodeURIComponent(c.slice(4))}`:`${ne}/dynamic/${encodeURIComponent(c)}${n}`;return fetch(r,{headers:te?{"x-tenant":te}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];return e&&le(n)}).catch(()=>e&&le([])),()=>{e=!1}},[re,c,te,ne,oe,_,se,u]),!e.length)return null;let ue=Math.max(1,Number(u)||10),de=c?_?oe||c.startsWith(`api:`)?(oe??ce??[]).slice((se-1)*ue,se*ue):(ce??[]).slice(0,ue):(oe??ce??[]).slice(0,ue):null,fe=de?de.map(t=>e.map(e=>rr(tr(t?.data,e.field)))):t,pe=!!c&&!(c&&!oe&&ce===null)&&fe.length===0,me=I&&A&&fe.length?[...I.map((e,t)=>({r:0,file:wo(e,L[e],t)})),...fe.slice(1).map((e,t)=>({r:t+1,file:null}))]:fe.map((e,t)=>({r:t,file:null})),he=(e,t)=>A(e,e=>ur(e,{...F?.entry??{},data:{...F?.entry?.data??{},[k]:t}},ie)),ge=m?{y:6,x:10}:{y:10,x:14},_e=`${Number.isFinite(Number(g))&&g!==``?Number(g):ge.y}px ${Number.isFinite(Number(h))&&h!==``?Number(h):ge.x}px`,ve=`1px solid ${typeof w==`string`&&w?w:`rgba(148, 163, 184, 0.35)`}`,ye=p?{border:ve}:{borderBottom:ve},be=Array.isArray(n)&&n.length===e.length&&n.every(e=>Number.isFinite(e)&&e>0),xe=[`left`,`center`,`right`],Se=t=>xe.includes(e[t]?.align)?e[t].align:``,Ce=e=>Se(e)||(xe.includes(S)?S:`left`),we=[`top`,`middle`,`bottom`],Te=t=>we.includes(e[t]?.valign)?e[t].valign:we.includes(C)?C:``,Ee=Number.isFinite(Number(T))&&Number(T)>0?Number(T):0,De=z(j),Oe=!Ee&&De&&De.maxHeight!==void 0?De.maxHeight:0,ke=Ee||Oe,Ae=Oe?{...De,maxHeight:void 0}:De,je=!!N&&N.rows!==!1,Me=t=>r=>{if(!N?.resize||t>=e.length-1)return;r.preventDefault(),r.stopPropagation();let i=P.current,a=i?i.clientWidth:0;if(!a)return;let o=be?[...n]:e.map(()=>100/e.length),s=r.clientX,c=o[t]+o[t+1],l=e=>{let n=(e.clientX-s)/a*100,r=Math.min(c-5,Math.max(5,o[t]+n)),i=[...o];i[t]=Math.round(r*10)/10,i[t+1]=Math.round((c-r)*10)/10,N.resize(i)},u=()=>{window.removeEventListener(`pointermove`,l),window.removeEventListener(`pointerup`,u)};window.addEventListener(`pointermove`,l),window.addEventListener(`pointerup`,u)},Ne=new Set;o&&fe.forEach((t,n)=>e.forEach((e,t)=>{let a=o[go(r[n],i[t])];if(!a)return;let s=Math.max(1,Number(a.c)||1),c=Math.max(1,Number(a.r)||1);for(let e=0;e<c;e++)for(let r=0;r<s;r++)(e||r)&&Ne.add(`${n+e},${t+r}`)}));let Pe=e=>t=>{if(!N?.resizeRow)return;t.preventDefault(),t.stopPropagation();let n=t.currentTarget.closest(`tr`);if(!n)return;let r=t.clientY,i=n.offsetHeight,a=t=>N.resizeRow(e,Math.max(20,Math.round(i+(t.clientY-r)))),o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o)};window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},Fe=(e,t,n,r)=>r?null:(0,G.jsx)(`span`,{className:`wb-tedit-btn`,role:`button`,"data-hint":t,onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:n,children:e},t),W=B&&B.r<fe.length&&B.c<e.length?B:null,Ie=(e,t)=>N?.labels?.[e]??t,Le=W?o?.[go(r[W.r],i[W.c])]:null,Re=Math.max(1,Number(Le?.c)||1),ze=Math.max(1,Number(Le?.r)||1);return(0,G.jsxs)(`div`,{ref:e=>{R.current=e,typeof M==`function`&&M(e)},style:{width:`100%`,...N?{position:`relative`}:null,...Ae},children:[N&&(0,G.jsx)(`style`,{children:ho}),N&&W&&V&&(0,G.jsxs)(`div`,{className:`wb-tedit-bar`,style:{top:V.top,left:V.left},onMouseDown:e=>e.stopPropagation(),children:[(0,G.jsx)(`span`,{className:`wb-tedit-at`,children:`R${W.r+1}·C${W.c+1}`}),Fe(`+↑`,Ie(`rowAbove`,`Insert row above`),()=>N.addRow(W.r-1)),Fe(`+↓`,Ie(`rowBelow`,`Insert row below`),()=>N.addRow(W.r)),Fe(`↑`,Ie(`rowUp`,`Move row up`),()=>N.moveRow(W.r,-1),W.r===0),Fe(`↓`,Ie(`rowDown`,`Move row down`),()=>N.moveRow(W.r,1),W.r>=fe.length-1),Fe(`✕ row`,Ie(`rowDelete`,`Delete row`),()=>N.dropRow(W.r),fe.length<=1),(0,G.jsx)(`span`,{className:`wb-tedit-sep`}),Fe(`+←`,Ie(`colLeft`,`Insert column left`),()=>N.addColumn(W.c-1)),Fe(`+→`,Ie(`colRight`,`Insert column right`),()=>N.addColumn(W.c)),Fe(`←`,Ie(`colMoveLeft`,`Move column left`),()=>N.moveColumn(W.c,-1),W.c===0),Fe(`→`,Ie(`colMoveRight`,`Move column right`),()=>N.moveColumn(W.c,1),W.c>=e.length-1),Fe(`✕ col`,Ie(`colDelete`,`Delete column`),()=>N.dropColumn(W.c),e.length<=1),(0,G.jsx)(`span`,{className:`wb-tedit-sep`}),Fe(`↔`,Ie(`mergeRight`,`Merge with the cell on the right`),()=>N.merge(W.r,W.c,`right`),W.c+Re>=e.length),Fe(`↕`,Ie(`mergeDown`,`Merge with the cell below`),()=>N.merge(W.r,W.c,`down`),W.r+ze>=fe.length),Fe(`⤫`,Ie(`split`,`Split this cell`),()=>N.split(W.r,W.c),Re===1&&ze===1)]}),(0,G.jsx)(`div`,{style:{width:`100%`,overflowX:`auto`,...ke?{maxHeight:ke,overflowY:`auto`}:null},children:(0,G.jsxs)(`table`,{ref:P,...q(`table`),style:{width:`100%`,borderCollapse:y&&d!==!1?`separate`:`collapse`,borderSpacing:0,fontSize:14,...be?{tableLayout:`fixed`}:null,...p?{border:ve}:{}},children:[typeof E==`string`&&E.trim()?(0,G.jsx)(`caption`,{...q(`caption`),style:D?ot:{captionSide:`top`,textAlign:`left`,fontWeight:600,fontSize:15,padding:`0 0 8px`},children:E}):null,be&&(0,G.jsx)(`colgroup`,{children:n.map((e,t)=>(0,G.jsx)(`col`,{style:{width:`${e}%`}},t))}),d===!1?null:(0,G.jsx)(`thead`,{children:(0,G.jsx)(`tr`,{...q(`header-row`),children:e.map((t,n)=>(0,G.jsx)(`th`,{...q(`header-cell`),scope:`col`,className:N?`wb-tedit-head`:void 0,style:{textAlign:Ce(n),fontWeight:600,padding:_e,...typeof x==`string`&&x?{color:x}:null,background:typeof b==`string`&&b?b:y?`var(--page-surface, #f2f2f2)`:`rgba(148, 163, 184, 0.12)`,...y?{position:`sticky`,top:0,zIndex:2}:N?{position:`relative`}:null,...ye},children:N?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(po,{value:t.label??t,onCommit:e=>N.header(n,e),hint:Ie(`editCell`,`Double-click to edit`),style:{paddingRight:6}}),n<e.length-1&&(0,G.jsx)(`span`,{className:`wb-tedit-grip`,title:Ie(`colWidth`,`Drag to resize the column`),onPointerDown:Me(n)})]}):t.label??t},n))})}),(0,G.jsxs)(`tbody`,{children:[pe&&(0,G.jsx)(`tr`,{children:(0,G.jsx)(`td`,{colSpan:e.length,...q(`empty`),style:{padding:_e,textAlign:`center`,opacity:.6,...ye},children:v||`No data yet`})}),me.map(({r:t,file:n},c)=>{let l=fe[t];return(0,G.jsx)(`tr`,{...q(`row`,c%2==1&&`row-alt`),className:N?`wb-tedit-row`:void 0,style:{...f&&c%2==1?{background:`rgba(148, 163, 184, 0.07)`}:null,...Number.isFinite(Number(a?.[t]))&&a[t]>0?{height:a[t]}:null},children:e.map((e,a)=>{if(Ne.has(`${t},${a}`))return null;let c=go(r[t],i[a]),u=n?he(c,n):s?.[c],d=o?.[c],f=Math.max(1,Number(d?.c)||1),p=Math.max(1,Number(d?.r)||1),m=O&&a===0?`th`:`td`;return(0,G.jsxs)(m,{...q(`cell`,m===`th`&&`row-header`),scope:m===`th`?`row`:void 0,className:N?`wb-tedit-cell${B?.r===t&&B?.c===a?` wb-tedit-cellon`:``}`:void 0,onMouseDownCapture:je?U(t,a):void 0,"data-cell":N?`${t}-${a}`:void 0,colSpan:f>1?f:void 0,rowSpan:p>1?p:void 0,style:{padding:_e,...m===`th`?{textAlign:`left`,fontWeight:600}:null,...Se(a)?{textAlign:Se(a)}:null,...Te(a)?{verticalAlign:Te(a)}:null,...N?{position:`relative`}:null,...ye},children:[u??_o(l?.[a]),N&&je&&(0,G.jsx)(`span`,{className:`wb-tedit-rowgrip`,title:Ie(`rowHeight`,`Drag to set the row height — double-click to fit the content`),onPointerDown:Pe(t),onDoubleClick:()=>N.resizeRow(t,0)})]},c||a)})},n?`${r[t]??t}-${c}`:r[t]??t)})]})]})})]})}var Eo={small:{cell:62,font:10.5,head:11,title:15,pad:4,gap:2},medium:{cell:92,font:12,head:12,title:18,pad:6,gap:3},large:{cell:124,font:13,head:13,title:22,pad:8,gap:4}},Do=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,Oo=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),ko=366;function Ao(e,t={}){let n=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`&&e.id):[],r=e=>Array.isArray(e)?e[0]:e,i=e=>e==null?``:rr(e),a=e=>{let t=i(r(e)),n=t?new Date(t):null;return n&&!Number.isNaN(n.getTime())?n:null};return n.map(e=>{let n=e.data??{},o=a(n[t.startField]);return o?{key:e.id,title:i(n[t.titleField||`name`])||i(n.name)||`Untitled`,start:o,end:a(n[t.endField]),href:t.hrefField?i(n[t.hrefField]):``,color:t.colorField?i(r(n[t.colorField])):``}:null}).filter(Boolean)}function jo(e){return(Array.isArray(e)?e:[]).map((e,t)=>{let n=e?.start?new Date(e.start):null;if(!n||Number.isNaN(n.getTime()))return null;let r=e?.end?new Date(e.end):null;return{key:e.key??`event-${t}`,title:e.title??``,start:n,end:r&&!Number.isNaN(r.getTime())?r:null,href:e.href??``,color:e.color??``}}).filter(Boolean)}function Mo(e){let t=new Map;for(let n of e){let e=Oo(n.start),r=n.end?Oo(n.end):e,i=Math.min(Math.max(0,Math.round((r-e)/864e5)),ko);for(let r=0;r<=i;r+=1){let i=Do(new Date(e.getFullYear(),e.getMonth(),e.getDate()+r));t.has(i)||t.set(i,[]),t.get(i).push(n)}}for(let e of t.values())e.sort((e,t)=>e.start-t.start);return t}function No({events:e=[],source:t=``,titleField:n=``,startField:r=``,endField:i=``,hrefField:a=``,colorField:o=``,variant:s=`month`,size:c=`medium`,accent:u=``,eventBg:d=``,eventText:f=``,borderColor:p=``,weekStart:m=`monday`,max:h=3,emptyText:g=`No events`,style:_,nodeRef:v,interactive:y=!0}){let{tenant:b,apiUrl:x,revision:S,locale:C}=(0,l.useContext)(K),w=(0,l.useContext)(Hn)?.[t],[T,E]=(0,l.useState)(null),[D,O]=(0,l.useState)(()=>{let e=new Date;return{year:e.getFullYear(),month:e.getMonth()}});(0,l.useEffect)(()=>{if(!t||w)return;let e=!0;return fetch(`${x}/dynamic/${encodeURIComponent(t)}`,{headers:b?{"x-tenant":b}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];e&&E(n)}).catch(()=>e&&E([])),()=>{e=!1}},[S,t,b,x,w]);let k=Eo[c]??Eo.medium,A=u||`var(--page-accent, #4f46e5)`,j=p||`var(--page-border, rgba(148, 163, 184, 0.35))`,M=d||A,N=f||`var(--page-accent-text, #ffffff)`,P=t?Ao(w??T??[],{titleField:n,startField:r,endField:i,hrefField:a,colorField:o}):jo(e),F=Mo(P),I=C||void 0,L=(e,t)=>{let n=(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`span`,{...q(`event-dot`),style:{width:6,height:6,borderRadius:`50%`,background:e.color||N,flexShrink:0,opacity:e.color?1:.85}}),(0,G.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.title})]}),r={display:`flex`,alignItems:`center`,gap:5,background:e.color?`color-mix(in srgb, ${e.color} 18%, transparent)`:M,color:e.color?`inherit`:N,borderRadius:4,padding:`2px 5px`,fontSize:k.font,lineHeight:1.35,textDecoration:`none`,...t};return e.href&&y?(0,G.jsx)(`a`,{...q(`event`),href:e.href,style:r,title:e.title,children:n},e.key):(0,G.jsx)(`div`,{...q(`event`),style:r,title:e.title,children:n},e.key)},R=new Intl.DateTimeFormat(I,{month:`long`,year:`numeric`}).format(new Date(D.year,D.month,1)),B=e=>O(t=>{let n=new Date(t.year,t.month+e,1);return{year:n.getFullYear(),month:n.getMonth()}}),ee=(e,t)=>(0,G.jsx)(`button`,{type:`button`,"aria-label":e,...q(`nav-button`),onClick:()=>B(t),style:{background:`transparent`,border:`1px solid ${j}`,borderRadius:6,color:`inherit`,cursor:`pointer`,fontSize:k.head,lineHeight:1,padding:`4px 8px`},children:t<0?`‹`:`›`}),V=(0,G.jsxs)(`div`,{...q(`header`),style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:k.pad+2},children:[(0,G.jsx)(`div`,{...q(`month`),style:{fontSize:k.title,fontWeight:700,flexGrow:1,fontFamily:`var(--page-heading-font, inherit)`},children:R}),ee(`Previous month`,-1),ee(`Next month`,1)]});if(s===`list`){let e=P.filter(e=>e.start.getFullYear()===D.year&&e.start.getMonth()===D.month).sort((e,t)=>e.start-t.start),t=new Intl.DateTimeFormat(I,{day:`numeric`,month:`short`,hour:`2-digit`,minute:`2-digit`});return(0,G.jsxs)(`div`,{ref:v,style:{width:`100%`,...z(_)},children:[V,e.length?(0,G.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:k.gap+2},children:e.map(e=>(0,G.jsxs)(`div`,{...q(`agenda-row`),style:{display:`flex`,alignItems:`center`,gap:10,borderBottom:`1px solid ${j}`,paddingBottom:k.gap+2},children:[(0,G.jsx)(`span`,{...q(`agenda-date`),style:{fontSize:k.font,opacity:.7,minWidth:96},children:t.format(e.start)}),L(e,{flexGrow:1,minWidth:0})]},e.key))}):(0,G.jsx)(`div`,{...q(`empty`),style:{fontSize:k.font,opacity:.6,padding:k.pad*2},children:g})]})}let H=new Date(D.year,D.month,1),U=m===`sunday`?0:1,te=(H.getDay()-U+7)%7,ne=new Date(D.year,D.month+1,0).getDate(),re=Math.ceil((te+ne)/7),ie=Do(new Date),ae=new Intl.DateTimeFormat(I,{weekday:`short`}),oe=[];for(let e=0;e<re*7;e+=1){let t=e-te+1,n=t>=1&&t<=ne,r=Do(new Date(D.year,D.month,t)),i=n?F.get(r)??[]:[],a=i.slice(0,Math.max(1,h)),o=n&&r===ie;oe.push((0,G.jsxs)(`div`,{...q(`day`,!n&&`day-outside`,o&&`day-today`),style:{minHeight:k.cell,borderTop:`1px solid ${j}`,borderLeft:`1px solid ${j}`,padding:k.pad,display:`flex`,flexDirection:`column`,gap:k.gap,opacity:n?1:.35,minWidth:0},children:[(0,G.jsx)(`span`,{...q(`day-number`,o&&`day-number-today`),style:{fontSize:k.font,fontWeight:o?700:400,alignSelf:`flex-start`,borderRadius:`999px`,padding:o?`1px 6px`:0,background:o?A:`transparent`,color:o?N:`inherit`},children:n?t:new Date(D.year,D.month,t).getDate()}),a.map(e=>L(e)),i.length>a.length&&(0,G.jsx)(`span`,{...q(`more`),style:{fontSize:k.font,opacity:.6},children:`+${i.length-a.length}`})]},e))}return(0,G.jsxs)(`div`,{ref:v,style:{width:`100%`,...z(_)},children:[V,(0,G.jsxs)(`div`,{...q(`grid`),style:{display:`grid`,gridTemplateColumns:`repeat(7, minmax(0, 1fr))`},children:[Array.from({length:7},(e,t)=>(0,G.jsx)(`div`,{...q(`weekday`),style:{fontSize:k.head,fontWeight:600,opacity:.7,textAlign:`center`,padding:`0 0 ${k.pad}px`},children:ae.format(new Date(2024,0,7+U+t))},`head-${t}`)),oe]}),(0,G.jsx)(`div`,{style:{borderTop:`1px solid ${j}`}})]})}var Po={small:36,medium:56,large:88};function Fo(e,t={}){let n=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`):[],r=e=>e==null?``:rr(e);return n.map(e=>{let n=e.data??e,i=tr(n,t.imageField),a=Array.isArray(i)?i[0]:i,o=a&&typeof a==`object`?a.url??a.src??``:a,s=t.nameField?r(tr(n,t.nameField)):r(n.name);return{src:typeof o==`string`?o.trim():``,alt:s,href:t.hrefField?r(tr(n,t.hrefField)):``}}).filter(e=>e.src)}function Io({logos:e=[],source:t=``,imageField:n=``,nameField:r=``,hrefField:i=``,variant:a=`step`,size:o=`medium`,perView:s=5,gap:c=48,hold:u=3,slideMs:d=500,direction:f=`left`,arrows:p=`show`,pauseOnHover:m=!0,grayscale:h=!0,newTab:g=!0,emptyText:_=``,style:v,nodeRef:y,inert:b}){let{tenant:x,apiUrl:S,revision:C,locale:w}=(0,l.useContext)(K),T=at(w),E=(0,l.useContext)(Hn)?.[t],[D,O]=(0,l.useState)(null),k=(0,l.useRef)(null),A=(0,l.useRef)(null),[j,M]=(0,l.useState)(0),[N,P]=(0,l.useState)(0),[F,I]=(0,l.useState)(0),[L,R]=(0,l.useState)(!0),[B,ee]=(0,l.useState)(!1),[V,H]=(0,l.useState)(!1),[U,te]=(0,l.useState)(!1),[ne,re]=(0,l.useState)(!1);(0,l.useEffect)(()=>{if(!t||E)return;let e=!0;return fetch(`${S}/dynamic/${encodeURIComponent(t)}`,{headers:x?{"x-tenant":x}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];e&&O(n)}).catch(()=>e&&O([])),()=>{e=!1}},[C,t,x,S,E]),(0,l.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>re(e.matches);return t(),e.addEventListener?.(`change`,t),()=>e.removeEventListener?.(`change`,t)},[]),(0,l.useEffect)(()=>{let e=A.current;if(!e)return;let t=()=>M(e.clientWidth);if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]),(0,l.useEffect)(()=>{let e=k.current;if(!e)return;let t=!0,n=()=>{let n=[...e.querySelectorAll(`img`)].filter(e=>e.complete&&e.naturalHeight).map(e=>e.naturalWidth/e.naturalHeight*oe);t&&n.length&&P(Math.ceil(Math.max(...n)))};n();let r=[...e.querySelectorAll(`img`)].filter(e=>!e.complete);return r.forEach(e=>e.addEventListener(`load`,n)),()=>{t=!1,r.forEach(e=>e.removeEventListener(`load`,n))}});let ie=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`&&e.src):[],ae=t?Fo(E??D??[],{imageField:n,nameField:r,hrefField:i}):ie,oe=Po[o]??Po.medium,se=Number.isFinite(Number(c))?Math.max(0,Number(c)):48,ce=a===`marquee`?`step`:a,le=Math.min(3e4,Math.max(300,(Number(u)||3)*1e3)),ue=Math.min(3e3,Math.max(100,Number(d)||500)),de=Math.min(12,Math.max(1,Math.round(Number(s)||5))),fe=(N||oe*3)+se,pe=j?Math.max(1,Math.floor(j/fe)):de,me=Math.min(de,pe),he=j?Math.min(fe,j/me):fe;if(!ae.length)return(0,G.jsx)(`div`,{ref:y,style:{width:`100%`,...z(v)},children:b?(0,G.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,flexWrap:`wrap`,gap:se},children:[0,1,2,3,4].map(e=>(0,G.jsx)(`div`,{style:{height:oe,width:oe*3,border:`1px dashed var(--page-border, rgba(148, 163, 184, 0.5))`,borderRadius:6,display:`flex`,alignItems:`center`,justifyContent:`center`,fontSize:Math.max(10,Math.round(oe/4)),opacity:.45,...Fe},children:`LOGO`},e))}):_?(0,G.jsx)(`div`,{...q(`empty`),style:{fontSize:13,opacity:.6,textAlign:`center`,padding:16},children:_}):null});let ge=ae.length,_e=ce===`step`&&ge>me,ve=ce===`slider`,ye=_e&&!b&&!B&&!V&&!U&&!ne,be=f===`right`,xe=be?ge:0,Se=_e?[...ae,...ae]:ae,Ce=_e?F*he:0,we=(e,t,n)=>{let r=(0,G.jsx)(`img`,{...q(`logo`),src:e.src,alt:e.alt??``,style:{height:oe,width:`auto`,maxWidth:`100%`,objectFit:`contain`,display:`block`}}),i=_e?{width:he,flex:`0 0 auto`,padding:`0 ${se/2}px`,justifyContent:`center`}:{};return e.href&&!b?(0,G.jsx)(`a`,{href:e.href,...q(`item`),className:`wb-logo`,title:e.alt||void 0,style:i,...g===!1?{}:{target:`_blank`,rel:`noopener noreferrer`},...n?{"aria-hidden":`true`,tabIndex:-1}:{},children:r},`${n?`c`:`o`}-${t}`):(0,G.jsx)(`div`,{...q(`item`),className:`wb-logo`,style:i,...n?{"aria-hidden":`true`}:{},children:r},`${n?`c`:`o`}-${t}`)},Te=(0,G.jsx)(`div`,{ref:k,...q(`track`),className:`wb-logos-track`,style:{display:`flex`,alignItems:`center`,..._e?{width:Se.length*he,transform:`translateX(-${Ce}px)`,transition:L?`transform ${ue}ms ease`:`none`}:ve?{gap:se,overflowX:`auto`,scrollBehavior:`smooth`,scrollSnapType:`x proximity`}:{gap:se,flexWrap:`wrap`,justifyContent:`center`}},children:Se.map((e,t)=>we(e,t,_e&&t>=ge))}),Ee=e=>{if(ve){let t=k.current;t&&t.scrollBy({left:e*Math.max(120,t.clientWidth*.8),behavior:`smooth`});return}let t=F+e;if(t>=0&&t<=ge){R(!0),I(t);return}let n=t<0?ge:0;R(!1),I(n),requestAnimationFrame(()=>requestAnimationFrame(()=>{R(!0),I(n+e)}))},De=p===!1||p===`off`?`off`:p===`hover`?`hover`:`show`,Oe=De!==`off`&&(ve?j>0:_e),ke=e=>(0,G.jsx)(`button`,{type:`button`,"aria-label":T(e<0?`prevLogos`:`nextLogos`),...q(`arrow`,e<0?`arrow-prev`:`arrow-next`),onClick:()=>Ee(e),className:`wb-logos-arrow${De===`hover`?` wb-logos-arrow-shy`:``}`,style:{[e<0?`left`:`right`]:0},children:e<0?`‹`:`›`});return(0,G.jsxs)(`div`,{ref:e=>{A.current=e,y&&y(e)},className:`wb-logos`,style:{width:`100%`,position:`relative`,overflow:`hidden`,...z(v)},onMouseEnter:m===!1?void 0:()=>ee(!0),onMouseLeave:m===!1?void 0:()=>ee(!1),onFocus:()=>H(!0),onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||H(!1)},children:[(0,G.jsx)(`style`,{children:`
77
+ `)]),t}var wo=(e,t,n)=>{let r=String(t?.name??``),i=r.includes(`.`)?r.split(`.`).pop():String(t?.mime??``).split(`/`).pop();return{name:r,size:yo(Number(t?.size)),bytes:Number.isFinite(Number(t?.size))?Number(t.size):``,type:String(i??``).toUpperCase(),url:e,download:`${e}${e.includes(`?`)?`&`:`?`}download=1`,index:n+1}};function To({columns:e=[],rows:t=[],widths:n=[],rowKeys:r=[],colKeys:i=[],heights:a=[],spans:o,linked:s,source:c,limit:u=10,header:d=!0,striped:f=!0,bordered:p=!1,compact:m=!1,padX:h,padY:g,paged:_,emptyText:v,stickyHeader:y,headerBg:b,headerColor:x,headerAlign:S,valign:C,borderColor:w,maxHeight:T,caption:E=``,captionHidden:D=!1,rowHeaders:O=!1,repeat:k=``,renderCell:A,style:j,nodeRef:M,edit:N}){let P=(0,l.useRef)(null),F=(0,l.useContext)(qn),I=k&&!c?vo(tr(F?.entry?.data,k)):null,L=Co(I),R=(0,l.useRef)(null),[B,ee]=(0,l.useState)(null),[V,H]=(0,l.useState)(null),U=(e,t)=>()=>{ee({r:e,c:t}),N?.wake?.(e,t)};(0,l.useEffect)(()=>{if(!N)return;let e=R.current,t=B&&e?.querySelector(`[data-cell="${B.r}-${B.c}"]`);if(!t){V&&H(null);return}let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i={top:r.bottom-n.top+4,left:Math.max(0,Math.min(r.left-n.left,n.width-mo))};(V?.top!==i.top||V?.left!==i.left)&&H(i)}),(0,l.useEffect)(()=>{if(!N||!B)return;let e=e=>{R.current?.contains(e.target)||ee(null)};return document.addEventListener(`mousedown`,e,!0),()=>document.removeEventListener(`mousedown`,e,!0)},[N,B]);let{tenant:te,apiUrl:ne,revision:re,locale:ie}=(0,l.useContext)(K),ae=(0,l.useContext)(Hn),oe=ae?.[c],se=_?Un(ae):1,[ce,le]=(0,l.useState)(null);if((0,l.useEffect)(()=>{if(!c||oe)return;let e=!0,t=Math.max(1,Number(u)||10),n=_&&!c.startsWith(`api:`)?`?offset=${(se-1)*t}&limit=${t}`:``,r=c.startsWith(`api:`)?`${ne}/data/${encodeURIComponent(c.slice(4))}`:`${ne}/dynamic/${encodeURIComponent(c)}${n}`;return fetch(r,{headers:te?{"x-tenant":te}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];return e&&le(n)}).catch(()=>e&&le([])),()=>{e=!1}},[re,c,te,ne,oe,_,se,u]),!e.length)return null;let ue=Math.max(1,Number(u)||10),de=c?_?oe||c.startsWith(`api:`)?(oe??ce??[]).slice((se-1)*ue,se*ue):(ce??[]).slice(0,ue):(oe??ce??[]).slice(0,ue):null,fe=de?de.map(t=>e.map(e=>rr(tr(t?.data,e.field)))):t,pe=!!c&&!(c&&!oe&&ce===null)&&fe.length===0,me=I&&A&&fe.length?[...I.map((e,t)=>({r:0,file:wo(e,L[e],t)})),...fe.slice(1).map((e,t)=>({r:t+1,file:null}))]:fe.map((e,t)=>({r:t,file:null})),he=(e,t)=>A(e,e=>ur(e,{...F?.entry??{},data:{...F?.entry?.data??{},[k]:t}},ie)),ge=m?{y:6,x:10}:{y:10,x:14},_e=`${Number.isFinite(Number(g))&&g!==``?Number(g):ge.y}px ${Number.isFinite(Number(h))&&h!==``?Number(h):ge.x}px`,ve=`1px solid ${typeof w==`string`&&w?w:`rgba(148, 163, 184, 0.35)`}`,ye=p?{border:ve}:{borderBottom:ve},be=Array.isArray(n)&&n.length===e.length&&n.every(e=>Number.isFinite(e)&&e>0),xe=[`left`,`center`,`right`],Se=t=>xe.includes(e[t]?.align)?e[t].align:``,Ce=e=>Se(e)||(xe.includes(S)?S:`left`),we=[`top`,`middle`,`bottom`],Te=t=>we.includes(e[t]?.valign)?e[t].valign:we.includes(C)?C:``,Ee=Number.isFinite(Number(T))&&Number(T)>0?Number(T):0,De=z(j),Oe=!Ee&&De&&De.maxHeight!==void 0?De.maxHeight:0,ke=Ee||Oe,Ae=Oe?{...De,maxHeight:void 0}:De,je=!!N&&N.rows!==!1,Me=t=>r=>{if(!N?.resize||t>=e.length-1)return;r.preventDefault(),r.stopPropagation();let i=P.current,a=i?i.clientWidth:0;if(!a)return;let o=be?[...n]:e.map(()=>100/e.length),s=r.clientX,c=o[t]+o[t+1],l=e=>{let n=(e.clientX-s)/a*100,r=Math.min(c-5,Math.max(5,o[t]+n)),i=[...o];i[t]=Math.round(r*10)/10,i[t+1]=Math.round((c-r)*10)/10,N.resize(i)},u=()=>{window.removeEventListener(`pointermove`,l),window.removeEventListener(`pointerup`,u)};window.addEventListener(`pointermove`,l),window.addEventListener(`pointerup`,u)},Ne=new Set;o&&fe.forEach((t,n)=>e.forEach((e,t)=>{let a=o[go(r[n],i[t])];if(!a)return;let s=Math.max(1,Number(a.c)||1),c=Math.max(1,Number(a.r)||1);for(let e=0;e<c;e++)for(let r=0;r<s;r++)(e||r)&&Ne.add(`${n+e},${t+r}`)}));let Pe=e=>t=>{if(!N?.resizeRow)return;t.preventDefault(),t.stopPropagation();let n=t.currentTarget.closest(`tr`);if(!n)return;let r=t.clientY,i=n.offsetHeight,a=t=>N.resizeRow(e,Math.max(20,Math.round(i+(t.clientY-r)))),o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o)};window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},Fe=(e,t,n,r)=>r?null:(0,G.jsx)(`span`,{className:`wb-tedit-btn`,role:`button`,"data-hint":t,onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:n,children:e},t),W=B&&B.r<fe.length&&B.c<e.length?B:null,Ie=(e,t)=>N?.labels?.[e]??t,Le=W?o?.[go(r[W.r],i[W.c])]:null,Re=Math.max(1,Number(Le?.c)||1),ze=Math.max(1,Number(Le?.r)||1);return(0,G.jsxs)(`div`,{ref:e=>{R.current=e,typeof M==`function`&&M(e)},style:{width:`100%`,...N?{position:`relative`}:null,...Ae},children:[N&&(0,G.jsx)(`style`,{children:ho}),N&&W&&V&&(0,G.jsxs)(`div`,{className:`wb-tedit-bar`,style:{top:V.top,left:V.left},onMouseDown:e=>e.stopPropagation(),children:[(0,G.jsx)(`span`,{className:`wb-tedit-at`,children:`R${W.r+1}·C${W.c+1}`}),Fe(`+↑`,Ie(`rowAbove`,`Insert row above`),()=>N.addRow(W.r-1)),Fe(`+↓`,Ie(`rowBelow`,`Insert row below`),()=>N.addRow(W.r)),Fe(`↑`,Ie(`rowUp`,`Move row up`),()=>N.moveRow(W.r,-1),W.r===0),Fe(`↓`,Ie(`rowDown`,`Move row down`),()=>N.moveRow(W.r,1),W.r>=fe.length-1),Fe(`✕ row`,Ie(`rowDelete`,`Delete row`),()=>N.dropRow(W.r),fe.length<=1),(0,G.jsx)(`span`,{className:`wb-tedit-sep`}),Fe(`+←`,Ie(`colLeft`,`Insert column left`),()=>N.addColumn(W.c-1)),Fe(`+→`,Ie(`colRight`,`Insert column right`),()=>N.addColumn(W.c)),Fe(`←`,Ie(`colMoveLeft`,`Move column left`),()=>N.moveColumn(W.c,-1),W.c===0),Fe(`→`,Ie(`colMoveRight`,`Move column right`),()=>N.moveColumn(W.c,1),W.c>=e.length-1),Fe(`✕ col`,Ie(`colDelete`,`Delete column`),()=>N.dropColumn(W.c),e.length<=1),(0,G.jsx)(`span`,{className:`wb-tedit-sep`}),Fe(`↔`,Ie(`mergeRight`,`Merge with the cell on the right`),()=>N.merge(W.r,W.c,`right`),W.c+Re>=e.length),Fe(`↕`,Ie(`mergeDown`,`Merge with the cell below`),()=>N.merge(W.r,W.c,`down`),W.r+ze>=fe.length),Fe(`⤫`,Ie(`split`,`Split this cell`),()=>N.split(W.r,W.c),Re===1&&ze===1)]}),(0,G.jsx)(`div`,{style:{width:`100%`,overflowX:`auto`,...ke?{maxHeight:ke,overflowY:`auto`}:null},children:(0,G.jsxs)(`table`,{ref:P,...q(`table`),style:{width:`100%`,borderCollapse:y&&d!==!1?`separate`:`collapse`,borderSpacing:0,fontSize:14,...be?{tableLayout:`fixed`}:null,...p?{border:ve}:{}},children:[typeof E==`string`&&E.trim()?(0,G.jsx)(`caption`,{...q(`caption`),style:D?ot:{captionSide:`top`,textAlign:`left`,fontWeight:600,fontSize:15,padding:`0 0 8px`},children:E}):null,be&&(0,G.jsx)(`colgroup`,{children:n.map((e,t)=>(0,G.jsx)(`col`,{style:{width:`${e}%`}},t))}),d===!1?null:(0,G.jsx)(`thead`,{children:(0,G.jsx)(`tr`,{...q(`header-row`),children:e.map((t,n)=>(0,G.jsx)(`th`,{...q(`header-cell`),scope:`col`,className:N?`wb-tedit-head`:void 0,style:{textAlign:Ce(n),fontWeight:600,padding:_e,...typeof x==`string`&&x?{color:x}:null,background:typeof b==`string`&&b?b:y?`var(--page-surface, #f2f2f2)`:`rgba(148, 163, 184, 0.12)`,...y?{position:`sticky`,top:0,zIndex:2}:N?{position:`relative`}:null,...ye},children:N?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(po,{value:t.label??t,onCommit:e=>N.header(n,e),hint:Ie(`editCell`,`Double-click to edit`),style:{paddingRight:6}}),n<e.length-1&&(0,G.jsx)(`span`,{className:`wb-tedit-grip`,title:Ie(`colWidth`,`Drag to resize the column`),onPointerDown:Me(n)})]}):t.label??t},n))})}),(0,G.jsxs)(`tbody`,{children:[pe&&(0,G.jsx)(`tr`,{children:(0,G.jsx)(`td`,{colSpan:e.length,...q(`empty`),style:{padding:_e,textAlign:`center`,opacity:.6,...ye},children:v||`No data yet`})}),me.map(({r:t,file:n},c)=>{let l=fe[t];return(0,G.jsx)(`tr`,{...q(`row`,c%2==1&&`row-alt`),className:N?`wb-tedit-row`:void 0,style:{...f&&c%2==1?{background:`rgba(148, 163, 184, 0.07)`}:null,...Number.isFinite(Number(a?.[t]))&&a[t]>0?{height:a[t]}:null},children:e.map((e,a)=>{if(Ne.has(`${t},${a}`))return null;let c=go(r[t],i[a]),u=n?he(c,n):s?.[c],d=o?.[c],f=Math.max(1,Number(d?.c)||1),p=Math.max(1,Number(d?.r)||1),m=O&&a===0?`th`:`td`;return(0,G.jsxs)(m,{...q(`cell`,m===`th`&&`row-header`),scope:m===`th`?`row`:void 0,className:N?`wb-tedit-cell${B?.r===t&&B?.c===a?` wb-tedit-cellon`:``}`:void 0,onMouseDownCapture:je?U(t,a):void 0,"data-cell":N?`${t}-${a}`:void 0,colSpan:f>1?f:void 0,rowSpan:p>1?p:void 0,style:{padding:_e,...m===`th`?{textAlign:`left`,fontWeight:600}:null,...Se(a)?{textAlign:Se(a)}:null,...Te(a)?{verticalAlign:Te(a)}:null,...N?{position:`relative`}:null,...ye},children:[u??_o(l?.[a]),N&&je&&(0,G.jsx)(`span`,{className:`wb-tedit-rowgrip`,title:Ie(`rowHeight`,`Drag to set the row height — double-click to fit the content`),onPointerDown:Pe(t),onDoubleClick:()=>N.resizeRow(t,0)})]},c||a)})},n?`${r[t]??t}-${c}`:r[t]??t)})]})]})})]})}var Eo={small:{cell:62,font:10.5,head:11,title:15,pad:4,gap:2},medium:{cell:92,font:12,head:12,title:18,pad:6,gap:3},large:{cell:124,font:13,head:13,title:22,pad:8,gap:4}},Do=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,Oo=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),ko=366;function Ao(e,t={}){let n=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`&&e.id):[],r=e=>Array.isArray(e)?e[0]:e,i=e=>e==null?``:rr(e),a=e=>{let t=i(r(e)),n=t?new Date(t):null;return n&&!Number.isNaN(n.getTime())?n:null};return n.map(e=>{let n=e.data??{},o=a(n[t.startField]);return o?{key:e.id,title:i(n[t.titleField||`name`])||i(n.name)||`Untitled`,start:o,end:a(n[t.endField]),href:t.hrefField?i(n[t.hrefField]):``,color:t.colorField?i(r(n[t.colorField])):``}:null}).filter(Boolean)}function jo(e){return(Array.isArray(e)?e:[]).map((e,t)=>{let n=e?.start?new Date(e.start):null;if(!n||Number.isNaN(n.getTime()))return null;let r=e?.end?new Date(e.end):null;return{key:e.key??`event-${t}`,title:e.title??``,start:n,end:r&&!Number.isNaN(r.getTime())?r:null,href:e.href??``,color:e.color??``}}).filter(Boolean)}function Mo(e){let t=new Map;for(let n of e){let e=Oo(n.start),r=n.end?Oo(n.end):e,i=Math.min(Math.max(0,Math.round((r-e)/864e5)),ko);for(let r=0;r<=i;r+=1){let i=Do(new Date(e.getFullYear(),e.getMonth(),e.getDate()+r));t.has(i)||t.set(i,[]),t.get(i).push(n)}}for(let e of t.values())e.sort((e,t)=>e.start-t.start);return t}function No({events:e=[],source:t=``,titleField:n=``,startField:r=``,endField:i=``,hrefField:a=``,colorField:o=``,variant:s=`month`,size:c=`medium`,accent:u=``,eventBg:d=``,eventText:f=``,borderColor:p=``,weekStart:m=`monday`,max:h=3,emptyText:g=`No events`,style:_,nodeRef:v,interactive:y=!0}){let{tenant:b,apiUrl:x,revision:S,locale:C}=(0,l.useContext)(K),w=(0,l.useContext)(Hn)?.[t],[T,E]=(0,l.useState)(null),[D,O]=(0,l.useState)(()=>{let e=new Date;return{year:e.getFullYear(),month:e.getMonth()}});(0,l.useEffect)(()=>{if(!t||w)return;let e=!0;return fetch(`${x}/dynamic/${encodeURIComponent(t)}`,{headers:b?{"x-tenant":b}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];e&&E(n)}).catch(()=>e&&E([])),()=>{e=!1}},[S,t,b,x,w]);let k=Eo[c]??Eo.medium,A=u||`var(--page-accent, #4f46e5)`,j=p||`var(--page-border, rgba(148, 163, 184, 0.35))`,M=d||A,N=f||`var(--page-accent-text, #ffffff)`,P=t?Ao(w??T??[],{titleField:n,startField:r,endField:i,hrefField:a,colorField:o}):jo(e),F=Mo(P),I=C||void 0,L=(e,t)=>{let n=(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`span`,{...q(`event-dot`),style:{width:6,height:6,borderRadius:`50%`,background:e.color||N,flexShrink:0,opacity:e.color?1:.85}}),(0,G.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.title})]}),r={display:`flex`,alignItems:`center`,gap:5,background:e.color?`color-mix(in srgb, ${e.color} 18%, transparent)`:M,color:e.color?`inherit`:N,borderRadius:4,padding:`2px 5px`,fontSize:k.font,lineHeight:1.35,textDecoration:`none`,...t};return e.href&&y?(0,G.jsx)(`a`,{...q(`event`),href:e.href,style:r,title:e.title,children:n},e.key):(0,G.jsx)(`div`,{...q(`event`),style:r,title:e.title,children:n},e.key)},R=new Intl.DateTimeFormat(I,{month:`long`,year:`numeric`}).format(new Date(D.year,D.month,1)),B=e=>O(t=>{let n=new Date(t.year,t.month+e,1);return{year:n.getFullYear(),month:n.getMonth()}}),ee=(e,t)=>(0,G.jsx)(`button`,{type:`button`,"aria-label":e,...q(`nav-button`),onClick:()=>B(t),style:{background:`transparent`,border:`1px solid ${j}`,borderRadius:6,color:`inherit`,cursor:`pointer`,fontSize:k.head,lineHeight:1,padding:`4px 8px`},children:t<0?`‹`:`›`}),V=(0,G.jsxs)(`div`,{...q(`header`),style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:k.pad+2},children:[(0,G.jsx)(`div`,{...q(`month`),style:{fontSize:k.title,fontWeight:700,flexGrow:1,fontFamily:`var(--page-heading-font, inherit)`},children:R}),ee(`Previous month`,-1),ee(`Next month`,1)]});if(s===`list`){let e=P.filter(e=>e.start.getFullYear()===D.year&&e.start.getMonth()===D.month).sort((e,t)=>e.start-t.start),t=new Intl.DateTimeFormat(I,{day:`numeric`,month:`short`,hour:`2-digit`,minute:`2-digit`});return(0,G.jsxs)(`div`,{ref:v,style:{width:`100%`,...z(_)},children:[V,e.length?(0,G.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:k.gap+2},children:e.map(e=>(0,G.jsxs)(`div`,{...q(`agenda-row`),style:{display:`flex`,alignItems:`center`,gap:10,borderBottom:`1px solid ${j}`,paddingBottom:k.gap+2},children:[(0,G.jsx)(`span`,{...q(`agenda-date`),style:{fontSize:k.font,opacity:.7,minWidth:96},children:t.format(e.start)}),L(e,{flexGrow:1,minWidth:0})]},e.key))}):(0,G.jsx)(`div`,{...q(`empty`),style:{fontSize:k.font,opacity:.6,padding:k.pad*2},children:g})]})}let H=new Date(D.year,D.month,1),U=m===`sunday`?0:1,te=(H.getDay()-U+7)%7,ne=new Date(D.year,D.month+1,0).getDate(),re=Math.ceil((te+ne)/7),ie=Do(new Date),ae=new Intl.DateTimeFormat(I,{weekday:`short`}),oe=[];for(let e=0;e<re*7;e+=1){let t=e-te+1,n=t>=1&&t<=ne,r=Do(new Date(D.year,D.month,t)),i=n?F.get(r)??[]:[],a=i.slice(0,Math.max(1,h)),o=n&&r===ie;oe.push((0,G.jsxs)(`div`,{...q(`day`,!n&&`day-outside`,o&&`day-today`),style:{minHeight:k.cell,borderTop:`1px solid ${j}`,borderLeft:`1px solid ${j}`,padding:k.pad,display:`flex`,flexDirection:`column`,gap:k.gap,opacity:n?1:.35,minWidth:0},children:[(0,G.jsx)(`span`,{...q(`day-number`,o&&`day-number-today`),style:{fontSize:k.font,fontWeight:o?700:400,alignSelf:`flex-start`,borderRadius:`999px`,padding:o?`1px 6px`:0,background:o?A:`transparent`,color:o?N:`inherit`},children:n?t:new Date(D.year,D.month,t).getDate()}),a.map(e=>L(e)),i.length>a.length&&(0,G.jsx)(`span`,{...q(`more`),style:{fontSize:k.font,opacity:.6},children:`+${i.length-a.length}`})]},e))}return(0,G.jsxs)(`div`,{ref:v,style:{width:`100%`,...z(_)},children:[V,(0,G.jsxs)(`div`,{...q(`grid`),style:{display:`grid`,gridTemplateColumns:`repeat(7, minmax(0, 1fr))`},children:[Array.from({length:7},(e,t)=>(0,G.jsx)(`div`,{...q(`weekday`),style:{fontSize:k.head,fontWeight:600,opacity:.7,textAlign:`center`,padding:`0 0 ${k.pad}px`},children:ae.format(new Date(2024,0,7+U+t))},`head-${t}`)),oe]}),(0,G.jsx)(`div`,{style:{borderTop:`1px solid ${j}`}})]})}var Po={small:36,medium:56,large:88};function Fo(e,t={}){let n=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`):[],r=e=>e==null?``:rr(e);return n.map(e=>{let n=e.data??e,i=tr(n,t.imageField),a=Array.isArray(i)?i[0]:i,o=a&&typeof a==`object`?a.url??a.src??``:a,s=t.nameField?r(tr(n,t.nameField)):r(n.name);return{src:typeof o==`string`?o.trim():``,alt:s,href:t.hrefField?r(tr(n,t.hrefField)):``}}).filter(e=>e.src)}function Io({logos:e=[],source:t=``,imageField:n=``,nameField:r=``,hrefField:i=``,variant:a=`step`,size:o=`medium`,perView:s=5,gap:c=48,hold:u=3,slideMs:d=500,direction:f=`left`,arrows:p=`show`,pauseOnHover:m=!0,grayscale:h=!0,newTab:g=!0,emptyText:_=``,style:v,nodeRef:y,inert:b}){let{tenant:x,apiUrl:S,revision:C,locale:w}=(0,l.useContext)(K),T=at(w),E=(0,l.useContext)(Hn)?.[t],[D,O]=(0,l.useState)(null),k=(0,l.useRef)(null),A=(0,l.useRef)(null),[j,M]=(0,l.useState)(0),[N,P]=(0,l.useState)(0),[F,I]=(0,l.useState)(0),[L,R]=(0,l.useState)(!0),[B,ee]=(0,l.useState)(!1),[V,H]=(0,l.useState)(!1),[U,te]=(0,l.useState)(!1),[ne,re]=(0,l.useState)(!1);(0,l.useEffect)(()=>{if(!t||E)return;let e=!0;return fetch(`${S}/dynamic/${encodeURIComponent(t)}`,{headers:x?{"x-tenant":x}:{}}).then(e=>e.json()).then(t=>{let n=Array.isArray(t?.payload)?t.payload:Array.isArray(t?.payload?.data)?t.payload.data:[];e&&O(n)}).catch(()=>e&&O([])),()=>{e=!1}},[C,t,x,S,E]),(0,l.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>re(e.matches);return t(),e.addEventListener?.(`change`,t),()=>e.removeEventListener?.(`change`,t)},[]),(0,l.useEffect)(()=>{let e=A.current;if(!e)return;let t=()=>M(e.clientWidth);if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]),(0,l.useEffect)(()=>{let e=k.current;if(!e)return;let t=!0,n=()=>{let n=[...e.querySelectorAll(`img`)].filter(e=>e.complete&&e.naturalHeight).map(e=>e.naturalWidth/e.naturalHeight*oe);t&&n.length&&P(Math.ceil(Math.max(...n)))};n();let r=[...e.querySelectorAll(`img`)].filter(e=>!e.complete);return r.forEach(e=>e.addEventListener(`load`,n)),()=>{t=!1,r.forEach(e=>e.removeEventListener(`load`,n))}});let ie=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`&&e.src):[],ae=t?Fo(E??D??[],{imageField:n,nameField:r,hrefField:i}):ie,oe=Po[o]??Po.medium,se=Number.isFinite(Number(c))?Math.max(0,Number(c)):48,ce=a===`marquee`?`step`:a,le=Math.min(3e4,Math.max(300,(Number(u)||3)*1e3)),ue=Math.min(3e3,Math.max(100,Number(d)||500)),de=Math.min(12,Math.max(1,Math.round(Number(s)||5))),fe=(N||oe*3)+se,pe=j?Math.max(1,Math.floor(j/fe)):de,me=Math.min(de,pe),he=j?Math.min(fe,j/me):fe;if(!ae.length)return(0,G.jsx)(`div`,{ref:y,style:{width:`100%`,...z(v)},children:b?(0,G.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,flexWrap:`wrap`,gap:se},children:[0,1,2,3,4].map(e=>(0,G.jsx)(`div`,{style:{height:oe,width:oe*3,border:`1px dashed var(--page-border, rgba(148, 163, 184, 0.5))`,borderRadius:6,display:`flex`,alignItems:`center`,justifyContent:`center`,fontSize:Math.max(10,Math.round(oe/4)),opacity:.45,...Fe},children:`LOGO`},e))}):_?(0,G.jsx)(`div`,{...q(`empty`),style:{fontSize:13,opacity:.6,textAlign:`center`,padding:16},children:_}):null});let ge=ae.length,_e=ce===`step`&&ge>me,ve=ce===`slider`,ye=_e&&!b&&!B&&!V&&!U&&!ne,be=f===`right`,xe=be?ge:0,Se=_e?[...ae,...ae]:ae,Ce=_e?F*he:0,we=(e,t,n)=>{let r=(0,G.jsx)(`img`,{...q(`logo`),src:e.src,alt:e.alt??``,style:{height:oe,width:`auto`,maxWidth:`100%`,objectFit:`contain`,display:`block`}}),i=_e?{width:he,flex:`0 0 auto`,padding:`0 ${se/2}px`,justifyContent:`center`}:{};return e.href&&!b?(0,G.jsx)(`a`,{href:e.href,...q(`item`),className:`wb-logo`,title:e.alt||void 0,style:i,...g===!1?{}:{target:`_blank`,rel:`noopener noreferrer`},...n?{"aria-hidden":`true`,tabIndex:-1}:{},children:r},`${n?`c`:`o`}-${t}`):(0,G.jsx)(`div`,{...q(`item`),className:`wb-logo`,style:i,...n?{"aria-hidden":`true`}:{},children:r},`${n?`c`:`o`}-${t}`)},Te=(0,G.jsx)(`div`,{ref:k,...q(`track`),className:`wb-logos-track`,style:{display:`flex`,alignItems:`center`,..._e?{width:Se.length*he,transform:`translateX(-${Ce}px)`,transition:L?`transform ${ue}ms ease`:`none`}:ve?{gap:se,overflowX:`auto`,scrollBehavior:`smooth`,scrollSnapType:`x proximity`}:{gap:se,flexWrap:`wrap`,justifyContent:`center`}},children:Se.map((e,t)=>we(e,t,_e&&t>=ge))}),Ee=e=>{if(ve){let t=k.current;t&&t.scrollBy({left:e*Math.max(120,t.clientWidth*.8),behavior:`smooth`});return}let t=F+e;if(t>=0&&t<=ge){R(!0),I(t);return}let n=t<0?ge:0;R(!1),I(n),requestAnimationFrame(()=>requestAnimationFrame(()=>{R(!0),I(n+e)}))},De=p===!1||p===`off`?`off`:p===`hover`?`hover`:`show`,Oe=De!==`off`&&(ve?j>0:_e),ke=e=>(0,G.jsx)(`button`,{type:`button`,"aria-label":T(e<0?`prevLogos`:`nextLogos`),...q(`arrow`,e<0?`arrow-prev`:`arrow-next`),onClick:()=>Ee(e),className:`wb-logos-arrow${De===`hover`?` wb-logos-arrow-shy`:``}`,style:{[e<0?`left`:`right`]:0},children:e<0?`‹`:`›`});return(0,G.jsxs)(`div`,{ref:e=>{A.current=e,y&&y(e)},className:`wb-logos`,style:{width:`100%`,position:`relative`,overflow:`hidden`,...z(v)},onMouseEnter:m===!1?void 0:()=>ee(!0),onMouseLeave:m===!1?void 0:()=>ee(!1),onFocus:()=>H(!0),onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||H(!1)},children:[(0,G.jsx)(`style`,{children:`
78
78
  .wb-logos .wb-logo { display: flex; align-items: center; flex-shrink: 0; text-decoration: none; box-sizing: border-box; }
79
79
  .wb-logos .wb-logo img { filter: ${h===!1?`none`:`grayscale(1)`}; opacity: ${h===!1?1:.7}; transition: filter .2s ease, opacity .2s ease; }
80
80
  .wb-logos .wb-logo:hover img { filter: none; opacity: 1; }
@@ -7451,10 +7451,12 @@ var Co = (e, t, n) => {
7451
7451
  };
7452
7452
  };
7453
7453
  function wo({ columns: e = [], rows: t = [], widths: n = [], rowKeys: r = [], colKeys: i = [], heights: a = [], spans: o, linked: l, source: u, limit: p = 10, header: m = !0, striped: v = !0, bordered: y = !1, compact: b = !1, padX: x, padY: S, paged: C, emptyText: w, stickyHeader: T, headerBg: E, headerColor: D, headerAlign: O, valign: k, borderColor: A, maxHeight: j, caption: M = "", captionHidden: N = !1, rowHeaders: P = !1, repeat: F = "", renderCell: I, style: L, nodeRef: R, edit: z }) {
7454
- let B = d(null), V = s(Gn), H = F && !u ? _o($n(V?.entry?.data, F)) : null, U = So(H), W = d(null), [G, ee] = f(null), [K, te] = f(null), ne = (e, t) => () => ee({
7455
- r: e,
7456
- c: t
7457
- });
7454
+ let B = d(null), V = s(Gn), H = F && !u ? _o($n(V?.entry?.data, F)) : null, U = So(H), W = d(null), [G, ee] = f(null), [K, te] = f(null), ne = (e, t) => () => {
7455
+ ee({
7456
+ r: e,
7457
+ c: t
7458
+ }), z?.wake?.(e, t);
7459
+ };
7458
7460
  c(() => {
7459
7461
  if (!z) return;
7460
7462
  let e = W.current, t = G && e?.querySelector(`[data-cell="${G.r}-${G.c}"]`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "webim-adapter",
3
- "version": "2.10.0",
3
+ "version": "2.10.2",
4
4
  "description": "Render Web-IM builder pages inside any React app",
5
5
  "author": "Orhan POLAT",
6
6
  "license": "ISC",