Files
relaticle-comments/essentials/mentions/_payload.json
github-actions[bot] b70b268201 Deploy 1.x docs
2026-03-27 12:09:26 +00:00

1 line
16 KiB
JSON

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