diff --git a/frontend/src/ASNsNewManager.jsx b/frontend/src/ASNsNewManager.jsx index 3b205f4..93b1ca4 100644 --- a/frontend/src/ASNsNewManager.jsx +++ b/frontend/src/ASNsNewManager.jsx @@ -466,6 +466,64 @@ function ASNsNewManager() { />
+ {/* Classic Add New ASN Card (restored) */} +
+
+

+ + Добавить новый ASN +

+
+
+
{ e.preventDefault(); handleAddItem(); }}> +
+ + setNewItem({ ...newItem, asn: e.target.value })} + /> + {newInvalid.asn &&
Только цифры
} +
Формат: только цифры, например 12345
+
+
+ + setNewItem({ ...newItem, community: v })} + communities={communities} + placeholder="Начните вводить номер или имя" + className={`form-control${newInvalid.community ? ' is-invalid' : ''}`} + /> + {newInvalid.community &&
Только цифры
} +
Формат: N или N:N (например 65000:100)
+ {(() => { + const match = communities.find(c => c.value === String(newItem.community).trim()); + if (!match) return null; + return ( +
+ {match.name && (<>{match.name} — )} + {match.description || ''} + {match.tags && match.tags.length > 0 && ( + <> ({match.tags.join(', ')}) + )} +
+ ); + })()} +
+
+ +
+
+
+
+ + {/* QuickAdd stays for batch input */}
+ {/* Classic Add New Domain Card (restored) */} +
+
+

+ + Добавить новый домен +

+
+
+
{ e.preventDefault(); handleAddItem(); }}> +
+ + setNewItem({ ...newItem, domain: e.target.value })} + /> + {newInvalid.domain &&
Неверный формат домена
} +
Без http/https, только доменное имя
+
Формат: sub.domain.tld (например foo.example.org)
+
+
+ + setNewItem({ ...newItem, community: v })} + communities={communities} + placeholder="Начните вводить номер или имя" + className={`form-control${newInvalid.community ? ' is-invalid' : ''}`} + /> + {newInvalid.community &&
Только цифры
} +
Формат: N или N:N (например 65000:100)
+ {(() => { + const match = communities.find(c => c.value === String(newItem.community).trim()); + if (!match) return null; + return ( +
+ {match.name && (<>{match.name} — )} + {match.description || ''} + {match.tags && match.tags.length > 0 && ( + <> ({match.tags.join(', ')}) + )} +
+ ); + })()} +
+
+ +
+
+
+
+ + {/* QuickAdd stays for batch input */}
+ {/* Classic Add New Item Card (restored) */} +
+
+

+ + Добавить новый IP-диапазон +

+
+
+
{ e.preventDefault(); handleAddItem(); }}> +
+ + setNewItem({ ...newItem, ipRange: e.target.value })} + /> + {newInvalid.ipRange &&
Некорректный CIDR
} +
Формат: A.B.C.D/Маска, например 10.0.0.0/24
+
+
+ + setNewItem({ ...newItem, community: v })} + communities={communities} + placeholder="Начните вводить номер или имя" + className={`form-control${newInvalid.community ? ' is-invalid' : ''}`} + /> + {newInvalid.community &&
Только цифры
} + {(() => { + const match = communities.find(c => c.value === String(newItem.community).trim()); + if (!match) return null; + return ( +
+ {match.name && (<>{match.name} — )} + {match.description || ''} + {match.tags && match.tags.length > 0 && ( + <> ({match.tags.join(', ')}) + )} +
+ ); + })()} +
+
+ +
+
+
+
+ + {/* QuickAdd stays for batch input */}