[{"data":1,"prerenderedAt":393},["ShallowReactive",2],{"navigation_docs":3,"-troubleshooting":111,"-troubleshooting-surround":388},[4,20,30,66,82,89,96],{"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},"Quick start","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F2.quick-start","i-lucide-rocket",{"title":21,"icon":22,"path":23,"stem":24,"children":25,"page":6},"Concepts","i-lucide-compass","\u002Fconcepts","2.concepts",[26],{"title":27,"path":28,"stem":29,"icon":22},"How it works","\u002Fconcepts\u002Fhow-it-works","2.concepts\u002F1.how-it-works",{"title":31,"icon":32,"path":33,"stem":34,"children":35,"page":6},"Essentials","i-lucide-book-open","\u002Fessentials","3.essentials",[36,41,46,51,56,61],{"title":37,"path":38,"stem":39,"icon":40},"Sources","\u002Fessentials\u002Fsources","3.essentials\u002F1.sources","i-lucide-layers",{"title":42,"path":43,"stem":44,"icon":45},"Filament UI","\u002Fessentials\u002Ffilament-ui","3.essentials\u002F2.filament-ui","i-lucide-layout-dashboard",{"title":47,"path":48,"stem":49,"icon":50},"Refining the timeline","\u002Fessentials\u002Frefining-the-timeline","3.essentials\u002F3.refining-the-timeline","i-lucide-filter",{"title":52,"path":53,"stem":54,"icon":55},"Customization","\u002Fessentials\u002Fcustomization","3.essentials\u002F4.customization","i-lucide-paintbrush",{"title":57,"path":58,"stem":59,"icon":60},"Caching","\u002Fessentials\u002Fcaching","3.essentials\u002F5.caching","i-lucide-database",{"title":62,"path":63,"stem":64,"icon":65},"Configuration","\u002Fessentials\u002Fconfiguration","3.essentials\u002F6.configuration","i-lucide-settings",{"title":67,"icon":68,"path":69,"stem":70,"children":71,"page":6},"Recipes","i-lucide-chef-hat","\u002Frecipes","4.recipes",[72,77],{"title":73,"path":74,"stem":75,"icon":76},"CRM person feed","\u002Frecipes\u002Fcrm-person-feed","4.recipes\u002F1.crm-person-feed","i-lucide-users",{"title":78,"path":79,"stem":80,"icon":81},"Audit log for admins","\u002Frecipes\u002Faudit-log-for-admins","4.recipes\u002F2.audit-log-for-admins","i-lucide-shield",{"title":83,"path":84,"stem":85,"children":86,"icon":88},"Testing","\u002Ftesting","5.testing\u002F1.index",[87],{"title":83,"path":84,"stem":85,"icon":88},"i-lucide-flask-conical",{"title":90,"path":91,"stem":92,"children":93,"icon":95},"Troubleshooting","\u002Ftroubleshooting","6.troubleshooting\u002F1.index",[94],{"title":90,"path":91,"stem":92,"icon":95},"i-lucide-life-buoy",{"title":97,"path":98,"stem":99,"children":100,"page":6},"Community","\u002Fcommunity","7.community",[101,106],{"title":102,"path":103,"stem":104,"icon":105},"Contributing","\u002Fcommunity\u002Fcontributing","7.community\u002F1.contributing","i-lucide-heart-handshake",{"title":107,"path":108,"stem":109,"icon":110},"License","\u002Fcommunity\u002Flicense","7.community\u002F2.license","i-lucide-scale",{"id":112,"title":90,"body":113,"description":379,"extension":380,"links":381,"meta":382,"navigation":383,"path":91,"seo":384,"stem":92,"__hash__":387},"docs\u002F6.troubleshooting\u002F1.index.md",{"type":114,"value":115,"toc":369},"minimark",[116,133,138,149,153,200,204,225,229,308,315,363],[117,118,119,120,124,125,132],"p",{},"The entries below cover the most common issues people hit with ",[121,122,123],"code",{},"relaticle\u002Factivity-log",". For anything not listed, open a ",[126,127,131],"a",{"href":128,"rel":129},"https:\u002F\u002Fgithub.com\u002Frelaticle\u002Factivity-log\u002Fdiscussions",[130],"nofollow","GitHub discussion"," — maintainers and community triage there.",[134,135,137],"h2",{"id":136},"timeline-looks-unstyled-in-production","Timeline looks unstyled in production",[117,139,140,141,144,145,148],{},"The plugin's Blade views use Tailwind utilities. If you see plain HTML, your panel theme isn't compiling the plugin's views. Add the ",[121,142,143],{},"@source"," directive — see ",[126,146,147],{"href":147},"\u002Fgetting-started\u002Finstallation#tailwind-theme-integration",".",[134,150,152],{"id":151},"custom-renderer-isnt-picked-up","Custom renderer isn't picked up",[117,154,155,156,159,160,159,163,159,166,169,170,173,174,177,178,181,182,185,186,189,190,192,193,196,197,148],{},"Renderers resolve in this order: explicit ",[121,157,158],{},"$entry->renderer"," → ",[121,161,162],{},"bindings[$entry->event]",[121,164,165],{},"bindings[$entry->type]",[121,167,168],{},"DefaultRenderer",". Most common cause: the binding key doesn't match. Check ",[121,171,172],{},"$entry->event"," against your registered key (it's the spatie ",[121,175,176],{},"event"," column for ",[121,179,180],{},"activity_log"," entries, the second arg to ",[121,183,184],{},"event()"," for ",[121,187,188],{},"RelatedModelSource",", or the ",[121,191,176],{}," field you set on a ",[121,194,195],{},"TimelineEntry"," for custom sources). Full resolution rules at ",[126,198,199],{"href":199},"\u002Fessentials\u002Fcustomization#renderer-resolution-order",[134,201,203],{"id":202},"duplicate-entries-appearing","Duplicate entries appearing",[117,205,206,207,210,211,214,215,217,218,221,222,148],{},"Dedup uses ",[121,208,209],{},"dedupKey"," + ",[121,212,213],{},"sourcePriority",". If two sources emit the same logical event with different keys, they won't collapse. Either align ",[121,216,209],{}," on both sources (use ",[121,219,220],{},"->dedupKeyUsing()"," on the builder) or raise the preferred source's priority so the loser is dropped. Mechanics at ",[126,223,224],{"href":224},"\u002Fconcepts\u002Fhow-it-works#dedup-behavior",[134,226,228],{"id":227},"type-filter-doesnt-match-anything","Type filter doesn't match anything",[230,231,234],"callout",{"color":232,"icon":233},"warning","i-lucide-alert-triangle",[235,236,237,249,274,298],"ul",{},[238,239,240,244,245,248],"li",{},[241,242,243],"strong",{},"Symptom:"," ",[121,246,247],{},"$record->timeline()->fromActivityLogOf(['emails'])->ofType(['related_activity_log'])->get()"," returns empty.",[238,250,251,244,254,257,258,261,262,265,266,269,270,273],{},[241,252,253],{},"Cause:",[121,255,256],{},"RelatedActivityLogSource"," emits entries with ",[121,259,260],{},"type='activity_log'"," (NOT ",[121,263,264],{},"'related_activity_log'","). The ",[121,267,268],{},"related_activity_log"," key only exists in ",[121,271,272],{},"source_priorities"," config — for priority configuration only.",[238,275,276,279,280,283,284,287,288,185,291,294,295,297],{},[241,277,278],{},"Workaround:"," filter with ",[121,281,282],{},"->ofType(['activity_log'])"," to include both own- and related-log entries. To distinguish them at the entry level, inspect ",[121,285,286],{},"$entry->relatedModel"," (",[121,289,290],{},"null",[121,292,293],{},"ActivityLogSource",", an Eloquent model for ",[121,296,256],{},").",[238,299,300,244,303,148],{},[241,301,302],{},"Tracking:",[126,304,307],{"href":305,"rel":306},"https:\u002F\u002Fgithub.com\u002Frelaticle\u002Factivity-log\u002Fissues\u002F11",[130],"issue #11",[134,309,311,314],{"id":310},"fromactivitylog-throws-on-a-fresh-model",[121,312,313],{},"fromActivityLog()"," throws on a fresh model",[230,316,317],{"color":232,"icon":233},[235,318,319,331,342],{},[238,320,321,244,323,326,327,330],{},[241,322,243],{},[121,324,325],{},"DomainException: ActivityLogSource cannot resolve entries for an unsaved subject"," when calling ",[121,328,329],{},"timeline()"," on a model that hasn't been persisted.",[238,332,333,244,335,338,339,148],{},[241,334,253],{},[121,336,337],{},"ActivityLogSource::resolve()"," requires ",[121,340,341],{},"$subject->getKey() !== null",[238,343,344,346,347,350,351,354,355,358,359,362],{},[241,345,278],{}," don't call ",[121,348,349],{},"$model->timeline()"," from a ",[121,352,353],{},"creating"," Eloquent event or before ",[121,356,357],{},"$model->save()",". Move the call to a ",[121,360,361],{},"created"," event or to a controller after persistence.",[117,364,365,366,148],{},"Issue not listed here? Open a ",[126,367,131],{"href":128,"rel":368},[130],{"title":370,"searchDepth":371,"depth":371,"links":372},"",2,[373,374,375,376,377],{"id":136,"depth":371,"text":137},{"id":151,"depth":371,"text":152},{"id":202,"depth":371,"text":203},{"id":227,"depth":371,"text":228},{"id":310,"depth":371,"text":378},"fromActivityLog() throws on a fresh model","Common pitfalls, known limitations, and how to work around them.","md",null,{},{"icon":95},{"description":385,"ogImage":386,"title":90},"FAQ and known limitations for relaticle\u002Factivity-log — Tailwind, renderers, dedup, type filters, unsaved subjects.","\u002Fpreview.png","qAvypjeYt8VurAreBtyho9z6AXl0FSdMLqMAlWZS2B0",[389,391],{"title":83,"path":84,"stem":85,"description":390,"icon":88,"children":-1},"Test patterns for the timeline component, relation manager, action, and builder.",{"title":102,"path":103,"stem":104,"description":392,"icon":105,"children":-1},"How to contribute to Activity Log",1780504149910]