ui/helpers/aggregateId.js (12 lines of code) (raw):

export const escapeId = (id) => id.replace(/(:|\[|\]|\?|,|\.|\s+)/g, '-'); export const getPlatformRowId = ( repoName, pushId, platformName, platformOptions, ) => // ensure there are no invalid characters in the id (like spaces, etc) escapeId(`${repoName}${pushId}${platformName}${platformOptions}`); export const getPushTableId = (repoName, pushId, revision) => escapeId(`${repoName}${pushId}${revision}`); export const getGroupMapKey = (pushId, grSymbol, grTier, plName, plOpt) => // Build string key for groupMap entries escapeId(`${pushId}${grSymbol}${grTier}${plName}${plOpt}`);