UNPKG

@expofp/floorplan

Version:

Interactive floor plan library for expos and events

2 lines (1 loc) 1.04 kB
import e from"../tools/logger";export function encodeStringArray(n){if(!n||n.length===0)return"";const o=n.map(r=>encodeURIComponent(r.trim())).join(",");return e.log("URLEncoding: encoding string array:",{original:n,encoded:o}),o}export function decodeStringArray(n){if(!n)return[];try{const o=n.split(",").map(r=>decodeURIComponent(r.trim())).filter(Boolean);return e.log("URLEncoding: decoding string array:",{encoded:n,decoded:o}),o}catch(o){return e.warn("URLEncoding: failed to decode string array:",n,o),[]}}export function encodeString(n){if(!n)return null;const o=encodeURIComponent(n.trim());return e.log("URLEncoding: encoding string:",{original:n,encoded:o}),o}export function decodeString(n){if(!n)return null;try{const o=decodeURIComponent(n.trim());return e.log("URLEncoding: decoding string:",{encoded:n,decoded:o}),o}catch(o){return e.warn("URLEncoding: failed to decode string:",n,o),null}}export function toLowerCaseArray(n){return n.map(o=>o.toLowerCase())}export function toLowerCaseString(n){return n?n.toLowerCase():null}