@veltdev/sdk-staging 6.0.8-beta.2 → 6.0.8

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.
Files changed (65) hide show
  1. package/app/models/data/comment-action.data.model.d.ts +55 -0
  2. package/app/models/data/comment-annotation.data.model.d.ts +11 -0
  3. package/app/models/data/comment-events.data.model.d.ts +52 -0
  4. package/app/models/data/comment-progress.data.model.d.ts +127 -0
  5. package/app/models/data/comment.data.model.d.ts +29 -0
  6. package/app/models/data/notification.model.d.ts +13 -0
  7. package/app/models/element/comment-element.model.d.ts +9 -0
  8. package/app/models/element/notification-element.model.d.ts +24 -1
  9. package/app/utils/enums.d.ts +1 -0
  10. package/{chunk-5XIWDXFS.js → chunk-23Y35Q3J.js} +1 -1
  11. package/{chunk-556JP7KB.js → chunk-23YNPJA6.js} +1 -1
  12. package/{chunk-RTIZJ4JW.js → chunk-2N7F6RD7.js} +1 -1
  13. package/{chunk-KI5LFWRP.js → chunk-3QB54TU3.js} +1 -1
  14. package/{chunk-5K66YWNT.js → chunk-3T53AUKI.js} +1 -1
  15. package/{chunk-WTWLL3QD.js → chunk-4BWTKX3J.js} +1 -1
  16. package/{chunk-CRZGZZVQ.js → chunk-4EV2AXDK.js} +10 -10
  17. package/{chunk-Y6KJEASI.js → chunk-4ZVKEG33.js} +1 -1
  18. package/{chunk-33F6VZ2D.js → chunk-6AS4UBOQ.js} +1 -1
  19. package/{chunk-HNZ452CD.js → chunk-7AHH7XWM.js} +1 -1
  20. package/{chunk-BL3PIRRB.js → chunk-ABE26DFY.js} +1 -1
  21. package/{chunk-IOANBPOF.js → chunk-CQ2PFN5H.js} +1 -1
  22. package/{chunk-NLHWZCYU.js → chunk-E2Q3RJVJ.js} +1 -1
  23. package/{chunk-3XNLR5I6.js → chunk-F7UEUUNI.js} +1 -1
  24. package/{chunk-TCRGSGLB.js → chunk-FKN5MCLS.js} +1 -1
  25. package/{chunk-L3RST2RO.js → chunk-GDYKECHB.js} +1 -1
  26. package/chunk-H3AESJRG.js +1 -0
  27. package/{chunk-7JVKTVLP.js → chunk-JKLS6423.js} +1 -1
  28. package/{chunk-5YU74OX2.js → chunk-KPCULYW2.js} +1 -1
  29. package/{chunk-24U4LEAT.js → chunk-MUZB4ZRW.js} +1 -1
  30. package/{chunk-F425LPIZ.js → chunk-MVFPB6P2.js} +1 -1
  31. package/{chunk-PWKBFA6F.js → chunk-O64Y7CY5.js} +1 -1
  32. package/{chunk-O6F3BMUF.js → chunk-OK6SKS5O.js} +1 -1
  33. package/{chunk-LK3CGZV4.js → chunk-PDOET6TG.js} +1 -1
  34. package/{chunk-WNW7AS77.js → chunk-PPWVFIE5.js} +1 -1
  35. package/{chunk-L5DZYMH5.js → chunk-QHAOMKNT.js} +1 -1
  36. package/{chunk-H2PBKB34.js → chunk-QYY5QDZZ.js} +1 -1
  37. package/{chunk-SWIIDQSR.js → chunk-S7J3GTUB.js} +1 -1
  38. package/{chunk-LFEKCFWQ.js → chunk-SHXQBB7N.js} +1 -1
  39. package/{chunk-WG6SZMXC.js → chunk-TVHRQJC4.js} +1 -1
  40. package/{chunk-7LAV2XPR.js → chunk-UQI5JFMO.js} +1 -1
  41. package/{chunk-IWJMDNA6.js → chunk-UUEOTEBS.js} +1 -1
  42. package/{chunk-J3XMPD2L.js → chunk-ZWTASV4Q.js} +1 -1
  43. package/models.d.ts +2 -0
  44. package/package.json +1 -1
  45. package/velt-activity-log.js +1 -1
  46. package/velt-area.js +1 -1
  47. package/velt-arrow.js +1 -1
  48. package/velt-comment.js +7 -7
  49. package/velt-crdt.js +1 -1
  50. package/velt-cursor.js +1 -1
  51. package/velt-huddle.js +1 -1
  52. package/velt-live-state-sync.js +1 -1
  53. package/velt-notification.js +1 -1
  54. package/velt-presence.js +1 -1
  55. package/velt-reaction.js +1 -1
  56. package/velt-recorder.js +1 -1
  57. package/velt-rewriter.js +1 -1
  58. package/velt-selection.js +1 -1
  59. package/velt-tag.js +1 -1
  60. package/velt-user-invite.js +1 -1
  61. package/velt-user-request.js +1 -1
  62. package/velt-video-player.js +1 -1
  63. package/velt-views.js +1 -1
  64. package/velt.js +3 -3
  65. package/chunk-LUSP4CU7.js +0 -1
