stuff

 avatar
unknown
typescript
3 years ago
1.2 kB
3
Indexable
  const actions: ActionObject[] = flatData.map((data: any) => ({
      windowId: data.schedule_window_id,
      actionTime: data.action_at,
      actionInfo: data.action,
      actionMode: data.action_mode,
    }));

    let windowsWithActions: WindowWithActions[] = flatData.map((data: any) => ({
      windowId: data.schedule_window_id,
      actions: actions.filter(
        (action) => action.windowId === data.schedule_window_id,
      ),
      deviceConfigId: data.device_config_id,
      windowStartDate: data.from_timestamp,
      windowEndDate: data.to_timestamp,
      default: data.default,
    }));
    windowsWithActions = lodash.uniqBy(windowsWithActions, "windowId");

    let devicesConfigsWithWindows: DeviceConfigWithWindows[] = flatData.map(
      (data: any) => ({
        deviceConfigId: data.device_config_id,
        windows: windowsWithActions.filter(
          (window) => window.deviceConfigId === data.device_config_id,
        ),
        deviceConfigStartDate: data.created_at,
        deviceConfigEndDate: data.deleted_at,
      }),
    );
    devicesConfigsWithWindows = lodash.uniqBy(
      devicesConfigsWithWindows,
      "windowId",
    );
Editor is loading...