@@ -8,10 +8,12 @@ import {
88 RegionProvider ,
99 SimpleAuthenticationDetailsProvider ,
1010} from 'oci-common' ;
11- import { checkNotNull } from 'oci-common/lib/utils' ;
1211import { GenerativeAiInferenceClient } from 'oci-generativeaiinference' ;
13- import { ImageContent , TextContent } from 'oci-generativeaiinference/lib/model' ;
14- import { ChatRequest } from 'oci-generativeaiinference/lib/request' ;
12+ import type {
13+ ImageContent ,
14+ TextContent ,
15+ } from 'oci-generativeaiinference/lib/model' ;
16+ import type { ChatRequest } from 'oci-generativeaiinference/lib/request' ;
1517
1618import { metrics } from '../../../base' ;
1719import type { CustomAITools } from '../tools' ;
@@ -83,7 +85,7 @@ export class OracleProvider extends CopilotProvider<OracleConfig> {
8385 super . setup ( ) ;
8486 if ( this . configured ( ) ) {
8587 const { config, endpoint, privateKey } = this . config ;
86- const provider = SessionAuthDetailProvider . init ( config ! , privateKey ! ) ;
88+ const provider = OracleAuthProvider . init ( config ! , privateKey ! ) ;
8789 const client = new GenerativeAiInferenceClient ( {
8890 authenticationDetailsProvider : provider ,
8991 } ) ;
@@ -288,32 +290,55 @@ export class OracleProvider extends CopilotProvider<OracleConfig> {
288290 }
289291}
290292
291- export class SessionAuthDetailProvider
293+ export class OracleAuthProvider
292294 extends SimpleAuthenticationDetailsProvider
293295 implements AuthenticationDetailsProvider , RegionProvider
294296{
297+ // Lightweight local replacement for oci-common's checkNotNull to avoid deep runtime imports in ESM
298+ private static checkNotNull < T > (
299+ value : T | null | undefined ,
300+ message : string
301+ ) : T {
302+ if ( value === null || value === undefined ) {
303+ throw new Error ( message ) ;
304+ }
305+ return value as T ;
306+ }
307+
295308 static init (
296309 config : NonNullable < OracleConfig [ 'config' ] > ,
297310 privateKeyContent : string ,
298311 sessionToken ?: string
299- ) : SessionAuthDetailProvider {
312+ ) : OracleAuthProvider {
300313 const file = ConfigFileReader . parse (
301314 `[DEFAULT]\n${ Object . entries ( config )
302315 . map ( ( [ k , v ] ) => `${ k } =${ v } ` )
303316 . join ( '\n' ) } `,
304317 ConfigFileReader . DEFAULT_PROFILE_NAME
305318 ) ;
306319
307- return new SessionAuthDetailProvider (
308- checkNotNull ( file . get ( 'tenancy' ) , 'missing tenancy in config' ) ,
320+ return new OracleAuthProvider (
321+ OracleAuthProvider . checkNotNull (
322+ file . get ( 'tenancy' ) ,
323+ 'missing tenancy in config'
324+ ) ,
309325 sessionToken
310326 ? ''
311- : checkNotNull ( file . get ( 'user' ) , 'missing user in config' ) ,
312- checkNotNull ( file . get ( 'fingerprint' ) , 'missing fingerprint in config' ) ,
327+ : OracleAuthProvider . checkNotNull (
328+ file . get ( 'user' ) ,
329+ 'missing user in config'
330+ ) ,
331+ OracleAuthProvider . checkNotNull (
332+ file . get ( 'fingerprint' ) ,
333+ 'missing fingerprint in config'
334+ ) ,
313335 privateKeyContent ,
314336 file . get ( 'pass_phrase' ) ,
315- SessionAuthDetailProvider . retrieveRegionFromRegionId (
316- checkNotNull ( file . get ( 'region' ) , 'missing region in config' )
337+ OracleAuthProvider . retrieveRegionFromRegionId (
338+ OracleAuthProvider . checkNotNull (
339+ file . get ( 'region' ) ,
340+ 'missing region in config'
341+ )
317342 ) ,
318343 undefined ,
319344 undefined ,
@@ -328,7 +353,7 @@ export class SessionAuthDetailProvider
328353 region = Region . fromRegionId ( regionId ) ;
329354 if ( ! region ) {
330355 // Proceed by assuming the region id in the config file belongs to OC1 realm.
331- new Logger ( SessionAuthDetailProvider . name ) . warn (
356+ new Logger ( OracleAuthProvider . name ) . warn (
332357 `Falling back to using OC1 realm.`
333358 ) ;
334359 region = Region . register ( regionId , Realm . OC1 ) ;
@@ -343,8 +368,6 @@ export class SessionAuthDetailProvider
343368
344369 // @ts -expect-error
345370 public override setRegion ( regionId : string ) : void {
346- super . setRegion (
347- SessionAuthDetailProvider . retrieveRegionFromRegionId ( regionId )
348- ) ;
371+ super . setRegion ( OracleAuthProvider . retrieveRegionFromRegionId ( regionId ) ) ;
349372 }
350373}
0 commit comments