@iamproperty/components 2.7.9 → 2.9.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 (138) hide show
  1. package/README.md +136 -136
  2. package/assets/css/core.min.css +1 -1
  3. package/assets/css/core.min.css.map +1 -1
  4. package/assets/css/email.min.css +1 -1
  5. package/assets/css/email.min.css.map +1 -1
  6. package/assets/css/error.min.css +1 -1
  7. package/assets/css/error.min.css.map +1 -1
  8. package/assets/css/style.min.css +1 -1
  9. package/assets/css/style.min.css.map +1 -1
  10. package/assets/js/modules/accordion.js +32 -36
  11. package/assets/js/modules/alert.js +56 -56
  12. package/assets/js/modules/carousel.js +101 -101
  13. package/assets/js/modules/chart.js +216 -216
  14. package/assets/js/modules/drawer.js +15 -15
  15. package/assets/js/modules/form.js +158 -158
  16. package/assets/js/modules/helpers.js +119 -119
  17. package/assets/js/modules/modal.js +89 -89
  18. package/assets/js/modules/nav.js +26 -26
  19. package/assets/js/modules/table.js +584 -584
  20. package/assets/js/modules/testimonial.js +82 -82
  21. package/assets/js/modules/youtubevideo.js +145 -145
  22. package/assets/js/scripts.bundle.js +163 -94
  23. package/assets/js/scripts.bundle.js.map +1 -1
  24. package/assets/js/scripts.bundle.min.js +2 -2
  25. package/assets/js/scripts.bundle.min.js.map +1 -1
  26. package/assets/sass/_components.scss +14 -14
  27. package/assets/sass/_corefiles.scss +40 -40
  28. package/assets/sass/_fonts.scss +16 -16
  29. package/assets/sass/_forms.scss +9 -9
  30. package/assets/sass/_func.scss +12 -10
  31. package/assets/sass/_functions/functions.scss +141 -141
  32. package/assets/sass/_functions/mixins.scss +170 -170
  33. package/assets/sass/_functions/utilities.scss +250 -250
  34. package/assets/sass/_functions/variables.scss +466 -462
  35. package/assets/sass/_print.scss +61 -61
  36. package/assets/sass/components/accordion.scss +197 -197
  37. package/assets/sass/components/alert.scss +98 -98
  38. package/assets/sass/components/cardDeck.scss +107 -107
  39. package/assets/sass/components/carousel.scss +234 -234
  40. package/assets/sass/components/charts.scss +569 -569
  41. package/assets/sass/components/drawer.scss +46 -46
  42. package/assets/sass/components/header.scss +63 -63
  43. package/assets/sass/components/modal.scss +136 -136
  44. package/assets/sass/components/nav.scss +916 -820
  45. package/assets/sass/components/property-searchbar.scss +143 -143
  46. package/assets/sass/components/snapshot.scss +70 -70
  47. package/assets/sass/components/stepper.scss +164 -164
  48. package/assets/sass/components/tabs.scss +87 -87
  49. package/assets/sass/components/testimonial.scss +132 -132
  50. package/assets/sass/components/timeline.scss +95 -95
  51. package/assets/sass/core.scss +6 -6
  52. package/assets/sass/elements/buttons.scss +209 -209
  53. package/assets/sass/elements/card.scss +177 -177
  54. package/assets/sass/elements/container.scss +225 -225
  55. package/assets/sass/elements/forms.scss +194 -194
  56. package/assets/sass/elements/links.scss +96 -96
  57. package/assets/sass/elements/lists.scss +112 -112
  58. package/assets/sass/elements/panel.scss +161 -161
  59. package/assets/sass/elements/tables.scss +290 -290
  60. package/assets/sass/elements/tooltips.scss +84 -84
  61. package/assets/sass/elements/type.scss +136 -136
  62. package/assets/sass/email.scss +65 -65
  63. package/assets/sass/error.scss +4 -4
  64. package/assets/sass/foundations/brand.scss +72 -72
  65. package/assets/sass/foundations/circles.scss +74 -74
  66. package/assets/sass/foundations/icons.scss +72 -72
  67. package/assets/sass/foundations/media.scss +50 -50
  68. package/assets/sass/foundations/reboot.scss +130 -130
  69. package/assets/sass/foundations/root.scss +106 -104
  70. package/assets/sass/main.scss +7 -7
  71. package/assets/svg/icons.svg +598 -588
  72. package/assets/svg/logo.svg +42 -42
  73. package/assets/{js/main.js → ts/main.ts} +68 -78
  74. package/assets/ts/modules/accordion.ts +43 -0
  75. package/dist/components.common.js +113 -89
  76. package/dist/components.common.js.map +1 -1
  77. package/dist/components.css +1 -1
  78. package/dist/components.css.map +1 -1
  79. package/dist/components.umd.js +147 -123
  80. package/dist/components.umd.js.map +1 -1
  81. package/dist/components.umd.min.js +1 -1
  82. package/dist/components.umd.min.js.map +1 -1
  83. package/package.json +108 -103
  84. package/src/components/Accordion/Accordion.vue +22 -22
  85. package/src/components/Accordion/AccordionItem.vue +52 -52
  86. package/src/components/Accordion/README.md +34 -34
  87. package/src/components/Alert/Alert.vue +39 -39
  88. package/src/components/Alert/README.md +28 -28
  89. package/src/components/Banner/Banner.vue +38 -38
  90. package/src/components/Banner/README.md +23 -23
  91. package/src/components/CardDeck/CardDeck.vue +77 -77
  92. package/src/components/CardDeck/README.md +24 -24
  93. package/src/components/Carousel/Carousel.vue +85 -85
  94. package/src/components/Carousel/README.md +19 -19
  95. package/src/components/Chart/Chart.vue +88 -88
  96. package/src/components/Chart/README.md +17 -17
  97. package/src/components/Drawer/Drawer.vue +53 -53
  98. package/src/components/Drawer/README.md +22 -22
  99. package/src/components/Header/Header.vue +38 -38
  100. package/src/components/Header/README.md +27 -27
  101. package/src/components/Modal/Modal.vue +43 -43
  102. package/src/components/Modal/README.md +19 -19
  103. package/src/components/Nav/Nav.vue +212 -189
  104. package/src/components/Nav/README.md +22 -22
  105. package/src/components/NoteFeed/NoteFeed.vue +79 -79
  106. package/src/components/NoteFeed/README.md +16 -16
  107. package/src/components/PropertySearchbar/PropertySearchbar.vue +204 -204
  108. package/src/components/PropertySearchbar/README.md +25 -25
  109. package/src/components/Snapshot/README.md +20 -20
  110. package/src/components/Snapshot/Snapshot.vue +32 -32
  111. package/src/components/Stepper/README.md +32 -32
  112. package/src/components/Stepper/Step.vue +28 -28
  113. package/src/components/Stepper/Stepper.vue +33 -33
  114. package/src/components/Tabs/README.md +27 -27
  115. package/src/components/Tabs/Tab.vue +26 -26
  116. package/src/components/Tabs/Tabs.vue +75 -75
  117. package/src/components/Testimonial/README.md +25 -25
  118. package/src/components/Testimonial/Testimonial.vue +60 -60
  119. package/src/components/Timeline/README.md +18 -18
  120. package/src/components/Timeline/Timeline.vue +24 -24
  121. package/src/elements/Card/Card.vue +113 -113
  122. package/src/elements/Card/README.md +24 -24
  123. package/src/elements/FileUploads/FileUploads.vue +48 -48
  124. package/src/elements/FileUploads/README.md +24 -24
  125. package/src/elements/Input/Input.vue +268 -268
  126. package/src/elements/Input/README.md +19 -19
  127. package/src/elements/Table/README.md +62 -62
  128. package/src/elements/Table/Table.vue +126 -129
  129. package/src/foundations/Icon/Icon.vue +24 -24
  130. package/src/foundations/Icon/README.md +11 -11
  131. package/src/foundations/Logo/Logo.vue +39 -39
  132. package/src/foundations/Logo/README.md +20 -20
  133. package/src/foundations/YoutubeVideo/README.md +11 -11
  134. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +24 -24
  135. package/src/helpers/strings.js +12 -12
  136. package/src/index.js +27 -27
  137. package/assets/.DS_Store +0 -0
  138. package/src/.DS_Store +0 -0
