Skip to content

Commit 5861246

Browse files
committed
feat: improve changelog
1 parent d849ee3 commit 5861246

File tree

3 files changed

+38
-13
lines changed

3 files changed

+38
-13
lines changed

components/OneChangelog.vue

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
<template>
2-
<article
3-
class="content post"
4-
:class="{
5-
drawer: !!tag
6-
}"
7-
>
2+
<article class="content post">
83
<h1
94
v-if="!tag"
105
data-md
@@ -82,7 +77,7 @@
8277
</veui-fieldset>
8378
</veui-form>
8479
<section
85-
v-for="{ version, diffLink, codeName, date, changeset } of pagedChangelog"
80+
v-for="{ version, diffLink, emoji, name, date, changeset } of pagedChangelog"
8681
:key="version"
8782
class="version-item"
8883
data-md
@@ -99,7 +94,7 @@
9994
:to="`#${getHash(version)}`"
10095
>
10196
{{ version }}
102-
<small v-if="codeName">{{ codeName }}</small>
97+
<small v-if="emoji && name">{{ emoji }}<span class="codename-text"> {{ name }}</span></small>
10398
<time
10499
v-if="date"
105100
:datetime="date"
@@ -131,7 +126,10 @@
131126
>{{
132127
getTypeEmoji(type)
133128
}}</span>
134-
<div v-html="content"/>
129+
<div
130+
class="change-content"
131+
v-html="content"
132+
/>
135133
</li>
136134
</ul>
137135
</section>
@@ -462,6 +460,9 @@ h2
462460
&:only-child
463461
margin 0
464462
463+
&-content
464+
min-width 0
465+
465466
.not-found
466467
display inline-flex
467468
flex-direction column
@@ -498,6 +499,9 @@ h2
498499
width -webkit-fill-available
499500
width -moz-available
500501
502+
.codename-text
503+
display none
504+
501505
@keyframes line-enter
502506
0%
503507
100%

components/OneChangelogButton.vue

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@
77
ui="s"
88
@click="open = !open"
99
>
10+
<veui-icon name="clock"/>
1011
{{ t('changelog') }}
1112
</veui-button>
1213
<veui-drawer
1314
:title="t('changelog')"
1415
:open.sync="open"
16+
overlay-class="drawer"
1517
outside-closable
1618
footless
1719
>
@@ -24,14 +26,16 @@
2426
</template>
2527

2628
<script>
27-
import { Button, Drawer } from 'veui'
29+
import { Button, Drawer, Icon } from 'veui'
2830
import i18n from 'veui/mixins/i18n'
31+
import 'veui-theme-dls-icons/clock'
2932
3033
export default {
3134
name: 'one-changelog-button',
3235
components: {
3336
'veui-button': Button,
3437
'veui-drawer': Drawer,
38+
'veui-icon': Icon,
3539
OneChangelog: () => import('./OneChangelog')
3640
},
3741
mixins: [i18n],
@@ -58,4 +62,16 @@ export default {
5862
.changelog {
5963
padding: 12px 16px;
6064
}
65+
66+
@media (max-width: 480px) {
67+
.trigger {
68+
top: 80px;
69+
right: 30px;
70+
height: auto;
71+
}
72+
73+
.drawer {
74+
--dls-drawer-width: calc(100vw - 16px);
75+
}
76+
}
6177
</style>

one/build/changelog.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,16 @@ import { load } from 'cheerio'
22
import fetch from 'node-fetch'
33
import { renderRaw } from './page'
44
const VERSION_RE = /^(\d+\.\d+\.\d+(?:-[a-z]+(?:\.\d+)?)?)(?:\s+"([^"]+)")?(?:\s+\((\d{4}-\d{2}-\d{2})\))?$/i
5+
const CODENAME_RE = /^([^ ]+) (.+)$/
56
function getVersion (title = '') {
67
const [, version, codeName, date] = title.trim().match(VERSION_RE) || []
78
if (!version) {
89
return null
910
}
10-
return [version, codeName, date]
11+
12+
const [, emoji, name] = codeName ? codeName.trim().match(CODENAME_RE) || [] : []
13+
14+
return [version, emoji, name, date]
1115
}
1216

1317
const TYPE_MAP = {
@@ -74,10 +78,11 @@ function extract (html) {
7478

7579
$versions.each((_, el) => {
7680
const $version = $(el)
77-
const [version, codeName, date] = getVersion($(el).text()) || []
81+
const [version, emoji, name, date] = getVersion($(el).text()) || []
7882
const versionLog = {
7983
version,
80-
codeName,
84+
emoji,
85+
name,
8186
date,
8287
changeset: []
8388
}

0 commit comments

Comments
 (0)