[{"data":1,"prerenderedAt":978},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-quick-start":85,"-getting-started-quick-start-surround":973},[4,20,45,70],{"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-play",{"title":21,"path":22,"stem":23,"children":24,"page":6},"Essentials","\u002Fessentials","2.essentials",[25,30,35,40],{"title":26,"path":27,"stem":28,"icon":29},"Core Concepts","\u002Fessentials\u002Fcore-concepts","2.essentials\u002F1.core-concepts","i-lucide-book-open",{"title":31,"path":32,"stem":33,"icon":34},"Data Sources","\u002Fessentials\u002Fdata-sources","2.essentials\u002F2.data-sources","i-lucide-database",{"title":36,"path":37,"stem":38,"icon":39},"Refining the Timeline","\u002Fessentials\u002Frefining-the-timeline","2.essentials\u002F3.refining-the-timeline","i-lucide-filter",{"title":41,"path":42,"stem":43,"icon":44},"Components","\u002Fessentials\u002Fcomponents","2.essentials\u002F4.components","i-lucide-layout-panel-left",{"title":46,"path":47,"stem":48,"children":49,"page":6},"Customization","\u002Fcustomization","3.customization",[50,55,60,65],{"title":51,"path":52,"stem":53,"icon":54},"Custom Renderers","\u002Fcustomization\u002Fcustom-renderers","3.customization\u002F1.custom-renderers","i-lucide-paintbrush",{"title":56,"path":57,"stem":58,"icon":59},"Caching","\u002Fcustomization\u002Fcaching","3.customization\u002F2.caching","i-lucide-database-zap",{"title":61,"path":62,"stem":63,"icon":64},"Configuration","\u002Fcustomization\u002Fconfiguration","3.customization\u002F3.configuration","i-lucide-settings",{"title":66,"path":67,"stem":68,"icon":69},"Tailwind","\u002Fcustomization\u002Ftailwind","3.customization\u002F4.tailwind","i-simple-icons-tailwindcss",{"title":71,"path":72,"stem":73,"children":74,"page":6},"Advanced","\u002Fadvanced","4.advanced",[75,80],{"title":76,"path":77,"stem":78,"icon":79},"Performance Notes","\u002Fadvanced\u002Fperformance","4.advanced\u002F1.performance","i-lucide-gauge",{"title":81,"path":82,"stem":83,"icon":84},"Testing","\u002Fadvanced\u002Ftesting","4.advanced\u002F2.testing","i-lucide-flask-conical",{"id":86,"title":16,"body":87,"description":966,"extension":967,"links":968,"meta":969,"navigation":970,"path":17,"seo":971,"stem":18,"__hash__":972},"docs\u002F1.getting-started\u002F2.quick-start.md",{"type":88,"value":89,"toc":962},"minimark",[90,95,112,758,762,948,958],[91,92,94],"h2",{"id":93},"_1-mark-the-model-as-timeline-capable","1. Mark the model as timeline-capable",[96,97,98,99,103,104,107,108,111],"p",{},"Implement the ",[100,101,102],"code",{},"HasTimeline"," contract, use the ",[100,105,106],{},"InteractsWithTimeline"," trait for the helper methods, and define a ",[100,109,110],{},"timeline(): TimelineBuilder"," method:",[113,114,119],"pre",{"className":115,"code":116,"language":117,"meta":118,"style":118},"language-php shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","use Illuminate\\Database\\Eloquent\\Model;\nuse Relaticle\\ActivityLog\\Concerns\\InteractsWithTimeline;\nuse Relaticle\\ActivityLog\\Contracts\\HasTimeline;\nuse Relaticle\\ActivityLog\\Timeline\\TimelineBuilder;\nuse Relaticle\\ActivityLog\\Timeline\\Sources\\RelatedModelSource;\nuse Spatie\\Activitylog\\Traits\\LogsActivity;\n\nclass Person extends Model implements HasTimeline\n{\n    use InteractsWithTimeline;\n    use LogsActivity;\n\n    public function timeline(): TimelineBuilder\n    {\n        return TimelineBuilder::make($this)\n            ->fromActivityLog()\n            ->fromActivityLogOf(['emails', 'notes', 'tasks'])\n            ->fromRelation('emails', function (RelatedModelSource $source): void {\n                $source\n                    ->event(\n                        column: 'sent_at',\n                        event: 'email_sent',\n                        icon: 'heroicon-o-paper-airplane',\n                        color: 'primary',\n                    )\n                    ->event(\n                        column: 'received_at',\n                        event: 'email_received',\n                        icon: 'heroicon-o-inbox-arrow-down',\n                        color: 'info',\n                    )\n                    ->title(fn ($email): string => $email->subject ?? 'Email')\n                    ->causer(fn ($email) => $email->from->first());\n            });\n    }\n}\n","php","",[100,120,121,154,178,200,223,250,275,282,305,311,322,332,337,356,362,381,393,436,477,486,498,517,534,551,568,574,583,599,615,631,647,652,702,740,746,752],{"__ignoreMap":118},[122,123,126,130,134,138,141,143,146,148,151],"span",{"class":124,"line":125},"line",1,[122,127,129],{"class":128},"sbssI","use",[122,131,133],{"class":132},"sTEyZ"," Illuminate",[122,135,137],{"class":136},"sMK4o","\\",[122,139,140],{"class":132},"Database",[122,142,137],{"class":136},[122,144,145],{"class":132},"Eloquent",[122,147,137],{"class":136},[122,149,150],{"class":132},"Model",[122,152,153],{"class":136},";\n",[122,155,157,159,162,164,167,169,172,174,176],{"class":124,"line":156},2,[122,158,129],{"class":128},[122,160,161],{"class":132}," Relaticle",[122,163,137],{"class":136},[122,165,166],{"class":132},"ActivityLog",[122,168,137],{"class":136},[122,170,171],{"class":132},"Concerns",[122,173,137],{"class":136},[122,175,106],{"class":132},[122,177,153],{"class":136},[122,179,181,183,185,187,189,191,194,196,198],{"class":124,"line":180},3,[122,182,129],{"class":128},[122,184,161],{"class":132},[122,186,137],{"class":136},[122,188,166],{"class":132},[122,190,137],{"class":136},[122,192,193],{"class":132},"Contracts",[122,195,137],{"class":136},[122,197,102],{"class":132},[122,199,153],{"class":136},[122,201,203,205,207,209,211,213,216,218,221],{"class":124,"line":202},4,[122,204,129],{"class":128},[122,206,161],{"class":132},[122,208,137],{"class":136},[122,210,166],{"class":132},[122,212,137],{"class":136},[122,214,215],{"class":132},"Timeline",[122,217,137],{"class":136},[122,219,220],{"class":132},"TimelineBuilder",[122,222,153],{"class":136},[122,224,226,228,230,232,234,236,238,240,243,245,248],{"class":124,"line":225},5,[122,227,129],{"class":128},[122,229,161],{"class":132},[122,231,137],{"class":136},[122,233,166],{"class":132},[122,235,137],{"class":136},[122,237,215],{"class":132},[122,239,137],{"class":136},[122,241,242],{"class":132},"Sources",[122,244,137],{"class":136},[122,246,247],{"class":132},"RelatedModelSource",[122,249,153],{"class":136},[122,251,253,255,258,260,263,265,268,270,273],{"class":124,"line":252},6,[122,254,129],{"class":128},[122,256,257],{"class":132}," Spatie",[122,259,137],{"class":136},[122,261,262],{"class":132},"Activitylog",[122,264,137],{"class":136},[122,266,267],{"class":132},"Traits",[122,269,137],{"class":136},[122,271,272],{"class":132},"LogsActivity",[122,274,153],{"class":136},[122,276,278],{"class":124,"line":277},7,[122,279,281],{"emptyLinePlaceholder":280},true,"\n",[122,283,285,289,293,296,299,302],{"class":124,"line":284},8,[122,286,288],{"class":287},"spNyl","class",[122,290,292],{"class":291},"sBMFI"," Person",[122,294,295],{"class":287}," extends",[122,297,298],{"class":291}," Model",[122,300,301],{"class":287}," implements",[122,303,304],{"class":291}," HasTimeline\n",[122,306,308],{"class":124,"line":307},9,[122,309,310],{"class":136},"{\n",[122,312,314,317,320],{"class":124,"line":313},10,[122,315,316],{"class":128},"    use",[122,318,319],{"class":132}," InteractsWithTimeline",[122,321,153],{"class":136},[122,323,325,327,330],{"class":124,"line":324},11,[122,326,316],{"class":128},[122,328,329],{"class":132}," LogsActivity",[122,331,153],{"class":136},[122,333,335],{"class":124,"line":334},12,[122,336,281],{"emptyLinePlaceholder":280},[122,338,340,343,346,350,353],{"class":124,"line":339},13,[122,341,342],{"class":287},"    public",[122,344,345],{"class":287}," function",[122,347,349],{"class":348},"s2Zo4"," timeline",[122,351,352],{"class":136},"():",[122,354,355],{"class":291}," TimelineBuilder\n",[122,357,359],{"class":124,"line":358},14,[122,360,361],{"class":136},"    {\n",[122,363,365,369,372,375,378],{"class":124,"line":364},15,[122,366,368],{"class":367},"s7zQu","        return",[122,370,371],{"class":291}," TimelineBuilder",[122,373,374],{"class":136},"::",[122,376,377],{"class":348},"make",[122,379,380],{"class":136},"($this)\n",[122,382,384,387,390],{"class":124,"line":383},16,[122,385,386],{"class":136},"            ->",[122,388,389],{"class":348},"fromActivityLog",[122,391,392],{"class":136},"()\n",[122,394,396,398,401,404,407,411,413,416,419,422,424,426,428,431,433],{"class":124,"line":395},17,[122,397,386],{"class":136},[122,399,400],{"class":348},"fromActivityLogOf",[122,402,403],{"class":136},"([",[122,405,406],{"class":136},"'",[122,408,410],{"class":409},"sfazB","emails",[122,412,406],{"class":136},[122,414,415],{"class":136},",",[122,417,418],{"class":136}," '",[122,420,421],{"class":409},"notes",[122,423,406],{"class":136},[122,425,415],{"class":136},[122,427,418],{"class":136},[122,429,430],{"class":409},"tasks",[122,432,406],{"class":136},[122,434,435],{"class":136},"])\n",[122,437,439,441,444,447,449,451,453,455,457,460,462,465,468,471,474],{"class":124,"line":438},18,[122,440,386],{"class":136},[122,442,443],{"class":348},"fromRelation",[122,445,446],{"class":136},"(",[122,448,406],{"class":136},[122,450,410],{"class":409},[122,452,406],{"class":136},[122,454,415],{"class":136},[122,456,345],{"class":287},[122,458,459],{"class":136}," (",[122,461,247],{"class":291},[122,463,464],{"class":136}," $",[122,466,467],{"class":132},"source",[122,469,470],{"class":136},"):",[122,472,473],{"class":128}," void",[122,475,476],{"class":136}," {\n",[122,478,480,483],{"class":124,"line":479},19,[122,481,482],{"class":136},"                $",[122,484,485],{"class":132},"source\n",[122,487,489,492,495],{"class":124,"line":488},20,[122,490,491],{"class":136},"                    ->",[122,493,494],{"class":348},"event",[122,496,497],{"class":136},"(\n",[122,499,501,504,507,509,512,514],{"class":124,"line":500},21,[122,502,503],{"class":291},"                        column",[122,505,506],{"class":136},":",[122,508,418],{"class":136},[122,510,511],{"class":409},"sent_at",[122,513,406],{"class":136},[122,515,516],{"class":136},",\n",[122,518,520,523,525,527,530,532],{"class":124,"line":519},22,[122,521,522],{"class":291},"                        event",[122,524,506],{"class":136},[122,526,418],{"class":136},[122,528,529],{"class":409},"email_sent",[122,531,406],{"class":136},[122,533,516],{"class":136},[122,535,537,540,542,544,547,549],{"class":124,"line":536},23,[122,538,539],{"class":291},"                        icon",[122,541,506],{"class":136},[122,543,418],{"class":136},[122,545,546],{"class":409},"heroicon-o-paper-airplane",[122,548,406],{"class":136},[122,550,516],{"class":136},[122,552,554,557,559,561,564,566],{"class":124,"line":553},24,[122,555,556],{"class":291},"                        color",[122,558,506],{"class":136},[122,560,418],{"class":136},[122,562,563],{"class":409},"primary",[122,565,406],{"class":136},[122,567,516],{"class":136},[122,569,571],{"class":124,"line":570},25,[122,572,573],{"class":136},"                    )\n",[122,575,577,579,581],{"class":124,"line":576},26,[122,578,491],{"class":136},[122,580,494],{"class":348},[122,582,497],{"class":136},[122,584,586,588,590,592,595,597],{"class":124,"line":585},27,[122,587,503],{"class":291},[122,589,506],{"class":136},[122,591,418],{"class":136},[122,593,594],{"class":409},"received_at",[122,596,406],{"class":136},[122,598,516],{"class":136},[122,600,602,604,606,608,611,613],{"class":124,"line":601},28,[122,603,522],{"class":291},[122,605,506],{"class":136},[122,607,418],{"class":136},[122,609,610],{"class":409},"email_received",[122,612,406],{"class":136},[122,614,516],{"class":136},[122,616,618,620,622,624,627,629],{"class":124,"line":617},29,[122,619,539],{"class":291},[122,621,506],{"class":136},[122,623,418],{"class":136},[122,625,626],{"class":409},"heroicon-o-inbox-arrow-down",[122,628,406],{"class":136},[122,630,516],{"class":136},[122,632,634,636,638,640,643,645],{"class":124,"line":633},30,[122,635,556],{"class":291},[122,637,506],{"class":136},[122,639,418],{"class":136},[122,641,642],{"class":409},"info",[122,644,406],{"class":136},[122,646,516],{"class":136},[122,648,650],{"class":124,"line":649},31,[122,651,573],{"class":136},[122,653,655,657,660,662,665,668,671,673,676,679,681,683,686,689,692,694,697,699],{"class":124,"line":654},32,[122,656,491],{"class":136},[122,658,659],{"class":348},"title",[122,661,446],{"class":136},[122,663,664],{"class":287},"fn",[122,666,667],{"class":136}," ($",[122,669,670],{"class":132},"email",[122,672,470],{"class":136},[122,674,675],{"class":128}," string",[122,677,678],{"class":136}," =>",[122,680,464],{"class":136},[122,682,670],{"class":132},[122,684,685],{"class":136},"->",[122,687,688],{"class":132},"subject ",[122,690,691],{"class":136},"??",[122,693,418],{"class":136},[122,695,696],{"class":409},"Email",[122,698,406],{"class":136},[122,700,701],{"class":136},")\n",[122,703,705,707,710,712,714,716,718,721,723,725,727,729,732,734,737],{"class":124,"line":704},33,[122,706,491],{"class":136},[122,708,709],{"class":348},"causer",[122,711,446],{"class":136},[122,713,664],{"class":287},[122,715,667],{"class":136},[122,717,670],{"class":132},[122,719,720],{"class":136},")",[122,722,678],{"class":136},[122,724,464],{"class":136},[122,726,670],{"class":132},[122,728,685],{"class":136},[122,730,731],{"class":132},"from",[122,733,685],{"class":136},[122,735,736],{"class":348},"first",[122,738,739],{"class":136},"());\n",[122,741,743],{"class":124,"line":742},34,[122,744,745],{"class":136},"            });\n",[122,747,749],{"class":124,"line":748},35,[122,750,751],{"class":136},"    }\n",[122,753,755],{"class":124,"line":754},36,[122,756,757],{"class":136},"}\n",[91,759,761],{"id":760},"_2-render-the-timeline","2. Render the timeline",[113,763,765],{"className":115,"code":764,"language":117,"meta":118,"style":118},"use Filament\\Schemas\\Schema;\nuse Relaticle\\ActivityLog\\Filament\\Infolists\\Components\\ActivityLog;\n\npublic static function infolist(Schema $schema): Schema\n{\n    return $schema->components([\n        ActivityLog::make('activity')\n            ->heading('Activity')\n            ->groupByDate()\n            ->perPage(20)\n            ->columnSpanFull(),\n    ]);\n}\n",[100,766,767,786,816,820,847,851,868,888,906,915,929,939,944],{"__ignoreMap":118},[122,768,769,771,774,776,779,781,784],{"class":124,"line":125},[122,770,129],{"class":128},[122,772,773],{"class":132}," Filament",[122,775,137],{"class":136},[122,777,778],{"class":132},"Schemas",[122,780,137],{"class":136},[122,782,783],{"class":132},"Schema",[122,785,153],{"class":136},[122,787,788,790,792,794,796,798,801,803,806,808,810,812,814],{"class":124,"line":156},[122,789,129],{"class":128},[122,791,161],{"class":132},[122,793,137],{"class":136},[122,795,166],{"class":132},[122,797,137],{"class":136},[122,799,800],{"class":132},"Filament",[122,802,137],{"class":136},[122,804,805],{"class":132},"Infolists",[122,807,137],{"class":136},[122,809,41],{"class":132},[122,811,137],{"class":136},[122,813,166],{"class":132},[122,815,153],{"class":136},[122,817,818],{"class":124,"line":180},[122,819,281],{"emptyLinePlaceholder":280},[122,821,822,825,828,830,833,835,837,839,842,844],{"class":124,"line":202},[122,823,824],{"class":287},"public",[122,826,827],{"class":287}," static",[122,829,345],{"class":287},[122,831,832],{"class":348}," infolist",[122,834,446],{"class":136},[122,836,783],{"class":291},[122,838,464],{"class":136},[122,840,841],{"class":132},"schema",[122,843,470],{"class":136},[122,845,846],{"class":291}," Schema\n",[122,848,849],{"class":124,"line":225},[122,850,310],{"class":136},[122,852,853,856,858,860,862,865],{"class":124,"line":252},[122,854,855],{"class":367},"    return",[122,857,464],{"class":136},[122,859,841],{"class":132},[122,861,685],{"class":136},[122,863,864],{"class":348},"components",[122,866,867],{"class":136},"([\n",[122,869,870,873,875,877,879,881,884,886],{"class":124,"line":277},[122,871,872],{"class":291},"        ActivityLog",[122,874,374],{"class":136},[122,876,377],{"class":348},[122,878,446],{"class":136},[122,880,406],{"class":136},[122,882,883],{"class":409},"activity",[122,885,406],{"class":136},[122,887,701],{"class":136},[122,889,890,892,895,897,899,902,904],{"class":124,"line":284},[122,891,386],{"class":136},[122,893,894],{"class":348},"heading",[122,896,446],{"class":136},[122,898,406],{"class":136},[122,900,901],{"class":409},"Activity",[122,903,406],{"class":136},[122,905,701],{"class":136},[122,907,908,910,913],{"class":124,"line":307},[122,909,386],{"class":136},[122,911,912],{"class":348},"groupByDate",[122,914,392],{"class":136},[122,916,917,919,922,924,927],{"class":124,"line":313},[122,918,386],{"class":136},[122,920,921],{"class":348},"perPage",[122,923,446],{"class":136},[122,925,926],{"class":128},"20",[122,928,701],{"class":136},[122,930,931,933,936],{"class":124,"line":324},[122,932,386],{"class":136},[122,934,935],{"class":348},"columnSpanFull",[122,937,938],{"class":136},"(),\n",[122,940,941],{"class":124,"line":334},[122,942,943],{"class":136},"    ]);\n",[122,945,946],{"class":124,"line":339},[122,947,757],{"class":136},[96,949,950,951,954,955,957],{},"That's the minimum wiring. The ",[952,953,21],"a",{"href":27}," and ",[952,956,46],{"href":52}," sections cover the rest.",[959,960,961],"style",{},"html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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}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);}",{"title":118,"searchDepth":156,"depth":156,"links":963},[964,965],{"id":93,"depth":156,"text":94},{"id":760,"depth":156,"text":761},"Wire HasTimeline and render the timeline.","md",null,{},{"icon":19},{"title":16,"description":966},"vlQ61zBh15LZuOJ4g73Vny7gnuXj__OcossArj1n16g",[974,976],{"title":11,"path":12,"stem":13,"description":975,"icon":14,"children":-1},"Install and migrate the package.",{"title":26,"path":27,"stem":28,"description":977,"icon":29,"children":-1},"Builder, sources, entries, and renderers.",1776704455777]