> my-v0-project@0.1.0 build > next build Γû▓ Next.js 15.5.12 - Environments: .env.local Creating an optimized production build ... node.exe : Failed to compile. At line:1 char:1 + & "C:\Program Files\ nodejs/node.exe" "C:\U sers\Administrator\App Data\ ... + ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~ + CategoryInfo : NotSpeci fied: (Failed to compile.:String) [], RemoteExcepti on + FullyQualifiedE rrorId : NativeCo mmandError ./src/app/dashboard/ba ckoffice/page.tsx Error: x Return statement is not allowed here ,-[C:\de v\gohorsejobs\frontend \src\app\dashboard\bac koffice\page.tsx:2 57:1] 254 | } 255 | 256 | if (loading) { 257 |  ,-[35; 1m> return ( 258 | |
259 | |
260 | |
261 |  `-[35; 1m> ) 262 | } 263 | 263 | return ( `---- x Return statement is not allowed here ,-[C:\de v\gohorsejobs\frontend \src\app\dashboard\bac koffice\page.tsx:2 64:1] 261 | ) 262 | } 263 | 264 |  ,-[35; 1m> return ( 265 | |
266 | |
267 | |
268 | |

Backoffice

269 | |

SaaS Administration & Operations

270 | |
271 | |
272 | | 276 | |
277 | |
278 | | 279 | | 280 | | 281 | | Dashboard 282 | | Plans 283 | | Stripe 284 | | System 285 | | 286 | | 287 | | 288 | | {/* Stats Overview */} 289 | | {stats && ( 290 | |
291 | | 292 | | 293 | | Total Revenue 294 | | $< /span> 295 | | 296 | | 297 | |
${stats.month lyRevenue?.toLocaleStr ing() || '0'}
298 | |

{s tats.revenueGrowth ? ` +${stats.revenueGrowth }% from last month` : 'This month'}

299 | |
300 | |
301 | | 302 | | 303 | | Active Su bscriptions 304 | | 305 | | 306 | | 307 | |
{stats.active Subscriptions || 0}
308 | |

{s tats.subscriptionGrowt h ? `+${stats.subscrip tionGrowth} this week` : 'Current active'}

309 | |
310 | |
311 | | 312 | | 313 | | Companies 314 | |
315 | | 316 | | 317 | |
{stats.totalC ompanies || 0}
318 | |

Pl atform total

319 | |
320 | | 321 | | 322 | | 323 | | New (Month) 324 | | 325 | | 326 | | 327 | |
+{stats.newCo mpaniesThisMonth || 0}
328 | |

Si nce start of month

329 | |
330 | |
331 | |
332 | | )} 333 | | 334 | |
335 | | 336 | | 337 | | Empresas pendentes 338 | | Ap rovação e verificação de empre sas. 339 | | 340 | | 341 | | 342 | | 343 | | 344 | | Empresa 345 | | Status 346 | | Ações 347 | | 348 | | 349 | | 350 | | {companies.slice(0, 5).map((company) => ( 351 | | 352 | | {company. name} 353 | | 354 | | {company.verified ? Verificada : Pendente } 355 | | 356 | | 357 | | 360 | | 361 | | 362 | | ))} 363 | | 364 | |
365 | |
366 | |
367 | | 368 | | 369 | | Auditoria Recente 370 | | Ú ltimos acessos. 371 | | 372 | | 373 | |
374 | | {audits.slice(0, 5).map((audit) => ( 375 | |
376 | |
377 | |

{audit.identifier}

378 | |

{a uditDateFormatter.form at(new Date(audit.crea tedAt))}

379 | |
380 | |
{ audit.roles}
381 | |
382 | | ))} 383 | |
384 | |
385 | |
386 | |
387 | | 388 | | 389 | | 390 | |
391 | | 394 | |
395 | | 396 | | 397 | | Plans Management 398 | | < CardDescription>Config ure subscription plans . 399 | | 400 | | 401 | | 402 | | 403 | | 404 | | Name 405 | | Monthly 406 | | Yearly 407 | | Actions 408 | | 409 | | 410 | | 411 | | {plans.map((plan) => ( 412 | | 413 | | {plan.nam e} 414 | | ${plan.monthlyPric e} 415 | | ${plan.yearlyPrice } 416 | | 417 | | 418 | | 419 | | 420 | | 421 | | ))} 422 | | 423 | |
424 | |
425 | |
426 | | 427 | | 428 | | 429 | | 430 | | {editi ngPlanId ? 'Edit Plan' : 'Create Plan'} 431 | | 432 | |
433 | |
434 | | 435 | | setPlanForm({ ...planForm, name: e.target.value })} /> 436 | |
437 | |
438 | | 439 | | setPlanForm({ ...planForm, description: e.target.value })} /> 440 | |
441 | |
442 | |
443 | | 444 | | setPlanForm({ ...planForm, monthlyPrice: e.target.value })} /> 445 | |
446 | |
447 | | 448 | | setPlanForm({ ...planForm, yearlyPrice: e.target.value })} /> 449 | |
450 | |
451 | |
452 | | 453 | |