Skip to content

Commit 822de45

Browse files
committed
Merge branch 'master' into dev
2 parents 4e445a9 + 2d0d816 commit 822de45

File tree

37 files changed

+449
-105
lines changed

37 files changed

+449
-105
lines changed

README.md

Lines changed: 46 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,12 @@ Funds donated via Patreon go directly to support John and Heather's full-time wo
9595
</td>
9696
<td>
9797
<a href="http://vuemastery.com/?ref=vuetify-github">
98-
<img height="40px" src="https://cdn.vuetifyjs.com/images/backers/vuemastery.svg">
98+
<img height="38px" src="https://cdn.vuetifyjs.com/images/backers/vuemastery.svg">
99+
</a>
100+
</td>
101+
<td>
102+
<a href="http://crossword-solver.io/">
103+
<img height="50px" src="https://cdn.cosmicjs.com/098aa4e0-9749-11eb-bf6a-1ffd0f06b0f7-crossword-solver-logo-light.svg">
99104
</a>
100105
</td>
101106
</tr>
@@ -127,12 +132,22 @@ Funds donated via Patreon go directly to support John and Heather's full-time wo
127132
<img height="30px" src="https://cdn.vuetifyjs.com/images/backers/hype-logo-light.svg">
128133
</a>
129134
</td>
135+
<td>
136+
<a href="https://www.cosmicjs.com/?ref=vuetify-github">
137+
<img height="30px" src="https://cdn.vuetifyjs.com/images/backers/cosmic-logo-light.svg">
138+
</a>
139+
</td>
130140
</tr>
131141
<tr></tr>
132142
<tr>
133143
<td>
134144
<a href="https://www.cosmicjs.com/?ref=vuetify-github">
135-
<img height="30px" src="https://cdn.vuetifyjs.com/images/backers/cosmic-logo-light.svg">
145+
<img height="30px" src="https://cdn.cosmicjs.com/ae13a830-974a-11eb-bf6a-1ffd0f06b0f7-papersowl-logo-light.png">
146+
</a>
147+
</td>
148+
<td>
149+
<a href="https://www.elfo.net/?ref=vuetify-github">
150+
<img height="26px" src="https://cdn.cosmicjs.com/9e2dd530-974a-11eb-bf6a-1ffd0f06b0f7-elfo-logo-light.png">
136151
</a>
137152
</td>
138153
<td>
@@ -141,7 +156,7 @@ Funds donated via Patreon go directly to support John and Heather's full-time wo
141156
</a>
142157
</td>
143158
<td>
144-
<a href="https://www.elfo.net/?ref=vuetify-github">
159+
<a href="https://writersperhour.com/buy-essay">
145160
<img height="51px" src="https://cdn.vuetifyjs.com/docs/images/sponsors/logos/writers-per-hour.png">
146161
</a>
147162
</td>
@@ -151,6 +166,34 @@ Funds donated via Patreon go directly to support John and Heather's full-time wo
151166
</a>
152167
</td>
153168
</tr>
169+
<tr></tr>
170+
<tr>
171+
<td>
172+
<a href="https://www.topratedcasinosites.co.uk/">
173+
<img height="30px" src="https://cdn.cosmicjs.com/d5a76910-9748-11eb-bf6a-1ffd0f06b0f7-toprated-light.png">
174+
</a>
175+
</td>
176+
<td>
177+
<a href="https://aussiecasinohex.com/">
178+
<img height="38px" src="https://cdn.cosmicjs.com/5e118ca0-9748-11eb-bf6a-1ffd0f06b0f7-hex-light.png">
179+
</a>
180+
</td>
181+
<td>
182+
<a href="https://www.sumcumo.com/">
183+
<img height="26px" src="https://cdn.cosmicjs.com/cd0aa3a0-974b-11eb-bf6a-1ffd0f06b0f7-sun-light.png">
184+
</a>
185+
</td>
186+
<td>
187+
<a href="https://www.leoboost.com/">
188+
<img height="26px" src="https://cdn.cosmicjs.com/bfb5d890-9747-11eb-bf6a-1ffd0f06b0f7-leo-light.png">
189+
</a>
190+
</td>
191+
<td>
192+
<a href="https://goread.io/buy-instagram-followers">
193+
<img height="26px" src="https://cdn.cosmicjs.com/3ab46070-9711-11eb-b593-972a7dbc1054-goread-light.png">
194+
</a>
195+
</td>
196+
</tr>
154197
</tbody>
155198
</table>
156199

packages/api-generator/src/locale/en/v-alert.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"color": "Applies specified color to the control - it can be the name of material color (for example `success` or `purple`) or css color (`#033` or `rgba(255, 0, 0, 0.5)`). You can find list of built in classes on the [colors page](/styles/colors#material-colors).",
77
"coloredBorder": "Applies the defined **color** to the alert's border.",
88
"dark": "Applies the dark theme variant to the component. You can find more information on the Material Design documentation for [dark themes](https://material.io/design/color/dark-theme.html).",
9-
"dense": "Hides the alert icon and decreases component's height.",
9+
"dense": "Decreases component's height.",
1010
"dismissible": "Adds a close icon that can hide the alert.",
1111
"elevation": "Designates an elevation applied to the component between 0 and 24. You can find more information on the [elevation page](/styles/elevation).",
1212
"height": "Sets the height for the component.",

packages/api-generator/src/maps/v-list-item.js

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,10 @@ module.exports = {
33
slots: [
44
{
55
name: 'default',
6-
props: [
7-
{
8-
name: 'active',
9-
value: 'boolean',
10-
},
11-
{
12-
name: 'toggle',
13-
value: 'boolean',
14-
},
15-
],
6+
props: {
7+
active: 'boolean',
8+
toggle: 'Function',
9+
},
1610
},
1711
],
1812
events: [

packages/docs/.markdownlintrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
"vue-jobs",
4747
"vuetify-comparison",
4848
"vuetify-projects",
49+
"vuetify-ui-kits",
4950
"why-vuetify-cards",
5051
"wireframe-examples"
5152
]

packages/docs/src/components/ad/Discovery.vue

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,9 @@
1212
type: String,
1313
default: 'discovery-ad',
1414
},
15-
},
16-
17-
computed: {
18-
ads () {
19-
return this.all.filter(({ metadata }) => {
20-
return metadata.discoverable
21-
})
15+
type: {
16+
type: String,
17+
default: 'discovery',
2218
},
2319
},
2420
}

packages/docs/src/components/ad/Promoted.vue

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,13 @@
6565
},
6666
6767
computed: {
68+
ads () {
69+
const all = Ad.computed.ads.call(this)
70+
71+
return all.filter(ad => !!ad.metadata.images?.background?.url)
72+
},
6873
bg () {
69-
return this.current.metadata.images.background.url
74+
return this.images?.background?.url
7075
},
7176
// Promoted ads have less space
7277
// available for descriptions
@@ -89,10 +94,14 @@
8994
: description
9095
)
9196
},
97+
images () {
98+
return this.current.metadata?.images
99+
},
92100
logo () {
93-
const { logo, preview } = this.current.metadata.images
94-
95-
return (logo || preview).url
101+
return (
102+
this.images?.logo?.url ||
103+
this.images?.preview?.url
104+
)
96105
},
97106
},
98107

packages/docs/src/components/ad/Random.vue

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,7 @@
1717
1818
computed: {
1919
ads () {
20-
return this.all.filter(({ metadata }) => {
21-
return (
22-
metadata.free &&
23-
(!metadata.sponsored || metadata.discoverable)
24-
)
25-
})
20+
return this.all.filter(ad => ad.metadata.discoverable)
2621
},
2722
},
2823
}

packages/docs/src/components/ad/Vuetify.vue

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@
6868
6969
props: {
7070
color: String,
71-
slug: String,
7271
},
7372
}
7473
</script>

packages/docs/src/components/doc/PremiumThemes.vue

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -81,25 +81,23 @@
8181
</template>
8282

8383
<script>
84-
// Stores
85-
import shopify from '@/store/modules/shopify'
84+
// Utilities
85+
import { call, get } from 'vuex-pathify'
8686
8787
export default {
8888
name: 'PremiumThemes',
8989
9090
data: () => ({ products: null }),
9191
92-
beforeCreate () {
93-
if (!this.$store.hasModule('shopify')) {
94-
this.$store.registerModule('shopify', shopify)
95-
}
92+
computed: {
93+
all: get('shopify/all'),
9694
},
9795
9896
async beforeMount () {
99-
const request = await this.$store.dispatch('shopify/fetch') || []
97+
await this.fetch()
10098
const products = []
10199
102-
for (const product of request) {
100+
for (const product of this.all) {
103101
if (product.productType !== 'Themes') continue
104102
105103
const variant = product.variants[0]
@@ -122,10 +120,8 @@
122120
})
123121
},
124122
125-
beforeDestroy () {
126-
if (this.$store.hasModule('shopify')) {
127-
this.$store.unregisterModule('shopify')
128-
}
123+
methods: {
124+
fetch: call('shopify/fetch'),
129125
},
130126
}
131127
</script>
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
<template>
2+
<v-row>
3+
<template v-if="!products">
4+
<v-col
5+
v-for="n in 10"
6+
:key="n"
7+
cols="12"
8+
md="6"
9+
>
10+
<v-skeleton-loader
11+
min-height="185"
12+
type="image"
13+
/>
14+
</v-col>
15+
</template>
16+
17+
<template v-else-if="products.length === 0">
18+
<v-col>
19+
<v-alert type="error">Problem fetching UI Kits</v-alert>
20+
</v-col>
21+
</template>
22+
23+
<template v-else>
24+
<v-col
25+
v-for="product in products"
26+
:key="product.title"
27+
cols="12"
28+
md="6"
29+
>
30+
<a
31+
:href="`https://store.vuetifyjs.com/products/${product.handle}`"
32+
class="text--primary text-decoration-none"
33+
rel="noopener"
34+
target="_blank"
35+
>
36+
<app-figure
37+
:alt="product.title"
38+
:name="product.title"
39+
:src="product.variant.image"
40+
height="185"
41+
max-height="185"
42+
min-height="185"
43+
outlined
44+
>
45+
<figcaption class="d-flex text-subtitle-2 align-center text-capitalize mt-3">
46+
<span v-text="product.title" />
47+
48+
<v-chip
49+
v-if="product.isFree"
50+
class="text-uppercase px-1 ml-2"
51+
color="primary"
52+
label
53+
x-small
54+
>
55+
Free
56+
</v-chip>
57+
58+
<span
59+
v-else
60+
class="ml-auto"
61+
v-text="`$${product.variant.price}`"
62+
/>
63+
</figcaption>
64+
</app-figure>
65+
</a>
66+
</v-col>
67+
</template>
68+
</v-row>
69+
</template>
70+
71+
<script>
72+
// Utilities
73+
import { call, get } from 'vuex-pathify'
74+
75+
export default {
76+
name: 'VuetifyUiKits',
77+
78+
data: () => ({ products: null }),
79+
80+
computed: {
81+
all: get('shopify/all'),
82+
},
83+
84+
async beforeMount () {
85+
await this.fetch()
86+
const products = []
87+
88+
for (const product of this.all) {
89+
if (product.productType !== 'UI Kits') continue
90+
91+
const variant = product.variants[0]
92+
93+
products.push({
94+
handle: product.handle,
95+
isFree: Number(variant.price) === 0,
96+
isOnSale: Number(variant.price) < Number(variant.compareAtPrice),
97+
title: product.title,
98+
variant,
99+
})
100+
}
101+
102+
this.products = products
103+
.sort((a, b) => {
104+
const aPrice = parseFloat(a.variant.price)
105+
const bPrice = parseFloat(b.variant.price)
106+
107+
return aPrice < bPrice ? 1 : aPrice > bPrice ? -1 : 0
108+
})
109+
},
110+
111+
methods: {
112+
fetch: call('shopify/fetch'),
113+
},
114+
}
115+
</script>

0 commit comments

Comments
 (0)