Campaign filter
Этот коммит содержится в:
родитель
1ace6797dc
Коммит
f228b63365
@ -11,6 +11,7 @@
|
|||||||
sourceFilter,
|
sourceFilter,
|
||||||
sourceCategoryFilter,
|
sourceCategoryFilter,
|
||||||
methodFilter,
|
methodFilter,
|
||||||
|
campaignFilter,
|
||||||
selectAllFilters,
|
selectAllFilters,
|
||||||
attributionScoreFilter,
|
attributionScoreFilter,
|
||||||
attributionScoreDef,
|
attributionScoreDef,
|
||||||
@ -102,6 +103,12 @@
|
|||||||
on:itemsAdded={(e) => methodFilter.select(e.detail)}
|
on:itemsAdded={(e) => methodFilter.select(e.detail)}
|
||||||
on:itemsRemoved={(e) => methodFilter.unselect(e.detail)}
|
on:itemsRemoved={(e) => methodFilter.unselect(e.detail)}
|
||||||
></Dropdown>
|
></Dropdown>
|
||||||
|
<Dropdown
|
||||||
|
items={addCount($campaignFilter, 'campaign', cases)}
|
||||||
|
label="Campaign"
|
||||||
|
on:itemsAdded={(e) => campaignFilter.select(e.detail)}
|
||||||
|
on:itemsRemoved={(e) => campaignFilter.unselect(e.detail)}
|
||||||
|
></Dropdown>
|
||||||
<DateRangeSlider
|
<DateRangeSlider
|
||||||
value={timeDummyRange}
|
value={timeDummyRange}
|
||||||
label="Date Range"
|
label="Date Range"
|
||||||
|
|||||||
@ -20,6 +20,7 @@
|
|||||||
sourceFilter,
|
sourceFilter,
|
||||||
sourceCategoryFilter,
|
sourceCategoryFilter,
|
||||||
methodFilter,
|
methodFilter,
|
||||||
|
campaignFilter,
|
||||||
attributionScoreFilter,
|
attributionScoreFilter,
|
||||||
attributionScoreDef,
|
attributionScoreDef,
|
||||||
textSearchFilter,
|
textSearchFilter,
|
||||||
@ -49,6 +50,7 @@
|
|||||||
d.actor_nation = splitString(d.actor_nation);
|
d.actor_nation = splitString(d.actor_nation);
|
||||||
d.source = splitString(d.source);
|
d.source = splitString(d.source);
|
||||||
d.methods = splitString(d.methods);
|
d.methods = splitString(d.methods);
|
||||||
|
d.campaign = splitString(d.campaign)
|
||||||
d.attribution_total_score = +d.attribution_score;
|
d.attribution_total_score = +d.attribution_score;
|
||||||
d.attribution_date = new Date(d.attribution_date);
|
d.attribution_date = new Date(d.attribution_date);
|
||||||
d.search = [
|
d.search = [
|
||||||
@ -67,7 +69,7 @@
|
|||||||
d.show = false;
|
d.show = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
//console.log(cases.map(d => d.offline_mobilization))
|
console.log(cases.map(d => d.campaign))
|
||||||
|
|
||||||
maxAttribution = max(cases.map((d) => d.attribution_score));
|
maxAttribution = max(cases.map((d) => d.attribution_score));
|
||||||
|
|
||||||
@ -76,6 +78,7 @@
|
|||||||
sourceFilter.init(cases, 'source');
|
sourceFilter.init(cases, 'source');
|
||||||
sourceCategoryFilter.init(cases, 'source_category');
|
sourceCategoryFilter.init(cases, 'source_category');
|
||||||
methodFilter.init(cases, 'methods');
|
methodFilter.init(cases, 'methods');
|
||||||
|
campaignFilter.init(cases, 'campaign')
|
||||||
$attributionScoreFilter = attributionScoreDef;
|
$attributionScoreFilter = attributionScoreDef;
|
||||||
$timeRangeFilter = extent(cases.map((d) => new Date(d.attribution_date)));
|
$timeRangeFilter = extent(cases.map((d) => new Date(d.attribution_date)));
|
||||||
//$timeRangeFilter = [new Date('2024-01-01'), max(cases.map((d) => new Date(d.attribution_date)))];
|
//$timeRangeFilter = [new Date('2024-01-01'), max(cases.map((d) => new Date(d.attribution_date)))];
|
||||||
@ -106,7 +109,6 @@
|
|||||||
|
|
||||||
if ($page.url.searchParams.has('filters')) {
|
if ($page.url.searchParams.has('filters')) {
|
||||||
const urlFilters = parseUrl($page.url.searchParams.get('filters'));
|
const urlFilters = parseUrl($page.url.searchParams.get('filters'));
|
||||||
|
|
||||||
actorNationFilter.applyBoolArray(urlFilters.actorNations);
|
actorNationFilter.applyBoolArray(urlFilters.actorNations);
|
||||||
platformFilter.applyBoolArray(urlFilters.platforms);
|
platformFilter.applyBoolArray(urlFilters.platforms);
|
||||||
methodFilter.applyBoolArray(urlFilters.methods);
|
methodFilter.applyBoolArray(urlFilters.methods);
|
||||||
@ -150,6 +152,7 @@
|
|||||||
haveOverlap($sourceFilter, d.source) &&
|
haveOverlap($sourceFilter, d.source) &&
|
||||||
haveOverlap($sourceCategoryFilter, d.source_category) &&
|
haveOverlap($sourceCategoryFilter, d.source_category) &&
|
||||||
haveOverlap($methodFilter, d.methods) &&
|
haveOverlap($methodFilter, d.methods) &&
|
||||||
|
haveOverlap($campaignFilter, d.campaign) &&
|
||||||
withinRange($attributionScoreFilter, d.attribution_total_score) &&
|
withinRange($attributionScoreFilter, d.attribution_total_score) &&
|
||||||
withinRange($timeRangeFilter, d.attribution_date) &&
|
withinRange($timeRangeFilter, d.attribution_date) &&
|
||||||
includesTextSearch($textSearchFilter, d.search)
|
includesTextSearch($textSearchFilter, d.search)
|
||||||
|
|||||||
@ -71,6 +71,8 @@ export const platformFilter = createInclusiveFilter();
|
|||||||
|
|
||||||
export const methodFilter = createInclusiveFilter();
|
export const methodFilter = createInclusiveFilter();
|
||||||
|
|
||||||
|
export const campaignFilter = createInclusiveFilter();
|
||||||
|
|
||||||
export const sourceFilter = createInclusiveFilter();
|
export const sourceFilter = createInclusiveFilter();
|
||||||
|
|
||||||
export const sourceCategoryFilter = createInclusiveFilter();
|
export const sourceCategoryFilter = createInclusiveFilter();
|
||||||
@ -90,6 +92,7 @@ export const unselectAllFilters = (disinformantNation = true) => {
|
|||||||
if (disinformantNation) actorNationFilter.unselectAll();
|
if (disinformantNation) actorNationFilter.unselectAll();
|
||||||
platformFilter.unselectAll();
|
platformFilter.unselectAll();
|
||||||
methodFilter.unselectAll();
|
methodFilter.unselectAll();
|
||||||
|
campaignFilter.unselectAll();
|
||||||
sourceFilter.unselectAll();
|
sourceFilter.unselectAll();
|
||||||
sourceCategoryFilter.unselectAll();
|
sourceCategoryFilter.unselectAll();
|
||||||
tagFilter.unselectAll();
|
tagFilter.unselectAll();
|
||||||
@ -101,6 +104,7 @@ export const selectAllFilters = (disinformantNation = true) => {
|
|||||||
if (disinformantNation) actorNationFilter.selectAll();
|
if (disinformantNation) actorNationFilter.selectAll();
|
||||||
platformFilter.selectAll();
|
platformFilter.selectAll();
|
||||||
methodFilter.selectAll();
|
methodFilter.selectAll();
|
||||||
|
campaignFilter.selectAll();
|
||||||
sourceFilter.selectAll();
|
sourceFilter.selectAll();
|
||||||
sourceCategoryFilter.selectAll();
|
sourceCategoryFilter.selectAll();
|
||||||
tagFilter.selectAll();
|
tagFilter.selectAll();
|
||||||
|
|||||||
Загрузка…
x
Ссылка в новой задаче
Block a user