@citizenplane/pimp 14.1.1 → 14.1.3
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/dist/pimp.es.js +700 -700
- package/dist/pimp.umd.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/CpAccordion.vue +5 -0
- package/src/components/CpSelect.vue +3 -18
- package/src/stories/CpSelect.stories.ts +1 -1
package/package.json
CHANGED
|
@@ -145,6 +145,11 @@ const handleClick = () => (isToggled.value = !isToggled.value)
|
|
|
145
145
|
&:hover {
|
|
146
146
|
background-color: var(--cp-background-primary-hover);
|
|
147
147
|
}
|
|
148
|
+
|
|
149
|
+
&:focus-visible {
|
|
150
|
+
outline-offset: calc(var(--cp-spacing-sm) * -1);
|
|
151
|
+
border-radius: var(--cp-radius-md);
|
|
152
|
+
}
|
|
148
153
|
}
|
|
149
154
|
|
|
150
155
|
&__title {
|
|
@@ -13,13 +13,12 @@
|
|
|
13
13
|
<div class="cpSelect__container">
|
|
14
14
|
<select
|
|
15
15
|
:id="selectReferenceId"
|
|
16
|
+
v-model="selectModel"
|
|
16
17
|
:autocomplete="autocomplete"
|
|
17
18
|
class="cpSelect__inner"
|
|
18
19
|
:disabled="disabled"
|
|
19
20
|
:name="name"
|
|
20
21
|
:required="required"
|
|
21
|
-
:value="modelValue"
|
|
22
|
-
@input="handleChange"
|
|
23
22
|
>
|
|
24
23
|
<option :disabled="hideDefaultValue" value="">{{ defaultValue }}</option>
|
|
25
24
|
<option v-for="(option, index) in options" :key="index" :value="option.value">{{ option.label }}</option>
|
|
@@ -45,10 +44,6 @@ import CpTransitionExpand from '@/components/CpTransitionExpand.vue'
|
|
|
45
44
|
import type { Sizes } from '@/constants'
|
|
46
45
|
import { capitalizeFirstLetter } from '@/helpers'
|
|
47
46
|
|
|
48
|
-
interface Emits {
|
|
49
|
-
(e: 'update:modelValue', value: string): void
|
|
50
|
-
}
|
|
51
|
-
|
|
52
47
|
interface SelectOption {
|
|
53
48
|
label: string
|
|
54
49
|
value: string | number
|
|
@@ -63,7 +58,6 @@ interface Props {
|
|
|
63
58
|
hideDefaultValue?: boolean
|
|
64
59
|
isInvalid?: boolean
|
|
65
60
|
label?: string
|
|
66
|
-
modelValue?: string | number
|
|
67
61
|
name?: string
|
|
68
62
|
options: SelectOption[]
|
|
69
63
|
required?: boolean
|
|
@@ -73,7 +67,6 @@ interface Props {
|
|
|
73
67
|
|
|
74
68
|
const props = withDefaults(defineProps<Props>(), {
|
|
75
69
|
label: '',
|
|
76
|
-
modelValue: '',
|
|
77
70
|
hideDefaultValue: false,
|
|
78
71
|
defaultValue: 'Select an option',
|
|
79
72
|
name: undefined,
|
|
@@ -87,16 +80,13 @@ const props = withDefaults(defineProps<Props>(), {
|
|
|
87
80
|
tooltip: '',
|
|
88
81
|
})
|
|
89
82
|
|
|
90
|
-
const
|
|
83
|
+
const selectModel = defineModel<string | number>()
|
|
91
84
|
|
|
92
85
|
const selectReferenceId = useId()
|
|
93
|
-
|
|
94
86
|
const helpMessageId = useId()
|
|
95
87
|
const errorMessageId = useId()
|
|
96
88
|
|
|
97
|
-
const capitalizedLabel = computed(() =>
|
|
98
|
-
return capitalizeFirstLetter(props.label)
|
|
99
|
-
})
|
|
89
|
+
const capitalizedLabel = computed(() => capitalizeFirstLetter(props.label))
|
|
100
90
|
|
|
101
91
|
const dynamicClasses = computed(() => {
|
|
102
92
|
return [
|
|
@@ -110,11 +100,6 @@ const dynamicClasses = computed(() => {
|
|
|
110
100
|
|
|
111
101
|
const displayHelp = computed(() => props.help?.length && !displayErrorMessage.value)
|
|
112
102
|
const displayErrorMessage = computed(() => props.isInvalid && props.errorMessage.length)
|
|
113
|
-
|
|
114
|
-
const handleChange = (e: Event): void => {
|
|
115
|
-
const target = e.target as HTMLSelectElement
|
|
116
|
-
emit('update:modelValue', target.value)
|
|
117
|
-
}
|
|
118
103
|
</script>
|
|
119
104
|
|
|
120
105
|
<style lang="scss">
|