Camel Case Fixed, and Delete
This commit is contained in:
1 parent
1f4c232784
commit
efbb7e98e3
4 files changed
+70
-8
No files matched your search
Binary file not shown.
|
After Width: | Height: | Size: 3.8 KiB |
@@ -178,8 +178,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="menu-row">
|
||||
<div class="menu-item">
|
||||
|
||||
<div class="menu-item" onClick="window.contextMenu.deleteParagraph()">
|
||||
<img src="Images/Docs-Menu/docs-delete.png" class="menu-img">
|
||||
</div>
|
||||
<div class="menu-item" onClick="window.contextMenu.toWebPageLink()">
|
||||
<img src="Images/Docs-Menu/docs-link-style.png" class="menu-img">
|
||||
|
||||
@@ -39,6 +39,7 @@ function newSuperalgosDocSpace() {
|
||||
let textArea
|
||||
let selectedParagraph
|
||||
let selectedParagraphData = ''
|
||||
let selectedParagraphIndex = ''
|
||||
let selectedParagraphHeight = 0
|
||||
let objectBeingRendered
|
||||
let paragraphMap // Here we will store a map of paragraphs from the Docs Node, Concept or Topics Schema in order to find it when we need to update them.
|
||||
@@ -78,6 +79,7 @@ function newSuperalgosDocSpace() {
|
||||
function setUpContextMenu() {
|
||||
window.contextMenu = {
|
||||
editParagraph: editParagraph,
|
||||
deleteParagraph: deleteParagraph,
|
||||
toJavascript: toJavascript,
|
||||
toJson: toJson,
|
||||
toText: toText,
|
||||
@@ -164,6 +166,14 @@ function newSuperalgosDocSpace() {
|
||||
}
|
||||
}
|
||||
|
||||
function deleteParagraph() {
|
||||
if (selectedParagraphIndex === undefined) { return }
|
||||
if (selectedParagraphIndex === 0) { return }
|
||||
docsSchemaDocument.paragraphs.splice(selectedParagraphIndex, 1)
|
||||
contextMenuForceOutClick()
|
||||
renderDocumentPage()
|
||||
}
|
||||
|
||||
function toJavascript() {
|
||||
let docSchemaParagraph = paragraphMap.get(selectedParagraph.id)
|
||||
docSchemaParagraph.style = 'Javascript'
|
||||
@@ -651,6 +661,9 @@ function newSuperalgosDocSpace() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Reset this */
|
||||
selectedParagraphIndex = undefined
|
||||
/*
|
||||
Depending on the Style of Paragraph we will need to remove
|
||||
some info from the innerText.
|
||||
@@ -663,6 +676,14 @@ function newSuperalgosDocSpace() {
|
||||
}
|
||||
return true
|
||||
}
|
||||
/*
|
||||
Remeber the Selected Paragraph Index
|
||||
*/
|
||||
let splittedId = paragraphNode.id.split('-')
|
||||
selectedParagraphIndex = splittedId[splittedId.length - 2]
|
||||
/*
|
||||
Check the style of the Paragraph
|
||||
*/
|
||||
if (paragraphNode.id.indexOf('-text') >= 0) {
|
||||
selectedParagraphData = paragraphNode.innerText.trim()
|
||||
return true
|
||||
@@ -2863,8 +2884,8 @@ function newSuperalgosDocSpace() {
|
||||
role = ''
|
||||
key = key + '-text'
|
||||
innerHTML = getTextBasedOnLanguage(paragraph)
|
||||
innerHTML = addToolTips(innerHTML)
|
||||
innerHTML = addCodeToCamelCase(innerHTML)
|
||||
innerHTML = addToolTips(innerHTML)
|
||||
innerHTML = addItalics(innerHTML)
|
||||
innerHTML = innerHTML + addWarningIfTranslationIsOutdated(paragraph)
|
||||
break
|
||||
@@ -2981,9 +3002,9 @@ function newSuperalgosDocSpace() {
|
||||
role = ''
|
||||
key = key + '-list'
|
||||
innerHTML = getTextBasedOnLanguage(paragraph)
|
||||
innerHTML = addCodeToCamelCase(innerHTML)
|
||||
innerHTML = addToolTips(innerHTML)
|
||||
innerHTML = addBold(innerHTML)
|
||||
innerHTML = addCodeToCamelCase(innerHTML)
|
||||
innerHTML = addItalics(innerHTML)
|
||||
innerHTML = innerHTML + addWarningIfTranslationIsOutdated(paragraph)
|
||||
break
|
||||
@@ -3585,7 +3606,14 @@ function newSuperalgosDocSpace() {
|
||||
}
|
||||
|
||||
function addCodeToCamelCase(text) {
|
||||
let splittedText = text.split(' ')
|
||||
let expandedText = text
|
||||
.replaceAll('{',' { ')
|
||||
.replaceAll('}',' } ')
|
||||
.replaceAll('(',' ( ')
|
||||
.replaceAll(')',' ) ')
|
||||
.replaceAll('[',' [ ')
|
||||
.replaceAll(']',' ] ')
|
||||
let splittedText = expandedText.split(' ')
|
||||
let result = ''
|
||||
for (let i = 0; i < splittedText.length; i++) {
|
||||
let word = splittedText[i]
|
||||
@@ -3598,6 +3626,13 @@ function newSuperalgosDocSpace() {
|
||||
result = result + ' ' + word
|
||||
}
|
||||
}
|
||||
result = result
|
||||
.replaceAll(' { ','{')
|
||||
.replaceAll(' } ','}')
|
||||
.replaceAll(' ( ','(')
|
||||
.replaceAll(' ) ',')')
|
||||
.replaceAll(' [ ','[')
|
||||
.replaceAll(' ] ',']')
|
||||
return result
|
||||
}
|
||||
|
||||
|
||||
@@ -17,11 +17,38 @@ function newSuperalgosUtilitiesStrings() {
|
||||
we will accept strings with numbers and dots, so that
|
||||
object paths test positive.
|
||||
*/
|
||||
const result = /^[A-Za-z0-9.]+$/.test(text)
|
||||
|
||||
/* Check that there are not invalid symbols */
|
||||
let result = /^[A-Za-z0-9.]+$/.test(text)
|
||||
if (result === false) { return false }
|
||||
|
||||
let character = text[0]
|
||||
if (character !== character.toLowerCase()) {
|
||||
/* Check that first char is a letter in lower case*/
|
||||
result = /^[a-z]+$/.test(text[0])
|
||||
if (result === false) { return false }
|
||||
|
||||
let upperCaseDetected = false
|
||||
let numbersDetected = false
|
||||
let dotsDetected = false
|
||||
for (let i = 1; i < text.length; i++) {
|
||||
let character = text[i]
|
||||
|
||||
result = /^[0-9]+$/.test(character)
|
||||
if (result === true) {
|
||||
numbersDetected = true
|
||||
if (text[i - 1] === '.') { return false }
|
||||
}
|
||||
|
||||
result = /^[A-Z]+$/.test(character)
|
||||
if (result === true) {
|
||||
upperCaseDetected = true
|
||||
if (text[i - 1] === '.') { return false }
|
||||
}
|
||||
|
||||
if (character === '.') { dotsDetected = true }
|
||||
|
||||
}
|
||||
/* Check that there is at lest one upper case before numbers or dots */
|
||||
if (upperCaseDetected === false) {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
||||
Reference in new issue
Block a user