- public static isProtocolSupported = (protocol: Protocol, version: ProtocolVersion): boolean =>
- Object.values(Protocol).includes(protocol) && Object.values(ProtocolVersion).includes(version);
+ public static isProtocolAndVersionSupported = (protocolStr: string): boolean => {
+ const [protocol, version] = UIServiceUtils.getProtocolAndVersion(protocolStr);
+ return (
+ Object.values(Protocol).includes(protocol) === true &&
+ Object.values(ProtocolVersion).includes(version) === true
+ );
+ };
+
+ public static getProtocolAndVersion = (protocolStr: string): [Protocol, ProtocolVersion] => {
+ const protocolIndex = protocolStr.indexOf(Protocol.UI);
+ const protocol = protocolStr.substring(
+ protocolIndex,
+ protocolIndex + Protocol.UI.length
+ ) as Protocol;
+ const version = protocolStr.substring(protocolIndex + Protocol.UI.length) as ProtocolVersion;
+ return [protocol, version];
+ };