diff --git a/packages/config/package.json b/packages/config/package.json index 6f0d9155..1199d84f 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -1,6 +1,6 @@ { "private": true, "name": "@gemjs/config", - "version": "1.6.11", + "version": "1.6.12", "description": "Gemjs common config" } diff --git a/packages/duoyun-ui/package.json b/packages/duoyun-ui/package.json index 383ab96f..d2aa8d3c 100644 --- a/packages/duoyun-ui/package.json +++ b/packages/duoyun-ui/package.json @@ -1,6 +1,6 @@ { "name": "duoyun-ui", - "version": "1.1.9", + "version": "1.1.10", "description": "A lightweight desktop UI component library, implemented using Gem", "keywords": [ "frontend", @@ -52,7 +52,7 @@ }, "devDependencies": { "@esm-bundle/chai": "^4.3.4-fix.0", - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "@open-wc/testing": "^2.5.33", "@types/d3-geo": "^3.0.1", "@web/dev-server-esbuild": "^0.2.16", diff --git a/packages/gem-analyzer/package.json b/packages/gem-analyzer/package.json index cd6fc7f0..d1c36e2d 100644 --- a/packages/gem-analyzer/package.json +++ b/packages/gem-analyzer/package.json @@ -1,6 +1,6 @@ { "name": "gem-analyzer", - "version": "1.7.6", + "version": "1.7.7", "description": "gem analyzer", "main": "index.js", "files": [ @@ -13,10 +13,10 @@ "prepublishOnly": "yarn build" }, "dependencies": { - "@mantou/gem": "^1.7.8" + "@mantou/gem": "^1.7.10" }, "devDependencies": { - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "ts-morph": "^13.0.0", "typescript": "^5.3.2" }, diff --git a/packages/gem-book/package.json b/packages/gem-book/package.json index 3e78663b..6cfc62a4 100644 --- a/packages/gem-book/package.json +++ b/packages/gem-book/package.json @@ -1,6 +1,6 @@ { "name": "gem-book", - "version": "1.5.34", + "version": "1.5.36", "description": "Create your document website easily and quickly", "keywords": [ "doc", @@ -34,13 +34,14 @@ "start:docs": "cross-env PORT=8090 GEM_BOOK_DEV=true nodemon --watch bin --exec \"yarn docs\"", "start": "concurrently npm:start:cli npm:start:docs", "build:website": "yarn build:cli && yarn docs --build --ga G-7X2Z4B2KV0", - "build": "yarn build:cli && tsc", + "build": "yarn build:cli && tsc -p ./tsconfig.build.json", "test": "cross-env NODE_OPTIONS=--no-experimental-fetch wtr", "prepublishOnly": "yarn build" }, "dependencies": { - "@mantou/gem": "^1.7.8", + "@mantou/gem": "^1.7.10", "anymatch": "^3.1.3", + "chalk": "^2.4.2", "cheerio": "^1.0.0-rc.12", "chokidar": "^3.5.3", "commander": "^7.2.0", @@ -52,7 +53,6 @@ "html-webpack-plugin": "^5.5.3", "jimp": "^0.16.1", "marked": "^10.0.0", - "chalk": "^2.4.2", "mkdirp": "^1.0.4", "parse-github-url": "^1.0.2", "sitemap-webpack-plugin": "^1.1.1", @@ -66,7 +66,7 @@ "devDependencies": { "@codesandbox/sandpack-client": "^2.0.01", "@esm-bundle/chai": "^4.3.4-fix.0", - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "@open-wc/testing": "^2.5.33", "@types/jsdom": "^16.2.10", "@types/marked": "^2.0.2", @@ -76,7 +76,7 @@ "@web/dev-server-esbuild": "^0.2.16", "@web/test-runner": "^0.13.22", "esbuild": "^0.14.14", - "gem-analyzer": "^1.7.6", + "gem-analyzer": "^1.7.7", "nodemon": "^2.0.7", "ts-morph": "^13.0.0", "webpack-cli": "^5.1.4", diff --git a/packages/gem-book/src/bin/builder.ts b/packages/gem-book/src/bin/builder.ts index 30795987..29078a2a 100644 --- a/packages/gem-book/src/bin/builder.ts +++ b/packages/gem-book/src/bin/builder.ts @@ -33,13 +33,16 @@ function genDocuments(docsDir: string, bookConfig: BookConfig) { const temp = [...sidebar]; while (temp.length) { const item = temp.pop()!; - if (addedLinks.has(item.link)) continue; if (item.sidebarIgnore) continue; if (item.children) temp.push(...item.children); + + if (addedLinks.has(item.link)) continue; if (item.type === 'file' || item.type === 'dir') { addedLinks.add(item.link); const fullPath = path.join(docsDir, lang, item.link); documents.push({ + // 通过路径来识别文件和目录,以获取父级 title,例如: + // `/guide/readme` 的父级 title 是 `/guide/` 的目录 title id: getLinkPath(item.link, bookConfig.displayRank), text: item.type === 'file' ? getBody(getMdFile(fullPath).content) : '', title: getMetadata(fullPath, bookConfig.displayRank).title, diff --git a/packages/gem-book/src/element/test/utils.test.ts b/packages/gem-book/src/element/test/utils.test.ts index 40a290e6..4709b460 100644 --- a/packages/gem-book/src/element/test/utils.test.ts +++ b/packages/gem-book/src/element/test/utils.test.ts @@ -1,6 +1,7 @@ import { expect } from '@open-wc/testing'; -import { capitalize, flatNav, getUserLink } from '../lib/utils'; +import { capitalize, flatNav } from '../lib/utils'; +import { getUserLink } from '../../common/utils'; describe('lib/utils', () => { it('capitalize', () => { diff --git a/packages/gem-book/src/plugins/docsearch.ts b/packages/gem-book/src/plugins/docsearch.ts index 56018910..c4acf7bb 100644 --- a/packages/gem-book/src/plugins/docsearch.ts +++ b/packages/gem-book/src/plugins/docsearch.ts @@ -178,7 +178,8 @@ customElements.whenDefined('gem-book').then(({ GemBookPluginElement }: typeof Ge } #navigator = (url: string) => { - history.pushState(null, '', url.replace(new RegExp(`/${GemBookPluginElement.lang}(/?)`), '$1')); + // route 中会更新 title + history.pushState(null, document.title, url.replace(new RegExp(`/${GemBookPluginElement.lang}(/?)`), '$1')); }; #miniSearch?: Promise; diff --git a/packages/gem-book/tsconfig.build.json b/packages/gem-book/tsconfig.build.json new file mode 100644 index 00000000..33bcf4c7 --- /dev/null +++ b/packages/gem-book/tsconfig.build.json @@ -0,0 +1,8 @@ +{ + "extends": "@gemjs/config/tsconfig", + "compilerOptions": { + "outDir": "./" + }, + "include": ["src"], + "exclude": ["src/bin", "./src/**/*.test.ts", "./src/**/*.spec.ts"] +} diff --git a/packages/gem-book/tsconfig.json b/packages/gem-book/tsconfig.json index 7829666c..7588f03c 100644 --- a/packages/gem-book/tsconfig.json +++ b/packages/gem-book/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@gemjs/config/tsconfig", "compilerOptions": { - "outDir": "./", - "module": "ES2022" + "outDir": "./" }, "include": ["src"], - "exclude": ["src/bin", "./src/**/*.test.ts", "./src/**/*.spec.ts"] + "exclude": [] } diff --git a/packages/gem-devtools/package.json b/packages/gem-devtools/package.json index ba61a672..88f10600 100644 --- a/packages/gem-devtools/package.json +++ b/packages/gem-devtools/package.json @@ -1,6 +1,6 @@ { "name": "gem-devtools", - "version": "1.7.5", + "version": "1.7.6", "description": "Gem devtools", "scripts": { "update:version": "node ./scripts/update.js", @@ -11,11 +11,11 @@ "start": "yarn build && concurrently -k npm:watch npm:browser" }, "dependencies": { - "@mantou/gem": "^1.7.8", + "@mantou/gem": "^1.7.10", "webextension-polyfill": "^0.10.0" }, "devDependencies": { - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "@types/webextension-polyfill": "^0.10.7", "vite": "^2.7.13", "web-ext": "^7.8.0" diff --git a/packages/gem-examples/package.json b/packages/gem-examples/package.json index b2c268f9..af7d4e43 100644 --- a/packages/gem-examples/package.json +++ b/packages/gem-examples/package.json @@ -1,18 +1,18 @@ { "private": true, "name": "gem-examples", - "version": "1.7.5", + "version": "1.7.6", "description": "gem examples", "scripts": { "build": "vite build", "start": "vite serve" }, "dependencies": { - "@mantou/gem": "^1.7.8", - "duoyun-ui": "^1.1.8" + "@mantou/gem": "^1.7.10", + "duoyun-ui": "^1.1.10" }, "devDependencies": { - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "vite": "^2.7.13", "vite-plugin-virtual-mpa": "^1.9.3" } diff --git a/packages/gem-port/package.json b/packages/gem-port/package.json index 14a07c42..e83f0e6a 100644 --- a/packages/gem-port/package.json +++ b/packages/gem-port/package.json @@ -1,6 +1,6 @@ { "name": "gem-port", - "version": "0.0.6", + "version": "0.0.7", "description": "Export React component", "keywords": [ "gem", @@ -19,9 +19,9 @@ "prepublishOnly": "yarn build" }, "dependencies": { - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "commander": "^7.2.0", - "gem-analyzer": "^1.7.6", + "gem-analyzer": "^1.7.7", "ts-morph": "^13.0.0", "typescript": "^4.5.0" }, diff --git a/packages/gem/package.json b/packages/gem/package.json index 3c248b45..839aedf1 100644 --- a/packages/gem/package.json +++ b/packages/gem/package.json @@ -1,6 +1,6 @@ { "name": "@mantou/gem", - "version": "1.7.9", + "version": "1.7.10", "description": "💎 使用自定义元素的轻量级 WebApp 开发框架", "keywords": [ "frontend", @@ -43,7 +43,7 @@ }, "devDependencies": { "@esm-bundle/chai": "^4.3.4-fix.0", - "@gemjs/config": "^1.6.11", + "@gemjs/config": "^1.6.12", "@open-wc/testing": "^2.5.33", "@web/dev-server-esbuild": "^0.2.16", "@web/test-runner": "^0.13.22",