@kiva/kv-components 0.20.0 → 0.20.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,41 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.20.4](https://github.com/kiva/kv-ui-elements/compare/@kiva/kv-components@0.20.3...@kiva/kv-components@0.20.4) (2021-09-23)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* Fix lightboxes being cut off vertically on mobile ([#116](https://github.com/kiva/kv-ui-elements/issues/116)) ([23dd4d9](https://github.com/kiva/kv-ui-elements/commit/23dd4d91ba9aa4178644afe1cbd2bdf98de0d05a))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [0.20.3](https://github.com/kiva/kv-ui-elements/compare/@kiva/kv-components@0.20.2...@kiva/kv-components@0.20.3) (2021-09-23)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @kiva/kv-components
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [0.20.2](https://github.com/kiva/kv-ui-elements/compare/@kiva/kv-components@0.20.1...@kiva/kv-components@0.20.2) (2021-09-22)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @kiva/kv-components
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## [0.20.1](https://github.com/kiva/kv-ui-elements/compare/@kiva/kv-components@0.20.0...@kiva/kv-components@0.20.1) (2021-09-15)
|
|
34
|
+
|
|
35
|
+
**Note:** Version bump only for package @kiva/kv-components
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
6
41
|
# [0.20.0](https://github.com/kiva/kv-ui-elements/compare/@kiva/kv-components@0.19.7...@kiva/kv-components@0.20.0) (2021-09-14)
|
|
7
42
|
|
|
8
43
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kiva/kv-components",
|
|
3
|
-
"version": "0.20.
|
|
3
|
+
"version": "0.20.4",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"jest-axe": "^5.0.1",
|
|
34
34
|
"postcss": "^8.3.0",
|
|
35
35
|
"storybook-dark-mode": "^1.0.8",
|
|
36
|
-
"tailwindcss": "2.2.
|
|
36
|
+
"tailwindcss": "2.2.15",
|
|
37
37
|
"vue-jest": "^3.0.7",
|
|
38
38
|
"vue-loader": "^15.9.6",
|
|
39
39
|
"vue-template-compiler": "^2.6.12"
|
|
@@ -53,5 +53,5 @@
|
|
|
53
53
|
"vue": "^2.6.12",
|
|
54
54
|
"vue-focus-lock": "^1.4.1"
|
|
55
55
|
},
|
|
56
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "3d58dc7299bf31a9d16581470576419acc5e53a1"
|
|
57
57
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import './tailwind.css';
|
|
2
2
|
import addons from '@storybook/addons';
|
|
3
3
|
import KvThemeProvider from '../KvThemeProvider.vue';
|
|
4
|
+
import { defaultTheme, darkTheme } from '@kiva/kv-tokens/configs/kivaColors';
|
|
4
5
|
|
|
5
6
|
export const parameters = {
|
|
6
7
|
actions: { argTypesRegex: "^on[A-Z].*" },
|
|
@@ -32,7 +33,7 @@ export const decorators = [(story) => ({
|
|
|
32
33
|
},
|
|
33
34
|
methods: {
|
|
34
35
|
setTheme(darkMode) {
|
|
35
|
-
darkMode ? this.theme =
|
|
36
|
+
darkMode ? this.theme = darkTheme : this.theme = defaultTheme
|
|
36
37
|
}
|
|
37
38
|
},
|
|
38
39
|
mounted() {
|
package/vue/KvLightbox.vue
CHANGED
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
tw-bg-opacity-[75%]
|
|
19
19
|
"
|
|
20
20
|
:class="{'tw-min-h-screen' : variant === 'lightbox'}"
|
|
21
|
+
:style="webkitCSSFix"
|
|
21
22
|
@click.stop.prevent="onScreenClick"
|
|
22
23
|
>
|
|
23
24
|
<focus-lock
|
|
@@ -44,17 +45,19 @@
|
|
|
44
45
|
tw-bg-primary
|
|
45
46
|
tw-flex tw-flex-col
|
|
46
47
|
tw-mx-auto md:tw-my-auto
|
|
48
|
+
|
|
47
49
|
"
|
|
48
50
|
:class="{
|
|
51
|
+
'tw-w-full md:tw-w-auto' : variant === 'lightbox',
|
|
49
52
|
'tw-mt-auto md:tw-my-auto' : variant === 'lightbox',
|
|
50
53
|
'tw-min-h-half-screen md:tw-min-h-0' : variant === 'lightbox',
|
|
51
54
|
'tw-rounded-t md:tw-rounded' : variant === 'lightbox',
|
|
52
55
|
'tw-my-auto tw-rounded' : variant === 'alert',
|
|
53
56
|
}"
|
|
54
|
-
style="max-width: 55.55rem; max-height:
|
|
57
|
+
style="max-width: 55.55rem; max-height: 90%"
|
|
55
58
|
aria-modal="true"
|
|
56
59
|
:aria-label="title ? title : null"
|
|
57
|
-
:aria-describedby="variant === 'alert' ? kvLightboxBody : null"
|
|
60
|
+
:aria-describedby="variant === 'alert' ? 'kvLightboxBody' : null"
|
|
58
61
|
:role="role"
|
|
59
62
|
@click.stop
|
|
60
63
|
>
|
|
@@ -206,6 +209,13 @@ export default {
|
|
|
206
209
|
};
|
|
207
210
|
},
|
|
208
211
|
computed: {
|
|
212
|
+
// Reference: https://allthingssmitty.com/2020/05/11/css-fix-for-100vh-in-mobile-webkit/
|
|
213
|
+
webkitCSSFix() {
|
|
214
|
+
if (this.variant === 'lightbox') {
|
|
215
|
+
return 'min-height: -webkit-fill-available';
|
|
216
|
+
}
|
|
217
|
+
return '';
|
|
218
|
+
},
|
|
209
219
|
role() {
|
|
210
220
|
if (this.variant === 'alert') {
|
|
211
221
|
return 'alertdialog';
|
|
@@ -56,6 +56,75 @@ const DefaultTemplate = (args, { argTypes }) => ({
|
|
|
56
56
|
},
|
|
57
57
|
});
|
|
58
58
|
|
|
59
|
+
const VeryShortTemplate = (args, { argTypes }) => ({
|
|
60
|
+
props: Object.keys(argTypes),
|
|
61
|
+
components: { KvLightbox, KvButton },
|
|
62
|
+
template: `
|
|
63
|
+
<div>
|
|
64
|
+
<kv-button @click="isLightboxVisible = true;">Show {{variant}}</kv-button>
|
|
65
|
+
<p>The lightbox is visible: {{isLightboxVisible}}</p>
|
|
66
|
+
|
|
67
|
+
<kv-lightbox
|
|
68
|
+
:visible="isLightboxVisible"
|
|
69
|
+
:title="title"
|
|
70
|
+
:variant="variant"
|
|
71
|
+
:prevent-close="preventClose"
|
|
72
|
+
@lightbox-closed="isLightboxVisible = false"
|
|
73
|
+
>
|
|
74
|
+
<p class="tw-mb-2">The lightbox content is very short.</p>
|
|
75
|
+
<template #controls>
|
|
76
|
+
<kv-button variant="secondary" @click="isLightboxVisible = false" ref="dontDoItRef">Don't do it!</kv-button>
|
|
77
|
+
<kv-button @click="isLightboxVisible = false" ref="doItRef">Do it!</kv-button>
|
|
78
|
+
</template>
|
|
79
|
+
</kv-lightbox>
|
|
80
|
+
</div>
|
|
81
|
+
`,
|
|
82
|
+
data() {
|
|
83
|
+
return {
|
|
84
|
+
isLightboxVisible: args.visible,
|
|
85
|
+
};
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
const VeryLongTemplate = (args, { argTypes }) => ({
|
|
90
|
+
props: Object.keys(argTypes),
|
|
91
|
+
components: { KvLightbox, KvButton },
|
|
92
|
+
template: `
|
|
93
|
+
<div>
|
|
94
|
+
<kv-button @click="isLightboxVisible = true;">Show {{variant}}</kv-button>
|
|
95
|
+
<p>The lightbox is visible: {{isLightboxVisible}}</p>
|
|
96
|
+
|
|
97
|
+
<kv-lightbox
|
|
98
|
+
:visible="isLightboxVisible"
|
|
99
|
+
:title="title"
|
|
100
|
+
:variant="variant"
|
|
101
|
+
:prevent-close="preventClose"
|
|
102
|
+
@lightbox-closed="isLightboxVisible = false"
|
|
103
|
+
>
|
|
104
|
+
<p class="tw-mb-2">Lorem ipsum dolor sit amet consectetur adipisicing elit. Exercitationem voluptatum quod illum minima alias quae non architecto ipsum sunt repudiandae eius ipsa commodi adipisci nam, magni praesentium error, deleniti impedit!
|
|
105
|
+
Qui sint repudiandae incidunt odit distinctio neque repellendus, soluta culpa. Vero rem, odit laudantium autem quis facilis ratione omnis aut voluptas, velit vitae adipisci? Magni iure animi doloribus illum soluta.
|
|
106
|
+
Enim aspernatur non accusantium aut minima, quos maxime? Perferendis suscipit enim laborum, recusandae fugit praesentium fugiat animi cumque voluptatum voluptate labore dolore quaerat libero esse quasi magnam tempore id autem.
|
|
107
|
+
Nisi voluptas architecto dolores aut perspiciatis itaque, est reprehenderit tempora. Animi dicta laudantium repudiandae facere atque omnis voluptatem, incidunt ipsum, accusantium minima aspernatur modi soluta molestiae neque quam doloremque nemo.
|
|
108
|
+
Neque delectus quidem sapiente facere consequuntur maiores molestiae vel! Quidem, veniam. Libero labore voluptatibus id corporis molestias cumque magnam maiores praesentium laborum? Voluptate, porro eum. Recusandae earum rerum quis quos.
|
|
109
|
+
Cupiditate ea quas non ut adipisci illum dolorem eligendi sequi quod, doloribus suscipit assumenda ullam aliquid ad repudiandae dignissimos optio, possimus molestiae voluptate vel! Esse fuga praesentium maxime animi nihil.
|
|
110
|
+
Sint, est? Maiores commodi adipisci minus itaque nisi dolorum, velit fugiat est quia saepe ipsum quo nobis mollitia repellendus facilis, quos hic facere! Tenetur sint corporis dignissimos molestias saepe ipsa?
|
|
111
|
+
Excepturi, praesentium quisquam veritatis quaerat eligendi explicabo vitae sit minima recusandae. Dolorum molestiae, vero nulla eum sunt exercitationem dolore ipsum quos ea doloribus reprehenderit aliquam quibusdam vel veniam ex quis.
|
|
112
|
+
Corporis, neque cum pariatur saepe inventore sunt, maiores sed deserunt beatae quasi non sint vitae error incidunt odio nam amet quisquam! Mollitia, suscipit earum. Molestiae nesciunt fugit ea cupiditate rerum?
|
|
113
|
+
Placeat, atque sit unde sunt fugit reprehenderit tenetur provident similique odio accusamus, suscipit quod doloribus aliquam animi quia quae laboriosam natus aspernatur repellendus tempore itaque expedita! Optio adipisci amet excepturi!</p>
|
|
114
|
+
<template #controls>
|
|
115
|
+
<kv-button variant="secondary" @click="isLightboxVisible = false" ref="dontDoItRef">Don't do it!</kv-button>
|
|
116
|
+
<kv-button @click="isLightboxVisible = false" ref="doItRef">Do it!</kv-button>
|
|
117
|
+
</template>
|
|
118
|
+
</kv-lightbox>
|
|
119
|
+
</div>
|
|
120
|
+
`,
|
|
121
|
+
data() {
|
|
122
|
+
return {
|
|
123
|
+
isLightboxVisible: args.visible,
|
|
124
|
+
};
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
|
|
59
128
|
const AlertTemplate = (args, { argTypes }) => ({
|
|
60
129
|
props: Object.keys(argTypes),
|
|
61
130
|
components: { KvLightbox, KvButton },
|
|
@@ -91,6 +160,16 @@ Lightbox.args = {
|
|
|
91
160
|
title: 'Lightbox Title',
|
|
92
161
|
};
|
|
93
162
|
|
|
163
|
+
export const ShortContentLightbox = VeryShortTemplate.bind({});
|
|
164
|
+
ShortContentLightbox.args = {
|
|
165
|
+
title: 'Short Lightbox Title',
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
export const LongContentLightbox = VeryLongTemplate.bind({});
|
|
169
|
+
LongContentLightbox.args = {
|
|
170
|
+
title: 'Long Lightbox Title',
|
|
171
|
+
};
|
|
172
|
+
|
|
94
173
|
export const Alert = AlertTemplate.bind({});
|
|
95
174
|
Alert.args = {
|
|
96
175
|
title: 'Delete credit card?',
|
|
@@ -236,7 +236,7 @@ export const Primitives = (args, { argTypes }) => ({
|
|
|
236
236
|
>
|
|
237
237
|
<button
|
|
238
238
|
class="tw-text-left tw-font-book hover:tw-text-action-highlight"
|
|
239
|
-
@click="copy(buildClassName('text', typeStyle))"
|
|
239
|
+
@click="copy(buildClassName('tw-text', typeStyle))"
|
|
240
240
|
>
|
|
241
241
|
<p
|
|
242
242
|
class="tw-mb-1"
|