@lokalise/harmony 1.6.0-exp-jwtutils.16 → 1.6.0-exp-jwtutils.17
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.
- package/dist/harmony.cjs +1 -1
- package/dist/harmony.mjs +70 -69
- package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +0 -3
- package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +0 -3
- package/dist/types/src/features/auth/frontend/hooks/useGetPromotedClassicSessionJwtQuery.d.ts +0 -3
- package/dist/types/src/features/auth/index.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/{userGetTeamUsersQuery.d.ts → useGetTeamUsersQuery.d.ts} +1 -1
- package/dist/types/src/features/publicApi/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/harmony.cjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
"use strict";var wt=Object.defineProperty;var It=(e,t,n)=>t in e?wt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var we=(e,t,n)=>It(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),g=require("react"),m=require("@lokalise/louis"),o=require("zod"),M=require("@lokalise/frontend-http-client"),xt=require("@lokalise/universal-ts-utils/api-contracts/apiContracts"),me=require("@tanstack/react-query"),Je=require("@lokalise/universal-ts-utils/node"),Qe=require("date-fns"),St=require("date-fns-tz");function Nt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const O=Nt(g);var F=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ve(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Q,Ie;function he(){if(Ie)return Q;Ie=1;function e(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}return Q=e,Q}var V,xe;function Pt(){if(xe)return V;xe=1;var e=typeof F=="object"&&F&&F.Object===Object&&F;return V=e,V}var Y,Se;function Ye(){if(Se)return Y;Se=1;var e=Pt(),t=typeof self=="object"&&self&&self.Object===Object&&self,n=e||t||Function("return this")();return Y=n,Y}var Z,Ne;function kt(){if(Ne)return Z;Ne=1;var e=Ye(),t=function(){return e.Date.now()};return Z=t,Z}var X,Pe;function Et(){if(Pe)return X;Pe=1;var e=/\s/;function t(n){for(var r=n.length;r--&&e.test(n.charAt(r)););return r}return X=t,X}var ee,ke;function Ct(){if(ke)return ee;ke=1;var e=Et(),t=/^\s+/;function n(r){return r&&r.slice(0,e(r)+1).replace(t,"")}return ee=n,ee}var te,Ee;function Ze(){if(Ee)return te;Ee=1;var e=Ye(),t=e.Symbol;return te=t,te}var ne,Ce;function Rt(){if(Ce)return ne;Ce=1;var e=Ze(),t=Object.prototype,n=t.hasOwnProperty,r=t.toString,s=e?e.toStringTag:void 0;function i(c){var u=n.call(c,s),d=c[s];try{c[s]=void 0;var l=!0}catch{}var f=r.call(c);return l&&(u?c[s]=d:delete c[s]),f}return ne=i,ne}var re,Re;function At(){if(Re)return re;Re=1;var e=Object.prototype,t=e.toString;function n(r){return t.call(r)}return re=n,re}var se,Ae;function zt(){if(Ae)return se;Ae=1;var e=Ze(),t=Rt(),n=At(),r="[object Null]",s="[object Undefined]",i=e?e.toStringTag:void 0;function c(u){return u==null?u===void 0?s:r:i&&i in Object(u)?t(u):n(u)}return se=c,se}var ae,ze;function Lt(){if(ze)return ae;ze=1;function e(t){return t!=null&&typeof t=="object"}return ae=e,ae}var ie,Le;function Ot(){if(Le)return ie;Le=1;var e=zt(),t=Lt(),n="[object Symbol]";function r(s){return typeof s=="symbol"||t(s)&&e(s)==n}return ie=r,ie}var oe,Oe;function qt(){if(Oe)return oe;Oe=1;var e=Ct(),t=he(),n=Ot(),r=NaN,s=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;function d(l){if(typeof l=="number")return l;if(n(l))return r;if(t(l)){var f=typeof l.valueOf=="function"?l.valueOf():l;l=t(f)?f+"":f}if(typeof l!="string")return l===0?l:+l;l=e(l);var p=i.test(l);return p||c.test(l)?u(l.slice(2),p?2:8):s.test(l)?r:+l}return oe=d,oe}var ce,qe;function Xe(){if(qe)return ce;qe=1;var e=he(),t=kt(),n=qt(),r="Expected a function",s=Math.max,i=Math.min;function c(u,d,l){var f,p,j,y,_,w,x=0,N=!1,b=!1,S=!0;if(typeof u!="function")throw new TypeError(r);d=n(d)||0,e(l)&&(N=!!l.leading,b="maxWait"in l,j=b?s(n(l.maxWait)||0,d):j,S="trailing"in l?!!l.trailing:S);function T(h){var P=f,L=p;return f=p=void 0,x=h,y=u.apply(L,P),y}function v(h){return x=h,_=setTimeout($,d),N?T(h):y}function D(h){var P=h-w,L=h-x,ye=d-P;return b?i(ye,j-L):ye}function Te(h){var P=h-w,L=h-x;return w===void 0||P>=d||P<0||b&&L>=j}function $(){var h=t();if(Te(h))return je(h);_=setTimeout($,D(h))}function je(h){return _=void 0,S&&f?T(h):(f=p=void 0,y)}function jt(){_!==void 0&&clearTimeout(_),x=0,f=w=p=_=void 0}function yt(){return _===void 0?y:je(t())}function J(){var h=t(),P=Te(h);if(f=arguments,p=this,w=h,P){if(_===void 0)return v(w);if(b)return clearTimeout(_),_=setTimeout($,d),T(w)}return _===void 0&&(_=setTimeout($,d)),y}return J.cancel=jt,J.flush=yt,J}return ce=c,ce}var Mt=Xe();const Ut=Ve(Mt);var le,Me;function Bt(){if(Me)return le;Me=1;var e=Xe(),t=he(),n="Expected a function";function r(s,i,c){var u=!0,d=!0;if(typeof s!="function")throw new TypeError(n);return t(c)&&(u="leading"in c?!!c.leading:u,d="trailing"in c?!!c.trailing:d),e(s,i,{leading:u,maxWait:i,trailing:d})}return le=r,le}var Dt=Bt();const $t=Ve(Dt),Ft=(e,t,n,r)=>{switch(t){case"debounce":return Ut(e,n,r);case"throttle":return $t(e,n,r);default:return e}},Gt=e=>{const t=O.useRef(e);return O.useEffect(()=>{t.current=e}),O.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])},Ht=e=>{const[t,n]=O.useState((e==null?void 0:e.current)||null);return e&&setTimeout(()=>{e.current!==t&&n(e.current)},0),{refProxy:O.useMemo(()=>new Proxy(s=>{s!==t&&n(s)},{get(s,i){return i==="current"?t:s[i]},set(s,i,c){return i==="current"?n(c):s[i]=c,!0}}),[t]),refElement:t,setRefElement:n}},Wt=(e,t)=>t==="border-box"?{width:e.borderBoxSize[0].inlineSize,height:e.borderBoxSize[0].blockSize}:t==="content-box"?{width:e.contentBoxSize[0].inlineSize,height:e.contentBoxSize[0].blockSize}:{width:e.contentRect.width,height:e.contentRect.height};function Kt({skipOnMount:e=!1,refreshMode:t,refreshRate:n=1e3,refreshOptions:r,handleWidth:s=!0,handleHeight:i=!0,targetRef:c,observerOptions:u,onResize:d}={}){const l=g.useRef(e),f=Gt(d),[p,j]=g.useState({width:void 0,height:void 0}),{refProxy:y,refElement:_}=Ht(c),{box:w}=u||{},x=g.useCallback(b=>{if(!s&&!i)return;if(l.current){l.current=!1;return}const S=(T,v)=>s&&T.width!==v.width||i&&T.height!==v.height;b.forEach(T=>{const v=Wt(T,w);j(D=>S(D,v)?(f==null||f({width:v.width,height:v.height,entry:T}),v):D)})},[s,i,l,w]),N=g.useCallback(Ft(x,t,n,r),[x,t,n,r]);return g.useEffect(()=>{let b;return _?(b=new window.ResizeObserver(N),b.observe(_,u)):(p.width||p.height)&&(f==null||f({width:null,height:null,entry:null}),j({width:void 0,height:void 0})),()=>{var S,T,v;(S=b==null?void 0:b.disconnect)===null||S===void 0||S.call(b),(v=(T=N).cancel)===null||v===void 0||v.call(T)}},[N,_]),Object.assign({ref:y},p)}function et(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(n=et(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function C(){for(var e,t,n=0,r="",s=arguments.length;n<s;n++)(e=arguments[n])&&(t=et(e))&&(r&&(r+=" "),r+=t);return r}const Jt="_headerContainer_1cubo_1",Qt="_navigationTabList_1cubo_8",Vt="_navigationTab_1cubo_8",Yt="_headerContent_1cubo_34",Zt="_staticEnabled_1cubo_50",A={headerContainer:Jt,navigationTabList:Qt,navigationTab:Vt,headerContent:Yt,staticEnabled:Zt},Xt=77,q=({sticky:e,children:t})=>{const{ref:n,height:r}=Kt({refreshMode:"debounce",refreshRate:0}),[s,i]=g.useState(!1),c=()=>s?!e:!0;g.useEffect(()=>{const d=()=>{i(window.scrollY>0)};return window.addEventListener("scroll",d),()=>window.removeEventListener("scroll",d)},[]);const u=`${r||Xt}px`;return a.jsx("div",{style:{minHeight:u},children:a.jsx("div",{children:a.jsxs("div",{ref:n,className:C(A.headerContent,{[A.staticEnabled]:c()}),children:[a.jsx(q.Header,{}),a.jsx(q.Tabs,{}),t]})})})};q.Header=({children:e})=>a.jsx("div",{className:A.headerContainer,children:e});q.Tabs=({children:e})=>a.jsx("div",{className:"flex justify-between gap-2 nowrap",children:e});const en="_sidebarContainer_bmdti_1",tn={sidebarContainer:en},nn="_logoLink_1baxb_1",rn={logoLink:nn},sn=({src:e,href:t="/",ariaLabel:n="Home",alt:r="Lokalise"})=>a.jsx("a",{className:rn.logoLink,href:t,"aria-label":n,children:a.jsx("img",{src:e,alt:r})}),an="_link_1weq1_1",on="_active_1weq1_18",Ue={link:an,active:on},cn=({label:e,to:t,icon:n})=>a.jsx(m.Tooltip,{placement:"right",tooltip:e,children:a.jsx(m.Link,{className:C(Ue.link,{[Ue.active]:window.location.pathname.startsWith(t)}),href:t,children:a.jsx(n,{size:"25px"})})}),ln="_dropdownButton_hwh0c_1",un="_dropdownButtonActive_hwh0c_18",Be={dropdownButton:ln,dropdownButtonActive:un},dn=({children:e,icon:t})=>a.jsx(m.Menu,{menuButton:({opened:n})=>a.jsx(m.Tooltip,{placement:"right",tooltip:"Help",children:a.jsx("button",{type:"button",className:C(Be.dropdownButton,{[Be.dropdownButtonActive]:n}),children:a.jsx(t,{size:"25px"})})}),children:a.jsx(m.MenuList,{placement:"right-start",children:e})}),fn="_iconContainer_nz34m_1",mn={iconContainer:fn},tt=({className:e=""})=>a.jsx("div",{"aria-label":"Upgrade Icon",className:C(mn.iconContainer,"flex-row","items-center","justify-center",e),children:a.jsx(m.CaretUpIcon,{})}),hn="_menuContainer_wbu3u_5",gn="_profileButton_wbu3u_16",bn="_profileImage_wbu3u_29",_n="_profileImageHighlight_wbu3u_37",pn="_profileImageUpgradeIcon_wbu3u_41",vn="_userIconWrapper_wbu3u_47",k={menuContainer:hn,profileButton:gn,profileImage:bn,profileImageHighlight:_n,profileImageUpgradeIcon:pn,userIconWrapper:vn},nt=g.createContext({}),U=()=>g.useContext(nt),Tn=({children:e})=>{const{currentTeam:t,otherTeams:n,showUpgradeCta:r,showBillingButton:s,allowTeamCreation:i,isLimitedView:c,isProviderAlpha:u,canAccessTeamSettings:d,isEndOfTrialActive:l,isTeamSuspended:f}=U();return a.jsx(m.Menu,{menuButton:()=>a.jsxs("button",{className:k.profileButton,"aria-label":"Profile menu",type:"button",children:[t!=null&&t.logoUrl?a.jsx("img",{src:t.logoUrl,className:C(k.profileImage,{[k.profileImageHighlight]:r}),alt:"Team Logo"}):a.jsx("div",{className:C(k.userIconWrapper,"flex-row","align-center","items-center",{[k.profileImageHighlight]:r}),children:a.jsx(m.UserIcon,{size:"25px"})}),r&&a.jsx(tt,{className:k.profileImageUpgradeIcon})]}),children:a.jsx(m.MenuList,{placement:"right-end",className:k.menuContainer,children:e({allowTeamCreation:i,otherTeams:n,isLimitedView:c,canAccessTeamSettings:d,isEndOfTrialActive:l,isTeamSuspended:f,showBillingButton:s,isProviderAlpha:u})})})},ge=0,rt=9999,st=[150,151,250,251],at=[152,153,252,253],it=[154,155,157,158,254,255,258,354,355,358],ot=[156,159,160,256,259,260],be=9998,W=e=>e===ge,_e=e=>e===rt,jn=e=>st.includes(e),yn=e=>at.includes(e),wn=e=>it.includes(e),In=e=>ot.includes(e),xn=e=>e>ge&&e<be,Sn=e=>e===be,Nn=/\n/,De=(e,t,n)=>e.split(t).flatMap((r,s)=>s!==0?[g.cloneElement(n,{key:Math.random().toString(32).slice(0,10)}),r]:r),Pn=(e,t,n)=>typeof e=="string"?De(e,t,n):e.flatMap(r=>typeof r=="string"?De(r,t,n):r),kn=e=>Pn(e,Nn,a.jsx("br",{})),En=/(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi,Cn=e=>e.match(En)??[],$e=(e,t,n)=>{const r=e.split(t);if(r.length===1)return e;const s=[];return r[0]!==""&&s.push(r[0]),r.shift(),r[r.length-1]===""&&r.pop(),s.push(a.jsx("a",{href:t,target:"_blank",rel:"noreferrer noopener",children:t},t+n)),s.push(r.join(t)),s.filter(i=>i!=="")},Fe=e=>{const t=Cn(e);return t!=null&&t.length?t.reduce((n,r,s)=>typeof n=="string"?$e(n,r,s):n.flatMap(i=>typeof i=="string"?$e(i,r,s):i),e):e},Rn=e=>typeof e=="string"?Fe(e):e.flatMap(t=>typeof t=="string"?Fe(t):t,e),An=(e,t="PP")=>Qe.format(e,t),zn=(e,t,n="PP")=>Qe.format(St.toZonedTime(e,t),n),Ln=e=>{g.useEffect(e,[])},On=({children:e,config:t})=>{const{teams:n,currentTeamId:r,planId:s,isLimitedView:i,isTeamSuspended:c,canAccessTeamSettings:u,isEndOfTrialActive:d}=t,l=n.find(b=>b.id===r),f=n.filter(b=>b.id!==r),p=(l==null?void 0:l.role)??"",j=["biller","owner"].includes(p),y=W(s)||_e(s),N={...t,currentTeam:l,otherTeams:f,canChangeBilling:j,isOnFreeOrTrialPlan:y,showUpgradeCta:!i&&y&&j&&!c,showBillingButton:!i&&u&&j,allowTeamCreation:!i&&!d};return a.jsx(nt.Provider,{value:N,children:e})},qn=({config:e,children:t})=>a.jsx(On,{config:e,children:a.jsx(Tn,{children:t})}),Mn="_container_q5pot_1",Un="_profileEmail_q5pot_5",Ge={container:Mn,profileEmail:Un},Bn=({href:e,onClick:t,userEmail:n,hideBottomDivider:r})=>{const{isEndOfTrialActive:s,isTeamSuspended:i}=U();return s||i?null:a.jsxs(a.Fragment,{children:[a.jsx(m.MenuItem,{href:e,onClick:()=>{t==null||t()},children:a.jsxs("div",{className:`flex-col ${Ge.container}`,children:[a.jsx("span",{children:"Profile Settings"}),a.jsx("span",{className:Ge.profileEmail,children:n})]})}),!r&&a.jsx(m.MenuDivider,{})]})},Dn="_wrapper_15d85_1",$n="_profileImage_15d85_14",Fn="_teamName_15d85_22",Gn="_planLabel_15d85_29",Hn="_membership_15d85_38",Wn="_defaultProfileImage_15d85_44",R={wrapper:Dn,profileImage:$n,teamName:Fn,planLabel:Gn,membership:Hn,defaultProfileImage:Wn},ct=({team:e,onClick:t,hidePlanLabel:n})=>{const{currentTeam:r,planId:s}=U(),i=e||r;if(!i)return null;const c=W(s)?"Free":_e(s)?"Trial":void 0,u=t?m.MenuItem:"div";return a.jsxs(u,{className:`flex-row gap-2 flex-nowrap items-center ${R.wrapper}`,...t&&{onClick:()=>t(i)},children:[i.logoUrl?a.jsx("img",{className:R.profileImage,src:i.logoUrl,alt:"Team Logo"}):a.jsx("span",{className:`flex-row justify-center items-center ${R.defaultProfileImage}`,children:a.jsx(m.UserIcon,{size:"25px"})}),a.jsxs("div",{className:"flex-col items-start",children:[a.jsxs("div",{className:"flex-row items-center flex-nowrap gap-2",children:[a.jsx("span",{title:i.name,className:R.teamName,children:i.name}),c&&!n&&a.jsx("span",{className:`flex-row justify-center items-center ${R.planLabel}`,children:c})]}),a.jsx("span",{className:R.membership,children:i.role})]})]})},Kn="_teamsContainer_1t68g_1",Jn={teamsContainer:Kn},Qn=({onSwitchTeam:e})=>{const{otherTeams:t}=U();return t.length===0?null:a.jsx("div",{className:`flex-col items-stretch ${Jn.teamsContainer}`,children:t.map(n=>a.jsx(ct,{team:n,onClick:e,hidePlanLabel:!0},n.id))})},Vn="_container_1u995_1",Yn="_planCta_1u995_15",Zn="_upgradeIconWrapper_1u995_19",ue={container:Vn,planCta:Yn,upgradeIconWrapper:Zn},Xn=({upgradeOptionHref:e})=>{const{planId:t,trialDaysLeft:n,showUpgradeCta:r}=U();if(!r)return null;const c=W(t)?"Your team is currently on the Free plan":`Free trial ends in ${n} ${n===1?"day":"days"}`;return a.jsxs(m.MenuItem,{href:e,className:`flex-col gap-1 items-start ${ue.container}`,children:[a.jsx("span",{className:ue.planCta,children:c}),a.jsxs("div",{className:`flex-row items-center gap-1 ${ue.upgradeIconWrapper}`,children:[a.jsx(tt,{}),a.jsx("span",{children:"See upgrade options"})]})]})},I=({children:e,...t})=>a.jsx("nav",{...t,className:tn.sidebarContainer,children:e});I.Top=({children:e})=>a.jsx("div",{children:e});I.Bottom=({children:e})=>a.jsx("div",{children:e});I.Avatar=sn;I.IconLink=cn;I.Menu=dn;I.ProfileMenu=qn;I.TeamSwitch=Qn;I.TeamMenuItem=ct;I.UpgradeMenuItem=Xn;I.ProfileSettingsMenuItem=Bn;const er="_breadcrumbsItem_1hm6a_1",tr="_breadcrumbs_1hm6a_1",He={breadcrumbsItem:er,breadcrumbs:tr},nr=({items:e})=>a.jsx("nav",{"aria-label":"breadcrumb",className:He.breadcrumbs,children:e.map((t,n)=>a.jsxs(g.Fragment,{children:[a.jsx(m.Link,{className:He.breadcrumbsItem,href:t.link,rel:"noreferrer",children:t.name}),n<e.length-1&&a.jsx("span",{children:" — "})]},`${t.link}-${t.name}`))}),rr=({items:e})=>a.jsx(a.Fragment,{children:e.map((t,n)=>a.jsxs(g.Fragment,{children:[!!n&&t.some(r=>r.visible)&&a.jsx(m.MenuDivider,{}),t.filter(({visible:r})=>r).map(({link:r,label:s,onClick:i})=>a.jsx(m.MenuItem,{href:r||"#","aria-label":s,onClick:i,children:s},s))]},t[0].label))}),sr="_badge_1pc1v_1",ar="_tag_1pc1v_15",ir="_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21",or="_disabled_1pc1v_57",cr="_projectNavigationItem_1pc1v_61",lr="_projectNavigationItemDisabled_1pc1v_67",E={badge:sr,tag:ar,withNavLinkStyle:ir,disabled:or,projectNavigationItem:cr,projectNavigationItemDisabled:lr},We=({label:e,badge:t,novel:n})=>a.jsxs("div",{className:"flex gap-1",children:[a.jsxs("div",{children:[a.jsx("span",{children:e}),!!t&&a.jsx("div",{className:E.badge,"aria-label":`${t} items requiring attention`,children:t>9?"9+":t})]}),!!n&&a.jsx(m.Tag,{className:E.tag,children:n})]}),de=g.forwardRef(({label:e,href:t="",disabled:n=!1,badge:r,onClick:s,novel:i},c)=>a.jsx(m.Tooltip,{tooltip:"You do not have access to this function",show:n,children:a.jsx("div",{className:n?E.projectNavigationItemDisabled:E.projectNavigationItem,children:s||n||!t?a.jsx("button",{type:"button",ref:c,className:C(E.withNavLinkStyle,{[E.disabled]:n}),disabled:n,onClick:s,children:a.jsx(We,{label:e,badge:r,novel:i})}):a.jsx("a",{href:t,className:E.withNavLinkStyle,children:a.jsx(We,{label:e,badge:r,novel:i})})})}));de.displayName="NavigationTabsItem";const ur=e=>(e==null?void 0:e.some(t=>t.some(n=>n.visible)))??!1,dr=e=>e.visible&&(!e.dropdown||ur(e.dropdown)),fr=({navigation:e,activeItem:t})=>a.jsx("nav",{"aria-label":"Project",children:a.jsx("ul",{className:A.navigationTabList,"aria-orientation":"horizontal",children:e.filter(dr).map(n=>{var r,s,i;return n.dropdown?a.jsx("li",{className:A.navigationTab,"data-testid":n.key,"aria-selected":(r=n.isActive)==null?void 0:r.call(n,t),children:a.jsx(m.Menu,{menuButton:({opened:c})=>a.jsx(de,{label:n.label,disabled:n.disabled,active:c}),children:a.jsx(m.MenuList,{children:a.jsx(rr,{items:n.dropdown})})})},n.key):a.jsx("li",{className:A.navigationTab,"data-testid":n.key,"aria-selected":(s=n.isActive)==null?void 0:s.call(n,t),children:a.jsx(de,{label:n.label,href:n.link,onClick:n.onClick,disabled:n.disabled,badge:n.badge,novel:n.novel,active:(i=n.isActive)==null?void 0:i.call(n,t)})},n.key)})})}),mr=o.z.object({lang_id:o.z.number(),lang_iso:o.z.string(),lang_name:o.z.string(),is_writable:o.z.union([o.z.literal(0),o.z.literal(1)])}),hr=o.z.object({user_id:o.z.number(),email:o.z.string().email(),fullname:o.z.string(),created_at:o.z.string(),created_at_timestamp:o.z.number(),admin_rights:o.z.array(o.z.string()),languages:o.z.array(mr),is_admin:o.z.boolean(),is_reviewer:o.z.boolean()}),gr=o.z.object({project_id:o.z.string(),contributors:o.z.array(hr)}),lt=Je.buildGetRoute({description:"Get the details of a project contributor",requestPathParamsSchema:o.z.object({projectId:o.z.string(),contributorId:o.z.number()}),pathResolver:({projectId:e,contributorId:t})=>`/projects/${e}/contributors/${t}`,successResponseBodySchema:gr}),ut=o.z.union([o.z.literal("owner"),o.z.literal("admin"),o.z.literal("biller"),o.z.literal("member")]),dt=o.z.object({user_id:o.z.number(),email:o.z.string().email(),fullname:o.z.string(),created_at:o.z.string(),created_at_timestamp:o.z.number(),role:ut}),br=o.z.object({team_id:o.z.number(),team_user:dt}),ft=Je.buildGetRoute({description:"Get the details of a team user",requestPathParamsSchema:o.z.object({teamId:o.z.number(),userId:o.z.number()}),pathResolver:({teamId:e,userId:t})=>`/teams/${e}/users/${t}`,successResponseBodySchema:br}),mt=o.z.object({accessToken:o.z.string(),refreshToken:o.z.string()}),K=xt.buildPayloadRoute({description:"Takes a teamId and returns a JWT token access and refresh token for the user",method:"post",requestPathParamsSchema:o.z.object({teamId:o.z.number()}),pathResolver:e=>`/team/${e.teamId}/actions/get-user-token`,requestHeaderSchema:o.z.object({Authorization:o.z.string().optional(),"x-csrf-token":o.z.string().optional()}),requestBodySchema:o.z.undefined(),successResponseBodySchema:mt}),ht={teamUserKey:(e,t)=>["GetTeamUsers",e,t]},gt=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r,s]})=>M.sendByGetRoute(e,ft,{pathParams:{teamId:r,userId:s}})}),bt={teamKey:e=>["getUserToken",e]},_t=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r]})=>M.sendByPayloadRoute(e,K,{pathParams:{teamId:r},headers:{}})}),pt={projectUserKey:(e,t)=>["RetrieveContributor",e,t]},vt=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r,s]})=>M.sendByGetRoute(e,lt,{pathParams:{projectId:r,contributorId:s}})}),_r=o.z.object({userId:o.z.number(),userUuid:o.z.string(),teamId:o.z.number(),userTeamRole:ut,userEmail:o.z.string().email(),userName:o.z.string(),userCurrentTeamId:o.z.number(),planId:o.z.number(),planName:o.z.string(),isProviderAlpha:o.z.boolean(),isFullyAuthenticated:o.z.boolean(),exp:o.z.number()});function B(e){try{const t=e.split(".")[1],n=atob(t);return _r.parse(JSON.parse(n))}catch{return}}const H=class H extends CustomEvent{constructor(t){super(H.eventName,{detail:{token:t,payload:B(t.accessToken)}})}};we(H,"eventName","new-jwt-issued");let z=H;const pr=bt;function vr(e,t){const n=_t(e,t),r=g.useRef();return g.useEffect(()=>{n.data&&n.data.accessToken!==r.current&&(window.dispatchEvent(new z(n.data)),r.current=n.data.accessToken)},[n.data]),n}function pe(){const e=fe(document.cookie,"accessToken"),t=fe(document.cookie,"refreshToken");return!e||!t?Promise.resolve(void 0):Promise.resolve({accessToken:e,refreshToken:t})}function Tr(){return Promise.resolve(fe(document.cookie,"csrf_token"))}function fe(e,t){var n,r;return(r=(n=e.split(";").find(s=>s.trim().startsWith(`${t}=`)))==null?void 0:n.trim())==null?void 0:r.substring(t.length+1)}function ve(){const[e,t]=g.useState();return g.useEffect(()=>{let n=!1;const r=s=>{t(s.detail.payload),n=!0};return pe().then(s=>s&&B(s.accessToken)).then(s=>{n||t(s)}),window.addEventListener(z.eventName,r),()=>{window.removeEventListener(z.eventName,r)}},[]),e}const jr=ht;function yr(e){const t=ve();return gt(e,(t==null?void 0:t.teamId)??0,(t==null?void 0:t.userId)??0)}const wr=pt;function Ir(e,t){const n=ve();return vt(e,(n==null?void 0:n.userId)??0)}async function xr(){const e=await pe();if(!e)return Promise.resolve(void 0);const t=B(e.accessToken);return t?{...e,payload:t}:Promise.resolve(void 0)}function G(e){return{Authorization:`Bearer ${e}`}}function Sr(e,t){return n=>async(r,s)=>{var u;const i=await t.getCachedJwtToken();if(i===void 0)return n(r,s);const c=await n(r,{...s,headers:{...s.headers,...G(i.accessToken)}});if(i&&(c.status===401||c.status===403)){const d=B(i.accessToken);if(!d)return c;const l=await M.sendByPayloadRoute(e,K,{pathParams:{teamId:d.teamId},headers:G(i.refreshToken)});return await((u=t.onNewJwtTokenIssued)==null?void 0:u.call(t,l)),n(r,{...s,headers:{...s.headers,...G(l.accessToken)}})}return c}}const Tt={wretch:{lokaliseAuth(e){return this.middlewares([Sr(this,e)])}}};function Nr(e,t){return n=>async(r,s)=>{var d;if(await t.getCachedJwtToken()!==void 0)return n(r,s);const c=await t.getCsrfToken();if(c===void 0)return n(r,s);const u=await M.sendByPayloadRoute(e,K,{pathParams:{teamId:await t.getTeamId()},headers:{"x-csrf-token":c}});return await((d=t.onNewJwtTokenIssued)==null?void 0:d.call(t,u)),n(r,{...s,headers:{...s.headers,...G(u.accessToken)}})}}const Pr={wretch:{lokaliseAuth(e={}){return this.addon(Tt).lokaliseAuth(Ke(e))},promoteClassicSession(e){const t=Ke(e);return this.middlewares([Nr(this,t)])}}};function Ke(e){return{...e,getCachedJwtToken:e.getCachedJwtToken??pe,getCsrfToken:"getCsrfToken"in e?e.getCsrfToken:Tr,onNewJwtTokenIssued:t=>{var n;return window.dispatchEvent(new z(t)),((n=e.onNewJwtTokenIssued)==null?void 0:n.call(e,t))??Promise.resolve()}}}exports.Breadcrumbs=nr;exports.ENTERPRISE_OPENSOURCE_PLAN_ID=be;exports.ENTERPRISE_PLAN_IDS=ot;exports.ESSENTIAL_PLAN_IDS=at;exports.FREE_PLAN_ID=ge;exports.JWT_TOKEN_SCHEMA=mt;exports.LokaliseAuthAddon=Tt;exports.LokaliseAuthBrowserAddon=Pr;exports.NavigationPanel=q;exports.NavigationTabs=fr;exports.PRO_PLAN_IDS=it;exports.START_PLAN_IDS=st;exports.Sidebar=I;exports.TEAM_USER_SCHEMA=dt;exports.TRIAL_PLAN_ID=rt;exports.authenticatedContributorKeys=wr;exports.authenticatedUserKeys=jr;exports.convertNewLineToBreakTag=kn;exports.formatDate=An;exports.formatDateTz=zn;exports.getAuthenticatedSessionDetailFromRequest=xr;exports.getPromotedClassicSessionJwtKey=pr;exports.getTeamUser=ft;exports.getTeamUsersQueryKey=ht;exports.getUserToken=K;exports.getUserTokenKey=bt;exports.isEnterpriseOpenSourcePlan=Sn;exports.isEnterprisePlan=In;exports.isEssentialPlan=yn;exports.isFreePlan=W;exports.isPaidPlan=xn;exports.isProPlan=wn;exports.isStartPlan=jn;exports.isTrialPlan=_e;exports.makeUrlClickable=Rn;exports.parseJwtTokenPayload=B;exports.retrieveContributor=lt;exports.retrieveContributorKeys=pt;exports.useAuthenticatedProjectContributor=Ir;exports.useAuthenticatedSessionPayload=ve;exports.useAuthenticatedUser=yr;exports.useEffectOnce=Ln;exports.useGetPromotedClassicSessionJwtQuery=vr;exports.useGetUserTokenQuery=_t;exports.useRetrieveContributorQuery=vt;exports.userGetTeamUsersQuery=gt;
|
1
|
+
"use strict";var wt=Object.defineProperty;var It=(e,t,n)=>t in e?wt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var we=(e,t,n)=>It(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),g=require("react"),m=require("@lokalise/louis"),o=require("zod"),M=require("@lokalise/frontend-http-client"),xt=require("@lokalise/universal-ts-utils/api-contracts/apiContracts"),me=require("@tanstack/react-query"),Je=require("@lokalise/universal-ts-utils/node"),Qe=require("date-fns"),St=require("date-fns-tz");function Nt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const O=Nt(g);var F=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ve(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Q,Ie;function he(){if(Ie)return Q;Ie=1;function e(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}return Q=e,Q}var V,xe;function Pt(){if(xe)return V;xe=1;var e=typeof F=="object"&&F&&F.Object===Object&&F;return V=e,V}var Y,Se;function Ye(){if(Se)return Y;Se=1;var e=Pt(),t=typeof self=="object"&&self&&self.Object===Object&&self,n=e||t||Function("return this")();return Y=n,Y}var Z,Ne;function kt(){if(Ne)return Z;Ne=1;var e=Ye(),t=function(){return e.Date.now()};return Z=t,Z}var X,Pe;function Et(){if(Pe)return X;Pe=1;var e=/\s/;function t(n){for(var r=n.length;r--&&e.test(n.charAt(r)););return r}return X=t,X}var ee,ke;function Rt(){if(ke)return ee;ke=1;var e=Et(),t=/^\s+/;function n(r){return r&&r.slice(0,e(r)+1).replace(t,"")}return ee=n,ee}var te,Ee;function Ze(){if(Ee)return te;Ee=1;var e=Ye(),t=e.Symbol;return te=t,te}var ne,Re;function Ct(){if(Re)return ne;Re=1;var e=Ze(),t=Object.prototype,n=t.hasOwnProperty,r=t.toString,s=e?e.toStringTag:void 0;function i(c){var u=n.call(c,s),d=c[s];try{c[s]=void 0;var l=!0}catch{}var f=r.call(c);return l&&(u?c[s]=d:delete c[s]),f}return ne=i,ne}var re,Ce;function At(){if(Ce)return re;Ce=1;var e=Object.prototype,t=e.toString;function n(r){return t.call(r)}return re=n,re}var se,Ae;function zt(){if(Ae)return se;Ae=1;var e=Ze(),t=Ct(),n=At(),r="[object Null]",s="[object Undefined]",i=e?e.toStringTag:void 0;function c(u){return u==null?u===void 0?s:r:i&&i in Object(u)?t(u):n(u)}return se=c,se}var ae,ze;function Lt(){if(ze)return ae;ze=1;function e(t){return t!=null&&typeof t=="object"}return ae=e,ae}var ie,Le;function Ot(){if(Le)return ie;Le=1;var e=zt(),t=Lt(),n="[object Symbol]";function r(s){return typeof s=="symbol"||t(s)&&e(s)==n}return ie=r,ie}var oe,Oe;function qt(){if(Oe)return oe;Oe=1;var e=Rt(),t=he(),n=Ot(),r=NaN,s=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;function d(l){if(typeof l=="number")return l;if(n(l))return r;if(t(l)){var f=typeof l.valueOf=="function"?l.valueOf():l;l=t(f)?f+"":f}if(typeof l!="string")return l===0?l:+l;l=e(l);var p=i.test(l);return p||c.test(l)?u(l.slice(2),p?2:8):s.test(l)?r:+l}return oe=d,oe}var ce,qe;function Xe(){if(qe)return ce;qe=1;var e=he(),t=kt(),n=qt(),r="Expected a function",s=Math.max,i=Math.min;function c(u,d,l){var f,p,y,j,_,w,x=0,N=!1,b=!1,S=!0;if(typeof u!="function")throw new TypeError(r);d=n(d)||0,e(l)&&(N=!!l.leading,b="maxWait"in l,y=b?s(n(l.maxWait)||0,d):y,S="trailing"in l?!!l.trailing:S);function T(h){var P=f,L=p;return f=p=void 0,x=h,j=u.apply(L,P),j}function v(h){return x=h,_=setTimeout($,d),N?T(h):j}function D(h){var P=h-w,L=h-x,je=d-P;return b?i(je,y-L):je}function Te(h){var P=h-w,L=h-x;return w===void 0||P>=d||P<0||b&&L>=y}function $(){var h=t();if(Te(h))return ye(h);_=setTimeout($,D(h))}function ye(h){return _=void 0,S&&f?T(h):(f=p=void 0,j)}function yt(){_!==void 0&&clearTimeout(_),x=0,f=w=p=_=void 0}function jt(){return _===void 0?j:ye(t())}function J(){var h=t(),P=Te(h);if(f=arguments,p=this,w=h,P){if(_===void 0)return v(w);if(b)return clearTimeout(_),_=setTimeout($,d),T(w)}return _===void 0&&(_=setTimeout($,d)),j}return J.cancel=yt,J.flush=jt,J}return ce=c,ce}var Mt=Xe();const Ut=Ve(Mt);var le,Me;function Bt(){if(Me)return le;Me=1;var e=Xe(),t=he(),n="Expected a function";function r(s,i,c){var u=!0,d=!0;if(typeof s!="function")throw new TypeError(n);return t(c)&&(u="leading"in c?!!c.leading:u,d="trailing"in c?!!c.trailing:d),e(s,i,{leading:u,maxWait:i,trailing:d})}return le=r,le}var Dt=Bt();const $t=Ve(Dt),Ft=(e,t,n,r)=>{switch(t){case"debounce":return Ut(e,n,r);case"throttle":return $t(e,n,r);default:return e}},Gt=e=>{const t=O.useRef(e);return O.useEffect(()=>{t.current=e}),O.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])},Ht=e=>{const[t,n]=O.useState((e==null?void 0:e.current)||null);return e&&setTimeout(()=>{e.current!==t&&n(e.current)},0),{refProxy:O.useMemo(()=>new Proxy(s=>{s!==t&&n(s)},{get(s,i){return i==="current"?t:s[i]},set(s,i,c){return i==="current"?n(c):s[i]=c,!0}}),[t]),refElement:t,setRefElement:n}},Wt=(e,t)=>t==="border-box"?{width:e.borderBoxSize[0].inlineSize,height:e.borderBoxSize[0].blockSize}:t==="content-box"?{width:e.contentBoxSize[0].inlineSize,height:e.contentBoxSize[0].blockSize}:{width:e.contentRect.width,height:e.contentRect.height};function Kt({skipOnMount:e=!1,refreshMode:t,refreshRate:n=1e3,refreshOptions:r,handleWidth:s=!0,handleHeight:i=!0,targetRef:c,observerOptions:u,onResize:d}={}){const l=g.useRef(e),f=Gt(d),[p,y]=g.useState({width:void 0,height:void 0}),{refProxy:j,refElement:_}=Ht(c),{box:w}=u||{},x=g.useCallback(b=>{if(!s&&!i)return;if(l.current){l.current=!1;return}const S=(T,v)=>s&&T.width!==v.width||i&&T.height!==v.height;b.forEach(T=>{const v=Wt(T,w);y(D=>S(D,v)?(f==null||f({width:v.width,height:v.height,entry:T}),v):D)})},[s,i,l,w]),N=g.useCallback(Ft(x,t,n,r),[x,t,n,r]);return g.useEffect(()=>{let b;return _?(b=new window.ResizeObserver(N),b.observe(_,u)):(p.width||p.height)&&(f==null||f({width:null,height:null,entry:null}),y({width:void 0,height:void 0})),()=>{var S,T,v;(S=b==null?void 0:b.disconnect)===null||S===void 0||S.call(b),(v=(T=N).cancel)===null||v===void 0||v.call(T)}},[N,_]),Object.assign({ref:j},p)}function et(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(n=et(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function R(){for(var e,t,n=0,r="",s=arguments.length;n<s;n++)(e=arguments[n])&&(t=et(e))&&(r&&(r+=" "),r+=t);return r}const Jt="_headerContainer_1cubo_1",Qt="_navigationTabList_1cubo_8",Vt="_navigationTab_1cubo_8",Yt="_headerContent_1cubo_34",Zt="_staticEnabled_1cubo_50",A={headerContainer:Jt,navigationTabList:Qt,navigationTab:Vt,headerContent:Yt,staticEnabled:Zt},Xt=77,q=({sticky:e,children:t})=>{const{ref:n,height:r}=Kt({refreshMode:"debounce",refreshRate:0}),[s,i]=g.useState(!1),c=()=>s?!e:!0;g.useEffect(()=>{const d=()=>{i(window.scrollY>0)};return window.addEventListener("scroll",d),()=>window.removeEventListener("scroll",d)},[]);const u=`${r||Xt}px`;return a.jsx("div",{style:{minHeight:u},children:a.jsx("div",{children:a.jsxs("div",{ref:n,className:R(A.headerContent,{[A.staticEnabled]:c()}),children:[a.jsx(q.Header,{}),a.jsx(q.Tabs,{}),t]})})})};q.Header=({children:e})=>a.jsx("div",{className:A.headerContainer,children:e});q.Tabs=({children:e})=>a.jsx("div",{className:"flex justify-between gap-2 nowrap",children:e});const en="_sidebarContainer_bmdti_1",tn={sidebarContainer:en},nn="_logoLink_1baxb_1",rn={logoLink:nn},sn=({src:e,href:t="/",ariaLabel:n="Home",alt:r="Lokalise"})=>a.jsx("a",{className:rn.logoLink,href:t,"aria-label":n,children:a.jsx("img",{src:e,alt:r})}),an="_link_1weq1_1",on="_active_1weq1_18",Ue={link:an,active:on},cn=({label:e,to:t,icon:n})=>a.jsx(m.Tooltip,{placement:"right",tooltip:e,children:a.jsx(m.Link,{className:R(Ue.link,{[Ue.active]:window.location.pathname.startsWith(t)}),href:t,children:a.jsx(n,{size:"25px"})})}),ln="_dropdownButton_hwh0c_1",un="_dropdownButtonActive_hwh0c_18",Be={dropdownButton:ln,dropdownButtonActive:un},dn=({children:e,icon:t})=>a.jsx(m.Menu,{menuButton:({opened:n})=>a.jsx(m.Tooltip,{placement:"right",tooltip:"Help",children:a.jsx("button",{type:"button",className:R(Be.dropdownButton,{[Be.dropdownButtonActive]:n}),children:a.jsx(t,{size:"25px"})})}),children:a.jsx(m.MenuList,{placement:"right-start",children:e})}),fn="_iconContainer_nz34m_1",mn={iconContainer:fn},tt=({className:e=""})=>a.jsx("div",{"aria-label":"Upgrade Icon",className:R(mn.iconContainer,"flex-row","items-center","justify-center",e),children:a.jsx(m.CaretUpIcon,{})}),hn="_menuContainer_wbu3u_5",gn="_profileButton_wbu3u_16",bn="_profileImage_wbu3u_29",_n="_profileImageHighlight_wbu3u_37",pn="_profileImageUpgradeIcon_wbu3u_41",vn="_userIconWrapper_wbu3u_47",k={menuContainer:hn,profileButton:gn,profileImage:bn,profileImageHighlight:_n,profileImageUpgradeIcon:pn,userIconWrapper:vn},nt=g.createContext({}),U=()=>g.useContext(nt),Tn=({children:e})=>{const{currentTeam:t,otherTeams:n,showUpgradeCta:r,showBillingButton:s,allowTeamCreation:i,isLimitedView:c,isProviderAlpha:u,canAccessTeamSettings:d,isEndOfTrialActive:l,isTeamSuspended:f}=U();return a.jsx(m.Menu,{menuButton:()=>a.jsxs("button",{className:k.profileButton,"aria-label":"Profile menu",type:"button",children:[t!=null&&t.logoUrl?a.jsx("img",{src:t.logoUrl,className:R(k.profileImage,{[k.profileImageHighlight]:r}),alt:"Team Logo"}):a.jsx("div",{className:R(k.userIconWrapper,"flex-row","align-center","items-center",{[k.profileImageHighlight]:r}),children:a.jsx(m.UserIcon,{size:"25px"})}),r&&a.jsx(tt,{className:k.profileImageUpgradeIcon})]}),children:a.jsx(m.MenuList,{placement:"right-end",className:k.menuContainer,children:e({allowTeamCreation:i,otherTeams:n,isLimitedView:c,canAccessTeamSettings:d,isEndOfTrialActive:l,isTeamSuspended:f,showBillingButton:s,isProviderAlpha:u})})})},ge=0,rt=9999,st=[150,151,250,251],at=[152,153,252,253],it=[154,155,157,158,254,255,258,354,355,358],ot=[156,159,160,256,259,260],be=9998,W=e=>e===ge,_e=e=>e===rt,yn=e=>st.includes(e),jn=e=>at.includes(e),wn=e=>it.includes(e),In=e=>ot.includes(e),xn=e=>e>ge&&e<be,Sn=e=>e===be,Nn=/\n/,De=(e,t,n)=>e.split(t).flatMap((r,s)=>s!==0?[g.cloneElement(n,{key:Math.random().toString(32).slice(0,10)}),r]:r),Pn=(e,t,n)=>typeof e=="string"?De(e,t,n):e.flatMap(r=>typeof r=="string"?De(r,t,n):r),kn=e=>Pn(e,Nn,a.jsx("br",{})),En=/(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi,Rn=e=>e.match(En)??[],$e=(e,t,n)=>{const r=e.split(t);if(r.length===1)return e;const s=[];return r[0]!==""&&s.push(r[0]),r.shift(),r[r.length-1]===""&&r.pop(),s.push(a.jsx("a",{href:t,target:"_blank",rel:"noreferrer noopener",children:t},t+n)),s.push(r.join(t)),s.filter(i=>i!=="")},Fe=e=>{const t=Rn(e);return t!=null&&t.length?t.reduce((n,r,s)=>typeof n=="string"?$e(n,r,s):n.flatMap(i=>typeof i=="string"?$e(i,r,s):i),e):e},Cn=e=>typeof e=="string"?Fe(e):e.flatMap(t=>typeof t=="string"?Fe(t):t,e),An=(e,t="PP")=>Qe.format(e,t),zn=(e,t,n="PP")=>Qe.format(St.toZonedTime(e,t),n),Ln=e=>{g.useEffect(e,[])},On=({children:e,config:t})=>{const{teams:n,currentTeamId:r,planId:s,isLimitedView:i,isTeamSuspended:c,canAccessTeamSettings:u,isEndOfTrialActive:d}=t,l=n.find(b=>b.id===r),f=n.filter(b=>b.id!==r),p=(l==null?void 0:l.role)??"",y=["biller","owner"].includes(p),j=W(s)||_e(s),N={...t,currentTeam:l,otherTeams:f,canChangeBilling:y,isOnFreeOrTrialPlan:j,showUpgradeCta:!i&&j&&y&&!c,showBillingButton:!i&&u&&y,allowTeamCreation:!i&&!d};return a.jsx(nt.Provider,{value:N,children:e})},qn=({config:e,children:t})=>a.jsx(On,{config:e,children:a.jsx(Tn,{children:t})}),Mn="_container_q5pot_1",Un="_profileEmail_q5pot_5",Ge={container:Mn,profileEmail:Un},Bn=({href:e,onClick:t,userEmail:n,hideBottomDivider:r})=>{const{isEndOfTrialActive:s,isTeamSuspended:i}=U();return s||i?null:a.jsxs(a.Fragment,{children:[a.jsx(m.MenuItem,{href:e,onClick:()=>{t==null||t()},children:a.jsxs("div",{className:`flex-col ${Ge.container}`,children:[a.jsx("span",{children:"Profile Settings"}),a.jsx("span",{className:Ge.profileEmail,children:n})]})}),!r&&a.jsx(m.MenuDivider,{})]})},Dn="_wrapper_15d85_1",$n="_profileImage_15d85_14",Fn="_teamName_15d85_22",Gn="_planLabel_15d85_29",Hn="_membership_15d85_38",Wn="_defaultProfileImage_15d85_44",C={wrapper:Dn,profileImage:$n,teamName:Fn,planLabel:Gn,membership:Hn,defaultProfileImage:Wn},ct=({team:e,onClick:t,hidePlanLabel:n})=>{const{currentTeam:r,planId:s}=U(),i=e||r;if(!i)return null;const c=W(s)?"Free":_e(s)?"Trial":void 0,u=t?m.MenuItem:"div";return a.jsxs(u,{className:`flex-row gap-2 flex-nowrap items-center ${C.wrapper}`,...t&&{onClick:()=>t(i)},children:[i.logoUrl?a.jsx("img",{className:C.profileImage,src:i.logoUrl,alt:"Team Logo"}):a.jsx("span",{className:`flex-row justify-center items-center ${C.defaultProfileImage}`,children:a.jsx(m.UserIcon,{size:"25px"})}),a.jsxs("div",{className:"flex-col items-start",children:[a.jsxs("div",{className:"flex-row items-center flex-nowrap gap-2",children:[a.jsx("span",{title:i.name,className:C.teamName,children:i.name}),c&&!n&&a.jsx("span",{className:`flex-row justify-center items-center ${C.planLabel}`,children:c})]}),a.jsx("span",{className:C.membership,children:i.role})]})]})},Kn="_teamsContainer_1t68g_1",Jn={teamsContainer:Kn},Qn=({onSwitchTeam:e})=>{const{otherTeams:t}=U();return t.length===0?null:a.jsx("div",{className:`flex-col items-stretch ${Jn.teamsContainer}`,children:t.map(n=>a.jsx(ct,{team:n,onClick:e,hidePlanLabel:!0},n.id))})},Vn="_container_1u995_1",Yn="_planCta_1u995_15",Zn="_upgradeIconWrapper_1u995_19",ue={container:Vn,planCta:Yn,upgradeIconWrapper:Zn},Xn=({upgradeOptionHref:e})=>{const{planId:t,trialDaysLeft:n,showUpgradeCta:r}=U();if(!r)return null;const c=W(t)?"Your team is currently on the Free plan":`Free trial ends in ${n} ${n===1?"day":"days"}`;return a.jsxs(m.MenuItem,{href:e,className:`flex-col gap-1 items-start ${ue.container}`,children:[a.jsx("span",{className:ue.planCta,children:c}),a.jsxs("div",{className:`flex-row items-center gap-1 ${ue.upgradeIconWrapper}`,children:[a.jsx(tt,{}),a.jsx("span",{children:"See upgrade options"})]})]})},I=({children:e,...t})=>a.jsx("nav",{...t,className:tn.sidebarContainer,children:e});I.Top=({children:e})=>a.jsx("div",{children:e});I.Bottom=({children:e})=>a.jsx("div",{children:e});I.Avatar=sn;I.IconLink=cn;I.Menu=dn;I.ProfileMenu=qn;I.TeamSwitch=Qn;I.TeamMenuItem=ct;I.UpgradeMenuItem=Xn;I.ProfileSettingsMenuItem=Bn;const er="_breadcrumbsItem_1hm6a_1",tr="_breadcrumbs_1hm6a_1",He={breadcrumbsItem:er,breadcrumbs:tr},nr=({items:e})=>a.jsx("nav",{"aria-label":"breadcrumb",className:He.breadcrumbs,children:e.map((t,n)=>a.jsxs(g.Fragment,{children:[a.jsx(m.Link,{className:He.breadcrumbsItem,href:t.link,rel:"noreferrer",children:t.name}),n<e.length-1&&a.jsx("span",{children:" — "})]},`${t.link}-${t.name}`))}),rr=({items:e})=>a.jsx(a.Fragment,{children:e.map((t,n)=>a.jsxs(g.Fragment,{children:[!!n&&t.some(r=>r.visible)&&a.jsx(m.MenuDivider,{}),t.filter(({visible:r})=>r).map(({link:r,label:s,onClick:i})=>a.jsx(m.MenuItem,{href:r||"#","aria-label":s,onClick:i,children:s},s))]},t[0].label))}),sr="_badge_1pc1v_1",ar="_tag_1pc1v_15",ir="_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21",or="_disabled_1pc1v_57",cr="_projectNavigationItem_1pc1v_61",lr="_projectNavigationItemDisabled_1pc1v_67",E={badge:sr,tag:ar,withNavLinkStyle:ir,disabled:or,projectNavigationItem:cr,projectNavigationItemDisabled:lr},We=({label:e,badge:t,novel:n})=>a.jsxs("div",{className:"flex gap-1",children:[a.jsxs("div",{children:[a.jsx("span",{children:e}),!!t&&a.jsx("div",{className:E.badge,"aria-label":`${t} items requiring attention`,children:t>9?"9+":t})]}),!!n&&a.jsx(m.Tag,{className:E.tag,children:n})]}),de=g.forwardRef(({label:e,href:t="",disabled:n=!1,badge:r,onClick:s,novel:i},c)=>a.jsx(m.Tooltip,{tooltip:"You do not have access to this function",show:n,children:a.jsx("div",{className:n?E.projectNavigationItemDisabled:E.projectNavigationItem,children:s||n||!t?a.jsx("button",{type:"button",ref:c,className:R(E.withNavLinkStyle,{[E.disabled]:n}),disabled:n,onClick:s,children:a.jsx(We,{label:e,badge:r,novel:i})}):a.jsx("a",{href:t,className:E.withNavLinkStyle,children:a.jsx(We,{label:e,badge:r,novel:i})})})}));de.displayName="NavigationTabsItem";const ur=e=>(e==null?void 0:e.some(t=>t.some(n=>n.visible)))??!1,dr=e=>e.visible&&(!e.dropdown||ur(e.dropdown)),fr=({navigation:e,activeItem:t})=>a.jsx("nav",{"aria-label":"Project",children:a.jsx("ul",{className:A.navigationTabList,"aria-orientation":"horizontal",children:e.filter(dr).map(n=>{var r,s,i;return n.dropdown?a.jsx("li",{className:A.navigationTab,"data-testid":n.key,"aria-selected":(r=n.isActive)==null?void 0:r.call(n,t),children:a.jsx(m.Menu,{menuButton:({opened:c})=>a.jsx(de,{label:n.label,disabled:n.disabled,active:c}),children:a.jsx(m.MenuList,{children:a.jsx(rr,{items:n.dropdown})})})},n.key):a.jsx("li",{className:A.navigationTab,"data-testid":n.key,"aria-selected":(s=n.isActive)==null?void 0:s.call(n,t),children:a.jsx(de,{label:n.label,href:n.link,onClick:n.onClick,disabled:n.disabled,badge:n.badge,novel:n.novel,active:(i=n.isActive)==null?void 0:i.call(n,t)})},n.key)})})}),mr=o.z.object({lang_id:o.z.number(),lang_iso:o.z.string(),lang_name:o.z.string(),is_writable:o.z.union([o.z.literal(0),o.z.literal(1)])}),hr=o.z.object({user_id:o.z.number(),email:o.z.string().email(),fullname:o.z.string(),created_at:o.z.string(),created_at_timestamp:o.z.number(),admin_rights:o.z.array(o.z.string()),languages:o.z.array(mr),is_admin:o.z.boolean(),is_reviewer:o.z.boolean()}),gr=o.z.object({project_id:o.z.string(),contributors:o.z.array(hr)}),lt=Je.buildGetRoute({description:"Get the details of a project contributor",requestPathParamsSchema:o.z.object({projectId:o.z.string(),contributorId:o.z.number()}),pathResolver:({projectId:e,contributorId:t})=>`/projects/${e}/contributors/${t}`,successResponseBodySchema:gr}),ut=o.z.union([o.z.literal("owner"),o.z.literal("admin"),o.z.literal("biller"),o.z.literal("member")]),dt=o.z.object({user_id:o.z.number(),email:o.z.string().email(),fullname:o.z.string(),created_at:o.z.string(),created_at_timestamp:o.z.number(),role:ut}),br=o.z.object({team_id:o.z.number(),team_user:dt}),ft=Je.buildGetRoute({description:"Get the details of a team user",requestPathParamsSchema:o.z.object({teamId:o.z.number(),userId:o.z.number()}),pathResolver:({teamId:e,userId:t})=>`/teams/${e}/users/${t}`,successResponseBodySchema:br}),mt=o.z.object({accessToken:o.z.string(),refreshToken:o.z.string()}),K=xt.buildPayloadRoute({description:"Takes a teamId and returns a JWT token access and refresh token for the user",method:"post",requestPathParamsSchema:o.z.object({teamId:o.z.number()}),pathResolver:e=>`/team/${e.teamId}/actions/get-user-token`,requestHeaderSchema:o.z.object({Authorization:o.z.string().optional(),"x-csrf-token":o.z.string().optional()}),requestBodySchema:o.z.undefined(),successResponseBodySchema:mt}),ht={teamUserKey:(e,t)=>["GetTeamUsers",e,t]},gt=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r,s]})=>M.sendByGetRoute(e,ft,{pathParams:{teamId:r,userId:s}})}),bt={teamKey:e=>["getUserToken",e]},_t=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r]})=>M.sendByPayloadRoute(e,K,{pathParams:{teamId:r},headers:{}})}),pt={projectUserKey:(e,t)=>["RetrieveContributor",e,t]},vt=(e,t)=>me.useQuery({...t,queryFn:({queryKey:[n,r,s]})=>M.sendByGetRoute(e,lt,{pathParams:{projectId:r,contributorId:s}})}),_r=o.z.object({userId:o.z.number(),userUuid:o.z.string(),teamId:o.z.number(),userTeamRole:ut,userEmail:o.z.string().email(),userName:o.z.string(),userCurrentTeamId:o.z.number(),planId:o.z.number(),planName:o.z.string(),isProviderAlpha:o.z.boolean(),isFullyAuthenticated:o.z.boolean(),exp:o.z.number()});function B(e){try{const t=e.split(".")[1],n=atob(t);return _r.parse(JSON.parse(n))}catch{return}}const H=class H extends CustomEvent{constructor(t){super(H.eventName,{detail:{token:t,payload:B(t.accessToken)}})}};we(H,"eventName","new-jwt-issued");let z=H;function pr(e,t){const n=_t(e,{queryKey:bt.teamKey(t)}),r=g.useRef();return g.useEffect(()=>{n.data&&n.data.accessToken!==r.current&&(window.dispatchEvent(new z(n.data)),r.current=n.data.accessToken)},[n.data]),n}function pe(){const e=fe(document.cookie,"accessToken"),t=fe(document.cookie,"refreshToken");return!e||!t?Promise.resolve(void 0):Promise.resolve({accessToken:e,refreshToken:t})}function vr(){return Promise.resolve(fe(document.cookie,"csrf_token"))}function fe(e,t){var n,r;return(r=(n=e.split(";").find(s=>s.trim().startsWith(`${t}=`)))==null?void 0:n.trim())==null?void 0:r.substring(t.length+1)}function ve(){const[e,t]=g.useState();return g.useEffect(()=>{let n=!1;const r=s=>{t(s.detail.payload),n=!0};return pe().then(s=>s&&B(s.accessToken)).then(s=>{n||t(s)}),window.addEventListener(z.eventName,r),()=>{window.removeEventListener(z.eventName,r)}},[]),e}function Tr(e){const t=ve();return gt(e,{queryKey:ht.teamUserKey((t==null?void 0:t.teamId)??0,(t==null?void 0:t.userId)??0)})}function yr(e,t){const n=ve();return vt(e,{queryKey:pt.projectUserKey(t,(n==null?void 0:n.userId)??0),enabled:n!==void 0})}async function jr(){const e=await pe();if(!e)return Promise.resolve(void 0);const t=B(e.accessToken);return t?{...e,payload:t}:Promise.resolve(void 0)}function G(e){return{Authorization:`Bearer ${e}`}}function wr(e,t){return n=>async(r,s)=>{var u;const i=await t.getCachedJwtToken();if(i===void 0)return n(r,s);const c=await n(r,{...s,headers:{...s.headers,...G(i.accessToken)}});if(i&&(c.status===401||c.status===403)){const d=B(i.accessToken);if(!d)return c;const l=await M.sendByPayloadRoute(e,K,{pathParams:{teamId:d.teamId},headers:G(i.refreshToken)});return await((u=t.onNewJwtTokenIssued)==null?void 0:u.call(t,l)),n(r,{...s,headers:{...s.headers,...G(l.accessToken)}})}return c}}const Tt={wretch:{lokaliseAuth(e){return this.middlewares([wr(this,e)])}}};function Ir(e,t){return n=>async(r,s)=>{var d;if(await t.getCachedJwtToken()!==void 0)return n(r,s);const c=await t.getCsrfToken();if(c===void 0)return n(r,s);const u=await M.sendByPayloadRoute(e,K,{pathParams:{teamId:await t.getTeamId()},headers:{"x-csrf-token":c}});return await((d=t.onNewJwtTokenIssued)==null?void 0:d.call(t,u)),n(r,{...s,headers:{...s.headers,...G(u.accessToken)}})}}const xr={wretch:{lokaliseAuth(e={}){return this.addon(Tt).lokaliseAuth(Ke(e))},promoteClassicSession(e){const t=Ke(e);return this.middlewares([Ir(this,t)])}}};function Ke(e){return{...e,getCachedJwtToken:e.getCachedJwtToken??pe,getCsrfToken:"getCsrfToken"in e?e.getCsrfToken:vr,onNewJwtTokenIssued:t=>{var n;return window.dispatchEvent(new z(t)),((n=e.onNewJwtTokenIssued)==null?void 0:n.call(e,t))??Promise.resolve()}}}exports.Breadcrumbs=nr;exports.ENTERPRISE_OPENSOURCE_PLAN_ID=be;exports.ENTERPRISE_PLAN_IDS=ot;exports.ESSENTIAL_PLAN_IDS=at;exports.FREE_PLAN_ID=ge;exports.JWT_TOKEN_SCHEMA=mt;exports.LokaliseAuthAddon=Tt;exports.LokaliseAuthBrowserAddon=xr;exports.NavigationPanel=q;exports.NavigationTabs=fr;exports.PRO_PLAN_IDS=it;exports.START_PLAN_IDS=st;exports.Sidebar=I;exports.TEAM_USER_SCHEMA=dt;exports.TRIAL_PLAN_ID=rt;exports.convertNewLineToBreakTag=kn;exports.formatDate=An;exports.formatDateTz=zn;exports.getAuthenticatedSessionDetailFromRequest=jr;exports.getTeamUser=ft;exports.getTeamUsersQueryKey=ht;exports.getUserToken=K;exports.getUserTokenKey=bt;exports.isEnterpriseOpenSourcePlan=Sn;exports.isEnterprisePlan=In;exports.isEssentialPlan=jn;exports.isFreePlan=W;exports.isPaidPlan=xn;exports.isProPlan=wn;exports.isStartPlan=yn;exports.isTrialPlan=_e;exports.makeUrlClickable=Cn;exports.parseJwtTokenPayload=B;exports.retrieveContributor=lt;exports.retrieveContributorKeys=pt;exports.useAuthenticatedProjectContributor=yr;exports.useAuthenticatedSessionPayload=ve;exports.useAuthenticatedUser=Tr;exports.useEffectOnce=Ln;exports.useGetPromotedClassicSessionJwtQuery=pr;exports.useGetTeamUsersQuery=gt;exports.useGetUserTokenQuery=_t;exports.useRetrieveContributorQuery=vt;
|
package/dist/harmony.mjs
CHANGED
@@ -16,22 +16,22 @@ var $ = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : ty
|
|
16
16
|
function it(e) {
|
17
17
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
18
18
|
}
|
19
|
-
var
|
19
|
+
var K, Se;
|
20
20
|
function pe() {
|
21
|
-
if (Se) return
|
21
|
+
if (Se) return K;
|
22
22
|
Se = 1;
|
23
23
|
function e(t) {
|
24
24
|
var n = typeof t;
|
25
25
|
return t != null && (n == "object" || n == "function");
|
26
26
|
}
|
27
|
-
return
|
27
|
+
return K = e, K;
|
28
28
|
}
|
29
|
-
var
|
29
|
+
var J, Ee;
|
30
30
|
function Rt() {
|
31
|
-
if (Ee) return
|
31
|
+
if (Ee) return J;
|
32
32
|
Ee = 1;
|
33
33
|
var e = typeof $ == "object" && $ && $.Object === Object && $;
|
34
|
-
return
|
34
|
+
return J = e, J;
|
35
35
|
}
|
36
36
|
var Q, Pe;
|
37
37
|
function ot() {
|
@@ -116,7 +116,7 @@ function qt() {
|
|
116
116
|
return ne = c, ne;
|
117
117
|
}
|
118
118
|
var re, qe;
|
119
|
-
function
|
119
|
+
function Ut() {
|
120
120
|
if (qe) return re;
|
121
121
|
qe = 1;
|
122
122
|
function e(t) {
|
@@ -124,21 +124,21 @@ function Mt() {
|
|
124
124
|
}
|
125
125
|
return re = e, re;
|
126
126
|
}
|
127
|
-
var ae,
|
128
|
-
function
|
129
|
-
if (
|
130
|
-
|
131
|
-
var e = qt(), t =
|
127
|
+
var ae, Ue;
|
128
|
+
function Mt() {
|
129
|
+
if (Ue) return ae;
|
130
|
+
Ue = 1;
|
131
|
+
var e = qt(), t = Ut(), n = "[object Symbol]";
|
132
132
|
function r(a) {
|
133
133
|
return typeof a == "symbol" || t(a) && e(a) == n;
|
134
134
|
}
|
135
135
|
return ae = r, ae;
|
136
136
|
}
|
137
|
-
var ie,
|
137
|
+
var ie, Me;
|
138
138
|
function Bt() {
|
139
|
-
if (
|
140
|
-
|
141
|
-
var e = Lt(), t = pe(), n =
|
139
|
+
if (Me) return ie;
|
140
|
+
Me = 1;
|
141
|
+
var e = Lt(), t = pe(), n = Mt(), r = NaN, a = /^[-+]0x[0-9a-f]+$/i, o = /^0b[01]+$/i, c = /^0o[0-7]+$/i, u = parseInt;
|
142
142
|
function d(l) {
|
143
143
|
if (typeof l == "number")
|
144
144
|
return l;
|
@@ -173,7 +173,7 @@ function ct() {
|
|
173
173
|
function p(f) {
|
174
174
|
return N = f, g = setTimeout(B, d), S ? v(f) : w;
|
175
175
|
}
|
176
|
-
function
|
176
|
+
function M(f) {
|
177
177
|
var E = f - y, O = f - N, Ie = d - E;
|
178
178
|
return h ? o(Ie, T - O) : Ie;
|
179
179
|
}
|
@@ -185,7 +185,7 @@ function ct() {
|
|
185
185
|
var f = t();
|
186
186
|
if (we(f))
|
187
187
|
return ye(f);
|
188
|
-
g = setTimeout(B,
|
188
|
+
g = setTimeout(B, M(f));
|
189
189
|
}
|
190
190
|
function ye(f) {
|
191
191
|
return g = void 0, k && m ? v(f) : (m = b = void 0, w);
|
@@ -250,7 +250,7 @@ const Ht = /* @__PURE__ */ it(Ft), Gt = (e, t, n, r) => {
|
|
250
250
|
return (r = t.current) === null || r === void 0 ? void 0 : r.call(t, ...n);
|
251
251
|
}, []);
|
252
252
|
}
|
253
|
-
),
|
253
|
+
), Kt = (
|
254
254
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
255
255
|
(e) => {
|
256
256
|
const [t, n] = x.useState((e == null ? void 0 : e.current) || null);
|
@@ -267,7 +267,7 @@ const Ht = /* @__PURE__ */ it(Ft), Gt = (e, t, n, r) => {
|
|
267
267
|
}
|
268
268
|
}), [t]), refElement: t, setRefElement: n };
|
269
269
|
}
|
270
|
-
),
|
270
|
+
), Jt = (e, t) => t === "border-box" ? {
|
271
271
|
width: e.borderBoxSize[0].inlineSize,
|
272
272
|
height: e.borderBoxSize[0].blockSize
|
273
273
|
} : t === "content-box" ? {
|
@@ -281,7 +281,7 @@ function Qt({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refresh
|
|
281
281
|
const l = Ye(e), m = Wt(d), [b, T] = de({
|
282
282
|
width: void 0,
|
283
283
|
height: void 0
|
284
|
-
}), { refProxy: w, refElement: g } =
|
284
|
+
}), { refProxy: w, refElement: g } = Kt(c), { box: y } = u || {}, N = ke((h) => {
|
285
285
|
if (!a && !o)
|
286
286
|
return;
|
287
287
|
if (l.current) {
|
@@ -290,12 +290,12 @@ function Qt({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refresh
|
|
290
290
|
}
|
291
291
|
const k = (v, p) => a && v.width !== p.width || o && v.height !== p.height;
|
292
292
|
h.forEach((v) => {
|
293
|
-
const p =
|
294
|
-
T((
|
293
|
+
const p = Jt(v, y);
|
294
|
+
T((M) => k(M, p) ? (m == null || m({
|
295
295
|
width: p.width,
|
296
296
|
height: p.height,
|
297
297
|
entry: v
|
298
|
-
}), p) :
|
298
|
+
}), p) : M);
|
299
299
|
});
|
300
300
|
}, [a, o, l, y]), S = ke(Gt(N, t, n, r), [
|
301
301
|
N,
|
@@ -419,7 +419,7 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
419
419
|
profileImageHighlight: vn,
|
420
420
|
profileImageUpgradeIcon: Tn,
|
421
421
|
userIconWrapper: wn
|
422
|
-
}, dt = It({}),
|
422
|
+
}, dt = It({}), U = () => yt(dt), yn = ({ children: e }) => {
|
423
423
|
const {
|
424
424
|
currentTeam: t,
|
425
425
|
otherTeams: n,
|
@@ -431,7 +431,7 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
431
431
|
canAccessTeamSettings: d,
|
432
432
|
isEndOfTrialActive: l,
|
433
433
|
isTeamSuspended: m
|
434
|
-
} =
|
434
|
+
} = U();
|
435
435
|
return /* @__PURE__ */ i(
|
436
436
|
fe,
|
437
437
|
{
|
@@ -468,7 +468,7 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
468
468
|
}) })
|
469
469
|
}
|
470
470
|
);
|
471
|
-
}, mt = 0, In = 9999, Nn = [150, 151, 250, 251], kn = [152, 153, 252, 253], Sn = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358], En = [156, 159, 160, 256, 259, 260], ft = 9998, _e = (e) => e === mt, ht = (e) => e === In,
|
471
|
+
}, mt = 0, In = 9999, Nn = [150, 151, 250, 251], kn = [152, 153, 252, 253], Sn = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358], En = [156, 159, 160, 256, 259, 260], ft = 9998, _e = (e) => e === mt, ht = (e) => e === In, Ur = (e) => Nn.includes(e), Mr = (e) => kn.includes(e), Br = (e) => Sn.includes(e), $r = (e) => En.includes(e), zr = (e) => e > mt && e < ft, Dr = (e) => e === ft, Pn = /\n/, Fe = (e, t, n) => e.split(t).flatMap((r, a) => a !== 0 ? [Nt(n, { key: Math.random().toString(32).slice(0, 10) }), r] : r), Cn = (e, t, n) => typeof e == "string" ? Fe(e, t, n) : e.flatMap((r) => typeof r == "string" ? Fe(r, t, n) : r), Fr = (e) => Cn(e, Pn, /* @__PURE__ */ i("br", {})), Rn = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi, jn = (e) => e.match(Rn) ?? [], He = (e, t, n) => {
|
472
472
|
const r = e.split(t);
|
473
473
|
if (r.length === 1)
|
474
474
|
return e;
|
@@ -479,7 +479,7 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
479
479
|
}, Ge = (e) => {
|
480
480
|
const t = jn(e);
|
481
481
|
return t != null && t.length ? t.reduce((n, r, a) => typeof n == "string" ? He(n, r, a) : n.flatMap((o) => typeof o == "string" ? He(o, r, a) : o), e) : e;
|
482
|
-
}, Hr = (e) => typeof e == "string" ? Ge(e) : e.flatMap((t) => typeof t == "string" ? Ge(t) : t, e), Gr = (e, t = "PP") => at(e, t), Wr = (e, t, n = "PP") => at(Ct(e, t), n),
|
482
|
+
}, Hr = (e) => typeof e == "string" ? Ge(e) : e.flatMap((t) => typeof t == "string" ? Ge(t) : t, e), Gr = (e, t = "PP") => at(e, t), Wr = (e, t, n = "PP") => at(Ct(e, t), n), Kr = (e) => {
|
483
483
|
q(e, []);
|
484
484
|
}, An = ({ children: e, config: t }) => {
|
485
485
|
const {
|
@@ -510,7 +510,7 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
510
510
|
userEmail: n,
|
511
511
|
hideBottomDivider: r
|
512
512
|
}) => {
|
513
|
-
const { isEndOfTrialActive: a, isTeamSuspended: o } =
|
513
|
+
const { isEndOfTrialActive: a, isTeamSuspended: o } = U();
|
514
514
|
return a || o ? null : /* @__PURE__ */ _(Ve, { children: [
|
515
515
|
/* @__PURE__ */ i(
|
516
516
|
H,
|
@@ -527,15 +527,15 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
527
527
|
),
|
528
528
|
!r && /* @__PURE__ */ i(tt, {})
|
529
529
|
] });
|
530
|
-
},
|
531
|
-
wrapper:
|
532
|
-
profileImage:
|
530
|
+
}, Un = "_wrapper_15d85_1", Mn = "_profileImage_15d85_14", Bn = "_teamName_15d85_22", $n = "_planLabel_15d85_29", zn = "_membership_15d85_38", Dn = "_defaultProfileImage_15d85_44", j = {
|
531
|
+
wrapper: Un,
|
532
|
+
profileImage: Mn,
|
533
533
|
teamName: Bn,
|
534
534
|
planLabel: $n,
|
535
535
|
membership: zn,
|
536
536
|
defaultProfileImage: Dn
|
537
537
|
}, gt = ({ team: e, onClick: t, hidePlanLabel: n }) => {
|
538
|
-
const { currentTeam: r, planId: a } =
|
538
|
+
const { currentTeam: r, planId: a } = U(), o = e || r;
|
539
539
|
if (!o)
|
540
540
|
return null;
|
541
541
|
const c = _e(a) ? "Free" : ht(a) ? "Trial" : void 0;
|
@@ -559,14 +559,14 @@ const nn = "_sidebarContainer_bmdti_1", rn = {
|
|
559
559
|
}, Fn = "_teamsContainer_1t68g_1", Hn = {
|
560
560
|
teamsContainer: Fn
|
561
561
|
}, Gn = ({ onSwitchTeam: e }) => {
|
562
|
-
const { otherTeams: t } =
|
562
|
+
const { otherTeams: t } = U();
|
563
563
|
return t.length === 0 ? null : /* @__PURE__ */ i("div", { className: `flex-col items-stretch ${Hn.teamsContainer}`, children: t.map((n) => /* @__PURE__ */ i(gt, { team: n, onClick: e, hidePlanLabel: !0 }, n.id)) });
|
564
|
-
}, Wn = "_container_1u995_1",
|
564
|
+
}, Wn = "_container_1u995_1", Kn = "_planCta_1u995_15", Jn = "_upgradeIconWrapper_1u995_19", ce = {
|
565
565
|
container: Wn,
|
566
|
-
planCta:
|
567
|
-
upgradeIconWrapper:
|
566
|
+
planCta: Kn,
|
567
|
+
upgradeIconWrapper: Jn
|
568
568
|
}, Qn = ({ upgradeOptionHref: e }) => {
|
569
|
-
const { planId: t, trialDaysLeft: n, showUpgradeCta: r } =
|
569
|
+
const { planId: t, trialDaysLeft: n, showUpgradeCta: r } = U();
|
570
570
|
if (!r)
|
571
571
|
return null;
|
572
572
|
const c = _e(t) ? "Your team is currently on the Free plan" : `Free trial ends in ${n} ${n === 1 ? "day" : "days"}`;
|
@@ -588,11 +588,11 @@ I.TeamSwitch = Gn;
|
|
588
588
|
I.TeamMenuItem = gt;
|
589
589
|
I.UpgradeMenuItem = Qn;
|
590
590
|
I.ProfileSettingsMenuItem = qn;
|
591
|
-
const Vn = "_breadcrumbsItem_1hm6a_1", Yn = "_breadcrumbs_1hm6a_1",
|
591
|
+
const Vn = "_breadcrumbsItem_1hm6a_1", Yn = "_breadcrumbs_1hm6a_1", Ke = {
|
592
592
|
breadcrumbsItem: Vn,
|
593
593
|
breadcrumbs: Yn
|
594
|
-
},
|
595
|
-
/* @__PURE__ */ i(Xe, { className:
|
594
|
+
}, Jr = ({ items: e }) => /* @__PURE__ */ i("nav", { "aria-label": "breadcrumb", className: Ke.breadcrumbs, children: e.map((t, n) => /* @__PURE__ */ _(Ze, { children: [
|
595
|
+
/* @__PURE__ */ i(Xe, { className: Ke.breadcrumbsItem, href: t.link, rel: "noreferrer", children: t.name }),
|
596
596
|
n < e.length - 1 && /* @__PURE__ */ i("span", { children: " — " })
|
597
597
|
] }, `${t.link}-${t.name}`)) }), Zn = ({ items: e }) => /* @__PURE__ */ i(Ve, { children: e.map((t, n) => /* @__PURE__ */ _(Ze, { children: [
|
598
598
|
!!n && t.some((r) => r.visible) && /* @__PURE__ */ i(tt, {}),
|
@@ -604,7 +604,7 @@ const Vn = "_breadcrumbsItem_1hm6a_1", Yn = "_breadcrumbs_1hm6a_1", Je = {
|
|
604
604
|
disabled: nr,
|
605
605
|
projectNavigationItem: rr,
|
606
606
|
projectNavigationItemDisabled: ar
|
607
|
-
},
|
607
|
+
}, Je = ({ label: e, badge: t, novel: n }) => /* @__PURE__ */ _("div", { className: "flex gap-1", children: [
|
608
608
|
/* @__PURE__ */ _("div", { children: [
|
609
609
|
/* @__PURE__ */ i("span", { children: e }),
|
610
610
|
!!t && /* @__PURE__ */ i("div", { className: C.badge, "aria-label": `${t} items requiring attention`, children: t > 9 ? "9+" : t })
|
@@ -625,9 +625,9 @@ const Vn = "_breadcrumbsItem_1hm6a_1", Yn = "_breadcrumbs_1hm6a_1", Je = {
|
|
625
625
|
}),
|
626
626
|
disabled: n,
|
627
627
|
onClick: a,
|
628
|
-
children: /* @__PURE__ */ i(
|
628
|
+
children: /* @__PURE__ */ i(Je, { label: e, badge: r, novel: o })
|
629
629
|
}
|
630
|
-
) : /* @__PURE__ */ i("a", { href: t, className: C.withNavLinkStyle, children: /* @__PURE__ */ i(
|
630
|
+
) : /* @__PURE__ */ i("a", { href: t, className: C.withNavLinkStyle, children: /* @__PURE__ */ i(Je, { label: e, badge: r, novel: o }) })
|
631
631
|
}
|
632
632
|
) })
|
633
633
|
);
|
@@ -779,9 +779,10 @@ const F = class F extends CustomEvent {
|
|
779
779
|
};
|
780
780
|
Ne(F, "eventName", "new-jwt-issued");
|
781
781
|
let L = F;
|
782
|
-
|
783
|
-
|
784
|
-
|
782
|
+
function Vr(e, t) {
|
783
|
+
const n = _r(e, {
|
784
|
+
queryKey: pr.teamKey(t)
|
785
|
+
}), r = Ye();
|
785
786
|
return q(() => {
|
786
787
|
n.data && n.data.accessToken !== r.current && (window.dispatchEvent(new L(n.data)), r.current = n.data.accessToken);
|
787
788
|
}, [n.data]), n;
|
@@ -811,17 +812,20 @@ function pt() {
|
|
811
812
|
};
|
812
813
|
}, []), e;
|
813
814
|
}
|
814
|
-
|
815
|
-
function Xr(e) {
|
815
|
+
function Yr(e) {
|
816
816
|
const t = pt();
|
817
|
-
return br(e,
|
817
|
+
return br(e, {
|
818
|
+
queryKey: gr.teamUserKey((t == null ? void 0 : t.teamId) ?? 0, (t == null ? void 0 : t.userId) ?? 0)
|
819
|
+
});
|
818
820
|
}
|
819
|
-
|
820
|
-
function ta(e, t) {
|
821
|
+
function Zr(e, t) {
|
821
822
|
const n = pt();
|
822
|
-
return Tr(e,
|
823
|
+
return Tr(e, {
|
824
|
+
queryKey: vr.projectUserKey(t, (n == null ? void 0 : n.userId) ?? 0),
|
825
|
+
enabled: n !== void 0
|
826
|
+
});
|
823
827
|
}
|
824
|
-
async function
|
828
|
+
async function Xr() {
|
825
829
|
const e = await Te();
|
826
830
|
if (!e)
|
827
831
|
return Promise.resolve(void 0);
|
@@ -882,7 +886,7 @@ function kr(e, t) {
|
|
882
886
|
});
|
883
887
|
};
|
884
888
|
}
|
885
|
-
const
|
889
|
+
const ea = {
|
886
890
|
wretch: {
|
887
891
|
lokaliseAuth(e = {}) {
|
888
892
|
return this.addon(Nr).lokaliseAuth(Qe(e));
|
@@ -905,14 +909,14 @@ function Qe(e) {
|
|
905
909
|
};
|
906
910
|
}
|
907
911
|
export {
|
908
|
-
|
912
|
+
Jr as Breadcrumbs,
|
909
913
|
ft as ENTERPRISE_OPENSOURCE_PLAN_ID,
|
910
914
|
En as ENTERPRISE_PLAN_IDS,
|
911
915
|
kn as ESSENTIAL_PLAN_IDS,
|
912
916
|
mt as FREE_PLAN_ID,
|
913
917
|
hr as JWT_TOKEN_SCHEMA,
|
914
918
|
Nr as LokaliseAuthAddon,
|
915
|
-
|
919
|
+
ea as LokaliseAuthBrowserAddon,
|
916
920
|
D as NavigationPanel,
|
917
921
|
Qr as NavigationTabs,
|
918
922
|
Sn as PRO_PLAN_IDS,
|
@@ -920,35 +924,32 @@ export {
|
|
920
924
|
I as Sidebar,
|
921
925
|
dr as TEAM_USER_SCHEMA,
|
922
926
|
In as TRIAL_PLAN_ID,
|
923
|
-
ea as authenticatedContributorKeys,
|
924
|
-
Zr as authenticatedUserKeys,
|
925
927
|
Fr as convertNewLineToBreakTag,
|
926
928
|
Gr as formatDate,
|
927
929
|
Wr as formatDateTz,
|
928
|
-
|
929
|
-
Vr as getPromotedClassicSessionJwtKey,
|
930
|
+
Xr as getAuthenticatedSessionDetailFromRequest,
|
930
931
|
fr as getTeamUser,
|
931
932
|
gr as getTeamUsersQueryKey,
|
932
933
|
ve as getUserToken,
|
933
934
|
pr as getUserTokenKey,
|
934
935
|
Dr as isEnterpriseOpenSourcePlan,
|
935
936
|
$r as isEnterprisePlan,
|
936
|
-
|
937
|
+
Mr as isEssentialPlan,
|
937
938
|
_e as isFreePlan,
|
938
939
|
zr as isPaidPlan,
|
939
940
|
Br as isProPlan,
|
940
|
-
|
941
|
+
Ur as isStartPlan,
|
941
942
|
ht as isTrialPlan,
|
942
943
|
Hr as makeUrlClickable,
|
943
944
|
G as parseJwtTokenPayload,
|
944
945
|
ur as retrieveContributor,
|
945
946
|
vr as retrieveContributorKeys,
|
946
|
-
|
947
|
+
Zr as useAuthenticatedProjectContributor,
|
947
948
|
pt as useAuthenticatedSessionPayload,
|
948
|
-
|
949
|
-
|
950
|
-
|
949
|
+
Yr as useAuthenticatedUser,
|
950
|
+
Kr as useEffectOnce,
|
951
|
+
Vr as useGetPromotedClassicSessionJwtQuery,
|
952
|
+
br as useGetTeamUsersQuery,
|
951
953
|
_r as useGetUserTokenQuery,
|
952
|
-
Tr as useRetrieveContributorQuery
|
953
|
-
br as userGetTeamUsersQuery
|
954
|
+
Tr as useRetrieveContributorQuery
|
954
955
|
};
|
@@ -1,7 +1,4 @@
|
|
1
1
|
import { Wretch } from 'wretch';
|
2
|
-
export declare const authenticatedContributorKeys: {
|
3
|
-
projectUserKey: (projectId: string, userId: number) => readonly ["RetrieveContributor", string, number];
|
4
|
-
};
|
5
2
|
export declare function useAuthenticatedProjectContributor<T>(api: Wretch<T>, projectId: string): import('@tanstack/react-query').UseQueryResult<{
|
6
3
|
contributors: {
|
7
4
|
email: string;
|
@@ -1,7 +1,4 @@
|
|
1
1
|
import { Wretch } from 'wretch';
|
2
|
-
export declare const authenticatedUserKeys: {
|
3
|
-
teamUserKey: (teamId: number, userId: number) => readonly ["GetTeamUsers", number, number];
|
4
|
-
};
|
5
2
|
export declare function useAuthenticatedUser<T>(api: Wretch<T>): import('@tanstack/react-query').UseQueryResult<{
|
6
3
|
team_id: number;
|
7
4
|
team_user: {
|
package/dist/types/src/features/auth/frontend/hooks/useGetPromotedClassicSessionJwtQuery.d.ts
CHANGED
@@ -1,7 +1,4 @@
|
|
1
1
|
import { Wretch } from 'wretch';
|
2
|
-
export declare const getPromotedClassicSessionJwtKey: {
|
3
|
-
teamKey: (teamId: number) => readonly ["getUserToken", number];
|
4
|
-
};
|
5
2
|
export declare function useGetPromotedClassicSessionJwtQuery<T>(api: Wretch<T>, teamId: number): import('@tanstack/react-query').UseQueryResult<{
|
6
3
|
accessToken: string;
|
7
4
|
refreshToken: string;
|
@@ -13,6 +13,6 @@ export { LokaliseAuthBrowserAddon } from './frontend/addon/lokaliseAuthBrowserAd
|
|
13
13
|
* Public API
|
14
14
|
*/
|
15
15
|
export * from '../publicApi/hooks/useGetUserTokenQuery';
|
16
|
-
export * from '../publicApi/hooks/
|
16
|
+
export * from '../publicApi/hooks/useGetTeamUsersQuery';
|
17
17
|
export * from '../publicApi/hooks/useRetrieveContributorQuery';
|
18
18
|
export type { JwtTokenPayload } from './core/types/jwtTokenPayload';
|
@@ -4,7 +4,7 @@ import { TeamUserResponse } from '../teamUsers';
|
|
4
4
|
export declare const getTeamUsersQueryKey: {
|
5
5
|
teamUserKey: (teamId: number, userId: number) => readonly ["GetTeamUsers", number, number];
|
6
6
|
};
|
7
|
-
export declare const
|
7
|
+
export declare const useGetTeamUsersQuery: <T>(api: Wretch<T>, overrides: ApiQueryOverrides<TeamUserResponse, typeof getTeamUsersQueryKey>) => import('@tanstack/react-query').UseQueryResult<{
|
8
8
|
team_id: number;
|
9
9
|
team_user: {
|
10
10
|
role: "member" | "admin" | "biller" | "owner";
|
@@ -1,6 +1,6 @@
|
|
1
1
|
export * from './contributors';
|
2
2
|
export * from './teamUsers';
|
3
3
|
export * from './userToken';
|
4
|
-
export * from './hooks/
|
4
|
+
export * from './hooks/useGetTeamUsersQuery';
|
5
5
|
export * from './hooks/useGetUserTokenQuery';
|
6
6
|
export * from './hooks/useRetrieveContributorQuery';
|