+ {/* Detect PII Validator */}
+ {(editingValidatorId || selectedValidator) === 'detect-pii' && (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {['PERSON', 'PHONE_NUMBER', 'IN_AADHAAR', 'EMAIL_ADDRESS', 'CREDIT_CARD', 'IP_ADDRESS'].map((entity) => (
+
+ ))}
+
+
+
+
+ setValidatorConfig({ ...validatorConfig, threshold: parseFloat(e.target.value) })}
+ className="w-full"
+ style={{ accentColor: colors.accent.primary }}
+ />
+
+ >
+ )}
+
+ {/* Lexical Slur Match Validator */}
+ {(editingValidatorId || selectedValidator) === 'lexical-slur-match' && (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {['en', 'hi'].map((lang) => (
+
+ ))}
+
+
+
+
+ setValidatorConfig({ ...validatorConfig, severity: e.target.value })}
+ className="w-full px-3 py-2 rounded-md text-sm focus:outline-none"
+ style={{
+ border: `1px solid ${colors.border}`,
+ backgroundColor: colors.bg.primary,
+ color: colors.text.primary,
+ }}
+ />
+
+ >
+ )}
+
+ {/* Gender Assumption Bias Validator */}
+ {(editingValidatorId || selectedValidator) === 'gender-assumption-bias' && (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ >
+ )}
+
+ {/* Ban List Validator */}
+ {(editingValidatorId || selectedValidator) === 'ban-list' && (
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* Display selected ban list details */}
+ {validatorConfig.ban_list_id && (() => {
+ const selectedBanList = banLists.find(list => list.id === validatorConfig.ban_list_id);
+ return selectedBanList && (
+
+
+
+ Banned Words ({selectedBanList.banned_words?.length || 0})
+
+ {selectedBanList.domain && (
+
+ {selectedBanList.domain}
+
+ )}
+
+ {selectedBanList.description && (
+
+ {selectedBanList.description}
+
+ )}
+
+ {selectedBanList.banned_words?.map((word: string, idx: number) => (
+
+ {word}
+
+ ))}
+
+
+ );
+ })()}
+
+ >
+ )}
+
+ {selectedValidator && (
+
+ )}
+