UNPKG

@atlaskit/eslint-plugin-design-system

Version:

The essential plugin for use with the Atlassian Design System.

28 lines (27 loc) 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getUniqueButtonItemName = void 0; var _hasImportOfName = require("./has-import-of-name"); var getUniqueButtonItemName = exports.getUniqueButtonItemName = function getUniqueButtonItemName(menuNode, importDeclarations) { // Remove menu import node from array var allImportDeclarationsButMenu = importDeclarations.filter(function (i) { return i !== menuNode; }); var currentButtonItemNameExistsOtherThanMenu = allImportDeclarationsButMenu.reduce(function (acc, importNode) { return acc || (0, _hasImportOfName.hasImportOfName)(importNode, 'ButtonItem'); }, false); if (currentButtonItemNameExistsOtherThanMenu) { var suffix = 1; while (currentButtonItemNameExistsOtherThanMenu) { suffix += 1; currentButtonItemNameExistsOtherThanMenu = allImportDeclarationsButMenu.reduce(function (acc, importNode) { return acc || (0, _hasImportOfName.hasImportOfName)(importNode, "ButtonItem".concat(suffix)); }, false); } return "ButtonItem".concat(suffix); } else { return 'ButtonItem'; } };