Add system-query
This commit is contained in:
@ -1,4 +1,5 @@
|
||||
import { ReqFilter } from "./nostr";
|
||||
import {expand_filter} from "@snort/system-query";
|
||||
|
||||
export interface FlatReqFilter {
|
||||
keys: number;
|
||||
@ -20,7 +21,7 @@ export interface FlatReqFilter {
|
||||
* Expand a filter into its most fine grained form
|
||||
*/
|
||||
export function expandFilter(f: ReqFilter): Array<FlatReqFilter> {
|
||||
const ret: Array<FlatReqFilter> = [];
|
||||
/*const ret: Array<FlatReqFilter> = [];
|
||||
const src = Object.entries(f);
|
||||
const keys = src.filter(([, v]) => Array.isArray(v)).map(a => a[0]);
|
||||
const props = src.filter(([, v]) => !Array.isArray(v));
|
||||
@ -46,5 +47,8 @@ export function expandFilter(f: ReqFilter): Array<FlatReqFilter> {
|
||||
...Object.fromEntries(props),
|
||||
});
|
||||
|
||||
return ret;
|
||||
return ret;*/
|
||||
|
||||
const ret = expand_filter(f);
|
||||
return ret as Array<FlatReqFilter>;
|
||||
}
|
||||
|
@ -105,7 +105,7 @@ export function flatMerge(all: Array<FlatReqFilter>): Array<ReqFilter> {
|
||||
function mergeFiltersInSet(filters: Array<FlatReqFilter>) {
|
||||
return filters.reduce((acc, a) => {
|
||||
Object.entries(a).forEach(([k, v]) => {
|
||||
if (k === "keys") return;
|
||||
if (k === "keys" || v === undefined) return;
|
||||
if (DiscriminatorKeys.includes(k)) {
|
||||
acc[k] = v;
|
||||
} else {
|
||||
|
@ -1,8 +1,9 @@
|
||||
import { flatFilterEq } from "./utils";
|
||||
import { FlatReqFilter } from "./request-expander";
|
||||
import { diff_filters } from "@snort/system-query";
|
||||
|
||||
export function diffFilters(prev: Array<FlatReqFilter>, next: Array<FlatReqFilter>, calcRemoved?: boolean) {
|
||||
const added = [];
|
||||
/*const added = [];
|
||||
const removed = [];
|
||||
|
||||
for (const n of next) {
|
||||
@ -28,5 +29,12 @@ export function diffFilters(prev: Array<FlatReqFilter>, next: Array<FlatReqFilte
|
||||
added: changed ? added : [],
|
||||
removed: changed ? removed : [],
|
||||
changed,
|
||||
};
|
||||
}
|
||||
};*/
|
||||
|
||||
const added = diff_filters(prev, next);
|
||||
return {
|
||||
changed: added.length > 0,
|
||||
added: (added as Array<FlatReqFilter>),
|
||||
removed: []
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user