feat: add didactical InfoParamModal for V0, S1, S2, S3 with NBR 6123 references
This commit is contained in:
@@ -18,6 +18,7 @@ import { Settings2 } from 'lucide-react';
|
||||
import { Button } from '@/components/ui/button';
|
||||
import { IsopletasModal } from '@/components/IsopletasModal';
|
||||
import { InfoV0Modal } from '@/components/InfoV0Modal';
|
||||
import { InfoParamModal } from '@/components/InfoParamModal';
|
||||
|
||||
export function GlobalWindSettingsModal() {
|
||||
const {
|
||||
@@ -73,9 +74,9 @@ export function GlobalWindSettingsModal() {
|
||||
<TabsContent value="norma" className="space-y-4 min-w-0">
|
||||
<div className="space-y-2">
|
||||
<div className="flex justify-between items-center">
|
||||
<div className="flex items-center gap-1">
|
||||
<div className="flex items-center gap-1.5">
|
||||
<label className="text-xs font-medium text-foreground">Velocidade Básica (V₀)</label>
|
||||
<InfoV0Modal variant="icon" />
|
||||
<InfoParamModal type="v0" />
|
||||
</div>
|
||||
<span className="text-xs text-muted-foreground font-mono">{v0} m/s</span>
|
||||
</div>
|
||||
@@ -83,7 +84,10 @@ export function GlobalWindSettingsModal() {
|
||||
</div>
|
||||
|
||||
<div className="space-y-1">
|
||||
<label className="text-xs font-medium text-foreground">Fator Topográfico (S₁)</label>
|
||||
<div className="flex items-center gap-1.5 mb-1">
|
||||
<label className="text-xs font-medium text-foreground">Fator Topográfico (S₁)</label>
|
||||
<InfoParamModal type="s1" />
|
||||
</div>
|
||||
<Select value={s1.toString()} onValueChange={(val) => setS1(Number(val))}>
|
||||
<SelectTrigger className="w-full text-xs h-8"><SelectValue placeholder="S₁" /></SelectTrigger>
|
||||
<SelectContent>
|
||||
@@ -96,7 +100,10 @@ export function GlobalWindSettingsModal() {
|
||||
</div>
|
||||
|
||||
<div className="space-y-1">
|
||||
<label className="text-xs font-medium text-foreground">Categoria do Terreno (S₂)</label>
|
||||
<div className="flex items-center gap-1.5 mb-1">
|
||||
<label className="text-xs font-medium text-foreground">Categoria do Terreno (S₂)</label>
|
||||
<InfoParamModal type="s2" />
|
||||
</div>
|
||||
<Select value={terrainCategory} onValueChange={(val) => setTerrainCategory(val as typeof terrainCategory)}>
|
||||
<SelectTrigger className="w-full text-xs h-8"><SelectValue placeholder="Categoria" /></SelectTrigger>
|
||||
<SelectContent>
|
||||
@@ -117,7 +124,10 @@ export function GlobalWindSettingsModal() {
|
||||
</div>
|
||||
|
||||
<div className="space-y-1">
|
||||
<label className="text-xs font-medium text-foreground">Grupo Estatístico (S₃)</label>
|
||||
<div className="flex items-center gap-1.5 mb-1">
|
||||
<label className="text-xs font-medium text-foreground">Grupo Estatístico (S₃)</label>
|
||||
<InfoParamModal type="s3" />
|
||||
</div>
|
||||
<Select value={s3Group.toString()} onValueChange={(val) => setS3Group(Number(val) as 1 | 2 | 3 | 4 | 5)}>
|
||||
<SelectTrigger className="w-full text-xs h-8"><SelectValue placeholder="Grupo" /></SelectTrigger>
|
||||
<SelectContent>
|
||||
|
||||
Reference in New Issue
Block a user