diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 48fdfe5..b6d1d6b 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -59,6 +59,7 @@ module.exports = { ] }, }, + plugins: ['fulltext-search'], configureWebpack: { resolve: { alias: { diff --git a/package-lock.json b/package-lock.json index 44a3b7c..4002abc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,6 +25,7 @@ "textlint-rule-period-in-list-item": "^1.0.1", "textlint-rule-write-good": "^2.0.0", "vuepress": "^1.9.8", + "vuepress-plugin-fulltext-search": "^2.2.1", "vuepress-theme-book": "^0.0.9" } }, @@ -8684,6 +8685,12 @@ "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, + "node_modules/flexsearch": { + "version": "0.6.32", + "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.6.32.tgz", + "integrity": "sha512-EF1BWkhwoeLtbIlDbY/vDSLBen/E5l/f1Vg7iX5CDymQCamcx1vhlc3tIZxIDplPjgi0jhG37c67idFbjg+v+Q==", + "dev": true + }, "node_modules/flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", @@ -9523,6 +9530,33 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/html-to-text": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-7.1.3.tgz", + "integrity": "sha512-bnQRVDGgprdYkDRme4BH5xTxFo9ESorrfMHBWjtdgNVGkthXXQIGbmp3PRIjJVcaCP4mJMSuXtBi/lHqUCHUzw==", + "dev": true, + "dependencies": { + "deepmerge": "^4.2.2", + "he": "^1.2.0", + "htmlparser2": "^6.1.0", + "minimist": "^1.2.6" + }, + "bin": { + "html-to-text": "bin/cli.js" + }, + "engines": { + "node": ">=10.23.2" + } + }, + "node_modules/html-to-text/node_modules/deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/htmlparser2": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", @@ -18150,6 +18184,20 @@ "markdown-it-container": "^2.0.0" } }, + "node_modules/vuepress-plugin-fulltext-search": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vuepress-plugin-fulltext-search/-/vuepress-plugin-fulltext-search-2.2.1.tgz", + "integrity": "sha512-+BOLOdOTvwg7+4z71fmpuZUaHSw+exrw8S9m0kvBUgIVDoe5VS/G3y4hcd+K1hukbkxE/ec10Ikk8hc/3zf2VQ==", + "dev": true, + "dependencies": { + "flexsearch": "^0.6.32", + "html-to-text": "^7.0.0", + "lodash": "^4.17.19" + }, + "peerDependencies": { + "vuepress": "^1.4.0" + } + }, "node_modules/vuepress-plugin-smooth-scroll": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/vuepress-plugin-smooth-scroll/-/vuepress-plugin-smooth-scroll-0.0.3.tgz", @@ -26063,6 +26111,12 @@ "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, + "flexsearch": { + "version": "0.6.32", + "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.6.32.tgz", + "integrity": "sha512-EF1BWkhwoeLtbIlDbY/vDSLBen/E5l/f1Vg7iX5CDymQCamcx1vhlc3tIZxIDplPjgi0jhG37c67idFbjg+v+Q==", + "dev": true + }, "flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", @@ -26699,6 +26753,26 @@ "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", "dev": true }, + "html-to-text": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-7.1.3.tgz", + "integrity": "sha512-bnQRVDGgprdYkDRme4BH5xTxFo9ESorrfMHBWjtdgNVGkthXXQIGbmp3PRIjJVcaCP4mJMSuXtBi/lHqUCHUzw==", + "dev": true, + "requires": { + "deepmerge": "^4.2.2", + "he": "^1.2.0", + "htmlparser2": "^6.1.0", + "minimist": "^1.2.6" + }, + "dependencies": { + "deepmerge": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz", + "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==", + "dev": true + } + } + }, "htmlparser2": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", @@ -33638,6 +33712,17 @@ "markdown-it-container": "^2.0.0" } }, + "vuepress-plugin-fulltext-search": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vuepress-plugin-fulltext-search/-/vuepress-plugin-fulltext-search-2.2.1.tgz", + "integrity": "sha512-+BOLOdOTvwg7+4z71fmpuZUaHSw+exrw8S9m0kvBUgIVDoe5VS/G3y4hcd+K1hukbkxE/ec10Ikk8hc/3zf2VQ==", + "dev": true, + "requires": { + "flexsearch": "^0.6.32", + "html-to-text": "^7.0.0", + "lodash": "^4.17.19" + } + }, "vuepress-plugin-smooth-scroll": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/vuepress-plugin-smooth-scroll/-/vuepress-plugin-smooth-scroll-0.0.3.tgz", diff --git a/package.json b/package.json index 4414e78..6d51967 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "textlint-rule-period-in-list-item": "^1.0.1", "textlint-rule-write-good": "^2.0.0", "vuepress": "^1.9.8", + "vuepress-plugin-fulltext-search": "^2.2.1", "vuepress-theme-book": "^0.0.9" } }