UNPKG

bobflux-gen

Version:

Generator for monkey files in bobflux application.

30 lines (25 loc) 1.03 kB
export function getStatePrefixFromKeyPrefix(prefix: string, propName: string): string { let prefixex = prefix.split('.').reverse(); let s = prefixex.pop(); while (prefixex.length > 0) s += firstToUpper(prefixex.pop()); s += firstToUpper(propName); return s; } export function removeIfacePrefix(propName: string, prefix: string = 'I'): string { return propName.slice(1); } export function removePostfix(propName: string, postfix: string) { let expectedIndex = propName.length - postfix.length; return propName.toLowerCase().lastIndexOf(postfix.toLowerCase()) === expectedIndex ? propName.slice(0, expectedIndex) : propName; } function firstToUpper(text: string): string { return text.charAt(0).toUpperCase() + text.slice(1); } export function createDomString(cursorKey: string, stateProperty: string): string { let obj = null; cursorKey.split('.').reverse().forEach(k => { obj = obj === null ? `{ ${k}: ${stateProperty} }` : `{ ${k}: ${obj} }`; }); return obj; }