@iamproperty/components 3.1.0 → 3.2.0

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 (160) hide show
  1. package/README.md +141 -16
  2. package/assets/.DS_Store +0 -0
  3. package/assets/css/core.min.css +1 -1
  4. package/assets/css/core.min.css.map +1 -1
  5. package/assets/css/email.min.css +1 -1
  6. package/assets/css/email.min.css.map +1 -1
  7. package/assets/css/error.min.css +1 -1
  8. package/assets/css/error.min.css.map +1 -1
  9. package/assets/css/style.min.css +1 -1
  10. package/assets/css/style.min.css.map +1 -1
  11. package/assets/favicons/manifest.json +31 -31
  12. package/assets/js/main.js +57 -57
  13. package/assets/js/modules/accordion.js +32 -32
  14. package/assets/js/modules/alert.js +56 -56
  15. package/assets/js/modules/carousel.js +101 -101
  16. package/assets/js/modules/chart.js +218 -218
  17. package/assets/js/modules/drawer.js +15 -15
  18. package/assets/js/modules/file-upload.js +48 -48
  19. package/assets/js/modules/form.js +168 -168
  20. package/assets/js/modules/helpers.js +119 -119
  21. package/assets/js/modules/modal.js +89 -89
  22. package/assets/js/modules/nav.js +28 -28
  23. package/assets/js/modules/orderablelist.js +122 -122
  24. package/assets/js/modules/table.js +585 -585
  25. package/assets/js/modules/testimonial.js +82 -82
  26. package/assets/js/modules/youtubevideo.js +145 -145
  27. package/assets/js/scripts.bundle.js +220 -214
  28. package/assets/js/scripts.bundle.js.map +1 -1
  29. package/assets/js/scripts.bundle.min.js +1 -1
  30. package/assets/js/scripts.bundle.min.js.map +1 -1
  31. package/assets/sass/_components.scss +14 -14
  32. package/assets/sass/_corefiles.scss +40 -40
  33. package/assets/sass/_fonts.scss +16 -16
  34. package/assets/sass/_forms.scss +9 -9
  35. package/assets/sass/_func.scss +12 -12
  36. package/assets/sass/_functions/functions.scss +141 -141
  37. package/assets/sass/_functions/mixins.scss +170 -170
  38. package/assets/sass/_functions/utilities.scss +143 -143
  39. package/assets/sass/_functions/variables.scss +467 -467
  40. package/assets/sass/_print.scss +61 -61
  41. package/assets/sass/_tests/colours.spec.scss +44 -44
  42. package/assets/sass/_tests/func.spec.scss +232 -232
  43. package/assets/sass/_tests/mixins.spec.scss +194 -194
  44. package/assets/sass/_tests/sass.spec.js +9 -9
  45. package/assets/sass/_tests/typography.spec.scss +35 -35
  46. package/assets/sass/components/accordion.scss +197 -197
  47. package/assets/sass/components/alert.scss +98 -98
  48. package/assets/sass/components/cardDeck.scss +107 -107
  49. package/assets/sass/components/carousel.scss +234 -234
  50. package/assets/sass/components/charts.scss +569 -569
  51. package/assets/sass/components/drawer.scss +46 -46
  52. package/assets/sass/components/header.scss +63 -63
  53. package/assets/sass/components/modal.scss +136 -136
  54. package/assets/sass/components/nav.scss +960 -960
  55. package/assets/sass/components/property-searchbar.scss +143 -143
  56. package/assets/sass/components/snapshot.scss +70 -70
  57. package/assets/sass/components/stepper.scss +164 -164
  58. package/assets/sass/components/tabs.scss +87 -87
  59. package/assets/sass/components/testimonial.scss +132 -132
  60. package/assets/sass/components/timeline.scss +95 -95
  61. package/assets/sass/core.scss +6 -6
  62. package/assets/sass/elements/buttons.scss +251 -251
  63. package/assets/sass/elements/card.scss +288 -288
  64. package/assets/sass/elements/container.scss +236 -236
  65. package/assets/sass/elements/forms.scss +261 -261
  66. package/assets/sass/elements/links.scss +97 -97
  67. package/assets/sass/elements/lists.scss +159 -159
  68. package/assets/sass/elements/panel.scss +161 -161
  69. package/assets/sass/elements/tables.scss +290 -290
  70. package/assets/sass/elements/tooltips.scss +84 -84
  71. package/assets/sass/elements/type.scss +136 -136
  72. package/assets/sass/email.scss +65 -65
  73. package/assets/sass/error.scss +4 -4
  74. package/assets/sass/foundations/brand.scss +76 -72
  75. package/assets/sass/foundations/circles.scss +74 -74
  76. package/assets/sass/foundations/icons.scss +80 -80
  77. package/assets/sass/foundations/media.scss +50 -50
  78. package/assets/sass/foundations/reboot.scss +130 -130
  79. package/assets/sass/foundations/root.scss +125 -125
  80. package/assets/sass/main.scss +7 -7
  81. package/assets/svg/icons.svg +598 -598
  82. package/assets/svg/logo.svg +49 -43
  83. package/assets/ts/main.js +56 -56
  84. package/assets/ts/main.ts +68 -68
  85. package/assets/ts/modules/accordion.js +32 -32
  86. package/assets/ts/modules/accordion.ts +43 -43
  87. package/dist/components.es.js +381 -381
  88. package/dist/components.umd.js +16 -16
  89. package/package.json +96 -108
  90. package/src/.DS_Store +0 -0
  91. package/src/components/Accordion/Accordion.screenshot.vue +57 -57
  92. package/src/components/Accordion/Accordion.spec.js +63 -63
  93. package/src/components/Accordion/Accordion.vue +22 -22
  94. package/src/components/Accordion/AccordionItem.vue +52 -52
  95. package/src/components/Accordion/README.md +34 -34
  96. package/src/components/Alert/Alert.spec.js +49 -49
  97. package/src/components/Alert/Alert.vue +39 -39
  98. package/src/components/Alert/README.md +28 -28
  99. package/src/components/Banner/Banner.spec.js +28 -28
  100. package/src/components/Banner/Banner.vue +38 -38
  101. package/src/components/Banner/README.md +23 -23
  102. package/src/components/CardDeck/CardDeck.spec.js +99 -99
  103. package/src/components/CardDeck/CardDeck.vue +77 -77
  104. package/src/components/CardDeck/README.md +24 -24
  105. package/src/components/Carousel/Carousel.spec.js +45 -45
  106. package/src/components/Carousel/Carousel.vue +85 -85
  107. package/src/components/Carousel/README.md +19 -19
  108. package/src/components/Chart/Chart.spec.js +201 -201
  109. package/src/components/Chart/Chart.vue +88 -88
  110. package/src/components/Chart/README.md +17 -17
  111. package/src/components/Drawer/Drawer.vue +53 -53
  112. package/src/components/Drawer/README.md +22 -22
  113. package/src/components/Header/Header.spec.js +33 -33
  114. package/src/components/Header/Header.vue +38 -38
  115. package/src/components/Header/README.md +27 -27
  116. package/src/components/Modal/Modal.spec.js +22 -22
  117. package/src/components/Modal/Modal.vue +43 -43
  118. package/src/components/Modal/README.md +19 -19
  119. package/src/components/Nav/Nav.spec.js +35 -35
  120. package/src/components/Nav/Nav.vue +215 -215
  121. package/src/components/Nav/README.md +22 -22
  122. package/src/components/NoteFeed/NoteFeed.vue +79 -79
  123. package/src/components/NoteFeed/README.md +16 -16
  124. package/src/components/PropertySearchbar/PropertySearchbar.vue +204 -204
  125. package/src/components/PropertySearchbar/README.md +25 -25
  126. package/src/components/Snapshot/README.md +20 -20
  127. package/src/components/Snapshot/Snapshot.vue +32 -32
  128. package/src/components/Stepper/README.md +32 -32
  129. package/src/components/Stepper/Step.vue +28 -28
  130. package/src/components/Stepper/Stepper.spec.js +99 -99
  131. package/src/components/Stepper/Stepper.vue +33 -33
  132. package/src/components/Tabs/README.md +27 -27
  133. package/src/components/Tabs/Tab.vue +32 -32
  134. package/src/components/Tabs/Tabs.vue +77 -77
  135. package/src/components/Testimonial/README.md +25 -25
  136. package/src/components/Testimonial/Testimonial.spec.js +57 -57
  137. package/src/components/Testimonial/Testimonial.vue +60 -60
  138. package/src/components/Timeline/README.md +18 -18
  139. package/src/components/Timeline/Timeline.spec.js +17 -17
  140. package/src/components/Timeline/Timeline.vue +24 -24
  141. package/src/elements/Card/Card.vue +122 -122
  142. package/src/elements/Card/README.md +24 -24
  143. package/src/elements/FileUploads/FileUploads.vue +48 -48
  144. package/src/elements/FileUploads/README.md +24 -24
  145. package/src/elements/Input/Input.vue +272 -272
  146. package/src/elements/Input/README.md +19 -19
  147. package/src/elements/Table/README.md +62 -62
  148. package/src/elements/Table/Table.spec.js +90 -90
  149. package/src/elements/Table/Table.vue +129 -129
  150. package/src/foundations/Icon/Icon.spec.js +24 -24
  151. package/src/foundations/Icon/Icon.vue +24 -24
  152. package/src/foundations/Icon/README.md +11 -11
  153. package/src/foundations/Logo/Logo.spec.js +56 -56
  154. package/src/foundations/Logo/Logo.vue +39 -39
  155. package/src/foundations/Logo/README.md +20 -20
  156. package/src/foundations/YoutubeVideo/README.md +11 -11
  157. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +24 -24
  158. package/src/helpers/strings.js +12 -12
  159. package/src/index.js +27 -27
  160. package/src/vue-shim.d.ts +6 -6
