@@ -6,6 +6,7 @@ import {RpcCodec} from '../../common/codec/RpcCodec';
66
77export interface SetupCodecsOpts {
88 skipJson2 ?: boolean ;
9+ onlyCommon ?: boolean ;
910}
1011
1112export const setupCodecs = ( opts : SetupCodecsOpts = { } ) => {
@@ -15,36 +16,45 @@ export const setupCodecs = (opts: SetupCodecsOpts = {}) => {
1516 const list : RpcCodec [ ] = [
1617 new RpcCodec ( compact , json , json ) ,
1718 new RpcCodec ( compact , cbor , cbor ) ,
18- new RpcCodec ( compact , msgpack , msgpack ) ,
19- new RpcCodec ( compact , json , cbor ) ,
20- new RpcCodec ( compact , json , msgpack ) ,
21- new RpcCodec ( compact , cbor , json ) ,
22- new RpcCodec ( compact , cbor , msgpack ) ,
23- new RpcCodec ( compact , msgpack , json ) ,
24- new RpcCodec ( compact , msgpack , cbor ) ,
2519 new RpcCodec ( binary , cbor , cbor ) ,
26- new RpcCodec ( binary , msgpack , msgpack ) ,
27- new RpcCodec ( binary , json , json ) ,
28- new RpcCodec ( binary , json , cbor ) ,
29- new RpcCodec ( binary , json , msgpack ) ,
30- new RpcCodec ( binary , cbor , json ) ,
31- new RpcCodec ( binary , cbor , msgpack ) ,
32- new RpcCodec ( binary , msgpack , json ) ,
33- new RpcCodec ( binary , msgpack , cbor ) ,
3420 ] ;
35- if ( ! opts . skipJson2 ) {
36- list . push ( new RpcCodec ( jsonRpc2 , json , json ) ) ;
37- list . push ( new RpcCodec ( jsonRpc2 , cbor , cbor ) ) ;
38- list . push ( new RpcCodec ( jsonRpc2 , msgpack , msgpack ) ) ;
39- list . push ( new RpcCodec ( jsonRpc2 , json , cbor ) ) ;
40- list . push ( new RpcCodec ( jsonRpc2 , json , msgpack ) ) ;
41- list . push ( new RpcCodec ( jsonRpc2 , cbor , json ) ) ;
42- list . push ( new RpcCodec ( jsonRpc2 , cbor , msgpack ) ) ;
43- list . push ( new RpcCodec ( jsonRpc2 , msgpack , json ) ) ;
44- list . push ( new RpcCodec ( jsonRpc2 , msgpack , cbor ) ) ;
21+ if ( ! opts . onlyCommon ) {
22+ list . push ( new RpcCodec ( compact , msgpack , msgpack ) ) ;
23+ list . push ( new RpcCodec ( compact , json , cbor ) ) ;
24+ list . push ( new RpcCodec ( compact , json , msgpack ) ) ;
25+ list . push ( new RpcCodec ( compact , cbor , json ) ) ;
26+ list . push ( new RpcCodec ( compact , cbor , msgpack ) ) ;
27+ list . push ( new RpcCodec ( compact , msgpack , json ) ) ;
28+ list . push ( new RpcCodec ( compact , msgpack , cbor ) ) ;
29+ list . push ( new RpcCodec ( binary , msgpack , msgpack ) ) ;
30+ list . push ( new RpcCodec ( binary , json , json ) ) ;
31+ list . push ( new RpcCodec ( binary , json , cbor ) ) ;
32+ list . push ( new RpcCodec ( binary , json , msgpack ) ) ;
33+ list . push ( new RpcCodec ( binary , cbor , json ) ) ;
34+ list . push ( new RpcCodec ( binary , cbor , msgpack ) ) ;
35+ list . push ( new RpcCodec ( binary , msgpack , json ) ) ;
36+ list . push ( new RpcCodec ( binary , msgpack , cbor ) ) ;
37+ if ( ! opts . skipJson2 ) {
38+ list . push ( new RpcCodec ( jsonRpc2 , json , json ) ) ;
39+ list . push ( new RpcCodec ( jsonRpc2 , cbor , cbor ) ) ;
40+ list . push ( new RpcCodec ( jsonRpc2 , msgpack , msgpack ) ) ;
41+ list . push ( new RpcCodec ( jsonRpc2 , json , cbor ) ) ;
42+ list . push ( new RpcCodec ( jsonRpc2 , json , msgpack ) ) ;
43+ list . push ( new RpcCodec ( jsonRpc2 , cbor , json ) ) ;
44+ list . push ( new RpcCodec ( jsonRpc2 , cbor , msgpack ) ) ;
45+ list . push ( new RpcCodec ( jsonRpc2 , msgpack , json ) ) ;
46+ list . push ( new RpcCodec ( jsonRpc2 , msgpack , cbor ) ) ;
47+ }
4548 }
4649 return {
4750 codecs,
4851 list,
4952 } ;
5053} ;
54+
55+ export const cborCodec = ( ) => {
56+ const codecs = new RpcCodecs ( new Codecs ( new Writer ( ) ) , new RpcMessageCodecs ( ) ) ;
57+ const { binary} = codecs . messages ;
58+ const { cbor} = codecs . value ;
59+ return new RpcCodec ( binary , cbor , cbor ) ;
60+ } ;
0 commit comments