| 12345678910111213141516171819202122232425262728293031323334353637383940 | 
							- <?php
 - 
 - use App\Enums\Accounting\JournalEntryType;
 - use App\Enums\Setting\EntityType;
 - use App\Filament\Company\Pages\CreateCompany;
 - use App\Models\Accounting\Account;
 - use App\Models\Accounting\Transaction;
 - use App\Models\Company;
 - 
 - use function Pest\Livewire\livewire;
 - 
 - function createCompany(string $name): Company
 - {
 -     livewire(CreateCompany::class)
 -         ->fillForm([
 -             'name' => $name,
 -             'profile.email' => 'company@gmail.com',
 -             'profile.entity_type' => EntityType::LimitedLiabilityCompany,
 -             'profile.country' => 'US',
 -             'locale.language' => 'en',
 -             'currencies.code' => 'USD',
 -         ])
 -         ->call('register')
 -         ->assertHasNoErrors();
 - 
 -     return auth()->user()->currentCompany;
 - }
 - 
 - /**
 -  * Get the debit and credit accounts for a transaction.
 -  *
 -  * @return array<Account>
 -  */
 - function getTransactionDebitAndCreditAccounts(Transaction $transaction): array
 - {
 -     $debitAccount = $transaction->journalEntries->where('type', JournalEntryType::Debit)->firstOrFail()->account;
 -     $creditAccount = $transaction->journalEntries->where('type', JournalEntryType::Credit)->firstOrFail()->account;
 - 
 -     return [$debitAccount, $creditAccount];
 - }
 
 
  |