Rev 3692 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import htmlParse from 'html-react-parser';const jsonToParams = (data = {}) => {if (!data) {return false;}const formBody = [];for (const property in data) {const encodedKey = encodeURIComponent(property);// @ts-ignoreconst encodedValue = encodeURIComponent(data[property]);formBody.push(encodedKey + '=' + encodedValue);}const _formBody = formBody.join('&');return _formBody;};const filterItems = (query = '', items = []) => {if (!query) {return items;}return items.filter((conversation) =>conversation.name.toLowerCase().includes(query.toLowerCase()));};const debounce = (func, timeout = 300) => {let timer;return (...args) => {clearTimeout(timer);timer = setTimeout(() => {func.apply(this, args);}, timeout);};};const camalize = function camalize(str) {return str.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (m, chr) => chr.toUpperCase());};const scrollToBottom = (element) => {if (!element.current) {return false;}element.scrollTop = element.scrollHeight * 9;};const formatObjectToArray = (object) => {if (!object) return [];if (Array.isArray(object)) return object;return Object.entries(object).map(([value, label]) => ({ label, value }));};const isPromise = (obj) => {return ((!!obj && obj[Symbol.toStringTag] === 'Promise') || obj[Symbol.toStringTag] === 'AsyncFunction');};const parse = (str) => {if (typeof str !== 'string') return '';const stripText = str.replace(/<p>|<\/p>/g, '');return htmlParse(stripText);};export {jsonToParams,debounce,scrollToBottom,filterItems,camalize,formatObjectToArray,isPromise,parse};