package/velt-reaction.js CHANGED
@@ -1 +1 @@
1
- import{j as gn,l as Re,m as st,t as hn}from"./chunk-LK3CGZV4.js";import"./chunk-PWKBFA6F.js";import{x as vn}from"./chunk-SWIIDQSR.js";import{a as Cn}from"./chunk-WG6SZMXC.js";import{a as ke}from"./chunk-Y6KJEASI.js";import{a as pn}from"./chunk-H2PBKB34.js";import{B as N,C as z,z as dn}from"./chunk-F425LPIZ.js";import{a as se}from"./chunk-L3RST2RO.js";import{b as H,c as mt,d as un}from"./chunk-5YU74OX2.js";import{a as _n}from"./chunk-24U4LEAT.js";import{a as fn}from"./chunk-KI5LFWRP.js";import{a as Gt}from"./chunk-NLHWZCYU.js";import{A as $t,G as Ht,H as Yt,I as Xt,da as h,ea as he,fa as $,ga as fe}from"./chunk-7LAV2XPR.js";import{$ as Pt,Aa as De,Ai as sn,Bf as _t,Ch as ct,Db as ut,E as xe,Eb as ht,Ed as Jt,Ee as ce,Fa as s,Fb as ft,Fc as Me,Fi as je,G as Ot,Ga as _e,Gc as F,Hc as Lt,Ib as G,Ic as Vt,J as Oe,Jc as Wt,Jg as at,Kb as Ce,Kf as Ct,L as ot,Lc as ge,Lf as Zt,Nb as Ve,Ob as Nt,Pa as d,Pb as rt,Pc as zt,Pi as mn,Sf as qt,T as X,Ta as jt,Ua as M,Uf as en,Uh as It,Va as Ft,Y as gt,Ya as A,Yf as tn,_a as m,_b as j,a as k,aa as Mt,ac as Bt,ai as an,b as B,bc as y,ca as le,cc as D,db as R,fc as W,g as be,gg as nn,ha as K,ia as Q,ii as lt,ja as At,ji as cn,kc as T,ki as S,l as it,lb as l,lc as w,li as ln,mb as b,mc as We,mh as Se,nb as I,ob as U,oe as Kt,oh as bt,pc as ae,q as Dt,qa as Pe,qg as on,qh as rn,r as Y,sb as g,sc as Ut,sf as Qt,sh as xt,si as ye,tb as u,ti as Ae,ua as Ie,ub as pe,ui as St,v as V,vb as ee,w as pt,wa as P,x as wt,xb as te,zb as a,zi as ue}from"./chunk-CRZGZZVQ.js";var me=(()=>{let o=class o{constructor(e,n,r,c,p,x,_,f,v,C,E,O,q){this.afAuth=e,this.analyticsService=n,this.authService=r,this.configService=c,this.databaseService=p,this.commonDbService=x,this.docService=_,this.domService=f,this.emojiService=v,this.iamService=C,this.loggingService=E,this.userPermissionService=O,this.serviceBook=q,this.documentPaths=null,this.reactionAnnotationById$=new it({}),this.customReactions$=new it({}),this.commentService=null,this.darkMode$=new it(null),this.loggingService.log("%c[WB] Creating CLASS: ReactionService","color: blue;"),this.serviceBook.observe(It).subscribe(L=>{this.commentService=L}),this.databaseService.getDb().pipe(xe(L=>!!L),Oe(1)).subscribe(L=>{L&&this.getAllReactionAnnotations(void 0,void 0,!0).subscribe()},L=>{this.loggingService.catch("Error in ReactionService getDb subscription: ",L)})}setCommentService(e){this.loggingService.log("%c[WB] Calling FUNCTION: setCommentService","color: green;");try{this.commentService=e}catch(n){this.loggingService.catch("Error in ReactionService setCommentService: ",n)}}clearCache(){this.loggingService.log("%c[WB] Calling FUNCTION: clearCache in ReactionService","color: green;");try{this.reactionAnnotationById$.next({}),this.customReactions$.next({}),this.documentPaths=null}catch(e){this.loggingService.catch("Error in ReactionService clearCache: ",e)}}getAllReactionAnnotations(e,n,r,c,p){this.loggingService.log("%c[WB] Calling FUNCTION: getAllReactionAnnotations","color: green;");let x,_;try{if(e&&(_=`${_t(e)}`),n&&typeof n=="object"){let f=tn(n);x=_t(JSON.stringify(f))}}catch(f){this.loggingService.catch("Error in ReactionService getAllReactionAnnotations: ",f)}return this.authService.getAuthState$().pipe(xe(f=>!!f),X(f=>this.isFeatureAllowed({firebaseUser:f,annotations:[],filteredAnnotations:[]})),X(f=>f.featureAllowed?this.iamService.isUserAllowed$().pipe(V(v=>(f.featureAllowed=v,f))):Y(f)),X(f=>f.featureAllowed?Y(f).pipe(X(v=>this.docService.getDocumentPaths$().pipe(V(C=>(this.documentPaths=C,v.documentPaths=C,v)))),X(v=>_?this.getDataFromDocumentIds([_]).pipe(V(C=>(v.annotations=C||[],k({},v)))):this.docService.getDocumentIds$().pipe(X(C=>{let E=C?.length>0?C.map(O=>O.documentId):[this.documentPaths?.documentId??""];return this.getDataFromDocumentIds(E).pipe(V(O=>(v.annotations=O||[],k({},v))))}))),X(v=>this.docService.getLocation$().pipe(V(C=>(v.location=C,v)))),X(v=>this.docService.getLocations$().pipe(V(C=>(v.customLocations=C,v)))),V(v=>{if(v.filteredAnnotations=[],_&&!x)return v.filteredAnnotations=v.annotations?.slice(),v;{let C=[];return x?C.push(x):(C.push(v?.location?.locationId),C.push(...Object.values(v?.customLocations||[]).map(E=>E.locationId))),v.filteredAnnotations=this.filterAnnotationsByLocationIds(v?.annotations,C),v}}),X(v=>r?Y(v):v?.annotations?.length?this.domService.onWindowResize$().pipe(V(()=>v)):Y(v)),X(v=>r?Y(v):Y(v)),V(v=>v),X(v=>v?.filteredAnnotations?Y(v?.filteredAnnotations||[]):Y([]))):Y([])),ot(rn))}isFeatureAllowed(e){return this.configService.getConfig$().pipe(xe(n=>!!n),V(n=>B(k({},e),{config:n})),X(n=>this.authService.getUser$().pipe(V(r=>B(k({},n),{user:r})))),X(n=>en(n.config,n.user,Kt.REACTION)?Y(B(k({},n),{featureAllowed:!0})):(this.loggingService.warn("Reaction feature is not allowed."),Y(B(k({},n),{featureAllowed:!1})))),ot((n,r)=>n?.featureAllowed===r?.featureAllowed))}getDataFromDocumentIds(e,n){return this.getDataFromDocuments({documentIds:e,filters:n})}getDataFromDocuments(e){if(this.configService?.getApiKey()){let{documentIds:n,filters:r}=e;return n?.some(c=>!c)||!this.documentPaths?Y([]):wt(()=>{let c=this.authService.getUser()?.userId;return c?this.serviceBook.observe(It).pipe(V(p=>!!p?.buildVisibilityTokens),ot(),X(()=>Dt(this.buildReactionVisibilityTokens(c))),X(p=>this.buildReactionAnnotationsListener({documentIds:n,filters:r,visibilityTokens:p,currentUserId:c}))):Y([])})}else return Y([])}buildReactionAnnotationsListener({documentIds:e,filters:n,visibilityTokens:r,currentUserId:c}){let p=this.docService.getDocumentPaths()?.veltFolderId,x=Y([]),_={useCollectionGroup:!0,isCollection:!0,useQuery:!0};this.commonDbService.shouldUseFirestore()||(_.documentId=e?.length?e[0]:void 0,_.organizationId=this.documentPaths?.organizationId);let f=this.userPermissionService?.getIsContextEnabled(),v=this.authService.getIsPrivateCommentsEnabled()?r:[ce.DEFAULT_VELT_CONTEXT],C=f?this.docService.getProcessedDocContext():[];if(f){let E=[...v,...C],O=Math.max(1,Math.min(ce.LISTENER_CONTEXT_BATCH_SIZE,Math.floor(ce.FIRESTORE_MAX_DISJUNCTIONS/Math.max(1,e?.length??1)))),q=[];for(let L=0;L<(E?.length??0);L+=O)q.push(E?.slice(L,L+O)??[]);x=pt(q.map(L=>this.commonDbService.dbListener({feature:"allReactions",properties:B(k({},_),{firestoreQuery:[St(ue("metadata.apiKey","==",this.configService?.getApiKey()),ue("metadata.documentId","in",e),ue("metadata.organizationId","==",this.documentPaths?.organizationId),...p?[ue("metadata.veltFolderId","==",p)]:[],...L?.length?[ue("context.accessFields","array-contains-any",L)]:[])]})}).pipe(gt()))).pipe(V(L=>xt(L)))}else{let E=[];for(let O=0;O<(e?.length??0);O+=ce.LISTENER_BATCH_SIZE)E.push(e?.slice(O,O+ce.LISTENER_BATCH_SIZE)??[]);x=pt(E.map(O=>this.commonDbService.dbListener({feature:"allReactions",properties:B(k({},_),{firestoreQuery:[St(ue("metadata.apiKey","==",this.configService?.getApiKey()),ue("metadata.documentId","in",O),ue("metadata.organizationId","==",this.documentPaths?.organizationId),...p?[ue("metadata.veltFolderId","==",p)]:[])]})}).pipe(gt()))).pipe(V(O=>xt(O)))}return x.pipe(V(E=>({data:E?.data,operation:E?.operation})),V(({data:E,operation:O})=>{let q=[];return E&&(q=Object.values(E??{}).filter(L=>typeof L=="object")),q?.forEach(L=>{this.sanitizeReactionAnnotation(L)}),q=this.applyReactionVisibilityPostFilter(q,r,c,f?C:null),{data:q,operation:O}}),V(({data:E,operation:O})=>{if(!e)return{data:E,documentMap:{},operation:O};let q=E.reduce((L,we)=>{let nt=we.metadata?.documentId;return nt&&(L[nt]||(L[nt]=[]),L[nt].push(we)),L},{});return{data:E,documentMap:q,operation:O}}),V(({data:E,documentMap:O,operation:q})=>{if(!n)if(q?.type==="removed"){if(q?.ids?.length){let L=this.reactionAnnotationById$.value;q?.ids?.forEach(we=>{delete L?.[we]}),this.reactionAnnotationById$.next(L)}}else Object.entries(O??{}).forEach(([L,we])=>{this.setReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:this.documentPaths?.organizationId,documentId:L,annotations:we})});return E}),Ot(E=>(this.loggingService.catch("Error in ReactionService getDataFromDocumentId: ",E),Y([]))))}buildReactionVisibilityTokens(e){return be(this,null,function*(){try{return this.commentService?.buildVisibilityTokens?yield this.commentService.buildVisibilityTokens(e):Ct({userId:e})}catch(n){return this.loggingService.catch("Error in ReactionService buildReactionVisibilityTokens: ",n),Ct({userId:e})}})}applyReactionVisibilityPostFilter(e,n,r,c){try{let p=Zt(e,{userId:r,tokens:n});c&&(p=qt(p,c));let x=new Set(p),_=(e||[]).filter(f=>!x.has(f));return _.length&&this.evictReactionAnnotationsFromLocalCache(_.map(f=>f?.annotationId).filter(f=>!!f)),p}catch(p){return this.loggingService.catch("Error in ReactionService applyReactionVisibilityPostFilter: ",p),e}}evictReactionAnnotationsFromLocalCache(e){try{if(!e?.length)return;let n=this.reactionAnnotationById$?.value;if(n&&e.some(r=>r in n)){let r=k({},n);e.forEach(c=>{delete r[c]}),this.reactionAnnotationById$.next(r)}}catch(n){this.loggingService.catch("Error in ReactionService evictReactionAnnotationsFromLocalCache: ",n)}}setReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:e,documentId:n,annotations:r,queryHash:c}){try{if(n){e||(e=ce.NO_ORGANIZATION_ID),c||(c=ce.DEFAULT_QUERY_HASH);let p={};r?.forEach(_=>{_?.annotationId&&(p[_?.annotationId]=_)});let x=k(k({},this.reactionAnnotationById$.value),p);this.reactionAnnotationById$.next(x)}}catch(p){this.loggingService.catch("Error in ReactionService setReactionAnnotationsByOrganizationIdAndDocumentId:",p)}}getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:e,documentId:n}){try{let r={};return Object.values(this.reactionAnnotationById$.value??{}).forEach(c=>{c?.metadata?.documentId==n&&c?.metadata?.organizationId==e&&(r[c?.annotationId]=c)}),Object.values(r)}catch(r){return this.loggingService.catch("Error in ReactionService getReactionAnnotationsByOrganizationIdAndDocumentId:",r),[]}}getLocations$(){return this.docService.getLocation$().pipe(X(e=>this.docService.getLocations$().pipe(V(n=>({location:e,locations:n})))),V(e=>{let n=[];return n.push(e?.location?.locationId),n.push(...Object.values(e.locations||[]).map(r=>r.locationId)),n||[]}))}filterAnnotationsByLocationIds(e,n){try{return e.filter(r=>n.includes(r.locationId))}catch(r){return this.loggingService.catch("Error in ReactionService filterAnnotationsByLocations:",r),[]}}getAnnotationById(e,n){try{let r=this.reactionAnnotationById$.value?.[e];if(r){let{documentId:c,organizationId:p}=n||{};if(c&&r.metadata?.documentId!==c||p&&r.metadata?.organizationId!==p)return}return r}catch(r){this.loggingService.catch("Error in ReactionService getAnnotationById: ",r);return}}getBaseMetadataFromReactionAnnotationId(e){try{let n=this.reactionAnnotationById$.value?.[e];return n?n.metadata:void 0}catch(n){this.loggingService.catch("Error in ReactionService getBaseMetadataFromReactionAnnotationId: ",n);return}}getReactionAnnotationByAnnotationId(e,n){try{return this.reactionAnnotationById$.pipe(V(()=>this.getAnnotationById(e,n)),X(r=>r?Y(r):Y(r)))}catch(r){return this.loggingService.catch("Error in ReactionService getReactionAnnotationByAnnotationId: ",r),Y(void 0)}}getReactionAnnotationsBySectionId(e){try{return this.reactionAnnotationById$.pipe(X(n=>this.docService.getDocumentPaths$().pipe(V(r=>({documentPaths:r,sectionId:e,reactionAnnotationsMap:n})))),X(n=>{let r=at(e,["id","data-id"]);if(r){let c=this.docService.getAdditionLocationFromElement(r);if(c){let p=this.docService.genarateLocationId(c);return this.docService.getLocations$().pipe(V(x=>{let f=Object.values(x||{}).find(v=>v.locationId===p||c?.id&&v.location.id===c.id);return B(k({},n),{additionalLocation:f,locationOnElement:!!c})}))}}return Y(B(k({},n),{additionalLocation:null,element:r}))}),X(n=>n?.locationOnElement?Y(n):this.docService.getLocation$().pipe(V(r=>B(k({},n),{location:r})))),V(({documentPaths:n,location:r,additionalLocation:c,locationOnElement:p,element:x})=>{let _=null,f=this.docService.getAdditionalDocumentIdFromElement(x),v=f?this.docService.generateDocumentId(f):n?.documentId,C=n?.organizationId;if(v){let E=this.getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:C,documentId:v});if(E){_=[];for(let O of E)O?.targetElementId===e&&(p?c&&bt({location:c?.location,locationId:c?.locationId},{location:O.location,locationId:O.locationId})&&_.push(O):r?bt({location:r?.location,locationId:r?.locationId},{location:O.location,locationId:O.locationId})&&_.push(O):O?.locationId||_.push(O))}}return _}))}catch(n){return this.loggingService.catch("Error in ReactionService getReactionAnnotationsBySectionId: ",n),Y(null)}}addOrUpdateReaction(e,n,r,c,p,x,_,f){return be(this,null,function*(){try{let v=n?.map(C=>this.getAnnotationById(C)).find(C=>C?.icon===e);if(v){if(!_||_==="delete")return yield this.updateUserInReaction(v)}else if(!_||_==="add")return yield this.addReaction(void 0,e,r,c,p,x,f)}catch(v){this.loggingService.catch("Error in ReactionService addOrUpdateReaction: ",v)}})}addReaction(e,n,r,c,p,x,_){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: addReaction","color: green;");try{let f=this.authService.getUser();if(f)if(f.isReadOnly||f.isAnonymous)this.loggingService.catch("Anonymous/Readonly users cannot add reactions.");else{let v=new Qt;if(v.from=f,v.lastUpdated=this.timestamp,v.reactions=[],v.reactions.push({from:f,lastUpdated:this.timestamp}),c&&(v.targetElementId=c),p){v.commentAnnotationId=p;let C=this.commentService?.getAnnotationById(p);C||this.loggingService.warn("addReaction: parent comment annotation not in local cache \u2014 reaction written without inherited access gate.",p);let E=C?.context?.accessFields;if(E?.length){if(!this.userPermissionService?.hasUserContextAccess({userId:f.userId,accessFields:E})){this.loggingService.catch("User does not have context access to add reaction annotation.",void 0,void 0,!0);return}v.context=B(k({},C?.context?.access?{access:C.context.access}:{}),{accessFields:E})}}if(this.setLocationToReactionAnnotation(v),v.pageInfo=on(),v.pageInfo&&(v.pageInfo.screenWidth=this.domService.getCurrentWindowSizeValue()?.screenWidth),n)if(v.icon=n,x)v.iconUrl=x?.url,v.iconEmoji=x?.emoji;else{let C=this.customReactions$.value;if(C){let E=C[n];E?.url&&(v.iconUrl=E?.url),E?.emoji&&(v.iconEmoji=E?.emoji)}}return r&&(v.location={},v.location=k({},r),v.locationId=this.docService.genarateLocationId(v.location)),yield this.saveReactionToDb(v)}}catch(f){this.loggingService.catch("Error in ReactionService addReaction: ",f)}})}setLocationToReactionAnnotation(e){try{let n=this.docService.getLocation();n?(e.locationId=n.locationId,e.location=n.location):(delete e.locationId,delete e.location);try{let r;e.targetElement?.xpath?r=this.domService.getElementFromXPath(e.targetElement.xpath):e.targetElementId&&(r=at(e.targetElementId,["id","data-id"]));let c=this.docService.getAdditionLocationFromElement(r);if(c){let p=this.docService.addLocation({location:c,source:"internal"});p?.[0]&&(e.locationId=p[0].locationId,e.location=p[0].location)}}catch{}}catch(n){this.loggingService.catch("Error in ReactionService setLocationToReactionAnnotation:",n)}}getElementForReactionAnnotation(e){try{let n;return e.targetElementId&&(n=at(e.targetElementId,["id","data-id"])),n}catch(n){return this.loggingService.catch("Error in ReactionService getElementForReactionAnnotation: ",n),null}}saveReactionToDb(e){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: saveReactionToDb","color: green;");try{if(this.authService.getUser()){let n=yield this.docService.getDocumentPaths$().pipe(xe(c=>!!c),Oe(1)).toPromise();if(!n)throw new Error("Document paths not found.");if(this.documentPaths=n,this.loggingService.log(this.documentPaths),!(yield this.databaseService.getDb().pipe(xe(c=>!!c),Oe(1)).toPromise()))throw new Error("Database not found.");if(this.documentPaths?.reaction){if(e.annotationId=this.commonDbService.generateDocumentId(),e.pageInfo,!e?.metadata?.documentId){e?.metadata||(e.metadata={});let f=this.getElementForReactionAnnotation(e),v=this.docService.getBaseMetadata("reaction",{commentAnnotationId:e.commentAnnotationId,element:f});e.metadata=k(k({},e?.metadata),v)}let c=JSON.parse(JSON.stringify(e));c.position=null;let{documentId:p,organizationId:x}=this.getDocumentIdAndOrganizationIdFromReactionAnnotation(e),_=e.commentAnnotationId?void 0:{annotationData:c,actionType:"add",notificationSource:"reaction"};return yield this.commonDbService.setData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:c,extraData:_}),c}else return}}catch(n){this.loggingService.catch("Error in ReactionService saveReactionToDb: ",n)}})}getDocumentIdAndOrganizationIdFromReactionAnnotation(e){try{return{documentId:e?.metadata?.documentId,organizationId:e?.metadata?.organizationId}}catch(n){return this.loggingService.catch("Error in ReactionService getDocumentIdAndOrganizationIdFromReactionAnnotation: ",n),{}}}updateUserInReaction(e){return be(this,null,function*(){try{let n=this.authService.getUser();if(n)return e?.reactions||(e.reactions=[]),e?.reactions?.find(c=>c?.from?.userId===n?.userId)?e.reactions=e?.reactions?.filter(c=>c?.from?.userId!==n?.userId):e.reactions.push({from:n,lastUpdated:this.timestamp}),e.reactions.length?yield this.updateReaction(e):yield this.deleteReactionPinAnnotation(e?.annotationId),e}catch(n){this.loggingService.catch("Error in ReactionService updateUserInReaction: ",n)}})}removeUserFromReaction(e){this.loggingService.log("%c[WB] Calling FUNCTION: removeUserFromReaction","color: green;");try{let n=this.authService.getUser();n&&(e?.reactions||(e.reactions=[]),e.reactions=e?.reactions?.filter(r=>r?.from?.userId!==n?.userId),this.updateReaction(e))}catch(n){this.loggingService.catch("Error in ReactionService removeUserFromReaction: ",n)}}updateReaction(e,n,r){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: updateReaction","color: green;");try{if(this.authService.getUser()){if(e?.targetElement?.xpath){let _=this.domService.getXPath(e.targetElement.xpath);if(_){let f=_.iterateNext();f&&(nn(f)||(e.targetElement=null))}}let c=JSON.parse(JSON.stringify(e));if(c.position=null,c.lastUpdated=this.timestamp,!c?.metadata?.documentId){c?.metadata||(c.metadata={});let _=this.docService.getBaseMetadata("reaction",{commentAnnotationId:e.commentAnnotationId});c.metadata=k(k({},c?.metadata),_)}let{documentId:p,organizationId:x}=c?.metadata||{};return r?yield this.commonDbService.updateData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:JSON.parse(JSON.stringify(c))}):yield this.commonDbService.setData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:JSON.parse(JSON.stringify(c))}),c}}catch(c){this.loggingService.catch("Error in ReactionService updateReaction: ",c)}})}deleteReactionPinAnnotation(e,n){return be(this,null,function*(){try{let r=this.getAnnotationById(e),{documentId:c,organizationId:p}=this.getDocumentIdAndOrganizationIdFromReactionAnnotation(r),x=r&&!r.commentAnnotationId?{annotationData:r,actionType:"delete",notificationSource:"reaction"}:void 0;yield this.commonDbService.deleteData({feature:"reaction",properties:{id:e,documentId:c,organizationId:p},extraData:x})}catch(r){this.loggingService.catch("Error in ReactionService deleteReactionPinAnnotation: ",r)}})}setCustomReactions(e){try{this.loggingService.log("%c[WB] Calling FUNCTION: setCustomReactions","color: green;"),this.customReactions$.next(e),this.emojiService.setEmojiList(e)}catch(n){this.loggingService.catch("Error in ReactionService setCustomReactions: ",n)}}enableDarkMode(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: enableDarkMode","color: green;"),this.darkMode$.value===!0)return;this.darkMode$.next(!0)}catch(e){this.loggingService.catch("Error in ReactionService enableDarkMode: ",e)}}disableDarkMode(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: disableDarkMode","color: green;"),this.darkMode$.value===!1)return;this.darkMode$.next(!1)}catch(e){this.loggingService.catch("Error in ReactionService disableDarkMode: ",e)}}getDarkMode(){return this.darkMode$.value}getDarkMode$(){return this.darkMode$.asObservable()}sanitizeReactionAnnotation(e){try{e&&(e.iconUrl&&(e.iconUrl=this.domService.sanitizeHtml(e.iconUrl)),e.iconEmoji&&(e.iconEmoji=this.domService.sanitizeHtml(e.iconEmoji)),e.icon&&(e.icon=this.domService.sanitizeHtml(e.icon)))}catch(n){this.loggingService.catch("Error in ReactionService sanitizeReactionAnnotation: ",n)}}get timestamp(){return this.commonDbService.getServerTimestamp()}getReactionAnnotationForClient(e){try{let n=["isReactionResolverUsed","pageInfo","from","involvedUserIds","position"],r=JSON.parse(JSON.stringify(e)),c={};return Object.keys(r).forEach(p=>{n.includes(p)||(p==="reactions"?c.fromUsers=r[p]:c[p]=r[p])}),c}catch(n){return this.loggingService.catch("Error in ReactionService getReactionAnnotationForClient: ",n),e}}};o.\u0275fac=function(n){return new(n||o)(le(Jt),le(cn),le(Ae),le(ln),le(sn),le(mn),le(je),le(ye),le(Re),le(fn),le(S),le(Cn),le(lt))},o.\u0275prov=Pt({token:o,factory:o.\u0275fac,providedIn:"root"});let t=o;return t})();var Te=class{constructor(){this.annotations=[],this.skeletonLoading=!0,this.darkMode=!1}};var ne=class{constructor(){this.type="comment",this.disableTooltip=!1,this.isReactionSelectedByCurrentUser=!1,this.tooltipVisible=!1,this.shadowDom=!1}};var In=t=>({componentConfigSignal:t}),Bn=(t,o)=>({condition:t,data:o}),Un=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-emoji-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function Ln(t,o){if(t&1&&(g(0),U(1,"div",3),T(2,"emoji"),T(3,"translate"),u()),t&2){let i=a(3).ngIf,e=a();s(),l("innerHTML",We(2,3,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De),R("data-testid",e.componentId)("aria-label",w(3,6,"Reaction with")+" "+((i==null||i.annotation==null?null:i.annotation.icon)||"emoji"))}}function Vn(t,o){if(t&1&&(g(0),m(1,Ln,4,8,"ng-container",0),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",i==null?null:i.annotation)}}function Wn(t,o){if(t&1&&(g(0),m(1,Vn,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Un,e.template,y(1,In,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function zn(t,o){if(t&1&&(g(0),m(1,Wn,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Bn,i.conditionSignal(),y(1,In,i.componentConfigSignal)))}}var ze=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-emoji",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-emoji-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","img",1,"velt-reaction-pin--emoji",3,"innerHTML"]],template:function(n,r){n&1&&m(0,zn,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,st,H],styles:["[_nghost-%COMP%]{display:inline-flex}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Sn=t=>({componentConfigSignal:t}),Hn=(t,o)=>({condition:t,data:o}),Yn=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-count-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function Xn(t,o){if(t&1&&(b(0,"div",4),T(1,"translate"),Ve(2),I()),t&2){let i=a(3).ngIf,e=a();R("data-testid",e.componentId)("aria-label",w(1,3,"Reaction count")+" "+((i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)||0)),s(2),rt(" ",i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length," ")}}function Gn(t,o){if(t&1&&(g(0),m(1,Xn,3,5,"div",3),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)}}function Jn(t,o){if(t&1&&(g(0),m(1,Gn,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Yn,e.template,y(1,Sn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Kn(t,o){if(t&1&&(g(0),m(1,Jn,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Hn,i.conditionSignal(),y(1,Sn,i.componentConfigSignal)))}}var $e=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-count",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-count-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["class","velt-reaction-pin--count","role","status",4,"ngIf"],["role","status",1,"velt-reaction-pin--count"]],template:function(n,r){n&1&&m(0,Kn,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,H],styles:["[_nghost-%COMP%]{display:inline-flex}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var yn=t=>({componentConfigSignal:t}),Zn=(t,o)=>({condition:t,data:o}),qn=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-avatar-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ei(t,o){if(t&1&&(g(0),U(1,"snippyly-user-avatar",3),T(2,"translate"),T(3,"translate"),u()),t&2){let i=a(4);s(),l("size",24)("user",i.reaction==null?null:i.reaction.from),R("data-testid",i.componentId+"-avatar")("aria-label",w(2,4,"Avatar for")+" "+w(3,6,(i.reaction==null||i.reaction.from==null?null:i.reaction.from.name)||(i.reaction==null||i.reaction.from==null?null:i.reaction.from.email)||"user"))}}function ti(t,o){if(t&1&&(g(0),m(1,ei,4,8,"ng-container",0),u()),t&2){let i=a(3);s(),l("ngIf",i.reaction)}}function ni(t,o){if(t&1&&(g(0),m(1,ti,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,qn,e.template,y(1,yn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function ii(t,o){if(t&1&&(g(0),m(1,ni,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Zn,i.conditionSignal(),y(1,yn,i.componentConfigSignal)))}}var He=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-avatar",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-avatar-internal"]],inputs:{reaction:"reaction"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-reaction-pin-tooltip-user-avatar",3,"size","user"]],template:function(n,r){n&1&&m(0,ii,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,un,H],styles:["[_nghost-%COMP%]:empty{display:none}snippyly-user-avatar[_ngcontent-%COMP%]{display:flex}"],changeDetection:0});let t=o;return t})();var kn=t=>({componentConfigSignal:t}),ai=(t,o)=>({condition:t,data:o}),ci=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-name-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function li(t,o){if(t&1&&(b(0,"span",7),Ve(1),T(2,"translate"),I()),t&2){let i=a(6);R("data-testid",i.componentId+"-suffix"),s(),rt("(",w(2,2,"You"),")")}}function si(t,o){if(t&1&&(g(0),b(1,"span",5),Ve(2),T(3,"translate"),I(),m(4,li,3,4,"span",6),u()),t&2){let i=a(4).ngIf,e=a();s(),R("data-testid",e.componentId+"-name"),s(),Nt(w(3,3,(e.reaction==null||e.reaction.from==null?null:e.reaction.from.name)||(e.reaction==null||e.reaction.from==null?null:e.reaction.from.email))),s(2),l("ngIf",(e.reaction==null||e.reaction.from==null?null:e.reaction.from.userId)===(i==null||i.user==null?null:i.user.userId))}}function mi(t,o){if(t&1&&(g(0),m(1,si,5,5,"ng-container",4),u()),t&2){a(2);let i=G(3),e=a(2);s(),l("ngIf",(e.reaction==null||e.reaction.from==null?null:e.reaction.from.name)||(e.reaction==null||e.reaction.from==null?null:e.reaction.from.email))("ngIfElse",i)}}function di(t,o){if(t&1&&(g(0),m(1,mi,2,2,"ng-container",1),u()),t&2){let i=a(3);s(),l("ngIf",i.reaction)}}function vi(t,o){t&1&&U(0,"velt-skeleton-loader-internal",8)}function pi(t,o){if(t&1&&(g(0),m(1,di,2,1,"ng-container",3)(2,vi,1,0,"ng-template",null,0,ae),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,ci,e.template,y(1,kn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function gi(t,o){if(t&1&&(g(0),m(1,pi,4,9,"ng-container",2),u()),t&2){let i=a();s(),l("veltIf",D(3,ai,i.conditionSignal(),y(1,kn,i.componentConfigSignal)))}}var Ye=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-name",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-name-internal"]],inputs:{reaction:"reaction"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[["loadingTemplateRef",""],[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[4,"ngIf","ngIfElse"],[1,"velt-reaction-pin-tooltip-user-name"],["class","velt-reaction-pin-tooltip-user-name-suffix",4,"ngIf"],[1,"velt-reaction-pin-tooltip-user-name-suffix"],["height","20px","width","64px","borderRadius","20px"]],template:function(n,r){n&1&&m(0,gi,2,6,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,mt,H],styles:["[_nghost-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-sm)}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Rn=(t,o)=>({componentConfigSignal:t,reaction:o}),hi=(t,o)=>({condition:t,data:o}),fi=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function _i(t,o){if(t&1&&(b(0,"div",3),T(1,"translate"),T(2,"translate"),U(3,"velt-reaction-pin-tooltip-user-avatar-internal",4)(4,"velt-reaction-pin-tooltip-user-name-internal",5),I()),t&2){let i=a(3);R("data-testid",i.componentId)("aria-label",w(1,5,"Reaction by")+" "+w(2,7,(i.reaction==null||i.reaction.from==null?null:i.reaction.from.name)||(i.reaction==null||i.reaction.from==null?null:i.reaction.from.email)||"user")),s(3),l("reaction",i.reaction),s(),l("reaction",i.reaction)("componentConfigSignal",i.componentConfigSignal)}}function Ci(t,o){if(t&1&&(g(0),m(1,_i,5,9,"div",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(4,fi,e.template,D(1,Rn,e.componentConfigSignal,e.reaction),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function bi(t,o){if(t&1&&(g(0),m(1,Ci,2,10,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(4,hi,i.conditionSignal(),D(1,Rn,i.componentConfigSignal,i.reaction)))}}var Xe=(()=>{let o=class o extends ${set _userWireframe(e){try{this.userWireframe=e,this.userWireframe?this.template=this.domService.deepCloneElement(this.userWireframe):this.template=null}catch{}}constructor(e,n,r,c){super(n,c,r),this.domService=e,this.elementRef=n,this.loggingService=r,this.dynamicDataService=c,this.componentId="velt-reaction-pin-tooltip-user",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(ye),d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-internal"]],inputs:{reaction:"reaction",_userWireframe:[0,"userWireframe","_userWireframe"]},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],["class","v-tooltip-reaction-user velt-reaction-pin-tooltip-user","role","listitem",4,"veltDynamicTemplate"],["role","listitem",1,"v-tooltip-reaction-user","velt-reaction-pin-tooltip-user"],[3,"reaction"],[3,"reaction","componentConfigSignal"]],template:function(n,r){n&1&&m(0,bi,2,7,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,He,Ye,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reaction-pin-tooltip-user[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-sm);padding:var(--velt-spacing-sm)}"],changeDetection:0});let t=o;return t})();var Tn=t=>({componentConfigSignal:t}),Ii=(t,o)=>({condition:t,data:o}),Si=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-users-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function yi(t,o){if(t&1&&(b(0,"div",5),U(1,"velt-reaction-pin-tooltip-user-internal",6),I()),t&2){let i=o.$implicit,e=o.index,n=a(4);R("data-testid",n.componentId+"-item-"+e),s(),l("userWireframe",n.userTemplate)("reaction",i)("componentConfigSignal",n.componentConfigSignal)}}function ki(t,o){if(t&1&&(g(0),b(1,"div",3),T(2,"translate"),m(3,yi,2,4,"div",4),I(),u()),t&2){let i=a(2).ngIf,e=a();s(),R("data-testid",e.componentId)("aria-label",w(2,3,"Users who reacted")),s(2),l("ngForOf",i==null||i.annotation==null?null:i.annotation.reactions)}}function Ri(t,o){if(t&1&&(g(0),m(1,ki,4,5,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Si,e.template,y(1,Tn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Ti(t,o){if(t&1&&(g(0),m(1,Ri,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Ii,i.conditionSignal(),y(1,Tn,i.componentConfigSignal)))}}var Ge=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-users",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{if(super.ngOnInit(),this.setupA11yAttributes(),!this.userTemplate){let e=this.template?.querySelector("velt-reaction-pin-tooltip-user-wireframe");Se(e)||(this.userTemplate=e)}}catch{}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUsersComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUsersComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-users-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","list",1,"velt-reaction-pin-tooltip-users"],["role","presentation",4,"ngFor","ngForOf"],["role","presentation"],[3,"userWireframe","reaction","componentConfigSignal"]],template:function(n,r){n&1&&m(0,Ti,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Xe,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reaction-pin-tooltip-users[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--velt-spacing-xs)}"],changeDetection:0});let t=o;return t})();var Di=t=>({componentConfigSignal:t}),wi=(t,o)=>({template:t,context:o});function Oi(t,o){t&1&&pe(0)}function Pi(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Oi,1,0,"ng-container",3),I()),t&2){a();let i=G(3);s(),l("ngTemplateOutlet",i)}}function Mi(t,o){if(t&1&&(b(0,"div",5),T(1,"translate"),U(2,"velt-reaction-pin-tooltip-users-internal",6),I()),t&2){let i=a(3);R("data-testid",i.componentId)("aria-label",w(1,4,"Reaction details")),s(2),l("componentConfigSignal",i.componentConfigSignal),R("data-testid",i.componentId+"-users")}}function Ai(t,o){if(t&1&&m(0,Mi,3,6,"div",4),t&2){let i=a(2);l("veltDynamicTemplate",D(3,wi,i.template,y(1,Di,i.componentConfigSignal)))}}function ji(t,o){if(t&1&&(g(0),m(1,Pi,2,1,"velt-shadow-dom-internal",2)(2,Ai,1,6,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a();s(),l("ngIf",e.shadowDom&&!e.template||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}var Je=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}constructor(e,n,r,c,p){super(r,c,void 0,void 0,void 0,p,e),this.loggingService=e,this.wireframeService=n,this.elementRef=r,this.themeService=c,this.dynamicDataService=p,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.componentId="velt-reaction-pin-tooltip",this.subscriptions=[]}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reaction-pin-tooltip-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.template=p}}))}catch(e){this.catchError("Error in ReactionPinTooltipComponent OnInit: ",e)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.catchError("Error in ReactionPinTooltipComponent ondestroy: ",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("role","tooltip"),e.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipComponent setupA11yAttributes:",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.catchError("Error in ReactionPinTooltipComponent unsubscribe: ",e)}}catchError(e,n,r){try{this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:this.componentConfigSignal()?.annotation?.annotationId}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(S),d(se),d(P),d(he),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-internal"]],inputs:{shadowDom:"shadowDom",variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[["reactionPinTooltipRef",""],[4,"ngIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["class","velt-reaction-pin-tooltip","role","tooltip",4,"veltDynamicTemplate"],["role","tooltip",1,"velt-reaction-pin-tooltip"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,ji,4,2,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,Ge,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[_nghost-%COMP%]:empty{display:none}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.velt-reaction-pin-tooltip[_ngcontent-%COMP%]{margin-block:8px;opacity:1;padding:4px;border-radius:var(--velt-border-radius-md);background:var(--velt-background-0);box-shadow:0 4px 21px #00000014;display:flex;flex-direction:column;gap:var(--velt-spacing-xs);color:var(--velt-text-0);font-size:var(--velt-font-size-xs);font-style:normal;font-weight:500;line-height:normal}.velt-reaction-pin-tooltip[_ngcontent-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Ni=["trigger"],Bi=["overlay"],En=t=>({componentConfigSignal:t}),Dn=(t,o)=>({template:t,context:o}),Ui=(t,o)=>({reactionAnnotation:t,user:o});function Li(t,o){if(t&1){let i=ee();b(0,"div",8)(1,"div",9),T(2,"translate"),T(3,"translate"),te("click",function(n){return K(i),a(4).onReactionClick(),Q(n.stopPropagation())}),U(4,"div",10),T(5,"emoji"),I()()}if(t&2){let i=a(3).ngIf,e=a();R("data-testid",e.componentId+"-timeline"),s(),R("data-testid",e.componentId+"-timeline-item")("aria-label",w(2,4,"React with")+" "+w(3,6,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("innerHTML",We(5,8,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De)}}function Vi(t,o){if(t&1&&(g(0),U(1,"velt-reaction-pin-emoji-internal",13)(2,"velt-reaction-pin-count-internal",13),u()),t&2){let i=a(5);s(),l("componentConfigSignal",i.componentConfigSignal),s(),l("componentConfigSignal",i.componentConfigSignal)}}function Wi(t,o){if(t&1){let i=ee();b(0,"div")(1,"div",11),T(2,"translate"),T(3,"translate"),te("click",function(n){return K(i),a(4).onReactionClick(),Q(n.stopPropagation())}),m(4,Vi,3,2,"ng-container",12),I()()}if(t&2){let i=a(3).ngIf,e=a();s(),Ce("velt-reaction-pin--default",!e.template)("velt-reaction-pin--no-reactions",!(!(i==null||i.annotation==null||i.annotation.reactions==null)&&i.annotation.reactions.length)),R("data-testid",e.componentId+"-default")("aria-label",w(2,7,"React with")+" "+w(3,9,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("veltDynamicTemplate",D(13,Dn,e.template,y(11,En,e.componentConfigSignal)))}}function zi(t,o){if(t&1&&(g(0),b(1,"div",5),m(2,Li,6,11,"div",6)(3,Wi,5,16,"div",7),I(),u()),t&2){let i=a(3);s(),l("ngSwitch",i.type),s(),l("ngSwitchCase","timeline")}}function $i(t,o){if(t&1){let i=ee();b(0,"div",9),T(1,"translate"),T(2,"translate"),te("click",function(n){return K(i),a(6).onReactionClick(),Q(n.stopPropagation())}),U(3,"div",10),T(4,"emoji"),I()}if(t&2){let i=a(5).ngIf,e=a();Ce("active",i==null?null:i.isReactionSelectedByCurrentUser),R("data-testid",e.componentId+"-timeline-item")("aria-pressed",i==null?null:i.isReactionSelectedByCurrentUser)("aria-label",w(1,6,"React with")+" "+w(2,8,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("innerHTML",We(4,10,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De)}}function Hi(t,o){if(t&1&&(b(0,"div",8),m(1,$i,5,13,"div",15),I()),t&2){let i=a(4).ngIf,e=a();R("data-testid",e.componentId+"-timeline"),s(),l("ngIf",i==null||i.annotation==null?null:i.annotation.icon)}}function Yi(t,o){t&1&&U(0,"velt-skeleton-loader-internal",18)}function Xi(t,o){if(t&1&&(g(0),U(1,"velt-reaction-pin-emoji-internal",13)(2,"velt-reaction-pin-count-internal",13),u()),t&2){let i=a(7);s(),l("componentConfigSignal",i.componentConfigSignal),s(),l("componentConfigSignal",i.componentConfigSignal)}}function Gi(t,o){if(t&1){let i=ee();b(0,"div",11),T(1,"translate"),T(2,"translate"),te("click",function(n){return K(i),a(6).onReactionClick(),Q(n.stopPropagation())}),m(3,Xi,3,2,"ng-container",12),I()}if(t&2){let i=a(5).ngIf,e=a();Ce("velt-reaction-pin--default",!e.template)("active",i==null?null:i.isReactionSelectedByCurrentUser)("velt-reaction-pin--no-reactions",!(!(i==null||i.annotation==null||i.annotation.reactions==null)&&i.annotation.reactions.length)),R("data-testid",e.componentId+"-default")("aria-pressed",i==null?null:i.isReactionSelectedByCurrentUser)("aria-label",w(1,10,"React with")+" "+w(2,12,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("veltDynamicTemplate",D(16,Dn,e.template,y(14,En,e.componentConfigSignal)))}}function Ji(t,o){if(t&1&&(b(0,"div"),m(1,Yi,1,0,"velt-skeleton-loader-internal",16)(2,Gi,4,19,"div",17),I()),t&2){let i=a(4).ngIf,e=a();s(),l("ngIf",e.showLoadingTemplate),s(),l("ngIf",i==null||i.annotation==null?null:i.annotation.icon)}}function Ki(t,o){if(t&1&&(b(0,"div",5),m(1,Hi,2,2,"div",6)(2,Ji,3,2,"div",7),I()),t&2){let i=a(4);l("ngSwitch",i.type),s(),l("ngSwitchCase","timeline")}}function Qi(t,o){t&1&&pe(0)}function Zi(t,o){if(t&1&&(g(0),m(1,Qi,1,0,"ng-container",20),u()),t&2){let i=a(4).ngIf,e=a();s(),l("ngTemplateOutlet",e.customTooltipTemplate)("ngTemplateOutletContext",D(2,Ui,i==null?null:i.annotation,i==null?null:i.user))}}function qi(t,o){if(t&1&&U(0,"velt-reaction-pin-tooltip-internal",21),t&2){let i=a(5);l("shadowDom",!!i.shadowDom)("variant",i.variant)("componentConfigSignal",i.componentConfigSignal)("darkMode",i.darkMode)}}function eo(t,o){if(t&1&&m(0,Zi,2,5,"ng-container",19)(1,qi,1,4,"ng-template",null,2,ae),t&2){let i=G(2),e=a(4);l("ngIf",e.customTooltipTemplate)("ngIfElse",i)}}function to(t,o){if(t&1&&(b(0,"app-overlay-tooltip",14),m(1,Ki,3,2,"ng-template",null,0,ae)(3,eo,3,2,"ng-template",null,1,ae),I()),t&2){let i=a(3);l("positions",i.positions)("disabled",i.disableTooltip),R("data-testid",i.componentId+"-tooltip")}}function no(t,o){if(t&1&&(g(0),m(1,zi,4,2,"ng-container",3)(2,to,5,3,"app-overlay-tooltip",4),u()),t&2){let i=a().ngIf,e=a();s(),l("ngIf",e.reactionId&&!e.annotationId&&(i==null||i.annotation==null?null:i.annotation.icon)&&e.type!=="standalone"),s(),l("ngIf",(i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)||e.type==="standalone")}}function io(t,o){if(t&1&&(g(0),m(1,no,3,2,"ng-container",3),u()),t&2){let i=a();s(),l("ngIf",!i.isExcludedValue)}}var Ne=(()=>{let o=class o extends fe{set reactionId(e){this._reactionId=e}get reactionId(){return this._reactionId}set"reaction-id"(e){this._reactionId=e}get isExcludedValue(){try{let e=this.componentConfigSignal(),n=e?.annotation?.icon,r=this.excludeReactionIds||e?.excludeReactionIds||[];return!n||!r?.length?!1:r.includes(n)}catch{return!1}}constructor(e,n,r,c,p,x,_){super(p,x,void 0,void 0,void 0,_,n),this.authService=e,this.loggingService=n,this.reactionService=r,this.wireframeService=c,this.elementRef=p,this.themeService=x,this.dynamicDataService=_,this.type="comment",this.disableTooltip=!1,this.shadowDom=!1,this.excludeReactionIds=[],this.commentReactionAnnotationIds=[],this.positions=[{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"}],this.componentConfigSignal=Pe(new ne),this.click=new _e,this.showLoadingTemplate=!1,this.subscriptions=[],this.commentReactionSubscriptions=[],this.componentId="velt-reaction-pin",this.loggingService.log("%c[WB] Creating CLASS: ReactionPinComponent","color: blue;")}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit(),this.setupA11yAttributes(),this.setShowLoadingTemplate(),this.reactionId&&!this.annotationId&&(this.setDefaultReaction(this.reactionId),this.commentReactionAnnotationIds?.length&&this.findMatchingAnnotationFromCommentReactions());let e="velt-reaction-pin-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r}}))}catch(e){this.catchError("Error in ReactionPinComponent OnInit: ",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("data-testid",this.componentId+"-container"),e.setAttribute("role","region"),e.setAttribute("aria-label","Reaction section")}catch(e){this.loggingService.catch("Error in ReactionPinComponent setupA11yAttributes:",e)}}ngAfterViewInit(){this.loggingService.log("%c[WB] Calling FUNCTION: ngAfterViewInit","color: green;");try{this.subscriptions.push(this.authService.getUser$().pipe(xe(e=>!!e),Oe(1)).subscribe(e=>{this.componentConfigSignal.update(n=>(n=B(k({},n),{user:e}),n)),this.checkIfReactionSelectedByCurrentUser()}))}catch(e){this.catchError("Error in ReactionPinComponent ngAfterViewInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))}),e.annotationId&&(this.annotationSubscription?.unsubscribe(),this.annotationSubscription=void 0,this.annotationId&&this.getReactionByAnnotationId(this.annotationId)),e.reactionId&&this.reactionId&&!this.annotationId&&this.setDefaultReaction(this.reactionId),(e.commentReactionAnnotationIds||e.reactionId)&&this.reactionId&&!this.annotationId&&this.commentReactionAnnotationIds?.length&&this.findMatchingAnnotationFromCommentReactions()}catch(n){this.catchError("Error in ReactionPinComponent ngOnChanges: ",n)}}setDefaultReaction(e){try{let n={icon:e,reactions:[]};this.componentConfigSignal.update(r=>(r=B(k({},r),{annotation:n}),r))}catch(n){this.catchError("Error in ReactionPinComponent setDefaultReaction: ",n)}}findMatchingAnnotationFromCommentReactions(){try{if(this.commentReactionSubscriptions.forEach(e=>e.unsubscribe()),this.commentReactionSubscriptions=[],!this.commentReactionAnnotationIds?.length||!this.reactionId)return;for(let e of this.commentReactionAnnotationIds){let n=this.reactionService.getReactionAnnotationByAnnotationId(e,this.parentMetadata).subscribe(r=>{r?.icon===this.reactionId&&(this.componentConfigSignal.update(c=>(c=B(k({},c),{annotation:r}),c)),this.checkIfReactionSelectedByCurrentUser())});this.commentReactionSubscriptions.push(n)}}catch(e){this.catchError("Error in ReactionPinComponent findMatchingAnnotationFromCommentReactions: ",e)}}getReactionByAnnotationId(e){this.loggingService.log("%c[WB] Calling FUNCTION: getReactionByAnnotationId","color: green;");try{this.annotationSubscription=this.reactionService.getReactionAnnotationByAnnotationId(e,this.parentMetadata).subscribe(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{annotation:n}),r)),this.checkIfReactionSelectedByCurrentUser(),this.setShowLoadingTemplate(),this.componentConfigSignal().tooltipVisible&&!this.componentConfigSignal().annotation?.reactions?.length&&this.hideTooltip(),this.overlay?.overlayRef?.updatePosition()})}catch(n){this.catchError("Error in ReactionPinComponent getReactionByAnnotationId: ",n)}}checkIfReactionSelectedByCurrentUser(){this.loggingService.log("%c[WB] Calling FUNCTION: checkIfReactionSelectedByCurrentUser","color: green;");try{this.componentConfigSignal.update(e=>(e=B(k({},e),{isReactionSelectedByCurrentUser:!!e.annotation?.reactions?.find(n=>n?.from?.userId===e.user?.userId)}),e))}catch(e){this.catchError("Error in ReactionPinComponent checkIfReactionSelectedByCurrentUser: ",e)}}setShowLoadingTemplate(){try{!this.componentConfigSignal()?.annotation?.icon&&this.componentConfigSignal()?.annotation?.isReactionResolverUsed?this.showLoadingTemplate=!0:this.showLoadingTemplate=!1}catch(e){this.catchError("Error in ReactionPinComponent setShowLoadingTemplate: ",e)}}onReactionClick(){this.loggingService.log("%c[WB] Calling FUNCTION: onReactionClick","color: green;");try{this.click.emit(this.componentConfigSignal().annotation)}catch(e){this.catchError("Error in ReactionPinComponent onReactionClick: ",e)}}showTooltip(){try{this.componentConfigSignal.update(e=>(e=B(k({},e),{tooltipVisible:!0}),e))}catch(e){this.catchError("Error in ReactionPinComponent showTooltip: ",e)}}hideTooltip(){try{this.componentConfigSignal.update(e=>(e=B(k({},e),{tooltipVisible:!1}),e))}catch(e){this.catchError("Error in ReactionPinComponent hideTooltip: ",e)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.catchError("Error in ReactionPinComponent ngOnDestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.forEach(e=>{e.unsubscribe()}),this.subscriptions=[],this.commentReactionSubscriptions.forEach(e=>{e.unsubscribe()}),this.commentReactionSubscriptions=[],this.annotationSubscription?.unsubscribe(),this.annotationSubscription=void 0}catch(e){this.catchError("Error in ReactionPinComponent unsubscribe: ",e)}}catchError(e,n,r){try{this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:this.componentConfigSignal()?.annotation?.annotationId}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(Ae),d(S),d(me),d(se),d(P),d(he),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-reaction-pin"]],viewQuery:function(n,r){if(n&1&&(ut(Ni,5),ut(Bi,5)),n&2){let c;ht(c=ft())&&(r.trigger=c.first),ht(c=ft())&&(r.overlay=c.first)}},inputs:{type:"type",annotationId:"annotationId",disableTooltip:"disableTooltip",customTooltipTemplate:[0,"tooltipTemplate","customTooltipTemplate"],variant:"variant",shadowDom:"shadowDom",parentMetadata:"parentMetadata",excludeReactionIds:"excludeReactionIds",commentReactionAnnotationIds:"commentReactionAnnotationIds",reactionId:[0,"reaction-id","reactionId"]},outputs:{click:"click"},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["triggerTemplate",""],["tooltipTemplate",""],["defaultTooltipTemplate",""],[4,"ngIf"],[3,"positions","disabled",4,"ngIf"],[3,"ngSwitch"],["class","s-emoji-block_timeline",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[1,"s-emoji-block_timeline"],["role","button",1,"s-emoji-block__item",3,"click"],["role","img","aria-hidden","true",1,"s-emoji-block__item__emoji",3,"innerHTML"],["role","button",1,"velt-reaction-pin",3,"click"],[4,"veltDynamicTemplate"],[3,"componentConfigSignal"],[3,"positions","disabled"],["class","s-emoji-block__item","role","button",3,"active","click",4,"ngIf"],["height","34px","width","51px","borderRadius","8px",4,"ngIf"],["class","velt-reaction-pin","role","button",3,"velt-reaction-pin--default","active","velt-reaction-pin--no-reactions","click",4,"ngIf"],["height","34px","width","51px","borderRadius","8px"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"shadowDom","variant","componentConfigSignal","darkMode"]],template:function(n,r){n&1&&m(0,io,2,1,"ng-container",3),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,Lt,Vt,Wt,gn,N,mt,ze,$e,Je,st,H],styles:["[_nghost-%COMP%]:empty{display:none}.s-emoji-block_timeline[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:var(--velt-spacing-sm);width:18px;height:18px}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item[_ngcontent-%COMP%]{display:flex;align-items:center}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__count[_ngcontent-%COMP%]{display:none}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji{display:flex;align-items:center;justify-content:center}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji svg, .s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji img{width:16px!important;height:16px!important} .snippyly-reaction-dialog-overlay-panel{z-index:2147483577}"],changeDetection:0});let t=o;return t})();var wn=t=>({componentConfigSignal:t}),ro=(t,o)=>({condition:t,data:o}),ao=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-list-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function co(t,o){if(t&1){let i=ee();g(0),b(1,"div",6)(2,"app-reaction-pin",7),te("click",function(n){K(i);let r=a(4).ngIf;return Q(r==null?null:r.onReactionClick(n))}),I()(),u()}if(t&2){let i=o.$implicit,e=a(4).ngIf,n=a();s(2),l("annotationId",i==null?null:i.annotationId)("shadowDom",!!(e!=null&&e.shadowDom))("variant",e==null?null:e.variant)("darkMode",!!(e!=null&&e.darkMode))("template",n.pinTemplate)}}function lo(t,o){if(t&1&&(b(0,"div",4),m(1,co,3,5,"ng-container",5),I()),t&2){let i=a(3).ngIf;s(),l("ngForOf",i==null?null:i.annotations)("ngForTrackBy",i.reactionAnnotationsTrackByFn)}}function so(t,o){if(t&1&&(g(0),m(1,lo,2,2,"div",3),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",(i==null||i.annotations==null?null:i.annotations.length)>0)}}function mo(t,o){if(t&1&&(g(0),m(1,so,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,ao,e.template,y(1,wn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function vo(t,o){if(t&1&&(g(0),m(1,mo,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,ro,i.conditionSignal(),y(1,wn,i.componentConfigSignal)))}}var Ke=(()=>{let o=class o extends ${constructor(e,n,r,c){super(e,r,c),this.elementRef=e,this.wireframeService=n,this.dynamicDataService=r,this.loggingService=c,this.subscriptions=[],super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{if(super.ngOnInit(),!this.template){let e="velt-inline-reactions-section-list-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r,this.getChildTemplate()}}))}this.getChildTemplate()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent ngOnDestroy:",e)}}getChildTemplate(){try{if(!this.pinTemplate&&this.template){let e=this.template.querySelector("velt-reaction-pin-wireframe");Se(e)||(this.pinTemplate=e)}}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent getChildTemplate:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(se),d(h),d(S))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-list"]],inputs:{variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["class","velt-inline-reactions-section--reactions",4,"ngIf"],[1,"velt-inline-reactions-section--reactions"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"velt-inline-reactions-section--reaction"],[3,"click","annotationId","shadowDom","variant","darkMode","template"]],template:function(n,r){n&1&&m(0,vo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Ne],styles:[".velt-inline-reactions-section--reactions[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--velt-spacing-xs)}[_nghost-%COMP%] .velt-reaction-pin--default{display:inline-flex;height:28px;padding:var(--velt-spacing-2xs) var(--velt-spacing-sm);align-items:center;gap:var(--velt-spacing-xs);flex-shrink:0;border-radius:var(--velt-border-radius-2xl);border:1px solid var(--velt-border-0);background:var(--velt-background-0);color:var(--velt-text-0);box-sizing:border-box;cursor:pointer}[_nghost-%COMP%] .velt-reaction-pin--default.active{border-radius:var(--velt-border-radius-2xl);border:1px solid var(--velt-accent);background:var(--velt-accent-transparent);color:var(--velt-accent)}[_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji{line-height:1;display:flex}[_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji svg, [_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji img, [_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji span{width:14px;height:14px;margin:0;font-size:14px;line-height:1}[_nghost-%COMP%] .velt-reaction-pin--default .s-emoji-block__item__count{font-size:var(--velt-font-size-sm);color:var(--velt-text-3)}"],changeDetection:0});let t=o;return t})();var Ee=class{};var On=t=>({componentConfigSignal:t}),go=(t,o)=>({condition:t,data:o}),uo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-item-emoji-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ho(t,o){if(t&1&&(g(0),U(1,"div",3),u()),t&2){let i=a(4);s(),l("innerHTML",i.emoji.value,De),R("data-testid",i.componentId+"-emoji")}}function fo(t,o){if(t&1&&(g(0),m(1,ho,2,2,"ng-container",0),u()),t&2){let i=a(3);s(),l("ngIf",i.emoji)}}function _o(t,o){if(t&1&&(g(0),m(1,fo,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,uo,e.template,y(1,On,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Co(t,o){if(t&1&&(g(0),m(1,_o,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,go,i.conditionSignal(),y(1,On,i.componentConfigSignal)))}}var Qe=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reactions-panel-item-emoji",super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;this.emoji?.key&&e.setAttribute("aria-label",this.emoji.key),e.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-item-emoji-internal"]],inputs:{emoji:"emoji"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-reactions-panel-item-emoji",3,"innerHTML"]],template:function(n,r){n&1&&m(0,Co,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z],styles:["[_nghost-%COMP%] .velt-reactions-panel-item-emoji{display:flex;height:24px;width:24px;max-width:unset;margin:0;font-size:var(--velt-font-size-lg);line-height:1}[_nghost-%COMP%] .velt-reactions-panel-item-emoji svg, [_nghost-%COMP%] .velt-reactions-panel-item-emoji img, [_nghost-%COMP%] .velt-reactions-panel-item-emoji span{height:100%;width:100%;max-width:unset;margin:0;font-size:var(--velt-font-size-lg);line-height:1}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var xo=t=>({componentConfigSignal:t}),Io=(t,o)=>({condition:t,data:o}),So=(t,o)=>({emoji:t,componentConfigSignal:o}),yo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-item-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ko(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-item-emoji-internal",4),u()),t&2){let i=a(4);s(),l("emoji",i.emoji),R("data-testid",i.componentId+"-emoji")}}function Ro(t,o){if(t&1){let i=ee();g(0),b(1,"div",2),T(2,"translate"),te("click",function(){K(i);let n=a(2).ngIf,r=a();return Q(n==null?null:n.handleEmojiSelected(r.emoji.key))}),m(3,ko,2,2,"ng-container",3),I(),u()}if(t&2){let i=a(2).ngIf,e=a();s(),R("aria-label",w(2,3,e.ariaLabel))("data-testid",e.componentId+"-item"),s(2),l("veltDynamicTemplate",W(8,yo,e.template,D(5,So,e.emoji,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function To(t,o){if(t&1&&(g(0),m(1,Ro,4,14,"ng-container",0),u()),t&2){let i=a().ngIf,e=a();s(),l("ngIf",i&&e.emoji)}}function Eo(t,o){if(t&1&&(g(0),m(1,To,2,1,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Io,i.conditionSignal(),y(1,xo,i.componentConfigSignal)))}}var Ze=(()=>{let o=class o extends ${set _itemWireframe(e){this.itemWireframe=e,this.itemWireframe?this.template=this.domService.deepCloneElement(this.itemWireframe):this.template=null}constructor(e,n,r,c){super(n,c,r),this.domService=e,this.elementRef=n,this.loggingService=r,this.dynamicDataService=c,this.componentId="velt-reactions-panel-item",super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent ngOnDestroy:",e)}}get ariaLabel(){return this.emoji?.key||"Emoji"}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(ye),d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-item-internal"]],inputs:{emoji:"emoji",_itemWireframe:[0,"itemWireframe","_itemWireframe"]},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[1,"velt-reactions-panel-item",3,"click"],[4,"veltDynamicTemplate"],[3,"emoji"]],template:function(n,r){n&1&&m(0,Eo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Qe,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reactions-panel-item[_ngcontent-%COMP%]{display:flex;padding:var(--velt-spacing-2xs) var(--velt-spacing-xs);border-radius:var(--velt-border-radius-sm);background:transparent;cursor:pointer}.velt-reactions-panel-item[_ngcontent-%COMP%]:hover{background:var(--legacy-velt-border-color)}"],changeDetection:0});let t=o;return t})();var Pn=t=>({componentConfigSignal:t}),wo=(t,o)=>({condition:t,data:o}),Oo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-items-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function Po(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-item-internal",5),u()),t&2){let i=o.$implicit,e=a(4);s(),l("itemWireframe",e.itemTemplate)("componentConfigSignal",e.componentConfigSignal)("emoji",i),R("data-testid",e.componentId+"-item-"+i.key)}}function Mo(t,o){if(t&1&&(g(0),b(1,"div",3),T(2,"translate"),m(3,Po,2,4,"ng-container",4),I(),u()),t&2){let i=a(3);s(),R("aria-label",w(2,4,"Choose a reaction"))("data-testid",i.componentId+"-list"),s(2),l("ngForOf",i.filteredEmojis())("ngForTrackBy",i.trackByEmojiKey)}}function Ao(t,o){if(t&1&&(g(0),m(1,Mo,4,6,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Oo,e.template,y(1,Pn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function jo(t,o){if(t&1&&(g(0),m(1,Ao,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,wo,i.conditionSignal(),y(1,Pn,i.componentConfigSignal)))}}var qe=(()=>{let o=class o extends ${constructor(e,n,r,c){super(r,c,n),this.emojiService=e,this.loggingService=n,this.elementRef=r,this.dynamicDataService=c,this.componentId="velt-reactions-panel-items",this.filteredEmojis=Ut(()=>{try{let p=this.componentConfigSignal()?.excludeReactionIds||[],x=this.emojiService.emojisSignal();return p.length?Object.entries(x).filter(([_])=>!p.includes(_)).map(([_,f])=>({key:_,value:f})):Object.entries(x).map(([_,f])=>({key:_,value:f}))}catch(p){return this.loggingService.catch("Error in ReactionsPanelItemsComponent filteredEmojis:",p),[]}}),super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{if(super.ngOnInit(),this.setupA11yAttributes(),!this.itemTemplate){let e=this.template?.querySelector("velt-reactions-panel-item-wireframe");Se(e)||(this.itemTemplate=e)}}catch{}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemsComponent ngOnDestroy:",e)}}trackByEmojiKey(e,n){return n?.key||e}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemsComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(Re),d(S),d(P),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-items-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","list",1,"velt-reactions-panel-items"],[4,"ngFor","ngForOf","ngForTrackBy"],[3,"itemWireframe","componentConfigSignal","emoji"]],template:function(n,r){n&1&&m(0,jo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Ze,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reactions-panel-items[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-xs);flex-wrap:wrap}"],changeDetection:0});let t=o;return t})();var No=t=>({componentConfigSignal:t}),Bo=(t,o)=>({template:t,context:o});function Uo(t,o){t&1&&pe(0)}function Lo(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Uo,1,0,"ng-container",3),I()),t&2){a();let i=G(3),e=a();R("data-testid",e.componentId+"-shadow-dom"),s(),l("ngTemplateOutlet",i)}}function Vo(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-items-internal",6),u()),t&2){let i=a(3);s(),l("componentConfigSignal",i.componentConfigSignal),R("data-testid",i.componentId+"-items")}}function Wo(t,o){if(t&1){let i=ee();b(0,"div",4),T(1,"translate"),te("clickOutside",function(){K(i);let n=a(2);return Q(n.onClickOutside())}),m(2,Vo,2,2,"ng-container",5),I()}if(t&2){let i=a(2);Ce("velt-reactions-panel--inline-section-mode",i.isInlineSectionMode)("velt-reactions-panel--default",!i.template)("dark",i.darkMode),R("aria-label",w(1,9,"Available reactions"))("data-testid",i.componentId+"-panel"),s(2),l("veltDynamicTemplate",D(13,Bo,i.template,y(11,No,i.componentConfigSignal)))}}function zo(t,o){if(t&1&&(g(0),m(1,Lo,2,2,"velt-shadow-dom-internal",2)(2,Wo,3,16,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a();s(),l("ngIf",e.shadowDom&&!e.template||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}var Et=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}constructor(e,n,r,c,p,x){super(r,c,void 0,void 0,void 0,x,n),this.emojiService=e,this.loggingService=n,this.elementRef=r,this.themeService=c,this.wireframeService=p,this.dynamicDataService=x,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.isInlineSectionMode=!1,this.excludeReactionIds=[],this.emojiSelected=new _e,this.hideTooltip=new _e,this.componentConfigSignal=Pe({variant:this.variant,onClickOutside:this.onClickOutside.bind(this),handleEmojiSelected:this.handleEmojiSelected.bind(this),excludeReactionIds:this.excludeReactionIds}),this.subscriptions=[],this.componentId="velt-reactions-panel"}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reactions-panel-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.template=p}}))}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent OnInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))})}catch(n){this.loggingService.catch("Error in ReactionsPanelComponent ngOnChanges: ",n)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent setupA11yAttributes:",e)}}trackByEmojiKey(e,n){return n?.key||e}onClickOutside(){try{this.hideTooltip.emit()}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent onClickOutside: ",e)}}handleEmojiSelected(e){try{this.emojiSelected.emit(e),this.hideTooltip.emit()}catch(n){this.loggingService.catch("Error in ReactionsPanelComponent handleEmojiSelected: ",n)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent ondestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent unsubscribe: ",e)}}};o.\u0275fac=function(n){return new(n||o)(d(Re),d(S),d(P),d(he),d(se),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-internal"]],inputs:{shadowDom:"shadowDom",variant:"variant",isInlineSectionMode:"isInlineSectionMode",excludeReactionIds:"excludeReactionIds"},outputs:{emojiSelected:"emojiSelected",hideTooltip:"hideTooltip"},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["reactionsPanelRef",""],[4,"ngIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["snippylyClickOutside","","role","list",1,"velt-reactions-panel",3,"clickOutside"],[4,"veltDynamicTemplate"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,zo,4,2,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,pn,qe,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.velt-reactions-panel[_ngcontent-%COMP%]{max-width:100%;overflow:visible;border:1px solid var(--velt-border-5);border-radius:var(--velt-border-radius-md);transition:opacity .5s;padding:var(--velt-spacing-sm) var(--velt-spacing-md);background-color:var(--velt-background-0);font-style:normal;font-weight:400;font-size:var(--velt-font-size-xs);line-height:calc((2rem + 0px) * var(--velt-base-rem-unit));box-shadow:0 8px 16px -8px #0f0f0f1a}.velt-reactions-panel--inline-section-mode[_ngcontent-%COMP%]{border-radius:var(--velt-border-radius-2xl)}"],changeDetection:0});let t=o;return t})();var Ho=t=>({template:t}),Yo=()=>["snippyly-overlay-panel","snippyly-reaction-dialog-overlay-panel","velt-overlay-panel"];function Xo(t,o){t&1&&pe(0)}function Go(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Xo,1,0,"ng-container",4),I()),t&2){a();let i=G(2);s(),l("ngTemplateOutlet",i)}}function Jo(t,o){if(t&1&&(g(0),b(1,"div",8),At(),b(2,"svg",9),U(3,"path",10)(4,"path",11)(5,"path",12),I()(),u()),t&2){let i=a(2);s(),Ce("active",i.tooltipVisible)("no-padding",i.noPadding),R("data-testid",i.componentId+"-button"),s(),R("data-testid",i.componentId+"-icon")}}function Ko(t,o){if(t&1){let i=ee();b(0,"velt-reactions-panel-internal",13),T(1,"translate"),te("emojiSelected",function(n){K(i);let r=a(2);return Q(r.handleEmojiSelected(n))})("hideTooltip",function(){K(i);let n=a(2);return Q(n.hideTooltip())}),I()}if(t&2){let i=a(2);l("darkMode",i.darkMode)("shadowDom",i.shadowDom)("variant",i.variant)("isInlineSectionMode",i.isInlineSectionMode)("excludeReactionIds",i.excludeReactionIds),R("data-testid",i.componentId+"-panel")("aria-label",w(1,7,"Reaction selector"))}}function Qo(t,o){if(t&1){let i=ee();b(0,"div",5,1),T(2,"translate"),te("pointerdown",function(){K(i);let n=a();return Q(n.showTooltip())}),m(3,Jo,6,6,"ng-container",6),I(),m(4,Ko,2,9,"ng-template",7,2,ae)}if(t&2){let i=G(1),e=G(5),n=a();Ce("velt-reaction-btn-container--inline-section-mode",n.isInlineSectionMode),R("data-testid",n.componentId)("aria-expanded",n.tooltipVisible)("aria-haspopup",!0)("aria-label",w(2,14,"Add reaction")),s(3),l("veltDynamicTemplate",y(16,Ho,n.template)),s(),l("cdkConnectedOverlayOrigin",i)("cdkConnectedOverlayOpen",n.tooltipVisible)("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",Bt(18,Yo))("cdkConnectedOverlayPositions",n.positions)("snippylyOverlay",e)("snippylyOverlayZIndex",2147483627)}}var Be=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}resolveTemplate(){this.template=Zo(this.serviceWireframe,this.parentTemplate)}constructor(e,n,r,c,p,x,_,f,v){super(p,_,void 0,void 0,void 0,v,c),this.docService=e,this.domService=n,this.emojiService=r,this.loggingService=c,this.elementRef=p,this.reactionService=x,this.themeService=_,this.wireframeService=f,this.dynamicDataService=v,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.isInlineSectionMode=!1,this.noPadding=!1,this.excludeReactionIds=[],this.onReactionToolClick=new _e,this.emojiSelected=new _e,this.reactionToolOpen=new _e,this.tooltipVisible=!1,this.customButtonAdded=!1,this.positions=[{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"}].map(C=>new $t({originX:C.originX,originY:C.originY},{overlayX:C.overlayX,overlayY:C.overlayY})),this.subscriptions=[],this.veltElement=!0,this.componentId="velt-reaction-tool"}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reaction-tool-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.serviceWireframe=p,this.resolveTemplate()}}))}catch(e){this.loggingService.catch("Error in ReactionToolComponent OnInit: ",e)}}ngOnChanges(e){super.ngOnChanges(e),e.template&&(this.parentTemplate=e.template.currentValue,this.resolveTemplate())}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("role","button"),e.setAttribute("data-testid",this.componentId+"-container"),e.setAttribute("aria-haspopup","true"),e.setAttribute("aria-expanded","false")}catch(e){this.loggingService.catch("Error in ReactionToolComponent setupA11yAttributes:",e)}}trackByEmojiKey(e,n){return n?.key||e}onButtonSlotChange(){this.customButtonAdded=!0}showTooltip(){try{this.tooltipVisible=!0,this.toggleHostClass(),this.onReactionToolClick.emit()}catch(e){this.loggingService.catch("Error in ReactionToolComponent showTooltip: ",e)}}hideTooltip(){try{this.tooltipVisible=!1,this.toggleHostClass()}catch(e){this.loggingService.catch("Error in ReactionToolComponent hideTooltip: ",e)}}toggleHostClass(){try{this.tooltipVisible?(this.reactionToolOpen.emit(!0),this.domService.addClassToElement(this.elementRef.nativeElement,"reaction-tool-active"),this.domService.addClassToElement(this.elementRef.nativeElement,"velt-reaction-tool-open")):(this.reactionToolOpen.emit(!1),this.domService.removeClassFromElement(this.elementRef.nativeElement,"reaction-tool-active"),this.domService.removeClassFromElement(this.elementRef.nativeElement,"velt-reaction-tool-open"))}catch(e){this.loggingService.catch("Error in ReactionToolComponent toggleHostClass: ",e)}}handleEmojiSelected(e){try{this.emojiSelected.emit(e),this.hideTooltip(),this.videoPlayerId&&this.addReaction(e)}catch(n){this.loggingService.catch("Error in ReactionToolComponent handleEmojiSelected: ",n)}}addReaction(e){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: addReaction","color: green;"),this.videoPlayerId){let n=this.docService.getLocation()?.locationId,r=this.docService.getLocation()?.location;if(n){let c=document.getElementById(this.videoPlayerId);c&&c instanceof HTMLVideoElement&&(c.paused||c.pause());let p=this.docService.getDocumentPaths(),_=this.reactionService.getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:p?.organizationId,documentId:p?.documentId??""}).find(f=>f.locationId===n);this.reactionService.addOrUpdateReaction(e,_?[_.annotationId]:[],r)}}}catch(n){this.loggingService.catch("Error in VeltVideoPlayerComponent addReaction: ",n)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.loggingService.catch("Error in ReactionToolComponent ondestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.loggingService.catch("Error in ReactionToolComponent unsubscribe: ",e)}}};o.\u0275fac=function(n){return new(n||o)(d(je),d(ye),d(Re),d(S),d(P),d(me),d(he),d(se),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-reaction-tool"]],hostVars:1,hostBindings:function(n,r){n&2&&R("data-velt-element",r.veltElement)},inputs:{shadowDom:"shadowDom",variant:"variant",isInlineSectionMode:"isInlineSectionMode",videoPlayerId:"videoPlayerId",noPadding:"noPadding",excludeReactionIds:"excludeReactionIds"},outputs:{onReactionToolClick:"onReactionToolClick",emojiSelected:"emojiSelected",reactionToolOpen:"reactionToolOpen"},standalone:!1,features:[j([h]),A,Ie],decls:3,vars:2,consts:[["reactionToolRefRef",""],["trigger","cdkOverlayOrigin"],["overlay","cdkConnectedOverlay"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["part","container","cdkOverlayOrigin","","role","button",1,"v-reaction-btn-container",3,"pointerdown"],[4,"veltDynamicTemplate"],["cdkConnectedOverlay","",3,"cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayPositions","snippylyOverlay","snippylyOverlayZIndex"],["part","button-container",1,"action-btn"],["part","button-icon","width","24","height","24","viewBox","0 0 24 24","fill","none","xmlns","http://www.w3.org/2000/svg","aria-hidden","true","focusable","false",1,"action-btn-icon"],["d","M18.699 12.0222C18.7836 10.5835 18.4287 9.15318 17.6815 7.92091C16.9342 6.68864 15.83 5.71271 14.5152 5.1226C13.2004 4.5325 11.7373 4.35612 10.32 4.61687C8.90263 4.87762 7.59808 5.56317 6.57941 6.58257C5.56074 7.60196 4.87612 8.907 4.61637 10.3245C4.35663 11.742 4.53404 13.205 5.12508 14.5194C5.71612 15.8337 6.69284 16.9373 7.92564 17.6837C9.15844 18.43 10.589 18.7839 12.0276 18.6983M14.7629 17.1318H19.5M17.1315 14.7633V19.5004M9.23631 10.0262H9.24421M13.9734 10.0262H13.9813M9.63107 13.9738C10.1506 14.479 10.8627 14.7633 11.6049 14.7633C12.347 14.7633 13.0591 14.479 13.5786 13.9738","stroke","currentColor","stroke-width","1.33929","stroke-linecap","round","stroke-linejoin","round"],["d","M15.3496 10.6504C15.3496 11.2027 14.9019 11.6504 14.3496 11.6504C13.7973 11.6504 13.3496 11.2027 13.3496 10.6504C13.3496 10.0981 13.7973 9.65039 14.3496 9.65039C14.9019 9.65039 15.3496 10.0981 15.3496 10.6504Z","fill","currentColor"],["d","M10.9004 10.6504C10.9004 11.2027 10.4527 11.6504 9.90039 11.6504C9.34811 11.6504 8.90039 11.2027 8.90039 10.6504C8.90039 10.0981 9.34811 9.65039 9.90039 9.65039C10.4527 9.65039 10.9004 10.0981 10.9004 10.6504Z","fill","currentColor"],[3,"emojiSelected","hideTooltip","darkMode","shadowDom","variant","isInlineSectionMode","excludeReactionIds"]],template:function(n,r){if(n&1&&m(0,Go,2,1,"velt-shadow-dom-internal",3)(1,Qo,6,19,"ng-template",null,0,ae),n&2){let c=G(2);l("ngIf",!r.template&&r.shadowDom||r.template&&r.isExplicitShadowDom)("ngIfElse",c)}},dependencies:[F,ge,Yt,Ht,ke,N,vn,Et,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{display:flex;--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.v-reaction-btn-container[_ngcontent-%COMP%]{display:flex}.action-btn[_ngcontent-%COMP%]{display:inline-flex;justify-content:center;align-items:center;padding:calc(var(--velt-spacing-md) / 2);border-radius:var(--velt-border-radius-full);border:2px solid transparent;background-color:transparent;color:var(--velt-text-4);cursor:pointer}.action-btn.no-padding[_ngcontent-%COMP%]{padding:0}.action-btn[_ngcontent-%COMP%] .action-btn-label[_ngcontent-%COMP%]{font-size:var(--velt-font-size-sm);padding-right:var(--velt-spacing-xs);font-weight:700;color:currentColor}.action-btn[_ngcontent-%COMP%] .action-btn-icon[_ngcontent-%COMP%]{width:calc((1.5rem + 0px) * var(--velt-base-rem-unit));height:calc((1.5rem + 0px) * var(--velt-base-rem-unit));color:currentColor}.action-btn[_ngcontent-%COMP%] .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{width:16px;height:16px;color:currentColor}.action-btn[_ngcontent-%COMP%]:focus{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-border-2);background-color:transparent;color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:focus .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:hover{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-border-2);background-color:var(--velt-background-2);color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:hover .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:active, .action-btn.active[_ngcontent-%COMP%]{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-accent);background-color:var(--velt-accent);color:var(--velt-accent-foreground)}.action-btn[_ngcontent-%COMP%]:active .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%], .action-btn.active[_ngcontent-%COMP%] .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn-icon[_ngcontent-%COMP%]{height:18px;width:18px}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{padding:calc(var(--velt-spacing-xs) - 1px)}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]:active, .velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn.active[_ngcontent-%COMP%]{border:1px solid var(--velt-accent-text);background:linear-gradient(0deg,#0006 0% 100%),var(--velt-accent)}"],changeDetection:0});let t=o;return t})();function Zo(t,o){return t||o}var Mn=t=>({componentConfigSignal:t}),er=(t,o)=>({condition:t,data:o}),tr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-tool-container-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function nr(t,o){if(t&1){let i=ee();g(0),b(1,"div",3)(2,"app-reaction-tool",4),te("emojiSelected",function(n){K(i);let r=a(2).ngIf;return Q(r.onEmojiSelected(n))}),I()(),u()}if(t&2){let i=a(2).ngIf,e=a();s(2),l("shadowDom",!1)("template",e.toolTemplate)("variant",i==null?null:i.variant)("darkMode",i.darkMode)}}function ir(t,o){if(t&1&&(g(0),m(1,nr,3,4,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,tr,e.template,y(1,Mn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function or(t,o){if(t&1&&(g(0),m(1,ir,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,er,i.conditionSignal(),y(1,Mn,i.componentConfigSignal)))}}var et=(()=>{let o=class o extends ${constructor(e,n,r,c){super(e,n,r),this.elementRef=e,this.dynamicDataService=n,this.loggingService=r,this.wireframeService=c,this.subscriptions=[],super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{if(super.ngOnInit(),!this.template){let e="velt-inline-reactions-section-tool-container-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r,this.getChildTemplate()}}))}this.getChildTemplate()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent ngOnDestroy:",e)}}getChildTemplate(){try{if(!this.toolTemplate&&this.template){let e=this.template.querySelector("velt-reaction-tool-wireframe");Se(e)||(this.toolTemplate=e)}}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent getChildTemplate:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(h),d(S),d(se))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-tool-container"]],inputs:{variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section--tool-container"],[3,"emojiSelected","shadowDom","template","variant","darkMode"]],template:function(n,r){n&1&&m(0,or,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Be],styles:["[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn{border-radius:var(--velt-border-radius-2xl);background:var(--velt-background-0);padding:var(--velt-spacing-xs);border:none}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn .action-btn-icon{width:20px;height:20px}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn:hover{border-radius:var(--velt-border-radius-2xl);background:var(--velt-background-1)}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn:hover .action-btn-icon{color:var(--velt-accent)}"],changeDetection:0});let t=o;return t})();var An=t=>({componentConfigSignal:t}),ar=(t,o)=>({condition:t,data:o}),cr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-panel-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function lr(t,o){if(t&1&&(g(0),b(1,"div",3),U(2,"app-inline-reactions-section-tool-container",4)(3,"app-inline-reactions-section-list",4),I(),u()),t&2){let i=a(3).ngIf,e=a();s(2),l("componentConfigSignal",e.componentConfigSignal)("variant",i==null?null:i.variant),s(),l("componentConfigSignal",e.componentConfigSignal)("variant",i==null?null:i.variant)}}function sr(t,o){if(t&1&&(b(0,"div"),m(1,lr,4,4,"ng-container",2),I()),t&2){let i=a(2).ngIf,e=a();s(),l("veltDynamicTemplate",W(3,cr,e.template,y(1,An,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function mr(t,o){if(t&1&&(g(0),m(1,sr,2,9,"div",0),u()),t&2){let i=a().ngIf;s(),l("ngIf",!i.skeletonLoading)}}function dr(t,o){if(t&1&&(g(0),m(1,mr,2,1,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,ar,i.conditionSignal(),y(1,An,i.componentConfigSignal)))}}var tt=(()=>{let o=class o extends ${constructor(e,n,r){super(e,n,r),this.elementRef=e,this.dynamicDataService=n,this.loggingService=r,super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{super.ngOnInit()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionPanelComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionPanelComponent ngOnDestroy:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(h),d(S))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-panel"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section--panel"],[3,"componentConfigSignal","variant"]],template:function(n,r){n&1&&m(0,dr,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Ke,et],styles:[".velt-inline-reactions-section--panel[_ngcontent-%COMP%]{display:flex;gap:var(--velt-spacing-xs)}"],changeDetection:0});let t=o;return t})();var jn=t=>({componentConfigSignal:t}),pr=(t,o)=>({condition:t,data:o}),gr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ur(t,o){t&1&&pe(0)}function hr(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,ur,1,0,"ng-container",4),I()),t&2){a();let i=G(3);s(),l("ngTemplateOutlet",i)}}function fr(t,o){if(t&1&&(g(0),b(1,"div",6),U(2,"app-inline-reactions-section-panel",7),I(),u()),t&2){let i=a(5);s(2),l("componentConfigSignal",i.componentConfigSignal)}}function _r(t,o){if(t&1&&m(0,fr,3,1,"ng-container",5),t&2){let i=a(3).ngIf,e=a();l("veltDynamicTemplate",W(3,gr,e.template,y(1,jn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Cr(t,o){if(t&1&&(g(0),m(1,hr,2,1,"velt-shadow-dom-internal",3)(2,_r,1,9,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a(3);s(),l("ngIf",!e.template&&e.shadowDom||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}function br(t,o){if(t&1&&(g(0),m(1,Cr,4,2,"ng-container",1),u()),t&2){let i=a().ngIf;s(),l("ngIf",(i==null?null:i.targetReactionElementId)&&i.user)}}function xr(t,o){if(t&1&&(g(0),m(1,br,2,1,"ng-container",2),u()),t&2){let i=a();s(),l("veltIf",D(3,pr,i.conditionSignal(),y(1,jn,i.componentConfigSignal)))}}var Ue=(()=>{let o=class o extends fe{set _targetReactionElementId(e){try{this.componentConfigSignal.update(n=>(n=B(k({},n),{targetReactionElementId:e}),n)),this.getReactionAnnotationsBySectionId(e)}catch{}}set _shadowDom(e){try{let n=e;typeof e=="string"&&(n=JSON.parse(e)),this.shadowDom=n,this.isExplicitShadowDom=!!n,this.componentConfigSignal.update(r=>(r=B(k({},r),{shadowDom:n}),r))}catch{}}set _customReactions(e){try{let n=e;typeof e=="string"&&(n=JSON.parse(e)),this.reactionService.setCustomReactions(n)}catch{}}constructor(e,n,r,c,p,x,_,f){super(_,x,void 0,c,void 0,f,r),this.authService=e,this.docService=n,this.loggingService=r,this.reactionService=c,this.wireframeService=p,this.themeService=x,this.elementRef=_,this.dynamicDataService=f,this.shadowDom=!0,this.isExplicitShadowDom=!1,this.componentConfigSignal=Pe({annotations:[],skeletonLoading:!0,darkMode:!1,variant:"inline",shadowDom:!0,onEmojiSelected:this.onEmojiSelected.bind(this),onReactionClick:this.onReactionClick.bind(this),reactionAnnotationsTrackByFn:this.reactionAnnotationsTrackByFn.bind(this)}),this.subscriptions=[];try{this.subscriptions.push(super.onDarkModeChange().subscribe(v=>{this.componentConfigSignal.update(C=>(C=B(k({},C),{darkMode:v}),C))})),this.subscriptions.push(this.authService.getUser$().subscribe(v=>{this.componentConfigSignal.update(C=>(C=B(k({},C),{user:v}),C))}))}catch(v){this.catchError("Error in InlineReactionsSectionComponent constructor: ",v)}}ngOnInit(){try{super.ngOnInit(),this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;");let e="velt-inline-reactions-section-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r}}))}catch(e){this.catchError("Error in InlineReactionsSectionComponent OnInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))})}catch(n){this.catchError("Error in InlineReactionsSectionComponent ngOnChanges: ",n)}}reactionAnnotationsTrackByFn(e,n){return n?.annotationId}getReactionAnnotationsBySectionId(e){try{this.reactionService.getReactionAnnotationsBySectionId(e).subscribe(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{annotations:n||[],skeletonLoading:!1}),r))})}catch(n){this.catchError("Error in InlineReactionsSectionComponent getReactionsBySectionId: ",n)}}onEmojiSelected(e){try{let n=this.componentConfigSignal().targetReactionElementId,r=this.componentConfigSignal().annotations?.map(c=>c?.annotationId)||[];this.reactionService.addOrUpdateReaction(e,r,void 0,n)}catch(n){this.catchError("Error in InlineReactionsSectionComponent onEmojiSelected: ",n)}}onReactionClick(e){try{if(e?.icon){let n=this.componentConfigSignal().annotations?.map(r=>r?.annotationId)||[];this.reactionService.addOrUpdateReaction(e.icon,n,void 0,this.componentConfigSignal().targetReactionElementId)}}catch(n){this.catchError("Error in InlineReactionsSectionComponent onReactionClick: ",n)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.catchError("Error in InlineReactionsSectionComponent ngOnDestroy: ",e)}}catchError(e,n,r){try{let c;this.componentConfigSignal()?.annotations?.length&&(c=this.componentConfigSignal()?.annotations[0]?.annotationId),this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:c}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(Ae),d(je),d(S),d(me),d(se),d(he),d(P),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section"]],inputs:{_targetReactionElementId:[0,"targetReactionElementId","_targetReactionElementId"],_shadowDom:[0,"shadowDom","_shadowDom"],variant:"variant",_customReactions:[0,"customReactions","_customReactions"]},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["commentToolRefRef",""],[4,"ngIf"],[4,"veltIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,xr,2,6,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,z,tt],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}"],changeDetection:0});let t=o;return t})();var vt=class extends _n{constructor(o){super(o),this.getService(S).log("%c[WB] Creating CLASS: ReactionElement","color: blue;"),this.enableDarkMode=this._enableDarkMode,this.disableDarkMode=this._disableDarkMode,this.setCustomReactions=this._setCustomReactions}_enableDarkMode(){this.getService(S).log("%c[WB] Calling FUNCTION: enableDarkMode","color: green;");try{this.trackEvent(ct.Events.Reactions.ENABLE_DARK_MODE_TRIGGERED),this.getService(me).enableDarkMode()}catch(o){this.getService(S).catch("Error in _enableDarkMode: ",o)}}_disableDarkMode(){this.getService(S).log("%c[WB] Calling FUNCTION: disableDarkMode","color: green;");try{this.trackEvent(ct.Events.Reactions.DISABLE_DARK_MODE_TRIGGERED),this.getService(me).disableDarkMode()}catch(o){this.getService(S).catch("Error in _disableDarkMode: ",o)}}_setCustomReactions(o){this.getService(S).log("%c[WB] Calling FUNCTION: setCustomReactions","color: green;");try{this.trackEvent(ct.Events.Reactions.SET_CUSTOM_REACTIONS_TRIGGERED,{payload:{reactions:o}}),this.getService(me).setCustomReactions(o)}catch(i){this.getService(S).catch("Error in _setCustomReactions: ",i)}}};var Fn=(()=>{let o=class o{};o.\u0275fac=function(n){return new(n||o)},o.\u0275mod=Ft({type:o}),o.\u0275inj=Mt({imports:[zt,Xt,hn]});let t=o;return t})();var Ir={"velt-reaction-pin-emoji-wireframe":ze,"velt-reaction-pin-count-wireframe":$e,"velt-reaction-pin-tooltip-wireframe":Je,"velt-reaction-pin-tooltip-users-wireframe":Ge,"velt-reaction-pin-tooltip-user-wireframe":Xe,"velt-reaction-pin-tooltip-user-avatar-wireframe":He,"velt-reaction-pin-tooltip-user-name-wireframe":Ye,"velt-reactions-panel-items-wireframe":qe,"velt-reactions-panel-item-wireframe":Ze,"velt-reactions-panel-item-emoji-wireframe":Qe,"velt-inline-reactions-section-wireframe":Ue,"velt-inline-reactions-section-tool-container-wireframe":et,"velt-inline-reactions-section-list-wireframe":Ke,"velt-inline-reactions-section-panel-wireframe":tt};Object.assign(dn,Ir);function Sr(t){t.get(S).log("%c[WB] Loading reaction feature chunk","color: blue;");let i=t.get(lt),e=t.get(me);i.set(an,e);let r=jt(Fn,t).injector;return Le(r,ce.TAGS.VELT_REACTION_TOOL,Be),Le(r,ce.TAGS.SNIPPYLY_REACTION_TOOL,Be),Le(r,ce.TAGS.VELT_REACTION_PIN,Ne),Le(r,ce.TAGS.SNIPPYLY_REACTION_PIN,Ne),Le(r,ce.TAGS.VELT_INLINE_REACTIONS_SECTION,Ue),Le(r,ce.TAGS.SNIPPYLY_INLINE_REACTIONS_SECTION,Ue),new vt(t)}function Le(t,o,i){if(customElements.get(o))return;let e=Gt(i,{injector:t});customElements.define(o,e)}export{Sr as default};
1
+ import{j as gn,l as Re,m as st,t as hn}from"./chunk-PDOET6TG.js";import"./chunk-O64Y7CY5.js";import{x as vn}from"./chunk-S7J3GTUB.js";import{a as Cn}from"./chunk-TVHRQJC4.js";import{a as ke}from"./chunk-4ZVKEG33.js";import{a as pn}from"./chunk-QYY5QDZZ.js";import{B as N,C as z,z as dn}from"./chunk-MVFPB6P2.js";import{a as se}from"./chunk-GDYKECHB.js";import{b as H,c as mt,d as un}from"./chunk-KPCULYW2.js";import{a as _n}from"./chunk-MUZB4ZRW.js";import{a as fn}from"./chunk-3QB54TU3.js";import{a as Gt}from"./chunk-E2Q3RJVJ.js";import{A as $t,G as Ht,H as Yt,I as Xt,da as h,ea as he,fa as $,ga as fe}from"./chunk-UQI5JFMO.js";import{$ as Pt,Aa as De,Ai as sn,Bf as _t,Ch as ct,Db as ut,E as xe,Eb as ht,Ed as Jt,Ee as ce,Fa as s,Fb as ft,Fc as Me,Fi as je,G as Ot,Ga as _e,Gc as F,Hc as Lt,Ib as G,Ic as Vt,J as Oe,Jc as Wt,Jg as at,Kb as Ce,Kf as Ct,L as ot,Lc as ge,Lf as Zt,Nb as Ve,Ob as Nt,Pa as d,Pb as rt,Pc as zt,Pi as mn,Sf as qt,T as X,Ta as jt,Ua as M,Uf as en,Uh as It,Va as Ft,Y as gt,Ya as A,Yf as tn,_a as m,_b as j,a as k,aa as Mt,ac as Bt,ai as an,b as B,bc as y,ca as le,cc as D,db as R,fc as W,g as be,gg as nn,ha as K,ia as Q,ii as lt,ja as At,ji as cn,kc as T,ki as S,l as it,lb as l,lc as w,li as ln,mb as b,mc as We,mh as Se,nb as I,ob as U,oe as Kt,oh as bt,pc as ae,q as Dt,qa as Pe,qg as on,qh as rn,r as Y,sb as g,sc as Ut,sf as Qt,sh as xt,si as ye,tb as u,ti as Ae,ua as Ie,ub as pe,ui as St,v as V,vb as ee,w as pt,wa as P,x as wt,xb as te,zb as a,zi as ue}from"./chunk-4EV2AXDK.js";var me=(()=>{let o=class o{constructor(e,n,r,c,p,x,_,f,v,C,E,O,q){this.afAuth=e,this.analyticsService=n,this.authService=r,this.configService=c,this.databaseService=p,this.commonDbService=x,this.docService=_,this.domService=f,this.emojiService=v,this.iamService=C,this.loggingService=E,this.userPermissionService=O,this.serviceBook=q,this.documentPaths=null,this.reactionAnnotationById$=new it({}),this.customReactions$=new it({}),this.commentService=null,this.darkMode$=new it(null),this.loggingService.log("%c[WB] Creating CLASS: ReactionService","color: blue;"),this.serviceBook.observe(It).subscribe(L=>{this.commentService=L}),this.databaseService.getDb().pipe(xe(L=>!!L),Oe(1)).subscribe(L=>{L&&this.getAllReactionAnnotations(void 0,void 0,!0).subscribe()},L=>{this.loggingService.catch("Error in ReactionService getDb subscription: ",L)})}setCommentService(e){this.loggingService.log("%c[WB] Calling FUNCTION: setCommentService","color: green;");try{this.commentService=e}catch(n){this.loggingService.catch("Error in ReactionService setCommentService: ",n)}}clearCache(){this.loggingService.log("%c[WB] Calling FUNCTION: clearCache in ReactionService","color: green;");try{this.reactionAnnotationById$.next({}),this.customReactions$.next({}),this.documentPaths=null}catch(e){this.loggingService.catch("Error in ReactionService clearCache: ",e)}}getAllReactionAnnotations(e,n,r,c,p){this.loggingService.log("%c[WB] Calling FUNCTION: getAllReactionAnnotations","color: green;");let x,_;try{if(e&&(_=`${_t(e)}`),n&&typeof n=="object"){let f=tn(n);x=_t(JSON.stringify(f))}}catch(f){this.loggingService.catch("Error in ReactionService getAllReactionAnnotations: ",f)}return this.authService.getAuthState$().pipe(xe(f=>!!f),X(f=>this.isFeatureAllowed({firebaseUser:f,annotations:[],filteredAnnotations:[]})),X(f=>f.featureAllowed?this.iamService.isUserAllowed$().pipe(V(v=>(f.featureAllowed=v,f))):Y(f)),X(f=>f.featureAllowed?Y(f).pipe(X(v=>this.docService.getDocumentPaths$().pipe(V(C=>(this.documentPaths=C,v.documentPaths=C,v)))),X(v=>_?this.getDataFromDocumentIds([_]).pipe(V(C=>(v.annotations=C||[],k({},v)))):this.docService.getDocumentIds$().pipe(X(C=>{let E=C?.length>0?C.map(O=>O.documentId):[this.documentPaths?.documentId??""];return this.getDataFromDocumentIds(E).pipe(V(O=>(v.annotations=O||[],k({},v))))}))),X(v=>this.docService.getLocation$().pipe(V(C=>(v.location=C,v)))),X(v=>this.docService.getLocations$().pipe(V(C=>(v.customLocations=C,v)))),V(v=>{if(v.filteredAnnotations=[],_&&!x)return v.filteredAnnotations=v.annotations?.slice(),v;{let C=[];return x?C.push(x):(C.push(v?.location?.locationId),C.push(...Object.values(v?.customLocations||[]).map(E=>E.locationId))),v.filteredAnnotations=this.filterAnnotationsByLocationIds(v?.annotations,C),v}}),X(v=>r?Y(v):v?.annotations?.length?this.domService.onWindowResize$().pipe(V(()=>v)):Y(v)),X(v=>r?Y(v):Y(v)),V(v=>v),X(v=>v?.filteredAnnotations?Y(v?.filteredAnnotations||[]):Y([]))):Y([])),ot(rn))}isFeatureAllowed(e){return this.configService.getConfig$().pipe(xe(n=>!!n),V(n=>B(k({},e),{config:n})),X(n=>this.authService.getUser$().pipe(V(r=>B(k({},n),{user:r})))),X(n=>en(n.config,n.user,Kt.REACTION)?Y(B(k({},n),{featureAllowed:!0})):(this.loggingService.warn("Reaction feature is not allowed."),Y(B(k({},n),{featureAllowed:!1})))),ot((n,r)=>n?.featureAllowed===r?.featureAllowed))}getDataFromDocumentIds(e,n){return this.getDataFromDocuments({documentIds:e,filters:n})}getDataFromDocuments(e){if(this.configService?.getApiKey()){let{documentIds:n,filters:r}=e;return n?.some(c=>!c)||!this.documentPaths?Y([]):wt(()=>{let c=this.authService.getUser()?.userId;return c?this.serviceBook.observe(It).pipe(V(p=>!!p?.buildVisibilityTokens),ot(),X(()=>Dt(this.buildReactionVisibilityTokens(c))),X(p=>this.buildReactionAnnotationsListener({documentIds:n,filters:r,visibilityTokens:p,currentUserId:c}))):Y([])})}else return Y([])}buildReactionAnnotationsListener({documentIds:e,filters:n,visibilityTokens:r,currentUserId:c}){let p=this.docService.getDocumentPaths()?.veltFolderId,x=Y([]),_={useCollectionGroup:!0,isCollection:!0,useQuery:!0};this.commonDbService.shouldUseFirestore()||(_.documentId=e?.length?e[0]:void 0,_.organizationId=this.documentPaths?.organizationId);let f=this.userPermissionService?.getIsContextEnabled(),v=this.authService.getIsPrivateCommentsEnabled()?r:[ce.DEFAULT_VELT_CONTEXT],C=f?this.docService.getProcessedDocContext():[];if(f){let E=[...v,...C],O=Math.max(1,Math.min(ce.LISTENER_CONTEXT_BATCH_SIZE,Math.floor(ce.FIRESTORE_MAX_DISJUNCTIONS/Math.max(1,e?.length??1)))),q=[];for(let L=0;L<(E?.length??0);L+=O)q.push(E?.slice(L,L+O)??[]);x=pt(q.map(L=>this.commonDbService.dbListener({feature:"allReactions",properties:B(k({},_),{firestoreQuery:[St(ue("metadata.apiKey","==",this.configService?.getApiKey()),ue("metadata.documentId","in",e),ue("metadata.organizationId","==",this.documentPaths?.organizationId),...p?[ue("metadata.veltFolderId","==",p)]:[],...L?.length?[ue("context.accessFields","array-contains-any",L)]:[])]})}).pipe(gt()))).pipe(V(L=>xt(L)))}else{let E=[];for(let O=0;O<(e?.length??0);O+=ce.LISTENER_BATCH_SIZE)E.push(e?.slice(O,O+ce.LISTENER_BATCH_SIZE)??[]);x=pt(E.map(O=>this.commonDbService.dbListener({feature:"allReactions",properties:B(k({},_),{firestoreQuery:[St(ue("metadata.apiKey","==",this.configService?.getApiKey()),ue("metadata.documentId","in",O),ue("metadata.organizationId","==",this.documentPaths?.organizationId),...p?[ue("metadata.veltFolderId","==",p)]:[])]})}).pipe(gt()))).pipe(V(O=>xt(O)))}return x.pipe(V(E=>({data:E?.data,operation:E?.operation})),V(({data:E,operation:O})=>{let q=[];return E&&(q=Object.values(E??{}).filter(L=>typeof L=="object")),q?.forEach(L=>{this.sanitizeReactionAnnotation(L)}),q=this.applyReactionVisibilityPostFilter(q,r,c,f?C:null),{data:q,operation:O}}),V(({data:E,operation:O})=>{if(!e)return{data:E,documentMap:{},operation:O};let q=E.reduce((L,we)=>{let nt=we.metadata?.documentId;return nt&&(L[nt]||(L[nt]=[]),L[nt].push(we)),L},{});return{data:E,documentMap:q,operation:O}}),V(({data:E,documentMap:O,operation:q})=>{if(!n)if(q?.type==="removed"){if(q?.ids?.length){let L=this.reactionAnnotationById$.value;q?.ids?.forEach(we=>{delete L?.[we]}),this.reactionAnnotationById$.next(L)}}else Object.entries(O??{}).forEach(([L,we])=>{this.setReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:this.documentPaths?.organizationId,documentId:L,annotations:we})});return E}),Ot(E=>(this.loggingService.catch("Error in ReactionService getDataFromDocumentId: ",E),Y([]))))}buildReactionVisibilityTokens(e){return be(this,null,function*(){try{return this.commentService?.buildVisibilityTokens?yield this.commentService.buildVisibilityTokens(e):Ct({userId:e})}catch(n){return this.loggingService.catch("Error in ReactionService buildReactionVisibilityTokens: ",n),Ct({userId:e})}})}applyReactionVisibilityPostFilter(e,n,r,c){try{let p=Zt(e,{userId:r,tokens:n});c&&(p=qt(p,c));let x=new Set(p),_=(e||[]).filter(f=>!x.has(f));return _.length&&this.evictReactionAnnotationsFromLocalCache(_.map(f=>f?.annotationId).filter(f=>!!f)),p}catch(p){return this.loggingService.catch("Error in ReactionService applyReactionVisibilityPostFilter: ",p),e}}evictReactionAnnotationsFromLocalCache(e){try{if(!e?.length)return;let n=this.reactionAnnotationById$?.value;if(n&&e.some(r=>r in n)){let r=k({},n);e.forEach(c=>{delete r[c]}),this.reactionAnnotationById$.next(r)}}catch(n){this.loggingService.catch("Error in ReactionService evictReactionAnnotationsFromLocalCache: ",n)}}setReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:e,documentId:n,annotations:r,queryHash:c}){try{if(n){e||(e=ce.NO_ORGANIZATION_ID),c||(c=ce.DEFAULT_QUERY_HASH);let p={};r?.forEach(_=>{_?.annotationId&&(p[_?.annotationId]=_)});let x=k(k({},this.reactionAnnotationById$.value),p);this.reactionAnnotationById$.next(x)}}catch(p){this.loggingService.catch("Error in ReactionService setReactionAnnotationsByOrganizationIdAndDocumentId:",p)}}getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:e,documentId:n}){try{let r={};return Object.values(this.reactionAnnotationById$.value??{}).forEach(c=>{c?.metadata?.documentId==n&&c?.metadata?.organizationId==e&&(r[c?.annotationId]=c)}),Object.values(r)}catch(r){return this.loggingService.catch("Error in ReactionService getReactionAnnotationsByOrganizationIdAndDocumentId:",r),[]}}getLocations$(){return this.docService.getLocation$().pipe(X(e=>this.docService.getLocations$().pipe(V(n=>({location:e,locations:n})))),V(e=>{let n=[];return n.push(e?.location?.locationId),n.push(...Object.values(e.locations||[]).map(r=>r.locationId)),n||[]}))}filterAnnotationsByLocationIds(e,n){try{return e.filter(r=>n.includes(r.locationId))}catch(r){return this.loggingService.catch("Error in ReactionService filterAnnotationsByLocations:",r),[]}}getAnnotationById(e,n){try{let r=this.reactionAnnotationById$.value?.[e];if(r){let{documentId:c,organizationId:p}=n||{};if(c&&r.metadata?.documentId!==c||p&&r.metadata?.organizationId!==p)return}return r}catch(r){this.loggingService.catch("Error in ReactionService getAnnotationById: ",r);return}}getBaseMetadataFromReactionAnnotationId(e){try{let n=this.reactionAnnotationById$.value?.[e];return n?n.metadata:void 0}catch(n){this.loggingService.catch("Error in ReactionService getBaseMetadataFromReactionAnnotationId: ",n);return}}getReactionAnnotationByAnnotationId(e,n){try{return this.reactionAnnotationById$.pipe(V(()=>this.getAnnotationById(e,n)),X(r=>r?Y(r):Y(r)))}catch(r){return this.loggingService.catch("Error in ReactionService getReactionAnnotationByAnnotationId: ",r),Y(void 0)}}getReactionAnnotationsBySectionId(e){try{return this.reactionAnnotationById$.pipe(X(n=>this.docService.getDocumentPaths$().pipe(V(r=>({documentPaths:r,sectionId:e,reactionAnnotationsMap:n})))),X(n=>{let r=at(e,["id","data-id"]);if(r){let c=this.docService.getAdditionLocationFromElement(r);if(c){let p=this.docService.genarateLocationId(c);return this.docService.getLocations$().pipe(V(x=>{let f=Object.values(x||{}).find(v=>v.locationId===p||c?.id&&v.location.id===c.id);return B(k({},n),{additionalLocation:f,locationOnElement:!!c})}))}}return Y(B(k({},n),{additionalLocation:null,element:r}))}),X(n=>n?.locationOnElement?Y(n):this.docService.getLocation$().pipe(V(r=>B(k({},n),{location:r})))),V(({documentPaths:n,location:r,additionalLocation:c,locationOnElement:p,element:x})=>{let _=null,f=this.docService.getAdditionalDocumentIdFromElement(x),v=f?this.docService.generateDocumentId(f):n?.documentId,C=n?.organizationId;if(v){let E=this.getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:C,documentId:v});if(E){_=[];for(let O of E)O?.targetElementId===e&&(p?c&&bt({location:c?.location,locationId:c?.locationId},{location:O.location,locationId:O.locationId})&&_.push(O):r?bt({location:r?.location,locationId:r?.locationId},{location:O.location,locationId:O.locationId})&&_.push(O):O?.locationId||_.push(O))}}return _}))}catch(n){return this.loggingService.catch("Error in ReactionService getReactionAnnotationsBySectionId: ",n),Y(null)}}addOrUpdateReaction(e,n,r,c,p,x,_,f){return be(this,null,function*(){try{let v=n?.map(C=>this.getAnnotationById(C)).find(C=>C?.icon===e);if(v){if(!_||_==="delete")return yield this.updateUserInReaction(v)}else if(!_||_==="add")return yield this.addReaction(void 0,e,r,c,p,x,f)}catch(v){this.loggingService.catch("Error in ReactionService addOrUpdateReaction: ",v)}})}addReaction(e,n,r,c,p,x,_){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: addReaction","color: green;");try{let f=this.authService.getUser();if(f)if(f.isReadOnly||f.isAnonymous)this.loggingService.catch("Anonymous/Readonly users cannot add reactions.");else{let v=new Qt;if(v.from=f,v.lastUpdated=this.timestamp,v.reactions=[],v.reactions.push({from:f,lastUpdated:this.timestamp}),c&&(v.targetElementId=c),p){v.commentAnnotationId=p;let C=this.commentService?.getAnnotationById(p);C||this.loggingService.warn("addReaction: parent comment annotation not in local cache \u2014 reaction written without inherited access gate.",p);let E=C?.context?.accessFields;if(E?.length){if(!this.userPermissionService?.hasUserContextAccess({userId:f.userId,accessFields:E})){this.loggingService.catch("User does not have context access to add reaction annotation.",void 0,void 0,!0);return}v.context=B(k({},C?.context?.access?{access:C.context.access}:{}),{accessFields:E})}}if(this.setLocationToReactionAnnotation(v),v.pageInfo=on(),v.pageInfo&&(v.pageInfo.screenWidth=this.domService.getCurrentWindowSizeValue()?.screenWidth),n)if(v.icon=n,x)v.iconUrl=x?.url,v.iconEmoji=x?.emoji;else{let C=this.customReactions$.value;if(C){let E=C[n];E?.url&&(v.iconUrl=E?.url),E?.emoji&&(v.iconEmoji=E?.emoji)}}return r&&(v.location={},v.location=k({},r),v.locationId=this.docService.genarateLocationId(v.location)),yield this.saveReactionToDb(v)}}catch(f){this.loggingService.catch("Error in ReactionService addReaction: ",f)}})}setLocationToReactionAnnotation(e){try{let n=this.docService.getLocation();n?(e.locationId=n.locationId,e.location=n.location):(delete e.locationId,delete e.location);try{let r;e.targetElement?.xpath?r=this.domService.getElementFromXPath(e.targetElement.xpath):e.targetElementId&&(r=at(e.targetElementId,["id","data-id"]));let c=this.docService.getAdditionLocationFromElement(r);if(c){let p=this.docService.addLocation({location:c,source:"internal"});p?.[0]&&(e.locationId=p[0].locationId,e.location=p[0].location)}}catch{}}catch(n){this.loggingService.catch("Error in ReactionService setLocationToReactionAnnotation:",n)}}getElementForReactionAnnotation(e){try{let n;return e.targetElementId&&(n=at(e.targetElementId,["id","data-id"])),n}catch(n){return this.loggingService.catch("Error in ReactionService getElementForReactionAnnotation: ",n),null}}saveReactionToDb(e){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: saveReactionToDb","color: green;");try{if(this.authService.getUser()){let n=yield this.docService.getDocumentPaths$().pipe(xe(c=>!!c),Oe(1)).toPromise();if(!n)throw new Error("Document paths not found.");if(this.documentPaths=n,this.loggingService.log(this.documentPaths),!(yield this.databaseService.getDb().pipe(xe(c=>!!c),Oe(1)).toPromise()))throw new Error("Database not found.");if(this.documentPaths?.reaction){if(e.annotationId=this.commonDbService.generateDocumentId(),e.pageInfo,!e?.metadata?.documentId){e?.metadata||(e.metadata={});let f=this.getElementForReactionAnnotation(e),v=this.docService.getBaseMetadata("reaction",{commentAnnotationId:e.commentAnnotationId,element:f});e.metadata=k(k({},e?.metadata),v)}let c=JSON.parse(JSON.stringify(e));c.position=null;let{documentId:p,organizationId:x}=this.getDocumentIdAndOrganizationIdFromReactionAnnotation(e),_=e.commentAnnotationId?void 0:{annotationData:c,actionType:"add",notificationSource:"reaction"};return yield this.commonDbService.setData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:c,extraData:_}),c}else return}}catch(n){this.loggingService.catch("Error in ReactionService saveReactionToDb: ",n)}})}getDocumentIdAndOrganizationIdFromReactionAnnotation(e){try{return{documentId:e?.metadata?.documentId,organizationId:e?.metadata?.organizationId}}catch(n){return this.loggingService.catch("Error in ReactionService getDocumentIdAndOrganizationIdFromReactionAnnotation: ",n),{}}}updateUserInReaction(e){return be(this,null,function*(){try{let n=this.authService.getUser();if(n)return e?.reactions||(e.reactions=[]),e?.reactions?.find(c=>c?.from?.userId===n?.userId)?e.reactions=e?.reactions?.filter(c=>c?.from?.userId!==n?.userId):e.reactions.push({from:n,lastUpdated:this.timestamp}),e.reactions.length?yield this.updateReaction(e):yield this.deleteReactionPinAnnotation(e?.annotationId),e}catch(n){this.loggingService.catch("Error in ReactionService updateUserInReaction: ",n)}})}removeUserFromReaction(e){this.loggingService.log("%c[WB] Calling FUNCTION: removeUserFromReaction","color: green;");try{let n=this.authService.getUser();n&&(e?.reactions||(e.reactions=[]),e.reactions=e?.reactions?.filter(r=>r?.from?.userId!==n?.userId),this.updateReaction(e))}catch(n){this.loggingService.catch("Error in ReactionService removeUserFromReaction: ",n)}}updateReaction(e,n,r){return be(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: updateReaction","color: green;");try{if(this.authService.getUser()){if(e?.targetElement?.xpath){let _=this.domService.getXPath(e.targetElement.xpath);if(_){let f=_.iterateNext();f&&(nn(f)||(e.targetElement=null))}}let c=JSON.parse(JSON.stringify(e));if(c.position=null,c.lastUpdated=this.timestamp,!c?.metadata?.documentId){c?.metadata||(c.metadata={});let _=this.docService.getBaseMetadata("reaction",{commentAnnotationId:e.commentAnnotationId});c.metadata=k(k({},c?.metadata),_)}let{documentId:p,organizationId:x}=c?.metadata||{};return r?yield this.commonDbService.updateData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:JSON.parse(JSON.stringify(c))}):yield this.commonDbService.setData({feature:"reaction",properties:{id:e.annotationId,documentId:p,organizationId:x},data:JSON.parse(JSON.stringify(c))}),c}}catch(c){this.loggingService.catch("Error in ReactionService updateReaction: ",c)}})}deleteReactionPinAnnotation(e,n){return be(this,null,function*(){try{let r=this.getAnnotationById(e),{documentId:c,organizationId:p}=this.getDocumentIdAndOrganizationIdFromReactionAnnotation(r),x=r&&!r.commentAnnotationId?{annotationData:r,actionType:"delete",notificationSource:"reaction"}:void 0;yield this.commonDbService.deleteData({feature:"reaction",properties:{id:e,documentId:c,organizationId:p},extraData:x})}catch(r){this.loggingService.catch("Error in ReactionService deleteReactionPinAnnotation: ",r)}})}setCustomReactions(e){try{this.loggingService.log("%c[WB] Calling FUNCTION: setCustomReactions","color: green;"),this.customReactions$.next(e),this.emojiService.setEmojiList(e)}catch(n){this.loggingService.catch("Error in ReactionService setCustomReactions: ",n)}}enableDarkMode(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: enableDarkMode","color: green;"),this.darkMode$.value===!0)return;this.darkMode$.next(!0)}catch(e){this.loggingService.catch("Error in ReactionService enableDarkMode: ",e)}}disableDarkMode(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: disableDarkMode","color: green;"),this.darkMode$.value===!1)return;this.darkMode$.next(!1)}catch(e){this.loggingService.catch("Error in ReactionService disableDarkMode: ",e)}}getDarkMode(){return this.darkMode$.value}getDarkMode$(){return this.darkMode$.asObservable()}sanitizeReactionAnnotation(e){try{e&&(e.iconUrl&&(e.iconUrl=this.domService.sanitizeHtml(e.iconUrl)),e.iconEmoji&&(e.iconEmoji=this.domService.sanitizeHtml(e.iconEmoji)),e.icon&&(e.icon=this.domService.sanitizeHtml(e.icon)))}catch(n){this.loggingService.catch("Error in ReactionService sanitizeReactionAnnotation: ",n)}}get timestamp(){return this.commonDbService.getServerTimestamp()}getReactionAnnotationForClient(e){try{let n=["isReactionResolverUsed","pageInfo","from","involvedUserIds","position"],r=JSON.parse(JSON.stringify(e)),c={};return Object.keys(r).forEach(p=>{n.includes(p)||(p==="reactions"?c.fromUsers=r[p]:c[p]=r[p])}),c}catch(n){return this.loggingService.catch("Error in ReactionService getReactionAnnotationForClient: ",n),e}}};o.\u0275fac=function(n){return new(n||o)(le(Jt),le(cn),le(Ae),le(ln),le(sn),le(mn),le(je),le(ye),le(Re),le(fn),le(S),le(Cn),le(lt))},o.\u0275prov=Pt({token:o,factory:o.\u0275fac,providedIn:"root"});let t=o;return t})();var Te=class{constructor(){this.annotations=[],this.skeletonLoading=!0,this.darkMode=!1}};var ne=class{constructor(){this.type="comment",this.disableTooltip=!1,this.isReactionSelectedByCurrentUser=!1,this.tooltipVisible=!1,this.shadowDom=!1}};var In=t=>({componentConfigSignal:t}),Bn=(t,o)=>({condition:t,data:o}),Un=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-emoji-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function Ln(t,o){if(t&1&&(g(0),U(1,"div",3),T(2,"emoji"),T(3,"translate"),u()),t&2){let i=a(3).ngIf,e=a();s(),l("innerHTML",We(2,3,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De),R("data-testid",e.componentId)("aria-label",w(3,6,"Reaction with")+" "+((i==null||i.annotation==null?null:i.annotation.icon)||"emoji"))}}function Vn(t,o){if(t&1&&(g(0),m(1,Ln,4,8,"ng-container",0),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",i==null?null:i.annotation)}}function Wn(t,o){if(t&1&&(g(0),m(1,Vn,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Un,e.template,y(1,In,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function zn(t,o){if(t&1&&(g(0),m(1,Wn,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Bn,i.conditionSignal(),y(1,In,i.componentConfigSignal)))}}var ze=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-emoji",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinEmojiComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-emoji-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","img",1,"velt-reaction-pin--emoji",3,"innerHTML"]],template:function(n,r){n&1&&m(0,zn,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,st,H],styles:["[_nghost-%COMP%]{display:inline-flex}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Sn=t=>({componentConfigSignal:t}),Hn=(t,o)=>({condition:t,data:o}),Yn=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-count-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function Xn(t,o){if(t&1&&(b(0,"div",4),T(1,"translate"),Ve(2),I()),t&2){let i=a(3).ngIf,e=a();R("data-testid",e.componentId)("aria-label",w(1,3,"Reaction count")+" "+((i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)||0)),s(2),rt(" ",i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length," ")}}function Gn(t,o){if(t&1&&(g(0),m(1,Xn,3,5,"div",3),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)}}function Jn(t,o){if(t&1&&(g(0),m(1,Gn,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Yn,e.template,y(1,Sn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Kn(t,o){if(t&1&&(g(0),m(1,Jn,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Hn,i.conditionSignal(),y(1,Sn,i.componentConfigSignal)))}}var $e=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-count",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinCountComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-count-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["class","velt-reaction-pin--count","role","status",4,"ngIf"],["role","status",1,"velt-reaction-pin--count"]],template:function(n,r){n&1&&m(0,Kn,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,H],styles:["[_nghost-%COMP%]{display:inline-flex}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var yn=t=>({componentConfigSignal:t}),Zn=(t,o)=>({condition:t,data:o}),qn=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-avatar-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ei(t,o){if(t&1&&(g(0),U(1,"snippyly-user-avatar",3),T(2,"translate"),T(3,"translate"),u()),t&2){let i=a(4);s(),l("size",24)("user",i.reaction==null?null:i.reaction.from),R("data-testid",i.componentId+"-avatar")("aria-label",w(2,4,"Avatar for")+" "+w(3,6,(i.reaction==null||i.reaction.from==null?null:i.reaction.from.name)||(i.reaction==null||i.reaction.from==null?null:i.reaction.from.email)||"user"))}}function ti(t,o){if(t&1&&(g(0),m(1,ei,4,8,"ng-container",0),u()),t&2){let i=a(3);s(),l("ngIf",i.reaction)}}function ni(t,o){if(t&1&&(g(0),m(1,ti,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,qn,e.template,y(1,yn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function ii(t,o){if(t&1&&(g(0),m(1,ni,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Zn,i.conditionSignal(),y(1,yn,i.componentConfigSignal)))}}var He=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-avatar",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserAvatarComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-avatar-internal"]],inputs:{reaction:"reaction"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-reaction-pin-tooltip-user-avatar",3,"size","user"]],template:function(n,r){n&1&&m(0,ii,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,un,H],styles:["[_nghost-%COMP%]:empty{display:none}snippyly-user-avatar[_ngcontent-%COMP%]{display:flex}"],changeDetection:0});let t=o;return t})();var kn=t=>({componentConfigSignal:t}),ai=(t,o)=>({condition:t,data:o}),ci=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-name-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function li(t,o){if(t&1&&(b(0,"span",7),Ve(1),T(2,"translate"),I()),t&2){let i=a(6);R("data-testid",i.componentId+"-suffix"),s(),rt("(",w(2,2,"You"),")")}}function si(t,o){if(t&1&&(g(0),b(1,"span",5),Ve(2),T(3,"translate"),I(),m(4,li,3,4,"span",6),u()),t&2){let i=a(4).ngIf,e=a();s(),R("data-testid",e.componentId+"-name"),s(),Nt(w(3,3,(e.reaction==null||e.reaction.from==null?null:e.reaction.from.name)||(e.reaction==null||e.reaction.from==null?null:e.reaction.from.email))),s(2),l("ngIf",(e.reaction==null||e.reaction.from==null?null:e.reaction.from.userId)===(i==null||i.user==null?null:i.user.userId))}}function mi(t,o){if(t&1&&(g(0),m(1,si,5,5,"ng-container",4),u()),t&2){a(2);let i=G(3),e=a(2);s(),l("ngIf",(e.reaction==null||e.reaction.from==null?null:e.reaction.from.name)||(e.reaction==null||e.reaction.from==null?null:e.reaction.from.email))("ngIfElse",i)}}function di(t,o){if(t&1&&(g(0),m(1,mi,2,2,"ng-container",1),u()),t&2){let i=a(3);s(),l("ngIf",i.reaction)}}function vi(t,o){t&1&&U(0,"velt-skeleton-loader-internal",8)}function pi(t,o){if(t&1&&(g(0),m(1,di,2,1,"ng-container",3)(2,vi,1,0,"ng-template",null,0,ae),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,ci,e.template,y(1,kn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function gi(t,o){if(t&1&&(g(0),m(1,pi,4,9,"ng-container",2),u()),t&2){let i=a();s(),l("veltIf",D(3,ai,i.conditionSignal(),y(1,kn,i.componentConfigSignal)))}}var Ye=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-name",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserNameComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-name-internal"]],inputs:{reaction:"reaction"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[["loadingTemplateRef",""],[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[4,"ngIf","ngIfElse"],[1,"velt-reaction-pin-tooltip-user-name"],["class","velt-reaction-pin-tooltip-user-name-suffix",4,"ngIf"],[1,"velt-reaction-pin-tooltip-user-name-suffix"],["height","20px","width","64px","borderRadius","20px"]],template:function(n,r){n&1&&m(0,gi,2,6,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,mt,H],styles:["[_nghost-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-sm)}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Rn=(t,o)=>({componentConfigSignal:t,reaction:o}),hi=(t,o)=>({condition:t,data:o}),fi=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-user-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function _i(t,o){if(t&1&&(b(0,"div",3),T(1,"translate"),T(2,"translate"),U(3,"velt-reaction-pin-tooltip-user-avatar-internal",4)(4,"velt-reaction-pin-tooltip-user-name-internal",5),I()),t&2){let i=a(3);R("data-testid",i.componentId)("aria-label",w(1,5,"Reaction by")+" "+w(2,7,(i.reaction==null||i.reaction.from==null?null:i.reaction.from.name)||(i.reaction==null||i.reaction.from==null?null:i.reaction.from.email)||"user")),s(3),l("reaction",i.reaction),s(),l("reaction",i.reaction)("componentConfigSignal",i.componentConfigSignal)}}function Ci(t,o){if(t&1&&(g(0),m(1,_i,5,9,"div",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(4,fi,e.template,D(1,Rn,e.componentConfigSignal,e.reaction),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function bi(t,o){if(t&1&&(g(0),m(1,Ci,2,10,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(4,hi,i.conditionSignal(),D(1,Rn,i.componentConfigSignal,i.reaction)))}}var Xe=(()=>{let o=class o extends ${set _userWireframe(e){try{this.userWireframe=e,this.userWireframe?this.template=this.domService.deepCloneElement(this.userWireframe):this.template=null}catch{}}constructor(e,n,r,c){super(n,c,r),this.domService=e,this.elementRef=n,this.loggingService=r,this.dynamicDataService=c,this.componentId="velt-reaction-pin-tooltip-user",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUserComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(ye),d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-user-internal"]],inputs:{reaction:"reaction",_userWireframe:[0,"userWireframe","_userWireframe"]},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],["class","v-tooltip-reaction-user velt-reaction-pin-tooltip-user","role","listitem",4,"veltDynamicTemplate"],["role","listitem",1,"v-tooltip-reaction-user","velt-reaction-pin-tooltip-user"],[3,"reaction"],[3,"reaction","componentConfigSignal"]],template:function(n,r){n&1&&m(0,bi,2,7,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,He,Ye,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reaction-pin-tooltip-user[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-sm);padding:var(--velt-spacing-sm)}"],changeDetection:0});let t=o;return t})();var Tn=t=>({componentConfigSignal:t}),Ii=(t,o)=>({condition:t,data:o}),Si=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reaction-pin-tooltip-users-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function yi(t,o){if(t&1&&(b(0,"div",5),U(1,"velt-reaction-pin-tooltip-user-internal",6),I()),t&2){let i=o.$implicit,e=o.index,n=a(4);R("data-testid",n.componentId+"-item-"+e),s(),l("userWireframe",n.userTemplate)("reaction",i)("componentConfigSignal",n.componentConfigSignal)}}function ki(t,o){if(t&1&&(g(0),b(1,"div",3),T(2,"translate"),m(3,yi,2,4,"div",4),I(),u()),t&2){let i=a(2).ngIf,e=a();s(),R("data-testid",e.componentId)("aria-label",w(2,3,"Users who reacted")),s(2),l("ngForOf",i==null||i.annotation==null?null:i.annotation.reactions)}}function Ri(t,o){if(t&1&&(g(0),m(1,ki,4,5,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Si,e.template,y(1,Tn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Ti(t,o){if(t&1&&(g(0),m(1,Ri,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Ii,i.conditionSignal(),y(1,Tn,i.componentConfigSignal)))}}var Ge=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reaction-pin-tooltip-users",super.initializeComponentConfigSignal(new ne)}ngOnInit(){try{if(super.ngOnInit(),this.setupA11yAttributes(),!this.userTemplate){let e=this.template?.querySelector("velt-reaction-pin-tooltip-user-wireframe");Se(e)||(this.userTemplate=e)}}catch{}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUsersComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipUsersComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-users-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","list",1,"velt-reaction-pin-tooltip-users"],["role","presentation",4,"ngFor","ngForOf"],["role","presentation"],[3,"userWireframe","reaction","componentConfigSignal"]],template:function(n,r){n&1&&m(0,Ti,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Xe,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reaction-pin-tooltip-users[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--velt-spacing-xs)}"],changeDetection:0});let t=o;return t})();var Di=t=>({componentConfigSignal:t}),wi=(t,o)=>({template:t,context:o});function Oi(t,o){t&1&&pe(0)}function Pi(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Oi,1,0,"ng-container",3),I()),t&2){a();let i=G(3);s(),l("ngTemplateOutlet",i)}}function Mi(t,o){if(t&1&&(b(0,"div",5),T(1,"translate"),U(2,"velt-reaction-pin-tooltip-users-internal",6),I()),t&2){let i=a(3);R("data-testid",i.componentId)("aria-label",w(1,4,"Reaction details")),s(2),l("componentConfigSignal",i.componentConfigSignal),R("data-testid",i.componentId+"-users")}}function Ai(t,o){if(t&1&&m(0,Mi,3,6,"div",4),t&2){let i=a(2);l("veltDynamicTemplate",D(3,wi,i.template,y(1,Di,i.componentConfigSignal)))}}function ji(t,o){if(t&1&&(g(0),m(1,Pi,2,1,"velt-shadow-dom-internal",2)(2,Ai,1,6,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a();s(),l("ngIf",e.shadowDom&&!e.template||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}var Je=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}constructor(e,n,r,c,p){super(r,c,void 0,void 0,void 0,p,e),this.loggingService=e,this.wireframeService=n,this.elementRef=r,this.themeService=c,this.dynamicDataService=p,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.componentId="velt-reaction-pin-tooltip",this.subscriptions=[]}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reaction-pin-tooltip-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.template=p}}))}catch(e){this.catchError("Error in ReactionPinTooltipComponent OnInit: ",e)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.catchError("Error in ReactionPinTooltipComponent ondestroy: ",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("role","tooltip"),e.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionPinTooltipComponent setupA11yAttributes:",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.catchError("Error in ReactionPinTooltipComponent unsubscribe: ",e)}}catchError(e,n,r){try{this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:this.componentConfigSignal()?.annotation?.annotationId}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(S),d(se),d(P),d(he),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reaction-pin-tooltip-internal"]],inputs:{shadowDom:"shadowDom",variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[["reactionPinTooltipRef",""],[4,"ngIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["class","velt-reaction-pin-tooltip","role","tooltip",4,"veltDynamicTemplate"],["role","tooltip",1,"velt-reaction-pin-tooltip"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,ji,4,2,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,Ge,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[_nghost-%COMP%]:empty{display:none}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.velt-reaction-pin-tooltip[_ngcontent-%COMP%]{margin-block:8px;opacity:1;padding:4px;border-radius:var(--velt-border-radius-md);background:var(--velt-background-0);box-shadow:0 4px 21px #00000014;display:flex;flex-direction:column;gap:var(--velt-spacing-xs);color:var(--velt-text-0);font-size:var(--velt-font-size-xs);font-style:normal;font-weight:500;line-height:normal}.velt-reaction-pin-tooltip[_ngcontent-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var Ni=["trigger"],Bi=["overlay"],En=t=>({componentConfigSignal:t}),Dn=(t,o)=>({template:t,context:o}),Ui=(t,o)=>({reactionAnnotation:t,user:o});function Li(t,o){if(t&1){let i=ee();b(0,"div",8)(1,"div",9),T(2,"translate"),T(3,"translate"),te("click",function(n){return K(i),a(4).onReactionClick(),Q(n.stopPropagation())}),U(4,"div",10),T(5,"emoji"),I()()}if(t&2){let i=a(3).ngIf,e=a();R("data-testid",e.componentId+"-timeline"),s(),R("data-testid",e.componentId+"-timeline-item")("aria-label",w(2,4,"React with")+" "+w(3,6,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("innerHTML",We(5,8,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De)}}function Vi(t,o){if(t&1&&(g(0),U(1,"velt-reaction-pin-emoji-internal",13)(2,"velt-reaction-pin-count-internal",13),u()),t&2){let i=a(5);s(),l("componentConfigSignal",i.componentConfigSignal),s(),l("componentConfigSignal",i.componentConfigSignal)}}function Wi(t,o){if(t&1){let i=ee();b(0,"div")(1,"div",11),T(2,"translate"),T(3,"translate"),te("click",function(n){return K(i),a(4).onReactionClick(),Q(n.stopPropagation())}),m(4,Vi,3,2,"ng-container",12),I()()}if(t&2){let i=a(3).ngIf,e=a();s(),Ce("velt-reaction-pin--default",!e.template)("velt-reaction-pin--no-reactions",!(!(i==null||i.annotation==null||i.annotation.reactions==null)&&i.annotation.reactions.length)),R("data-testid",e.componentId+"-default")("aria-label",w(2,7,"React with")+" "+w(3,9,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("veltDynamicTemplate",D(13,Dn,e.template,y(11,En,e.componentConfigSignal)))}}function zi(t,o){if(t&1&&(g(0),b(1,"div",5),m(2,Li,6,11,"div",6)(3,Wi,5,16,"div",7),I(),u()),t&2){let i=a(3);s(),l("ngSwitch",i.type),s(),l("ngSwitchCase","timeline")}}function $i(t,o){if(t&1){let i=ee();b(0,"div",9),T(1,"translate"),T(2,"translate"),te("click",function(n){return K(i),a(6).onReactionClick(),Q(n.stopPropagation())}),U(3,"div",10),T(4,"emoji"),I()}if(t&2){let i=a(5).ngIf,e=a();Ce("active",i==null?null:i.isReactionSelectedByCurrentUser),R("data-testid",e.componentId+"-timeline-item")("aria-pressed",i==null?null:i.isReactionSelectedByCurrentUser)("aria-label",w(1,6,"React with")+" "+w(2,8,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("innerHTML",We(4,10,i==null||i.annotation==null?null:i.annotation.icon,i==null?null:i.annotation),De)}}function Hi(t,o){if(t&1&&(b(0,"div",8),m(1,$i,5,13,"div",15),I()),t&2){let i=a(4).ngIf,e=a();R("data-testid",e.componentId+"-timeline"),s(),l("ngIf",i==null||i.annotation==null?null:i.annotation.icon)}}function Yi(t,o){t&1&&U(0,"velt-skeleton-loader-internal",18)}function Xi(t,o){if(t&1&&(g(0),U(1,"velt-reaction-pin-emoji-internal",13)(2,"velt-reaction-pin-count-internal",13),u()),t&2){let i=a(7);s(),l("componentConfigSignal",i.componentConfigSignal),s(),l("componentConfigSignal",i.componentConfigSignal)}}function Gi(t,o){if(t&1){let i=ee();b(0,"div",11),T(1,"translate"),T(2,"translate"),te("click",function(n){return K(i),a(6).onReactionClick(),Q(n.stopPropagation())}),m(3,Xi,3,2,"ng-container",12),I()}if(t&2){let i=a(5).ngIf,e=a();Ce("velt-reaction-pin--default",!e.template)("active",i==null?null:i.isReactionSelectedByCurrentUser)("velt-reaction-pin--no-reactions",!(!(i==null||i.annotation==null||i.annotation.reactions==null)&&i.annotation.reactions.length)),R("data-testid",e.componentId+"-default")("aria-pressed",i==null?null:i.isReactionSelectedByCurrentUser)("aria-label",w(1,10,"React with")+" "+w(2,12,(i==null||i.annotation==null?null:i.annotation.icon)||"emoji")),s(3),l("veltDynamicTemplate",D(16,Dn,e.template,y(14,En,e.componentConfigSignal)))}}function Ji(t,o){if(t&1&&(b(0,"div"),m(1,Yi,1,0,"velt-skeleton-loader-internal",16)(2,Gi,4,19,"div",17),I()),t&2){let i=a(4).ngIf,e=a();s(),l("ngIf",e.showLoadingTemplate),s(),l("ngIf",i==null||i.annotation==null?null:i.annotation.icon)}}function Ki(t,o){if(t&1&&(b(0,"div",5),m(1,Hi,2,2,"div",6)(2,Ji,3,2,"div",7),I()),t&2){let i=a(4);l("ngSwitch",i.type),s(),l("ngSwitchCase","timeline")}}function Qi(t,o){t&1&&pe(0)}function Zi(t,o){if(t&1&&(g(0),m(1,Qi,1,0,"ng-container",20),u()),t&2){let i=a(4).ngIf,e=a();s(),l("ngTemplateOutlet",e.customTooltipTemplate)("ngTemplateOutletContext",D(2,Ui,i==null?null:i.annotation,i==null?null:i.user))}}function qi(t,o){if(t&1&&U(0,"velt-reaction-pin-tooltip-internal",21),t&2){let i=a(5);l("shadowDom",!!i.shadowDom)("variant",i.variant)("componentConfigSignal",i.componentConfigSignal)("darkMode",i.darkMode)}}function eo(t,o){if(t&1&&m(0,Zi,2,5,"ng-container",19)(1,qi,1,4,"ng-template",null,2,ae),t&2){let i=G(2),e=a(4);l("ngIf",e.customTooltipTemplate)("ngIfElse",i)}}function to(t,o){if(t&1&&(b(0,"app-overlay-tooltip",14),m(1,Ki,3,2,"ng-template",null,0,ae)(3,eo,3,2,"ng-template",null,1,ae),I()),t&2){let i=a(3);l("positions",i.positions)("disabled",i.disableTooltip),R("data-testid",i.componentId+"-tooltip")}}function no(t,o){if(t&1&&(g(0),m(1,zi,4,2,"ng-container",3)(2,to,5,3,"app-overlay-tooltip",4),u()),t&2){let i=a().ngIf,e=a();s(),l("ngIf",e.reactionId&&!e.annotationId&&(i==null||i.annotation==null?null:i.annotation.icon)&&e.type!=="standalone"),s(),l("ngIf",(i==null||i.annotation==null||i.annotation.reactions==null?null:i.annotation.reactions.length)||e.type==="standalone")}}function io(t,o){if(t&1&&(g(0),m(1,no,3,2,"ng-container",3),u()),t&2){let i=a();s(),l("ngIf",!i.isExcludedValue)}}var Ne=(()=>{let o=class o extends fe{set reactionId(e){this._reactionId=e}get reactionId(){return this._reactionId}set"reaction-id"(e){this._reactionId=e}get isExcludedValue(){try{let e=this.componentConfigSignal(),n=e?.annotation?.icon,r=this.excludeReactionIds||e?.excludeReactionIds||[];return!n||!r?.length?!1:r.includes(n)}catch{return!1}}constructor(e,n,r,c,p,x,_){super(p,x,void 0,void 0,void 0,_,n),this.authService=e,this.loggingService=n,this.reactionService=r,this.wireframeService=c,this.elementRef=p,this.themeService=x,this.dynamicDataService=_,this.type="comment",this.disableTooltip=!1,this.shadowDom=!1,this.excludeReactionIds=[],this.commentReactionAnnotationIds=[],this.positions=[{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"}],this.componentConfigSignal=Pe(new ne),this.click=new _e,this.showLoadingTemplate=!1,this.subscriptions=[],this.commentReactionSubscriptions=[],this.componentId="velt-reaction-pin",this.loggingService.log("%c[WB] Creating CLASS: ReactionPinComponent","color: blue;")}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit(),this.setupA11yAttributes(),this.setShowLoadingTemplate(),this.reactionId&&!this.annotationId&&(this.setDefaultReaction(this.reactionId),this.commentReactionAnnotationIds?.length&&this.findMatchingAnnotationFromCommentReactions());let e="velt-reaction-pin-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r}}))}catch(e){this.catchError("Error in ReactionPinComponent OnInit: ",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("data-testid",this.componentId+"-container"),e.setAttribute("role","region"),e.setAttribute("aria-label","Reaction section")}catch(e){this.loggingService.catch("Error in ReactionPinComponent setupA11yAttributes:",e)}}ngAfterViewInit(){this.loggingService.log("%c[WB] Calling FUNCTION: ngAfterViewInit","color: green;");try{this.subscriptions.push(this.authService.getUser$().pipe(xe(e=>!!e),Oe(1)).subscribe(e=>{this.componentConfigSignal.update(n=>(n=B(k({},n),{user:e}),n)),this.checkIfReactionSelectedByCurrentUser()}))}catch(e){this.catchError("Error in ReactionPinComponent ngAfterViewInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))}),e.annotationId&&(this.annotationSubscription?.unsubscribe(),this.annotationSubscription=void 0,this.annotationId&&this.getReactionByAnnotationId(this.annotationId)),e.reactionId&&this.reactionId&&!this.annotationId&&this.setDefaultReaction(this.reactionId),(e.commentReactionAnnotationIds||e.reactionId)&&this.reactionId&&!this.annotationId&&this.commentReactionAnnotationIds?.length&&this.findMatchingAnnotationFromCommentReactions()}catch(n){this.catchError("Error in ReactionPinComponent ngOnChanges: ",n)}}setDefaultReaction(e){try{let n={icon:e,reactions:[]};this.componentConfigSignal.update(r=>(r=B(k({},r),{annotation:n}),r))}catch(n){this.catchError("Error in ReactionPinComponent setDefaultReaction: ",n)}}findMatchingAnnotationFromCommentReactions(){try{if(this.commentReactionSubscriptions.forEach(e=>e.unsubscribe()),this.commentReactionSubscriptions=[],!this.commentReactionAnnotationIds?.length||!this.reactionId)return;for(let e of this.commentReactionAnnotationIds){let n=this.reactionService.getReactionAnnotationByAnnotationId(e,this.parentMetadata).subscribe(r=>{r?.icon===this.reactionId&&(this.componentConfigSignal.update(c=>(c=B(k({},c),{annotation:r}),c)),this.checkIfReactionSelectedByCurrentUser())});this.commentReactionSubscriptions.push(n)}}catch(e){this.catchError("Error in ReactionPinComponent findMatchingAnnotationFromCommentReactions: ",e)}}getReactionByAnnotationId(e){this.loggingService.log("%c[WB] Calling FUNCTION: getReactionByAnnotationId","color: green;");try{this.annotationSubscription=this.reactionService.getReactionAnnotationByAnnotationId(e,this.parentMetadata).subscribe(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{annotation:n}),r)),this.checkIfReactionSelectedByCurrentUser(),this.setShowLoadingTemplate(),this.componentConfigSignal().tooltipVisible&&!this.componentConfigSignal().annotation?.reactions?.length&&this.hideTooltip(),this.overlay?.overlayRef?.updatePosition()})}catch(n){this.catchError("Error in ReactionPinComponent getReactionByAnnotationId: ",n)}}checkIfReactionSelectedByCurrentUser(){this.loggingService.log("%c[WB] Calling FUNCTION: checkIfReactionSelectedByCurrentUser","color: green;");try{this.componentConfigSignal.update(e=>(e=B(k({},e),{isReactionSelectedByCurrentUser:!!e.annotation?.reactions?.find(n=>n?.from?.userId===e.user?.userId)}),e))}catch(e){this.catchError("Error in ReactionPinComponent checkIfReactionSelectedByCurrentUser: ",e)}}setShowLoadingTemplate(){try{!this.componentConfigSignal()?.annotation?.icon&&this.componentConfigSignal()?.annotation?.isReactionResolverUsed?this.showLoadingTemplate=!0:this.showLoadingTemplate=!1}catch(e){this.catchError("Error in ReactionPinComponent setShowLoadingTemplate: ",e)}}onReactionClick(){this.loggingService.log("%c[WB] Calling FUNCTION: onReactionClick","color: green;");try{this.click.emit(this.componentConfigSignal().annotation)}catch(e){this.catchError("Error in ReactionPinComponent onReactionClick: ",e)}}showTooltip(){try{this.componentConfigSignal.update(e=>(e=B(k({},e),{tooltipVisible:!0}),e))}catch(e){this.catchError("Error in ReactionPinComponent showTooltip: ",e)}}hideTooltip(){try{this.componentConfigSignal.update(e=>(e=B(k({},e),{tooltipVisible:!1}),e))}catch(e){this.catchError("Error in ReactionPinComponent hideTooltip: ",e)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.catchError("Error in ReactionPinComponent ngOnDestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.forEach(e=>{e.unsubscribe()}),this.subscriptions=[],this.commentReactionSubscriptions.forEach(e=>{e.unsubscribe()}),this.commentReactionSubscriptions=[],this.annotationSubscription?.unsubscribe(),this.annotationSubscription=void 0}catch(e){this.catchError("Error in ReactionPinComponent unsubscribe: ",e)}}catchError(e,n,r){try{this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:this.componentConfigSignal()?.annotation?.annotationId}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(Ae),d(S),d(me),d(se),d(P),d(he),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-reaction-pin"]],viewQuery:function(n,r){if(n&1&&(ut(Ni,5),ut(Bi,5)),n&2){let c;ht(c=ft())&&(r.trigger=c.first),ht(c=ft())&&(r.overlay=c.first)}},inputs:{type:"type",annotationId:"annotationId",disableTooltip:"disableTooltip",customTooltipTemplate:[0,"tooltipTemplate","customTooltipTemplate"],variant:"variant",shadowDom:"shadowDom",parentMetadata:"parentMetadata",excludeReactionIds:"excludeReactionIds",commentReactionAnnotationIds:"commentReactionAnnotationIds",reactionId:[0,"reaction-id","reactionId"]},outputs:{click:"click"},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["triggerTemplate",""],["tooltipTemplate",""],["defaultTooltipTemplate",""],[4,"ngIf"],[3,"positions","disabled",4,"ngIf"],[3,"ngSwitch"],["class","s-emoji-block_timeline",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[1,"s-emoji-block_timeline"],["role","button",1,"s-emoji-block__item",3,"click"],["role","img","aria-hidden","true",1,"s-emoji-block__item__emoji",3,"innerHTML"],["role","button",1,"velt-reaction-pin",3,"click"],[4,"veltDynamicTemplate"],[3,"componentConfigSignal"],[3,"positions","disabled"],["class","s-emoji-block__item","role","button",3,"active","click",4,"ngIf"],["height","34px","width","51px","borderRadius","8px",4,"ngIf"],["class","velt-reaction-pin","role","button",3,"velt-reaction-pin--default","active","velt-reaction-pin--no-reactions","click",4,"ngIf"],["height","34px","width","51px","borderRadius","8px"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"shadowDom","variant","componentConfigSignal","darkMode"]],template:function(n,r){n&1&&m(0,io,2,1,"ng-container",3),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,Lt,Vt,Wt,gn,N,mt,ze,$e,Je,st,H],styles:["[_nghost-%COMP%]:empty{display:none}.s-emoji-block_timeline[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:var(--velt-spacing-sm);width:18px;height:18px}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item[_ngcontent-%COMP%]{display:flex;align-items:center}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__count[_ngcontent-%COMP%]{display:none}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji{display:flex;align-items:center;justify-content:center}.s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji svg, .s-emoji-block_timeline[_ngcontent-%COMP%] .s-emoji-block__item__emoji img{width:16px!important;height:16px!important} .snippyly-reaction-dialog-overlay-panel{z-index:2147483577}"],changeDetection:0});let t=o;return t})();var wn=t=>({componentConfigSignal:t}),ro=(t,o)=>({condition:t,data:o}),ao=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-list-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function co(t,o){if(t&1){let i=ee();g(0),b(1,"div",6)(2,"app-reaction-pin",7),te("click",function(n){K(i);let r=a(4).ngIf;return Q(r==null?null:r.onReactionClick(n))}),I()(),u()}if(t&2){let i=o.$implicit,e=a(4).ngIf,n=a();s(2),l("annotationId",i==null?null:i.annotationId)("shadowDom",!!(e!=null&&e.shadowDom))("variant",e==null?null:e.variant)("darkMode",!!(e!=null&&e.darkMode))("template",n.pinTemplate)}}function lo(t,o){if(t&1&&(b(0,"div",4),m(1,co,3,5,"ng-container",5),I()),t&2){let i=a(3).ngIf;s(),l("ngForOf",i==null?null:i.annotations)("ngForTrackBy",i.reactionAnnotationsTrackByFn)}}function so(t,o){if(t&1&&(g(0),m(1,lo,2,2,"div",3),u()),t&2){let i=a(2).ngIf;s(),l("ngIf",(i==null||i.annotations==null?null:i.annotations.length)>0)}}function mo(t,o){if(t&1&&(g(0),m(1,so,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,ao,e.template,y(1,wn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function vo(t,o){if(t&1&&(g(0),m(1,mo,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,ro,i.conditionSignal(),y(1,wn,i.componentConfigSignal)))}}var Ke=(()=>{let o=class o extends ${constructor(e,n,r,c){super(e,r,c),this.elementRef=e,this.wireframeService=n,this.dynamicDataService=r,this.loggingService=c,this.subscriptions=[],super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{if(super.ngOnInit(),!this.template){let e="velt-inline-reactions-section-list-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r,this.getChildTemplate()}}))}this.getChildTemplate()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent ngOnDestroy:",e)}}getChildTemplate(){try{if(!this.pinTemplate&&this.template){let e=this.template.querySelector("velt-reaction-pin-wireframe");Se(e)||(this.pinTemplate=e)}}catch(e){this.loggingService.catch("Error in InlineReactionsSectionListComponent getChildTemplate:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(se),d(h),d(S))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-list"]],inputs:{variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["class","velt-inline-reactions-section--reactions",4,"ngIf"],[1,"velt-inline-reactions-section--reactions"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"velt-inline-reactions-section--reaction"],[3,"click","annotationId","shadowDom","variant","darkMode","template"]],template:function(n,r){n&1&&m(0,vo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Ne],styles:[".velt-inline-reactions-section--reactions[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--velt-spacing-xs)}[_nghost-%COMP%] .velt-reaction-pin--default{display:inline-flex;height:28px;padding:var(--velt-spacing-2xs) var(--velt-spacing-sm);align-items:center;gap:var(--velt-spacing-xs);flex-shrink:0;border-radius:var(--velt-border-radius-2xl);border:1px solid var(--velt-border-0);background:var(--velt-background-0);color:var(--velt-text-0);box-sizing:border-box;cursor:pointer}[_nghost-%COMP%] .velt-reaction-pin--default.active{border-radius:var(--velt-border-radius-2xl);border:1px solid var(--velt-accent);background:var(--velt-accent-transparent);color:var(--velt-accent)}[_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji{line-height:1;display:flex}[_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji svg, [_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji img, [_nghost-%COMP%] .velt-reaction-pin--default .velt-reaction-pin--emoji span{width:14px;height:14px;margin:0;font-size:14px;line-height:1}[_nghost-%COMP%] .velt-reaction-pin--default .s-emoji-block__item__count{font-size:var(--velt-font-size-sm);color:var(--velt-text-3)}"],changeDetection:0});let t=o;return t})();var Ee=class{};var On=t=>({componentConfigSignal:t}),go=(t,o)=>({condition:t,data:o}),uo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-item-emoji-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ho(t,o){if(t&1&&(g(0),U(1,"div",3),u()),t&2){let i=a(4);s(),l("innerHTML",i.emoji.value,De),R("data-testid",i.componentId+"-emoji")}}function fo(t,o){if(t&1&&(g(0),m(1,ho,2,2,"ng-container",0),u()),t&2){let i=a(3);s(),l("ngIf",i.emoji)}}function _o(t,o){if(t&1&&(g(0),m(1,fo,2,1,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,uo,e.template,y(1,On,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Co(t,o){if(t&1&&(g(0),m(1,_o,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,go,i.conditionSignal(),y(1,On,i.componentConfigSignal)))}}var Qe=(()=>{let o=class o extends ${constructor(e,n,r){super(e,r,n),this.elementRef=e,this.loggingService=n,this.dynamicDataService=r,this.componentId="velt-reactions-panel-item-emoji",super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent ngOnDestroy:",e)}}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;this.emoji?.key&&e.setAttribute("aria-label",this.emoji.key),e.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemEmojiComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-item-emoji-internal"]],inputs:{emoji:"emoji"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-reactions-panel-item-emoji",3,"innerHTML"]],template:function(n,r){n&1&&m(0,Co,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z],styles:["[_nghost-%COMP%] .velt-reactions-panel-item-emoji{display:flex;height:24px;width:24px;max-width:unset;margin:0;font-size:var(--velt-font-size-lg);line-height:1}[_nghost-%COMP%] .velt-reactions-panel-item-emoji svg, [_nghost-%COMP%] .velt-reactions-panel-item-emoji img, [_nghost-%COMP%] .velt-reactions-panel-item-emoji span{height:100%;width:100%;max-width:unset;margin:0;font-size:var(--velt-font-size-lg);line-height:1}[_nghost-%COMP%]:empty{display:none}"],changeDetection:0});let t=o;return t})();var xo=t=>({componentConfigSignal:t}),Io=(t,o)=>({condition:t,data:o}),So=(t,o)=>({emoji:t,componentConfigSignal:o}),yo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-item-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ko(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-item-emoji-internal",4),u()),t&2){let i=a(4);s(),l("emoji",i.emoji),R("data-testid",i.componentId+"-emoji")}}function Ro(t,o){if(t&1){let i=ee();g(0),b(1,"div",2),T(2,"translate"),te("click",function(){K(i);let n=a(2).ngIf,r=a();return Q(n==null?null:n.handleEmojiSelected(r.emoji.key))}),m(3,ko,2,2,"ng-container",3),I(),u()}if(t&2){let i=a(2).ngIf,e=a();s(),R("aria-label",w(2,3,e.ariaLabel))("data-testid",e.componentId+"-item"),s(2),l("veltDynamicTemplate",W(8,yo,e.template,D(5,So,e.emoji,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function To(t,o){if(t&1&&(g(0),m(1,Ro,4,14,"ng-container",0),u()),t&2){let i=a().ngIf,e=a();s(),l("ngIf",i&&e.emoji)}}function Eo(t,o){if(t&1&&(g(0),m(1,To,2,1,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,Io,i.conditionSignal(),y(1,xo,i.componentConfigSignal)))}}var Ze=(()=>{let o=class o extends ${set _itemWireframe(e){this.itemWireframe=e,this.itemWireframe?this.template=this.domService.deepCloneElement(this.itemWireframe):this.template=null}constructor(e,n,r,c){super(n,c,r),this.domService=e,this.elementRef=n,this.loggingService=r,this.dynamicDataService=c,this.componentId="velt-reactions-panel-item",super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{super.ngOnInit(),this.setupA11yAttributes()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent ngOnDestroy:",e)}}get ariaLabel(){return this.emoji?.key||"Emoji"}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(ye),d(P),d(S),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-item-internal"]],inputs:{emoji:"emoji",_itemWireframe:[0,"itemWireframe","_itemWireframe"]},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[1,"velt-reactions-panel-item",3,"click"],[4,"veltDynamicTemplate"],[3,"emoji"]],template:function(n,r){n&1&&m(0,Eo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Qe,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reactions-panel-item[_ngcontent-%COMP%]{display:flex;padding:var(--velt-spacing-2xs) var(--velt-spacing-xs);border-radius:var(--velt-border-radius-sm);background:transparent;cursor:pointer}.velt-reactions-panel-item[_ngcontent-%COMP%]:hover{background:var(--legacy-velt-border-color)}"],changeDetection:0});let t=o;return t})();var Pn=t=>({componentConfigSignal:t}),wo=(t,o)=>({condition:t,data:o}),Oo=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-reactions-panel-items-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function Po(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-item-internal",5),u()),t&2){let i=o.$implicit,e=a(4);s(),l("itemWireframe",e.itemTemplate)("componentConfigSignal",e.componentConfigSignal)("emoji",i),R("data-testid",e.componentId+"-item-"+i.key)}}function Mo(t,o){if(t&1&&(g(0),b(1,"div",3),T(2,"translate"),m(3,Po,2,4,"ng-container",4),I(),u()),t&2){let i=a(3);s(),R("aria-label",w(2,4,"Choose a reaction"))("data-testid",i.componentId+"-list"),s(2),l("ngForOf",i.filteredEmojis())("ngForTrackBy",i.trackByEmojiKey)}}function Ao(t,o){if(t&1&&(g(0),m(1,Mo,4,6,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,Oo,e.template,y(1,Pn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function jo(t,o){if(t&1&&(g(0),m(1,Ao,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,wo,i.conditionSignal(),y(1,Pn,i.componentConfigSignal)))}}var qe=(()=>{let o=class o extends ${constructor(e,n,r,c){super(r,c,n),this.emojiService=e,this.loggingService=n,this.elementRef=r,this.dynamicDataService=c,this.componentId="velt-reactions-panel-items",this.filteredEmojis=Ut(()=>{try{let p=this.componentConfigSignal()?.excludeReactionIds||[],x=this.emojiService.emojisSignal();return p.length?Object.entries(x).filter(([_])=>!p.includes(_)).map(([_,f])=>({key:_,value:f})):Object.entries(x).map(([_,f])=>({key:_,value:f}))}catch(p){return this.loggingService.catch("Error in ReactionsPanelItemsComponent filteredEmojis:",p),[]}}),super.initializeComponentConfigSignal(new Ee)}ngOnInit(){try{if(super.ngOnInit(),this.setupA11yAttributes(),!this.itemTemplate){let e=this.template?.querySelector("velt-reactions-panel-item-wireframe");Se(e)||(this.itemTemplate=e)}}catch{}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in ReactionsPanelItemsComponent ngOnDestroy:",e)}}trackByEmojiKey(e,n){return n?.key||e}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelItemsComponent setupA11yAttributes:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(Re),d(S),d(P),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-items-internal"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],["role","list",1,"velt-reactions-panel-items"],[4,"ngFor","ngForOf","ngForTrackBy"],[3,"itemWireframe","componentConfigSignal","emoji"]],template:function(n,r){n&1&&m(0,jo,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[Me,F,N,z,Ze,H],styles:["[_nghost-%COMP%]:empty{display:none}.velt-reactions-panel-items[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--velt-spacing-xs);flex-wrap:wrap}"],changeDetection:0});let t=o;return t})();var No=t=>({componentConfigSignal:t}),Bo=(t,o)=>({template:t,context:o});function Uo(t,o){t&1&&pe(0)}function Lo(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Uo,1,0,"ng-container",3),I()),t&2){a();let i=G(3),e=a();R("data-testid",e.componentId+"-shadow-dom"),s(),l("ngTemplateOutlet",i)}}function Vo(t,o){if(t&1&&(g(0),U(1,"velt-reactions-panel-items-internal",6),u()),t&2){let i=a(3);s(),l("componentConfigSignal",i.componentConfigSignal),R("data-testid",i.componentId+"-items")}}function Wo(t,o){if(t&1){let i=ee();b(0,"div",4),T(1,"translate"),te("clickOutside",function(){K(i);let n=a(2);return Q(n.onClickOutside())}),m(2,Vo,2,2,"ng-container",5),I()}if(t&2){let i=a(2);Ce("velt-reactions-panel--inline-section-mode",i.isInlineSectionMode)("velt-reactions-panel--default",!i.template)("dark",i.darkMode),R("aria-label",w(1,9,"Available reactions"))("data-testid",i.componentId+"-panel"),s(2),l("veltDynamicTemplate",D(13,Bo,i.template,y(11,No,i.componentConfigSignal)))}}function zo(t,o){if(t&1&&(g(0),m(1,Lo,2,2,"velt-shadow-dom-internal",2)(2,Wo,3,16,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a();s(),l("ngIf",e.shadowDom&&!e.template||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}var Et=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}constructor(e,n,r,c,p,x){super(r,c,void 0,void 0,void 0,x,n),this.emojiService=e,this.loggingService=n,this.elementRef=r,this.themeService=c,this.wireframeService=p,this.dynamicDataService=x,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.isInlineSectionMode=!1,this.excludeReactionIds=[],this.emojiSelected=new _e,this.hideTooltip=new _e,this.componentConfigSignal=Pe({variant:this.variant,onClickOutside:this.onClickOutside.bind(this),handleEmojiSelected:this.handleEmojiSelected.bind(this),excludeReactionIds:this.excludeReactionIds}),this.subscriptions=[],this.componentId="velt-reactions-panel"}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reactions-panel-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.template=p}}))}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent OnInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))})}catch(n){this.loggingService.catch("Error in ReactionsPanelComponent ngOnChanges: ",n)}}setupA11yAttributes(){try{this.elementRef.nativeElement.setAttribute("data-testid",this.componentId+"-container")}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent setupA11yAttributes:",e)}}trackByEmojiKey(e,n){return n?.key||e}onClickOutside(){try{this.hideTooltip.emit()}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent onClickOutside: ",e)}}handleEmojiSelected(e){try{this.emojiSelected.emit(e),this.hideTooltip.emit()}catch(n){this.loggingService.catch("Error in ReactionsPanelComponent handleEmojiSelected: ",n)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent ondestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.loggingService.catch("Error in ReactionsPanelComponent unsubscribe: ",e)}}};o.\u0275fac=function(n){return new(n||o)(d(Re),d(S),d(P),d(he),d(se),d(h))},o.\u0275cmp=M({type:o,selectors:[["velt-reactions-panel-internal"]],inputs:{shadowDom:"shadowDom",variant:"variant",isInlineSectionMode:"isInlineSectionMode",excludeReactionIds:"excludeReactionIds"},outputs:{emojiSelected:"emojiSelected",hideTooltip:"hideTooltip"},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["reactionsPanelRef",""],[4,"ngIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["snippylyClickOutside","","role","list",1,"velt-reactions-panel",3,"clickOutside"],[4,"veltDynamicTemplate"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,zo,4,2,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,pn,qe,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.velt-reactions-panel[_ngcontent-%COMP%]{max-width:100%;overflow:visible;border:1px solid var(--velt-border-5);border-radius:var(--velt-border-radius-md);transition:opacity .5s;padding:var(--velt-spacing-sm) var(--velt-spacing-md);background-color:var(--velt-background-0);font-style:normal;font-weight:400;font-size:var(--velt-font-size-xs);line-height:calc((2rem + 0px) * var(--velt-base-rem-unit));box-shadow:0 8px 16px -8px #0f0f0f1a}.velt-reactions-panel--inline-section-mode[_ngcontent-%COMP%]{border-radius:var(--velt-border-radius-2xl)}"],changeDetection:0});let t=o;return t})();var Ho=t=>({template:t}),Yo=()=>["snippyly-overlay-panel","snippyly-reaction-dialog-overlay-panel","velt-overlay-panel"];function Xo(t,o){t&1&&pe(0)}function Go(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,Xo,1,0,"ng-container",4),I()),t&2){a();let i=G(2);s(),l("ngTemplateOutlet",i)}}function Jo(t,o){if(t&1&&(g(0),b(1,"div",8),At(),b(2,"svg",9),U(3,"path",10)(4,"path",11)(5,"path",12),I()(),u()),t&2){let i=a(2);s(),Ce("active",i.tooltipVisible)("no-padding",i.noPadding),R("data-testid",i.componentId+"-button"),s(),R("data-testid",i.componentId+"-icon")}}function Ko(t,o){if(t&1){let i=ee();b(0,"velt-reactions-panel-internal",13),T(1,"translate"),te("emojiSelected",function(n){K(i);let r=a(2);return Q(r.handleEmojiSelected(n))})("hideTooltip",function(){K(i);let n=a(2);return Q(n.hideTooltip())}),I()}if(t&2){let i=a(2);l("darkMode",i.darkMode)("shadowDom",i.shadowDom)("variant",i.variant)("isInlineSectionMode",i.isInlineSectionMode)("excludeReactionIds",i.excludeReactionIds),R("data-testid",i.componentId+"-panel")("aria-label",w(1,7,"Reaction selector"))}}function Qo(t,o){if(t&1){let i=ee();b(0,"div",5,1),T(2,"translate"),te("pointerdown",function(){K(i);let n=a();return Q(n.showTooltip())}),m(3,Jo,6,6,"ng-container",6),I(),m(4,Ko,2,9,"ng-template",7,2,ae)}if(t&2){let i=G(1),e=G(5),n=a();Ce("velt-reaction-btn-container--inline-section-mode",n.isInlineSectionMode),R("data-testid",n.componentId)("aria-expanded",n.tooltipVisible)("aria-haspopup",!0)("aria-label",w(2,14,"Add reaction")),s(3),l("veltDynamicTemplate",y(16,Ho,n.template)),s(),l("cdkConnectedOverlayOrigin",i)("cdkConnectedOverlayOpen",n.tooltipVisible)("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",Bt(18,Yo))("cdkConnectedOverlayPositions",n.positions)("snippylyOverlay",e)("snippylyOverlayZIndex",2147483627)}}var Be=(()=>{let o=class o extends fe{set shadowDom(e){this._shadowDom=e}get shadowDom(){return this._shadowDom}resolveTemplate(){this.template=Zo(this.serviceWireframe,this.parentTemplate)}constructor(e,n,r,c,p,x,_,f,v){super(p,_,void 0,void 0,void 0,v,c),this.docService=e,this.domService=n,this.emojiService=r,this.loggingService=c,this.elementRef=p,this.reactionService=x,this.themeService=_,this.wireframeService=f,this.dynamicDataService=v,this._shadowDom=!0,this.isExplicitShadowDom=!1,this.isInlineSectionMode=!1,this.noPadding=!1,this.excludeReactionIds=[],this.onReactionToolClick=new _e,this.emojiSelected=new _e,this.reactionToolOpen=new _e,this.tooltipVisible=!1,this.customButtonAdded=!1,this.positions=[{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"}].map(C=>new $t({originX:C.originX,originY:C.originY},{overlayX:C.overlayX,overlayY:C.overlayY})),this.subscriptions=[],this.veltElement=!0,this.componentId="velt-reaction-tool"}ngOnInit(){try{this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;"),super.ngOnInit();let e=this.elementRef.nativeElement,n=e.getAttribute("shadow-dom")??e.getAttribute("shadowdom");this.isExplicitShadowDom=n!==null&&n!=="false",this.setupA11yAttributes();let r="velt-reaction-tool-wireframe";this.variant&&(r+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(r).subscribe(c=>{if(c){let p=document.createElement(c.tagName);p.innerHTML=c.innerHTML,this.serviceWireframe=p,this.resolveTemplate()}}))}catch(e){this.loggingService.catch("Error in ReactionToolComponent OnInit: ",e)}}ngOnChanges(e){super.ngOnChanges(e),e.template&&(this.parentTemplate=e.template.currentValue,this.resolveTemplate())}setupA11yAttributes(){try{let e=this.elementRef.nativeElement;e.setAttribute("role","button"),e.setAttribute("data-testid",this.componentId+"-container"),e.setAttribute("aria-haspopup","true"),e.setAttribute("aria-expanded","false")}catch(e){this.loggingService.catch("Error in ReactionToolComponent setupA11yAttributes:",e)}}trackByEmojiKey(e,n){return n?.key||e}onButtonSlotChange(){this.customButtonAdded=!0}showTooltip(){try{this.tooltipVisible=!0,this.toggleHostClass(),this.onReactionToolClick.emit()}catch(e){this.loggingService.catch("Error in ReactionToolComponent showTooltip: ",e)}}hideTooltip(){try{this.tooltipVisible=!1,this.toggleHostClass()}catch(e){this.loggingService.catch("Error in ReactionToolComponent hideTooltip: ",e)}}toggleHostClass(){try{this.tooltipVisible?(this.reactionToolOpen.emit(!0),this.domService.addClassToElement(this.elementRef.nativeElement,"reaction-tool-active"),this.domService.addClassToElement(this.elementRef.nativeElement,"velt-reaction-tool-open")):(this.reactionToolOpen.emit(!1),this.domService.removeClassFromElement(this.elementRef.nativeElement,"reaction-tool-active"),this.domService.removeClassFromElement(this.elementRef.nativeElement,"velt-reaction-tool-open"))}catch(e){this.loggingService.catch("Error in ReactionToolComponent toggleHostClass: ",e)}}handleEmojiSelected(e){try{this.emojiSelected.emit(e),this.hideTooltip(),this.videoPlayerId&&this.addReaction(e)}catch(n){this.loggingService.catch("Error in ReactionToolComponent handleEmojiSelected: ",n)}}addReaction(e){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: addReaction","color: green;"),this.videoPlayerId){let n=this.docService.getLocation()?.locationId,r=this.docService.getLocation()?.location;if(n){let c=document.getElementById(this.videoPlayerId);c&&c instanceof HTMLVideoElement&&(c.paused||c.pause());let p=this.docService.getDocumentPaths(),_=this.reactionService.getReactionAnnotationsByOrganizationIdAndDocumentId({organizationId:p?.organizationId,documentId:p?.documentId??""}).find(f=>f.locationId===n);this.reactionService.addOrUpdateReaction(e,_?[_.annotationId]:[],r)}}}catch(n){this.loggingService.catch("Error in VeltVideoPlayerComponent addReaction: ",n)}}ngOnDestroy(){this.loggingService.log("%c[WB] Calling FUNCTION: ngOnDestroy","color: green;");try{super.ngOnDestroy(),this.unsubscribe()}catch(e){this.loggingService.catch("Error in ReactionToolComponent ondestroy: ",e)}}unsubscribe(){this.loggingService.log("%c[WB] Calling FUNCTION: unsubscribe","color: green;");try{this.subscriptions.map(e=>{e.unsubscribe()}),this.subscriptions=[]}catch(e){this.loggingService.catch("Error in ReactionToolComponent unsubscribe: ",e)}}};o.\u0275fac=function(n){return new(n||o)(d(je),d(ye),d(Re),d(S),d(P),d(me),d(he),d(se),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-reaction-tool"]],hostVars:1,hostBindings:function(n,r){n&2&&R("data-velt-element",r.veltElement)},inputs:{shadowDom:"shadowDom",variant:"variant",isInlineSectionMode:"isInlineSectionMode",videoPlayerId:"videoPlayerId",noPadding:"noPadding",excludeReactionIds:"excludeReactionIds"},outputs:{onReactionToolClick:"onReactionToolClick",emojiSelected:"emojiSelected",reactionToolOpen:"reactionToolOpen"},standalone:!1,features:[j([h]),A,Ie],decls:3,vars:2,consts:[["reactionToolRefRef",""],["trigger","cdkOverlayOrigin"],["overlay","cdkConnectedOverlay"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],["part","container","cdkOverlayOrigin","","role","button",1,"v-reaction-btn-container",3,"pointerdown"],[4,"veltDynamicTemplate"],["cdkConnectedOverlay","",3,"cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayPositions","snippylyOverlay","snippylyOverlayZIndex"],["part","button-container",1,"action-btn"],["part","button-icon","width","24","height","24","viewBox","0 0 24 24","fill","none","xmlns","http://www.w3.org/2000/svg","aria-hidden","true","focusable","false",1,"action-btn-icon"],["d","M18.699 12.0222C18.7836 10.5835 18.4287 9.15318 17.6815 7.92091C16.9342 6.68864 15.83 5.71271 14.5152 5.1226C13.2004 4.5325 11.7373 4.35612 10.32 4.61687C8.90263 4.87762 7.59808 5.56317 6.57941 6.58257C5.56074 7.60196 4.87612 8.907 4.61637 10.3245C4.35663 11.742 4.53404 13.205 5.12508 14.5194C5.71612 15.8337 6.69284 16.9373 7.92564 17.6837C9.15844 18.43 10.589 18.7839 12.0276 18.6983M14.7629 17.1318H19.5M17.1315 14.7633V19.5004M9.23631 10.0262H9.24421M13.9734 10.0262H13.9813M9.63107 13.9738C10.1506 14.479 10.8627 14.7633 11.6049 14.7633C12.347 14.7633 13.0591 14.479 13.5786 13.9738","stroke","currentColor","stroke-width","1.33929","stroke-linecap","round","stroke-linejoin","round"],["d","M15.3496 10.6504C15.3496 11.2027 14.9019 11.6504 14.3496 11.6504C13.7973 11.6504 13.3496 11.2027 13.3496 10.6504C13.3496 10.0981 13.7973 9.65039 14.3496 9.65039C14.9019 9.65039 15.3496 10.0981 15.3496 10.6504Z","fill","currentColor"],["d","M10.9004 10.6504C10.9004 11.2027 10.4527 11.6504 9.90039 11.6504C9.34811 11.6504 8.90039 11.2027 8.90039 10.6504C8.90039 10.0981 9.34811 9.65039 9.90039 9.65039C10.4527 9.65039 10.9004 10.0981 10.9004 10.6504Z","fill","currentColor"],[3,"emojiSelected","hideTooltip","darkMode","shadowDom","variant","isInlineSectionMode","excludeReactionIds"]],template:function(n,r){if(n&1&&m(0,Go,2,1,"velt-shadow-dom-internal",3)(1,Qo,6,19,"ng-template",null,0,ae),n&2){let c=G(2);l("ngIf",!r.template&&r.shadowDom||r.template&&r.isExplicitShadowDom)("ngIfElse",c)}},dependencies:[F,ge,Yt,Ht,ke,N,vn,Et,H],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{display:flex;--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}.v-reaction-btn-container[_ngcontent-%COMP%]{display:flex}.action-btn[_ngcontent-%COMP%]{display:inline-flex;justify-content:center;align-items:center;padding:calc(var(--velt-spacing-md) / 2);border-radius:var(--velt-border-radius-full);border:2px solid transparent;background-color:transparent;color:var(--velt-text-4);cursor:pointer}.action-btn.no-padding[_ngcontent-%COMP%]{padding:0}.action-btn[_ngcontent-%COMP%] .action-btn-label[_ngcontent-%COMP%]{font-size:var(--velt-font-size-sm);padding-right:var(--velt-spacing-xs);font-weight:700;color:currentColor}.action-btn[_ngcontent-%COMP%] .action-btn-icon[_ngcontent-%COMP%]{width:calc((1.5rem + 0px) * var(--velt-base-rem-unit));height:calc((1.5rem + 0px) * var(--velt-base-rem-unit));color:currentColor}.action-btn[_ngcontent-%COMP%] .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{width:16px;height:16px;color:currentColor}.action-btn[_ngcontent-%COMP%]:focus{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-border-2);background-color:transparent;color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:focus .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:hover{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-border-2);background-color:var(--velt-background-2);color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:hover .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.action-btn[_ngcontent-%COMP%]:active, .action-btn.active[_ngcontent-%COMP%]{border-radius:var(--velt-border-radius-full);border:2px solid var(--velt-accent);background-color:var(--velt-accent);color:var(--velt-accent-foreground)}.action-btn[_ngcontent-%COMP%]:active .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%], .action-btn.active[_ngcontent-%COMP%] .toolbar-icon-dropdown-arrow[_ngcontent-%COMP%]{color:var(--velt-text-4)}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn-icon[_ngcontent-%COMP%]{height:18px;width:18px}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{padding:calc(var(--velt-spacing-xs) - 1px)}.velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]:active, .velt-reaction-btn-container--inline-section-mode[_ngcontent-%COMP%] .action-btn.active[_ngcontent-%COMP%]{border:1px solid var(--velt-accent-text);background:linear-gradient(0deg,#0006 0% 100%),var(--velt-accent)}"],changeDetection:0});let t=o;return t})();function Zo(t,o){return t||o}var Mn=t=>({componentConfigSignal:t}),er=(t,o)=>({condition:t,data:o}),tr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-tool-container-wireframe",variant:i,setIfCondition:e,componentElementRef:n,replaceTemplate:!1});function nr(t,o){if(t&1){let i=ee();g(0),b(1,"div",3)(2,"app-reaction-tool",4),te("emojiSelected",function(n){K(i);let r=a(2).ngIf;return Q(r.onEmojiSelected(n))}),I()(),u()}if(t&2){let i=a(2).ngIf,e=a();s(2),l("shadowDom",!1)("template",e.toolTemplate)("variant",i==null?null:i.variant)("darkMode",i.darkMode)}}function ir(t,o){if(t&1&&(g(0),m(1,nr,3,4,"ng-container",2),u()),t&2){let i=a().ngIf,e=a();s(),l("veltDynamicTemplate",W(3,tr,e.template,y(1,Mn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function or(t,o){if(t&1&&(g(0),m(1,ir,2,9,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,er,i.conditionSignal(),y(1,Mn,i.componentConfigSignal)))}}var et=(()=>{let o=class o extends ${constructor(e,n,r,c){super(e,n,r),this.elementRef=e,this.dynamicDataService=n,this.loggingService=r,this.wireframeService=c,this.subscriptions=[],super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{if(super.ngOnInit(),!this.template){let e="velt-inline-reactions-section-tool-container-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r,this.getChildTemplate()}}))}this.getChildTemplate()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent ngOnDestroy:",e)}}getChildTemplate(){try{if(!this.toolTemplate&&this.template){let e=this.template.querySelector("velt-reaction-tool-wireframe");Se(e)||(this.toolTemplate=e)}}catch(e){this.loggingService.catch("Error in InlineReactionsSectionToolContainerComponent getChildTemplate:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(h),d(S),d(se))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-tool-container"]],inputs:{variant:"variant"},standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section--tool-container"],[3,"emojiSelected","shadowDom","template","variant","darkMode"]],template:function(n,r){n&1&&m(0,or,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Be],styles:["[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn{border-radius:var(--velt-border-radius-2xl);background:var(--velt-background-0);padding:var(--velt-spacing-xs);border:none}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn .action-btn-icon{width:20px;height:20px}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn:hover{border-radius:var(--velt-border-radius-2xl);background:var(--velt-background-1)}[_nghost-%COMP%] .velt-inline-reactions-section--tool-container[_ngcontent-%COMP%] .v-reaction-btn-container .action-btn:hover .action-btn-icon{color:var(--velt-accent)}"],changeDetection:0});let t=o;return t})();var An=t=>({componentConfigSignal:t}),ar=(t,o)=>({condition:t,data:o}),cr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-panel-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function lr(t,o){if(t&1&&(g(0),b(1,"div",3),U(2,"app-inline-reactions-section-tool-container",4)(3,"app-inline-reactions-section-list",4),I(),u()),t&2){let i=a(3).ngIf,e=a();s(2),l("componentConfigSignal",e.componentConfigSignal)("variant",i==null?null:i.variant),s(),l("componentConfigSignal",e.componentConfigSignal)("variant",i==null?null:i.variant)}}function sr(t,o){if(t&1&&(b(0,"div"),m(1,lr,4,4,"ng-container",2),I()),t&2){let i=a(2).ngIf,e=a();s(),l("veltDynamicTemplate",W(3,cr,e.template,y(1,An,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function mr(t,o){if(t&1&&(g(0),m(1,sr,2,9,"div",0),u()),t&2){let i=a().ngIf;s(),l("ngIf",!i.skeletonLoading)}}function dr(t,o){if(t&1&&(g(0),m(1,mr,2,1,"ng-container",1),u()),t&2){let i=a();s(),l("veltIf",D(3,ar,i.conditionSignal(),y(1,An,i.componentConfigSignal)))}}var tt=(()=>{let o=class o extends ${constructor(e,n,r){super(e,n,r),this.elementRef=e,this.dynamicDataService=n,this.loggingService=r,super.initializeComponentConfigSignal(new Te)}ngOnInit(){try{super.ngOnInit()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionPanelComponent ngOnInit:",e)}}ngOnDestroy(){try{super.ngOnDestroy()}catch(e){this.loggingService.catch("Error in InlineReactionsSectionPanelComponent ngOnDestroy:",e)}}};o.\u0275fac=function(n){return new(n||o)(d(P),d(h),d(S))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section-panel"]],standalone:!1,features:[j([h]),A],decls:1,vars:1,consts:[[4,"ngIf"],[4,"veltIf"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section--panel"],[3,"componentConfigSignal","variant"]],template:function(n,r){n&1&&m(0,dr,2,6,"ng-container",0),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,N,z,Ke,et],styles:[".velt-inline-reactions-section--panel[_ngcontent-%COMP%]{display:flex;gap:var(--velt-spacing-xs)}"],changeDetection:0});let t=o;return t})();var jn=t=>({componentConfigSignal:t}),pr=(t,o)=>({condition:t,data:o}),gr=(t,o,i,e,n)=>({template:t,context:o,componentName:"velt-inline-reactions-section-wireframe",variant:i,setIfCondition:e,componentElementRef:n});function ur(t,o){t&1&&pe(0)}function hr(t,o){if(t&1&&(b(0,"velt-shadow-dom-internal"),m(1,ur,1,0,"ng-container",4),I()),t&2){a();let i=G(3);s(),l("ngTemplateOutlet",i)}}function fr(t,o){if(t&1&&(g(0),b(1,"div",6),U(2,"app-inline-reactions-section-panel",7),I(),u()),t&2){let i=a(5);s(2),l("componentConfigSignal",i.componentConfigSignal)}}function _r(t,o){if(t&1&&m(0,fr,3,1,"ng-container",5),t&2){let i=a(3).ngIf,e=a();l("veltDynamicTemplate",W(3,gr,e.template,y(1,jn,e.componentConfigSignal),i==null?null:i.variant,e.setIfCondition.bind(e),e.elementRef))}}function Cr(t,o){if(t&1&&(g(0),m(1,hr,2,1,"velt-shadow-dom-internal",3)(2,_r,1,9,"ng-template",null,0,ae),u()),t&2){let i=G(3),e=a(3);s(),l("ngIf",!e.template&&e.shadowDom||e.template&&e.isExplicitShadowDom)("ngIfElse",i)}}function br(t,o){if(t&1&&(g(0),m(1,Cr,4,2,"ng-container",1),u()),t&2){let i=a().ngIf;s(),l("ngIf",(i==null?null:i.targetReactionElementId)&&i.user)}}function xr(t,o){if(t&1&&(g(0),m(1,br,2,1,"ng-container",2),u()),t&2){let i=a();s(),l("veltIf",D(3,pr,i.conditionSignal(),y(1,jn,i.componentConfigSignal)))}}var Ue=(()=>{let o=class o extends fe{set _targetReactionElementId(e){try{this.componentConfigSignal.update(n=>(n=B(k({},n),{targetReactionElementId:e}),n)),this.getReactionAnnotationsBySectionId(e)}catch{}}set _shadowDom(e){try{let n=e;typeof e=="string"&&(n=JSON.parse(e)),this.shadowDom=n,this.isExplicitShadowDom=!!n,this.componentConfigSignal.update(r=>(r=B(k({},r),{shadowDom:n}),r))}catch{}}set _customReactions(e){try{let n=e;typeof e=="string"&&(n=JSON.parse(e)),this.reactionService.setCustomReactions(n)}catch{}}constructor(e,n,r,c,p,x,_,f){super(_,x,void 0,c,void 0,f,r),this.authService=e,this.docService=n,this.loggingService=r,this.reactionService=c,this.wireframeService=p,this.themeService=x,this.elementRef=_,this.dynamicDataService=f,this.shadowDom=!0,this.isExplicitShadowDom=!1,this.componentConfigSignal=Pe({annotations:[],skeletonLoading:!0,darkMode:!1,variant:"inline",shadowDom:!0,onEmojiSelected:this.onEmojiSelected.bind(this),onReactionClick:this.onReactionClick.bind(this),reactionAnnotationsTrackByFn:this.reactionAnnotationsTrackByFn.bind(this)}),this.subscriptions=[];try{this.subscriptions.push(super.onDarkModeChange().subscribe(v=>{this.componentConfigSignal.update(C=>(C=B(k({},C),{darkMode:v}),C))})),this.subscriptions.push(this.authService.getUser$().subscribe(v=>{this.componentConfigSignal.update(C=>(C=B(k({},C),{user:v}),C))}))}catch(v){this.catchError("Error in InlineReactionsSectionComponent constructor: ",v)}}ngOnInit(){try{super.ngOnInit(),this.loggingService.log("%c[WB] Calling FUNCTION: ngOnInit","color: green;");let e="velt-inline-reactions-section-wireframe";this.variant&&(e+=`---${this.variant}`),this.subscriptions.push(this.wireframeService.getWireframe$(e).subscribe(n=>{if(n){let r=document.createElement(n.tagName);r.innerHTML=n.innerHTML,this.template=r}}))}catch(e){this.catchError("Error in InlineReactionsSectionComponent OnInit: ",e)}}ngOnChanges(e){try{super.ngOnChanges(e),e&&Object.keys(e).forEach(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{[n]:e[n].currentValue}),r))})}catch(n){this.catchError("Error in InlineReactionsSectionComponent ngOnChanges: ",n)}}reactionAnnotationsTrackByFn(e,n){return n?.annotationId}getReactionAnnotationsBySectionId(e){try{this.reactionService.getReactionAnnotationsBySectionId(e).subscribe(n=>{this.componentConfigSignal.update(r=>(r=B(k({},r),{annotations:n||[],skeletonLoading:!1}),r))})}catch(n){this.catchError("Error in InlineReactionsSectionComponent getReactionsBySectionId: ",n)}}onEmojiSelected(e){try{let n=this.componentConfigSignal().targetReactionElementId,r=this.componentConfigSignal().annotations?.map(c=>c?.annotationId)||[];this.reactionService.addOrUpdateReaction(e,r,void 0,n)}catch(n){this.catchError("Error in InlineReactionsSectionComponent onEmojiSelected: ",n)}}onReactionClick(e){try{if(e?.icon){let n=this.componentConfigSignal().annotations?.map(r=>r?.annotationId)||[];this.reactionService.addOrUpdateReaction(e.icon,n,void 0,this.componentConfigSignal().targetReactionElementId)}}catch(n){this.catchError("Error in InlineReactionsSectionComponent onReactionClick: ",n)}}ngOnDestroy(){try{super.ngOnDestroy(),this.subscriptions.forEach(e=>{e.unsubscribe()})}catch(e){this.catchError("Error in InlineReactionsSectionComponent ngOnDestroy: ",e)}}catchError(e,n,r){try{let c;this.componentConfigSignal()?.annotations?.length&&(c=this.componentConfigSignal()?.annotations[0]?.annotationId),this.loggingService.catch(e,n,B(k({},r||{}),{annotationId:c}))}catch{}}};o.\u0275fac=function(n){return new(n||o)(d(Ae),d(je),d(S),d(me),d(se),d(he),d(P),d(h))},o.\u0275cmp=M({type:o,selectors:[["app-inline-reactions-section"]],inputs:{_targetReactionElementId:[0,"targetReactionElementId","_targetReactionElementId"],_shadowDom:[0,"shadowDom","_shadowDom"],variant:"variant",_customReactions:[0,"customReactions","_customReactions"]},standalone:!1,features:[j([h]),A,Ie],decls:1,vars:1,consts:[["commentToolRefRef",""],[4,"ngIf"],[4,"veltIf"],[4,"ngIf","ngIfElse"],[4,"ngTemplateOutlet"],[4,"veltDynamicTemplate"],[1,"velt-inline-reactions-section"],[3,"componentConfigSignal"]],template:function(n,r){n&1&&m(0,xr,2,6,"ng-container",1),n&2&&l("ngIf",r.componentConfigSignal())},dependencies:[F,ge,ke,N,z,tt],styles:["html[_ngcontent-%COMP%]{--velt-base-rem-unit: 1}*[data-snippyly-element=true][_ngcontent-%COMP%], *[data-velt-element=true][_ngcontent-%COMP%]{font-family:var(--velt-default-font-family)}velt-wireframe[_ngcontent-%COMP%]{display:none!important}body.velt-pin-dragging[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{pointer-events:none!important}[_nghost-%COMP%]{--velt-green: var(--velt-light-mode-green);--velt-magenta: var(--velt-light-mode-magenta);--velt-amber: var(--velt-light-mode-amber);--velt-purple: var(--velt-light-mode-purple);--velt-cyan: var(--velt-light-mode-cyan);--velt-orange: var(--velt-light-mode-orange);--velt-black: var(--velt-light-mode-black);--velt-white: var(--velt-light-mode-white);--velt-gray: var(--velt-light-mode-gray);--velt-error: var(--velt-light-mode-error);--velt-error-hover: var(--velt-light-mode-error-hover);--velt-error-foreground: var(--velt-light-mode-error-foreground);--velt-error-light: var(--velt-light-mode-error-light);--velt-error-transparent: var(--velt-light-mode-error-transparent);--velt-warning: var(--velt-light-mode-warning);--velt-warning-hover: var(--velt-light-mode-warning-hover);--velt-warning-foreground: var(--velt-light-mode-warning-foreground);--velt-warning-light: var(--velt-light-mode-warning-light);--velt-warning-transparent: var(--velt-light-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-light-mode-success);--velt-success-hover: var(--velt-light-mode-success-hover);--velt-success-foreground: var(--velt-light-mode-success-foreground);--velt-success-light: var(--velt-light-mode-success-light);--velt-success-transparent: var(--velt-light-mode-success-transparent);--velt-accent: var(--velt-light-mode-accent);--velt-accent-text: var(--velt-light-mode-accent-text);--velt-accent-hover: var(--velt-light-mode-accent-hover);--velt-accent-foreground: var(--velt-light-mode-accent-foreground);--velt-accent-light: var(--velt-light-mode-accent-light);--velt-accent-transparent: var(--velt-light-mode-accent-transparent);--velt-text-0: var(--velt-light-mode-text-0);--velt-text-1: var(--velt-light-mode-text-1);--velt-text-2: var(--velt-light-mode-text-2);--velt-text-3: var(--velt-light-mode-text-3);--velt-text-4: var(--velt-light-mode-text-4);--velt-text-5: var(--velt-light-mode-text-5);--velt-text-6: var(--velt-light-mode-text-6);--velt-text-7: var(--velt-light-mode-text-7);--velt-text-8: var(--velt-light-mode-text-8);--velt-text-9: var(--velt-light-mode-text-9);--velt-text-10: var(--velt-light-mode-text-10);--velt-text-11: var(--velt-light-mode-text-11);--velt-text-12: var(--velt-light-mode-text-12);--velt-background-0: var(--velt-light-mode-background-0);--velt-background-1: var(--velt-light-mode-background-1);--velt-background-2: var(--velt-light-mode-background-2);--velt-background-3: var(--velt-light-mode-background-3);--velt-background-4: var(--velt-light-mode-background-4);--velt-background-5: var(--velt-light-mode-background-5);--velt-background-6: var(--velt-light-mode-background-6);--velt-background-7: var(--velt-light-mode-background-7);--velt-background-8: var(--velt-light-mode-background-8);--velt-background-9: var(--velt-light-mode-background-9);--velt-background-10: var(--velt-light-mode-background-10);--velt-border-0: var(--velt-light-mode-border-0);--velt-border-1: var(--velt-light-mode-border-1);--velt-border-2: var(--velt-light-mode-border-2);--velt-border-3: var(--velt-light-mode-border-3);--velt-border-4: var(--velt-light-mode-border-4);--velt-border-5: var(--velt-light-mode-border-5);--velt-border-6: var(--velt-light-mode-border-6);--velt-border-7: var(--velt-light-mode-border-7);--velt-border-8: var(--velt-light-mode-border-8);--velt-border-9: var(--velt-light-mode-border-9);--velt-border-10: var(--velt-light-mode-border-10);--velt-background-transparent: var(--velt-light-mode-background-transparent);--velt-border-transparent: var(--velt-light-mode-border-transparent);--velt-animation-transparent: var(--velt-light-mode-animation-transparent)}[dark][_nghost-%COMP%]{--velt-green: var(--velt-dark-mode-green);--velt-magenta: var(--velt-dark-mode-magenta);--velt-amber: var(--velt-dark-mode-amber);--velt-purple: var(--velt-dark-mode-purple);--velt-cyan: var(--velt-dark-mode-cyan);--velt-orange: var(--velt-dark-mode-orange);--velt-black: var(--velt-dark-mode-black);--velt-white: var(--velt-dark-mode-white);--velt-gray: var(--velt-dark-mode-gray);--velt-error: var(--velt-dark-mode-error);--velt-error-hover: var(--velt-dark-mode-error-hover);--velt-error-foreground: var(--velt-dark-mode-error-foreground);--velt-error-light: var(--velt-dark-mode-error-light);--velt-error-transparent: var(--velt-dark-mode-error-transparent);--velt-warning: var(--velt-dark-mode-warning);--velt-warning-hover: var(--velt-dark-mode-warning-hover);--velt-warning-foreground: var(--velt-dark-mode-warning-foreground);--velt-warning-light: var(--velt-dark-mode-warning-light);--velt-warning-transparent: var(--velt-dark-mode-warning-transparent);--velt-agent-accent: #4495ff;--velt-agent-accent-transparent: rgba(68, 149, 255, .2);--velt-success: var(--velt-dark-mode-success);--velt-success-hover: var(--velt-dark-mode-success-hover);--velt-success-foreground: var(--velt-dark-mode-success-foreground);--velt-success-light: var(--velt-dark-mode-success-light);--velt-success-transparent: var(--velt-dark-mode-success-transparent);--velt-accent: var(--velt-dark-mode-accent);--velt-accent-text: var(--velt-dark-mode-accent-text);--velt-accent-hover: var(--velt-dark-mode-accent-hover);--velt-accent-foreground: var(--velt-dark-mode-accent-foreground);--velt-accent-light: var(--velt-dark-mode-accent-light);--velt-accent-transparent: var(--velt-dark-mode-accent-transparent);--velt-text-0: var(--velt-dark-mode-text-0);--velt-text-1: var(--velt-dark-mode-text-1);--velt-text-2: var(--velt-dark-mode-text-2);--velt-text-3: var(--velt-dark-mode-text-3);--velt-text-4: var(--velt-dark-mode-text-4);--velt-text-5: var(--velt-dark-mode-text-5);--velt-text-6: var(--velt-dark-mode-text-6);--velt-text-7: var(--velt-dark-mode-text-7);--velt-text-8: var(--velt-dark-mode-text-8);--velt-text-9: var(--velt-dark-mode-text-9);--velt-text-10: var(--velt-dark-mode-text-10);--velt-text-11: var(--velt-dark-mode-text-11);--velt-text-12: var(--velt-dark-mode-text-12);--velt-background-0: var(--velt-dark-mode-background-0);--velt-background-1: var(--velt-dark-mode-background-1);--velt-background-2: var(--velt-dark-mode-background-2);--velt-background-3: var(--velt-dark-mode-background-3);--velt-background-4: var(--velt-dark-mode-background-4);--velt-background-5: var(--velt-dark-mode-background-5);--velt-background-6: var(--velt-dark-mode-background-6);--velt-background-7: var(--velt-dark-mode-background-7);--velt-background-8: var(--velt-dark-mode-background-8);--velt-background-9: var(--velt-dark-mode-background-9);--velt-background-10: var(--velt-dark-mode-background-10);--velt-border-0: var(--velt-dark-mode-border-0);--velt-border-1: var(--velt-dark-mode-border-1);--velt-border-2: var(--velt-dark-mode-border-2);--velt-border-3: var(--velt-dark-mode-border-3);--velt-border-4: var(--velt-dark-mode-border-4);--velt-border-5: var(--velt-dark-mode-border-5);--velt-border-6: var(--velt-dark-mode-border-6);--velt-border-7: var(--velt-dark-mode-border-7);--velt-border-8: var(--velt-dark-mode-border-8);--velt-border-9: var(--velt-dark-mode-border-9);--velt-border-10: var(--velt-dark-mode-border-10);--velt-background-transparent: var(--velt-dark-mode-background-transparent);--velt-border-transparent: var(--velt-dark-mode-border-transparent);--velt-animation-transparent: var(--velt-dark-mode-animation-transparent)}"],changeDetection:0});let t=o;return t})();var vt=class extends _n{constructor(o){super(o),this.getService(S).log("%c[WB] Creating CLASS: ReactionElement","color: blue;"),this.enableDarkMode=this._enableDarkMode,this.disableDarkMode=this._disableDarkMode,this.setCustomReactions=this._setCustomReactions}_enableDarkMode(){this.getService(S).log("%c[WB] Calling FUNCTION: enableDarkMode","color: green;");try{this.trackEvent(ct.Events.Reactions.ENABLE_DARK_MODE_TRIGGERED),this.getService(me).enableDarkMode()}catch(o){this.getService(S).catch("Error in _enableDarkMode: ",o)}}_disableDarkMode(){this.getService(S).log("%c[WB] Calling FUNCTION: disableDarkMode","color: green;");try{this.trackEvent(ct.Events.Reactions.DISABLE_DARK_MODE_TRIGGERED),this.getService(me).disableDarkMode()}catch(o){this.getService(S).catch("Error in _disableDarkMode: ",o)}}_setCustomReactions(o){this.getService(S).log("%c[WB] Calling FUNCTION: setCustomReactions","color: green;");try{this.trackEvent(ct.Events.Reactions.SET_CUSTOM_REACTIONS_TRIGGERED,{payload:{reactions:o}}),this.getService(me).setCustomReactions(o)}catch(i){this.getService(S).catch("Error in _setCustomReactions: ",i)}}};var Fn=(()=>{let o=class o{};o.\u0275fac=function(n){return new(n||o)},o.\u0275mod=Ft({type:o}),o.\u0275inj=Mt({imports:[zt,Xt,hn]});let t=o;return t})();var Ir={"velt-reaction-pin-emoji-wireframe":ze,"velt-reaction-pin-count-wireframe":$e,"velt-reaction-pin-tooltip-wireframe":Je,"velt-reaction-pin-tooltip-users-wireframe":Ge,"velt-reaction-pin-tooltip-user-wireframe":Xe,"velt-reaction-pin-tooltip-user-avatar-wireframe":He,"velt-reaction-pin-tooltip-user-name-wireframe":Ye,"velt-reactions-panel-items-wireframe":qe,"velt-reactions-panel-item-wireframe":Ze,"velt-reactions-panel-item-emoji-wireframe":Qe,"velt-inline-reactions-section-wireframe":Ue,"velt-inline-reactions-section-tool-container-wireframe":et,"velt-inline-reactions-section-list-wireframe":Ke,"velt-inline-reactions-section-panel-wireframe":tt};Object.assign(dn,Ir);function Sr(t){t.get(S).log("%c[WB] Loading reaction feature chunk","color: blue;");let i=t.get(lt),e=t.get(me);i.set(an,e);let r=jt(Fn,t).injector;return Le(r,ce.TAGS.VELT_REACTION_TOOL,Be),Le(r,ce.TAGS.SNIPPYLY_REACTION_TOOL,Be),Le(r,ce.TAGS.VELT_REACTION_PIN,Ne),Le(r,ce.TAGS.SNIPPYLY_REACTION_PIN,Ne),Le(r,ce.TAGS.VELT_INLINE_REACTIONS_SECTION,Ue),Le(r,ce.TAGS.SNIPPYLY_INLINE_REACTIONS_SECTION,Ue),new vt(t)}function Le(t,o,i){if(customElements.get(o))return;let e=Gt(i,{injector:t});customElements.define(o,e)}export{Sr as default};