[{"data":1,"prerenderedAt":737},["ShallowReactive",2],{"navigation_docs":3,"-essentials-mentions":80,"-essentials-mentions-surround":732},[4,25,65],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"\u002Fgetting-started","1.getting-started",[10,15,20],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-home",{"title":16,"path":17,"stem":18,"icon":19},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Upgrading","\u002Fgetting-started\u002Fupgrading","1.getting-started\u002F3.upgrading","i-lucide-arrow-up-circle",{"title":26,"path":27,"stem":28,"children":29,"page":6},"Essentials","\u002Fessentials","2.essentials",[30,35,40,45,50,55,60],{"title":31,"path":32,"stem":33,"icon":34},"Configuration","\u002Fessentials\u002Fconfiguration","2.essentials\u002F1.configuration","i-lucide-settings",{"title":36,"path":37,"stem":38,"icon":39},"Authorization","\u002Fessentials\u002Fauthorization","2.essentials\u002F2.authorization","i-lucide-shield",{"title":41,"path":42,"stem":43,"icon":44},"Mentions","\u002Fessentials\u002Fmentions","2.essentials\u002F3.mentions","i-lucide-at-sign",{"title":46,"path":47,"stem":48,"icon":49},"Reactions","\u002Fessentials\u002Freactions","2.essentials\u002F4.reactions","i-lucide-smile",{"title":51,"path":52,"stem":53,"icon":54},"Attachments","\u002Fessentials\u002Fattachments","2.essentials\u002F5.attachments","i-lucide-paperclip",{"title":56,"path":57,"stem":58,"icon":59},"Notifications","\u002Fessentials\u002Fnotifications","2.essentials\u002F6.notifications","i-lucide-bell",{"title":61,"path":62,"stem":63,"icon":64},"Database Schema","\u002Fessentials\u002Fdatabase-schema","2.essentials\u002F7.database-schema","i-lucide-database",{"title":66,"path":67,"stem":68,"children":69,"page":6},"Community","\u002Fcommunity","4.community",[70,75],{"title":71,"path":72,"stem":73,"icon":74},"Contributing","\u002Fcommunity\u002Fcontributing","4.community\u002F1.contributing","i-lucide-heart-handshake",{"title":76,"path":77,"stem":78,"icon":79},"License","\u002Fcommunity\u002Flicense","4.community\u002F2.license","i-lucide-scale",{"id":81,"title":41,"body":82,"description":724,"extension":725,"links":726,"meta":727,"navigation":728,"path":42,"seo":729,"stem":43,"__hash__":731},"docs\u002F2.essentials\u002F3.mentions.md",{"type":83,"value":84,"toc":718},"minimark",[85,90,103,131,135,141,165,169,176,579,582,658,661,714],[86,87,89],"h2",{"id":88},"how-mentions-work","How Mentions Work",[91,92,93,94,98,99,102],"p",{},"Type ",[95,96,97],"code",{},"@"," in the comment editor to trigger user autocomplete. Select a user to insert a mention. When the comment is saved, the ",[95,100,101],{},"MentionParser"," extracts mentions and:",[104,105,106,114,121,128],"ol",{},[107,108,109,110,113],"li",{},"Syncs mention records in the ",[95,111,112],{},"comment_mentions"," table",[107,115,116,117,120],{},"Dispatches a ",[95,118,119],{},"UserMentioned"," event for each newly mentioned user",[107,122,123,124,127],{},"The ",[95,125,126],{},"SendUserMentionedNotification"," listener sends notifications",[107,129,130],{},"If auto-subscribe is enabled, mentioned users are subscribed to the thread",[86,132,134],{"id":133},"default-resolver","Default Resolver",[91,136,123,137,140],{},[95,138,139],{},"DefaultMentionResolver"," searches the commenter model by name:",[142,143,148],"pre",{"className":144,"code":145,"language":146,"meta":147,"style":147},"language-php shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Searches: User::where('name', 'like', \"{$query}%\")\n\u002F\u002F Limited to: config('comments.mentions.max_results') results\n","php","",[95,149,150,159],{"__ignoreMap":147},[151,152,155],"span",{"class":153,"line":154},"line",1,[151,156,158],{"class":157},"sHwdD","\u002F\u002F Searches: User::where('name', 'like', \"{$query}%\")\n",[151,160,162],{"class":153,"line":161},2,[151,163,164],{"class":157},"\u002F\u002F Limited to: config('comments.mentions.max_results') results\n",[86,166,168],{"id":167},"custom-mention-resolver","Custom Mention Resolver",[91,170,171,172,175],{},"Implement the ",[95,173,174],{},"MentionResolver"," interface to customize user search behavior:",[142,177,179],{"className":144,"code":178,"language":146,"meta":147,"style":147},"namespace App\\Comments;\n\nuse Illuminate\\Support\\Collection;\nuse Relaticle\\Comments\\Contracts\\MentionResolver;\n\nclass TeamMentionResolver implements MentionResolver\n{\n public function search(string $query): Collection\n {\n return User::query()\n ->where('team_id', auth()->user()->team_id)\n ->where('name', 'like', \"{$query}%\")\n ->limit(config('comments.mentions.max_results'))\n ->get();\n }\n\n public function resolveByNames(array $names): Collection\n {\n return User::query()\n ->where('team_id', auth()->user()->team_id)\n ->whereIn('name', $names)\n ->get();\n }\n}\n",[95,180,181,201,207,229,252,257,273,279,310,316,334,373,417,442,453,459,464,488,493,506,535,559,568,573],{"__ignoreMap":147},[151,182,183,187,191,195,198],{"class":153,"line":154},[151,184,186],{"class":185},"sbssI","namespace",[151,188,190],{"class":189},"sBMFI"," App",[151,192,194],{"class":193},"sMK4o","\\",[151,196,197],{"class":189},"Comments",[151,199,200],{"class":193},";\n",[151,202,203],{"class":153,"line":161},[151,204,206],{"emptyLinePlaceholder":205},true,"\n",[151,208,210,213,217,219,222,224,227],{"class":153,"line":209},3,[151,211,212],{"class":185},"use",[151,214,216],{"class":215},"sTEyZ"," Illuminate",[151,218,194],{"class":193},[151,220,221],{"class":215},"Support",[151,223,194],{"class":193},[151,225,226],{"class":215},"Collection",[151,228,200],{"class":193},[151,230,232,234,237,239,241,243,246,248,250],{"class":153,"line":231},4,[151,233,212],{"class":185},[151,235,236],{"class":215}," Relaticle",[151,238,194],{"class":193},[151,240,197],{"class":215},[151,242,194],{"class":193},[151,244,245],{"class":215},"Contracts",[151,247,194],{"class":193},[151,249,174],{"class":215},[151,251,200],{"class":193},[151,253,255],{"class":153,"line":254},5,[151,256,206],{"emptyLinePlaceholder":205},[151,258,260,264,267,270],{"class":153,"line":259},6,[151,261,263],{"class":262},"spNyl","class",[151,265,266],{"class":189}," TeamMentionResolver",[151,268,269],{"class":262}," implements",[151,271,272],{"class":189}," MentionResolver\n",[151,274,276],{"class":153,"line":275},7,[151,277,278],{"class":193},"{\n",[151,280,282,285,288,292,295,298,301,304,307],{"class":153,"line":281},8,[151,283,284],{"class":262}," public",[151,286,287],{"class":262}," function",[151,289,291],{"class":290},"s2Zo4"," search",[151,293,294],{"class":193},"(",[151,296,297],{"class":185},"string",[151,299,300],{"class":193}," $",[151,302,303],{"class":215},"query",[151,305,306],{"class":193},"):",[151,308,309],{"class":189}," Collection\n",[151,311,313],{"class":153,"line":312},9,[151,314,315],{"class":193}," {\n",[151,317,319,323,326,329,331],{"class":153,"line":318},10,[151,320,322],{"class":321},"s7zQu"," return",[151,324,325],{"class":189}," User",[151,327,328],{"class":193},"::",[151,330,303],{"class":290},[151,332,333],{"class":193},"()\n",[151,335,337,340,343,345,348,352,354,357,360,363,366,368,370],{"class":153,"line":336},11,[151,338,339],{"class":193}," ->",[151,341,342],{"class":290},"where",[151,344,294],{"class":193},[151,346,347],{"class":193},"'",[151,349,351],{"class":350},"sfazB","team_id",[151,353,347],{"class":193},[151,355,356],{"class":193},",",[151,358,359],{"class":290}," auth",[151,361,362],{"class":193},"()->",[151,364,365],{"class":290},"user",[151,367,362],{"class":193},[151,369,351],{"class":215},[151,371,372],{"class":193},")\n",[151,374,376,378,380,382,384,387,389,391,394,397,399,401,404,406,409,412,415],{"class":153,"line":375},12,[151,377,339],{"class":193},[151,379,342],{"class":290},[151,381,294],{"class":193},[151,383,347],{"class":193},[151,385,386],{"class":350},"name",[151,388,347],{"class":193},[151,390,356],{"class":193},[151,392,393],{"class":193}," '",[151,395,396],{"class":350},"like",[151,398,347],{"class":193},[151,400,356],{"class":193},[151,402,403],{"class":193}," \"{$",[151,405,303],{"class":215},[151,407,408],{"class":193},"}",[151,410,411],{"class":350},"%",[151,413,414],{"class":193},"\"",[151,416,372],{"class":193},[151,418,420,422,425,427,430,432,434,437,439],{"class":153,"line":419},13,[151,421,339],{"class":193},[151,423,424],{"class":290},"limit",[151,426,294],{"class":193},[151,428,429],{"class":290},"config",[151,431,294],{"class":193},[151,433,347],{"class":193},[151,435,436],{"class":350},"comments.mentions.max_results",[151,438,347],{"class":193},[151,440,441],{"class":193},"))\n",[151,443,445,447,450],{"class":153,"line":444},14,[151,446,339],{"class":193},[151,448,449],{"class":290},"get",[151,451,452],{"class":193},"();\n",[151,454,456],{"class":153,"line":455},15,[151,457,458],{"class":193}," }\n",[151,460,462],{"class":153,"line":461},16,[151,463,206],{"emptyLinePlaceholder":205},[151,465,467,469,471,474,476,479,481,484,486],{"class":153,"line":466},17,[151,468,284],{"class":262},[151,470,287],{"class":262},[151,472,473],{"class":290}," resolveByNames",[151,475,294],{"class":193},[151,477,478],{"class":185},"array",[151,480,300],{"class":193},[151,482,483],{"class":215},"names",[151,485,306],{"class":193},[151,487,309],{"class":189},[151,489,491],{"class":153,"line":490},18,[151,492,315],{"class":193},[151,494,496,498,500,502,504],{"class":153,"line":495},19,[151,497,322],{"class":321},[151,499,325],{"class":189},[151,501,328],{"class":193},[151,503,303],{"class":290},[151,505,333],{"class":193},[151,507,509,511,513,515,517,519,521,523,525,527,529,531,533],{"class":153,"line":508},20,[151,510,339],{"class":193},[151,512,342],{"class":290},[151,514,294],{"class":193},[151,516,347],{"class":193},[151,518,351],{"class":350},[151,520,347],{"class":193},[151,522,356],{"class":193},[151,524,359],{"class":290},[151,526,362],{"class":193},[151,528,365],{"class":290},[151,530,362],{"class":193},[151,532,351],{"class":215},[151,534,372],{"class":193},[151,536,538,540,543,545,547,549,551,553,555,557],{"class":153,"line":537},21,[151,539,339],{"class":193},[151,541,542],{"class":290},"whereIn",[151,544,294],{"class":193},[151,546,347],{"class":193},[151,548,386],{"class":350},[151,550,347],{"class":193},[151,552,356],{"class":193},[151,554,300],{"class":193},[151,556,483],{"class":215},[151,558,372],{"class":193},[151,560,562,564,566],{"class":153,"line":561},22,[151,563,339],{"class":193},[151,565,449],{"class":290},[151,567,452],{"class":193},[151,569,571],{"class":153,"line":570},23,[151,572,458],{"class":193},[151,574,576],{"class":153,"line":575},24,[151,577,578],{"class":193},"}\n",[91,580,581],{},"Register it in your config:",[142,583,585],{"className":144,"code":584,"language":146,"meta":147,"style":147},"\u002F\u002F config\u002Fcomments.php\n'mentions' => [\n 'resolver' => App\\Comments\\TeamMentionResolver::class,\n 'max_results' => 5,\n],\n",[95,586,587,592,607,637,653],{"__ignoreMap":147},[151,588,589],{"class":153,"line":154},[151,590,591],{"class":157},"\u002F\u002F config\u002Fcomments.php\n",[151,593,594,596,599,601,604],{"class":153,"line":161},[151,595,347],{"class":193},[151,597,598],{"class":350},"mentions",[151,600,347],{"class":193},[151,602,603],{"class":193}," =>",[151,605,606],{"class":193}," [\n",[151,608,609,612,615,617,619,621,623,625,627,630,632,634],{"class":153,"line":209},[151,610,611],{"class":193}," '",[151,613,614],{"class":350},"resolver",[151,616,347],{"class":193},[151,618,603],{"class":193},[151,620,190],{"class":215},[151,622,194],{"class":193},[151,624,197],{"class":215},[151,626,194],{"class":193},[151,628,629],{"class":189},"TeamMentionResolver",[151,631,328],{"class":193},[151,633,263],{"class":185},[151,635,636],{"class":193},",\n",[151,638,639,641,644,646,648,651],{"class":153,"line":231},[151,640,611],{"class":193},[151,642,643],{"class":350},"max_results",[151,645,347],{"class":193},[151,647,603],{"class":193},[151,649,650],{"class":185}," 5",[151,652,636],{"class":193},[151,654,655],{"class":153,"line":254},[151,656,657],{"class":193},"],\n",[86,659,31],{"id":660},"configuration",[662,663,664,680],"table",{},[665,666,667],"thead",{},[668,669,670,674,677],"tr",{},[671,672,673],"th",{},"Key",[671,675,676],{},"Default",[671,678,679],{},"Description",[681,682,683,699],"tbody",{},[668,684,685,691,696],{},[686,687,688],"td",{},[95,689,690],{},"mentions.resolver",[686,692,693],{},[95,694,695],{},"DefaultMentionResolver::class",[686,697,698],{},"User search implementation",[668,700,701,706,711],{},[686,702,703],{},[95,704,705],{},"mentions.max_results",[686,707,708],{},[95,709,710],{},"5",[686,712,713],{},"Maximum autocomplete results",[715,716,717],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}",{"title":147,"searchDepth":161,"depth":161,"links":719},[720,721,722,723],{"id":88,"depth":161,"text":89},{"id":133,"depth":161,"text":134},{"id":167,"depth":161,"text":168},{"id":660,"depth":161,"text":31},"User @mentions with autocomplete and notification support.","md",null,{},{"icon":44},{"description":730,"title":41},"Configure @mention autocomplete and create custom mention resolvers.","kQQwvRy9HYB1t8O3MnVh58m8bi_XmvTWpYWrdhjepK8",[733,735],{"title":36,"path":37,"stem":38,"description":734,"icon":39,"children":-1},"Control who can create, edit, delete, and reply to comments.",{"title":46,"path":47,"stem":48,"description":736,"icon":49,"children":-1},"Emoji reactions on comments.",1774609385105]