mirror of https://github.com/Budibase/budibase.git
3 changed files with 41 additions and 7 deletions
@ -0,0 +1,34 @@ |
|||
import { walkProps } from "./storeUtils" |
|||
import { get_capitalised_name } from "../helpers" |
|||
|
|||
export default function(component, state) { |
|||
const screen = |
|||
state.currentFrontEndType === "screen" ? state.currentPreviewItem : null |
|||
const page = state.pages[state.currentPageName] |
|||
const capitalised = get_capitalised_name(component) |
|||
|
|||
const matchingComponents = [] |
|||
|
|||
if (screen) |
|||
walkProps(screen.props, c => { |
|||
if ((c._instanceName || "").startsWith(capitalised)) { |
|||
matchingComponents.push(c._instanceName) |
|||
} |
|||
}) |
|||
|
|||
walkProps(page.props, c => { |
|||
if ((c._instanceName || "").startsWith(capitalised)) { |
|||
matchingComponents.push(c._instanceName) |
|||
} |
|||
}) |
|||
|
|||
let index = 0 |
|||
let name |
|||
while (!name) { |
|||
const tryName = `${capitalised} ${index}` |
|||
if (!matchingComponents.includes(tryName)) name = tryName |
|||
index++ |
|||
} |
|||
|
|||
return name |
|||
} |
|||
Loading…
Reference in new issue