UNPKG

@assistant-ui/react

Version:

React components for AI chat.

1 lines 1.6 kB
{"version":3,"sources":["../../src/utils/ProxyConfigProvider.ts"],"sourcesContent":["import {\n type ModelConfigProvider,\n mergeModelConfigs,\n} from \"../types/ModelConfigTypes\";\n\nexport class ProxyConfigProvider implements ModelConfigProvider {\n private _providers = new Set<ModelConfigProvider>();\n\n getModelConfig() {\n return mergeModelConfigs(this._providers);\n }\n\n registerModelConfigProvider(provider: ModelConfigProvider) {\n this._providers.add(provider);\n const unsubscribe = provider.subscribe?.(() => {\n this.notifySubscribers();\n });\n this.notifySubscribers();\n return () => {\n this._providers.delete(provider);\n unsubscribe?.();\n this.notifySubscribers();\n };\n }\n\n private _subscribers = new Set<() => void>();\n\n notifySubscribers() {\n for (const callback of this._subscribers) callback();\n }\n\n subscribe(callback: () => void) {\n this._subscribers.add(callback);\n return () => this._subscribers.delete(callback);\n }\n}\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,OACK;AAEA,IAAM,sBAAN,MAAyD;AAAA,EACtD,aAAa,oBAAI,IAAyB;AAAA,EAElD,iBAAiB;AACf,WAAO,kBAAkB,KAAK,UAAU;AAAA,EAC1C;AAAA,EAEA,4BAA4B,UAA+B;AACzD,SAAK,WAAW,IAAI,QAAQ;AAC5B,UAAM,cAAc,SAAS,YAAY,MAAM;AAC7C,WAAK,kBAAkB;AAAA,IACzB,CAAC;AACD,SAAK,kBAAkB;AACvB,WAAO,MAAM;AACX,WAAK,WAAW,OAAO,QAAQ;AAC/B,oBAAc;AACd,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AAAA,EAEQ,eAAe,oBAAI,IAAgB;AAAA,EAE3C,oBAAoB;AAClB,eAAW,YAAY,KAAK,aAAc,UAAS;AAAA,EACrD;AAAA,EAEA,UAAU,UAAsB;AAC9B,SAAK,aAAa,IAAI,QAAQ;AAC9B,WAAO,MAAM,KAAK,aAAa,OAAO,QAAQ;AAAA,EAChD;AACF;","names":[]}