fix - TrackerController::show return {exists,tracker} to avoid null/{} ambiguity in JS
This commit is contained in:
parent
c73b634b44
commit
cdb1e268e4
4 changed files with 8 additions and 8 deletions
|
|
@ -17,10 +17,10 @@ public function show(): JsonResponse
|
||||||
$tracker = User::default()->tracker;
|
$tracker = User::default()->tracker;
|
||||||
|
|
||||||
if (! $tracker) {
|
if (! $tracker) {
|
||||||
return response()->json(null);
|
return response()->json(['exists' => false]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return response()->json($tracker->load('asset'));
|
return response()->json(['exists' => true, 'tracker' => $tracker->load('asset')]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function store(Request $request): JsonResponse
|
public function store(Request $request): JsonResponse
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ export default function AssetSetupForm({ onSuccess, onCancel }: AssetSetupFormPr
|
||||||
try {
|
try {
|
||||||
const response = await fetch('/tracker');
|
const response = await fetch('/tracker');
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
const tracker = await response.json();
|
const { tracker } = await response.json();
|
||||||
if (tracker?.asset) {
|
if (tracker?.asset) {
|
||||||
setData({
|
setData({
|
||||||
symbol: tracker.asset.symbol || '',
|
symbol: tracker.asset.symbol || '',
|
||||||
|
|
|
||||||
|
|
@ -76,9 +76,9 @@ export default function OnboardingFlow({ onComplete }: OnboardingFlowProps) {
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
fetch('/tracker')
|
fetch('/tracker')
|
||||||
.then(r => r.ok ? r.json() : null)
|
.then(r => r.ok ? r.json() : null)
|
||||||
.then(tracker => {
|
.then(data => {
|
||||||
if (tracker) {
|
if (data?.tracker) {
|
||||||
setPriceTracking(tracker.price_tracking_enabled ?? false);
|
setPriceTracking(data.tracker.price_tracking_enabled ?? false);
|
||||||
setTrackerCreated(true);
|
setTrackerCreated(true);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -76,8 +76,8 @@ export default function Dashboard() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (trackerResponse.ok) {
|
if (trackerResponse.ok) {
|
||||||
const trackerData = await trackerResponse.json();
|
const { tracker: trackerData } = await trackerResponse.json();
|
||||||
setTracker(trackerData);
|
setTracker(trackerData ?? null);
|
||||||
setCurrentAsset(trackerData?.asset ?? null);
|
setCurrentAsset(trackerData?.asset ?? null);
|
||||||
setPriceTrackingEnabled(trackerData?.price_tracking_enabled ?? false);
|
setPriceTrackingEnabled(trackerData?.price_tracking_enabled ?? false);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue