@eturnity/eturnity_reusable_components 7.18.0--EPDM-9013.1 → 7.18.0-EPDM-10335.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 (52) hide show
  1. package/.storybook/preview.js +1 -1
  2. package/package.json +19 -23
  3. package/src/App.vue +2 -2
  4. package/src/components/addNewButton/index.vue +5 -3
  5. package/src/components/buttons/buttonIcon/index.vue +1 -1
  6. package/src/components/buttons/closeButton/index.vue +1 -1
  7. package/src/components/buttons/mainButton/index.vue +6 -1
  8. package/src/components/deleteIcon/DeleteIcon.stories.js +7 -7
  9. package/src/components/deleteIcon/index.vue +25 -21
  10. package/src/components/draggableInputHandle/index.vue +24 -25
  11. package/src/components/dropdown/index.vue +129 -110
  12. package/src/components/errorMessage/index.vue +10 -5
  13. package/src/components/filter/filterSettings.vue +58 -97
  14. package/src/components/filter/index.vue +3 -3
  15. package/src/components/filter/parentDropdown.vue +2 -2
  16. package/src/components/icon/iconCache.js +23 -0
  17. package/src/components/icon/iconCollection.vue +2 -2
  18. package/src/components/icon/index.vue +67 -75
  19. package/src/components/iconWrapper/index.vue +1 -4
  20. package/src/components/infoCard/index.vue +2 -3
  21. package/src/components/infoText/index.vue +1 -1
  22. package/src/components/inputs/checkbox/index.vue +21 -6
  23. package/src/components/inputs/inputNumber/index.vue +8 -11
  24. package/src/components/inputs/inputNumberQuestion/index.vue +1 -1
  25. package/src/components/inputs/inputText/index.vue +3 -3
  26. package/src/components/inputs/radioButton/index.vue +1 -1
  27. package/src/components/inputs/searchInput/index.vue +28 -11
  28. package/src/components/inputs/select/index.vue +199 -55
  29. package/src/components/inputs/select/option/index.vue +36 -11
  30. package/src/components/inputs/slider/index.vue +16 -16
  31. package/src/components/inputs/switchField/index.vue +2 -2
  32. package/src/components/inputs/textAreaInput/index.vue +1 -1
  33. package/src/components/inputs/toggle/index.vue +2 -2
  34. package/src/components/label/index.vue +27 -31
  35. package/src/components/modals/modal/index.vue +2 -6
  36. package/src/components/navigationTabs/index.vue +27 -20
  37. package/src/components/pageSubtitle/index.vue +1 -1
  38. package/src/components/pageTitle/index.vue +4 -4
  39. package/src/components/pagination/index.vue +1 -1
  40. package/src/components/progressBar/index.vue +1 -1
  41. package/src/components/projectMarker/index.vue +16 -9
  42. package/src/components/sideMenu/index.vue +1 -1
  43. package/src/components/spinner/index.vue +7 -11
  44. package/src/components/tableDropdown/index.vue +30 -37
  45. package/src/components/tables/mainTable/exampleNested.vue +1 -1
  46. package/src/components/tables/mainTable/index.vue +10 -9
  47. package/src/components/tables/viewTable/index.vue +2 -2
  48. package/src/components/threeDots/index.vue +1 -1
  49. package/src/components/videoThumbnail/index.vue +95 -100
  50. package/src/main.js +4 -11
  51. package/src/assets/svgIcons/bexio.svg +0 -4
  52. package/src/assets/svgIcons/data_transfer.svg +0 -3
@@ -1,4 +1,4 @@
1
- import { ThemeProvider } from "vue-styled-components"
1
+ import { ThemeProvider } from "vue3-styled-components"
2
2
 
3
3
  const theme = {
4
4
  colors: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eturnity/eturnity_reusable_components",
3
- "version": "7.18.0--EPDM-9013.1",
3
+ "version": "7.18.0-EPDM-10335.0",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "dev": "vue-cli-service serve",
@@ -10,30 +10,26 @@
10
10
  "build-storybook": "build-storybook"
11
11
  },
12
12
  "dependencies": {
13
- "@vueform/slider": "1.0.5",
13
+ "@storybook/vue3": "7.0.18",
14
+ "@vue/compat": "3.3.4",
15
+ "@vueform/slider": "2.1.10",
16
+ "@vuepic/vue-datepicker": "6.1.0",
17
+ "click-outside-vue3": "4.0.1",
14
18
  "html-loader": "0.5.5",
15
- "postcss": "^8.4.25",
16
- "v-click-outside": "2.1.4",
17
- "vue": "2.6.11",
18
- "vue-styled-components": "1.6.0",
19
- "vue2-datepicker": "3.11.1",
20
- "vuedraggable": "2.24.3",
21
- "core-js": "3.31.1"
19
+ "postcss": "8.4.25",
20
+ "vue": "3.3.4",
21
+ "vue3-styled-components": "1.2.1",
22
+ "vuedraggable": "4.1.0"
22
23
  },
23
24
  "devDependencies": {
24
- "@storybook/addon-actions": "6.2.8",
25
- "@storybook/addon-docs": "6.4.19",
26
- "@storybook/addon-essentials": "6.2.8",
27
- "@storybook/addon-links": "6.2.8",
28
- "@storybook/vue": "6.4.19",
29
- "@vue/cli-plugin-babel": "~4.5.0",
30
- "@vue/cli-plugin-eslint": "~4.5.0",
31
- "@vue/cli-service": "~4.5.0",
32
- "@vue/composition-api": "1.0.0-rc.10",
33
- "babel-eslint": "10.1.0",
34
- "eslint": "6.7.2",
35
- "eslint-plugin-vue": "6.2.2",
36
- "vue-template-compiler": "2.6.11"
25
+ "@babel/core": "7.12.16",
26
+ "@babel/eslint-parser": "7.12.16",
27
+ "@vue/cli-plugin-babel": "5.0.8",
28
+ "@vue/cli-plugin-eslint": "5.0.8",
29
+ "@vue/cli-service": "5.0.8",
30
+ "@vue/compiler-sfc": "3.3.4",
31
+ "eslint": "7.32.0",
32
+ "eslint-plugin-vue": "8.0.3"
37
33
  },
38
34
  "eslintConfig": {
39
35
  "root": true,
@@ -45,7 +41,7 @@
45
41
  "eslint:recommended"
46
42
  ],
47
43
  "parserOptions": {
48
- "parser": "babel-eslint"
44
+ "parser": "@babel/eslint-parser"
49
45
  },
50
46
  "rules": {}
51
47
  },
package/src/App.vue CHANGED
@@ -55,9 +55,9 @@
55
55
  </template>
56
56
 
57
57
  <script>
58
- import { ThemeProvider } from 'vue-styled-components'
58
+ import { ThemeProvider } from 'vue3-styled-components'
59
59
  import theme from './assets/theme'
60
- import styled from 'vue-styled-components'
60
+ import styled from 'vue3-styled-components'
61
61
  import InputNumber from '@/components/inputs/inputNumber'
62
62
 
63
63
  const PageContainer = styled.div`
@@ -1,14 +1,15 @@
1
1
  <template>
2
2
  <page-container :shouldPosition="shouldPosition">
3
3
  <button-container :data-id="dataId">
4
- <plus-button :src="require('../../assets/icons/plus_button.svg')" />
4
+ <PlusButtonSvg />
5
5
  </button-container>
6
6
  </page-container>
7
7
  </template>
8
8
 
9
9
  <script>
10
10
  // import AddNewButton from "@eturnity/eturnity_reusable_components/src/components/addNewButton"
11
- import styled from 'vue-styled-components'
11
+ import styled from 'vue3-styled-components'
12
+ import PlusButtonSvg from '../../assets/icons/plus_button.svg'
12
13
 
13
14
  const pageAttrs = { shouldPosition: Boolean }
14
15
  const PageContainer = styled('div', pageAttrs)`
