argument('identity'); $plan = strtolower((string) $this->option('plan')); $reset = (bool) $this->option('reset'); if (! in_array($plan, ['free', 'pro', 'enterprise'], true)) { $this->error('Invalid --plan. Use free, pro, or enterprise.'); return self::FAILURE; } try { $result = $seeder->seed($identity, $plan, $reset); } catch (\InvalidArgumentException $e) { $this->error($e->getMessage()); return self::FAILURE; } $user = $result['user']; $effective = $subscriptions->planKey($user); $this->info(sprintf( 'Seeded POS demo for %s (%s) plan=%s (effective=%s)%s', $user->email, $user->public_id, $result['plan'], $effective, $reset ? ' [reset]' : '', )); $this->table( ['Metric', 'Count'], collect($result['counts'])->map(fn ($v, $k) => [$k, (string) $v])->values()->all() ); return self::SUCCESS; } }