@iamproperty/components 5.7.1-beta3 → 5.7.1-beta5

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 (49) hide show
  1. package/assets/css/components/barchart.component.css +1 -0
  2. package/assets/css/components/barchart.component.css.map +1 -0
  3. package/assets/css/components/charts.config.css +1 -0
  4. package/assets/css/components/charts.config.css.map +1 -0
  5. package/assets/css/components/charts.module.css +1 -0
  6. package/assets/css/components/charts.module.css.map +1 -0
  7. package/assets/css/core.min.css +1 -1
  8. package/assets/css/core.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/js/components/accordion/accordion.component.min.js +1 -1
  12. package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
  13. package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
  14. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  15. package/assets/js/components/barchart/barchart.component.js +54 -0
  16. package/assets/js/components/barchart/barchart.component.min.js +21 -0
  17. package/assets/js/components/barchart/barchart.component.min.js.map +1 -0
  18. package/assets/js/components/card/card.component.min.js +1 -1
  19. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  20. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  21. package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
  22. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  23. package/assets/js/components/header/header.component.min.js +1 -1
  24. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  25. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  26. package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
  27. package/assets/js/components/nav/nav.component.min.js +1 -1
  28. package/assets/js/components/notification/notification.component.min.js +1 -1
  29. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  30. package/assets/js/components/search/search.component.min.js +1 -1
  31. package/assets/js/components/slider/slider.component.min.js +1 -1
  32. package/assets/js/components/table/table.component.min.js +1 -1
  33. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  34. package/assets/js/dynamic.min.js +1 -1
  35. package/assets/js/modules/chart.module.js +350 -0
  36. package/assets/js/scripts.bundle.js +1 -1
  37. package/assets/js/scripts.bundle.min.js +1 -1
  38. package/assets/sass/_corefiles.scss +2 -0
  39. package/assets/sass/components/barchart.component.scss +345 -0
  40. package/assets/sass/components/charts.config.scss +79 -0
  41. package/assets/sass/components/charts.module.scss +647 -0
  42. package/assets/sass/elements/admin-panel.scss +1 -1
  43. package/assets/ts/components/barchart/README.md +37 -0
  44. package/assets/ts/components/barchart/barchart.component.ts +80 -0
  45. package/assets/ts/modules/chart.module.ts +506 -0
  46. package/dist/components.es.js +11 -11
  47. package/dist/components.umd.js +11 -11
  48. package/package.json +1 -1
  49. package/src/components/BarChart/BarChart.vue +25 -0
