Update cli.ts
This commit is contained in:
+14
-6
@@ -146,7 +146,7 @@ async function renderConfigArrayStructureSelector(checker:api.ODChecker,backFn:(
|
|||||||
if (!structure.options.propertyChecker) return await backFn()
|
if (!structure.options.propertyChecker) return await backFn()
|
||||||
|
|
||||||
const propertyName = structure.options.cliDisplayPropertyName ?? "index"
|
const propertyName = structure.options.cliDisplayPropertyName ?? "index"
|
||||||
const answer = await terminal.singleColumnMenu([
|
const answer = await terminal.singleColumnMenu(data.length < 1 ? ["Add "+propertyName] : [
|
||||||
"Add "+propertyName,
|
"Add "+propertyName,
|
||||||
"Edit "+propertyName,
|
"Edit "+propertyName,
|
||||||
"Move "+propertyName,
|
"Move "+propertyName,
|
||||||
@@ -211,12 +211,11 @@ async function renderconfigArrayStructureMoveSelector(checker:api.ODChecker,back
|
|||||||
}).promise
|
}).promise
|
||||||
|
|
||||||
if (dataAnswer.canceled) return await backFn()
|
if (dataAnswer.canceled) return await backFn()
|
||||||
const subData = data[dataAnswer.selectedIndex]
|
|
||||||
|
|
||||||
renderHeader([...path,dataAnswer.selectedIndex])
|
renderHeader([...path,dataAnswer.selectedIndex])
|
||||||
terminal(ansis.bold.green("Please select the position you would like to move to.\n")+ansis.italic.gray("(use arrow keys to navigate, go back using escape)\n"))
|
terminal(ansis.bold.green("Please select the position you would like to move to.\n")+ansis.italic.gray("(use arrow keys to navigate, go back using escape)\n"))
|
||||||
|
|
||||||
const moveAnswer = await terminal.singleColumnMenu([...data.map((d,i) => "Position "+(i+1)),"Last Position"],{
|
const moveAnswer = await terminal.singleColumnMenu(data.map((d,i) => "Position "+(i+1)),{
|
||||||
leftPadding:"> ",
|
leftPadding:"> ",
|
||||||
style:terminal.cyan,
|
style:terminal.cyan,
|
||||||
selectedStyle:terminal.bgDefaultColor.bold,
|
selectedStyle:terminal.bgDefaultColor.bold,
|
||||||
@@ -226,7 +225,14 @@ async function renderconfigArrayStructureMoveSelector(checker:api.ODChecker,back
|
|||||||
}).promise
|
}).promise
|
||||||
|
|
||||||
if (moveAnswer.canceled) return await renderconfigArrayStructureMoveSelector(checker,backFn,arrayStructure,structure,data,parent,parentIndex,path)
|
if (moveAnswer.canceled) return await renderconfigArrayStructureMoveSelector(checker,backFn,arrayStructure,structure,data,parent,parentIndex,path)
|
||||||
console.log("move from:",dataAnswer.selectedIndex,"to:",moveAnswer.selectedIndex)
|
|
||||||
|
const subData = data[dataAnswer.selectedIndex]
|
||||||
|
const slicedData = [...data.slice(0,dataAnswer.selectedIndex),...data.slice(dataAnswer.selectedIndex+1)]
|
||||||
|
const insertedData = [...slicedData.slice(0,moveAnswer.selectedIndex),subData,...slicedData.slice(moveAnswer.selectedIndex)]
|
||||||
|
insertedData.forEach((d,i) => data[i] = d)
|
||||||
|
terminal.bold.blue("\n\n✅ Property moved succesfully!")
|
||||||
|
await utilities.timer(400)
|
||||||
|
await backFn()
|
||||||
}
|
}
|
||||||
|
|
||||||
async function renderconfigArrayStructureRemoveSelector(checker:api.ODChecker,backFn:(() => api.ODPromiseVoid),arrayStructure:api.ODCheckerArrayStructure,structure:api.ODCheckerStructure,data:any[],parent:object,parentIndex:string|number,path:(string|number)[]){
|
async function renderconfigArrayStructureRemoveSelector(checker:api.ODChecker,backFn:(() => api.ODPromiseVoid),arrayStructure:api.ODCheckerArrayStructure,structure:api.ODCheckerStructure,data:any[],parent:object,parentIndex:string|number,path:(string|number)[]){
|
||||||
@@ -246,8 +252,10 @@ async function renderconfigArrayStructureRemoveSelector(checker:api.ODChecker,ba
|
|||||||
}).promise
|
}).promise
|
||||||
|
|
||||||
if (dataAnswer.canceled) return await backFn()
|
if (dataAnswer.canceled) return await backFn()
|
||||||
const subData = data[dataAnswer.selectedIndex]
|
data.splice(dataAnswer.selectedIndex,1)
|
||||||
console.log("delete position:",dataAnswer.selectedIndex)
|
terminal.bold.blue("\n\n✅ Property deleted succesfully!")
|
||||||
|
await utilities.timer(400)
|
||||||
|
await backFn()
|
||||||
}
|
}
|
||||||
|
|
||||||
async function renderConfigBooleanStructureEditor(checker:api.ODChecker,backFn:(() => api.ODPromiseVoid),structure:api.ODCheckerBooleanStructure,data:boolean,parent:object,parentIndex:string|number,path:(string|number)[]){
|
async function renderConfigBooleanStructureEditor(checker:api.ODChecker,backFn:(() => api.ODPromiseVoid),structure:api.ODCheckerBooleanStructure,data:boolean,parent:object,parentIndex:string|number,path:(string|number)[]){
|
||||||
|
|||||||
Reference in New Issue
Block a user