@eturnity/eturnity_reusable_components 1.2.25-EPDM-5202.2 → 1.2.26

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 (218) hide show
  1. package/.prettierrc +6 -6
  2. package/.storybook/main.js +8 -8
  3. package/.storybook/preview.js +46 -46
  4. package/README.md +29 -29
  5. package/babel.config.js +5 -5
  6. package/package.json +63 -63
  7. package/public/index.html +17 -17
  8. package/src/App.vue +321 -321
  9. package/src/assets/icons/arrow_down.svg +3 -3
  10. package/src/assets/icons/arrow_up_red.svg +3 -3
  11. package/src/assets/icons/black_spinner.svg +35 -35
  12. package/src/assets/icons/delete_icon.svg +11 -11
  13. package/src/assets/icons/delete_icon_gray.svg +11 -11
  14. package/src/assets/icons/drag_icon.svg +8 -8
  15. package/src/assets/icons/external_icon.svg +6 -6
  16. package/src/assets/icons/language_icon.svg +6 -6
  17. package/src/assets/icons/pdf_icon.svg +6 -6
  18. package/src/assets/icons/plus_button.svg +4 -4
  19. package/src/assets/icons/search_icon_black.svg +3 -3
  20. package/src/assets/icons/subposition_icon.svg +3 -3
  21. package/src/assets/icons/subposition_marker.svg +3 -3
  22. package/src/assets/icons/warning_icon.svg +3 -3
  23. package/src/assets/svgIcons/2d_active.svg +7 -7
  24. package/src/assets/svgIcons/2d_inactive.svg +8 -8
  25. package/src/assets/svgIcons/3d_active.svg +7 -7
  26. package/src/assets/svgIcons/3d_inactive.svg +8 -8
  27. package/src/assets/svgIcons/accept.svg +5 -5
  28. package/src/assets/svgIcons/activate_panels_active.svg +22 -22
  29. package/src/assets/svgIcons/activate_panels_inactive.svg +20 -20
  30. package/src/assets/svgIcons/add_icon-1.svg +3 -3
  31. package/src/assets/svgIcons/add_icon.svg +4 -4
  32. package/src/assets/svgIcons/address_book.svg +3 -3
  33. package/src/assets/svgIcons/after_sale_as_a_service.svg +6 -6
  34. package/src/assets/svgIcons/all_good.svg +3 -3
  35. package/src/assets/svgIcons/angle_active.svg +5 -5
  36. package/src/assets/svgIcons/angle_inactive.svg +4 -4
  37. package/src/assets/svgIcons/area_active.svg +11 -11
  38. package/src/assets/svgIcons/area_inactive.svg +26 -26
  39. package/src/assets/svgIcons/arrow_down.svg +3 -3
  40. package/src/assets/svgIcons/arrow_left.svg +4 -4
  41. package/src/assets/svgIcons/arrow_right.svg +4 -4
  42. package/src/assets/svgIcons/arrow_up.svg +3 -3
  43. package/src/assets/svgIcons/attachment.svg +3 -3
  44. package/src/assets/svgIcons/battery.svg +3 -3
  45. package/src/assets/svgIcons/bell.svg +3 -3
  46. package/src/assets/svgIcons/bold.svg +3 -3
  47. package/src/assets/svgIcons/bom.svg +3 -3
  48. package/src/assets/svgIcons/bom_generation.svg +10 -10
  49. package/src/assets/svgIcons/bookmaker.svg +3 -3
  50. package/src/assets/svgIcons/bubble.svg +3 -3
  51. package/src/assets/svgIcons/bullet_list.svg +8 -8
  52. package/src/assets/svgIcons/calendar.svg +7 -7
  53. package/src/assets/svgIcons/calendar_icon.svg +7 -7
  54. package/src/assets/svgIcons/call.svg +3 -3
  55. package/src/assets/svgIcons/camera.svg +3 -3
  56. package/src/assets/svgIcons/car.svg +3 -3
  57. package/src/assets/svgIcons/cart.svg +3 -3
  58. package/src/assets/svgIcons/checkbox.svg +3 -3
  59. package/src/assets/svgIcons/clear_formatting.svg +7 -7
  60. package/src/assets/svgIcons/clickable_info.svg +4 -4
  61. package/src/assets/svgIcons/clip.svg +3 -3
  62. package/src/assets/svgIcons/clock.svg +4 -4
  63. package/src/assets/svgIcons/close_for_modals,_tool_tips.svg +4 -4
  64. package/src/assets/svgIcons/collapse.svg +4 -4
  65. package/src/assets/svgIcons/component_library.svg +7 -7
  66. package/src/assets/svgIcons/context_menu-1.svg +6 -6
  67. package/src/assets/svgIcons/context_menu-2.svg +5 -5
  68. package/src/assets/svgIcons/context_menu.svg +5 -5
  69. package/src/assets/svgIcons/context_menu_tabs.svg +5 -5
  70. package/src/assets/svgIcons/cross.svg +4 -4
  71. package/src/assets/svgIcons/current_variant.svg +4 -4
  72. package/src/assets/svgIcons/deadline.svg +4 -4
  73. package/src/assets/svgIcons/delete.svg +4 -4
  74. package/src/assets/svgIcons/delete_area_active.svg +16 -16
  75. package/src/assets/svgIcons/delete_area_inactive.svg +15 -15
  76. package/src/assets/svgIcons/direction_active-1.svg +12 -12
  77. package/src/assets/svgIcons/direction_active.svg +5 -5
  78. package/src/assets/svgIcons/direction_inactive.svg +4 -4
  79. package/src/assets/svgIcons/distances_active.svg +9 -9
  80. package/src/assets/svgIcons/distances_inactive.svg +8 -8
  81. package/src/assets/svgIcons/document.svg +3 -3
  82. package/src/assets/svgIcons/downarrow.svg +3 -3
  83. package/src/assets/svgIcons/download.svg +4 -4
  84. package/src/assets/svgIcons/duplicate-1.svg +8 -8
  85. package/src/assets/svgIcons/duplicate-2.svg +5 -5
  86. package/src/assets/svgIcons/duplicate.svg +4 -4
  87. package/src/assets/svgIcons/e-mobility_configurator.svg +6 -6
  88. package/src/assets/svgIcons/edit_button.svg +3 -3
  89. package/src/assets/svgIcons/email.svg +3 -3
  90. package/src/assets/svgIcons/ems-1.svg +3 -3
  91. package/src/assets/svgIcons/ems.svg +3 -3
  92. package/src/assets/svgIcons/end_of_the_list.svg +5 -5
  93. package/src/assets/svgIcons/erase.svg +4 -4
  94. package/src/assets/svgIcons/fav_icon.svg +4 -4
  95. package/src/assets/svgIcons/financing_for_pv-1.svg +5 -5
  96. package/src/assets/svgIcons/financing_for_pv-2.svg +3 -3
  97. package/src/assets/svgIcons/financing_for_pv.svg +6 -6
  98. package/src/assets/svgIcons/finish-1.svg +4 -4
  99. package/src/assets/svgIcons/finish.svg +3 -3
  100. package/src/assets/svgIcons/folder.svg +3 -3
  101. package/src/assets/svgIcons/heat_calc.svg +7 -7
  102. package/src/assets/svgIcons/house.svg +3 -3
  103. package/src/assets/svgIcons/info.svg +3 -3
  104. package/src/assets/svgIcons/initial_situation.svg +3 -3
  105. package/src/assets/svgIcons/intro-tour-1.svg +3 -3
  106. package/src/assets/svgIcons/intro-tour.svg +3 -3
  107. package/src/assets/svgIcons/inverter-1.svg +5 -5
  108. package/src/assets/svgIcons/inverter.svg +3 -3
  109. package/src/assets/svgIcons/italic.svg +3 -3
  110. package/src/assets/svgIcons/key.svg +3 -3
  111. package/src/assets/svgIcons/lead_marketplace.svg +6 -6
  112. package/src/assets/svgIcons/lead_provider.svg +4 -4
  113. package/src/assets/svgIcons/length_in_2d_active.svg +12 -12
  114. package/src/assets/svgIcons/length_in_2d_inctive.svg +13 -13
  115. package/src/assets/svgIcons/light_bulb.svg +3 -3
  116. package/src/assets/svgIcons/line_graph.svg +3 -3
  117. package/src/assets/svgIcons/local_subsidies.svg +18 -18
  118. package/src/assets/svgIcons/location.svg +3 -3
  119. package/src/assets/svgIcons/lock.svg +3 -3
  120. package/src/assets/svgIcons/loop.svg +3 -3
  121. package/src/assets/svgIcons/lunch.svg +4 -4
  122. package/src/assets/svgIcons/map_icon.svg +3 -3
  123. package/src/assets/svgIcons/meeting.svg +6 -6
  124. package/src/assets/svgIcons/move_copy.svg +4 -4
  125. package/src/assets/svgIcons/new_area_inactive.svg +11 -11
  126. package/src/assets/svgIcons/next.svg +4 -4
  127. package/src/assets/svgIcons/not_equal_to.svg +3 -3
  128. package/src/assets/svgIcons/numbered_list.svg +6 -6
  129. package/src/assets/svgIcons/obstacle_tool.svg +13 -13
  130. package/src/assets/svgIcons/pan_tool.svg +12 -12
  131. package/src/assets/svgIcons/panels_tool.svg +8 -8
  132. package/src/assets/svgIcons/pen_tool.svg +4 -4
  133. package/src/assets/svgIcons/picker_tool.svg +4 -4
  134. package/src/assets/svgIcons/picture.svg +3 -3
  135. package/src/assets/svgIcons/pin.svg +5 -5
  136. package/src/assets/svgIcons/presentation.svg +3 -3
  137. package/src/assets/svgIcons/previous.svg +4 -4
  138. package/src/assets/svgIcons/profile-1.svg +4 -4
  139. package/src/assets/svgIcons/profile.svg +4 -4
  140. package/src/assets/svgIcons/profitability.svg +3 -3
  141. package/src/assets/svgIcons/project_analysis.svg +4 -4
  142. package/src/assets/svgIcons/project_settings.svg +4 -4
  143. package/src/assets/svgIcons/pv.svg +3 -3
  144. package/src/assets/svgIcons/quotations.svg +6 -6
  145. package/src/assets/svgIcons/rotate_view.svg +5 -5
  146. package/src/assets/svgIcons/run_simulation.svg +3 -3
  147. package/src/assets/svgIcons/scaling_tool.svg +8 -8
  148. package/src/assets/svgIcons/search.svg +3 -3
  149. package/src/assets/svgIcons/security.svg +3 -3
  150. package/src/assets/svgIcons/settings.svg +3 -3
  151. package/src/assets/svgIcons/show_in_a_new_tab.svg +12 -12
  152. package/src/assets/svgIcons/smartphone.svg +4 -4
  153. package/src/assets/svgIcons/solar_calc.svg +13 -13
  154. package/src/assets/svgIcons/sorting.svg +4 -4
  155. package/src/assets/svgIcons/start_of_the_list.svg +5 -5
  156. package/src/assets/svgIcons/strikethrough.svg +4 -4
  157. package/src/assets/svgIcons/subsidies-1.svg +5 -5
  158. package/src/assets/svgIcons/subsidies-2.svg +3 -3
  159. package/src/assets/svgIcons/subsidies.svg +3 -3
  160. package/src/assets/svgIcons/subtract_icon.svg +3 -3
  161. package/src/assets/svgIcons/suitcase.svg +3 -3
  162. package/src/assets/svgIcons/template_icon_not_clickable.svg +6 -6
  163. package/src/assets/svgIcons/transfer.svg +4 -4
  164. package/src/assets/svgIcons/truck.svg +3 -3
  165. package/src/assets/svgIcons/underlined.svg +3 -3
  166. package/src/assets/svgIcons/uparrow.svg +3 -3
  167. package/src/assets/svgIcons/upload_avatar-1.svg +12 -12
  168. package/src/assets/svgIcons/upload_avatar.svg +5 -5
  169. package/src/assets/svgIcons/upload_image.svg +8 -8
  170. package/src/assets/svgIcons/virtual_storage.svg +4 -4
  171. package/src/assets/svgIcons/warning.svg +4 -4
  172. package/src/assets/svgIcons/way.svg +5 -5
  173. package/src/assets/svgIcons/wifi.svg +3 -3
  174. package/src/assets/svgIcons/winter.svg +3 -3
  175. package/src/assets/theme.js +34 -34
  176. package/src/components/addNewButton/AddNewButton.stories.js +24 -24
  177. package/src/components/addNewButton/index.vue +58 -58
  178. package/src/components/buttons/closeButton/CloseButton.stories.js +29 -29
  179. package/src/components/buttons/closeButton/index.vue +61 -61
  180. package/src/components/buttons/externalButton/index.vue +101 -101
  181. package/src/components/buttons/mainButton/index.vue +82 -82
  182. package/src/components/deleteIcon/DeleteIcon.stories.js +29 -29
  183. package/src/components/deleteIcon/index.vue +55 -55
  184. package/src/components/icon/Icons.stories.js +41 -41
  185. package/src/components/icon/iconCollection.vue +68 -68
  186. package/src/components/icon/index.vue +83 -83
  187. package/src/components/infoText/index.vue +151 -151
  188. package/src/components/inputs/checkbox/Checkbox.stories.js +57 -57
  189. package/src/components/inputs/checkbox/index.vue +182 -182
  190. package/src/components/inputs/inputNumber/InputNumber.stories.js +150 -150
  191. package/src/components/inputs/inputNumber/index.vue +390 -390
  192. package/src/components/inputs/inputNumberQuestion/index.vue +215 -215
  193. package/src/components/inputs/inputText/InputText.stories.js +75 -75
  194. package/src/components/inputs/inputText/index.vue +253 -253
  195. package/src/components/inputs/radioButton/RadioButton.stories.js +58 -58
  196. package/src/components/inputs/radioButton/index.vue +246 -246
  197. package/src/components/inputs/searchInput/SearchInput.stories.js +40 -40
  198. package/src/components/inputs/searchInput/index.vue +97 -97
  199. package/src/components/inputs/slider/index.vue +126 -126
  200. package/src/components/inputs/textAreaInput/TextAreaInput.stories.js +135 -135
  201. package/src/components/inputs/textAreaInput/index.vue +189 -189
  202. package/src/components/inputs/toggle/Toggle.stories.js +77 -77
  203. package/src/components/inputs/toggle/index.vue +288 -288
  204. package/src/components/modals/modal/index.vue +153 -153
  205. package/src/components/modals/modal/modal.stories.js +31 -31
  206. package/src/components/pageSubtitle/index.vue +68 -68
  207. package/src/components/pageTitle/index.vue +45 -45
  208. package/src/components/progressBar/index.vue +125 -125
  209. package/src/components/projectMarker/index.vue +285 -285
  210. package/src/components/spinner/index.vue +71 -71
  211. package/src/components/tableDropdown/index.vue +644 -644
  212. package/src/components/tables/mainTable/exampleNested.vue +328 -328
  213. package/src/components/tables/mainTable/index.vue +379 -379
  214. package/src/components/tables/viewTable/index.vue +195 -195
  215. package/src/components/threeDots/index.vue +333 -333
  216. package/src/helpers/numberConverter.js +98 -98
  217. package/src/helpers/translateLang.js +80 -80
  218. package/src/main.js +13 -13
