mirror of https://github.com/halo-dev/halo
parent
94d718c085
commit
631b2149d3
46
CHANGELOG.md
46
CHANGELOG.md
|
@ -1,5 +1,51 @@
|
|||
# CHANGELOG
|
||||
|
||||
# 1.5.0-alpha.1
|
||||
|
||||
## Breaking changes
|
||||
|
||||
- 评论表单中的邮箱地址不再作为必填项。 halo-dev/halo#1535 @jerry-shao
|
||||
- 重构文章表结构。
|
||||
- 提供单独的 `contents` 表存储文章内容,将不再使用 `posts` 表中的 `originalContent` 和 `formatContent` 字段。 halo-dev/halo#1617 @guqing
|
||||
- `formatContent` 已经废弃,将在下一个大版本中移除。后续使用 `content` 字段代替。 halo-dev/halo#1617 @guqing
|
||||
- 提供 `content_patch_logs` 表用于存储变更记录。 halo-dev/halo#1617 @guqing
|
||||
- 后台使用 @halo-dev/admin-api 进行接口请求。 halo-dev/halo-admin#378 @ruibaby @guqing
|
||||
- 修改后台页面标题后缀,由 `Halo Dashboard` 改为 `Halo`。 halo-dev/halo-admin#426 @ruibaby
|
||||
- 默认后台布局改为左侧菜单布局。 halo-dev/halo-admin#441 @ruibaby
|
||||
- 重构文章/自定义页面编辑逻辑,改为保存前端渲染内容,放弃后端渲染。 halo-dev/halo-admin#439 halo-dev/halo-admin#440 halo-dev/halo-admin#449 halo-dev/halo#1668 @ruibaby @guqing
|
||||
|
||||
## Features
|
||||
|
||||
- Content API 添加获取所有图库图片分组的接口(PhotoController#listTeams)。 halo-dev/halo#1515 @fuzui
|
||||
- Content API 添加根据 `themeId` 获取主题详情和设置的接口。 halo-dev/halo#1660 @guqing
|
||||
- 图库支持点赞。 halo-dev/halo#1537 @guqing
|
||||
- 文章标签支持设置颜色。 halo-dev/halo#1566 halo-dev/halo-admin#395 @ruibaby @guqing
|
||||
- 重构后台文章分类管理,支持排序。 halo-dev/halo#1650 halo-dev/halo#1657 halo-dev/halo-admin#435 @lan-yonghui @ruibaby @guqing
|
||||
- 文章设置界面支持重新生成别名。 halo-dev/halo-admin#368 @ruibaby
|
||||
|
||||
## Improvements
|
||||
|
||||
- 更新 Logo。 halo-dev/halo-admin#366 @ruibaby
|
||||
- 重构附件上传的文件命名逻辑,文件作为第一次上传的时候文件名不添加随机字符串。 halo-dev/halo#1500 @guqing
|
||||
- 优化后台编辑文章时的预览体验,预览文章或临时保存内容不会修改已经发布的内容。 halo-dev/halo#1617 halo-dev/halo-admin#439 @guqing @ruibaby
|
||||
- 重构后台主题设置界面,提供单独的设置页面,支持展示主题的相关信息。 halo-dev/halo-admin#380 @ruibaby
|
||||
- 弱化后台登录页面的动画效果。 halo-dev/halo-admin#369 @ruibaby
|
||||
- 优化后台附件管理列表预览图片样式。 halo-dev/halo-admin#374 halo-dev/halo-admin#382 @623337308 @cetr
|
||||
- 重构后台附件详情界面,取消原有抽屉的设计,改为弹窗。 halo-dev/halo-admin#375 halo-dev/halo-admin#381 @ruibaby
|
||||
- 重构后台文章/自定义页面设置界面,取消原有抽屉的设计,改为弹窗。 halo-dev/halo-admin#376 @ruibaby
|
||||
- 重构后台操作日志列表界面,取消原有抽屉的设计,提供单独的页面。 halo-dev/halo-admin#419 @ruibaby
|
||||
- 重构后台图片选择弹框组件,支持直接插入到编辑器,支持多选。 halo-dev/halo-admin#420 halo-dev/halo-admin#421 @ruibaby
|
||||
- 后台文章设置选择标签列表改为根据名称排序。 halo-dev/halo-admin#429 @ruibaby
|
||||
- 优化后台附件管理中批量操作附件的逻辑。 halo-dev/halo-admin#431 @ruibaby
|
||||
- 后台使用重构版本的编辑器,编辑区域支持高亮语法,优化数学公式和图表等渲染,优化表格的编辑体验。 halo-dev/halo-admin#447 @ruibaby
|
||||
|
||||
## Bug Fixes
|
||||
|
||||
- 修复修改加密文章或分类时没有清除用户访问权限的问题。 halo-dev/halo#1540 @guqing
|
||||
- 修复重置密码没有校验密码长度的问题。 halo-dev/halo#1636 halo-dev/halo-admin#403 @ruibaby @guqing
|
||||
- 修复后台文章设置中无法仅选择父级分类的问题。 halo-dev/halo-admin#367 @ruibaby
|
||||
- 修复后台菜单管理中移动菜单项到其他分组的时候,导致子菜单丢失的问题。 halo-dev/halo-admin#422 @ruibaby
|
||||
|
||||
# 1.4.17
|
||||
|
||||
## Breaking changes
|
||||
|
|
|
@ -1 +1 @@
|
|||
version=1.4.13-SNAPSHOT
|
||||
version=1.5.0-SNAPSHOT
|
||||
|
|
|
@ -2342,11 +2342,6 @@ i.trigger:hover {
|
|||
border-radius: 2px;
|
||||
color: #fff;
|
||||
}
|
||||
.logo {
|
||||
}
|
||||
.logo h1 {
|
||||
color: white;
|
||||
}
|
||||
.sider {
|
||||
box-shadow: 2px 0 6px rgba(0, 21, 41, 0.35);
|
||||
}
|
||||
|
@ -2358,9 +2353,6 @@ i.trigger:hover {
|
|||
background: white;
|
||||
box-shadow: 1px 1px 0 0 #e8e8e8;
|
||||
}
|
||||
.sider.light .logo h1 {
|
||||
color: @primary-color;
|
||||
}
|
||||
.sider.light :global(.ant-menu-light) {
|
||||
border-right-color: transparent;
|
||||
}
|
||||
|
@ -2386,9 +2378,6 @@ i.trigger:hover {
|
|||
.head.light {
|
||||
background-color: #fff;
|
||||
}
|
||||
.logo h1 {
|
||||
color: #fff;
|
||||
}
|
||||
.light h1 {
|
||||
color: #002140;
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
.chosen[data-v-56da7354],.ghost[data-v-56da7354]{opacity:.8;--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.chosen[data-v-56da7354]{padding:0 5px}.drag[data-v-56da7354]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding:0 5px}[data-v-56da7354] .ant-list-item-action{display:none}[data-v-56da7354] .menu-item:hover .ant-list-item-action{display:block}
|
|
@ -0,0 +1 @@
|
|||
[data-v-33a5f3d0] .installationForm .ant-divider .ant-divider-inner-text{padding-left:0}[data-v-33a5f3d0] .installationForm .ant-divider:before{width:0}
|
|
@ -0,0 +1 @@
|
|||
.chosen[data-v-bf844320],.ghost[data-v-bf844320]{opacity:.8;--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.chosen[data-v-bf844320]{padding:0 5px}.drag[data-v-bf844320]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding:0 5px}[data-v-bf844320] .ant-list-item-action{display:none}[data-v-bf844320] .menu-item:hover .ant-list-item-action{display:block}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
.comment_select_gravatar[data-v-5cb11a90]{border:1px solid #c8c8ca;margin:0 5px 3px 0}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 5.5 KiB |
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Copyright (C) 2017 by original authors @ fontello.com</metadata>
|
||||
<defs>
|
||||
<font id="fontello" horiz-adv-x="1000" >
|
||||
<font-face font-family="fontello" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
|
||||
<missing-glyph horiz-adv-x="1000" />
|
||||
<glyph glyph-name="bold" unicode="" d="M310 1q41-18 78-18 210 0 210 187 0 64-23 101-15 24-34 41t-38 26-45 14-47 6-53 1q-40 0-56-6 0-29 0-88t-1-88q0-5 0-38t0-54 2-47 7-37z m-8 417q23-4 61-4 46 0 80 7t61 25 42 50 14 79q0 39-16 68t-45 46-60 24-69 8q-28 0-73-7 0-28 3-84t2-85q0-15 0-45t-1-44q0-26 1-38z m-302-497l1 53q9 2 48 9t59 15q4 7 7 15t4 19 4 18 1 21 0 19v36q0 548-12 572-2 5-12 8t-25 6-28 4-27 3-17 2l-2 46q55 1 190 6t208 6q13 0 38-1t38 0q39 0 76-7t72-24 60-39 41-59 16-76q0-29-9-54t-22-40-36-32-41-25-47-22q86-20 144-75t57-138q0-56-20-101t-52-72-77-48-91-27-98-8q-25 0-74 2t-74 1q-59 0-171-6t-129-7z" horiz-adv-x="785.7" />
|
||||
|
||||
<glyph glyph-name="italic" unicode="" d="M0-78l10 48q12 4 34 9t40 11 33 13q16 19 23 56 1 4 35 162t63 303 29 165v14q-13 8-30 11t-39 4-32 3l10 58q19-1 67-4t84-4 67-1q27 0 55 1t68 4 54 4q-2-22-10-50-17-6-57-16t-60-19q-5-10-8-23t-5-23-4-25-4-24q-15-82-49-234t-43-198q-1-5-7-32t-11-51-9-46-4-32l1-10q9-3 103-18-2-24-9-55-6 0-18-1t-18-1q-16 0-49 6t-48 6q-77 1-115 1-28 0-79-5t-68-7z" horiz-adv-x="571.4" />
|
||||
|
||||
<glyph glyph-name="thumb-tack" unicode="" d="M650 779q12 0 24-5 19-8 29-23t11-35v-719q0-19-11-35t-29-23q-10-4-24-4-27 0-47 18l-246 236-246-236q-20-19-46-19-13 0-25 5-18 7-29 23t-11 35v719q0 19 11 35t29 23q12 5 25 5h585z" horiz-adv-x="714.3" />
|
||||
|
||||
<glyph glyph-name="link" unicode="" d="M813 171q0 23-16 38l-116 116q-16 16-38 16-24 0-40-18 1-1 10-10t12-12 9-11 7-14 2-15q0-23-16-38t-38-16q-8 0-15 2t-14 7-11 9-12 12-10 10q-19-17-19-40 0-23 16-38l115-116q15-15 38-15 22 0 38 15l82 81q16 16 16 37z m-393 394q0 22-15 38l-115 115q-16 16-38 16-22 0-38-15l-82-82q-16-15-16-37 0-22 16-38l116-116q15-15 38-15 23 0 40 17-2 2-11 11t-12 12-8 10-7 14-2 16q0 22 15 38t38 15q9 0 16-2t14-7 11-8 12-12 10-11q18 17 18 41z m500-394q0-66-48-113l-82-81q-46-47-113-47-68 0-114 48l-115 115q-46 47-46 114 0 68 49 116l-49 49q-48-49-116-49-67 0-114 47l-116 116q-47 47-47 114t47 113l82 82q47 46 114 46 67 0 114-47l115-116q46-46 46-113 0-69-49-117l49-49q48 49 116 49 67 0 114-47l116-116q47-47 47-114z" horiz-adv-x="928.6" />
|
||||
|
||||
<glyph glyph-name="picture-o" unicode="" d="M357 529q0-45-31-76t-76-32-76 32-31 76 31 76 76 31 76-31 31-76z m572-215v-250h-786v107l178 179 90-89 285 285z m53 393h-893q-7 0-12-5t-6-13v-678q0-7 6-13t12-5h893q7 0 13 5t5 13v678q0 8-5 13t-13 5z m89-18v-678q0-37-26-63t-63-27h-893q-36 0-63 27t-26 63v678q0 37 26 63t63 27h893q37 0 63-27t26-63z" horiz-adv-x="1071.4" />
|
||||
|
||||
<glyph glyph-name="repeat" unicode="" d="M857 707v-250q0-14-10-25t-26-11h-250q-23 0-32 23-10 22 7 38l77 77q-82 77-194 77-58 0-111-23t-91-61-61-91-23-111 23-111 61-91 91-61 111-23q66 0 125 29t100 82q4 6 13 7 8 0 14-5l76-77q5-4 6-11t-5-13q-60-74-147-114t-182-41q-87 0-167 34t-136 92-92 137-34 166 34 166 92 137 136 92 167 34q82 0 158-31t137-88l72 72q17 18 39 8 22-9 22-33z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="undo" unicode="" d="M857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="trash-o" unicode="" d="M286 439v-321q0-8-5-13t-13-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q8 0 13-5t5-13z m143 0v-321q0-8-5-13t-13-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q8 0 13-5t5-13z m142 0v-321q0-8-5-13t-12-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q7 0 12-5t5-13z m72-404v529h-500v-529q0-12 4-22t8-15 6-5h464q2 0 6 5t8 15 4 22z m-375 601h250l-27 65q-4 5-9 6h-177q-6-1-10-6z m518-18v-36q0-8-5-13t-13-5h-54v-529q0-46-26-80t-63-34h-464q-37 0-63 33t-27 79v531h-53q-8 0-13 5t-5 13v36q0 8 5 13t13 5h172l39 93q9 21 31 35t44 15h178q23 0 44-15t30-35l39-93h173q8 0 13-5t5-13z" horiz-adv-x="785.7" />
|
||||
|
||||
<glyph glyph-name="floppy-o" unicode="" d="M214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-7 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="compress" unicode="" d="M429 314v-250q0-14-11-25t-25-10-25 10l-81 81-185-186q-5-5-13-5t-12 5l-64 64q-6 6-6 13t6 13l185 185-80 80q-11 11-11 25t11 25 25 11h250q14 0 25-11t11-25z m421 375q0-7-6-12l-185-186 80-80q11-11 11-25t-11-25-25-11h-250q-14 0-25 11t-10 25v250q0 14 10 25t25 10 25-10l81-80 185 185q6 5 13 5t13-5l63-64q6-5 6-13z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="eye" unicode="" d="M929 314q-85 132-213 197 34-58 34-125 0-103-73-177t-177-73-177 73-73 177q0 67 34 125-128-65-213-197 75-114 187-182t242-68 243 68 186 182z m-402 215q0 11-8 19t-19 7q-70 0-120-50t-50-119q0-11 8-19t19-8 19 8 8 19q0 48 34 82t82 34q11 0 19 8t8 19z m473-215q0-19-11-38-78-129-210-206t-279-77-279 77-210 206q-11 19-11 38t11 39q78 128 210 205t279 78 279-78 210-205q11-20 11-39z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="eye-slash" unicode="" d="M310 105l43 79q-48 35-76 88t-27 114q0 67 34 125-128-65-213-197 94-144 239-209z m217 424q0 11-8 19t-19 7q-70 0-120-50t-50-119q0-11 8-19t19-8 19 8 8 19q0 48 34 82t82 34q11 0 19 8t8 19z m202 106q0-4 0-5-59-105-176-316t-176-316l-28-50q-5-9-15-9-7 0-75 39-9 6-9 16 0 7 25 49-80 36-147 96t-117 137q-11 17-11 38t11 39q86 131 212 207t277 76q50 0 100-10l31 54q5 9 15 9 3 0 10-3t18-9 18-10 18-10 10-7q9-5 9-15z m21-249q0-78-44-142t-117-91l157 280q4-25 4-47z m250-72q0-19-11-38-22-36-61-81-84-96-194-149t-234-53l41 74q119 10 219 76t169 171q-65 100-158 164l35 63q53-36 102-85t81-103q11-19 11-39z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="question-circle" unicode="" d="M500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-13 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-15-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="times" unicode="" d="M724 112q0-22-15-38l-76-76q-16-15-38-15t-38 15l-164 165-164-165q-16-15-38-15t-38 15l-76 76q-16 16-16 38t16 38l164 164-164 164q-16 16-16 38t16 38l76 76q16 16 38 16t38-16l164-164 164 164q16 16 38 16t38-16l76-76q15-15 15-38t-15-38l-164-164 164-164q15-15 15-38z" horiz-adv-x="785.7" />
|
||||
|
||||
<glyph glyph-name="align-left" unicode="" d="M1000 100v-71q0-15-11-25t-25-11h-928q-15 0-25 11t-11 25v71q0 15 11 25t25 11h928q15 0 25-11t11-25z m-214 214v-71q0-15-11-25t-25-11h-714q-15 0-25 11t-11 25v71q0 15 11 25t25 11h714q15 0 25-11t11-25z m143 215v-72q0-14-11-25t-25-11h-857q-15 0-25 11t-11 25v72q0 14 11 25t25 10h857q14 0 25-10t11-25z m-215 214v-72q0-14-10-25t-25-10h-643q-15 0-25 10t-11 25v72q0 14 11 25t25 11h643q14 0 25-11t10-25z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="align-center" unicode="" d="M1000 100v-71q0-15-11-25t-25-11h-928q-15 0-25 11t-11 25v71q0 15 11 25t25 11h928q15 0 25-11t11-25z m-214 214v-71q0-15-11-25t-25-11h-500q-14 0-25 11t-11 25v71q0 15 11 25t25 11h500q15 0 25-11t11-25z m143 215v-72q0-14-11-25t-25-11h-786q-14 0-25 11t-11 25v72q0 14 11 25t25 10h786q14 0 25-10t11-25z m-215 214v-72q0-14-10-25t-25-10h-358q-14 0-25 10t-10 25v72q0 14 10 25t25 11h358q14 0 25-11t10-25z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="align-right" unicode="" d="M1000 100v-71q0-15-11-25t-25-11h-928q-15 0-25 11t-11 25v71q0 15 11 25t25 11h928q15 0 25-11t11-25z m0 214v-71q0-15-11-25t-25-11h-714q-14 0-25 11t-11 25v71q0 15 11 25t25 11h714q15 0 25-11t11-25z m0 215v-72q0-14-11-25t-25-11h-857q-14 0-25 11t-11 25v72q0 14 11 25t25 10h857q15 0 25-10t11-25z m0 214v-72q0-14-11-25t-25-10h-643q-14 0-25 10t-10 25v72q0 14 10 25t25 11h643q15 0 25-11t11-25z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="arrows-alt" unicode="" d="M716 548l-198-198 198-198 80 80q17 18 39 8 22-9 22-33v-250q0-14-10-25t-26-11h-250q-23 0-32 23-10 21 7 38l81 81-198 198-198-198 80-81q17-17 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l80-80 198 198-198 198-80-80q-11-11-25-11-7 0-14 3-22 9-22 33v250q0 14 11 25t25 11h250q23 0 33-23 9-21-8-38l-80-81 198-198 198 198-81 81q-17 17-7 38 9 23 32 23h250q15 0 26-11t10-25v-250q0-24-22-33-7-3-14-3-14 0-25 11z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="bars" unicode="" d="M857 100v-71q0-15-10-25t-26-11h-785q-15 0-25 11t-11 25v71q0 15 11 25t25 11h785q15 0 26-11t10-25z m0 286v-72q0-14-10-25t-26-10h-785q-15 0-25 10t-11 25v72q0 14 11 25t25 10h785q15 0 26-10t10-25z m0 285v-71q0-14-10-25t-26-11h-785q-15 0-25 11t-11 25v71q0 15 11 26t25 10h785q15 0 26-10t10-26z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="list-ul" unicode="" d="M214 64q0-44-31-76t-76-31-76 31-31 76 31 76 76 31 76-31 31-76z m0 286q0-45-31-76t-76-31-76 31-31 76 31 76 76 31 76-31 31-76z m786-232v-107q0-7-5-13t-13-5h-678q-8 0-13 5t-5 13v107q0 7 5 12t13 6h678q7 0 13-6t5-12z m-786 518q0-45-31-76t-76-31-76 31-31 76 31 76 76 31 76-31 31-76z m786-232v-108q0-7-5-12t-13-5h-678q-8 0-13 5t-5 12v108q0 7 5 12t13 5h678q7 0 13-5t5-12z m0 285v-107q0-7-5-12t-13-6h-678q-8 0-13 6t-5 12v107q0 8 5 13t13 5h678q7 0 13-5t5-13z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="list-ol" unicode="" d="M213-54q0-45-31-70t-75-26q-60 0-96 37l31 49q28-25 60-25 16 0 28 8t12 24q0 35-59 31l-14 31q4 6 18 24t24 31 20 21v1q-9 0-27-1t-27 0v-30h-59v85h186v-49l-53-65q28-6 45-27t17-49z m1 350v-89h-202q-4 20-4 30 0 29 14 52t31 38 37 27 31 24 14 25q0 14-9 22t-22 7q-25 0-45-32l-47 33q13 28 40 44t59 16q40 0 68-23t28-63q0-28-19-51t-42-36-42-28-20-30h71v34h59z m786-178v-107q0-7-5-13t-13-5h-678q-8 0-13 5t-5 13v107q0 8 5 13t13 5h678q7 0 13-6t5-12z m-786 502v-56h-187v56h60q0 22 0 67t1 68v7h-1q-5-10-28-30l-40 42 76 71h59v-225h60z m786-216v-108q0-7-5-12t-13-5h-678q-8 0-13 5t-5 12v108q0 7 5 12t13 5h678q7 0 13-5t5-12z m0 285v-107q0-7-5-12t-13-6h-678q-8 0-13 6t-5 12v107q0 8 5 13t13 5h678q7 0 13-5t5-13z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="strikethrough" unicode="" d="M982 350q8 0 13-5t5-13v-36q0-7-5-12t-13-5h-964q-8 0-13 5t-5 12v36q0 8 5 13t13 5h964z m-712 36q-16 19-29 44-27 55-27 105 0 101 75 173 74 71 219 71 28 0 94-11 36-7 98-27 6-21 12-66 8-68 8-102 0-10-3-25l-7-2-46 4-8 1q-28 83-58 114-49 51-117 51-64 0-101-33-38-32-38-81 0-41 37-78t156-72q38-12 96-37 33-16 53-29h-414z m283-143h229q4-22 4-51 0-62-23-119-13-31-40-58-20-19-61-45-44-27-85-37-45-12-113-12-64 0-109 13l-78 23q-32 8-40 15-5 5-5 12v8q0 60-1 87 0 17 0 38l1 20v25l57 1q8-19 17-40t12-31 7-15q20-32 45-52 24-20 59-32 33-12 73-12 36 0 78 15 43 14 68 48 26 34 26 72 0 47-45 87-19 16-76 40z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="underline" unicode="" d="M27 726q-21 1-25 2l-2 49q7 1 22 1 34 0 63-3 74-4 93-4 47 0 93 2 65 2 82 3 31 0 48 1l-1-8 1-36v-5q-33-5-69-5-33 0-44-14-7-7-7-73 0-7 0-18t0-15l1-127 8-157q3-69 28-112 20-33 54-52 49-26 98-26 59 0 107 16 31 10 55 28 27 20 37 36 20 31 29 63 12 41 12 128 0 44-2 72t-6 68-8 89l-2 33q-3 37-13 49-19 20-43 19l-56-1-8 2 1 48h47l114-6q43-2 110 6l10-1q3-22 3-29 0-4-2-17-25-7-47-8-41-6-44-9-8-8-8-23 0-4 0-15t1-17q5-11 13-221 3-109-9-170-8-42-23-68-21-36-62-69-42-31-102-49-61-19-142-19-93 0-159 26-66 26-99 68-34 42-47 109-9 45-9 132v186q0 105-9 119-14 20-82 22z m830-787v36q0 8-5 13t-13 5h-821q-8 0-13-5t-5-13v-36q0-8 5-13t13-5h821q8 0 13 5t5 13z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="table" unicode="" d="M286 82v107q0 8-5 13t-13 5h-179q-7 0-12-5t-6-13v-107q0-8 6-13t12-5h179q8 0 13 5t5 13z m0 214v108q0 7-5 12t-13 5h-179q-7 0-12-5t-6-12v-108q0-7 6-12t12-5h179q8 0 13 5t5 12z m285-214v107q0 8-5 13t-12 5h-179q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h179q7 0 12 5t5 13z m-285 429v107q0 8-5 13t-13 5h-179q-7 0-12-5t-6-13v-107q0-8 6-13t12-5h179q8 0 13 5t5 13z m285-215v108q0 7-5 12t-12 5h-179q-8 0-13-5t-5-12v-108q0-7 5-12t13-5h179q7 0 12 5t5 12z m286-214v107q0 8-5 13t-13 5h-178q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h178q8 0 13 5t5 13z m-286 429v107q0 8-5 13t-12 5h-179q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h179q7 0 12 5t5 13z m286-215v108q0 7-5 12t-13 5h-178q-8 0-13-5t-5-12v-108q0-7 5-12t13-5h178q8 0 13 5t5 12z m0 215v107q0 8-5 13t-13 5h-178q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h178q8 0 13 5t5 13z m72 178v-607q0-37-27-63t-63-26h-750q-36 0-63 26t-26 63v607q0 37 26 63t63 27h750q37 0 63-27t27-63z" horiz-adv-x="928.6" />
|
||||
|
||||
<glyph glyph-name="columns" unicode="" d="M89-7h340v643h-358v-625q0-7 6-13t12-5z m768 18v625h-357v-643h339q8 0 13 5t5 13z m72 678v-678q0-37-27-63t-63-27h-750q-36 0-63 27t-26 63v678q0 37 26 63t63 27h750q37 0 63-27t27-63z" horiz-adv-x="928.6" />
|
||||
|
||||
<glyph glyph-name="quote-left" unicode="" d="M429 314v-214q0-45-32-76t-76-31h-214q-44 0-76 31t-31 76v393q0 58 23 111t61 91 91 61 111 23h35q15 0 26-11t10-25v-72q0-14-10-25t-26-10h-35q-59 0-101-42t-42-101v-18q0-22 16-38t37-16h125q45 0 76-31t32-76z m500 0v-214q0-45-32-76t-76-31h-214q-44 0-76 31t-31 76v393q0 58 23 111t61 91 91 61 111 23h35q15 0 26-11t10-25v-72q0-14-10-25t-26-10h-35q-59 0-101-42t-42-101v-18q0-22 16-38t37-16h125q45 0 76-31t32-76z" horiz-adv-x="928.6" />
|
||||
|
||||
<glyph glyph-name="code" unicode="" d="M344 69l-28-28q-5-5-12-5t-13 5l-260 261q-6 5-6 12t6 13l260 260q5 6 13 6t12-6l28-28q6-5 6-13t-6-12l-219-220 219-219q6-6 6-13t-6-13z m330 596l-208-721q-2-7-9-11t-13-1l-34 9q-8 3-11 9t-2 14l209 720q2 8 8 11t13 2l35-10q7-2 11-9t1-13z m367-363l-260-261q-6-5-13-5t-13 5l-28 28q-5 6-5 13t5 13l219 219-219 220q-5 5-5 12t5 13l28 28q6 6 13 6t13-6l260-260q5-5 5-13t-5-12z" horiz-adv-x="1071.4" />
|
||||
|
||||
<glyph glyph-name="superscript" unicode="" d="M501 86v-93h-139l-89 141-13 23q-4 5-6 12h-2q0-2-1-4t-2-4-2-4q-5-11-14-25l-86-139h-144v93h71l110 162-103 152h-76v94h154l77-127q1-2 13-24 4-5 6-11h2q1 5 6 11l14 24 78 127h143v-94h-69l-103-149 114-165h61z m355 379v-115h-287l-1 15q-3 16-3 26 0 36 15 65t36 48 47 37 47 30 36 30 15 36q0 21-17 35t-39 13q-29 0-54-21-8-6-20-22l-59 52q15 20 35 37 47 36 105 36 61 0 99-33t38-89q0-31-13-57t-35-43-45-33-46-28-37-28-17-36h130v45h70z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="subscript" unicode="" d="M501 86v-93h-139l-89 141-13 23q-4 5-6 12h-2q0-2-1-4t-2-4-2-4q-5-11-14-25l-86-139h-144v93h71l110 162-103 152h-76v94h154l77-127q1-2 13-24 4-5 6-11h2q1 5 6 11l14 24 78 127h143v-94h-69l-103-149 114-165h61z m356-121v-115h-287l-2 15q-2 25-2 26 0 35 15 65t36 48 47 37 47 30 36 30 15 36q0 21-17 35t-39 13q-28 0-54-21-8-6-20-22l-59 52q15 20 35 37 45 36 105 36 62 0 100-33t37-89q0-37-19-66t-47-48-55-35-49-35-23-41h130v45h70z" horiz-adv-x="857.1" />
|
||||
|
||||
<glyph glyph-name="header" unicode="" d="M939-79q-25 0-74 2t-75 2q-24 0-73-2t-74-2q-13 0-21 12t-7 25q0 18 9 26t22 9 29 4 25 9q18 11 18 78l0 218q0 12-1 17-7 3-28 3h-376q-22 0-29-3 0-5 0-17l-1-207q0-79 21-91 9-6 26-8t32-2 25-8 11-26q0-14-6-26t-21-13q-26 0-78 2t-77 2q-24 0-71-2t-71-2q-13 0-20 12t-7 25q0 17 9 25t20 10 26 4 24 9q18 13 18 80l-1 31v454q0 2 1 15t0 20-1 21-2 24-4 20-6 18-9 10q-8 5-25 7t-29 1-23 7-10 26q0 14 6 26t20 13q26 0 78-2t77-2q23 0 71 2t70 2q14 0 21-13t7-26q0-17-9-25t-22-8-27-2-24-7q-20-12-20-90l1-178q0-12 0-18 7-2 22-2h390q14 0 21 2 1 6 1 18l0 178q0 78-19 90-10 6-33 7t-37 7-14 28q0 14 7 26t21 13q24 0 74-2t73-2q24 0 72 2t72 2q14 0 21-13t7-26q0-17-10-25t-22-8-29-2-24-7q-20-13-20-90l1-526q0-66 19-78 9-6 25-8t30-2 23-9 10-25q0-14-6-26t-20-13z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="window-maximize" unicode="" d="M143 64h714v429h-714v-429z m857 625v-678q0-37-26-63t-63-27h-822q-36 0-63 27t-26 63v678q0 37 26 63t63 27h822q37 0 63-27t26-63z" horiz-adv-x="1000" />
|
||||
</font>
|
||||
</defs>
|
||||
</svg>
|
Before Width: | Height: | Size: 16 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[26],{13026:function(e,o,r){r.r(o),r.d(o,{default:function(){return n}});var s=function(){var e=this,o=e.$createElement,r=e._self._c||o;return r("div",{staticClass:"container-wrapper animated fadeIn"},[e._m(0),r("div",[r("a-form-model",{ref:"sendCodeForm",attrs:{model:e.form.model,rules:e.form.sendCodeRules,layout:"vertical"}},[r("a-form-model-item",{attrs:{prop:"username"}},[r("a-input",{attrs:{placeholder:"用户名"},model:{value:e.form.model.username,callback:function(o){e.$set(e.form.model,"username",o)},expression:"form.model.username"}},[r("a-icon",{staticStyle:{color:"rgba(0, 0, 0, 0.25)"},attrs:{slot:"prefix",type:"user"},slot:"prefix"})],1)],1),r("a-form-model-item",{attrs:{prop:"email"}},[r("a-input",{attrs:{placeholder:"邮箱"},model:{value:e.form.model.email,callback:function(o){e.$set(e.form.model,"email",o)},expression:"form.model.email"}},[r("a-icon",{staticStyle:{color:"rgba(0, 0, 0, 0.25)"},attrs:{slot:"prefix",type:"mail"},slot:"prefix"})],1)],1)],1),r("a-form-model",{ref:"passwordForm",attrs:{model:e.form.model,rules:e.form.rules,layout:"vertical"}},[r("a-form-model-item",{attrs:{prop:"code"}},[r("a-input",{attrs:{placeholder:"验证码",type:"password"},scopedSlots:e._u([{key:"addonAfter",fn:function(){return[r("a-button",{staticClass:"!p-0 !h-auto",attrs:{type:"link"},on:{click:e.handleSendCode}},[e._v("获取")])]},proxy:!0}]),model:{value:e.form.model.code,callback:function(o){e.$set(e.form.model,"code",o)},expression:"form.model.code"}},[r("a-icon",{staticStyle:{color:"rgba(0, 0, 0, 0.25)"},attrs:{slot:"prefix",type:"safety-certificate"},slot:"prefix"})],1)],1),r("a-form-model-item",{attrs:{prop:"password"}},[r("a-input",{attrs:{autocomplete:"new-password",placeholder:"新密码",type:"password"},model:{value:e.form.model.password,callback:function(o){e.$set(e.form.model,"password",o)},expression:"form.model.password"}},[r("a-icon",{staticStyle:{color:"rgba(0, 0, 0, 0.25)"},attrs:{slot:"prefix",type:"lock"},slot:"prefix"})],1)],1),r("a-form-model-item",{attrs:{prop:"confirmPassword"}},[r("a-input",{attrs:{autocomplete:"new-password",placeholder:"确认密码",type:"password"},model:{value:e.form.model.confirmPassword,callback:function(o){e.$set(e.form.model,"confirmPassword",o)},expression:"form.model.confirmPassword"}},[r("a-icon",{staticStyle:{color:"rgba(0, 0, 0, 0.25)"},attrs:{slot:"prefix",type:"lock"},slot:"prefix"})],1)],1),r("a-form-model-item",[r("a-button",{attrs:{block:!0,type:"primary"},on:{click:e.handleResetPassword}},[e._v("重置密码")])],1)],1),r("router-link",{staticClass:"tip",attrs:{to:{name:"Login"}}},[e._v(" 返回登录")])],1)])},a=[function(){var e=this,o=e.$createElement,r=e._self._c||o;return r("div",{staticClass:"halo-logo"},[r("img",{attrs:{alt:"Halo Logo",src:"/images/logo.svg"}}),r("span",[e._v("重置密码")])])}],t=(r(87591),r(1540)),l={data(){const e=(e,o,r)=>{o&&this.form.model.password!==o?r(new Error("确认密码与新密码不一致")):r()};return{form:{model:{},sendCodeRules:{username:[{required:!0,message:"* 用户名不能为空",trigger:["change"]}],email:[{required:!0,message:"* 电子邮箱地址不能为空",trigger:["change"]}]},rules:{code:[{required:!0,message:"* 验证码不能为空",trigger:["change"]}],password:[{required:!0,message:"* 新密码不能为空",trigger:["change"]},{max:100,min:8,message:"* 密码的字符长度必须在 8 - 100 之间",trigger:["change"]}],confirmPassword:[{required:!0,message:"* 确认密码不能为空",trigger:["change"]},{validator:e,trigger:["change"]}]}}}},methods:{handleSendCode(){this.$refs.sendCodeForm.validate((async e=>{if(e){const e=this.$message.loading("发送中...",0);try{await t.Z.sendResetPasswordCode(this.form.model),this.$message.success("邮件发送成功,五分钟内有效")}catch(o){this.$log.error("Failed send code: ",o)}finally{e()}}}))},handleResetPassword(){this.$refs.sendCodeForm.validate((e=>{e&&this.$refs.passwordForm.validate((async e=>{if(e)try{await t.Z.resetPassword(this.form.model),await this.$router.push({name:"Login"}),this.$message.success("密码重置成功!")}catch(o){this.$log.error("Failed reset password: ",o)}}))}))}}},i=l,m=r(18156),d=(0,m.Z)(i,s,a,!1,null,null,null),n=d.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[403],{52403:function(t,e,o){o.r(e),o.d(e,{default:function(){return w}});var n=function(){var t=this,e=t.$createElement,o=t._self._c||e;return o("page-view",{attrs:{"sub-title":t.postToStage.inProgress?"当前内容已保存,但还未发布。":"",title:t.postToStage.title?t.postToStage.title:"新文章",affix:""}},[o("template",{slot:"extra"},[o("a-space",[o("a-button",{attrs:{loading:t.previewSaving},on:{click:t.handlePreviewClick}},[t._v("预览")]),o("a-button",{attrs:{type:"primary"},on:{click:function(e){t.postSettingVisible=!0}}},[t._v("发布")])],1)],1),o("a-row",{attrs:{gutter:12}},[o("a-col",{attrs:{span:24}},[o("div",{staticClass:"mb-4"},[o("a-input",{attrs:{placeholder:"请输入文章标题",size:"large"},model:{value:t.postToStage.title,callback:function(e){t.$set(t.postToStage,"title",e)},expression:"postToStage.title"}})],1),o("div",{style:{height:t.editorHeight},attrs:{id:"editor"}},[o("MarkdownEditor",{attrs:{originalContent:t.postToStage.originalContent},on:{"update:originalContent":function(e){return t.$set(t.postToStage,"originalContent",e)},"update:original-content":function(e){return t.$set(t.postToStage,"originalContent",e)},change:t.onContentChange,save:function(e){return t.handleSaveDraft()}}})],1)])],1),o("PostSettingModal",{attrs:{post:t.postToStage,savedCallback:t.onPostSavedCallback,visible:t.postSettingVisible},on:{"update:visible":function(e){t.postSettingVisible=e},onUpdate:t.onUpdateFromSetting}})],2)},a=[],s=o(92158),i=o(26815),r=o(50990),l=o(3832),d=o(86637),h=o(1540),g=o(86763),p=o.n(g),c={mixins:[l.jB,l.KT,l.g3],components:{PostSettingModal:s.Z,MarkdownEditor:i.Z,PageView:r.B4},data(){return{postSettingVisible:!1,postToStage:{},contentChanges:0,previewSaving:!1}},beforeRouteEnter(t,e,o){const n=t.query.postId;o((async t=>{if(n){const{data:e}=await h.Z.post.get(Number(n));t.postToStage=e}}))},destroyed(){window.onbeforeunload&&(window.onbeforeunload=null)},beforeRouteLeave(t,e,o){const n=this.$createElement;this.contentChanges<=1?o():this.$confirm({title:"当前页面数据未保存,确定要离开吗?",content:()=>n("div",{style:"color:red;"},["如果离开当面页面,你的数据很可能会丢失!"]),onOk(){o()},onCancel(){o(!1)}})},mounted(){window.onbeforeunload=function(t){return t=t||window.event,t&&(t.returnValue="当前页面数据未保存,确定要离开吗?"),"当前页面数据未保存,确定要离开吗?"}},beforeMount(){document.addEventListener("keydown",this.onRegisterSaveShortcut)},beforeDestroy(){document.removeEventListener("keydown",this.onRegisterSaveShortcut)},methods:{onRegisterSaveShortcut(t){!t.ctrlKey&&!t.metaKey||t.altKey||t.shiftKey||83!==t.keyCode||(t.preventDefault(),t.stopPropagation(),this.handleSaveDraft())},handleSaveDraft:p()((async function(){if(this.postToStage.id)try{const{data:t}=await h.Z.post.updateDraftById(this.postToStage.id,this.postToStage.originalContent,this.postToStage.content,!0);this.postToStage.inProgress=t.inProgress,this.handleRestoreSavedStatus(),this.$message.success({content:"内容已保存",duration:.5})}catch(t){this.$log.error("Failed to update post content",t)}else await this.handleCreatePost()}),300),async handleCreatePost(){this.postToStage.title||(this.postToStage.title=(0,d._)(new Date,"YYYY-MM-DD-HH-mm-ss"));try{this.postToStage.keepRaw=!0;const{data:t}=await h.Z.post.create(this.postToStage);this.postToStage=t,this.handleRestoreSavedStatus();const e=this.$router.history.current.path;this.$router.push({path:e,query:{postId:this.postToStage.id}}).catch((t=>t)),this.$message.success({content:"文章已创建",duration:.5})}catch(t){this.$log.error("Failed to create post",t)}},async handlePreviewClick(){if(this.previewSaving=!0,this.postToStage.id){const{data:t}=await h.Z.post.updateDraftById(this.postToStage.id,this.postToStage.originalContent,this.postToStage.content,!0);this.postToStage.inProgress=t.inProgress}else await this.handleCreatePost();await this.handleOpenPreview()},async handleOpenPreview(){try{const t=await h.Z.post.getPreviewLinkById(this.postToStage.id);window.open(t,"_blank"),this.handleRestoreSavedStatus()}catch(t){this.$log.error("Failed to get preview link",t)}finally{setTimeout((()=>{this.previewSaving=!1}),400)}},handleRestoreSavedStatus(){this.contentChanges=0},onContentChange({originalContent:t,renderContent:e}){this.contentChanges++,this.postToStage.originalContent=t,this.postToStage.content=e},onPostSavedCallback(){this.contentChanges=0,this.$router.push({name:"PostList"})},onUpdateFromSetting(t){this.postToStage=t}}},u=c,S=o(18156),v=(0,S.Z)(u,n,a,!1,null,null,null),w=v.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[442],{90442:function(e,r,t){t.r(r),t.d(r,{default:function(){return v}});var n=function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("a-form",{attrs:{wrapperCol:e.wrapperCol,layout:"vertical"}},[t("a-form-item",{attrs:{label:"开发者选项:"}},[t("a-switch",{model:{value:e.options.developer_mode,callback:function(r){e.$set(e.options,"developer_mode",r)},expression:"options.developer_mode"}})],1),t("a-form-item",[t("ReactiveButton",{attrs:{errored:e.errored,loading:e.saving,erroredText:"保存失败",loadedText:"保存成功",text:"保存",type:"primary"},on:{callback:function(r){e.errored=!1},click:e.handleSaveOptions}})],1)],1)},a=[],o=t(91057),s=t(76381),i=(t(30535),t(85018),t(70315),t(98906)),c=t(1540),l={name:"SettingsForm",data:function(){return{options:{},wrapperCol:{xl:{span:8},lg:{span:8},sm:{span:12},xs:{span:24}},saving:!1,errored:!1}},created:function(){this.handleListOptions()},methods:(0,s.Z)((0,s.Z)({},(0,i.nv)(["refreshOptionsCache"])),{},{handleListOptions:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function r(){var t,n;return regeneratorRuntime.wrap((function(r){while(1)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,c.Z.option.listAsMapViewByKeys(["developer_mode"]);case 3:t=r.sent,n=t.data,e.options=n,r.next=11;break;case 8:r.prev=8,r.t0=r["catch"](0),e.$log.error(r.t0);case 11:case"end":return r.stop()}}),r,null,[[0,8]])})))()},handleSaveOptions:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function r(){return regeneratorRuntime.wrap((function(r){while(1)switch(r.prev=r.next){case 0:return r.prev=0,e.saving=!0,r.next=4,c.Z.option.saveMapView(e.options);case 4:r.next=10;break;case 6:r.prev=6,r.t0=r["catch"](0),e.errored=!1,e.$log.error(r.t0);case 10:return r.prev=10,setTimeout((function(){e.saving=!1}),400),r.next=14,e.handleListOptions();case 14:return r.next=16,e.refreshOptionsCache();case 16:if(e.options.developer_mode){r.next=19;break}return r.next=19,e.$router.replace({name:"ToolList"});case 19:return r.finish(10);case 20:case"end":return r.stop()}}),r,null,[[0,6,10,20]])})))()}})},p=l,u=t(18156),d=(0,u.Z)(p,n,a,!1,null,null,null),v=d.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[442],{90442:function(e,t,a){a.r(t),a.d(t,{default:function(){return h}});var o=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-form",{attrs:{wrapperCol:e.wrapperCol,layout:"vertical"}},[a("a-form-item",{attrs:{label:"开发者选项:"}},[a("a-switch",{model:{value:e.options.developer_mode,callback:function(t){e.$set(e.options,"developer_mode",t)},expression:"options.developer_mode"}})],1),a("a-form-item",[a("ReactiveButton",{attrs:{errored:e.errored,loading:e.saving,erroredText:"保存失败",loadedText:"保存成功",text:"保存",type:"primary"},on:{callback:function(t){e.errored=!1},click:e.handleSaveOptions}})],1)],1)},r=[],s=a(98906),i=a(1540),n={name:"SettingsForm",data(){return{options:{},wrapperCol:{xl:{span:8},lg:{span:8},sm:{span:12},xs:{span:24}},saving:!1,errored:!1}},created(){this.handleListOptions()},methods:{...(0,s.nv)(["refreshOptionsCache"]),async handleListOptions(){try{const{data:e}=await i.Z.option.listAsMapViewByKeys(["developer_mode"]);this.options=e}catch(e){this.$log.error(e)}},async handleSaveOptions(){try{this.saving=!0,await i.Z.option.saveMapView(this.options)}catch(e){this.errored=!1,this.$log.error(e)}finally{setTimeout((()=>{this.saving=!1}),400),await this.handleListOptions(),await this.refreshOptionsCache(),this.options.developer_mode||await this.$router.replace({name:"ToolList"})}}}},l=n,p=a(18156),d=(0,p.Z)(l,o,r,!1,null,null,null),h=d.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[70],{82070:function(t,e,a){a.r(e),a.d(e,{default:function(){return h}});var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("page-view",[a("a-card",{attrs:{bodyStyle:{padding:"16px"},bordered:!1}},[a("div",{staticClass:"table-operator"},[a("a-button",{attrs:{type:"danger"},on:{click:t.handleClearActionLogs}},[t._v("清空操作日志")])],1),a("div",{staticClass:"mt-4"},[a("a-table",{attrs:{columns:t.list.columns,dataSource:t.list.data,loading:t.list.loading,pagination:!1,rowKey:function(t){return t.id},scrollToFirstRowOnChange:!0},scopedSlots:t._u([{key:"type",fn:function(e){return[t._v(" "+t._s(t._f("typeConvert")(e))+" ")]}},{key:"ipAddress",fn:function(e){return[a("div",{staticClass:"blur hover:blur-none transition-all"},[t._v(t._s(e))])]}},{key:"createTime",fn:function(e){return[a("a-tooltip",{attrs:{placement:"top"}},[a("template",{slot:"title"},[t._v(" "+t._s(t._f("moment")(e))+" ")]),t._v(" "+t._s(t._f("timeAgo")(e))+" ")],2)]}}])}),a("div",{staticClass:"page-wrapper"},[a("a-pagination",{staticClass:"pagination",attrs:{current:t.pagination.page,defaultPageSize:t.pagination.size,pageSizeOptions:["10","20","50","100"],total:t.pagination.total,showLessItems:"",showSizeChanger:""},on:{change:t.handlePageChange,showSizeChange:t.handlePageSizeChange}})],1)],1)])],1)},i=[],s=a(91057),r=(a(41479),a(70315),a(50990)),o=a(1540),l=a(78588),c=[{title:"ID",dataIndex:"id"},{title:"类型",dataIndex:"type",scopedSlots:{customRender:"type"}},{title:"关键值",dataIndex:"logKey"},{title:"内容",dataIndex:"content"},{title:"IP",dataIndex:"ipAddress",scopedSlots:{customRender:"ipAddress"}},{title:"操作时间",dataIndex:"createTime",scopedSlots:{customRender:"createTime"}}],d={name:"ActionLog",components:{PageView:r.B4},data:function(){return{list:{columns:c,data:[],total:0,loading:!1,params:{page:0,size:50}}}},computed:{pagination:function(){return{page:this.list.params.page+1,size:this.list.params.size,total:this.list.total}}},created:function(){this.handleListActionLogs()},methods:{handleListActionLogs:function(){var t=this;return(0,s.Z)(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.prev=0,t.list.loading=!0,e.next=4,o.Z.log.list(t.list.params);case 4:a=e.sent,t.list.data=a.data.content,t.list.total=a.data.total,e.next=12;break;case 9:e.prev=9,e.t0=e["catch"](0),t.$log.error(e.t0);case 12:return e.prev=12,t.list.loading=!1,e.finish(12);case 15:case"end":return e.stop()}}),e,null,[[0,9,12,15]])})))()},handlePageChange:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.list.params.page=t-1,this.handleListActionLogs()},handlePageSizeChange:function(t,e){this.$log.debug("Current: ".concat(t,", PageSize: ").concat(e)),this.list.params.page=0,this.list.params.size=e,this.handleListActionLogs()},handleClearActionLogs:function(){var t=this;t.$confirm({title:"提示",maskClosable:!0,content:"是否确定要清空所有操作日志?",onOk:function(){return(0,s.Z)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,o.Z.log.clear();case 3:e.next=8;break;case 5:e.prev=5,e.t0=e["catch"](0),t.$log.error("Failed to clear action logs.",e.t0);case 8:return e.prev=8,e.next=11,t.handleListActionLogs();case 11:return e.finish(8);case 12:case"end":return e.stop()}}),e,null,[[0,5,8,12]])})))()}})}},filters:{typeConvert:function(t){var e=l.Js[t];return e?e.text:t}}},u=d,p=a(18156),g=(0,p.Z)(u,n,i,!1,null,null,null),h=g.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[70],{82070:function(t,a,e){e.r(a),e.d(a,{default:function(){return h}});var s=function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("page-view",[e("a-card",{attrs:{bodyStyle:{padding:"16px"},bordered:!1}},[e("div",{staticClass:"table-operator"},[e("a-button",{attrs:{type:"danger"},on:{click:t.handleClearActionLogs}},[t._v("清空操作日志")])],1),e("div",{staticClass:"mt-4"},[e("a-table",{attrs:{columns:t.list.columns,dataSource:t.list.data,loading:t.list.loading,pagination:!1,rowKey:function(t){return t.id},scrollToFirstRowOnChange:!0},scopedSlots:t._u([{key:"type",fn:function(a){return[t._v(" "+t._s(t._f("typeConvert")(a))+" ")]}},{key:"ipAddress",fn:function(a){return[e("div",{staticClass:"blur hover:blur-none transition-all"},[t._v(t._s(a))])]}},{key:"createTime",fn:function(a){return[e("a-tooltip",{attrs:{placement:"top"}},[e("template",{slot:"title"},[t._v(" "+t._s(t._f("moment")(a))+" ")]),t._v(" "+t._s(t._f("timeAgo")(a))+" ")],2)]}}])}),e("div",{staticClass:"page-wrapper"},[e("a-pagination",{staticClass:"pagination",attrs:{current:t.pagination.page,defaultPageSize:t.pagination.size,pageSizeOptions:["10","20","50","100"],total:t.pagination.total,showLessItems:"",showSizeChanger:""},on:{change:t.handlePageChange,showSizeChange:t.handlePageSizeChange}})],1)],1)])],1)},i=[],n=e(50990),o=e(1540),l=e(78588);const r=[{title:"ID",dataIndex:"id"},{title:"类型",dataIndex:"type",scopedSlots:{customRender:"type"}},{title:"关键值",dataIndex:"logKey"},{title:"内容",dataIndex:"content"},{title:"IP",dataIndex:"ipAddress",scopedSlots:{customRender:"ipAddress"}},{title:"操作时间",dataIndex:"createTime",scopedSlots:{customRender:"createTime"}}];var d={name:"ActionLog",components:{PageView:n.B4},data(){return{list:{columns:r,data:[],total:0,loading:!1,params:{page:0,size:50}}}},computed:{pagination(){return{page:this.list.params.page+1,size:this.list.params.size,total:this.list.total}}},created(){this.handleListActionLogs()},methods:{async handleListActionLogs(){try{this.list.loading=!0;const t=await o.Z.log.list(this.list.params);this.list.data=t.data.content,this.list.total=t.data.total}catch(t){this.$log.error(t)}finally{this.list.loading=!1}},handlePageChange(t=1){this.list.params.page=t-1,this.handleListActionLogs()},handlePageSizeChange(t,a){this.$log.debug(`Current: ${t}, PageSize: ${a}`),this.list.params.page=0,this.list.params.size=a,this.handleListActionLogs()},handleClearActionLogs(){const t=this;t.$confirm({title:"提示",maskClosable:!0,content:"是否确定要清空所有操作日志?",async onOk(){try{await o.Z.log.clear()}catch(a){t.$log.error("Failed to clear action logs.",a)}finally{await t.handleListActionLogs()}}})}},filters:{typeConvert(t){const a=l.Js[t];return a?a.text:t}}},c=d,g=e(18156),p=(0,g.Z)(c,s,i,!1,null,null,null),h=p.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[763],{95763:function(e,t,n){n.r(t),n.d(t,{default:function(){return y}});var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("page-view",[n("a-row",[n("a-col",{attrs:{span:24}},[e.options.developer_mode?n("div",{staticClass:"card-container"},[n("a-tabs",{attrs:{type:"card"},model:{value:e.activeKey,callback:function(t){e.activeKey=t},expression:"activeKey"}},e._l(e.panes,(function(t){return n("a-tab-pane",{key:t.key},[n("span",{attrs:{slot:"tab"},slot:"tab"},[n("a-icon",{attrs:{type:t.icon}}),e._v(e._s(t.title)+" ")],1),n(t.component,{tag:"component"})],1)})),1)],1):n("a-alert",{attrs:{description:"当前没有启用开发者选项,请启用之后再访问该页面!",message:"提示",showIcon:"",type:"error"}})],1)],1)],1)},i=[],a=n(76381),r=(n(31875),n(29888),n(45107),n(98906)),c=n(50990),s={components:{PageView:c.B4},data:function(){var e=[{title:"运行环境",icon:"safety",component:function(){return n.e(889).then(n.bind(n,64479))},key:"environment"},{title:"实时日志",icon:"code",component:function(){return Promise.all([n.e(147),n.e(192),n.e(164),n.e(617)]).then(n.bind(n,28617))},key:"runtimeLogs"},{title:"系统变量",icon:"table",component:function(){return n.e(139).then(n.bind(n,82139))},key:"optionsList"},{title:"静态存储",icon:"cloud",component:function(){return Promise.all([n.e(147),n.e(671)]).then(n.bind(n,99671))},key:"staticStorage"},{title:"设置",icon:"setting",component:function(){return n.e(442).then(n.bind(n,90442))},key:"settings"}];return{activeKey:e[0].key,panes:e}},computed:(0,a.Z)({},(0,r.Se)(["options"])),beforeRouteEnter:function(e,t,n){var o=e.query.activeKey;n((function(e){o&&(e.activeKey=o)}))},watch:{activeKey:function(e){if(e){var t=this.$router.history.current.path;this.$router.push({path:t,query:{activeKey:e}}).catch((function(e){return e}))}}}},u=s,l=n(18156),p=(0,l.Z)(u,o,i,!1,null,null,null),y=p.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[763],{95763:function(e,t,n){n.r(t),n.d(t,{default:function(){return u}});var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("page-view",[n("a-row",[n("a-col",{attrs:{span:24}},[e.options.developer_mode?n("div",{staticClass:"card-container"},[n("a-tabs",{attrs:{type:"card"},model:{value:e.activeKey,callback:function(t){e.activeKey=t},expression:"activeKey"}},e._l(e.panes,(function(t){return n("a-tab-pane",{key:t.key},[n("span",{attrs:{slot:"tab"},slot:"tab"},[n("a-icon",{attrs:{type:t.icon}}),e._v(e._s(t.title)+" ")],1),n(t.component,{tag:"component"})],1)})),1)],1):n("a-alert",{attrs:{description:"当前没有启用开发者选项,请启用之后再访问该页面!",message:"提示",showIcon:"",type:"error"}})],1)],1)],1)},a=[],i=n(98906),c=n(50990),s={components:{PageView:c.B4},data(){const e=[{title:"运行环境",icon:"safety",component:()=>n.e(889).then(n.bind(n,64479)),key:"environment"},{title:"实时日志",icon:"code",component:()=>Promise.all([n.e(147),n.e(192),n.e(617)]).then(n.bind(n,28617)),key:"runtimeLogs"},{title:"系统变量",icon:"table",component:()=>n.e(139).then(n.bind(n,82139)),key:"optionsList"},{title:"静态存储",icon:"cloud",component:()=>Promise.all([n.e(147),n.e(671)]).then(n.bind(n,99671)),key:"staticStorage"},{title:"设置",icon:"setting",component:()=>n.e(442).then(n.bind(n,90442)),key:"settings"}];return{activeKey:e[0].key,panes:e}},computed:{...(0,i.Se)(["options"])},beforeRouteEnter(e,t,n){const o=e.query.activeKey;n((e=>{o&&(e.activeKey=o)}))},watch:{activeKey(e){if(e){const t=this.$router.history.current.path;this.$router.push({path:t,query:{activeKey:e}}).catch((e=>e))}}}},r=s,l=n(18156),p=(0,l.Z)(r,o,a,!1,null,null,null),u=p.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[765],{6765:function(e,t,s){s.r(t),s.d(t,{default:function(){return m}});var n=function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"container-wrapper animated fadeIn"},[e._m(0),s("div",{staticClass:"login-form"},[s("LoginForm",{on:{success:e.onLoginSucceed}}),e.resetPasswordButtonVisible?s("router-link",{staticClass:"tip",attrs:{to:{name:"ResetPassword"}}},[e._v(" 找回密码 ")]):e._e()],1)])},r=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"halo-logo"},[s("img",{attrs:{alt:"Halo Logo",src:"/images/logo.svg"}})])}],o=s(91057),a=s(76381),i=(s(70315),s(98906)),u=s(11896),c=s(1540),l={components:{LoginForm:u.Z},data:function(){return{resetPasswordButtonVisible:!1}},beforeMount:function(){this.handleVerifyIsInstall(),document.addEventListener("keydown",this.onRegisterResetPasswordKeydown)},beforeDestroy:function(){document.removeEventListener("keydown",this.onRegisterResetPasswordKeydown)},methods:(0,a.Z)((0,a.Z)({},(0,i.nv)(["refreshUserCache","refreshOptionsCache"])),{},{onRegisterResetPasswordKeydown:function(e){72===e.keyCode&&(e.altKey||e.metaKey)&&e.shiftKey&&(e.preventDefault(),this.resetPasswordButtonVisible=!this.resetPasswordButtonVisible)},handleVerifyIsInstall:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var s;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,c.Z.isInstalled();case 2:if(s=t.sent,s.data){t.next=6;break}return t.next=6,e.$router.push({name:"Install"});case 6:case"end":return t.stop()}}),t)})))()},onLoginSucceed:function(){this.refreshUserCache(),this.refreshOptionsCache(),this.$route.query.redirect?this.$router.push(this.$route.query.redirect):this.$router.push({name:"Dashboard"})}})},d=l,h=s(18156),f=(0,h.Z)(d,n,r,!1,null,null,null),m=f.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[765],{6765:function(e,s,t){t.r(s),t.d(s,{default:function(){return c}});var r=function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("div",{staticClass:"container-wrapper animated fadeIn"},[e._m(0),t("div",{staticClass:"login-form"},[t("LoginForm",{on:{success:e.onLoginSucceed}}),e.resetPasswordButtonVisible?t("router-link",{staticClass:"tip",attrs:{to:{name:"ResetPassword"}}},[e._v(" 找回密码 ")]):e._e()],1)])},n=[function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("div",{staticClass:"halo-logo"},[t("img",{attrs:{alt:"Halo Logo",src:"/images/logo.svg"}})])}],o=t(98906),a=t(11896),i=t(1540),l={components:{LoginForm:a.Z},data(){return{resetPasswordButtonVisible:!1}},beforeMount(){this.handleVerifyIsInstall(),document.addEventListener("keydown",this.onRegisterResetPasswordKeydown)},beforeDestroy(){document.removeEventListener("keydown",this.onRegisterResetPasswordKeydown)},methods:{...(0,o.nv)(["refreshUserCache","refreshOptionsCache"]),onRegisterResetPasswordKeydown(e){72===e.keyCode&&(e.altKey||e.metaKey)&&e.shiftKey&&(e.preventDefault(),this.resetPasswordButtonVisible=!this.resetPasswordButtonVisible)},async handleVerifyIsInstall(){const e=await i.Z.isInstalled();e.data||await this.$router.push({name:"Install"})},onLoginSucceed(){this.refreshUserCache(),this.refreshOptionsCache(),this.$route.query.redirect?this.$router.push(this.$route.query.redirect):this.$router.push({name:"Dashboard"})}}},d=l,u=t(18156),h=(0,u.Z)(d,r,n,!1,null,null,null),c=h.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[870],{69870:function(e,t,o){o.r(t),o.d(t,{default:function(){return u}});var a=function(){var e=this,t=e.$createElement,o=e._self._c||t;return o("page-view",[o("a-row",{attrs:{gutter:12}},[o("a-col",{staticClass:"pb-3",attrs:{lg:10,md:10,sm:24,xl:10,xs:24}},[o("a-card",{attrs:{bodyStyle:{padding:"16px"},title:e.title}},[o("a-form-model",{ref:"tagForm",attrs:{model:e.form.model,rules:e.form.rules,layout:"horizontal"}},[o("a-form-model-item",{attrs:{help:"* 页面上所显示的名称",label:"名称:",prop:"name"}},[o("a-input",{model:{value:e.form.model.name,callback:function(t){e.$set(e.form.model,"name",t)},expression:"form.model.name"}})],1),o("a-form-model-item",{attrs:{help:"* 一般为单个标签页面的标识,最好为英文",label:"别名:",prop:"slug"}},[o("a-input",{model:{value:e.form.model.slug,callback:function(t){e.$set(e.form.model,"slug",t)},expression:"form.model.slug"}})],1),o("a-form-model-item",{attrs:{label:"颜色:",prop:"color"}},[o("a-input",{scopedSlots:e._u([{key:"addonAfter",fn:function(){return[o("verte",{staticStyle:{cursor:"pointer"},attrs:{model:"hex",picker:"square"},model:{value:e.form.model.color,callback:function(t){e.$set(e.form.model,"color",t)},expression:"form.model.color"}})]},proxy:!0}]),model:{value:e.form.model.color,callback:function(t){e.$set(e.form.model,"color",t)},expression:"form.model.color"}})],1),o("a-form-model-item",{attrs:{help:"* 在标签页面可展示,需要主题支持",label:"封面图:",prop:"thumbnail"}},[o("AttachmentInput",{attrs:{title:"选择封面图"},model:{value:e.form.model.thumbnail,callback:function(t){e.$set(e.form.model,"thumbnail",t)},expression:"form.model.thumbnail"}})],1),o("a-form-model-item",[e.isUpdateMode?o("a-button-group",[o("ReactiveButton",{attrs:{errored:e.form.errored,loading:e.form.saving,erroredText:"更新失败",loadedText:"更新成功",text:"更新",type:"primary"},on:{callback:e.handleSavedCallback,click:e.handleCreateOrUpdateTag}}),o("a-button",{attrs:{type:"dashed"},on:{click:function(t){e.form.model={}}}},[e._v("返回添加")])],1):o("ReactiveButton",{attrs:{errored:e.form.errored,loading:e.form.saving,erroredText:"保存失败",loadedText:"保存成功",text:"保存",type:"primary"},on:{callback:e.handleSavedCallback,click:e.handleCreateOrUpdateTag}}),e.isUpdateMode?o("a-popconfirm",{attrs:{title:"你确定要删除【"+e.form.model.name+"】标签?",cancelText:"取消",okText:"确定"},on:{confirm:function(t){return e.handleDeleteTag(e.form.model.id)}}},[o("a-button",{staticClass:"float-right",attrs:{type:"danger"}},[e._v("删除")])],1):e._e()],1)],1)],1)],1),o("a-col",{staticClass:"pb-3",attrs:{lg:14,md:14,sm:24,xl:14,xs:24}},[o("a-card",{attrs:{bodyStyle:{padding:"16px"},title:"所有标签"}},[o("a-spin",{attrs:{spinning:e.list.loading}},[0===e.list.data.length?o("a-empty"):e._l(e.list.data,(function(t){return o("a-tooltip",{key:t.id,attrs:{placement:"topLeft"}},[o("template",{slot:"title"},[o("span",[e._v(e._s(t.postCount)+" 篇文章")])]),o("post-tag",{staticStyle:{"margin-bottom":"8px",cursor:"pointer"},attrs:{tag:t},nativeOn:{click:function(o){e.form.model=t}}})],2)}))],2)],1)],1)],1)],1)},r=[],l=(o(31875),o(50990)),n=o(1540),i=o(4155),m=o(43154),d={components:{PageView:l.B4,Verte:m.Z},data:function(){return{list:{data:[],loading:!1},form:{model:{color:"#cfd3d7"},saving:!1,errored:!1,rules:{name:[{required:!0,message:"* 标签名称不能为空",trigger:["change"]},{max:255,message:"* 标签名称的字符长度不能超过 255",trigger:["change"]}],slug:[{max:255,message:"* 标签别名的字符长度不能超过 255",trigger:["change"]}],thumbnail:[{max:1023,message:"* 封面图链接的字符长度不能超过 1023",trigger:["change"]}],color:[{max:7,pattern:i.aX,message:"仅支持 hex 颜色值"}]}}}},computed:{title:function(){return this.isUpdateMode?"修改标签":"添加标签"},isUpdateMode:function(){return!!this.form.model.id}},created:function(){this.handleListTags()},methods:{handleListTags:function(){var e=this;this.list.loading=!0,n.Z.tag.list({more:!0}).then((function(t){e.list.data=t.data})).finally((function(){e.list.loading=!1}))},handleDeleteTag:function(e){var t=this;n.Z.tag["delete"](e).finally((function(){t.form.model={color:"#cfd3d7"},t.handleListTags()}))},handleCreateOrUpdateTag:function(){var e=this,t=this;t.$refs.tagForm.validate((function(o){o&&(e.form.saving=!0,t.isUpdateMode?n.Z.tag.update(t.form.model.id,t.form.model).catch((function(){e.form.errored=!0})).finally((function(){setTimeout((function(){t.form.saving=!1}),400)})):n.Z.tag.create(t.form.model).catch((function(){e.form.errored=!0})).finally((function(){setTimeout((function(){t.form.saving=!1}),400)})))}))},handleSavedCallback:function(){var e=this;e.form.errored?e.form.errored=!1:(e.form.model={color:"#cfd3d7"},e.handleListTags())}}},s=d,c=o(18156),f=(0,c.Z)(s,a,r,!1,null,null,null),u=f.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[870],{69870:function(e,t,a){a.r(t),a.d(t,{default:function(){return u}});var o=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("page-view",[a("a-row",{attrs:{gutter:12}},[a("a-col",{staticClass:"pb-3",attrs:{lg:10,md:10,sm:24,xl:10,xs:24}},[a("a-card",{attrs:{bodyStyle:{padding:"16px"},title:e.title}},[a("a-form-model",{ref:"tagForm",attrs:{model:e.form.model,rules:e.form.rules,layout:"horizontal"}},[a("a-form-model-item",{attrs:{help:"* 页面上所显示的名称",label:"名称:",prop:"name"}},[a("a-input",{model:{value:e.form.model.name,callback:function(t){e.$set(e.form.model,"name",t)},expression:"form.model.name"}})],1),a("a-form-model-item",{attrs:{help:"* 一般为单个标签页面的标识,最好为英文",label:"别名:",prop:"slug"}},[a("a-input",{model:{value:e.form.model.slug,callback:function(t){e.$set(e.form.model,"slug",t)},expression:"form.model.slug"}})],1),a("a-form-model-item",{attrs:{label:"颜色:",prop:"color"}},[a("a-input",{scopedSlots:e._u([{key:"addonAfter",fn:function(){return[a("verte",{staticStyle:{cursor:"pointer"},attrs:{model:"hex",picker:"square"},model:{value:e.form.model.color,callback:function(t){e.$set(e.form.model,"color",t)},expression:"form.model.color"}})]},proxy:!0}]),model:{value:e.form.model.color,callback:function(t){e.$set(e.form.model,"color",t)},expression:"form.model.color"}})],1),a("a-form-model-item",{attrs:{help:"* 在标签页面可展示,需要主题支持",label:"封面图:",prop:"thumbnail"}},[a("AttachmentInput",{attrs:{title:"选择封面图"},model:{value:e.form.model.thumbnail,callback:function(t){e.$set(e.form.model,"thumbnail",t)},expression:"form.model.thumbnail"}})],1),a("a-form-model-item",[e.isUpdateMode?a("a-button-group",[a("ReactiveButton",{attrs:{errored:e.form.errored,loading:e.form.saving,erroredText:"更新失败",loadedText:"更新成功",text:"更新",type:"primary"},on:{callback:e.handleSavedCallback,click:e.handleCreateOrUpdateTag}}),a("a-button",{attrs:{type:"dashed"},on:{click:function(t){e.form.model={}}}},[e._v("返回添加")])],1):a("ReactiveButton",{attrs:{errored:e.form.errored,loading:e.form.saving,erroredText:"保存失败",loadedText:"保存成功",text:"保存",type:"primary"},on:{callback:e.handleSavedCallback,click:e.handleCreateOrUpdateTag}}),e.isUpdateMode?a("a-popconfirm",{attrs:{title:"你确定要删除【"+e.form.model.name+"】标签?",cancelText:"取消",okText:"确定"},on:{confirm:function(t){return e.handleDeleteTag(e.form.model.id)}}},[a("a-button",{staticClass:"float-right",attrs:{type:"danger"}},[e._v("删除")])],1):e._e()],1)],1)],1)],1),a("a-col",{staticClass:"pb-3",attrs:{lg:14,md:14,sm:24,xl:14,xs:24}},[a("a-card",{attrs:{bodyStyle:{padding:"16px"},title:"所有标签"}},[a("a-spin",{attrs:{spinning:e.list.loading}},[0===e.list.data.length?a("a-empty"):e._l(e.list.data,(function(t){return a("a-tooltip",{key:t.id,attrs:{placement:"topLeft"}},[a("template",{slot:"title"},[a("span",[e._v(e._s(t.postCount)+" 篇文章")])]),a("post-tag",{staticStyle:{"margin-bottom":"8px",cursor:"pointer"},attrs:{tag:t},nativeOn:{click:function(a){e.form.model=t}}})],2)}))],2)],1)],1)],1)],1)},r=[],l=a(50990),s=a(1540),m=a(4155),d=a(43154),n={components:{PageView:l.B4,Verte:d.Z},data(){return{list:{data:[],loading:!1},form:{model:{color:"#cfd3d7"},saving:!1,errored:!1,rules:{name:[{required:!0,message:"* 标签名称不能为空",trigger:["change"]},{max:255,message:"* 标签名称的字符长度不能超过 255",trigger:["change"]}],slug:[{max:255,message:"* 标签别名的字符长度不能超过 255",trigger:["change"]}],thumbnail:[{max:1023,message:"* 封面图链接的字符长度不能超过 1023",trigger:["change"]}],color:[{max:7,pattern:m.aX,message:"仅支持 hex 颜色值"}]}}}},computed:{title(){return this.isUpdateMode?"修改标签":"添加标签"},isUpdateMode(){return!!this.form.model.id}},created(){this.handleListTags()},methods:{handleListTags(){this.list.loading=!0,s.Z.tag.list({more:!0}).then((e=>{this.list.data=e.data})).finally((()=>{this.list.loading=!1}))},handleDeleteTag(e){s.Z.tag["delete"](e).finally((()=>{this.form.model={color:"#cfd3d7"},this.handleListTags()}))},handleCreateOrUpdateTag(){const e=this;e.$refs.tagForm.validate((t=>{t&&(this.form.saving=!0,e.isUpdateMode?s.Z.tag.update(e.form.model.id,e.form.model).catch((()=>{this.form.errored=!0})).finally((()=>{setTimeout((()=>{e.form.saving=!1}),400)})):s.Z.tag.create(e.form.model).catch((()=>{this.form.errored=!0})).finally((()=>{setTimeout((()=>{e.form.saving=!1}),400)})))}))},handleSavedCallback(){const e=this;e.form.errored?e.form.errored=!1:(e.form.model={color:"#cfd3d7"},e.handleListTags())}}},i=n,c=a(18156),f=(0,c.Z)(i,o,r,!1,null,null,null),u=f.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[959],{4959:function(t,e,n){n.r(e),n.d(e,{default:function(){return x}});var a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("exception-page",{attrs:{type:"404"}})},o=[],r=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"exception"},[n("a-result",{attrs:{status:t.type,subTitle:t.config[t.type].desc,title:t.type},scopedSlots:t._u([{key:"extra",fn:function(){return[n("a-button",{attrs:{type:"primary"},on:{click:t.handleToHome}},[t._v("返回仪表盘")])]},proxy:!0}])})],1)},s=[],u={404:{desc:"抱歉,你访问的页面不存在"},500:{desc:"抱歉,服务器出错了"}},l=u,c={name:"Exception",props:{type:{type:String,default:"404"}},data:function(){return{config:l}},methods:{handleToHome:function(){this.$router.push({name:"Dashboard"})}}},i=c,p=n(18156),f=(0,p.Z)(i,r,s,!1,null,null,null),d=f.exports,h={components:{ExceptionPage:d}},m=h,y=(0,p.Z)(m,a,o,!1,null,null,null),x=y.exports}}]);
|
|
@ -0,0 +1 @@
|
|||
"use strict";(self["webpackChunkhalo_admin"]=self["webpackChunkhalo_admin"]||[]).push([[959],{4959:function(t,e,n){n.r(e),n.d(e,{default:function(){return x}});var a=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("exception-page",{attrs:{type:"404"}})},r=[],s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"exception"},[n("a-result",{attrs:{status:t.type,subTitle:t.config[t.type].desc,title:t.type},scopedSlots:t._u([{key:"extra",fn:function(){return[n("a-button",{attrs:{type:"primary"},on:{click:t.handleToHome}},[t._v("返回仪表盘")])]},proxy:!0}])})],1)},o=[];const l={404:{desc:"抱歉,你访问的页面不存在"},500:{desc:"抱歉,服务器出错了"}};var u=l,c={name:"Exception",props:{type:{type:String,default:"404"}},data(){return{config:u}},methods:{handleToHome(){this.$router.push({name:"Dashboard"})}}},i=c,p=n(18156),d=(0,p.Z)(i,s,o,!1,null,null,null),f=d.exports,h={components:{ExceptionPage:f}},m=h,y=(0,p.Z)(m,a,r,!1,null,null,null),x=y.exports}}]);
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue