Skip to content

Commit eee1a02

Browse files
Merge remote-tracking branch 'origin/upstream'
2 parents 7851010 + fcee623 commit eee1a02

File tree

20 files changed

+118
-359
lines changed

20 files changed

+118
-359
lines changed

.vitepress/config.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -515,10 +515,6 @@ export const sidebar: ThemeConfig['sidebar'] = {
515515
text: 'لیست با انیمیشن',
516516
link: '/examples/#list-transition'
517517
},
518-
{
519-
text: 'نمونه TodoMVC',
520-
link: '/examples/#todomvc'
521-
}
522518
]
523519
},
524520
{

.vitepress/inlined-scripts/restorePreference.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@
88
restore('vue-docs-prefer-composition', 'prefer-composition', true)
99
restore('vue-docs-prefer-sfc', 'prefer-sfc', true)
1010

11-
window.__VUE_BANNER_ID__ = 'vueconf2025'
12-
restore(`vue-docs-banner-${__VUE_BANNER_ID__}`, 'banner-dismissed')
11+
// window.__VUE_BANNER_ID__ = ''
12+
// restore(`vue-docs-banner-${__VUE_BANNER_ID__}`, 'banner-dismissed')
1313
})()

.vitepress/theme/components/Banner.vue

Lines changed: 13 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -22,31 +22,16 @@ function dismiss() {
2222

2323
<template>
2424
<div class="banner" v-if="open">
25-
<p class="vt-banner-text">
26-
<span class="vt-text-primary">
27-
Vueconf.US
28-
</span>
29-
<span class="vt-tagline"> · The official Vue.js conf</span>
30-
<span class="vt-place"> · Tampa, USA</span>
31-
<span class="vt-date"> · 19-21 May 2025</span>
32-
<a target="_blank" class="vt-primary-action"
33-
href="https://vueconf.us/?utm_source=vuejs&utm_content=top_banner">
34-
Register
35-
</a>
36-
</p>
25+
<a target="_blank"></a>
3726
<button @click="dismiss">
3827
<VTIconPlus class="close" />
3928
</button>
40-
<p class="vt-banner-text vt-coupon">
41-
<span class="vt-text-primary">Use</span> VUEJSDOCS
42-
<span class="vt-text-primary"> $200 off</span>
43-
</p>
4429
</div>
4530
</template>
4631

4732
<style>
4833
html:not(.banner-dismissed) {
49-
--vt-banner-height: 60px;
34+
--vt-banner-height: 30px;
5035
}
5136
</style>
5237

@@ -65,12 +50,12 @@ html:not(.banner-dismissed) {
6550
font-weight: 600;
6651
color: #fff;
6752
background-color: var(--vt-c-green);
68-
background: #0f172a;
69-
display: flex;
70-
justify-content: center;
71-
align-items: center;
72-
73-
53+
background: linear-gradient(
54+
90deg,
55+
rgba(66, 184, 131, 1) 0%,
56+
rgba(39, 179, 137, 1) 19%,
57+
rgba(100, 126, 255, 1) 100%
58+
);
7459
}
7560
7661
.banner-dismissed .banner {
@@ -85,7 +70,7 @@ button {
8570
position: absolute;
8671
right: 0;
8772
top: 0;
88-
padding: 10px 10px;
73+
padding: 5px;
8974
}
9075
9176
.close {
@@ -94,61 +79,10 @@ button {
9479
fill: #fff;
9580
transform: rotate(45deg);
9681
}
97-
98-
.vt-banner-text {
99-
color: #fff;
100-
font-size: 16px;
101-
}
102-
103-
.vt-text-primary {
104-
color: #75c05e;
105-
}
106-
107-
.vt-primary-action {
108-
background: #75c05e;
109-
color: #121c1a;
110-
padding: 8px 15px;
111-
border-radius: 5px;
112-
font-size: 14px;
113-
text-decoration: none;
114-
margin: 0 10px;
115-
font-weight: bold;
116-
}
117-
118-
.vt-primary-action:hover {
119-
text-decoration: none;
120-
background: #c4d141;
121-
}
122-
123-
@media (max-width: 1280px) {
124-
.banner .vt-banner-text {
125-
font-size: 14px;
126-
}
127-
128-
129-
}
130-
131-
@media (max-width: 780px) {
132-
.vt-tagline {
133-
display: none;
134-
}
135-
.vt-primary-action {
136-
margin: 0 10px;
137-
padding: 5px 5px;
138-
}
139-
140-
.vt-time-now {
141-
display: none;
142-
}
143-
}
144-
145-
@media (max-width: 560px) {
146-
147-
.vt-place {
82+
/*
83+
@media (max-width: 720px) {
84+
a > span {
14885
display: none;
14986
}
150-
.vt-date {
151-
display: none;
152-
}
153-
}
87+
} */
15488
</style>
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<template>
2+
<div class="scrimba">
3+
<a
4+
:href="href"
5+
target="_blank"
6+
rel="sponsored noopener"
7+
:title="title"
8+
>
9+
<slot>Watch a free interactive tutorial on Scrimba</slot>
10+
</a>
11+
</div>
12+
</template>
13+
<script>
14+
export default {
15+
props: {
16+
href: { type: String, required: true },
17+
title: { type: String, required: true }
18+
}
19+
}
20+
</script>
21+
<style scoped>
22+
.scrimba {
23+
margin: 28px 0;
24+
background-color: var(--vt-c-bg-soft);
25+
padding: 1em 1.25em;
26+
border-radius: 2px;
27+
position: relative;
28+
display: flex;
29+
border-radius: 8px;
30+
}
31+
.scrimba a {
32+
color: var(--c-text);
33+
position: relative;
34+
padding-left: 36px;
35+
}
36+
.scrimba a:before {
37+
content: '';
38+
position: absolute;
39+
display: block;
40+
width: 30px;
41+
height: 30px;
42+
top: calc(50% - 15px);
43+
left: -4px;
44+
border-radius: 50%;
45+
background-color: #73abfe;
46+
}
47+
.scrimba a:after {
48+
content: '';
49+
position: absolute;
50+
display: block;
51+
width: 0;
52+
height: 0;
53+
top: calc(50% - 5px);
54+
left: 8px;
55+
border-top: 5px solid transparent;
56+
border-bottom: 5px solid transparent;
57+
border-left: 8px solid #fff;
58+
}
59+
</style>

.vitepress/theme/index.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@ import {
1010
} from './components/preferences'
1111
import SponsorsAside from './components/SponsorsAside.vue'
1212
import VueSchoolLink from './components/VueSchoolLink.vue'
13-
import Banner from './components/Banner.vue'
13+
import ScrimbaLink from './components/ScrimbaLink.vue'
14+
// import Banner from './components/Banner.vue'
1415
// import TextAd from './components/TextAd.vue'
1516

1617
export default Object.assign({}, VPTheme, {
1718
Layout: () => {
1819
// @ts-ignore
1920
return h(VPTheme.Layout, null, {
20-
banner: () => h(Banner),
21+
// banner: () => h(Banner),
2122
'sidebar-top': () => h(PreferenceSwitch),
2223
'sidebar-bottom': () => h(SecurityUpdateBtn),
2324
'aside-mid': () => h(SponsorsAside)
@@ -28,6 +29,7 @@ export default Object.assign({}, VPTheme, {
2829
app.provide('prefer-sfc', preferSFC)
2930
app.provide('filter-headers', filterHeadersByPreference)
3031
app.component('VueSchoolLink', VueSchoolLink)
32+
app.component('ScrimbaLink', ScrimbaLink)
3133
// app.component('TextAd', TextAd)
3234
}
3335
})

.vitepress/theme/styles/overrides.css

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,20 @@ li {
174174
.vt-banner-text {
175175
direction: ltr;
176176
}
177+
178+
.scrimba {
179+
direction: rtl !important;
180+
}
181+
.scrimba a {
182+
padding-left: unset !important;
183+
padding-right: 36px !important;
184+
}
185+
.scrimba a::before {
186+
right: -4px !important;
187+
left: unset !important;
188+
}
189+
.scrimba a::after {
190+
right: 6px !important;
191+
left: unset !important;
192+
193+
}

src/about/faq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ vue ۳ آخرین نسخه‌ی major vue است که حاوی ویژگی‌ها
2020

2121
## آیا vue ۲ همچنان پشتیبانی می‌شود؟ {#is-vue-2-still-supported}
2222

23-
vue۲.۷، که در جولای ۲۰۲۲ عرضه شد، آخرین نسخه‌ی minor vue ۲ است. vue ۲ حالا وارد حالت نگهداری شده است: vue ۲ دیگر ویژگی‌های جدیدی را ارائه نمی‌دهد ولی رفع باگ‌های ضروری را دریافت می‌کند و به‌روز رسانی‌های امنیتی را تا ۱۸ ماه بعد از انتشار vue ۲.۷ ارائه می‌دهد. این به این معناست که **vue ۲ در تاریخ ۱۰ دی ۱۴۰۲ به پایان عمر خود می‌رسد**.
23+
vue۲.۷، که در جولای ۲۰۲۲ عرضه شد، آخرین نسخه‌ی minor vue ۲ است. vue ۲ در حالت نگهداری است: vue ۲ دیگر ویژگی‌های جدیدی را ارائه نمی‌دهد ولی رفع باگ‌های ضروری را دریافت می‌کند و به‌روز رسانی‌های امنیتی را تا ۱۸ ماه بعد از انتشار vue ۲.۷ ارائه می‌دهد. این به این معناست که **vue ۲ در تاریخ ۱۰ دی ۱۴۰۲ به پایان عمر خود می‌رسد**.
2424

2525
ما بر این باور هستیم که این زمان زیاد برای مهاجرت بیشتر اکوسیستم به vue ۳ کافی‌ست. به هر حال، ما متوجه هستیم که شاید گروه‌ها و یا پروژه‌هایی باشند که نتوانند در این مدت زمانی به vue ۳ ارتقا یابند در حالی که همچنان نیازمند امنیت و رضایت‌مندی هستند. ما در حال همکاری با حرفه‌های صنعت هستیم تا بتوانیم پشتیبانی بیشتری برای vue ۲ برای گروه‌هایی با این‌چنین نیازمندی‌هایی برقرار کنیم. اگر گروه شما می‌خواهد که بعد از ۲۰۲۳ همچنان از vue ۲ استفاده کند، در این رابطه برنامه‌ریزی کنید و راجع به [پشتیبانی طولانی مدت اضافی vue ۲](https://v2.vuejs.org/lts/) بیشتر بدانید.
2626

src/api/composition-api-lifecycle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@
210210
در تولید، آرگومان سوم (`info`) به جای رشته با اطلاعات کامل، یک کد کوتاه شده خواهد بود. شما می‌توانید کد مربوط به map کردن رشته را در [Production Error Code Reference](/error-reference/#runtime-errors) بیابید.
211211
:::
212212

213-
شما می‌توانید state کامپوننت را در `()errorCaptured` تغییر دهید تا یک state خطا را به کاربر نمایش دهید. با این حال، مهم است که state خطا نباید محتوای اصلی که باعث خطا شده است را رندر کند. در غیر این صورت کامپوننت در یک حلقه رندر نامتناهی قرار می‌گیرد.
213+
شما می‌توانید state کامپوننت را در `()onErrorCaptured` تغییر دهید تا یک state خطا را به کاربر نمایش دهید. با این حال، مهم است که state خطا نباید محتوای اصلی که باعث خطا شده است را رندر کند. در غیر این صورت کامپوننت در یک حلقه رندر نامتناهی قرار می‌گیرد.
214214

215215
هوک می‌تواند مقدار `false` را برگرداند تا از انتشار بیشتر خطا جلوگیری کند.
216216

src/examples/src/crud/App/composition.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export default {
1515
)
1616

1717
watch(selected, (name) => {
18-
;[last.value, first.value] = name.split(', ')
18+
[last.value, first.value] = name.split(', ')
1919
})
2020

2121
function create() {

src/examples/src/todomvc/App/composition.js

Lines changed: 0 additions & 99 deletions
This file was deleted.

0 commit comments

Comments
 (0)