Skip to content

Commit

Permalink
Remove manually specified activities from default view (#1598)
Browse files Browse the repository at this point in the history
* Remove static activity type filter for default view so that all activities are included dynamically in case of a model change
  • Loading branch information
AaronPlave authored Jan 22, 2025
1 parent 9279a68 commit 87c986e
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 18 deletions.
1 change: 0 additions & 1 deletion src/routes/plans/[id]/+page.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ export const load: PageLoad = async ({ parent, params, url }) => {
url.searchParams,
user,
true,
initialActivityTypes,
initialResourceTypes,
initialExternalEventTypes,
initialPlan.model.view,
Expand Down
3 changes: 1 addition & 2 deletions src/utilities/effects.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4740,7 +4740,6 @@ const effects = {
query: URLSearchParams | null,
user: User | null,
migrate: boolean = true,
activityTypes: ActivityType[] = [],
resourceTypes: ResourceType[] = [],
externalEventTypes: ExternalEventType[] = [],
defaultView?: View | null,
Expand Down Expand Up @@ -4785,7 +4784,7 @@ const effects = {
}
}
}
return generateDefaultView(activityTypes, resourceTypes, externalEventTypes);
return generateDefaultView(resourceTypes, externalEventTypes);
} catch (e) {
catchError(e as Error);
return null;
Expand Down
15 changes: 6 additions & 9 deletions src/utilities/view.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,11 @@ import {

describe('generateDefaultView', () => {
test('Should generate a valid view', async () => {
const view = generateDefaultView(
[],
[
{ name: 'resource1', schema: { type: 'boolean' } },
{ name: 'resource2', schema: { type: 'int' } },
{ name: 'resource2', schema: { items: { type: 'boolean' }, type: 'series' } },
],
);
const view = generateDefaultView([
{ name: 'resource1', schema: { type: 'boolean' } },
{ name: 'resource2', schema: { type: 'int' } },
{ name: 'resource2', schema: { items: { type: 'boolean' }, type: 'series' } },
]);
const { valid, errors } = validateViewJSONAgainstSchema(view.definition);
expect(errors).to.deep.equal([]);
expect(valid).toBe(true);
Expand All @@ -27,7 +24,7 @@ describe('generateDefaultView', () => {

describe('generateDefaultViewWithEvents', () => {
test('Should generate a valid view with events', async () => {
const view = generateDefaultView([], [], [{ name: 'external-event-type_1' }, { name: 'external-event-type_2' }]);
const view = generateDefaultView([], [{ name: 'external-event-type_1' }, { name: 'external-event-type_2' }]);

// validate against schema
const { valid, errors } = validateViewJSONAgainstSchema(view.definition);
Expand Down
7 changes: 1 addition & 6 deletions src/utilities/view.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import Ajv from 'ajv';
import { ViewDefaultDiscreteOptions, viewSchemaVersion, viewSchemaVersionName } from '../constants/view';
import jsonSchema from '../schemas';
import type { ActivityType } from '../types/activity';
import type { ExternalEventType } from '../types/external-event';
import type { ResourceType } from '../types/simulation';
import type { View, ViewDefinition, ViewGridColumns, ViewGridRows } from '../types/view';
Expand All @@ -20,20 +19,16 @@ import {
* Generates a default generic UI view.
*/
export function generateDefaultView(
activityTypes: ActivityType[] = [],
resourceTypes: ResourceType[] = [],
externalEventTypes: ExternalEventType[] = [],
): View {
const now = new Date().toISOString();
const types: string[] = activityTypes.map(({ name }) => name);

const timeline = createTimeline([], { marginLeft: 250, marginRight: 30 });
const timelines = [timeline];

// Start with the activity row
const activityLayer = createTimelineActivityLayer(timelines, {
filter: { activity: { static_types: types } },
});
const activityLayer = createTimelineActivityLayer(timelines);
const activityRow = createRow(timelines, {
autoAdjustHeight: true,
discreteOptions: { ...ViewDefaultDiscreteOptions, displayMode: 'grouped' },
Expand Down

0 comments on commit 87c986e

Please sign in to comment.