@@ -46,7 +47,8 @@ export default {
46
47
  components: {
47
48
  PageContainer,
48
49
  ButtonContainer,
49
- PlusButton
50
+ PlusButton,
51
+ PlusButtonSvg
50
52
  },
51
53
  props: {
52
54
  shouldPosition: {
@@ -32,7 +32,7 @@
32
32
  // />
33
33
 
34
34
  import Icon from "../../icon"
35
- import styled from "vue-styled-components"
35
+ import styled from "vue3-styled-components"
36
36
  import Theme from "@/assets/theme";
37
37
 
38
38
  const PageContainer = styled.div``
@@ -13,7 +13,7 @@
13
13
  // <close-button
14
14
  // color="#fff"
15
15
  // />
16
- import styled from 'vue-styled-components'
16
+ import styled from 'vue3-styled-components'
17
17
 
18
18
  const Container = styled.div`
19
19
  position: relative;
@@ -1,6 +1,7 @@
1
1
  <template>
2
2
  <page-container>
3
3
  <button-container
4
+ :id="id"
4
5
  :type="type"
5
6
  :minWidth="minWidth"
6
7
  :isDisabled="isDisabled"
@@ -25,7 +26,7 @@
25
26
  // :data-id="test_data_id"
26
27
  // />
27
28
 
28
- import styled from 'vue-styled-components'
29
+ import styled from 'vue3-styled-components'
29
30
 
30
31
  const PageContainer = styled.div``
31
32
 
@@ -98,6 +99,10 @@ export default {
98
99
  required: false,
99
100
  default: null
100
101
  },
102
+ id: {
103
+ required: false,
104
+ default: null
105
+ },
101
106
  dataId: {
102
107
  type: String,
103
108
  default: ''
@@ -1,8 +1,8 @@
1
- import DeleteIcon from "./index.vue"
1
+ import DeleteIcon from './index.vue'
2
2
 
3
3
  export default {
4
- title: "DeleteIcon",
5
- component: DeleteIcon,
4
+ title: 'DeleteIcon',
5
+ component: DeleteIcon
6
6
  // argTypes: {},
7
7
  }
8
8
 
@@ -11,19 +11,19 @@ const Template = (args, { argTypes }) => ({
11
11
  components: { DeleteIcon },
12
12
  // The story's `args` need to be mapped into the template through the `setup()` method
13
13
  props: Object.keys(argTypes),
14
- template: '<delete-icon v-bind="$props" />',
14
+ template: '<delete-icon v-bind="$props" />'
15
15
 
16
16
  // import DeleteIcon from "@eturnity/eturnity_reusable_components/src/components/deleteIcon"
17
17
  // To use:
18
- // <delete-icon color="gray" @click.native="onDeleteItem(item)" :isDisabled="true" />
18
+ // <delete-icon color="gray" @click="onDeleteItem(item)" :isDisabled="true" />
19
19
  })
20
20
 
21
21
  export const Default = Template.bind({})
22
22
  Default.args = {
23
- isDisabled: false,
23
+ isDisabled: false
24
24
  }
25
25
 
26
26
  export const Disabled = Template.bind({})
27
27
  Disabled.args = {
28
- isDisabled: true,
28
+ isDisabled: true
29
29
  }
@@ -4,58 +4,62 @@
4
4
  @mouseleave="isHovered = false"
5
5
  :isDisabled="isDisabled"
6
6
  >
7
- <icon-image
8
- v-if="isHovered && !isDisabled"
9
- :hoverBg="hoverBg"
10
- :src="require('../../assets/icons/delete_icon.svg')"
11
- />
12
- <icon-image
13
- v-else
14
- :src="require('../../assets/icons/delete_icon_gray.svg')"
15
- />
7
+ <delete-icon-red v-if="isHovered && !isDisabled" :hoverBg="hoverBg" />
8
+ <delete-icon-gray v-else />
16
9
  </wrapper>
17
10
  </template>
18
11
 
19
12
  <script>
20
13
  // To use:
21
- // <delete-icon @click.native="onDeleteItem(item)" :isDisabled="true" />
22
- import styled from "vue-styled-components"
14
+ // <delete-icon @click="onDeleteItem(item)" :isDisabled="true" />
15
+ import styled from 'vue3-styled-components'
16
+ import SvgDelete from '../../assets/icons/delete_icon.svg'
17
+ import SvgDeleteGray from '../../assets/icons/delete_icon_gray.svg'
23
18
 
24
19
  const wrapperAttrs = { isDisabled: Boolean }
25
- const Wrapper = styled("div", wrapperAttrs)`
20
+ const Wrapper = styled('div', wrapperAttrs)`
26
21
  width: 30px;
27
22
  height: 30px;
28
- cursor: ${(props) => (props.isDisabled ? "not-allowed" : "pointer")};
23
+ cursor: ${(props) => (props.isDisabled ? 'not-allowed' : 'pointer')};
29
24
  `
30
25
 
31
26
  const IconImageAttrs = { hoverBg: String }
32
- const IconImage = styled('img', IconImageAttrs)`
27
+ const DeleteIconRed = styled(SvgDelete, IconImageAttrs)`
33
28
  &:hover {
34
- background-color: ${(props) => props.hoverBg ? props.hoverBg : props.theme.colors.grey5};
29
+ background-color: ${(props) =>
30
+ props.hoverBg ? props.hoverBg : props.theme.colors.grey5};
31
+ border-radius: 4px;
32
+ }
33
+ `
34
+
35
+ const DeleteIconGray = styled(SvgDeleteGray, IconImageAttrs)`
36
+ &:hover {
37
+ background-color: ${(props) => props.theme.colors.grey5};
35
38
  border-radius: 4px;
36
39
  }
37
40
  `
38
41
 
39
42
  export default {
40
- name: "delete-icon",
43
+ name: 'delete-icon',
41
44
  components: {
42
45
  Wrapper,
43
- IconImage,
46
+ DeleteIconRed,
47
+ DeleteIconGray
44
48
  },
45
49
  props: {
46
50
  isDisabled: {
47
51
  required: false,
48
- default: false,
52
+ default: false
49
53
  },
50
54
  hoverBg: {
51
55
  required: false,
52
- default: '',
56
+ default: ''
53
57
  }
54
58
  },
55
59
  data() {
56
60
  return {
57
- isHovered: false,
61
+ isHovered: false
58
62
  }
59
- },
63
+ }
60
64
  }
61
65
  </script>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <Handle :height = "height" class="handle">
2
+ <Handle :height="height" class="handle">
3
3
  <Dot></Dot>
4
4
  <Dot></Dot>
5
5
  <Dot></Dot>
@@ -7,35 +7,34 @@
7
7
  </template>
8
8
 
9
9
  <script>
10
+ import styled from 'vue3-styled-components'
10
11
 
11
- import styled from 'vue-styled-components'
12
-
13
- const Handle = styled('div',{ height : String })`
14
- position:absolute;
15
- left:0;
16
- margin-right:10px;
17
- display: flex;
18
- align-items: stretch;
19
- flex-direction: column;
20
- justify-content: center;
21
- width: 14px;
22
- height:${props=> props.height};
23
- padding: 0 5px;
24
- background-color: #f3f3f7;
25
- cursor: pointer;
26
- align-items: center;
27
- `
12
+ const Handle = styled('div', { height: String })`
13
+ position: absolute;
14
+ left: 0;
15
+ margin-right: 10px;
16
+ display: flex;
17
+ align-items: stretch;
18
+ flex-direction: column;
19
+ justify-content: center;
20
+ width: 14px;
21
+ height: ${(props) => props.height};
22
+ padding: 0 5px;
23
+ background-color: #f3f3f7;
24
+ cursor: pointer;
25
+ align-items: center;
26
+ `
28
27
  const Dot = styled.div`
29
- display: inline-block;
30
- width: 4px;
31
- height: 4px;
32
- margin:2px;
33
- background-color: #0068de;
34
- `
28
+ display: inline-block;
29
+ width: 4px;
30
+ height: 4px;
31
+ margin: 2px;
32
+ background-color: #0068de;
33
+ `
35
34
 
36
35
  export default {
37
36
  name: 'draggableInputHandle',
38
- props:['height'],
37
+ props: ['height'],
39
38
  components: {
40
39
  Handle,
41
40
  Dot
@@ -1,119 +1,138 @@
1
1
  <template>
2
- <wrapper ref="dropdown" :openingMode="openingMode">
3
- <WrapperButton @click="isOpenByClick=!isOpenByClick">
4
- <slot name="trigger"/>
5
- </WrapperButton>
6
- <WrapperDropdown class="dropdown-content" :class="{openDropdown:isOpenByClick && openingMode=='click'}" :justify="justify" :position="position" :width="width" :backgroundColor="backgroundColor">
7
- <DropdownWindow :gap="gap" :backgroundColor="backgroundColor" :width="width">
8
- <slot name="dropdown"/>
9
- </DropdownWindow>
10
- </WrapperDropdown>
11
- </wrapper>
12
- </template>
13
-
14
- <script>
15
- // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
16
- // How to use:
17
- //<DropdownComponent
18
- // width="300px"
19
- // backgroundColor="red">
2
+ <wrapper ref="dropdown" :openingMode="openingMode">
3
+ <WrapperButton @click="isOpenByClick = !isOpenByClick">
4
+ <slot name="trigger" />
5
+ </WrapperButton>
6
+ <WrapperDropdown
7
+ class="dropdown-content"
8
+ :class="{ openDropdown: isOpenByClick && openingMode == 'click' }"
9
+ :justify="justify"
10
+ :position="position"
11
+ :width="width"
12
+ :backgroundColor="backgroundColor"
13
+ >
14
+ <DropdownWindow
15
+ :gap="gap"
16
+ :backgroundColor="backgroundColor"
17
+ :width="width"
18
+ >
19
+ <slot name="dropdown" />
20
+ </DropdownWindow>
21
+ </WrapperDropdown>
22
+ </wrapper>
23
+ </template>
20
24
 
21
- // <DropdownComponent/>
22
-
23
- import styled from 'vue-styled-components'
24
-
25
- const wrapperAttrs = { width: String, backgroundColor:String,openingMode:String,gap:String,justify:String }
26
- const Wrapper = styled('div', wrapperAttrs)`
27
- display: inline-block;
28
- position: relative;
25
+ <script>
26
+ // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
27
+ // How to use:
28
+ //<DropdownComponent
29
+ // width="300px"
30
+ // backgroundColor="red">
29
31
 
30
- &:hover .dropdown-content {
31
- ${props=>props.openingMode=='hover'?"display:block":""}
32
- }
33
- & .openDropdown{
34
- ${props=>props.openingMode=='click'?"display:block !important":""}
35
- }
36
- `
37
- const WrapperDropdown = styled('div', wrapperAttrs)`
38
- margin-top: 0;
39
- display: none;
40
- position: absolute;
41
- z-index: 1;
42
- ${(props) => props.justify=="right"?"right:0;":""}
43
- `
44
- const DropdownWindow = styled('div', wrapperAttrs)`
45
- width: ${(props) => props.width};
46
- background-color: ${(props) => props.theme.colors[props.backgroundColor] || props.backgroundColor};
47
- margin-top: ${(props) => props.gap};
48
- border-radius: 4px;
49
- position: relative;
50
- min-width: 160px;
51
- box-shadow: -1px 0px 5px rgba(0, 0, 0, 0.302);
52
- z-index: 1;
53
- `
54
-
55
- const WrapperButton = styled('div', wrapperAttrs)`
56
- display: inline-block;
57
- `
58
-
59
- export default {
60
- name: 'DropdownComponent',
61
- components: {
62
- WrapperDropdown,
63
- WrapperButton,
64
- Wrapper,
65
- DropdownWindow
66
- },
67
- props: {
68
- width: {
69
- required: false,
70
- default: '300px'
71
- },
72
- gap: {
73
- required: false,
74
- default: '10px'
75
- },
76
- position: {
77
- required: false,
78
- default: 'bottom'
79
- },
80
- justify: {
81
- required: false,
82
- default: 'left'
83
- },
84
- openingMode: {
85
- required: false,
86
- default: 'hover'
87
- },
88
- backgroundColor: {
89
- required: false,
90
- default: 'white'
91
- }
32
+ // <DropdownComponent/>
33
+
34
+ import styled from 'vue3-styled-components'
35
+
36
+ const wrapperAttrs = {
37
+ width: String,
38
+ backgroundColor: String,
39
+ openingMode: String,
40
+ gap: String,
41
+ justify: String
42
+ }
43
+ const Wrapper = styled('div', wrapperAttrs)`
44
+ display: inline-block;
45
+ position: relative;
46
+
47
+ &:hover .dropdown-content {
48
+ ${(props) => (props.openingMode == 'hover' ? 'display:block' : '')}
49
+ }
50
+ & .openDropdown {
51
+ ${(props) =>
52
+ props.openingMode == 'click' ? 'display:block !important' : ''}
53
+ }
54
+ `
55
+ const WrapperDropdown = styled('div', wrapperAttrs)`
56
+ margin-top: 0;
57
+ display: none;
58
+ position: absolute;
59
+ z-index: 1;
60
+ ${(props) => (props.justify == 'right' ? 'right:0;' : '')}
61
+ `
62
+ const DropdownWindow = styled('div', wrapperAttrs)`
63
+ width: ${(props) => props.width};
64
+ background-color: ${(props) =>
65
+ props.theme.colors[props.backgroundColor] || props.backgroundColor};
66
+ margin-top: ${(props) => props.gap};
67
+ border-radius: 4px;
68
+ position: relative;
69
+ min-width: 160px;
70
+ box-shadow: -1px 0px 5px rgba(0, 0, 0, 0.302);
71
+ z-index: 1;
72
+ `
73
+
74
+ const WrapperButton = styled('div', wrapperAttrs)`
75
+ display: inline-block;
76
+ `
77
+
78
+ export default {
79
+ name: 'DropdownComponent',
80
+ components: {
81
+ WrapperDropdown,
82
+ WrapperButton,
83
+ Wrapper,
84
+ DropdownWindow
85
+ },
86
+ props: {
87
+ width: {
88
+ required: false,
89
+ default: '300px'
92
90
  },
93
- data() {
94
- return {
95
- isOpenByClick:false
96
- }
91
+ gap: {
92
+ required: false,
93
+ default: '10px'
97
94
  },
98
- methods:{
99
- clickOutside(event) {
100
- if (this.openingMode!="click") return
101
- if (
102
- this.$refs.dropdown.$el == event.target ||
103
- this.$refs.dropdown.$el.contains(event.target)
104
- ) {
105
- return
106
- } else {
107
- this.isOpenByClick=false
108
- }
109
- },
95
+ position: {
96
+ required: false,
97
+ default: 'bottom'
110
98
  },
111
- mounted() {
112
- document.addEventListener('click', this.clickOutside)
99
+ justify: {
100
+ required: false,
101
+ default: 'left'
113
102
  },
114
- beforeDestroy() {
115
- document.removeEventListener('click', this.clickOutside)
103
+ openingMode: {
104
+ required: false,
105
+ default: 'hover'
116
106
  },
107
+ backgroundColor: {
108
+ required: false,
109
+ default: 'white'
110
+ }
111
+ },
112
+ data() {
113
+ return {
114
+ isOpenByClick: false
115
+ }
116
+ },
117
+ methods: {
118
+ clickOutside(event) {
119
+ if (this.openingMode != 'click') return
120
+ if (
121
+ this.$refs.dropdown &&
122
+ (this.$refs.dropdown.$el == event.target ||
123
+ this.$refs.dropdown.$el.contains(event.target))
124
+ ) {
125
+ return
126
+ } else {
127
+ this.isOpenByClick = false
128
+ }
129
+ }
130
+ },
131
+ mounted() {
132
+ document.addEventListener('click', this.clickOutside)
133
+ },
134
+ beforeDestroy() {
135
+ document.removeEventListener('click', this.clickOutside)
117
136
  }
118
- </script>
119
-
137
+ }
138
+ </script>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <component-wrapper>
3
- <text-overlay>
3
+ <text-overlay :marginTop="marginTop">
4
4
  <slot></slot>
5
5
  </text-overlay>
6
6
  </component-wrapper>
@@ -11,11 +11,11 @@
11
11
  //To use:
12
12
  // <error-message />
13
13
 
14
- import styled from 'vue-styled-components'
14
+ import styled from 'vue3-styled-components'
15
15
 
16
- const TextOverlay = styled.div`
16
+ const TextOverlay = styled('div', { marginTop: String })`
17
17
  position: absolute;
18
- top: calc(100% + 13px);
18
+ top: calc(100% + ${(props) => props.marginTop});
19
19
  background: ${(props) => props.theme.colors.red};
20
20
  padding: 10px;
21
21
  width: max-content;
@@ -50,7 +50,12 @@ export default {
50
50
  TextOverlay,
51
51
  ComponentWrapper
52
52
  },
53
- props: {},
53
+ props: {
54
+ marginTop: {
55
+ required: false,
56
+ default: '13px'
57
+ }
58
+ },
54
59
  methods: {},
55
60
  data() {
56
61
  return {}