function () { if ($this->reference_type === 'App\Models\Credit') { return new CreditResource($this->reference); } elseif ($this->reference_type === 'App\Models\ServiceUpgrade') { return new ServiceUpgradeResource($this->reference); } return new ServiceResource($this->reference); }, 'invoice' => $this->whenLoaded('invoice', function () { return new InvoiceResource($this->invoice); }), ]; } }