feat: add Meilisearch backend integration with Docker Compose setup and Excalidraw support

This commit is contained in:
2025-10-14 10:41:15 -04:00
parent b359e8ab8e
commit 32a9998b40
71 changed files with 11544 additions and 435 deletions
@@ -47,7 +47,6 @@
[cellTemplate]="dayCellTemplate"
[weekStartsOn]="1"
[events]="[]"
(pointerup)="onDatePointerUp()"
></mwl-calendar-month-view>
</div>
@@ -69,7 +68,8 @@
class="day-cell"
[ngClass]="getCellClasses(day)"
(pointerdown)="onDatePointerDown(day, $event)"
(pointerenter)="onDatePointerEnter(day)"
(pointerenter)="onDatePointerEnter(day, $event)"
(pointerup)="onDatePointerUp(day, $event)"
>
<span class="day-number">{{ day.date | date: 'd' }}</span>
<div class="indicators">
@@ -125,6 +125,8 @@ export class MarkdownCalendarComponent {
return;
}
event.preventDefault();
event.stopPropagation();
const date = this.normalizeDay(day.date);
this.dragAnchor = date;
this.selectedRange.set({ start: date, end: date });
@@ -138,9 +140,12 @@ export class MarkdownCalendarComponent {
this.emitSelectionSummary();
this.requestSearchPanel.emit();
this.refresh$.next();
// Capture pointer to enable drag across cells
(event.target as HTMLElement).setPointerCapture(event.pointerId);
}
onDatePointerEnter(day: CalendarMonthViewDay<Date>): void {
onDatePointerEnter(day: CalendarMonthViewDay<Date>, event: PointerEvent): void {
if (!this.dragAnchor) {
return;
}
@@ -152,12 +157,13 @@ export class MarkdownCalendarComponent {
this.refresh$.next();
}
@HostListener('document:pointerup')
finishRangeSelection(): void {
@HostListener('document:pointerup', ['$event'])
finishRangeSelection(event: PointerEvent): void {
this.finalizeSelection();
}
onDatePointerUp(): void {
onDatePointerUp(day: CalendarMonthViewDay<Date>, event: PointerEvent): void {
event.stopPropagation();
this.finalizeSelection();
}