-
- Active Sources auswählen
-
- {dataSources.map(ds => {
- const isSelected = attachedDataSourceIds.includes(ds.id);
- return (
-
_toggleDataSource(ds.id)}
- style={{
- padding: '8px 12px', cursor: 'pointer', fontSize: 13,
- display: 'flex', alignItems: 'center', gap: 8,
- background: isSelected ? '#e8f5e9' : 'transparent',
- }}
- onMouseEnter={e => { if (!isSelected) e.currentTarget.style.background = '#f5f5f5'; }}
- onMouseLeave={e => { if (!isSelected) e.currentTarget.style.background = ''; }}
- >
-
- {isSelected ? '✓' : ''}
-
-
- {ds.label || ds.path || ds.id}
-
-
- );
- })}
- {featureDataSources.length > 0 && (
- <>
-
- Feature Data Sources
-
- {featureDataSources.map(fds => {
- const isSelected = attachedFeatureDataSourceIds.includes(fds.id);
- return (
-
_toggleFeatureDataSource(fds.id)}
- style={{
- padding: '8px 12px', cursor: 'pointer', fontSize: 13,
- display: 'flex', alignItems: 'center', gap: 8,
- background: isSelected ? '#f3e5f5' : 'transparent',
- }}
- onMouseEnter={e => { if (!isSelected) e.currentTarget.style.background = '#f5f5f5'; }}
- onMouseLeave={e => { if (!isSelected) e.currentTarget.style.background = ''; }}
- >
-
- {isSelected ? '✓' : ''}
-
-
- {getPageIcon(`feature.${fds.featureCode}`) || '\uD83D\uDDC3\uFE0F'}
-
-
- {fds.label || fds.featureCode} – {fds.tableName}
-
-
- );
- })}
- >
- )}
-