in GatewayPluginExample/Ux/gulps/gulp-svg-code/svg-code-convert.ts [113:135]
private createStructure(collection: { [index: string]: any }, pathPrefix: string): any {
let root = {};
let keys = Object.keys(collection).sort((left, right) => left.toLowerCase().localeCompare(right.toLowerCase()));
for (let key of keys) {
let shortName = key.substr(0, key.length - '.svg'.length);
shortName = this.replaceAll(shortName.substr(pathPrefix.length + 1), '-', '_').toLowerCase();
let segments = shortName.split('\\');
let current = root;
for (let index = 0; index < segments.length - 1; index++) {
let segment = segments[index];
if (current.hasOwnProperty(segment)) {
current = current[segment];
} else {
current[segment] = {};
current = current[segment];
}
}
current[segments[segments.length - 1]] = collection[key];
}
return root;
}