@@ -1,217 +1,217 @@
1
- import { ucfirst, unsnake } from './helpers'
2
-
3
- function chart(chartElement,min,max,type) {
4
-
5
- let chartKey = chartElement.querySelector('.chart__key');
6
- let chartYaxis = chartElement.querySelector('.chart__yaxis');
7
- let chartGuidelines = chartElement.querySelector('.chart__guidelines');
8
-
9
- // Chart key
10
- if(chartKey && chartKey.childElementCount == 0){
11
- createChartKey(chartElement);
12
- }
13
-
14
- // Y Axis and Guidelines
15
- if(chartYaxis && chartYaxis.childElementCount == 0){
16
- createChartYaxis(chartElement);
17
- }
18
- if(chartGuidelines && chartGuidelines.childElementCount == 0){
19
- createChartGuidelines(chartElement);
20
- }
21
-
22
- // Create lines for line graph
23
- if(type == "line")
24
- createLines(chartElement,min,max);
25
-
26
- // Create pies
27
- if(type == "pie")
28
- createPies(chartElement);
29
-
30
- // Add css vars to cells
31
- Array.from(chartElement.querySelectorAll('tbody tr')).forEach((tr, index) => {
32
-
33
- let group = tr.querySelector('td:first-child').innerHTML;
34
-
35
- Array.from(tr.querySelectorAll('td[data-numeric]:not([data-numeric="0"]):not(:first-child)')).forEach((td, index) => {
36
-
37
- const value = Number.parseFloat(td.getAttribute('data-numeric'));
38
- let percent = ((value - min)/(max)) * 100;
39
- const content = td.innerHTML;
40
- const label = td.getAttribute('data-label');
41
- let bottom = 0;
42
-
43
- // If the value is negative the position below the 0 line
44
- if(min < 0){
45
- bottom = Math.abs((min)/(max)*100);
46
- if(value < 0){
47
- bottom = bottom - percent;
48
- }
49
- }
50
- td.setAttribute("style",`--bottom:${bottom}%;--percent:${percent}%;`);
51
-
52
- td.innerHTML = `<span data-group="${group}" data-label="${label}">${content}</span>`;
53
- });
54
- });
55
- }
56
-
57
- export const createChartKey = function(chartElement){
58
-
59
- let chartKey = chartElement.querySelector('.chart__key');
60
-
61
- Array.from(chartElement.querySelectorAll('thead th')).forEach((arrayElement, index) => {
62
-
63
- chartKey.innerHTML += `<div class="key">${arrayElement.innerText}</div>`;
64
- });
65
- }
66
-
67
- export const createChartGuidelines = function(chartElement){
68
-
69
- let chartGuidelines = chartElement.querySelector('.chart__guidelines');
70
- const max = chartElement.getAttribute('data-max');
71
- const min = chartElement.getAttribute('data-min');
72
-
73
- chartGuidelines.innerHTML += `<div style="--value: 0;--percent:0%;" class="axis__point"><span>0</span></div>`;
74
- chartGuidelines.innerHTML += `<div style="--value: ${max};--percent:100%;" class="axis__point"><span>${max}</span></div>`;
75
- }
76
-
77
- export const createChartYaxis = function(chartElement){
78
-
79
- let chartYaxis = chartElement.querySelector('.chart__yaxis');
80
- const max = chartElement.getAttribute('data-max');
81
- const min = chartElement.getAttribute('data-min');
82
-
83
- chartYaxis.innerHTML += `<div style="--value: 0;--percent:0%;" class="axis__point"><span>0</span></div>`;
84
- chartYaxis.innerHTML += `<div style="--value: ${max};--percent:100%;" class="axis__point"><span>${max}</span></div>`;
85
- }
86
-
87
- function getCoordinatesForPercent(percent) {
88
- const x = Math.cos(2 * Math.PI * percent);
89
- const y = Math.sin(2 * Math.PI * percent);
90
- return [x*100, y*100];
91
- }
92
-
93
- export const createPies = function(chartElement){
94
-
95
- let returnString = '';
96
- let pieWrapper = chartElement.querySelector('.pies');
97
-
98
- Array.from(chartElement.querySelectorAll('tbody tr')).forEach((item, index) => {
99
-
100
- let paths = '';
101
- let tooltips = '';
102
-
103
- let cumulativePercent = 0;
104
-
105
- let total = 0;
106
-
107
- let titleKey = item.querySelectorAll('td')[0]
108
- let title = titleKey.innerHTML;
109
-
110
- Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
111
-
112
- if(subindex != 0){
113
-
114
- let value = cell.getAttribute('data-numeric');
115
-
116
- value = value.replace('£','');
117
- value = value.replace('%','');
118
- value = Number.parseInt(value);
119
-
120
- total += value;
121
- }
122
- });
123
-
124
- Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
125
-
126
- if(subindex != 0){
127
-
128
- let value = cell.getAttribute('data-numeric');
129
-
130
- value = value.replace('£','');
131
- value = value.replace('%','');
132
- value = Number.parseInt(value);
133
-
134
- let percent = value/total;
135
-
136
- //lines[subindex-1] += `${command} ${spacer * index} ${100-percent} `;
137
- const [startX, startY] = getCoordinatesForPercent(cumulativePercent);
138
-
139
- // each slice starts where the last slice ended, so keep a cumulative percent
140
- cumulativePercent += percent;
141
-
142
- const [endX, endY] = getCoordinatesForPercent(cumulativePercent);
143
-
144
- // if the slice is more than 50%, take the large arc (the long way around)
145
- const largeArcFlag = percent > .5 ? 1 : 0;
146
-
147
- // create an array and join it just for code readability
148
- const pathData = [
149
- `M ${startX} ${startY}`, // Move
150
- `A 100 100 0 ${largeArcFlag} 1 ${endX} ${endY}`, // Arc
151
- `L 0 0`, // Line
152
- ].join(' ');
153
-
154
- paths += `<path d="${pathData}"></path>`;
155
- tooltips += `<foreignObject x="-70" y="-70" width="140" height="140" style="transform: rotate(90deg)"><div><span class="h5 mb-0"><span class="total d-block">${ucfirst(unsnake(title))}</span> ${ucfirst(unsnake(cell.getAttribute('data-label')))}<br/> ${cell.innerHTML}</span></div></foreignObject>`;
156
- }
157
- });
158
-
159
- returnString += `<div class="pie"><svg viewBox="-105 -105 210 210" style="transform: rotate(-90deg)" preserveAspectRatio="none">${paths}<foreignObject x="-70" y="-70" width="140" height="140" style="transform: rotate(90deg)"><div><span class="h5 mb-0">${title}</span></div></foreignObject>${tooltips}</svg></div>`
160
- });
161
-
162
- pieWrapper.innerHTML = returnString;
163
- }
164
-
165
- export const createLines = function(chartElement,min,max){
166
-
167
- let returnString = '';
168
- let linesWrapper = chartElement.querySelector('.lines');
169
-
170
- let items = Array.from(chartElement.querySelectorAll('tbody tr'));
171
-
172
- let lines = Array();
173
- let spacer = 200/(items.length - 1);
174
-
175
- // Creates the lines array from the fields array
176
- Array.from(chartElement.querySelectorAll('thead th')).forEach((field, index) => {
177
-
178
- if(index != 0){
179
-
180
- lines[index-1] = '';
181
- }
182
- });
183
-
184
- // populate the lines array from the items array
185
- Array.from(chartElement.querySelectorAll('tbody tr')).forEach((item, index) => {
186
-
187
- Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
188
-
189
- if(subindex != 0){
190
-
191
- let value = cell.getAttribute('data-numeric');
192
-
193
- value = value.replace('£','');
194
- value = value.replace('%','');
195
- value = Number.parseFloat(value) - min;
196
-
197
- const percent = (value/max) * 100;
198
-
199
- let command = index == 0 ? 'M' : 'L';
200
-
201
- lines[subindex-1] += `${command} ${spacer * index} ${100-percent} `;
202
- }
203
- });
204
- });
205
-
206
- lines.forEach((line, index) => {
207
-
208
- returnString += `
209
- <svg viewBox="0 0 200 100" class="line" preserveAspectRatio="none">
210
- <path fill="none" d="${line}"></path>
211
- </svg>`
212
- });
213
-
214
- linesWrapper.innerHTML = returnString;
215
- }
216
-
1
+ import { ucfirst, unsnake } from './helpers'
2
+
3
+ function chart(chartElement,min,max,type) {
4
+
5
+ let chartKey = chartElement.querySelector('.chart__key');
6
+ let chartYaxis = chartElement.querySelector('.chart__yaxis');
7
+ let chartGuidelines = chartElement.querySelector('.chart__guidelines');
8
+
9
+ // Chart key
10
+ if(chartKey && chartKey.childElementCount == 0){
11
+ createChartKey(chartElement);
12
+ }
13
+
14
+ // Y Axis and Guidelines
15
+ if(chartYaxis && chartYaxis.childElementCount == 0){
16
+ createChartYaxis(chartElement);
17
+ }
18
+ if(chartGuidelines && chartGuidelines.childElementCount == 0){
19
+ createChartGuidelines(chartElement);
20
+ }
21
+
22
+ // Create lines for line graph
23
+ if(type == "line")
24
+ createLines(chartElement,min,max);
25
+
26
+ // Create pies
27
+ if(type == "pie")
28
+ createPies(chartElement);
29
+
30
+ // Add css vars to cells
31
+ Array.from(chartElement.querySelectorAll('tbody tr')).forEach((tr, index) => {
32
+
33
+ let group = tr.querySelector('td:first-child').innerHTML;
34
+
35
+ Array.from(tr.querySelectorAll('td[data-numeric]:not([data-numeric="0"]):not(:first-child)')).forEach((td, index) => {
36
+
37
+ const value = Number.parseFloat(td.getAttribute('data-numeric'));
38
+ let percent = ((value - min)/(max)) * 100;
39
+ const content = td.innerHTML;
40
+ const label = td.getAttribute('data-label');
41
+ let bottom = 0;
42
+
43
+ // If the value is negative the position below the 0 line
44
+ if(min < 0){
45
+ bottom = Math.abs((min)/(max)*100);
46
+ if(value < 0){
47
+ bottom = bottom - percent;
48
+ }
49
+ }
50
+ td.setAttribute("style",`--bottom:${bottom}%;--percent:${percent}%;`);
51
+
52
+ td.innerHTML = `<span data-group="${group}" data-label="${label}">${content}</span>`;
53
+ });
54
+ });
55
+ }
56
+
57
+ export const createChartKey = function(chartElement){
58
+
59
+ let chartKey = chartElement.querySelector('.chart__key');
60
+
61
+ Array.from(chartElement.querySelectorAll('thead th')).forEach((arrayElement, index) => {
62
+
63
+ chartKey.innerHTML += `<div class="key">${arrayElement.innerText}</div>`;
64
+ });
65
+ }
66
+
67
+ export const createChartGuidelines = function(chartElement){
68
+
69
+ let chartGuidelines = chartElement.querySelector('.chart__guidelines');
70
+ const max = chartElement.getAttribute('data-max');
71
+ const min = chartElement.getAttribute('data-min');
72
+
73
+ chartGuidelines.innerHTML += `<div style="--value: 0;--percent:0%;" class="axis__point"><span>0</span></div>`;
74
+ chartGuidelines.innerHTML += `<div style="--value: ${max};--percent:100%;" class="axis__point"><span>${max}</span></div>`;
75
+ }
76
+
77
+ export const createChartYaxis = function(chartElement){
78
+
79
+ let chartYaxis = chartElement.querySelector('.chart__yaxis');
80
+ const max = chartElement.getAttribute('data-max');
81
+ const min = chartElement.getAttribute('data-min');
82
+
83
+ chartYaxis.innerHTML += `<div style="--value: 0;--percent:0%;" class="axis__point"><span>0</span></div>`;
84
+ chartYaxis.innerHTML += `<div style="--value: ${max};--percent:100%;" class="axis__point"><span>${max}</span></div>`;
85
+ }
86
+
87
+ function getCoordinatesForPercent(percent) {
88
+ const x = Math.cos(2 * Math.PI * percent);
89
+ const y = Math.sin(2 * Math.PI * percent);
90
+ return [x*100, y*100];
91
+ }
92
+
93
+ export const createPies = function(chartElement){
94
+
95
+ let returnString = '';
96
+ let pieWrapper = chartElement.querySelector('.pies');
97
+
98
+ Array.from(chartElement.querySelectorAll('tbody tr')).forEach((item, index) => {
99
+
100
+ let paths = '';
101
+ let tooltips = '';
102
+
103
+ let cumulativePercent = 0;
104
+
105
+ let total = 0;
106
+
107
+ let titleKey = item.querySelectorAll('td')[0]
108
+ let title = titleKey.innerHTML;
109
+
110
+ Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
111
+
112
+ if(subindex != 0){
113
+
114
+ let value = cell.getAttribute('data-numeric');
115
+
116
+ value = value.replace('£','');
117
+ value = value.replace('%','');
118
+ value = Number.parseInt(value);
119
+
120
+ total += value;
121
+ }
122
+ });
123
+
124
+ Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
125
+
126
+ if(subindex != 0){
127
+
128
+ let value = cell.getAttribute('data-numeric');
129
+
130
+ value = value.replace('£','');
131
+ value = value.replace('%','');
132
+ value = Number.parseInt(value);
133
+
134
+ let percent = value/total;
135
+
136
+ //lines[subindex-1] += `${command} ${spacer * index} ${100-percent} `;
137
+ const [startX, startY] = getCoordinatesForPercent(cumulativePercent);
138
+
139
+ // each slice starts where the last slice ended, so keep a cumulative percent
140
+ cumulativePercent += percent;
141
+
142
+ const [endX, endY] = getCoordinatesForPercent(cumulativePercent);
143
+
144
+ // if the slice is more than 50%, take the large arc (the long way around)
145
+ const largeArcFlag = percent > .5 ? 1 : 0;
146
+
147
+ // create an array and join it just for code readability
148
+ const pathData = [
149
+ `M ${startX} ${startY}`, // Move
150
+ `A 100 100 0 ${largeArcFlag} 1 ${endX} ${endY}`, // Arc
151
+ `L 0 0`, // Line
152
+ ].join(' ');
153
+
154
+ paths += `<path d="${pathData}"></path>`;
155
+ tooltips += `<foreignObject x="-70" y="-70" width="140" height="140" style="transform: rotate(90deg)"><div><span class="h5 mb-0"><span class="total d-block">${ucfirst(unsnake(title))}</span> ${ucfirst(unsnake(cell.getAttribute('data-label')))}<br/> ${cell.innerHTML}</span></div></foreignObject>`;
156
+ }
157
+ });
158
+
159
+ returnString += `<div class="pie"><svg viewBox="-105 -105 210 210" style="transform: rotate(-90deg)" preserveAspectRatio="none">${paths}<foreignObject x="-70" y="-70" width="140" height="140" style="transform: rotate(90deg)"><div><span class="h5 mb-0">${title}</span></div></foreignObject>${tooltips}</svg></div>`
160
+ });
161
+
162
+ pieWrapper.innerHTML = returnString;
163
+ }
164
+
165
+ export const createLines = function(chartElement,min,max){
166
+
167
+ let returnString = '';
168
+ let linesWrapper = chartElement.querySelector('.lines');
169
+
170
+ let items = Array.from(chartElement.querySelectorAll('tbody tr'));
171
+
172
+ let lines = Array();
173
+ let spacer = 200/(items.length - 1);
174
+
175
+ // Creates the lines array from the fields array
176
+ Array.from(chartElement.querySelectorAll('thead th')).forEach((field, index) => {
177
+
178
+ if(index != 0){
179
+
180
+ lines[index-1] = '';
181
+ }
182
+ });
183
+
184
+ // populate the lines array from the items array
185
+ Array.from(chartElement.querySelectorAll('tbody tr')).forEach((item, index) => {
186
+
187
+ Array.from(item.querySelectorAll('td')).forEach((cell, subindex) => {
188
+
189
+ if(subindex != 0){
190
+
191
+ let value = cell.getAttribute('data-numeric');
192
+
193
+ value = value.replace('£','');
194
+ value = value.replace('%','');
195
+ value = Number.parseFloat(value) - min;
196
+
197
+ const percent = (value/max) * 100;
198
+
199
+ let command = index == 0 ? 'M' : 'L';
200
+
201
+ lines[subindex-1] += `${command} ${spacer * index} ${100-percent} `;
202
+ }
203
+ });
204
+ });
205
+
206
+ lines.forEach((line, index) => {
207
+
208
+ returnString += `
209
+ <svg viewBox="0 0 200 100" class="line" preserveAspectRatio="none">
210
+ <path fill="none" d="${line}"></path>
211
+ </svg>`
212
+ });
213
+
214
+ linesWrapper.innerHTML = returnString;
215
+ }
216
+
217
217
  export default chart
@@ -1,16 +1,16 @@
1
- const drawer = (element) => {
2
-
3
- const observer = new IntersectionObserver(
4
-
5
- function([e]){
6
- e.target.classList.toggle("in-view", e.intersectionRatio > 0)
7
- document.getElementById('showDrawer').checked = false
8
- },
9
- { threshold: [1] }
10
- );
11
-
12
- const el = document.getElementById('drawer-end')
13
- observer.observe(el);
14
- }
15
-
1
+ const drawer = (element) => {
2
+
3
+ const observer = new IntersectionObserver(
4
+
5
+ function([e]){
6
+ e.target.classList.toggle("in-view", e.intersectionRatio > 0)
7
+ document.getElementById('showDrawer').checked = false
8
+ },
9
+ { threshold: [1] }
10
+ );
11
+
12
+ const el = document.getElementById('drawer-end')
13
+ observer.observe(el);
14
+ }
15
+
16
16
  export default drawer