Merge pull request #150 from chenqi146/dev
[fix] 🐛 fix group search in html
This commit is contained in:
commit
04a253b3d1
|
@ -71,7 +71,7 @@ public class AdocDocBuilder {
|
|||
IDocBuildTemplate docBuildTemplate = BuildTemplateFactory.getDocBuildTemplate(config.getFramework());
|
||||
List<ApiDoc> apiDocList = docBuildTemplate.getApiData(configBuilder);
|
||||
if (config.isAllInOne()) {
|
||||
String docName = builderTemplate.allInOneDocName(config,INDEX_DOC,".doc");
|
||||
String docName = builderTemplate.allInOneDocName(config,INDEX_DOC,".adoc");
|
||||
apiDocList = docBuildTemplate.handleApiGroup(apiDocList, config);
|
||||
builderTemplate.buildAllInOne(apiDocList, config, javaProjectBuilder, ALL_IN_ONE_ADOC_TPL, docName);
|
||||
} else {
|
||||
|
|
|
@ -162,22 +162,29 @@ public class DocBuilderTemplate extends BaseDocBuilderTemplate {
|
|||
apiDoc1.setOrder(apiDocs.size() + 1);
|
||||
apiDocs.add(apiDoc1);
|
||||
}
|
||||
|
||||
boolean isOnlyDefaultGroup = apiDocList.size() == 1;
|
||||
|
||||
Map<String, String> titleMap = setDirectoryLanguageVariable(config, tpl);
|
||||
// set error code
|
||||
if (CollectionUtil.isNotEmpty(errorCodeList)) {
|
||||
ApiDoc apiDoc1 = new ApiDoc();
|
||||
apiDoc1.setOrder(apiDocs.size() + 1);
|
||||
apiDoc1.setOrder((isOnlyDefaultGroup ? apiDocs.get(0).getChildrenApiDocs().size() : apiDocs.size()) + 1);
|
||||
apiDoc1.setDesc(titleMap.get(TemplateVariable.ERROR_LIST_TITLE.getVariable()));
|
||||
apiDoc1.setList(new ArrayList<>(0));
|
||||
apiDoc1.setLink("error_code_list");
|
||||
apiDoc1.setAlias("error");
|
||||
apiDoc1.setGroup(apiDoc1.getDesc());
|
||||
apiDocs.add(apiDoc1);
|
||||
if (isOnlyDefaultGroup) {
|
||||
apiDocs.get(0).getChildrenApiDocs().add(apiDoc1);
|
||||
} else {
|
||||
apiDocs.add(apiDoc1);
|
||||
}
|
||||
}
|
||||
// set dict list
|
||||
List<ApiDocDict> apiDocDictList = DocUtil.buildDictionary(config, javaProjectBuilder);
|
||||
ApiDoc apiDoc1 = new ApiDoc();
|
||||
apiDoc1.setOrder(apiDocs.size() + 1);
|
||||
apiDoc1.setOrder((isOnlyDefaultGroup ? apiDocs.get(0).getChildrenApiDocs().size() : apiDocs.size()) + 1);
|
||||
apiDoc1.setLink("dict_list");
|
||||
apiDoc1.setAlias("dict");
|
||||
apiDoc1.setDesc(titleMap.get(TemplateVariable.DICT_LIST_TITLE.getVariable()));
|
||||
|
@ -190,7 +197,11 @@ public class DocBuilderTemplate extends BaseDocBuilderTemplate {
|
|||
methodDocs.add(methodDoc);
|
||||
}
|
||||
apiDoc1.setList(methodDocs);
|
||||
apiDocs.add(apiDoc1);
|
||||
if (isOnlyDefaultGroup) {
|
||||
apiDocs.get(0).getChildrenApiDocs().add(apiDoc1);
|
||||
} else {
|
||||
apiDocs.add(apiDoc1);
|
||||
}
|
||||
tpl.binding(TemplateVariable.API_DOC_LIST.getVariable(), apiDocs);
|
||||
FileUtil.nioWriteFile(tpl.render(), config.getOutPath() + FILE_SEPARATOR + SEARCH_JS_OUT);
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@ import java.io.BufferedWriter;
|
|||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.Reader;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static com.power.doc.constants.DocGlobalConstants.*;
|
||||
|
@ -78,10 +79,10 @@ public class HtmlApiDocBuilder {
|
|||
List<ApiDoc> apiDocList = docBuildTemplate.getApiData(configBuilder);
|
||||
Template indexCssTemplate = BeetlTemplateUtil.getByName(ALL_IN_ONE_CSS);
|
||||
FileUtil.nioWriteFile(indexCssTemplate.render(), config.getOutPath() + FILE_SEPARATOR + ALL_IN_ONE_CSS_OUT);
|
||||
copyJarFile("js/"+HIGH_LIGHT_JS, config.getOutPath() + FILE_SEPARATOR + HIGH_LIGHT_JS);
|
||||
copyJarFile("css/"+FONT_STYLE, config.getOutPath() + FILE_SEPARATOR + FONT_STYLE);
|
||||
copyJarFile("js/"+JQUERY, config.getOutPath() + FILE_SEPARATOR + JQUERY);
|
||||
copyJarFile("css/"+HIGH_LIGHT_STYLE, config.getOutPath() + FILE_SEPARATOR + HIGH_LIGHT_STYLE);
|
||||
copyJarFile("js/" + HIGH_LIGHT_JS, config.getOutPath() + FILE_SEPARATOR + HIGH_LIGHT_JS);
|
||||
copyJarFile("css/" + FONT_STYLE, config.getOutPath() + FILE_SEPARATOR + FONT_STYLE);
|
||||
copyJarFile("js/" + JQUERY, config.getOutPath() + FILE_SEPARATOR + JQUERY);
|
||||
copyJarFile("css/" + HIGH_LIGHT_STYLE, config.getOutPath() + FILE_SEPARATOR + HIGH_LIGHT_STYLE);
|
||||
if (config.isAllInOne()) {
|
||||
apiDocList = docBuildTemplate.handleApiGroup(apiDocList, config);
|
||||
if (config.isCreateDebugPage()) {
|
||||
|
|
|
@ -30,6 +30,7 @@ import com.power.doc.constants.TornaConstants;
|
|||
import com.power.doc.factory.BuildTemplateFactory;
|
||||
import com.power.doc.model.ApiConfig;
|
||||
import com.power.doc.model.ApiDoc;
|
||||
import com.power.doc.model.ApiGroup;
|
||||
import com.power.doc.model.torna.Apis;
|
||||
import com.power.doc.model.torna.TornaApi;
|
||||
import com.power.doc.model.torna.TornaDic;
|
||||
|
@ -119,7 +120,8 @@ public class TornaBuilder {
|
|||
|
||||
}
|
||||
tornaApi.setCommonErrorCodes(buildErrorCode(apiConfig));
|
||||
tornaApi.setApis(groupApiList);
|
||||
// delete default group when only default group
|
||||
tornaApi.setApis(groupApiList.size() == 1 ? groupApiList.get(0).getItems() : groupApiList);
|
||||
//Build push document information
|
||||
Map<String, String> requestJson = TornaConstants.buildParams(PUSH, new Gson().toJson(tornaApi), apiConfig);
|
||||
//Push dictionary information
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
DELIMITER_STATEMENT_START=<%
|
||||
DELIMITER_STATEMENT_END=%>
|
||||
FN.htmlEscape = com.power.doc.function.HtmlEscape
|
||||
FN.removeLineBreaks = com.power.doc.function.RemoveLineBreaks
|
||||
FN.removeLineBreaks = com.power.doc.function.RemoveLineBreaks
|
||||
##??????
|
||||
FNP.strUtil = org.beetl.ext.fn.StringUtil
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,22 +1,23 @@
|
|||
let api = [];
|
||||
const apiDocListSize = ${apiDocList.~size}
|
||||
<%for(apiGroup in apiDocList) {%>
|
||||
api.push({
|
||||
name: '${apiGroup.group}',
|
||||
name: '${strUtil.replace(apiGroup.group, "\'", "\\'")}',
|
||||
order: '${apiGroup.order}',
|
||||
list: []
|
||||
})
|
||||
<%for(api in apiGroup.childrenApiDocs) {%>
|
||||
api[${apiGroupLP.dataIndex}].list.push({
|
||||
alias: '${api.alias}',
|
||||
alias: '${strUtil.replace(api.alias, "\'", "\\'")}',
|
||||
order: '${api.order}',
|
||||
link: '${removeLineBreaks(api.link)}',
|
||||
desc: '${removeLineBreaks(api.desc)}',
|
||||
link: '${strUtil.replace(removeLineBreaks(api.link), "\'", "\\'")}',
|
||||
desc: '${strUtil.replace(removeLineBreaks(api.desc), "\'", "\\'")}',
|
||||
list: []
|
||||
})
|
||||
<%for(doc in api.list) {%>
|
||||
api[${apiGroupLP.dataIndex}].list[${apiLP.dataIndex}].list.push({
|
||||
order: '${doc.order}',
|
||||
desc: '${removeLineBreaks(doc.desc)}',
|
||||
desc: '${strUtil.replace(removeLineBreaks(doc.desc), "\'", "\\'")}',
|
||||
});
|
||||
<%}%>
|
||||
<%}%>
|
||||
|
@ -66,6 +67,14 @@ function keyDownSearch(e) {
|
|||
}
|
||||
}
|
||||
}
|
||||
if (apiGroup.name.indexOf(searchValue) > -1) {
|
||||
searchGroup.push({
|
||||
name: apiGroup.name,
|
||||
order: apiGroup.order,
|
||||
list: searchArr
|
||||
});
|
||||
continue;
|
||||
}
|
||||
if (searchArr.length === 0) {
|
||||
continue;
|
||||
}
|
||||
|
@ -110,13 +119,8 @@ function buildAccordion(apiGroups, liClass, display) {
|
|||
let html = "";
|
||||
let doc;
|
||||
if (apiGroups.length > 0) {
|
||||
for (let i = 0; i < apiGroups.length; i++) {
|
||||
let apiGroup = apiGroups[i];
|
||||
html += '<li class="'+liClass+'">';
|
||||
html += '<a class="dd" href="#_' + apiGroup.name + '">' + apiGroup.order + '. ' + apiGroup.name + '</a>';
|
||||
html += '<ul class="sectlevel1">';
|
||||
|
||||
let apiData = apiGroup.list;
|
||||
if (apiDocListSize == 1) {
|
||||
let apiData = apiGroups[0].list;
|
||||
for (let j = 0; j < apiData.length; j++) {
|
||||
html += '<li class="'+liClass+'">';
|
||||
html += '<a class="dd" href="#_' + apiData[j].link + '">' + apiData[j].order + '. ' + apiData[j].desc + '</a>';
|
||||
|
@ -128,9 +132,29 @@ function buildAccordion(apiGroups, liClass, display) {
|
|||
html += '</ul>';
|
||||
html += '</li>';
|
||||
}
|
||||
} else {
|
||||
for (let i = 0; i < apiGroups.length; i++) {
|
||||
let apiGroup = apiGroups[i];
|
||||
html += '<li class="'+liClass+'">';
|
||||
html += '<a class="dd" href="#_' + apiGroup.name + '">' + apiGroup.order + '. ' + apiGroup.name + '</a>';
|
||||
html += '<ul class="sectlevel1">';
|
||||
|
||||
html += '</ul>';
|
||||
html += '</li>';
|
||||
let apiData = apiGroup.list;
|
||||
for (let j = 0; j < apiData.length; j++) {
|
||||
html += '<li class="'+liClass+'">';
|
||||
html += '<a class="dd" href="#_' + apiData[j].link + '">' + apiData[j].order + '. ' + apiData[j].desc + '</a>';
|
||||
html += '<ul class="sectlevel2" style="'+display+'">';
|
||||
doc = apiData[j].list;
|
||||
for (let m = 0; m < doc.length; m++) {
|
||||
html += '<li><a href="#_' + apiData[j].order + '_' + doc[m].order + '_' + doc[m].desc + '">' + apiData[j].order + '.' + doc[m].order + '. ' + doc[m].desc + '</a> </li>';
|
||||
}
|
||||
html += '</ul>';
|
||||
html += '</li>';
|
||||
}
|
||||
|
||||
html += '</ul>';
|
||||
html += '</li>';
|
||||
}
|
||||
}
|
||||
}
|
||||
return html;
|
||||
|
|
Loading…
Reference in New Issue