@@ -1,52 +1,52 @@
1
- <template>
2
-
3
- <details class="accordion-item" :id="createID(title)">
4
- <summary :class="`${titlecolour?`bg-${titlecolour}`:''}`" v-on:click="show = true"><span class="accordion-header accordion-button h4">{{title}}<span v-if="badge" :class="`badge bg-${badgecolour}`">{{badge}}</span></span></summary>
5
- <div class="accordion-body" v-if="show">
6
- <slot></slot>
7
- </div>
8
- </details>
9
- </template>
10
-
11
- <script>
12
- import { safeID } from '../../helpers/strings.js'
13
-
14
- export default {
15
- name: 'AccordionItem',
16
- props: {
17
- title: {
18
- type: String,
19
- required: true
20
- },
21
- titlecolour: {
22
- type: String,
23
- required: false
24
- },
25
- badge: {
26
- type: [Number, String],
27
- required: false
28
- },
29
- badgecolour: {
30
- type: String,
31
- required: false,
32
- default: 'light'
33
- },
34
- lazy: {
35
- type: Boolean,
36
- required: false
37
- }
38
- },
39
- computed: {
40
- createID () {
41
- return (summary) => {
42
- return `${safeID(summary)}`
43
- }
44
- }
45
- },
46
- data() {
47
- return {
48
- show: this.lazy ? false : true
49
- }
50
- }
51
- }
52
- </script>
1
+ <template>
2
+
3
+ <details class="accordion-item" :id="createID(title)">
4
+ <summary :class="`${titlecolour?`bg-${titlecolour}`:''}`" v-on:click="show = true"><span class="accordion-header accordion-button h4">{{title}}<span v-if="badge" :class="`badge bg-${badgecolour}`">{{badge}}</span></span></summary>
5
+ <div class="accordion-body" v-if="show">
6
+ <slot></slot>
7
+ </div>
8
+ </details>
9
+ </template>
10
+
11
+ <script>
12
+ import { safeID } from '../../helpers/strings.js'
13
+
14
+ export default {
15
+ name: 'AccordionItem',
16
+ props: {
17
+ title: {
18
+ type: String,
19
+ required: true
20
+ },
21
+ titlecolour: {
22
+ type: String,
23
+ required: false
24
+ },
25
+ badge: {
26
+ type: [Number, String],
27
+ required: false
28
+ },
29
+ badgecolour: {
30
+ type: String,
31
+ required: false,
32
+ default: 'light'
33
+ },
34
+ lazy: {
35
+ type: Boolean,
36
+ required: false
37
+ }
38
+ },
39
+ computed: {
40
+ createID () {
41
+ return (summary) => {
42
+ return `${safeID(summary)}`
43
+ }
44
+ }
45
+ },
46
+ data() {
47
+ return {
48
+ show: this.lazy ? false : true
49
+ }
50
+ }
51
+ }
52
+ </script>
@@ -1,35 +1,35 @@
1
- ### Usage
2
-
3
- ```
4
- <Accordion>
5
- <AccordionItem title="Question 1">
6
- <p>Accordion item content</p>
7
- </AccordionItem>
8
- <AccordionItem title="Question 2">
9
- <p>Accordion item content</p>
10
- </AccordionItem>
11
- </Accordion>
12
- ```
13
-
14
- ### Class modifiers
15
-
16
- - Adding a class of **.accordion--keep-open** to the accordion will stop the items from closing when another one is opened.
17
- - Adding a class of **.accordion--straight** to the accordion will remove the slight indentation of the accordion.
18
-
19
-
20
- ### Accordion item Properties
21
-
22
- | Option | Type | Default Value | Description |
23
- | ------ | ---- | ------------- | ----------- |
24
- | title | String | - | A question or statement |
25
- | titlecolour | String | - | Apply a colour the the accordion item title |
26
- | badge | String | - | Add a highlighted badge/tag to the accordion item title |
27
- | badgecolour | String | light | Apply a colour the badge |
28
- | lazy | Boolean | - | If set the content of the tab will not loaded intially and will be loaded after the user has clicked on the accordion link. |
29
-
30
-
31
- ### Accordion item Slots
32
-
33
- | Option | Default Value | Description |
34
- | ------ | ------------- | ----------- |
1
+ ### Usage
2
+
3
+ ```
4
+ <Accordion>
5
+ <AccordionItem title="Question 1">
6
+ <p>Accordion item content</p>
7
+ </AccordionItem>
8
+ <AccordionItem title="Question 2">
9
+ <p>Accordion item content</p>
10
+ </AccordionItem>
11
+ </Accordion>
12
+ ```
13
+
14
+ ### Class modifiers
15
+
16
+ - Adding a class of **.accordion--keep-open** to the accordion will stop the items from closing when another one is opened.
17
+ - Adding a class of **.accordion--straight** to the accordion will remove the slight indentation of the accordion.
18
+
19
+
20
+ ### Accordion item Properties
21
+
22
+ | Option | Type | Default Value | Description |
23
+ | ------ | ---- | ------------- | ----------- |
24
+ | title | String | - | A question or statement |
25
+ | titlecolour | String | - | Apply a colour the the accordion item title |
26
+ | badge | String | - | Add a highlighted badge/tag to the accordion item title |
27
+ | badgecolour | String | light | Apply a colour the badge |
28
+ | lazy | Boolean | - | If set the content of the tab will not loaded intially and will be loaded after the user has clicked on the accordion link. |
29
+
30
+
31
+ ### Accordion item Slots
32
+
33
+ | Option | Default Value | Description |
34
+ | ------ | ------------- | ----------- |
35
35
  | default | - | This is the content of the accordion item |
@@ -1,49 +1,49 @@
1
- import { mount } from '@vue/test-utils'
2
- import Alert from './Alert.vue'
3
-
4
- describe('Alert component', () => {
5
- it('renders correctly', () => {
6
-
7
- const test = mount(Alert, {
8
- propsData: {
9
- },
10
- slots: {
11
- default: `<p>Content</p>`
12
- }
13
- })
14
-
15
- expect(test.html()).toContain('bg-primary')
16
- expect(test.html()).toContain('<p>Content</p>')
17
- })
18
-
19
- it('renders correct background', () => {
20
-
21
- const test = mount(Alert, {
22
- propsData: {
23
- colour: 'info'
24
- },
25
- slots: {
26
- default: `<p>Content</p>`
27
- }
28
- })
29
-
30
- expect(test.html()).toContain('bg-info')
31
- expect(test.html()).toContain('<p>Content</p>')
32
- })
33
-
34
- it('renders a close button', () => {
35
-
36
- const test = mount(Alert, {
37
- propsData: {
38
- dismissible: 'true'
39
- },
40
- slots: {
41
- default: `<p>Content</p>`
42
- }
43
- })
44
-
45
- expect(test.html()).toContain('<button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>')
46
- })
47
-
48
-
49
- })
1
+ import { mount } from '@vue/test-utils'
2
+ import Alert from './Alert.vue'
3
+
4
+ describe('Alert component', () => {
5
+ it('renders correctly', () => {
6
+
7
+ const test = mount(Alert, {
8
+ propsData: {
9
+ },
10
+ slots: {
11
+ default: `<p>Content</p>`
12
+ }
13
+ })
14
+
15
+ expect(test.html()).toContain('bg-primary')
16
+ expect(test.html()).toContain('<p>Content</p>')
17
+ })
18
+
19
+ it('renders correct background', () => {
20
+
21
+ const test = mount(Alert, {
22
+ propsData: {
23
+ colour: 'info'
24
+ },
25
+ slots: {
26
+ default: `<p>Content</p>`
27
+ }
28
+ })
29
+
30
+ expect(test.html()).toContain('bg-info')
31
+ expect(test.html()).toContain('<p>Content</p>')
32
+ })
33
+
34
+ it('renders a close button', () => {
35
+
36
+ const test = mount(Alert, {
37
+ propsData: {
38
+ dismissible: 'true'
39
+ },
40
+ slots: {
41
+ default: `<p>Content</p>`
42
+ }
43
+ })
44
+
45
+ expect(test.html()).toContain('<button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>')
46
+ })
47
+
48
+
49
+ })
@@ -1,39 +1,39 @@
1
- <template>
2
- <div :class="`container alert pb-0 ${dismissible?'alert--dismissible fade show':''}`" ref="wrapper" :data-timeout="timeout" :style="(timeout?`--animation-length: ${timeout}ms`:'')">
3
- <div :class="`alert__inner bg-${colour}`" role="alert">
4
- <button v-if="dismissible" type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
5
- <slot></slot>
6
- </div>
7
- </div>
8
- </template>
9
-
10
- <style lang="scss">
11
- @import "../../../assets/sass/components/alert.scss";
12
- </style>
13
-
14
- <script>
15
- import alert from '../../../assets/js/modules/alert.js'
16
-
17
- export default {
18
- name: 'Alert',
19
- props: {
20
- dismissible: {
21
- type: [String,Boolean],
22
- required: false,
23
- default: false
24
- },
25
- colour: {
26
- type: String,
27
- required: false,
28
- default: 'primary'
29
- },
30
- timeout: {
31
- type: [String,Number],
32
- required: false
33
- }
34
- },
35
- mounted(){
36
- alert(this.$refs.wrapper);
37
- }
38
- }
39
- </script>
1
+ <template>
2
+ <div :class="`container alert pb-0 ${dismissible?'alert--dismissible fade show':''}`" ref="wrapper" :data-timeout="timeout" :style="(timeout?`--animation-length: ${timeout}ms`:'')">
3
+ <div :class="`alert__inner bg-${colour}`" role="alert">
4
+ <button v-if="dismissible" type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
5
+ <slot></slot>
6
+ </div>
7
+ </div>
8
+ </template>
9
+
10
+ <style lang="scss">
11
+ @import "../../../assets/sass/components/alert.scss";
12
+ </style>
13
+
14
+ <script>
15
+ import alert from '../../../assets/js/modules/alert.js'
16
+
17
+ export default {
18
+ name: 'Alert',
19
+ props: {
20
+ dismissible: {
21
+ type: [String,Boolean],
22
+ required: false,
23
+ default: false
24
+ },
25
+ colour: {
26
+ type: String,
27
+ required: false,
28
+ default: 'primary'
29
+ },
30
+ timeout: {
31
+ type: [String,Number],
32
+ required: false
33
+ }
34
+ },
35
+ mounted(){
36
+ alert(this.$refs.wrapper);
37
+ }
38
+ }
39
+ </script>
@@ -1,29 +1,29 @@
1
- ### Usage
2
-
3
- ```
4
- <Alert class="alert--fixed" colour="info" dismissible timeout="6000">
5
- <h2 class="h6">Self dismissing alert</h2>
6
- <p>Curabitur aliquet quam id dui posuere blandit. Vivamus suscipit tortor eget felis porttitor volutpat. Proin eget tortor risus. Proin eget tortor risus. Vestibulum ac diam sit amet quam vehicula elementum sed sit amet dui. Proin eget tortor risus. Vivamus suscipit tortor eget felis porttitor volutpat. Vivamus magna justo, lacinia eget consectetur sed, convallis at tellus.</p>
7
- </Alert>
8
- ```
9
-
10
- ### Class and data modifiers
11
-
12
- - Adding a class of **.alert--fixed** stick the alert box to the bottom of the page.
13
- - Adding a class of **.alert--dismissible** will add the correct padding for the having a btn to the right.
14
-
15
-
16
- ### Properties
17
-
18
- | Option | Type | Default Value | Description |
19
- | ------ | ---- | ------------- | ----------- |
20
- | dismissible | Boolean | - | Adds a close button which will remove the alert box after clicking it. |
21
- | colour | String | primary | Apply a background colour the alert box, any of the theme colours can be used. |
22
- | timeout | String or Number | - | Sets a timeout to remove the alert box. |
23
-
24
-
25
- ### Slots
26
-
27
- | Option | Default Value | Description |
28
- | ------ | ------------- | ----------- |
1
+ ### Usage
2
+
3
+ ```
4
+ <Alert class="alert--fixed" colour="info" dismissible timeout="6000">
5
+ <h2 class="h6">Self dismissing alert</h2>
6
+ <p>Curabitur aliquet quam id dui posuere blandit. Vivamus suscipit tortor eget felis porttitor volutpat. Proin eget tortor risus. Proin eget tortor risus. Vestibulum ac diam sit amet quam vehicula elementum sed sit amet dui. Proin eget tortor risus. Vivamus suscipit tortor eget felis porttitor volutpat. Vivamus magna justo, lacinia eget consectetur sed, convallis at tellus.</p>
7
+ </Alert>
8
+ ```
9
+
10
+ ### Class and data modifiers
11
+
12
+ - Adding a class of **.alert--fixed** stick the alert box to the bottom of the page.
13
+ - Adding a class of **.alert--dismissible** will add the correct padding for the having a btn to the right.
14
+
15
+
16
+ ### Properties
17
+
18
+ | Option | Type | Default Value | Description |
19
+ | ------ | ---- | ------------- | ----------- |
20
+ | dismissible | Boolean | - | Adds a close button which will remove the alert box after clicking it. |
21
+ | colour | String | primary | Apply a background colour the alert box, any of the theme colours can be used. |
22
+ | timeout | String or Number | - | Sets a timeout to remove the alert box. |
23
+
24
+
25
+ ### Slots
26
+
27
+ | Option | Default Value | Description |
28
+ | ------ | ------------- | ----------- |
29
29
  | default | - | This is the content of the alert box |
