@visitscotland/component-library 4.0.3 → 4.1.1

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.
Files changed (92) hide show
  1. package/dist/client/manifest.json +489 -452
  2. package/dist/client/scripts/02b37d1fbe6d4d012ac9.js +1 -0
  3. package/dist/client/scripts/0554e8f364e41ddcbb6b.js +1 -0
  4. package/dist/client/scripts/{3ce63e76d796057533b7.js → 2bef7317c860a39e730f.js} +1 -1
  5. package/dist/client/scripts/3fe95d6f8e327cebba7c.js +1 -0
  6. package/dist/client/scripts/5b7082aeaf49e81f72d4.js +1 -0
  7. package/dist/client/scripts/acb0b96b8a641acaeff1.js +1 -0
  8. package/dist/client/scripts/de90b8fa24140885447a.js +1 -0
  9. package/dist/client/scripts/ded2a7d88840c39975dd.js +1 -0
  10. package/dist/client/scripts/e21a238e64934bcf8e73.js +1 -0
  11. package/dist/client/scripts/fda60479c34981f23127.js +1 -0
  12. package/dist/client/styles/02b37d1fbe6d4d012ac9.css +1 -0
  13. package/dist/client/styles/0554e8f364e41ddcbb6b.css +1 -0
  14. package/dist/client/styles/2bef7317c860a39e730f.css +1 -0
  15. package/dist/components/components/index.d.ts +1 -0
  16. package/dist/components/components/textarea/Textarea.vue.d.ts +287 -0
  17. package/dist/components/components/textarea/index.d.ts +3 -0
  18. package/dist/components/components/video/Video.vue.d.ts +5 -7
  19. package/dist/components/vs-component-library.css +1 -1
  20. package/dist/components/vs-component-library.js +178 -178
  21. package/dist/components/vs-component-library.mjs +7460 -7190
  22. package/dist/ssr/index.js +1 -1
  23. package/dist/ssr/manifest.json +1 -1
  24. package/dist/ssr/styles/{588398c9fed92a0e0bf9.css → fb5df872002b0c7020f0.css} +3 -2
  25. package/package.json +228 -229
  26. package/CHANGELOG.md +0 -2317
  27. package/dist/client/scripts/395843e8c4c4eed8ed96.js +0 -1
  28. package/dist/client/scripts/5dfb8dcf71ff13a8e5d7.js +0 -1
  29. package/dist/client/scripts/763a0b42143afdef917d.js +0 -1
  30. package/dist/client/scripts/b19a9ed8854baf36a44d.js +0 -1
  31. package/dist/client/scripts/c142223228e6944f0dd8.js +0 -1
  32. package/dist/client/scripts/f30b3c45d44ae247c686.js +0 -1
  33. package/dist/client/scripts/f7dd474958c4abf4d47e.js +0 -1
  34. package/dist/client/styles/3ce63e76d796057533b7.css +0 -1
  35. package/dist/client/styles/f7dd474958c4abf4d47e.css +0 -1
  36. /package/dist/client/scripts/{3fcaf595120bf56f80f3.js → 0259bdf08647c7bad846.js} +0 -0
  37. /package/dist/client/scripts/{cc216b51bc50abaa008b.js → 040cb9fd3c2b3344d76d.js} +0 -0
  38. /package/dist/client/scripts/{b545f6760fb993380a1a.js → 04ddacfebff6dbfc29d8.js} +0 -0
  39. /package/dist/client/scripts/{5ff31794fc1d9b672026.js → 2f4524fbc2f661d1dc4f.js} +0 -0
  40. /package/dist/client/scripts/{f4000e90e1643d342330.js → 2f658aa91d0333c618d0.js} +0 -0
  41. /package/dist/client/scripts/{3ebbf27c6d47f1168154.js → 314219aa28d06f112e75.js} +0 -0
  42. /package/dist/client/scripts/{a586472e87e177ccbcfa.js → 362e81911961f5d56ac5.js} +0 -0
  43. /package/dist/client/scripts/{f236dbef2e47fecc82da.js → 3c4b680e750f293a3e5c.js} +0 -0
  44. /package/dist/client/scripts/{b217922b04c2be0245f4.js → 454772198f7d5ae1cc2c.js} +0 -0
  45. /package/dist/client/scripts/{638c503bbf8175f11a15.js → 5101dc610fd64967e54f.js} +0 -0
  46. /package/dist/client/scripts/{a0ee18295020d0a63d77.js → 52aa8d11866b15a03132.js} +0 -0
  47. /package/dist/client/scripts/{e2d6663b0b4bbef146c4.js → 56a86292e7484bd170b1.js} +0 -0
  48. /package/dist/client/scripts/{95f0fc0f79a16fe3f307.js → 59a26f52aaea0e67aa75.js} +0 -0
  49. /package/dist/client/scripts/{7ef8d007e8a7faaefa4c.js → 64d98b41d3f611a86d92.js} +0 -0
  50. /package/dist/client/scripts/{0aaae36926c36a6e18bc.js → 6a06049dea485e4de2e0.js} +0 -0
  51. /package/dist/client/scripts/{47744a28f1a20fccb1e0.js → 720d7c57787e950cdb58.js} +0 -0
  52. /package/dist/client/scripts/{1b8cee3b5675998e8a61.js → 8244a03ac9271b7ca047.js} +0 -0
  53. /package/dist/client/scripts/{819a8d47d5ef54042e61.js → 83d549bd641cefa67334.js} +0 -0
  54. /package/dist/client/scripts/{520fd170583bd0977ea4.js → 9551b301e58afad07dac.js} +0 -0
  55. /package/dist/client/scripts/{11cf45ee0e3183a02a99.js → 9615c9210ed3cd93e836.js} +0 -0
  56. /package/dist/client/scripts/{daf4315698308822aa1d.js → 970bcec1283d8ca4d352.js} +0 -0
  57. /package/dist/client/scripts/{eea095cf8ceec23d5809.js → 9e81ea08c36e64d94ffa.js} +0 -0
  58. /package/dist/client/scripts/{38c99f7a73c394d8c319.js → a34242ec0ecc9344381a.js} +0 -0
  59. /package/dist/client/scripts/{9f5b6625c0d016fad4a3.js → c1683ab26fcc5f6fdf25.js} +0 -0
  60. /package/dist/client/scripts/{7dfdeed063a78c87bf8d.js → d285ae7b18708c86a388.js} +0 -0
  61. /package/dist/client/scripts/{f132a2ae4c8b0986dfdb.js → d67ad2bd649ea4ded542.js} +0 -0
  62. /package/dist/client/scripts/{19af0cc9004e7a9f0cf9.js → e4efdb51502657b50ad5.js} +0 -0
  63. /package/dist/client/scripts/{3786af425e56ad390048.js → efce9ea0c269cc78d48e.js} +0 -0
  64. /package/dist/client/scripts/{aaf3e3d3c5b7e4330197.js → f62423bb21aeedbc1f18.js} +0 -0
  65. /package/dist/client/scripts/{ab49a1b08f5923ea10c1.js → f86e00a79aee2d2a63d4.js} +0 -0
  66. /package/dist/client/styles/{3fcaf595120bf56f80f3.css → 0259bdf08647c7bad846.css} +0 -0
  67. /package/dist/client/styles/{cc216b51bc50abaa008b.css → 040cb9fd3c2b3344d76d.css} +0 -0
  68. /package/dist/client/styles/{b545f6760fb993380a1a.css → 04ddacfebff6dbfc29d8.css} +0 -0
  69. /package/dist/client/styles/{5ff31794fc1d9b672026.css → 2f4524fbc2f661d1dc4f.css} +0 -0
  70. /package/dist/client/styles/{f4000e90e1643d342330.css → 2f658aa91d0333c618d0.css} +0 -0
  71. /package/dist/client/styles/{a586472e87e177ccbcfa.css → 362e81911961f5d56ac5.css} +0 -0
  72. /package/dist/client/styles/{f236dbef2e47fecc82da.css → 3c4b680e750f293a3e5c.css} +0 -0
  73. /package/dist/client/styles/{c142223228e6944f0dd8.css → 3fe95d6f8e327cebba7c.css} +0 -0
  74. /package/dist/client/styles/{638c503bbf8175f11a15.css → 5101dc610fd64967e54f.css} +0 -0
  75. /package/dist/client/styles/{a0ee18295020d0a63d77.css → 52aa8d11866b15a03132.css} +0 -0
  76. /package/dist/client/styles/{e2d6663b0b4bbef146c4.css → 56a86292e7484bd170b1.css} +0 -0
  77. /package/dist/client/styles/{7ef8d007e8a7faaefa4c.css → 64d98b41d3f611a86d92.css} +0 -0
  78. /package/dist/client/styles/{1b8cee3b5675998e8a61.css → 8244a03ac9271b7ca047.css} +0 -0
  79. /package/dist/client/styles/{819a8d47d5ef54042e61.css → 83d549bd641cefa67334.css} +0 -0
  80. /package/dist/client/styles/{520fd170583bd0977ea4.css → 9551b301e58afad07dac.css} +0 -0
  81. /package/dist/client/styles/{11cf45ee0e3183a02a99.css → 9615c9210ed3cd93e836.css} +0 -0
  82. /package/dist/client/styles/{daf4315698308822aa1d.css → 970bcec1283d8ca4d352.css} +0 -0
  83. /package/dist/client/styles/{38c99f7a73c394d8c319.css → a34242ec0ecc9344381a.css} +0 -0
  84. /package/dist/client/styles/{395843e8c4c4eed8ed96.css → acb0b96b8a641acaeff1.css} +0 -0
  85. /package/dist/client/styles/{7dfdeed063a78c87bf8d.css → d285ae7b18708c86a388.css} +0 -0
  86. /package/dist/client/styles/{f132a2ae4c8b0986dfdb.css → d67ad2bd649ea4ded542.css} +0 -0
  87. /package/dist/client/styles/{763a0b42143afdef917d.css → de90b8fa24140885447a.css} +0 -0
  88. /package/dist/client/styles/{b19a9ed8854baf36a44d.css → e21a238e64934bcf8e73.css} +0 -0
  89. /package/dist/client/styles/{19af0cc9004e7a9f0cf9.css → e4efdb51502657b50ad5.css} +0 -0
  90. /package/dist/client/styles/{aaf3e3d3c5b7e4330197.css → f62423bb21aeedbc1f18.css} +0 -0
  91. /package/dist/client/styles/{ab49a1b08f5923ea10c1.css → f86e00a79aee2d2a63d4.css} +0 -0
  92. /package/dist/client/styles/{f30b3c45d44ae247c686.css → fda60479c34981f23127.css} +0 -0
