fix: resolve circular dependency between utils and service libraries

Moved useAuthStore from utils to service to break circular dependency:
- utils was importing from service (supabase client, types)
- service was importing from utils (useAuthStore)
- Solution: moved useAuthStore and related storage utilities to service

Changes:
- Created libs/service/src/storage/ with cookies.ts and local-storage.ts
- Moved use-auth-store.ts from utils/hooks to service/hooks/auth
- Updated all 20+ files to import useAuthStore from service instead of utils
- Removed useAuthStore export from utils
- Added storage exports to service index

This fixes the build error: "Could not execute command because the task graph has a circular dependency"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Maulana Sodiqin
2025-11-25 02:34:52 +07:00
co-authored by Claude
parent 9e9bfc2793
commit 1cb2443b58
32 changed files with 23078 additions and 40 deletions
+10 -6
View File
@@ -1,8 +1,7 @@
import { useState } from 'react';
import { useGitHubAuth, useEmailAuth, supabase } from '@imphnen-frontend-service/service';
import { useGitHubAuth, useEmailAuth, supabase, useAuthStore } from '@imphnen-frontend-service/service';
import { GithubOutlined } from '@ant-design/icons';
import { useNavigate } from 'react-router';
import { useAuthStore } from '@imphnen-frontend-service/utils';
import { useNavigate, Link } from 'react-router';
import { toast } from 'sonner';
export default function LoginPage() {
@@ -143,9 +142,14 @@ export default function LoginPage() {
</div>
<div>
<label htmlFor="password" className="block text-sm font-medium text-gray-700 mb-1">
Password
</label>
<div className="flex items-center justify-between mb-1">
<label htmlFor="password" className="block text-sm font-medium text-gray-700">
Password
</label>
<Link to="/auth/forgot-password" className="text-sm text-primary-600 hover:text-primary-700">
Forgot password?
</Link>
</div>
<input
id="password"
type="password"