@@ -0,0 +1,647 @@
1
+ @use "../_func" as *;
2
+
3
+ $chart-colour-1: map-get($wider-colours,"3")!default;
4
+ $chart-colour-2: map-get($wider-colours,"4")!default;
5
+ $chart-colour-3: map-get($wider-colours,"5")!default;
6
+ $chart-colour-4: map-get($wider-colours,"6")!default;
7
+ $chart-colour-5: map-get($wider-colours,"7")!default;
8
+ $chart-colour-6: map-get($wider-colours,"8")!default;
9
+ $chart-colour-7: map-get($wider-colours,"9")!default;
10
+ $chart-colour-8: map-get($wider-colours,"10")!default;
11
+ $chart-colour-9: map-get($wider-colours,"11")!default;
12
+ $chart-colour-10: map-get($wider-colours,"12")!default;
13
+
14
+ $chart-colors: ();
15
+ $chart-colors: map-merge((
16
+ 1: $chart-colour-1,
17
+ 2: $chart-colour-2,
18
+ 3: $chart-colour-3,
19
+ 4: $chart-colour-4,
20
+ 5: $chart-colour-5,
21
+ 6: $chart-colour-6,
22
+ 7: $chart-colour-7,
23
+ 8: $chart-colour-8,
24
+ 9: $chart-colour-9,
25
+ 10: $chart-colour-10
26
+ ), $chart-colors);
27
+
28
+ $chart-colour-1-hover: map-get($wider-colours-hover,"3")!default;
29
+ $chart-colour-2-hover: map-get($wider-colours-hover,"4")!default;
30
+ $chart-colour-3-hover: map-get($wider-colours-hover,"5")!default;
31
+ $chart-colour-4-hover: map-get($wider-colours-hover,"6")!default;
32
+ $chart-colour-5-hover: map-get($wider-colours-hover,"7")!default;
33
+ $chart-colour-6-hover: map-get($wider-colours-hover,"8")!default;
34
+ $chart-colour-7-hover: map-get($wider-colours-hover,"9")!default;
35
+ $chart-colour-8-hover: map-get($wider-colours-hover,"10")!default;
36
+ $chart-colour-9-hover: map-get($wider-colours-hover,"11")!default;
37
+ $chart-colour-10-hover: map-get($wider-colours-hover,"12")!default;
38
+
39
+ $chart-colors-hover: ();
40
+ $chart-colors-hover: map-merge((
41
+ 1: $chart-colour-1-hover,
42
+ 2: $chart-colour-2-hover,
43
+ 3: $chart-colour-3-hover,
44
+ 4: $chart-colour-4-hover,
45
+ 5: $chart-colour-5-hover,
46
+ 6: $chart-colour-6-hover,
47
+ 7: $chart-colour-7-hover,
48
+ 8: $chart-colour-8-hover,
49
+ 9: $chart-colour-9-hover,
50
+ 10: $chart-colour-10-hover
51
+ ), $chart-colors-hover);
52
+
53
+ $chart-height: #{rem(120)}!default;
54
+ $chart-height-lg: #{rem(200)}!default;
55
+
56
+
57
+
58
+ // #region Apply chart colours
59
+ :host {
60
+
61
+ @each $index, $value in $chart-colors {
62
+ --chart-colour-#{$index}-set: var(--chart-colour-#{$index},#{$value});
63
+ }
64
+ @each $index, $value in $chart-colors-hover {
65
+ --chart-colour-#{$index}-hover: var(--chart-colour-#{$index},#{$value});
66
+ }
67
+
68
+ --chart-colour-success: #D2F0C9!important;
69
+ --chart-colour-success-hover: #8AD873!important;
70
+ --chart-colour-danger: #F5C2C7!important;
71
+ --chart-colour-danger-hover: #f5c2e7!important;
72
+ --chart-colour-warning: #FFD280!important;
73
+ --chart-colour-warning-hover: #FFB020!important;
74
+ }
75
+
76
+ @for $i from 1 to 10 {
77
+
78
+ .chart__key .key:nth-child(10n - #{10 - $i}),
79
+ .chart__outer table tbody tr td:not(:first-child):nth-child(10n - #{10 - ($i+1)}) {
80
+
81
+ --chart-colour: var(#{'--chart-colour-'+$i+'-set'});
82
+ --chart-colour-hover: var(#{'--chart-colour-'+$i+'-hover'});
83
+ }
84
+ }
85
+ // #endregion
86
+
87
+
88
+
89
+ // #region Basic setup - including: container setup, css vars
90
+
91
+ ::slotted(table) {
92
+ display: none!important;
93
+ }
94
+ :host {
95
+ container-type: inline-size;
96
+ margin-bottom: 2rem;
97
+ display: block;
98
+ }
99
+ .chart__outer {
100
+
101
+ display: flex;
102
+ flex-direction: column;
103
+
104
+ font-weight: var(--chart-font-weight, bold);;
105
+ color: var(--chart-text-color, black);
106
+
107
+
108
+ > * {
109
+ display: block;
110
+ order: 2;
111
+ }
112
+
113
+ // CSS vars that can be overwritten by declaring them without the -set on the end of the variable i.e. --chart-colour-1: red; would overwrite --chart-colour-1-set
114
+ --body-colour-set: var(--body-colour, Canvas);
115
+ --text-colour-set: var(--text-colour, black);
116
+
117
+ --chart-height-set: var(--chart-height, #{$chart-height});
118
+ --chart-height-lg-set: var(--chart-height-lg, #{$chart-height-lg});
119
+
120
+ --chart-height-resp: var(--chart-height-set);
121
+
122
+ tbody {
123
+ --chart-direction: 360deg;
124
+ --chart-day-bg-pos: 100% calc(var(--single-day) * 7)
125
+ }
126
+
127
+
128
+
129
+ // Non-configurable css vars
130
+ --index-below: -1;
131
+ --index-base: 0;
132
+ --index-focus: 2;
133
+ --index-above: 10;
134
+ --index-floating: 100;
135
+ --index-menu: 200;
136
+ --index-overlay: 1000;
137
+ --key-label-width: 100%;
138
+ --label-size: #{rem(12)};
139
+ --pie-size: calc(50% - 1.4rem);
140
+ --line-thickness: 1px;
141
+ --yaxis-width: auto;
142
+ --yaxis-point-display: block;
143
+ --yaxis-last-point-transform: translate(0,-50%);
144
+ --bar-gap: min(10%, 0.75rem);
145
+
146
+ @container (min-width: #{em($device-xs-width,16)}) {
147
+
148
+ :has(tr:nth-child(5) td:nth-child(4)),
149
+ :has(tr:nth-child(10)){
150
+
151
+ --yaxis-width: 0;
152
+ --yaxis-point-display: none;
153
+ --yaxis-last-point-transform: translate(0,-100%);
154
+ --bar-gap: 0;
155
+ }
156
+
157
+ .chart__wrapper {
158
+ --chart-height-resp: var(--chart-height-lg-set);
159
+ --pie-size: calc(33.333% - 1.4rem);
160
+ --line-thickness: 0.8px;
161
+ --yaxis-width: auto;
162
+ --yaxis-point-display: block;
163
+ --yaxis-last-point-transform: translate(0,-50%);
164
+ }
165
+ }
166
+
167
+ @container (min-width: #{em($device-sm-width,16)}) {
168
+ :has(tr:nth-child(10)){
169
+
170
+ --bar-gap: 0;
171
+ }
172
+
173
+ .chart__wrapper {
174
+
175
+ --label-size: #{rem(14)};
176
+ --pie-size: calc(25% - 1.5rem);
177
+ --line-thickness: 0.5px;
178
+ }
179
+ }
180
+
181
+ .chart__spacer span {
182
+ opacity: 0;
183
+ }
184
+
185
+ }
186
+ // #endregion
187
+
188
+ // #region Chart key
189
+ .chart__outer > input[type="checkbox"] {
190
+ opacity: 0;
191
+ position: absolute;
192
+ pointer-events: none;
193
+ bottom: 50%;
194
+ left: 50%;
195
+ }
196
+
197
+ .chart__key {
198
+
199
+ padding: 0 0 0 0;
200
+ margin-bottom: 1.5rem;
201
+ display: flex;
202
+ overflow: auto;
203
+ scroll-snap-type: x mandatory;
204
+ scroll-padding: 0.75rem;
205
+ //justify-content: flex-end;
206
+ gap: 0.5rem;
207
+
208
+ &:has(label:first-child:last-child){
209
+ display: var(--single-key-display, none);
210
+ }
211
+
212
+ .key {
213
+
214
+ margin: 0;
215
+
216
+ &:before {
217
+ content: "";
218
+ height: 0.8em;
219
+ width: 0.8em;
220
+ margin-right: 0.3em;
221
+ background-color: var(--chart-colour);
222
+ display: inline-block;
223
+ border-radius: var(--key-border-radius,4px);
224
+ }
225
+
226
+ &[data-label="Min"],
227
+ &[data-label="Max"] {
228
+ display: none;
229
+ }
230
+
231
+ .chart__total {
232
+ display: none;
233
+ }
234
+ }
235
+ }
236
+
237
+ // Hide chart keys
238
+ .chart__outer > input[type="checkbox"]:not(:checked) ~ .chart__key .key {
239
+
240
+ //opacity: 0.25;
241
+ }
242
+
243
+ @for $i from 1 to 10 {
244
+
245
+ .chart__outer > input[type="checkbox"]:nth-of-type(#{$i}):not(:checked) ~ .chart__key .key:nth-of-type(#{$i}) {
246
+ opacity: 0.25;
247
+ }
248
+ }
249
+ // #endregion
250
+
251
+ // #region y-axis
252
+ :host([data-yaxis]){
253
+
254
+ --yaxis-display: flex;
255
+ }
256
+
257
+ .chart__yaxis {
258
+
259
+ display: var(--yaxis-display, none);
260
+ flex-direction: column-reverse;
261
+ width: var(--yaxis-width);
262
+
263
+ .axis__point {
264
+
265
+ bottom: var(--percent);
266
+ position: relative;
267
+ height: 0;
268
+ white-space: nowrap;
269
+
270
+ &:not(:last-child){
271
+ display: var(--yaxis-point-display);
272
+ }
273
+
274
+ span {
275
+ display: block;
276
+ transform: translate(0,-50%);
277
+ padding-right: 0.25rem;
278
+ text-align: right;
279
+ //font-size: var(--label-size);
280
+ font-weight: var(--chart-yaxis-fw, normal);
281
+ font-size: var(--chart-yaxis-fs, #{rem(12)});
282
+ color: var(--colour-body);
283
+ }
284
+
285
+ &:last-child span {
286
+
287
+ transform: var(--yaxis-last-point-transform);
288
+ }
289
+ }
290
+ }
291
+ // #endregion
292
+
293
+ // #region X-axis
294
+ .chart__xaxis {
295
+ margin-bottom: 1rem;
296
+ display: flex;
297
+ flex-direction: column-reverse;
298
+ width: 100%;
299
+ position: absolute;
300
+ left: 0;
301
+ bottom: -1rem;
302
+
303
+ .axis__point {
304
+
305
+ left: var(--percent);
306
+ width: 1px;
307
+ position: absolute;
308
+ height: 0;
309
+ white-space: nowrap;
310
+
311
+ span {
312
+ display: block;
313
+ transform: translate(-50%, 0%);
314
+ text-align: center;
315
+ font-size: var(--label-size);
316
+ position: absolute;
317
+ left: 50%;
318
+ }
319
+ }
320
+ }
321
+ // #endregion
322
+
323
+ // #region Guidelines
324
+ .chart__guidelines {
325
+
326
+ position: absolute;
327
+ top: 0;
328
+ left: 0;
329
+ width: 100%;
330
+ height: 100%;
331
+ display: flex;
332
+ flex-direction: column-reverse;
333
+ pointer-events: none;
334
+
335
+ .guideline {
336
+
337
+ bottom: var(--percent);
338
+ position: absolute;
339
+ right: 0;
340
+ width: 100%;
341
+ height: 0px;
342
+ margin-bottom: -1px;
343
+ border-bottom: 1px dashed #eeeeee;
344
+ pointer-events: none;
345
+ z-index: var(--index-below);
346
+ //overflow: hidden;
347
+
348
+ &:not(.guideline--target) span{
349
+ display: none;
350
+ }
351
+ }
352
+
353
+ .guideline--target {
354
+
355
+ border-bottom: 1px dashed #000000;
356
+ z-index: var(--index-above);
357
+ text-shadow: 1px solid white;
358
+ overflow: visible;
359
+
360
+ span {
361
+ position: absolute;
362
+ bottom: 0;
363
+ font-size: var(--label-size);
364
+ text-shadow: 1px 1px 2px rgba(255, 255, 255, 1);
365
+ background: rgba(255,255,255,0.6);
366
+ }
367
+ }
368
+
369
+ [data-value="0"] {
370
+ border-bottom: 1px solid var(--colour-primary);
371
+
372
+ &:not(:first-child){
373
+
374
+ border-bottom: 1px dashed var(--colour-primary);
375
+ }
376
+ }
377
+ }
378
+ // #endregion
379
+
380
+ // #region Default column chart (Also applies to line chart)
381
+ .chart__wrapper {
382
+
383
+ display: block;
384
+ display: flex;
385
+ flex-direction: row;
386
+ position: relative;
387
+
388
+ .chart {
389
+
390
+ position: relative;
391
+ flex-grow: 1;
392
+ }
393
+
394
+ table {
395
+ display: block;
396
+ width: 100%!important;
397
+ padding-top: var(--chart-height-resp); // 16:9 ratio
398
+ position: relative;
399
+ margin-bottom: 0;
400
+ overflow: visible;
401
+
402
+ thead {
403
+ display: none;
404
+ }
405
+
406
+ tbody {
407
+
408
+ display: flex;
409
+ position: absolute;
410
+ width: 100%;
411
+ height: 100%;
412
+ top: 0;
413
+ left: 0;
414
+ flex-direction: row;
415
+ border: none;
416
+ }
417
+
418
+ tbody tr {
419
+ display: flex;
420
+ flex-direction: row;
421
+ justify-content: var(--chart-bar-alignment ,center);
422
+ align-items: flex-end;
423
+ border: none;
424
+ width: 100%;
425
+ height: 100%;
426
+ position: relative;
427
+ padding: 0 2px;
428
+ gap: var(--bar-gap);
429
+
430
+ td {
431
+ font-weight: inherit;
432
+ }
433
+
434
+ td:first-child { // part=xaxis
435
+ position: absolute;
436
+ top: 100%;
437
+ left: 0%;
438
+ width: fit-content;
439
+ padding: 0;
440
+ white-space: nowrap;
441
+ overflow: hidden;
442
+ text-overflow: ellipsis;
443
+ font-size: var(--label-size);
444
+ text-align: center;
445
+
446
+ @container (min-width: #{em($device-sm-width,16)}) {
447
+
448
+ display: block;
449
+ }
450
+
451
+ button {
452
+ all: unset;
453
+ cursor: pointer;
454
+ }
455
+ }
456
+
457
+ td[data-label="Min"],
458
+ td[data-label="Max"] {
459
+ display: none;
460
+ }
461
+
462
+ &:first-child td:first-child,
463
+ &:last-child td:first-child {
464
+
465
+ display: block;
466
+ }
467
+
468
+ td:not(:first-child) {
469
+ height: 100%;
470
+ height: var(--percent, 0%);
471
+ bottom: var(--bottom,0%);
472
+ width: 100%;
473
+ max-width: #{rem(120)};
474
+ position: relative;
475
+ padding: 0;
476
+ background: var(--chart-colour);
477
+ border-top-right-radius: 4px;
478
+ border-top-left-radius: 4px;
479
+
480
+ &:hover {
481
+ background: var(--chart-colour-hover);
482
+ }
483
+
484
+ &:has(span:empty),
485
+ &:empty{
486
+ display: none;
487
+ }
488
+
489
+ &[data-label]:before {
490
+ display: none;
491
+ }
492
+
493
+ span { //part="popover"
494
+ position: absolute;
495
+ top: var(--cursor-y, 50%);
496
+ left: var(--cursor-x, 50%);
497
+ font-size: var(--label-size);
498
+ line-height: 1.2;
499
+ transform: translate(-50%,0);
500
+ background: var(--chart-details-bg, var(--colour-canvas-2,Canvas));
501
+ opacity: 0;
502
+ pointer-events: none;
503
+ padding: 0.5rem;
504
+ border-radius: 0.5rem;
505
+ margin-bottom: 0.25rem;
506
+ //color: var(--colour-primary-theme);
507
+ white-space: pre;
508
+ text-align: left;
509
+ box-shadow: var(--chart-details-shadow, 0 #{rem(2)} #{rem(12)} rgba(0, 0, 0, 0.25));
510
+ transform: translate(-50%,-100%);
511
+
512
+
513
+ &::before {
514
+ content: attr(data-group)'\A';
515
+ }
516
+ &[data-label]::before {
517
+ content: attr(data-group)'\A'attr(data-label)'\A';
518
+ }
519
+ }
520
+
521
+ &:hover span {
522
+ opacity: 1;
523
+ z-index: var(--index-above);
524
+ }
525
+ }
526
+
527
+
528
+ td:first-child {
529
+ &[data-label]:before {
530
+ display: none;
531
+ }
532
+ }
533
+ }
534
+
535
+ // change the look of chart when crowded
536
+ @container (min-width: #{em($device-sm-width,16)}) {
537
+ tbody:has(tr:nth-child(5) td:nth-child(4)) tr,
538
+ tbody:has(tr:nth-child(10)) tr {
539
+
540
+ td:first-child {
541
+ display: none;
542
+ }
543
+
544
+ &:first-child td:first-child {
545
+
546
+ left: 0%;
547
+ transform: translate(0,0);
548
+ display: block;
549
+ text-align: left;
550
+ }
551
+ &:last-child td:first-child {
552
+
553
+ left: 100%;
554
+ transform: translate(-100%,0);
555
+ display: block;
556
+ text-align: right;
557
+ }
558
+
559
+ &:first-child td:not(:first-child) span {
560
+
561
+ left: -20%;
562
+ transform: translate(0%,0);
563
+ text-align: left;
564
+ }
565
+
566
+ &:last-child td:not(:first-child) span {
567
+
568
+ left: 120%;
569
+ transform: translate(-100%,0);
570
+ text-align: right;
571
+ }
572
+ }
573
+ }
574
+ // Hide labels when it gets crowded
575
+ @container (min-width: #{em($device-xs-width,16)}) {
576
+
577
+ tbody:has(tr:nth-child(25)){
578
+ tr td:first-child {
579
+ display: none!important;
580
+ }
581
+
582
+ tr:is(:first-child, :nth-child(2n + 1)) td:first-child {
583
+ display: block!important;
584
+ }
585
+ }
586
+
587
+ tbody:has(tr:nth-child(50)){
588
+
589
+ tr:is(:first-child, :nth-child(2n + 1)) td:first-child,
590
+ tr td:first-child {
591
+ display: none!important;
592
+ }
593
+
594
+ tr:is(:first-child, :nth-child(10n + 1)) td:first-child {
595
+ display: block!important;
596
+ }
597
+ }
598
+
599
+ tbody:has(tr:nth-child(100)){
600
+
601
+ tr:is(:first-child, :nth-child(10n + 1)) td:first-child,
602
+ tr td:first-child {
603
+ display: none!important;
604
+ }
605
+
606
+ tr:is(:first-child, :nth-child(20n + 1)) td:first-child {
607
+ display: block!important;
608
+ }
609
+ }
610
+ }
611
+ }
612
+ }
613
+ // #endregion
614
+
615
+ // #region Chart colour overide classes
616
+ :host(.chart-colour--success) td,
617
+ :host(:is(.chart-colour--success,.chart-colour--danger,.chart-colour--wraning)) td.chart-colour--success,
618
+ .chart-colour--success td {
619
+ --chart-colour: var(--chart-colour-success)!important;
620
+
621
+ &:hover {
622
+ --chart-colour-hover: var(--chart-colour-success-hover)!important;
623
+ }
624
+ }
625
+
626
+ :host(.chart-colour--danger) td,
627
+ :host(:is(.chart-colour--success,.chart-colour--danger,.chart-colour--wraning)) td.chart-colour--danger,
628
+ .chart-colour--danger,
629
+ .chart-colour--danger td{
630
+ --chart-colour: var(--chart-colour-danger)!important;
631
+
632
+ &:hover {
633
+ --chart-colour-hover: var(--chart-colour-danger-hover)!important;
634
+ }
635
+ }
636
+
637
+ :host(.chart-colour--warning) td,
638
+ :host(:is(.chart-colour--success,.chart-colour--danger,.chart-colour--wraning)) td.chart-colour--warning,
639
+ .chart-colour--warning,
640
+ .chart-colour--warning td{
641
+ --chart-colour: var(--chart-colour-warning)!important;
642
+
643
+ &:hover {
644
+ --chart-colour-hover: var(--chart-colour-warning-hover)!important;
645
+ }
646
+ }
647
+ // #endregion
@@ -1,7 +1,7 @@
1
1
  @use "../_func" as *;
2
2
 
3
3
  .admin-panel {
4
- --padding-x: #{rem(32)};
4
+ --padding-x: #{rem(24)};
5
5
  --padding-top: #{rem(16)};
6
6
  --padding-bottom: #{rem(24)};
7
7
  --mh-modifier: #{rem(56 + 16)};
@@ -0,0 +1,37 @@
1
+ ```
2
+ <iam-chart>
3
+ <table>
4
+ <thead>
5
+ <tr>
6
+ <th>Issue</th>
7
+ <th>Democrat</th>
8
+ <th>Republican</th>
9
+ </tr>
10
+ </thead>
11
+ <tbody>
12
+ <tr><td>Inflation</td><td>45%</td><td>18%</td></tr><tr><td>Abortion</td><td>12%</td><td>43%</td></tr>
13
+ <tr><td>Gun policy</td><td>8%</td><td>14%</td></tr><tr><td>Immigration</td><td>15%</td><td>5%</td></tr>
14
+ <tr><td>Crime</td><td>13%</td><td>10%</td></tr>
15
+ </tbody>
16
+ </table>
17
+ </iam-chart>
18
+ ```
19
+
20
+ **To do**
21
+
22
+ - Animation
23
+ - Add more chart types
24
+ - optimise code
25
+ - change key
26
+ - Fill in readme with class and attributes
27
+ - flout
28
+
29
+ **Note**
30
+
31
+
32
+ **Properties**
33
+
34
+
35
+ **Class modifiers**
36
+
37
+ - .chart--no-animate turns of the animation