Fix all tests (vibe-kanban bba3e2c9)

Fixe alle tests. Frage mich, wenn du nicht weißt, was zu tun ist.
This commit is contained in:
vk
2026-02-11 23:15:49 +01:00
parent 9faae15212
commit 0639c1a656
17 changed files with 220 additions and 185 deletions

View File

@@ -1,6 +1,7 @@
<?php
use App\Models\Election;
use App\Support\NostrAuth;
use Livewire\Attributes\Locked;
use Livewire\Component;
use swentel\nostr\Filter\Filter;
@@ -139,17 +140,22 @@ new class extends Component {
public function loadNostrEvents($kinds): array
{
$relayUrl = config('services.relay');
if (! $relayUrl) {
return [];
}
$subscription = new Subscription;
$subscriptionId = $subscription->setId();
$filter = new Filter;
$filter->setKinds($kinds);
$requestMessage = new RequestMessage($subscriptionId, [$filter]);
$relaySet = new RelaySet;
$relaySet->setRelays([new Relay(config('services.relay'))]);
$relaySet->setRelays([new Relay($relayUrl)]);
$request = new Request($relaySet, $requestMessage);
$response = $request->send();
return collect($response[config('services.relay')])
return collect($response[$relayUrl] ?? [])
->map(function ($event) {
if (! isset($event->event)) {
return false;

View File

@@ -56,7 +56,7 @@ new class extends Component {
];
#[Computed]
public function loadedEvents(): array
public function loadedEvents(): \Illuminate\Support\Collection
{
return collect($this->events)
->map(function ($event) {
@@ -83,12 +83,11 @@ new class extends Component {
})
->sortByDesc('created_at')
->unique(fn ($event) => $event['pubkey'].$event['type'])
->values()
->toArray();
->values();
}
#[Computed]
public function loadedBoardEvents(): array
public function loadedBoardEvents(): \Illuminate\Support\Collection
{
return collect($this->boardEvents)
->map(function ($event) {
@@ -114,16 +113,15 @@ new class extends Component {
];
})
->sortByDesc('created_at')
->values()
->toArray();
->values();
}
#[Computed]
public function electionConfig(): array
public function electionConfig(): \Illuminate\Support\Collection
{
$loadedEvents = $this->loadedEvents();
return collect(json_decode($this->election->candidates, true, 512, JSON_THROW_ON_ERROR))
return collect($this->election->candidates)
->map(function ($c) use ($loadedEvents) {
$candidates = Profile::query()
->whereIn('pubkey', $c['c'])
@@ -148,16 +146,15 @@ new class extends Component {
'c' => $c['c'],
'candidates' => $candidates,
];
})
->toArray();
});
}
#[Computed]
public function electionConfigBoard(): array
public function electionConfigBoard(): \Illuminate\Support\Collection
{
$loadedBoardEvents = $this->loadedBoardEvents();
return collect(json_decode($this->election->candidates, true, 512, JSON_THROW_ON_ERROR))
return collect($this->election->candidates)
->map(function ($c) use ($loadedBoardEvents) {
$candidates = Profile::query()
->whereIn('pubkey', $c['c'])
@@ -183,8 +180,7 @@ new class extends Component {
'c' => $c['c'],
'candidates' => $candidates,
];
})
->toArray();
});
}
public function mount(Election $election): void
@@ -259,17 +255,22 @@ new class extends Component {
public function loadNostrEvents($kinds): array
{
$relayUrl = config('services.relay');
if (! $relayUrl) {
return [];
}
$subscription = new Subscription;
$subscriptionId = $subscription->setId();
$filter = new Filter;
$filter->setKinds($kinds);
$requestMessage = new RequestMessage($subscriptionId, [$filter]);
$relaySet = new RelaySet;
$relaySet->setRelays([new Relay(config('services.relay'))]);
$relaySet->setRelays([new Relay($relayUrl)]);
$request = new Request($relaySet, $requestMessage);
$response = $request->send();
return collect($response[config('services.relay')])
return collect($response[$relayUrl] ?? [])
->map(function ($event) {
if (! isset($event->event)) {
return false;
@@ -342,8 +343,12 @@ new class extends Component {
$note->setPublicKey($event['pubkey']);
$note->setTags($event['tags']);
$note->setCreatedAt($event['created_at']);
$relayUrl = config('services.relay');
if (! $relayUrl) {
return;
}
$eventMessage = new EventMessage($note);
$relay = new Relay(config('services.relay'));
$relay = new Relay($relayUrl);
$relay->setMessage($eventMessage);
$relay->send();
\App\Support\Broadcast::on('votes')->as('newVote')->sendNow();

View File

@@ -219,7 +219,7 @@ new class extends Component
</flux:button>
</div>
<flux:table>
<flux:table id="einundzwanzig-pleb-table">
<flux:table.columns>
<flux:table.column>Avatar</flux:table.column>
<flux:table.column

View File

@@ -103,10 +103,9 @@ class extends Component {
$currentPleb = \App\Models\EinundzwanzigPleb::query()->where('pubkey', NostrAuth::pubkey())->first();
$news = Notification::query()->create([
'name' => $this->form['name'],
'description' => $this->form['description'] ?? null,
]);
$news = new Notification;
$news->name = $this->form['name'];
$news->description = $this->form['description'] ?? null;
$news->category = $this->form['category'];
$news->einundzwanzig_pleb_id = $currentPleb->id;
$news->save();
@@ -260,7 +259,7 @@ class extends Component {
<path
d="M15.686 5.708 10.291.313c-.4-.4-.999-.4-1.399 0s-.4 1 0 1.399l.6.6-6.794 3.696-1-1C1.299 4.61.7 4.61.3 5.009c-.4.4-.4 1 0 1.4l1.498 1.498 2.398 2.398L.6 14.001 2 15.4l3.696-3.697L9.692 15.7c.5.5 1.199.2 1.398 0 .4-.4.4-1 0-1.4l-.999-.998 3.697-6.695.6.6c.599.6 1.199.2 1.398 0 .3-.4.3-1.1-.1-1.499Zm-7.193 6.095L4.196 7.507l6.695-3.697 1.298 1.299-3.696 6.694Z"></path>
</svg>
{{ $post->einundzwanzigPleb->profile->name }}
{{ $post->einundzwanzigPleb?->profile?->name ?? str($post->einundzwanzigPleb?->npub)->limit(32) }}
</div>
</div>
</div>
@@ -272,13 +271,15 @@ class extends Component {
</footer>
</div>
<div class="mt-2 flex justify-end w-full space-x-2">
<flux:button
xs
target="_blank"
:href="url()->temporarySignedRoute('media.signed', now()->addMinutes(30), ['media' => $post->getFirstMedia('pdf')])"
icon="cloud-arrow-down">
Öffnen
</flux:button>
@if($post->getFirstMedia('pdf'))
<flux:button
xs
target="_blank"
:href="url()->temporarySignedRoute('media.signed', now()->addMinutes(30), ['media' => $post->getFirstMedia('pdf')])"
icon="cloud-arrow-down">
Öffnen
</flux:button>
@endif
@if($canEdit)
<flux:modal.trigger name="delete-news-{{ $post->id }}">
<flux:button

View File

@@ -574,6 +574,12 @@ new class extends Component {
public function loadEvents(): void
{
$relayUrl = config('services.relay');
if (! $relayUrl) {
$this->events = [];
return;
}
$subscription = new Subscription;
$subscriptionId = $subscription->setId();
@@ -585,7 +591,7 @@ new class extends Component {
$requestMessage = new RequestMessage($subscriptionId, $filters);
$relays = [
new Relay(config('services.relay')),
new Relay($relayUrl),
];
$relaySet = new RelaySet;
$relaySet->setRelays($relays);
@@ -593,7 +599,7 @@ new class extends Component {
$request = new Request($relaySet, $requestMessage);
$response = $request->send();
$this->events = collect($response[config('services.relay')])
$this->events = collect($response[$relayUrl] ?? [])
->map(function ($event) {
if (!isset($event->event)) {
return false;

View File

@@ -77,12 +77,11 @@ class extends Component
'file' => 'nullable|file|mimes:jpeg,png,jpg,gif,webp|mimetypes:image/jpeg,image/png,image/gif,image/webp|max:10240',
]);
$projectProposal = ProjectProposal::query()->create([
'name' => $this->form['name'],
'description' => $this->form['description'],
'support_in_sats' => (int) $this->form['support_in_sats'],
'website' => $this->form['website'],
]);
$projectProposal = new ProjectProposal;
$projectProposal->name = $this->form['name'];
$projectProposal->description = $this->form['description'];
$projectProposal->support_in_sats = (int) $this->form['support_in_sats'];
$projectProposal->website = $this->form['website'];
$projectProposal->accepted = $this->form['accepted'];
$projectProposal->sats_paid = $this->form['sats_paid'];
$projectProposal->einundzwanzig_pleb_id = \App\Models\EinundzwanzigPleb::query()->where('pubkey', NostrAuth::pubkey())->first()->id;

View File

@@ -31,8 +31,6 @@ new class extends Component {
public ?ProjectProposal $projectToDelete = null;
protected $listeners = [
'nostrLoggedIn' => 'handleNostrLoggedIn',
'nostrLoggedOut' => 'handleNostrLoggedOut',
'confirmDeleteProject' => 'confirmDeleteProject',
];