@iotize/ionic
Version:
Iotize specific building blocks on top of @ionic/angular.
47 lines • 3.97 kB
JavaScript
export function stringToProtocolMeta(value) {
if (value === 'iframe') {
return {
type: 'iframe',
info: {},
};
}
else if (value === 'webview') {
return {
type: 'webview',
};
}
else if (value === 'mock' || value === 'virtual') {
return {
type: 'virtual',
};
}
else if (value.startsWith('tcp://')) {
return {
type: 'socket',
info: {
url: value,
},
};
}
else if (value.startsWith('ws://') || value.startsWith('wss://')) {
return {
type: 'websocket',
info: {
url: value,
},
};
}
else {
try {
return binaryToProtocolMeta(value);
}
catch (err) {
console.warn('NOT A BINARY', err);
}
}
return undefined;
}
export function binaryToProtocolMeta(value) {
return JSON.parse(atob(value));
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9jb2wtbWV0YS1wYXJhbS1jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pb3RpemUtaW9uaWMvc3JjL2xpYi91dGlsaXR5L3Byb3RvY29sLW1ldGEtcGFyYW0tY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFhO0lBQ2hELElBQUksS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3ZCLE9BQU87WUFDTCxJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxFQUFFO1NBQ1QsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUMvQixPQUFPO1lBQ0wsSUFBSSxFQUFFLFNBQVM7U0FDaEIsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLEtBQUssS0FBSyxNQUFNLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ25ELE9BQU87WUFDTCxJQUFJLEVBQUUsU0FBUztTQUNoQixDQUFDO0lBQ0osQ0FBQztTQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ3RDLE9BQU87WUFDTCxJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRTtnQkFDSixHQUFHLEVBQUUsS0FBSzthQUNYO1NBQ0YsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ25FLE9BQU87WUFDTCxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUU7Z0JBQ0osR0FBRyxFQUFFLEtBQUs7YUFDWDtTQUNGLENBQUM7SUFDSixDQUFDO1NBQU0sQ0FBQztRQUNOLElBQUksQ0FBQztZQUNILE9BQU8sb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsS0FBYTtJQUNoRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3RvY29sTWV0YSB9IGZyb20gJy4uL2V4dGVuc2lvbnMvcHJvdG9jb2wtaW5mbyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdUb1Byb3RvY29sTWV0YSh2YWx1ZTogc3RyaW5nKTogUHJvdG9jb2xNZXRhIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHZhbHVlID09PSAnaWZyYW1lJykge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAnaWZyYW1lJyxcbiAgICAgIGluZm86IHt9LFxuICAgIH07XG4gIH0gZWxzZSBpZiAodmFsdWUgPT09ICd3ZWJ2aWV3Jykge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAnd2VidmlldycsXG4gICAgfTtcbiAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gJ21vY2snIHx8IHZhbHVlID09PSAndmlydHVhbCcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ3ZpcnR1YWwnLFxuICAgIH07XG4gIH0gZWxzZSBpZiAodmFsdWUuc3RhcnRzV2l0aCgndGNwOi8vJykpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ3NvY2tldCcsXG4gICAgICBpbmZvOiB7XG4gICAgICAgIHVybDogdmFsdWUsXG4gICAgICB9LFxuICAgIH07XG4gIH0gZWxzZSBpZiAodmFsdWUuc3RhcnRzV2l0aCgnd3M6Ly8nKSB8fCB2YWx1ZS5zdGFydHNXaXRoKCd3c3M6Ly8nKSkge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAnd2Vic29ja2V0JyxcbiAgICAgIGluZm86IHtcbiAgICAgICAgdXJsOiB2YWx1ZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfSBlbHNlIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGJpbmFyeVRvUHJvdG9jb2xNZXRhKHZhbHVlKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUud2FybignTk9UIEEgQklOQVJZJywgZXJyKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJpbmFyeVRvUHJvdG9jb2xNZXRhKHZhbHVlOiBzdHJpbmcpOiBQcm90b2NvbE1ldGEge1xuICByZXR1cm4gSlNPTi5wYXJzZShhdG9iKHZhbHVlKSk7XG59XG4iXX0=