function openResult()

in labextension/src/components/RunList.tsx [36:69]


function openResult(jobName: string, app: JupyterFrontEnd, rendermime: IRenderMimeRegistry) {
  return async () => {
    const settings = ServerConnection.makeSettings();
    const response = await ServerConnection.makeRequest(
      URLExt.join(settings.baseUrl, 'sagemaker-scheduler', 'output', jobName),
      { method: 'GET' },
      settings,
    );

    if (!response.ok) {
      const error = (await response.json()) as ErrorResponse;
      let errorMessage: string;
      if (error.error) {
        errorMessage = error.error.message;
      } else {
        errorMessage = JSON.stringify(error);
      }
      showDialog({
        title: 'Error opening notebook',
        body: <p>{errorMessage}</p>,
        buttons: [Dialog.okButton({ label: 'Close' })],
      });
      return;
    }
    const info = (await response.json()) as OutputNotebook;
    const match = basenamePattern.exec(info.output_object);
    const outputName = match[1];
    const document = {
      name: outputName,
      content: JSON.parse(info.data),
    };
    openReadonlyNotebook(app, rendermime, document, outputName, jobName);
  };
}