*/ use HasFactory, Notifiable, SoftDeletes; protected $guarded = ['id']; protected static function booted(): void { static::creating(function (self $user) { if (empty($user->ulid)) { $user->ulid = \Illuminate\Support\Str::ulid(); } }); } /** * The attributes that should be hidden for serialization. * * @var list */ protected $hidden = [ 'password', 'remember_token', ]; /** * Get the attributes that should be cast. * * @return array */ protected function casts(): array { return [ 'email_verified_at' => 'datetime', 'two_factor_confirmed_at' => 'datetime', 'password' => 'hashed', ]; } public function workspaces() { return $this->hasMany(\App\Domains\Workspace\Models\Workspace::class, 'owner_id'); } public function defaultWorkspace() { return $this->belongsTo(\App\Domains\Workspace\Models\Workspace::class, 'default_workspace_id'); } public function workspaceMemberships() { return $this->hasMany(\App\Domains\Workspace\Models\WorkspaceMember::class); } }