Browse Source

Merge pull request #133 from ollama/revert-125-brucemacd/what-wg-dynamic

Revert "enable ollama-js use in an environment without whatwg"
Jeffrey Morgan 11 months ago
parent
commit
c03ea59c42
1 changed files with 4 additions and 18 deletions
  1. 4 18
      src/browser.ts

+ 4 - 18
src/browser.ts

@@ -1,5 +1,6 @@
 import * as utils from './utils.js'
 import { AbortableAsyncIterator, parseJSON, post } from './utils.js'
+import 'whatwg-fetch'
 
 import type {
   ChatRequest,
@@ -38,24 +39,9 @@ export class Ollama {
       this.config.host = utils.formatHost(config?.host ?? 'http://127.0.0.1:11434')
     }
 
-    this.fetch = config?.fetch || this.getFetch();
-  }
-
-  private getFetch(): Fetch {
-    if (typeof window !== 'undefined' && window.fetch) {
-      return window.fetch.bind(window);
-    }
-    
-    if (typeof global !== 'undefined' && global.fetch) {
-      return global.fetch;
-    }
-    
-    try {
-      // Use dynamic import for Node.js environments
-      return require('node-fetch');
-    } catch (error) {
-      console.error('Failed to import node-fetch:', error);
-      throw new Error('Fetch is not available. Please provide a fetch implementation in the config.');
+    this.fetch = fetch
+    if (config?.fetch != null) {
+      this.fetch = config.fetch
     }
   }