@iotize/ionic
Version:
Iotize specific building blocks on top of @ionic/angular.
47 lines • 3.91 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9jb2wtbWV0YS1wYXJhbS1jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pb3RpemUtaW9uaWMvc3JjL2xpYi91dGlsaXR5L3Byb3RvY29sLW1ldGEtcGFyYW0tY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFhO0lBQ2hELElBQUksS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUN0QixPQUFPO1lBQ0wsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsRUFBRTtTQUNULENBQUM7S0FDSDtTQUFNLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtRQUM5QixPQUFPO1lBQ0wsSUFBSSxFQUFFLFNBQVM7U0FDaEIsQ0FBQztLQUNIO1NBQU0sSUFBSSxLQUFLLEtBQUssTUFBTSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFDbEQsT0FBTztZQUNMLElBQUksRUFBRSxTQUFTO1NBQ2hCLENBQUM7S0FDSDtTQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNyQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUU7Z0JBQ0osR0FBRyxFQUFFLEtBQUs7YUFDWDtTQUNGLENBQUM7S0FDSDtTQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2xFLE9BQU87WUFDTCxJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUU7Z0JBQ0osR0FBRyxFQUFFLEtBQUs7YUFDWDtTQUNGLENBQUM7S0FDSDtTQUFNO1FBQ0wsSUFBSTtZQUNGLE9BQU8sb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEM7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ25DO0tBQ0Y7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQWE7SUFDaEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm90b2NvbE1ldGEgfSBmcm9tICcuLi9leHRlbnNpb25zL3Byb3RvY29sLWluZm8nO1xuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nVG9Qcm90b2NvbE1ldGEodmFsdWU6IHN0cmluZyk6IFByb3RvY29sTWV0YSB8IHVuZGVmaW5lZCB7XG4gIGlmICh2YWx1ZSA9PT0gJ2lmcmFtZScpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ2lmcmFtZScsXG4gICAgICBpbmZvOiB7fSxcbiAgICB9O1xuICB9IGVsc2UgaWYgKHZhbHVlID09PSAnd2VidmlldycpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ3dlYnZpZXcnLFxuICAgIH07XG4gIH0gZWxzZSBpZiAodmFsdWUgPT09ICdtb2NrJyB8fCB2YWx1ZSA9PT0gJ3ZpcnR1YWwnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6ICd2aXJ0dWFsJyxcbiAgICB9O1xuICB9IGVsc2UgaWYgKHZhbHVlLnN0YXJ0c1dpdGgoJ3RjcDovLycpKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6ICdzb2NrZXQnLFxuICAgICAgaW5mbzoge1xuICAgICAgICB1cmw6IHZhbHVlLFxuICAgICAgfSxcbiAgICB9O1xuICB9IGVsc2UgaWYgKHZhbHVlLnN0YXJ0c1dpdGgoJ3dzOi8vJykgfHwgdmFsdWUuc3RhcnRzV2l0aCgnd3NzOi8vJykpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ3dlYnNvY2tldCcsXG4gICAgICBpbmZvOiB7XG4gICAgICAgIHVybDogdmFsdWUsXG4gICAgICB9LFxuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBiaW5hcnlUb1Byb3RvY29sTWV0YSh2YWx1ZSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ05PVCBBIEJJTkFSWScsIGVycik7XG4gICAgfVxuICB9XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiaW5hcnlUb1Byb3RvY29sTWV0YSh2YWx1ZTogc3RyaW5nKTogUHJvdG9jb2xNZXRhIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UoYXRvYih2YWx1ZSkpO1xufVxuIl19