ohif-viewer/platform/core/src/utils/splitComma.ts

34 lines
954 B
TypeScript

/** Splits a list of strings by commas within the strings */
const splitComma = (strings: string[]): string[] => {
if (!strings) {
return null;
}
for (let i = 0; i < strings.length; i++) {
const comma = strings[i].indexOf(',');
if (comma !== -1) {
const splits = strings[i].split(/,/);
strings.splice(i, 1, ...splits);
}
}
return strings;
};
/**
* Returns an array of the comma split parameters from the given URL search params
* @param lowerCaseKey - lower case search parameter value
* @param params - URLSearchParams
* @returns Array of comma split items matching, or null
*/
const getSplitParam = (
lowerCaseKey: string,
params = new URLSearchParams(window.location.search)
): string[] => {
const sourceKey = [...params.keys()].find(it => it.toLowerCase() === lowerCaseKey);
if (!sourceKey) {
return;
}
return splitComma(params.getAll(sourceKey));
};
export { splitComma, getSplitParam };