@@ -1,28 +1,28 @@
1
- import { shallowMount } from '@vue/test-utils'
2
- import Header from './Banner.vue'
3
-
4
- describe('Banner component', () => {
5
-
6
- const test = shallowMount(Header, {
7
- propsData: {
8
- title: 'Banner title',
9
- image: '/img/src/img.png'
10
- },
11
- slots: {
12
- default: '<p>Hello</p>'
13
- }
14
- })
15
-
16
- it('renders the banner title', () => {
17
- expect(test.html()).toContain('<h2>Banner title</h2>')
18
- })
19
-
20
- it('renders the banner content', () => {
21
- expect(test.html()).toContain('<p>Hello</p>')
22
- })
23
-
24
-
25
- it('renders the image', () => {
26
- expect(test.html()).toContain('<img src="/img/src/img.png" alt="" class="h-100 w-100 object-cover">')
27
- })
28
- })
1
+ import { shallowMount } from '@vue/test-utils'
2
+ import Header from './Banner.vue'
3
+
4
+ describe('Banner component', () => {
5
+
6
+ const test = shallowMount(Header, {
7
+ propsData: {
8
+ title: 'Banner title',
9
+ image: '/img/src/img.png'
10
+ },
11
+ slots: {
12
+ default: '<p>Hello</p>'
13
+ }
14
+ })
15
+
16
+ it('renders the banner title', () => {
17
+ expect(test.html()).toContain('<h2>Banner title</h2>')
18
+ })
19
+
20
+ it('renders the banner content', () => {
21
+ expect(test.html()).toContain('<p>Hello</p>')
22
+ })
23
+
24
+
25
+ it('renders the image', () => {
26
+ expect(test.html()).toContain('<img src="/img/src/img.png" alt="" class="h-100 w-100 object-cover">')
27
+ })
28
+ })
@@ -1,38 +1,38 @@
1
- <template>
2
- <div class="container">
3
- <div :class="'bg-'+background+' mb-4'">
4
- <div class="row">
5
- <div class="col-sm-6">
6
- <div class="pt-5 pb-3 px-4">
7
- <h2>{{title}}</h2>
8
- <slot></slot>
9
- </div>
10
- </div>
11
- <div class="col-sm-6 col-md-5 ms-auto">
12
- <img v-if="image" :src="image" alt="" class="h-100 w-100 object-cover" />
13
- </div>
14
- </div>
15
- </div>
16
- </div>
17
- </template>
18
-
19
- <script>
20
- export default {
21
- name: 'Header',
22
- props: {
23
- title: {
24
- type: String,
25
- required: true
26
- },
27
- image: {
28
- type: String,
29
- required: false
30
- },
31
- background: {
32
- type: String,
33
- default: 'light',
34
- required: false
35
- }
36
- }
37
- }
38
- </script>
1
+ <template>
2
+ <div class="container">
3
+ <div :class="'bg-'+background+' mb-4'">
4
+ <div class="row">
5
+ <div class="col-sm-6">
6
+ <div class="pt-5 pb-3 px-4">
7
+ <h2>{{title}}</h2>
8
+ <slot></slot>
9
+ </div>
10
+ </div>
11
+ <div class="col-sm-6 col-md-5 ms-auto">
12
+ <img v-if="image" :src="image" alt="" class="h-100 w-100 object-cover" />
13
+ </div>
14
+ </div>
15
+ </div>
16
+ </div>
17
+ </template>
18
+
19
+ <script>
20
+ export default {
21
+ name: 'Header',
22
+ props: {
23
+ title: {
24
+ type: String,
25
+ required: true
26
+ },
27
+ image: {
28
+ type: String,
29
+ required: false
30
+ },
31
+ background: {
32
+ type: String,
33
+ default: 'light',
34
+ required: false
35
+ }
36
+ }
37
+ }
38
+ </script>
@@ -1,24 +1,24 @@
1
- ### Usage
2
-
3
- ```
4
- <Banner title="The benefits of buying through auction" :image="require('../../assets/shutterstock_1229155495.webp')">
5
- <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,</p>
6
- <a href="/buyers-guide" class="btn">Download our buyers guide</a>
7
- </Banner>
8
- ```
9
-
10
- ### Properties
11
-
12
- | Option | Type | Default Value | Description |
13
- | ------ | ---- | ------------- | ----------- |
14
- | title | String | - | Required |
15
- | image | String | - | Optional image url to display in the background |
16
- | background | String | light | The background colour can be overwritten if need be |
17
-
18
-
19
-
20
- ### Slots
21
-
22
- | Option | Default Value | Description |
23
- | ------ | ------------- | ----------- |
1
+ ### Usage
2
+
3
+ ```
4
+ <Banner title="The benefits of buying through auction" :image="require('../../assets/shutterstock_1229155495.webp')">
5
+ <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,</p>
6
+ <a href="/buyers-guide" class="btn">Download our buyers guide</a>
7
+ </Banner>
8
+ ```
9
+
10
+ ### Properties
11
+
12
+ | Option | Type | Default Value | Description |
13
+ | ------ | ---- | ------------- | ----------- |
14
+ | title | String | - | Required |
15
+ | image | String | - | Optional image url to display in the background |
16
+ | background | String | light | The background colour can be overwritten if need be |
17
+
18
+
19
+
20
+ ### Slots
21
+
22
+ | Option | Default Value | Description |
23
+ | ------ | ------------- | ----------- |
24
24
  | default | - | Will display underneath the heading |