77 RowProps ,
88 Rule ,
99 TableColumn ,
10+ useActiveNamespace ,
1011 useListPageFilter ,
1112 VirtualizedTable ,
1213} from '@openshift-console/dynamic-plugin-sdk' ;
@@ -96,7 +97,7 @@ const RuleTableRow: React.FC<RowProps<Rule>> = ({ obj }) => {
9697 < ResourceIcon kind = { RuleResource . kind } />
9798 </ FlexItem >
9899 < FlexItem >
99- < Link to = { getRuleUrl ( perspective , obj ) } >
100+ < Link to = { getRuleUrl ( perspective , obj , obj . labels . namespace ) } >
100101 < Truncate content = { obj . name } />
101102 </ Link >
102103 </ FlexItem >
@@ -118,6 +119,7 @@ const RuleTableRow: React.FC<RowProps<Rule>> = ({ obj }) => {
118119const AlertRulesPage_ : React . FC = ( ) => {
119120 const { t } = useTranslation ( process . env . I18N_NAMESPACE ) ;
120121 const { alertsKey, silencesKey, rulesKey, perspective, defaultAlertTenant } = usePerspective ( ) ;
122+ const [ namespace ] = useActiveNamespace ( ) ;
121123
122124 useAlertsPoller ( ) ;
123125
@@ -137,6 +139,14 @@ const AlertRulesPage_: React.FC = () => {
137139 [ data ] ,
138140 ) ;
139141
142+ const namespacedData = React . useMemo ( ( ) => {
143+ if ( perspective === 'dev' ) {
144+ return data ?. filter ( ( rule ) => rule . labels ?. namespace === namespace ) ;
145+ }
146+
147+ return data ;
148+ } , [ data , perspective , namespace ] ) ;
149+
140150 const rowFilters : RowFilter [ ] = [
141151 // TODO: The "name" filter doesn't really fit useListPageFilter's idea of a RowFilter, but
142152 // useListPageFilter doesn't yet provide a better way to add a filter like this
@@ -163,7 +173,7 @@ const AlertRulesPage_: React.FC = () => {
163173 } ,
164174 ] ;
165175
166- const [ staticData , filteredData , onFilterChange ] = useListPageFilter ( data , rowFilters ) ;
176+ const [ staticData , filteredData , onFilterChange ] = useListPageFilter ( namespacedData , rowFilters ) ;
167177
168178 const columns = React . useMemo < TableColumn < Rule > [ ] > (
169179 ( ) => [
0 commit comments