Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions app/main/handlers/queryHTTPFlow.js
Original file line number Diff line number Diff line change
Expand Up @@ -329,6 +329,21 @@ module.exports = (win, getClient) => {
return await asyncQueryMITMRuleExtractedData(params)
})

const asyncQueryMITMExtractedAggregate = (params) => {
return new Promise((resolve, reject) => {
getClient().QueryMITMExtractedAggregate(params, (err, data) => {
if (err) {
reject(err)
return
}
resolve(data)
})
})
}
ipcMain.handle('QueryMITMExtractedAggregate', async (e, params) => {
return await asyncQueryMITMExtractedAggregate(params)
})

const asyncDeleteMITMRuleExtractedData = (params) => {
return new Promise((resolve, reject) => {
getClient().DeleteMITMRuleExtractedData(params, (err, data) => {
Expand Down
7 changes: 7 additions & 0 deletions app/renderer/src/main/public/locales/en/history.json
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,13 @@
"deleteSuccess": "Delete successful",
"deduplicateSuccess": "Deduplicate successful"
},
"HTTPFlowRuleDataFilter": {
"searchPlaceholder": "Search by IP, domain, URL",
"traceCount": "Flows",
"selectOrSearchFirst": "Please check rows or enter a keyword to limit the scope",
"deduplicateDone": "Dedup done: {{n}} duplicate record(s) removed",
"deduplicateNoRepeat": "Dedup done: no duplicates found in current scope"
},
"FuzzableParamList": {
"parameterName": "Parameter Name",
"parameterLocation": "Parameter Location",
Expand Down
7 changes: 7 additions & 0 deletions app/renderer/src/main/public/locales/zh/history.json
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,13 @@
"deleteSuccess": "删除成功",
"deduplicateSuccess": "去重成功"
},
"HTTPFlowRuleDataFilter": {
"searchPlaceholder": "可输入ip、域名、url进行搜索",
"traceCount": "流量条数",
"selectOrSearchFirst": "请先勾选行或输入关键词以限定操作范围",
"deduplicateDone": "去重完成:已删除 {{n}} 条重复数据",
"deduplicateNoRepeat": "去重完成:当前范围内无重复项"
},
"FuzzableParamList": {
"parameterName": "参数名",
"parameterLocation": "参数位置",
Expand Down
18 changes: 18 additions & 0 deletions app/renderer/src/main/src/assets/icon/outline.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6254,3 +6254,21 @@ const OutlineCheckCheck = () => (
export const OutlineCheckCheckIcon = (props: Partial<IconProps>) => {
return <Icon component={OutlineCheckCheck} {...props} />
}

const OutlineFileSliders = () => (
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
d="M14 2V6C14 6.53043 14.2107 7.03914 14.5858 7.41421C14.9609 7.78929 15.4696 8 16 8H20M8 12H16M10 11V13M8 17H16M14 16V18M15 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V7L15 2Z"
stroke="currentColor"
strokeWidth="1.5"
strokeLinecap="round"
strokeLinejoin="round"
/>
</svg>
)
/*
* @description Outline/fileSliders
*/
export const OutlineFileSlidersIcon = (props: Partial<IconProps>) => {
return <Icon component={OutlineFileSliders} {...props} />
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
.rule-data-filter {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
min-width: 0;

.rule-data-filter-header-bar {
display: flex;
align-items: center;
gap: 8px;
padding: 6px;
border-bottom: 1px solid var(--Colors-Use-Neutral-Border);
margin-bottom: 8px;

.rule-data-filter-search {
flex: 1;
}

.rule-data-filter-actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 6px;
}
}

.rule-data-filter-table {
flex: 1;
overflow: hidden;
padding: 0 4px 8px;
min-width: 0;

.rule-data-filter-table-inner {
height: 100%;
min-width: 0;
overflow: hidden;
}
}
}

.search-icon svg,
.filter-icon svg {
width: 14px;
height: 14px;
}

.filter-icon {
cursor: pointer;
}

.rule-data-cell {
display: flex;
align-items: center;
gap: 4px;
overflow: hidden;
flex: 1;
min-width: 0;

span {
display: block;
flex: 1;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}

.copy-action {
flex: none;
width: auto;
min-width: auto;
}
Loading
Loading