@@ -0,0 +1 @@
1
+ label,legend{font-weight:600;margin-bottom:0}legend{font-size:1.125rem}.error{font-size:1rem;color:#e71845;display:block}.hint-text{font-size:1rem;color:#756d94;margin-bottom:0}.vs-textarea{border:#5d5478 1px solid;margin-top:.5rem}.vs-textarea.form-control-md{height:50px}.vs-textarea:focus{border-color:#3369ff;box-shadow:0 0 0 2px #3369ff inset;outline:none}.vs-textarea--error{border-color:#e71845;box-shadow:0 0 0 2px #e71845 inset}.vs-textarea:disabled{background-color:#fff;border-color:#c3bfd6;opacity:.5}
@@ -0,0 +1 @@
1
+ .vs-quote__content{font-size:1.5rem;font-weight:300;line-height:1.3}.vs-quote__author-name{font-weight:700;margin-bottom:0}@media(min-width: 768px){.vs-quote__author-name{margin-bottom:.25rem;font-size:1.125rem}}.vs-quote__author-title{line-height:1.25rem;margin-bottom:0}@media(min-width: 768px){.vs-quote__author-title{line-height:1.3;font-size:1.125rem}}.vs-quote__author-title--narrow-margin{margin-bottom:1.75rem}@media(min-width: 768px){.vs-quote__quote-link{margin-top:1.75rem}}.vs-quote__speech-mark{font-weight:700;color:#535396;font-size:7rem;height:5rem;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.vs-quote__speech-container{display:block;margin-bottom:1rem;margin-right:1.25rem;width:3.5rem;height:2.5rem;position:relative}@media(min-width: 576px){.vs-quote__speech-container{display:inline-block;vertical-align:top}}.vs-quote__author-container{display:block;width:50%;max-width:8rem;margin-bottom:1rem}.vs-quote__author-container img{width:100%}@media(min-width: 992px){.vs-quote__author-container{margin-right:1.25rem}}.vs-quote__content-container{display:block}@media(min-width: 576px){.vs-quote--wide .vs-quote__author-container{display:inline-block;vertical-align:top;margin-bottom:1.25rem}}@media(min-width: 576px){.vs-quote--wide .vs-quote__content-container{display:inline-block;vertical-align:top}}@media(min-width: 1200px){.vs-quote--wide .vs-quote__content-container{width:calc(100% - 15rem);margin-top:-7px}}.vs-quote--with-border{border-left:.25rem solid #535396;padding-left:1.5rem}.vs-quote--with-border .vs-quote__author-name,.vs-quote--with-border .vs-quote__author-title{color:#535396}
@@ -0,0 +1 @@
1
+ .vs-styled-list--numbered .vs-styled-list__item{counter-increment:section;padding:0 0 1.5rem 1.5rem;position:relative}@media(min-width: 768px){.vs-styled-list--numbered .vs-styled-list__item{padding:0 0 2rem 2rem}}.vs-styled-list--numbered .vs-styled-list__item::before{background-color:#23014a;color:#fff;content:counter(section);font-size:1rem;padding:.25rem .75rem;position:absolute;right:100%;top:.125rem}@media(min-width: 768px){.vs-styled-list--numbered .vs-styled-list__item::before{padding:.25rem 1.75rem}}.vs-styled-list--numbered .vs-styled-list__item:not(:last-child)::after{position:absolute;content:"";width:.25rem;height:100%;background-color:#23014a;right:100%;top:.125rem}.vs-styled-list--numbered .vs-styled-list__item .vs-heading{margin-top:0}.vs-styled-list--icon .vs-styled-list__item{padding:0 0 1.5rem 3rem;position:relative}.vs-styled-list--icon .vs-styled-list__item::before{content:"";color:#04c852;font-family:"Font Awesome Kit";font-size:1.5rem;position:absolute;top:1rem;left:0}.vs-styled-list--image{margin-bottom:2.5rem}.vs-styled-list--image img{max-width:100%}.vs-styled-list--image-horizontal .vs-styled-list__item{padding:0 1.5rem}.vs-styled-list--image-horizontal .vs-styled-list__item img{margin:auto;width:80%}
@@ -111,6 +111,7 @@ export { default as VsTabs } from './tabs/Tabs.vue';
111
111
  export { default as VsTabItem } from './tabs/components/TabItem.vue';
112
112
  export { default as VsTag } from './tag/Tag.vue';
113
113
  export { default as VsTagManagerWrapper } from './tag-manager-wrapper/TagManagerWrapper.vue';
114
+ export { default as VsTextarea } from './textarea/Textarea.vue';
114
115
  export { default as VsToggleButton } from './toggle-button/ToggleButton.vue';
115
116
  export { default as VsTooltip } from './tooltip/Tooltip.vue';
116
117
  export { default as VsVideo } from './video/Video.vue';
@@ -0,0 +1,287 @@
1
+ declare const _default: import('vue').DefineComponent<{
2
+ /**
3
+ * Default value of the field
4
+ */
5
+ value: {
6
+ type: StringConstructor;
7
+ default: string;
8
+ };
9
+ /**
10
+ * Name of the field (for name and id attributes)
11
+ */
12
+ fieldName: {
13
+ type: StringConstructor;
14
+ required: true;
15
+ };
16
+ /**
17
+ * Name of the field (if different from ID)
18
+ */
19
+ name: {
20
+ type: StringConstructor;
21
+ default: string;
22
+ };
23
+ /**
24
+ * Whether the browser can autocomplete the field or not.
25
+ */
26
+ autoComplete: {
27
+ type: BooleanConstructor;
28
+ default: boolean;
29
+ };
30
+ /**
31
+ * Rules for Vuelidate plugin
32
+ */
33
+ validationRules: {
34
+ type: ObjectConstructor;
35
+ default(): {};
36
+ };
37
+ /**
38
+ * Prop to define invalid from parent
39
+ */
40
+ invalid: {
41
+ type: BooleanConstructor;
42
+ default: boolean;
43
+ };
44
+ /**
45
+ * Option to disable the input
46
+ */
47
+ disabled: {
48
+ type: BooleanConstructor;
49
+ default: boolean;
50
+ };
51
+ /**
52
+ * Prop to trigger manual validation. Used by a parent
53
+ * component to trigger validation eg. when the submit
54
+ * button is clicked.
55
+ */
56
+ triggerValidate: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
60
+ /**
61
+ * Specific validation messages for different
62
+ * types of validation
63
+ */
64
+ validationMessages: {
65
+ type: ObjectConstructor;
66
+ default(): {};
67
+ };
68
+ /**
69
+ * Fallback translated validation - this is a set of
70
+ * validation messages to be used when no specific
71
+ * validation message is needed, eg. "This field is required"
72
+ */
73
+ genericValidation: {
74
+ type: ObjectConstructor;
75
+ default(): {};
76
+ };
77
+ /**
78
+ * Content for hint text
79
+ */
80
+ hintText: {
81
+ type: StringConstructor;
82
+ default: string;
83
+ };
84
+ /**
85
+ * Element placeholder text
86
+ */
87
+ placeholder: {
88
+ type: StringConstructor;
89
+ default: string;
90
+ };
91
+ /**
92
+ * Whether the parent form has just been submitted, if so all errors
93
+ * need to be wiped from then re-added to the DOM to inform screen
94
+ * readers that they should be re-declared
95
+ */
96
+ reAlertErrors: {
97
+ type: BooleanConstructor;
98
+ default: boolean;
99
+ };
100
+ /** The number of visible lines of text */
101
+ rows: {
102
+ type: StringConstructor | NumberConstructor;
103
+ default: number;
104
+ };
105
+ }, {
106
+ v$: import('vue').Ref<import('@vuelidate/core').Validation<import('@vuelidate/core').ValidationArgs<unknown>, unknown>>;
107
+ }, {
108
+ inputVal: string;
109
+ clearErrorsOnFocus: boolean;
110
+ }, {
111
+ /**
112
+ * element type class plus error classes
113
+ */
114
+ elementClass(): string;
115
+ }, {
116
+ /**
117
+ * Clear any text entered in the input
118
+ */
119
+ clearInput(): void;
120
+ /**
121
+ * Focus on the input
122
+ */
123
+ focusOnInput(): void;
124
+ /**
125
+ * Clears the input on button click
126
+ * and adds focus back to the input
127
+ */
128
+ clearInputAndFocus(): void;
129
+ /**
130
+ * return autocomplete value in appropriate places
131
+ */
132
+ autocompleteValue(): "off" | "on";
133
+ /**
134
+ * Validate errors on blur, and re-render them to the screen for screen
135
+ * reader notice
136
+ */
137
+ validateErrors(): void;
138
+ /**
139
+ * Reset field errors on focus to allow screen reader to notice them if still
140
+ * present on blur
141
+ */
142
+ resetErrors(): void;
143
+ }, {
144
+ data(): {
145
+ inputVal: any;
146
+ isInvalid: any;
147
+ };
148
+ computed: {
149
+ isRequired(): boolean;
150
+ rules(): {
151
+ inputVal: {};
152
+ } | {
153
+ inputVal?: undefined;
154
+ };
155
+ errorsList(): any[];
156
+ };
157
+ watch: {
158
+ errorsList(newValue: any): void;
159
+ };
160
+ methods: {
161
+ manualValidate(): void;
162
+ emitStatus(): void;
163
+ };
164
+ } | {
165
+ computed: {
166
+ ariaDescription(): string;
167
+ };
168
+ }, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
169
+ /**
170
+ * Default value of the field
171
+ */
172
+ value: {
173
+ type: StringConstructor;
174
+ default: string;
175
+ };
176
+ /**
177
+ * Name of the field (for name and id attributes)
178
+ */
179
+ fieldName: {
180
+ type: StringConstructor;
181
+ required: true;
182
+ };
183
+ /**
184
+ * Name of the field (if different from ID)
185
+ */
186
+ name: {
187
+ type: StringConstructor;
188
+ default: string;
189
+ };
190
+ /**
191
+ * Whether the browser can autocomplete the field or not.
192
+ */
193
+ autoComplete: {
194
+ type: BooleanConstructor;
195
+ default: boolean;
196
+ };
197
+ /**
198
+ * Rules for Vuelidate plugin
199
+ */
200
+ validationRules: {
201
+ type: ObjectConstructor;
202
+ default(): {};
203
+ };
204
+ /**
205
+ * Prop to define invalid from parent
206
+ */
207
+ invalid: {
208
+ type: BooleanConstructor;
209
+ default: boolean;
210
+ };
211
+ /**
212
+ * Option to disable the input
213
+ */
214
+ disabled: {
215
+ type: BooleanConstructor;
216
+ default: boolean;
217
+ };
218
+ /**
219
+ * Prop to trigger manual validation. Used by a parent
220
+ * component to trigger validation eg. when the submit
221
+ * button is clicked.
222
+ */
223
+ triggerValidate: {
224
+ type: BooleanConstructor;
225
+ default: boolean;
226
+ };
227
+ /**
228
+ * Specific validation messages for different
229
+ * types of validation
230
+ */
231
+ validationMessages: {
232
+ type: ObjectConstructor;
233
+ default(): {};
234
+ };
235
+ /**
236
+ * Fallback translated validation - this is a set of
237
+ * validation messages to be used when no specific
238
+ * validation message is needed, eg. "This field is required"
239
+ */
240
+ genericValidation: {
241
+ type: ObjectConstructor;
242
+ default(): {};
243
+ };
244
+ /**
245
+ * Content for hint text
246
+ */
247
+ hintText: {
248
+ type: StringConstructor;
249
+ default: string;
250
+ };
251
+ /**
252
+ * Element placeholder text
253
+ */
254
+ placeholder: {
255
+ type: StringConstructor;
256
+ default: string;
257
+ };
258
+ /**
259
+ * Whether the parent form has just been submitted, if so all errors
260
+ * need to be wiped from then re-added to the DOM to inform screen
261
+ * readers that they should be re-declared
262
+ */
263
+ reAlertErrors: {
264
+ type: BooleanConstructor;
265
+ default: boolean;
266
+ };
267
+ /** The number of visible lines of text */
268
+ rows: {
269
+ type: StringConstructor | NumberConstructor;
270
+ default: number;
271
+ };
272
+ }>>, {
273
+ name: string;
274
+ value: string;
275
+ disabled: boolean;
276
+ invalid: boolean;
277
+ validationRules: Record<string, any>;
278
+ hintText: string;
279
+ triggerValidate: boolean;
280
+ validationMessages: Record<string, any>;
281
+ genericValidation: Record<string, any>;
282
+ reAlertErrors: boolean;
283
+ placeholder: string;
284
+ autoComplete: boolean;
285
+ rows: string | number;
286
+ }, {}>;
287
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import { default as VsTextarea } from './Textarea.vue';
2
+
3
+ export default VsTextarea;
@@ -82,6 +82,10 @@ declare const _default: import('vue').DefineComponent<{
82
82
  * Pauses the video
83
83
  */
84
84
  pauseVideo(): Promise<void>;
85
+ /**
86
+ * Stops the video, which resets to beginning
87
+ */
88
+ stopVideo(): Promise<void>;
85
89
  /**
86
90
  * Triggered by video status events from the vue-youtube component. When any of these
87
91
  * occur an appropriate analytics event is dispatched to the datalayer.
@@ -120,15 +124,9 @@ declare const _default: import('vue').DefineComponent<{
120
124
  storeVideoDetails(): void;
121
125
  /**
122
126
  * Attaches event listeners upon mounting video. These include play and pause functions,
123
- * for external play buttons and re-render + autoplay functionality for a video inside
124
- * a modal.
127
+ * for external play buttons and autoplay functionality for a video inside a modal.
125
128
  */
126
129
  setEventListeners(): void;
127
- /**
128
- * Upon opening a vs-modal with a video, the video must be briefly removed and re-rendered
129
- * to ensure that all event triggers in the video fire properly.
130
- */
131
- reRenderVideo(): void;
132
130
  }, {
133
131
  computed: {
134
132
  pageUrl: () => string;