@@ -1,29 +1,29 @@
1
- import DeleteIcon from "./index.vue"
2
-
3
- export default {
4
- title: "DeleteIcon",
5
- component: DeleteIcon,
6
- // argTypes: {},
7
- }
8
-
9
- const Template = (args, { argTypes }) => ({
10
- // Components used in your story `template` are defined in the `components` object
11
- components: { DeleteIcon },
12
- // The story's `args` need to be mapped into the template through the `setup()` method
13
- props: Object.keys(argTypes),
14
- template: '<delete-icon v-bind="$props" />',
15
-
16
- // import DeleteIcon from "@eturnity/eturnity_reusable_components/src/components/deleteIcon"
17
- // To use:
18
- // <delete-icon color="gray" @click.native="onDeleteItem(item)" :isDisabled="true" />
19
- })
20
-
21
- export const Default = Template.bind({})
22
- Default.args = {
23
- isDisabled: false,
24
- }
25
-
26
- export const Disabled = Template.bind({})
27
- Disabled.args = {
28
- isDisabled: true,
29
- }
1
+ import DeleteIcon from "./index.vue"
2
+
3
+ export default {
4
+ title: "DeleteIcon",
5
+ component: DeleteIcon,
6
+ // argTypes: {},
7
+ }
8
+
9
+ const Template = (args, { argTypes }) => ({
10
+ // Components used in your story `template` are defined in the `components` object
11
+ components: { DeleteIcon },
12
+ // The story's `args` need to be mapped into the template through the `setup()` method
13
+ props: Object.keys(argTypes),
14
+ template: '<delete-icon v-bind="$props" />',
15
+
16
+ // import DeleteIcon from "@eturnity/eturnity_reusable_components/src/components/deleteIcon"
17
+ // To use:
18
+ // <delete-icon color="gray" @click.native="onDeleteItem(item)" :isDisabled="true" />
19
+ })
20
+
21
+ export const Default = Template.bind({})
22
+ Default.args = {
23
+ isDisabled: false,
24
+ }
25
+
26
+ export const Disabled = Template.bind({})
27
+ Disabled.args = {
28
+ isDisabled: true,
29
+ }
@@ -1,55 +1,55 @@
1
- <template>
2
- <wrapper
3
- @mouseover="isHovered = true"
4
- @mouseleave="isHovered = false"
5
- :isDisabled="isDisabled"
6
- >
7
- <icon-image
8
- v-if="isHovered && !isDisabled"
9
- :src="require('../../assets/icons/delete_icon.svg')"
10
- />
11
- <icon-image
12
- v-else
13
- :src="require('../../assets/icons/delete_icon_gray.svg')"
14
- />
15
- </wrapper>
16
- </template>
17
-
18
- <script>
19
- // To use:
20
- // <delete-icon @click.native="onDeleteItem(item)" :isDisabled="true" />
21
- import styled from "vue-styled-components"
22
-
23
- const wrapperAttrs = { isDisabled: Boolean }
24
- const Wrapper = styled("div", wrapperAttrs)`
25
- width: 30px;
26
- height: 30px;
27
- cursor: ${(props) => (props.isDisabled ? "not-allowed" : "pointer")};
28
- `
29
-
30
- const IconImage = styled.img`
31
- &:hover {
32
- background-color: ${(props) => props.theme.colors.grey5};
33
- border-radius: 4px;
34
- }
35
- `
36
-
37
- export default {
38
- name: "delete-icon",
39
- components: {
40
- Wrapper,
41
- IconImage,
42
- },
43
- props: {
44
- isDisabled: {
45
- required: false,
46
- default: false,
47
- },
48
- },
49
- data() {
50
- return {
51
- isHovered: false,
52
- }
53
- },
54
- }
55
- </script>
1
+ <template>
2
+ <wrapper
3
+ @mouseover="isHovered = true"
4
+ @mouseleave="isHovered = false"
5
+ :isDisabled="isDisabled"
6
+ >
7
+ <icon-image
8
+ v-if="isHovered && !isDisabled"
9
+ :src="require('../../assets/icons/delete_icon.svg')"
10
+ />
11
+ <icon-image
12
+ v-else
13
+ :src="require('../../assets/icons/delete_icon_gray.svg')"
14
+ />
15
+ </wrapper>
16
+ </template>
17
+
18
+ <script>
19
+ // To use:
20
+ // <delete-icon @click.native="onDeleteItem(item)" :isDisabled="true" />
21
+ import styled from "vue-styled-components"
22
+
23
+ const wrapperAttrs = { isDisabled: Boolean }
24
+ const Wrapper = styled("div", wrapperAttrs)`
25
+ width: 30px;
26
+ height: 30px;
27
+ cursor: ${(props) => (props.isDisabled ? "not-allowed" : "pointer")};
28
+ `
29
+
30
+ const IconImage = styled.img`
31
+ &:hover {
32
+ background-color: ${(props) => props.theme.colors.grey5};
33
+ border-radius: 4px;
34
+ }
35
+ `
36
+
37
+ export default {
38
+ name: "delete-icon",
39
+ components: {
40
+ Wrapper,
41
+ IconImage,
42
+ },
43
+ props: {
44
+ isDisabled: {
45
+ required: false,
46
+ default: false,
47
+ },
48
+ },
49
+ data() {
50
+ return {
51
+ isHovered: false,
52
+ }
53
+ },
54
+ }
55
+ </script>
@@ -1,41 +1,41 @@
1
- import iconCollection from './iconCollection.vue'
2
-
3
- export default {
4
- title: 'icon',
5
- component: iconCollection
6
- // argTypes: {},
7
- }
8
-
9
- const Template = (args, { argTypes }) => ({
10
- // Components used in your story `template` are defined in the `components` object
11
- components: { iconCollection },
12
- // The story's `args` need to be mapped into the template through the `setup()` method
13
- props: Object.keys(argTypes),
14
- template: '<iconCollection v-bind="$props" />'
15
-
16
- // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
17
- // How to use:
18
- //<icon
19
- // name="House" //required. a svg file named [name].svg should be present in /assets/svgIcons
20
- // color="red"
21
- // hoveredColor="blue"
22
- // size="60px" by default, this is 30px
23
- // />
24
- })
25
-
26
- export const Default = Template.bind({})
27
- Default.args = {
28
- size: '30px'
29
- }
30
-
31
- export const withColor = Template.bind({})
32
- withColor.args = {
33
- size: '30px',
34
- color: 'red',
35
- hoveredColor: 'crimson'
36
- }
37
-
38
- export const large = Template.bind({})
39
- large.args = {
40
- size: '60px'
41
- }
1
+ import iconCollection from './iconCollection.vue'
2
+
3
+ export default {
4
+ title: 'icon',
5
+ component: iconCollection
6
+ // argTypes: {},
7
+ }
8
+
9
+ const Template = (args, { argTypes }) => ({
10
+ // Components used in your story `template` are defined in the `components` object
11
+ components: { iconCollection },
12
+ // The story's `args` need to be mapped into the template through the `setup()` method
13
+ props: Object.keys(argTypes),
14
+ template: '<iconCollection v-bind="$props" />'
15
+
16
+ // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
17
+ // How to use:
18
+ //<icon
19
+ // name="House" //required. a svg file named [name].svg should be present in /assets/svgIcons
20
+ // color="red"
21
+ // hoveredColor="blue"
22
+ // size="60px" by default, this is 30px
23
+ // />
24
+ })
25
+
26
+ export const Default = Template.bind({})
27
+ Default.args = {
28
+ size: '30px'
29
+ }
30
+
31
+ export const withColor = Template.bind({})
32
+ withColor.args = {
33
+ size: '30px',
34
+ color: 'red',
35
+ hoveredColor: 'crimson'
36
+ }
37
+
38
+ export const large = Template.bind({})
39
+ large.args = {
40
+ size: '60px'
41
+ }
@@ -1,68 +1,68 @@
1
- <template>
2
- <wrapper>
3
- <icon-wrapper v-for="iconItem in iconList" :key="iconItem.name">
4
- <div>
5
- <icon
6
- :name="iconItem.name"
7
- :size="size"
8
- :hoveredColor="hoveredColor"
9
- :color="color"
10
- />
11
- </div>
12
- <h3>{{ iconItem.name }}</h3>
13
- </icon-wrapper>
14
- </wrapper>
15
- </template>
16
-
17
- <script>
18
- import icon from './index.vue'
19
- import styled from 'vue-styled-components'
20
-
21
- const Wrapper = styled.div`
22
- display: block;
23
- text-align:center;
24
- justify-items:center
25
- width:100%;
26
- background-color:#ccc;
27
- `
28
- const IconWrapper = styled.div`
29
- display:inline-flex
30
- flex-direction: column;
31
- background-color: white;
32
- border-radius: 6px;
33
- padding: 10px;
34
- width: 220px;
35
- text-align: center;
36
- margin: 10px;
37
- `
38
- export default {
39
- name: 'collection',
40
- components: { icon, IconWrapper, Wrapper },
41
- props: {
42
- size: { required: false },
43
- color: { required: false },
44
- hoveredColor: { required: false }
45
- },
46
- data() {
47
- return {
48
- iconList: []
49
- }
50
- },
51
-
52
- mounted() {
53
- this.importAll(require.context('../../assets/svgIcons/', true, /\.svg$/))
54
- },
55
-
56
- methods: {
57
- importAll(r) {
58
- r.keys().forEach((key) =>
59
- this.iconList.push({
60
- pathLong: r(key),
61
- pathShort: key,
62
- name: key.replace('.svg', '').replace('./', '')
63
- })
64
- )
65
- }
66
- }
67
- }
68
- </script>
1
+ <template>
2
+ <wrapper>
3
+ <icon-wrapper v-for="iconItem in iconList" :key="iconItem.name">
4
+ <div>
5
+ <icon
6
+ :name="iconItem.name"
7
+ :size="size"
8
+ :hoveredColor="hoveredColor"
9
+ :color="color"
10
+ />
11
+ </div>
12
+ <h3>{{ iconItem.name }}</h3>
13
+ </icon-wrapper>
14
+ </wrapper>
15
+ </template>
16
+
17
+ <script>
18
+ import icon from './index.vue'
19
+ import styled from 'vue-styled-components'
20
+
21
+ const Wrapper = styled.div`
22
+ display: block;
23
+ text-align:center;
24
+ justify-items:center
25
+ width:100%;
26
+ background-color:#ccc;
27
+ `
28
+ const IconWrapper = styled.div`
29
+ display:inline-flex
30
+ flex-direction: column;
31
+ background-color: white;
32
+ border-radius: 6px;
33
+ padding: 10px;
34
+ width: 220px;
35
+ text-align: center;
36
+ margin: 10px;
37
+ `
38
+ export default {
39
+ name: 'collection',
40
+ components: { icon, IconWrapper, Wrapper },
41
+ props: {
42
+ size: { required: false },
43
+ color: { required: false },
44
+ hoveredColor: { required: false }
45
+ },
46
+ data() {
47
+ return {
48
+ iconList: []
49
+ }
50
+ },
51
+
52
+ mounted() {
53
+ this.importAll(require.context('../../assets/svgIcons/', true, /\.svg$/))
54
+ },
55
+
56
+ methods: {
57
+ importAll(r) {
58
+ r.keys().forEach((key) =>
59
+ this.iconList.push({
60
+ pathLong: r(key),
61
+ pathShort: key,
62
+ name: key.replace('.svg', '').replace('./', '')
63
+ })
64
+ )
65
+ }
66
+ }
67
+ }
68
+ </script>
@@ -1,83 +1,83 @@
1
- <template>
2
- <wrapper :isDisabled="isDisabled" :size="size" :cursor="cursor">
3
- <icon-image
4
- :size="size"
5
- :color="color"
6
- :hoveredColor="hoveredColor"
7
- v-html="
8
- require(`!html-loader!./../../assets/svgIcons/${name.toLowerCase()}.svg`)
9
- "
10
- ></icon-image>
11
- </wrapper>
12
- </template>
13
-
14
- <script>
15
- // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
16
- // How to use:
17
- //<icon
18
- // name="House" //required. a svg file named [name].svg should be present in /assets/svgIcons
19
- // color="red"
20
- // hoveredColor="blue"
21
- // size="60px" by default, this is 30px
22
- // cursor="default"
23
- // />
24
-
25
- import styled from 'vue-styled-components'
26
-
27
- const wrapperAttrs = { isDisabled: Boolean, size: String, cursor: String }
28
- const Wrapper = styled('div', wrapperAttrs)`
29
- display: inline-block;
30
- width: ${(props) => props.size};
31
- height: ${(props) => props.size};
32
- cursor: ${(props) => (props.isDisabled ? 'not-allowed' : props.cursor)};
33
- line-height: 0;
34
- `
35
- const IconImageProps = { color: String, hoveredColor: String, size: String }
36
- const IconImage = styled('div', IconImageProps)`
37
- svg {
38
- width: ${(props) => props.size};
39
- height: ${(props) => props.size};
40
- }
41
- svg > path {
42
- ${(props) =>
43
- props.color && `fill: ${props.theme.colors[props.color] || props.color};`}
44
- }
45
- &:hover > svg > path {
46
- ${(props) => props.hoveredColor && `fill: ${props.hoveredColor};`}
47
- }
48
- `
49
-
50
- export default {
51
- name: 'icon',
52
- components: {
53
- Wrapper,
54
- IconImage
55
- },
56
- props: {
57
- isDisabled: {
58
- required: false,
59
- default: false
60
- },
61
- name: {
62
- required: true
63
- },
64
- color: {
65
- required: false
66
- },
67
- hoveredColor: {
68
- required: false
69
- },
70
- size: {
71
- required: false,
72
- default: '30px'
73
- },
74
- cursor: {
75
- required: false,
76
- default: 'pointer'
77
- }
78
- },
79
- data() {
80
- return {}
81
- }
82
- }
83
- </script>
1
+ <template>
2
+ <wrapper :isDisabled="isDisabled" :size="size" :cursor="cursor">
3
+ <icon-image
4
+ :size="size"
5
+ :color="color"
6
+ :hoveredColor="hoveredColor"
7
+ v-html="
8
+ require(`!html-loader!./../../assets/svgIcons/${name.toLowerCase()}.svg`)
9
+ "
10
+ ></icon-image>
11
+ </wrapper>
12
+ </template>
13
+
14
+ <script>
15
+ // import Icon from "@eturnity/eturnity_reusable_components/src/components/icon"
16
+ // How to use:
17
+ //<icon
18
+ // name="House" //required. a svg file named [name].svg should be present in /assets/svgIcons
19
+ // color="red"
20
+ // hoveredColor="blue"
21
+ // size="60px" by default, this is 30px
22
+ // cursor="default"
23
+ // />
24
+
25
+ import styled from 'vue-styled-components'
26
+
27
+ const wrapperAttrs = { isDisabled: Boolean, size: String, cursor: String }
28
+ const Wrapper = styled('div', wrapperAttrs)`
29
+ display: inline-block;
30
+ width: ${(props) => props.size};
31
+ height: ${(props) => props.size};
32
+ cursor: ${(props) => (props.isDisabled ? 'not-allowed' : props.cursor)};
33
+ line-height: 0;
34
+ `
35
+ const IconImageProps = { color: String, hoveredColor: String, size: String }
36
+ const IconImage = styled('div', IconImageProps)`
37
+ svg {
38
+ width: ${(props) => props.size};
39
+ height: ${(props) => props.size};
40
+ }
41
+ svg > path {
42
+ ${(props) =>
43
+ props.color && `fill: ${props.theme.colors[props.color] || props.color};`}
44
+ }
45
+ &:hover > svg > path {
46
+ ${(props) => props.hoveredColor && `fill: ${props.hoveredColor};`}
47
+ }
48
+ `
49
+
50
+ export default {
51
+ name: 'icon',
52
+ components: {
53
+ Wrapper,
54
+ IconImage
55
+ },
56
+ props: {
57
+ isDisabled: {
58
+ required: false,
59
+ default: false
60
+ },
61
+ name: {
62
+ required: true
63
+ },
64
+ color: {
65
+ required: false
66
+ },
67
+ hoveredColor: {
68
+ required: false
69
+ },
70
+ size: {
71
+ required: false,
72
+ default: '30px'
73
+ },
74
+ cursor: {
75
+ required: false,
76
+ default: 'pointer'
77
+ }
78
+ },
79
+ data() {
80
+ return {}
81
+ }
82
+ }
83
+ </script>