11import type { ChannelId } from "../../channel-id.types.js" ;
2- import { normalizeChannelMeta } from "../../meta-normalization.js" ;
3- import type { ChannelPlugin } from "../../types.js" ;
4- import {
5- getBundledChannelCatalogEntry ,
6- getBundledChannelPlugin ,
7- listBundledChannelPluginIds ,
8- listBundledChannelPlugins ,
9- } from "./bundled-channel-plugin-loader.js" ;
10-
11- type PluginContractEntry = {
12- id : string ;
13- plugin : Pick < ChannelPlugin , "id" | "meta" | "capabilities" | "config" > ;
14- } ;
2+ import { listBundledChannelPluginIds } from "./bundled-channel-plugin-loader.js" ;
153
164type PluginContractRef = {
175 id : ChannelId ;
186} ;
197
20- function toPluginContractEntry ( plugin : ChannelPlugin ) : PluginContractEntry {
21- const existingMeta = getBundledChannelCatalogEntry ( plugin . id ) ?. channel ;
22- return {
23- id : plugin . id ,
24- plugin : {
25- ...plugin ,
26- meta : normalizeChannelMeta ( { id : plugin . id , meta : plugin . meta , existing : existingMeta } ) ,
27- } ,
28- } ;
29- }
30-
318function getBundledChannelPluginIdsForShard ( params : {
329 shardIndex : number ;
3310 shardCount : number ;
@@ -37,20 +14,6 @@ function getBundledChannelPluginIdsForShard(params: {
3714 ) ;
3815}
3916
40- export function getPluginContractRegistry ( ) : PluginContractEntry [ ] {
41- return listBundledChannelPlugins ( ) . map ( toPluginContractEntry ) ;
42- }
43-
44- export function getPluginContractRegistryShard ( params : {
45- shardIndex : number ;
46- shardCount : number ;
47- } ) : PluginContractEntry [ ] {
48- return getBundledChannelPluginIdsForShard ( params ) . flatMap ( ( id ) => {
49- const plugin = getBundledChannelPlugin ( id ) ;
50- return plugin ? [ toPluginContractEntry ( plugin ) ] : [ ] ;
51- } ) ;
52- }
53-
5417export function getPluginContractRegistryShardRefs ( params : {
5518 shardIndex : number ;
5619 shardCount : number ;
0 commit comments