UNPKG

@o3r/schematics

Version:

Schematics module of the Otter framework

158 lines 6.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getInputComponentName = getInputComponentName; exports.getComponentFolderName = getComponentFolderName; exports.getComponentFileName = getComponentFileName; exports.getComponentSelectorWithoutSuffix = getComponentSelectorWithoutSuffix; exports.getComponentModuleName = getComponentModuleName; exports.getComponentAnalyticsName = getComponentAnalyticsName; exports.getComponentName = getComponentName; exports.getComponentBlockName = getComponentBlockName; exports.getKebabCaseBlockName = getKebabCaseBlockName; exports.getComponentConfigName = getComponentConfigName; exports.getComponentTranslationName = getComponentTranslationName; exports.getComponentContextName = getComponentContextName; exports.getComponentFixtureName = getComponentFixtureName; exports.getComponentConfigKey = getComponentConfigKey; exports.getLibraryNameFromPath = getLibraryNameFromPath; const core_1 = require("@angular-devkit/core"); /** * Returns all elements from the provided component name path * @param componentName */ function getComponentModuleItems(componentName) { return (componentName || '').split('\\/'); } /** * Returns the component name as the last element of the provided component name path * @param componentName */ function getInputComponentName(componentName) { const componentModuleItems = getComponentModuleItems(componentName); return componentModuleItems.at(-1); } /** * returns the component folder name * @param componentName */ function getComponentFolderName(componentName) { const inputComponentName = getInputComponentName(componentName); return core_1.strings.dasherize(inputComponentName).replace(/\s/g, ''); } /** * Returns the component file name * @param componentName * @param componentStructureDef */ function getComponentFileName(componentName, componentStructureDef) { const componentFolderName = getComponentFolderName(componentName); return componentStructureDef ? `${componentFolderName}-${core_1.strings.camelize(componentStructureDef)}` : componentFolderName; } /** * Returns the component selector without suffix * @param componentName * @param prefix */ function getComponentSelectorWithoutSuffix(componentName, prefix) { const selector = getComponentFolderName(componentName); return prefix ? `${prefix.toLowerCase()}-${selector}` : selector; // o3r-air-offer : air-offer } /** * Returns the component module name (e.g. AirOfferModule) * @param componentName * @param componentStructureDef */ function getComponentModuleName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Module`; } /** * Returns the component analytics name (e.g. AirOfferAnalytics) * @param componentName * @param componentStructureDef */ function getComponentAnalyticsName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Analytics`; } /** * Returns the component name (e.g. AirOfferComponent) * @param componentName * @param componentStructureDef */ function getComponentName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Component`; } /** * Returns the component block name (e.g. AirOffer) * @param componentName */ function getComponentBlockName(componentName) { const inputComponentName = getInputComponentName(componentName); return core_1.strings.classify(inputComponentName); } /** * Return the component in kebab-case (e.g. air-offer) * @param blockName */ function getKebabCaseBlockName(blockName) { return core_1.strings.dasherize(blockName); } /** * Returns the component config name (e.g. AirOfferConfig) * @param componentName * @param componentStructureDef */ function getComponentConfigName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Config`; } /** * Returns the component translation name (e.g. AirOfferTranslation) * @param componentName * @param componentStructureDef */ function getComponentTranslationName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Translation`; } /** * Returns the component context name (e.g. AirOfferContext) * @param componentName * @param componentStructureDef */ function getComponentContextName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Context`; } /** * Returns the component fixture name (e.g. AirOfferFixture) * @param componentName * @param componentStructureDef */ function getComponentFixtureName(componentName, componentStructureDef) { const inputComponentName = getInputComponentName(componentName); return `${core_1.strings.classify(inputComponentName)}${core_1.strings.classify(componentStructureDef)}Fixture`; } /** * Returns the component config key name (e.g. AIR_OFFER_CONT or AIR_OFFER_PRES) * @param componentName * @param componentStructureDef */ function getComponentConfigKey(componentName, componentStructureDef) { const componentFileName = getComponentFileName(componentName, componentStructureDef); return `${core_1.strings.underscore(componentFileName).toUpperCase()}`; } /** * Return the library name from path in a monorepos * @param path */ function getLibraryNameFromPath(path) { if (!path) { return null; } const libNameRes = /@[^/@]+\/[^/]+/.exec(path.replace(/\\/g, '/')); return libNameRes && libNameRes[0]; } //# sourceMappingURL=template-property.helper.js.map