Skip to content

Commit b4676ad

Browse files
Add rule language filtering support
1 parent d1e4227 commit b4676ad

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

parseRuleData.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,13 @@ async function getPrebuiltDetectionRules(
138138
// Use default tags if ruleContent.rule.tags does not exist
139139
const tags = ruleContent.rule.tags || ["Hunt Type: Hunt"];
140140
setDefault(ruleContent.rule, 'tags', ["Hunt Type: Hunt"]);
141-
141+
142+
// Add a tag based on the language
143+
const language = ruleContent.rule?.language;
144+
if (language) {
145+
tags.push(`Language: ${language}`);
146+
}
147+
142148
// Add creation_date and updated_date if they do not exist
143149
const defaultDate = new Date(0).toISOString();
144150
setDefault(ruleContent.metadata, 'creation_date', defaultDate);

src/components/home/home_hero.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,13 @@ const HomeHero: FunctionComponent<RuleFilterProps> = ({
159159
tagFilter={tagFilter}
160160
onTagChange={onTagChange}
161161
/>
162+
<RuleFilter
163+
displayName="Rule Languages"
164+
icon="menu"
165+
tagList={tagSummaries.filter(x => x.tag_type == 'Language')}
166+
tagFilter={tagFilter}
167+
onTagChange={onTagChange}
168+
/>
162169
</EuiFlexGrid>
163170
</EuiFlexItem>
164171
</EuiFlexGroup>

src/lib/ruledata.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,8 @@ export const ruleFilterTypeMap = {
2727
color: 'hollow',
2828
icon: 'layers',
2929
},
30+
Language: {
31+
color: 'default',
32+
icon: 'menu',
33+
},
3034
};

0 commit comments

Comments
 (0)