async refresh()

in src/desktop/ci/pending_job_webview_controller.ts [71:84]


  async refresh(state: TreeState) {
    const panel = this.#panel;
    if (state.type === 'invalid' || !panel) return;

    const updatedPanelJob = state.jobs.find(j => j.id === panel.jobItemModel.job.id);
    if (updatedPanelJob && panel.jobItemModel.job.status !== updatedPanelJob.status) {
      const jobItemModel = new JobItemModel(state.projectInRepository, updatedPanelJob);
      if (hasTraceAvailable(updatedPanelJob)) {
        await replaceWebviewWithTraceview(jobItemModel, panel);
      } else {
        await this.createOrUpdateWebview(jobItemModel, panel);
      }
    }
  }