diff --git a/packages/devui-vue/devui/code-review/src/code-review.scss b/packages/devui-vue/devui/code-review/src/code-review.scss index 88077ea8d0..6f07a4774d 100644 --- a/packages/devui-vue/devui/code-review/src/code-review.scss +++ b/packages/devui-vue/devui/code-review/src/code-review.scss @@ -17,13 +17,17 @@ padding-right: 20px; border-bottom: 1px solid $devui-dividing-line; border-radius: $devui-border-radius-card; - background-color: $devui-global-bg-normal; + background-color: $devui-base-bg; cursor: pointer; &--unfold { border-radius: $devui-border-radius-card $devui-border-radius-card 0 0; - border-bottom: 1px solid #d8d8d8; - box-shadow: inset 0 -1px 0 0 $devui-brand-foil; + border-bottom: 1px solid $devui-dividing-line; + box-shadow: inset 0 -1px 0 0 $devui-shadow; + } + + .d2h-files-diff { + background-color: #f8fafd; } .diff-type { @@ -178,6 +182,44 @@ border: none; } + .d2h-emptyplaceholder.d2h-cntx.d2h-code-side-linenumber, + .d2h-emptyplaceholder.d2h-cntx { + background-color: #fafafa; + } + + .d2h-code-side-linenumber, + .d2h-code-linenumber, + .d2h-emptyplaceholder { + border-left: 1px solid; + border-right: 1px solid; + padding: 0; + } + + .d2h-info.d2h-code-side-linenumber { + background-color: #f8fafd; + } + + .d2h-code-side-line, + .d2h-code-side-linenumber, + .d2h-code-linenumber { + background-color: transparent; + } + + .d2h-code-side-linenumber, + .d2h-code-linenumber { + border-color: #eee; + color: rgba(0, 0, 0, 0.3); + height: 100%; + + &.d2h-cntx { + background-color: #fff; + } + } + + .d2h-code-side-linenumber.d2h-ins { + background-color: #dfd; + } + .d2h-code-linenumber::after, .d2h-code-side-linenumber::after { content: ''; @@ -218,7 +260,8 @@ overflow: hidden; } - .d2h-code-side-linenumber { + .d2h-code-side-linenumber, + .d2h-code-linenumber { position: static; display: table-cell; } @@ -234,9 +277,111 @@ width: 22px; height: 22px; border-radius: 50%; - background-color: $devui-base-bg; + background-color: $devui-brand-foil; transform: translateX(-50%); box-shadow: 0 0 1px 1px rgba(37, 43, 58, 0.16); cursor: pointer; } + + &.dp-md-dark { + color: #e8e8e8; + background-color: #2e303c; + + .d2h-files-diff { + background-color: #262831; + } + + .file-info .invert { + fill: #e8e8e8; + } + + &__content { + background-color: #2e303c; + } + + tr { + td.comment-icon-hover { + background-color: rgba(94, 124, 224, 0.2) !important; + } + + &:hover .d2h-info { + background-color: rgba(94, 124, 224, 0.2); + } + } + + .d2h-info { + background-color: #262831; + color: #909090; + + .d2h-code-line-prefix { + color: #e8e8e8; + } + } + + .d2h-code-side-linenumber, + .d2h-code-linenumber, + .devui-code-review__content.side-by-side tr.comment-block td:last-child, + .devui-code-review__content.side-by-side tr td:nth-of-type(3) { + border-color: #262933; + color: #646464; + + &.d2h-cntx { + background-color: #262933; + } + } + + .d2h-cntx { + background-color: #2e303c; + } + + .d2h-del { + background-color: #4b3a39; + border-color: #985c5a; + } + + .d2h-ins { + background-color: #1f5231; + } + + .d2h-ins.d2h-code-side-linenumber, + .devui-code-review__content.side-by-side tr td:nth-of-type(3).d2h-ins.d2h-code-side-linenumber { + border-color: #29a17c; + } + + .d2h-emptyplaceholder { + border-color: #262933; + } + + .d2h-code-side-linenumber.d2h-emptyplaceholder.d2h-cntx.d2h-emptyplaceholder { + background-color: #363946; + } + + .d2h-emptyplaceholder.d2h-cntx { + background-color: #363946; + } + + .d2h-code-line-prefix { + color: #e8e8e8; + } + + .hljs { + color: #abb2bf; + } + + .hljs-keyword { + color: #c678dd; + } + + .hljs-title.class_ { + color: #e6c07b; + } + + .hljs-built_in { + color: #e6c07b; + } + + .hljs-string { + color: #98c379; + } + } } diff --git a/packages/devui-vue/devui/code-review/src/code-review.tsx b/packages/devui-vue/devui/code-review/src/code-review.tsx index ac2e59574a..02b9015921 100644 --- a/packages/devui-vue/devui/code-review/src/code-review.tsx +++ b/packages/devui-vue/devui/code-review/src/code-review.tsx @@ -9,6 +9,7 @@ import { useCodeReview } from './composables/use-code-review'; import { useCodeReviewFold } from './composables/use-code-review-fold'; import { useCodeReviewComment } from './composables/use-code-review-comment'; import './code-review.scss'; +import { useTheme } from '@devui/shared/utils/useTheme'; export default defineComponent({ name: 'DCodeReview', @@ -21,7 +22,7 @@ export default defineComponent({ const { isFold, toggleFold } = useCodeReviewFold(props, ctx); const { commentLeft, commentTop, mouseEvent, onCommentMouseLeave, onCommentIconClick, insertComment, removeComment } = useCodeReviewComment(reviewContentRef, props, ctx); - + const { isDarkMode } = useTheme(); onMounted(() => { ctx.emit('afterViewInit', { toggleFold, insertComment, removeComment }); }); @@ -29,7 +30,7 @@ export default defineComponent({ provide(CodeReviewInjectionKey, { diffType, reviewContentRef, diffInfo: diffFile.value[0], isFold, rootCtx: ctx }); return () => ( -
+
(isFold.value = !isFold.value)} />
{props.showBlob ? ( diff --git a/packages/devui-vue/devui/color-picker/src/components/color-edit/color-edit.scss b/packages/devui-vue/devui/color-picker/src/components/color-edit/color-edit.scss index 68937294b4..0ef033e95a 100644 --- a/packages/devui-vue/devui/color-picker/src/components/color-edit/color-edit.scss +++ b/packages/devui-vue/devui/color-picker/src/components/color-edit/color-edit.scss @@ -30,7 +30,6 @@ padding: 0 5px; input { - border: none; outline: none; width: 100%; text-align: center; @@ -63,5 +62,11 @@ border-bottom-right-radius: 5px; } } + + &-value { + background-color: $devui-base-bg; + border: 1px solid $devui-line; + color: $devui-text; + } } } diff --git a/packages/devui-vue/devui/date-picker/src/components/panel/index.scss b/packages/devui-vue/devui/date-picker/src/components/panel/index.scss index 85325f71f1..f000a295fc 100644 --- a/packages/devui-vue/devui/date-picker/src/components/panel/index.scss +++ b/packages/devui-vue/devui/date-picker/src/components/panel/index.scss @@ -4,12 +4,12 @@ $panel-width: 230px; $panel-height: 210px; $panel-padding: 5px; $panel-row-height: 24px; -$panel-cell-bg: #ffffff; -$panel-cell-color: #000000; -$panel-cell-active-bg: #0066cc; -$panel-cell-active-color: #f1f1f1; -$panel-cell-active-hover-bg: #0088dd; -$panel-cell-active-hover-color: #ffffff; +$panel-cell-bg: transparent; +$panel-cell-color: $devui-text; +$panel-cell-active-bg: $devui-list-item-active-bg; +$panel-cell-active-color: $devui-list-item-active-text; +$panel-cell-active-hover-bg: $devui-list-item-active-bg; +$panel-cell-active-hover-color: $devui-list-item-active-text; .#{$devui-prefix}-calendar-panel { width: $panel-width; @@ -37,7 +37,7 @@ $panel-cell-active-hover-color: #ffffff; color: $panel-cell-color; &:hover { - background-color: $devui-disabled-bg; + background-color: $devui-range-item-hover-bg; } &.selected { @@ -88,16 +88,15 @@ $panel-cell-active-hover-color: #ffffff; &.disabled { .today-button { - border: 1px solid #cccccc; cursor: not-allowed; } } .today-button { - border: 1px solid #0066cc; border-radius: 3px; padding: 2px 20px; font-size: 12px; + color: $devui-brand-active; } } } diff --git a/packages/devui-vue/devui/date-picker/src/date-picker.scss b/packages/devui-vue/devui/date-picker/src/date-picker.scss index 9578872273..d2b381e502 100644 --- a/packages/devui-vue/devui/date-picker/src/date-picker.scss +++ b/packages/devui-vue/devui/date-picker/src/date-picker.scss @@ -4,11 +4,10 @@ $cell-font-size: 13px; $border-width: 1px; $border-style: solid; $border-color: #dddddd; -$input-border-color: #0066cc; +$input-border-color: $devui-form-control-line; .#{$devui-prefix}-datepicker-container { .input-container { - border: 1px solid $input-border-color; border-radius: $devui-border-radius; display: flex; flex-direction: row; @@ -24,7 +23,6 @@ $input-border-color: #0066cc; width: 100%; input { - border: 0 solid #000000; outline: none; margin-right: 20px; } @@ -37,13 +35,9 @@ $input-border-color: #0066cc; } .#{$devui-prefix}-datepicker-panel { - border: 1px solid #000000; margin: 0; padding: 0; display: inline-block; - border-width: $border-width; - border-style: $border-style; - border-color: $border-color; border-radius: $devui-border-radius-card; box-shadow: $devui-shadow-length-base $devui-shadow; background-color: $devui-base-bg; diff --git a/packages/devui-vue/devui/editor-md/src/editor-md.scss b/packages/devui-vue/devui/editor-md/src/editor-md.scss index 081665cd61..be4c8bde18 100644 --- a/packages/devui-vue/devui/editor-md/src/editor-md.scss +++ b/packages/devui-vue/devui/editor-md/src/editor-md.scss @@ -16,6 +16,11 @@ $font-family: helvetica, arial, 'PingFang', 'Microsoft YaHei', 'Hiragino Sans GB padding: 20px 0; } + .CodeMirror { + background: $devui-base-bg; + color: $devui-light-text; + } + .CodeMirror pre { padding: 0 20px; } @@ -106,6 +111,42 @@ $font-family: helvetica, arial, 'PingFang', 'Microsoft YaHei', 'Hiragino Sans GB } } + &.dp-md-dark { + span.cm-comment { + color: #428bdd; + } + + span.cm-link { + color: #ae81ff; + } + + span.cm-string { + color: #1dc116; + } + + code { + color: #c7254e; + } + + a { + color: #526ecc; + text-decoration: underline; + cursor: pointer; + } + + .CodeMirror-cursor { + border-left: 1px solid rgb(231, 225, 225); + } + + div.CodeMirror-selected { + background-color: $devui-list-item-selected-bg; + } + + span.cm-header { + color: #e0e0e0; + } + } + .CodeMirror-empty pre.CodeMirror-placeholder.CodeMirror-line-like { color: $devui-line; } diff --git a/packages/devui-vue/devui/editor-md/src/editor-md.tsx b/packages/devui-vue/devui/editor-md/src/editor-md.tsx index 68fbdd1470..d5b07bc7e0 100644 --- a/packages/devui-vue/devui/editor-md/src/editor-md.tsx +++ b/packages/devui-vue/devui/editor-md/src/editor-md.tsx @@ -1,7 +1,7 @@ import { defineComponent, toRefs, provide, ref, SetupContext } from 'vue'; import { Fullscreen } from '../../fullscreen'; import { useEditorMd } from './composables/use-editor-md'; -import { useEditorMdTheme } from './composables/use-editor-md-theme'; +import { useTheme } from '@devui/shared/utils/useTheme'; import { EditorMdInjectionKey, EditorMdProps, editorMdProps } from './editor-md-types'; import Toolbar from './components/toolbar'; import MdRender from './components/md-render'; @@ -52,7 +52,7 @@ export default defineComponent({ onPreviewMouseover, } = useEditorMd(props, ctx); - const { isDarkMode } = useEditorMdTheme(() => {}); + const { isDarkMode } = useTheme(); provide(EditorMdInjectionKey, { showFullscreen, diff --git a/packages/devui-vue/devui/gantt/src/gantt.scss b/packages/devui-vue/devui/gantt/src/gantt.scss index 4cc90984a0..df048c02ec 100644 --- a/packages/devui-vue/devui/gantt/src/gantt.scss +++ b/packages/devui-vue/devui/gantt/src/gantt.scss @@ -18,6 +18,10 @@ padding-top: 8px; } } + + button { + color: $devui-text; + } } .tool { diff --git a/packages/devui-vue/devui/git-graph/src/git-graph-class.ts b/packages/devui-vue/devui/git-graph/src/git-graph-class.ts index c620811109..64d57568ae 100644 --- a/packages/devui-vue/devui/git-graph/src/git-graph-class.ts +++ b/packages/devui-vue/devui/git-graph/src/git-graph-class.ts @@ -1,5 +1,5 @@ -import { cloneDeep } from "lodash"; -import { CommitInfo, GitGraphData } from "./git-graph-types"; +import { cloneDeep } from 'lodash'; +import { CommitInfo, GitGraphData } from './git-graph-types'; export class GitGraph { element?: HTMLElement; @@ -46,7 +46,7 @@ export class GitGraph { '#69DBB9', '#76DBEF', '#B1CE4F', - '#5DA4DC' + '#5DA4DC', ]; toolTipList: any; @@ -59,8 +59,12 @@ export class GitGraph { this.minutesAgo = options.params.minutesAgo || this.minutesAgo; this.aMinutesAgo = options.params.aMinutesAgo || this.aMinutesAgo; this.maxNameLength = options.params.maxNameLength || 25; + this.preStart = 1; + const commits = cloneDeep(this.options.data.commits).map((commit) => { + commit.hasDrawn = false; + return commit; + }); - const commits = cloneDeep(this.options.data.commits); this.prepareData(commits); return this.buildGraph('refName'); } @@ -139,8 +143,8 @@ export class GitGraph { x: this.offsetX + this.unitSpace * this.mspace + 56, y: this.offsetY + this.unitTime * mm - 22, 'font-size': '12px', - fill: '#999', - 'text-anchor': 'start' + fill: this.isDark ? '#8f93a3' : '#717580', + 'text-anchor': 'start', }; this.setNodeAttr(text, attrs); const tspan = document.createElementNS('http://www.w3.org/2000/svg', 'tspan'); @@ -154,7 +158,7 @@ export class GitGraph { } setNodeAttr(node: Element, attrs: any) { - Object.keys(attrs).forEach(key => { + Object.keys(attrs).forEach((key) => { node.setAttribute(key, attrs[key]); }); } @@ -238,7 +242,7 @@ export class GitGraph { fill: '#fff', strokeWidth: 1, stroke: this.colors[commit.space], - style: 'cursor: pointer;' + style: 'cursor: pointer;', }; this.setNodeAttr(circle, attrs); this.svg.appendChild(circle); @@ -254,7 +258,7 @@ export class GitGraph { href: commit.author.avatar_url, x: avatar_box_x, y: avatar_box_y, - style: 'clip-path: circle(50%)' + style: 'clip-path: circle(50%)', }; this.setNodeAttr(img, imgAttrs); @@ -274,7 +278,7 @@ export class GitGraph { d: route.join(' '), stroke: '#ccc', fill: 'none', - 'stroke-width': 2 + 'stroke-width': 2, }; this.setNodeAttr(line1, lineAttrs1); this.svg.appendChild(line1); @@ -283,7 +287,7 @@ export class GitGraph { const lineAttrs2 = { d: route.join(' '), stroke: '#ccc', - 'stroke-width': 2 + 'stroke-width': 2, }; this.setNodeAttr(line2, lineAttrs2); this.svg.appendChild(line2); @@ -394,7 +398,7 @@ export class GitGraph { y: y + 4, 'text-anchor': 'start', fill: 'none', - style: 'font-size: 10px;' + style: 'font-size: 10px;', }; this.setNodeAttr(text, textAttrs); @@ -488,7 +492,7 @@ export class GitGraph { this.setNodeAttr(resText, { x, y, - ...attrs + ...attrs, }); const tspan = document.createElementNS('http://www.w3.org/2000/svg', 'tspan'); tspan.appendChild(document.createTextNode(text)); @@ -521,10 +525,12 @@ export class GitGraph { 'text-anchor': 'start', }); - const branchText = commit.branch ? this.getText(x + 70, y + 35, commit.branch, { - font: '12px Arial', - fill: isDark ? '#73788a' : '#71757f', - }) : null; + const branchText = commit.branch + ? this.getText(x + 70, y + 35, commit.branch, { + font: '12px Arial', + fill: isDark ? '#73788a' : '#71757f', + }) + : null; const strList = commit.message.split('\n'); if (strList.length > 10) { @@ -576,7 +582,7 @@ export class GitGraph { }); textArr.unshift(rectShadow); - textArr.forEach(t => { + textArr.forEach((t) => { this.svg.appendChild(t); }); boxWidth = messageText.getBBox().width + 20 > boxWidth ? messageText.getBBox().width + 20 : boxWidth; diff --git a/packages/devui-vue/devui/git-graph/src/git-graph.tsx b/packages/devui-vue/devui/git-graph/src/git-graph.tsx index 95614bb715..f6b0ead566 100644 --- a/packages/devui-vue/devui/git-graph/src/git-graph.tsx +++ b/packages/devui-vue/devui/git-graph/src/git-graph.tsx @@ -1,25 +1,32 @@ -import { defineComponent, onMounted, ref, SetupContext, nextTick } from "vue"; -import { GitGraphProps, gitGraphProps } from "./git-graph-types"; -import useGitGraph from "./use-git-graph"; - +import { defineComponent, onMounted, reactive, SetupContext, nextTick } from 'vue'; +import { GitGraphProps, gitGraphProps, GitGraphData } from './git-graph-types'; +import { GitGraph } from './git-graph-class'; +import { useTheme } from '@devui/shared/utils/useTheme'; export default defineComponent({ name: 'DGitGraph', props: gitGraphProps, emits: ['scrollToBottom'], setup(props: GitGraphProps, ctx: SetupContext) { - const isDark = ref(false); - const {initTheme, initGraph} = useGitGraph(props, ctx, isDark); + const graph = new GitGraph(); + const initGraph = (element: HTMLElement, options: GitGraphData) => { + if (element && options) { + element.innerHTML = ''; + graph.load(element, options, isDarkMode.value); + } + }; + let paramsArr = reactive([]); + const { isDarkMode } = useTheme(() => { + initGraph(...paramsArr); + }); onMounted(() => { nextTick(() => { const graphEle = document.getElementsByClassName('d-graph-wrapper')[0] as HTMLElement; - initTheme(); - initGraph(graphEle, props.option, isDark.value); + initGraph(graphEle, props.option); + paramsArr = [graphEle, props.option]; }); }); - return () => ( -
- ); - } + return () =>
; + }, }); diff --git a/packages/devui-vue/devui/git-graph/src/use-git-graph.ts b/packages/devui-vue/devui/git-graph/src/use-git-graph.ts deleted file mode 100644 index 64ff169814..0000000000 --- a/packages/devui-vue/devui/git-graph/src/use-git-graph.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { Ref, SetupContext } from "vue"; -import { GitGraphData, GitGraphProps } from "./git-graph-types"; -import { GitGraph } from "./git-graph-class"; - -export default function useGitGraph( - props: GitGraphProps, - ctx: SetupContext, - isDark: Ref -) { - let themeService: any; - const graph = new GitGraph(); - - const themeChange = () => { - isDark.value = !!themeService?.currentTheme?.isDark; - }; - - const initTheme = () => { - themeService = (window as any)['devuiThemeService']; - isDark.value = !!themeService?.currentTheme?.isDark; - - if(themeService) { - themeService.eventBus.add('themeChanged', themeChange); - } - }; - - const initGraph = (element: HTMLElement, options: GitGraphData, isDarkMode: boolean) => { - graph.load(element, options, isDarkMode); - }; - - return { - initTheme, - initGraph - }; - -} diff --git a/packages/devui-vue/devui/input-icon/src/input-icon.scss b/packages/devui-vue/devui/input-icon/src/input-icon.scss index 4cd0479acd..bf83aedba8 100644 --- a/packages/devui-vue/devui/input-icon/src/input-icon.scss +++ b/packages/devui-vue/devui/input-icon/src/input-icon.scss @@ -10,7 +10,6 @@ $icon-left: 2px; label { flex: 1; - background-color: #cccccc; input { padding-right: $icon-size + $icon-offset + $icon-left; diff --git a/packages/devui-vue/devui/shared/utils/useTheme.ts b/packages/devui-vue/devui/shared/utils/useTheme.ts new file mode 100644 index 0000000000..35e5ef2bdc --- /dev/null +++ b/packages/devui-vue/devui/shared/utils/useTheme.ts @@ -0,0 +1,32 @@ +import { onBeforeMount, onBeforeUnmount, onMounted, ref } from 'vue'; + +export function useTheme(callback?: () => void) { + const isDarkMode = ref(false); + let themeService: any; + + const themeChange = () => { + if (themeService) { + isDarkMode.value = themeService.currentTheme.isDark; + callback && callback(); + } + }; + + onBeforeMount(() => { + themeService = window['devuiThemeService']; + }); + + onMounted(() => { + themeChange(); + if (themeService && themeService.eventBus) { + themeService.eventBus.add('themeChanged', themeChange); + } + }); + + onBeforeUnmount(() => { + if (themeService && themeService.eventBus) { + themeService.eventBus.remove('themeChanged', themeChange); + } + }); + + return { isDarkMode }; +} diff --git a/packages/devui-vue/devui/tag-input/src/tag-input.scss b/packages/devui-vue/devui/tag-input/src/tag-input.scss index 7f3f1443d1..ffd2dc82eb 100644 --- a/packages/devui-vue/devui/tag-input/src/tag-input.scss +++ b/packages/devui-vue/devui/tag-input/src/tag-input.scss @@ -98,7 +98,7 @@ vertical-align: top; font-size: $devui-font-size-page-title; border-radius: 50%; - background-color: $devui-line; + background-color: $devui-icon-fill; width: 12px; height: 12px; display: inline-block; @@ -123,13 +123,13 @@ span { &:hover { - color: $devui-list-item-hover-text; + color: $devui-icon-fill; } } .remove-button { &:hover { - background-color: $devui-list-item-hover-text; + background-color: $devui-icon-fill; } } } @@ -144,6 +144,7 @@ height: 22px; font-size: $devui-font-size; padding-left: 5px; + background-color: transparent; &::-ms-clear { display: none; @@ -176,7 +177,8 @@ font-size: $devui-font-size; line-height: 20px; border-radius: $devui-border-radius; - transition: color $devui-animation-duration-fast $devui-animation-ease-in-smooth, background-color $devui-animation-duration-fast $devui-animation-ease-in-smooth; + transition: color $devui-animation-duration-fast $devui-animation-ease-in-smooth, + background-color $devui-animation-duration-fast $devui-animation-ease-in-smooth; cursor: pointer; &:hover { diff --git a/packages/devui-vue/devui/tree-select/src/tree-select.scss b/packages/devui-vue/devui/tree-select/src/tree-select.scss index c1ea171f80..241dedb25d 100644 --- a/packages/devui-vue/devui/tree-select/src/tree-select.scss +++ b/packages/devui-vue/devui/tree-select/src/tree-select.scss @@ -8,6 +8,29 @@ $tree-select-item-font-size: 16px; .#{$devui-prefix}-tree-select { position: relative; width: 100%; + + svg.svg-icon path { + fill: $devui-icon-text; + } + + svg.svg-icon rect { + stroke: $devui-icon-text; + } + + &.#{$devui-prefix}-tree__node--open:not(.#{$devui-prefix}-tree-node__customIcon) { + & > .#{$devui-prefix}-tree__node-content svg.svg-icon path { + fill: $devui-icon-fill-active; + } + + & > .#{$devui-prefix}-tree__node-content svg.svg-icon rect { + stroke: $devui-icon-fill-active; + } + + & > .#{$devui-prefix}-tree__node-content svg.svg-icon.svg-icon-close rect:last-child { + stroke: none; + fill: $devui-icon-fill-active; + } + } } .#{$devui-prefix}-tree-select-disabled { diff --git a/packages/devui-vue/docs/.vitepress/devui-theme/components/NavBar.vue b/packages/devui-vue/docs/.vitepress/devui-theme/components/NavBar.vue index 73ad72e15d..c1d72b31fc 100644 --- a/packages/devui-vue/docs/.vitepress/devui-theme/components/NavBar.vue +++ b/packages/devui-vue/docs/.vitepress/devui-theme/components/NavBar.vue @@ -1,19 +1,16 @@ - ``` ::: diff --git a/packages/devui-vue/docs/components/time-picker/index.md b/packages/devui-vue/docs/components/time-picker/index.md index 1c03b531d9..e2d5629414 100644 --- a/packages/devui-vue/docs/components/time-picker/index.md +++ b/packages/devui-vue/docs/components/time-picker/index.md @@ -125,6 +125,12 @@ export default defineComponent({ }, }); + ``` :::