UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

68 lines 9.32 kB
import { ImportToAdd } from './import-to-add'; import { classify, dasherize } from './angular-cli-devkit-core-strings'; export class ViewClassInfo extends ImportToAdd { /** * for `caseView` located at route `cases/all/` this is equal to `cases-all` */ prefix; /** * for `caseView` located at route `cases/all/` this is equal to `CasesAllCaseView` */ nameWithoutComponent; constructor(path, viewType, customComponentName) { super('', ''); if (!customComponentName) { this.prefix = ViewClassInfo.convertPathToClassNamePrefix(path); const classSuffix = ViewClassInfo.resolveClassSuffixForView(viewType); this.nameWithoutComponent = `${classify(this.prefix)}${classSuffix}`; this.fileImportPath = `./views/${path}/${this.prefix}-${dasherize(classSuffix)}.component`; } else { this.prefix = ''; this.nameWithoutComponent = classify(customComponentName); this.fileImportPath = `./views/${path}/${dasherize(customComponentName)}.component`; } this.className = `${this.nameWithoutComponent}Component`; } static convertPathToClassNamePrefix(path) { const regexDash = /-/g; return path.replace(regexDash, '_').replace(/\//g, '-').toLocaleLowerCase(); } static resolveClassSuffixForView(view) { switch (view) { case 'login': return 'Login'; case 'tabView': return 'TabView'; case 'taskView': return 'TaskView'; case 'caseView': return 'CaseView'; case 'emptyView': return 'EmptyView'; case 'sidenavView': return 'SidenavView'; case 'doubleDrawerView': return 'DoubleDrawerView'; case 'toolbarView': return 'ToolbarView'; case 'sidenavAndToolbarView': return 'SidenavAndToolbarView'; case 'groupView': return 'GroupView'; case 'dashboard': return 'Dashboard'; case 'treeCaseView': return 'TreeCaseView'; case 'workflowView': return 'WorkflowView'; case 'roleAssignmentView': return 'RoleAssignmentView'; case 'ldapRoleAssignmentView': return 'LdapRoleAssignmentView'; default: throw new Error(`Unknown view type '${view}'`); } } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1jbGFzcy1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2NvbW1vbnMvdmlldy1jbGFzcy1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRXRFLE1BQU0sT0FBTyxhQUFjLFNBQVEsV0FBVztJQUUxQzs7T0FFRztJQUNJLE1BQU0sQ0FBUztJQUN0Qjs7T0FFRztJQUNJLG9CQUFvQixDQUFTO0lBVXBDLFlBQVksSUFBWSxFQUFFLFFBQWdCLEVBQUUsbUJBQTRCO1FBQ3BFLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDZCxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0QsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsV0FBVyxFQUFFLENBQUM7WUFDckUsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDO1NBQzlGO2FBQU07WUFDSCxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLElBQUksSUFBSSxTQUFTLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDO1NBQ3ZGO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsV0FBVyxDQUFDO0lBQzdELENBQUM7SUFFTyxNQUFNLENBQUMsNEJBQTRCLENBQUMsSUFBWTtRQUNwRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDaEYsQ0FBQztJQUVPLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxJQUFZO1FBQ2pELFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxPQUFPO2dCQUNSLE9BQU8sT0FBTyxDQUFDO1lBQ25CLEtBQUssU0FBUztnQkFDVixPQUFPLFNBQVMsQ0FBQztZQUNyQixLQUFLLFVBQVU7Z0JBQ1gsT0FBTyxVQUFVLENBQUM7WUFDdEIsS0FBSyxVQUFVO2dCQUNYLE9BQU8sVUFBVSxDQUFDO1lBQ3RCLEtBQUssV0FBVztnQkFDWixPQUFPLFdBQVcsQ0FBQztZQUN2QixLQUFLLGFBQWE7Z0JBQ2QsT0FBTyxhQUFhLENBQUM7WUFDekIsS0FBSyxrQkFBa0I7Z0JBQ25CLE9BQU8sa0JBQWtCLENBQUM7WUFDOUIsS0FBSyxhQUFhO2dCQUNkLE9BQU8sYUFBYSxDQUFDO1lBQ3pCLEtBQUssdUJBQXVCO2dCQUN4QixPQUFPLHVCQUF1QixDQUFDO1lBQ25DLEtBQUssV0FBVztnQkFDWixPQUFPLFdBQVcsQ0FBQztZQUN2QixLQUFLLFdBQVc7Z0JBQ1osT0FBTyxXQUFXLENBQUM7WUFDdkIsS0FBSyxjQUFjO2dCQUNmLE9BQU8sY0FBYyxDQUFDO1lBQzFCLEtBQUssY0FBYztnQkFDZixPQUFPLGNBQWMsQ0FBQztZQUMxQixLQUFLLG9CQUFvQjtnQkFDckIsT0FBTyxvQkFBb0IsQ0FBQztZQUNoQyxLQUFLLHdCQUF3QjtnQkFDekIsT0FBTyx3QkFBd0IsQ0FBQztZQUNwQztnQkFDSSxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixJQUFJLEdBQUcsQ0FBQyxDQUFDO1NBQ3REO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbXBvcnRUb0FkZH0gZnJvbSAnLi9pbXBvcnQtdG8tYWRkJztcbmltcG9ydCB7Y2xhc3NpZnksIGRhc2hlcml6ZX0gZnJvbSAnLi9hbmd1bGFyLWNsaS1kZXZraXQtY29yZS1zdHJpbmdzJztcblxuZXhwb3J0IGNsYXNzIFZpZXdDbGFzc0luZm8gZXh0ZW5kcyBJbXBvcnRUb0FkZCB7XG5cbiAgICAvKipcbiAgICAgKiBmb3IgYGNhc2VWaWV3YCBsb2NhdGVkIGF0IHJvdXRlIGBjYXNlcy9hbGwvYCB0aGlzIGlzIGVxdWFsIHRvIGBjYXNlcy1hbGxgXG4gICAgICovXG4gICAgcHVibGljIHByZWZpeDogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIGZvciBgY2FzZVZpZXdgIGxvY2F0ZWQgYXQgcm91dGUgYGNhc2VzL2FsbC9gIHRoaXMgaXMgZXF1YWwgdG8gYENhc2VzQWxsQ2FzZVZpZXdgXG4gICAgICovXG4gICAgcHVibGljIG5hbWVXaXRob3V0Q29tcG9uZW50OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogZm9yIGBjYXNlVmlld2AgbG9jYXRlZCBhdCByb3V0ZSBgY2FzZXMvYWxsL2AgdGhpcyBpcyBlcXVhbCB0byBgQ2FzZXNBbGxDYXNlVmlld0NvbXBvbmVudGBcbiAgICAgKi9cbiAgICBkZWNsYXJlIHB1YmxpYyBjbGFzc05hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBmb3IgYGNhc2VWaWV3YCBsb2NhdGVkIGF0IHJvdXRlIGBjYXNlcy9hbGwvYCB0aGlzIGlzIGVxdWFsIHRvIGAuL3ZpZXdzL2Nhc2VzL2FsbC9jYXNlcy1hbGwtY2FzZS12aWV3LmNvbXBvbmVudGBcbiAgICAgKi9cbiAgICBkZWNsYXJlIHB1YmxpYyBmaWxlSW1wb3J0UGF0aDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocGF0aDogc3RyaW5nLCB2aWV3VHlwZTogc3RyaW5nLCBjdXN0b21Db21wb25lbnROYW1lPzogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKCcnLCAnJyk7XG4gICAgICAgIGlmICghY3VzdG9tQ29tcG9uZW50TmFtZSkge1xuICAgICAgICAgICAgdGhpcy5wcmVmaXggPSBWaWV3Q2xhc3NJbmZvLmNvbnZlcnRQYXRoVG9DbGFzc05hbWVQcmVmaXgocGF0aCk7XG4gICAgICAgICAgICBjb25zdCBjbGFzc1N1ZmZpeCA9IFZpZXdDbGFzc0luZm8ucmVzb2x2ZUNsYXNzU3VmZml4Rm9yVmlldyh2aWV3VHlwZSk7XG4gICAgICAgICAgICB0aGlzLm5hbWVXaXRob3V0Q29tcG9uZW50ID0gYCR7Y2xhc3NpZnkodGhpcy5wcmVmaXgpfSR7Y2xhc3NTdWZmaXh9YDtcbiAgICAgICAgICAgIHRoaXMuZmlsZUltcG9ydFBhdGggPSBgLi92aWV3cy8ke3BhdGh9LyR7dGhpcy5wcmVmaXh9LSR7ZGFzaGVyaXplKGNsYXNzU3VmZml4KX0uY29tcG9uZW50YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucHJlZml4ID0gJyc7XG4gICAgICAgICAgICB0aGlzLm5hbWVXaXRob3V0Q29tcG9uZW50ID0gY2xhc3NpZnkoY3VzdG9tQ29tcG9uZW50TmFtZSk7XG4gICAgICAgICAgICB0aGlzLmZpbGVJbXBvcnRQYXRoID0gYC4vdmlld3MvJHtwYXRofS8ke2Rhc2hlcml6ZShjdXN0b21Db21wb25lbnROYW1lKX0uY29tcG9uZW50YDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsYXNzTmFtZSA9IGAke3RoaXMubmFtZVdpdGhvdXRDb21wb25lbnR9Q29tcG9uZW50YDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBjb252ZXJ0UGF0aFRvQ2xhc3NOYW1lUHJlZml4KHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJlZ2V4RGFzaCA9IC8tL2c7XG4gICAgICAgIHJldHVybiBwYXRoLnJlcGxhY2UocmVnZXhEYXNoLCAnXycpLnJlcGxhY2UoL1xcLy9nLCAnLScpLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVzb2x2ZUNsYXNzU3VmZml4Rm9yVmlldyh2aWV3OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBzd2l0Y2ggKHZpZXcpIHtcbiAgICAgICAgICAgIGNhc2UgJ2xvZ2luJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ0xvZ2luJztcbiAgICAgICAgICAgIGNhc2UgJ3RhYlZpZXcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnVGFiVmlldyc7XG4gICAgICAgICAgICBjYXNlICd0YXNrVmlldyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdUYXNrVmlldyc7XG4gICAgICAgICAgICBjYXNlICdjYXNlVmlldyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdDYXNlVmlldyc7XG4gICAgICAgICAgICBjYXNlICdlbXB0eVZpZXcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnRW1wdHlWaWV3JztcbiAgICAgICAgICAgIGNhc2UgJ3NpZGVuYXZWaWV3JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ1NpZGVuYXZWaWV3JztcbiAgICAgICAgICAgIGNhc2UgJ2RvdWJsZURyYXdlclZpZXcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnRG91YmxlRHJhd2VyVmlldyc7XG4gICAgICAgICAgICBjYXNlICd0b29sYmFyVmlldyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdUb29sYmFyVmlldyc7XG4gICAgICAgICAgICBjYXNlICdzaWRlbmF2QW5kVG9vbGJhclZpZXcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnU2lkZW5hdkFuZFRvb2xiYXJWaWV3JztcbiAgICAgICAgICAgIGNhc2UgJ2dyb3VwVmlldyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdHcm91cFZpZXcnO1xuICAgICAgICAgICAgY2FzZSAnZGFzaGJvYXJkJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ0Rhc2hib2FyZCc7XG4gICAgICAgICAgICBjYXNlICd0cmVlQ2FzZVZpZXcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnVHJlZUNhc2VWaWV3JztcbiAgICAgICAgICAgIGNhc2UgJ3dvcmtmbG93Vmlldyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdXb3JrZmxvd1ZpZXcnO1xuICAgICAgICAgICAgY2FzZSAncm9sZUFzc2lnbm1lbnRWaWV3JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ1JvbGVBc3NpZ25tZW50Vmlldyc7XG4gICAgICAgICAgICBjYXNlICdsZGFwUm9sZUFzc2lnbm1lbnRWaWV3JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ0xkYXBSb2xlQXNzaWdubWVudFZpZXcnO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gdmlldyB0eXBlICcke3ZpZXd9J2ApO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19