@iamproperty/components 3.1.0 → 3.4.4

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 (179) hide show
  1. package/README.md +141 -16
  2. package/assets/css/core.min.css +1 -1
  3. package/assets/css/core.min.css.map +1 -1
  4. package/assets/css/style.min.css +1 -1
  5. package/assets/css/style.min.css.map +1 -1
  6. package/assets/favicons/manifest.json +31 -31
  7. package/assets/js/main.js +57 -57
  8. package/assets/js/modules/accordion.js +33 -32
  9. package/assets/js/modules/alert.js +41 -57
  10. package/assets/js/modules/carousel.js +76 -102
  11. package/assets/js/modules/chart.js +151 -218
  12. package/assets/js/modules/drawer.js +10 -16
  13. package/assets/js/modules/file-upload.js +33 -48
  14. package/assets/js/modules/form.js +122 -168
  15. package/assets/js/modules/helpers.js +90 -119
  16. package/assets/js/modules/modal.js +69 -90
  17. package/assets/js/modules/nav.js +18 -28
  18. package/assets/js/modules/orderablelist.js +91 -122
  19. package/assets/js/modules/table.js +451 -585
  20. package/assets/js/modules/testimonial.js +64 -83
  21. package/assets/js/modules/youtubevideo.js +114 -145
  22. package/assets/js/scripts.bundle.js +895 -955
  23. package/assets/js/scripts.bundle.js.map +1 -1
  24. package/assets/js/scripts.bundle.min.js +3 -3
  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 +10 -10
  30. package/assets/sass/_func.scss +12 -12
  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 +143 -143
  34. package/assets/sass/_functions/variables.scss +467 -467
  35. package/assets/sass/_print.scss +61 -61
  36. package/assets/sass/_tests/{sass.spec.js → colours.spec.js} +9 -9
  37. package/assets/sass/_tests/colours.spec.scss +44 -44
  38. package/assets/sass/_tests/func.spec.js +9 -0
  39. package/assets/sass/_tests/func.spec.scss +232 -232
  40. package/assets/sass/_tests/mixins.spec.js +9 -0
  41. package/assets/sass/_tests/mixins.spec.scss +194 -194
  42. package/assets/sass/_tests/typography.spec.js +9 -0
  43. package/assets/sass/_tests/typography.spec.scss +35 -35
  44. package/assets/sass/components/accordion.scss +197 -197
  45. package/assets/sass/components/alert.scss +98 -98
  46. package/assets/sass/{elements → components}/buttons.scss +251 -251
  47. package/assets/sass/{elements → components}/card.scss +288 -288
  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/{elements → components}/container.scss +236 -236
  52. package/assets/sass/components/drawer.scss +46 -46
  53. package/assets/sass/{elements → components}/forms.scss +261 -261
  54. package/assets/sass/components/header.scss +63 -63
  55. package/assets/sass/{elements → components}/links.scss +97 -97
  56. package/assets/sass/{elements → components}/lists.scss +159 -159
  57. package/assets/sass/components/modal.scss +136 -136
  58. package/assets/sass/components/nav.scss +960 -960
  59. package/assets/sass/{elements → components}/panel.scss +161 -161
  60. package/assets/sass/components/property-searchbar.scss +143 -143
  61. package/assets/sass/components/snapshot.scss +70 -70
  62. package/assets/sass/components/stepper.scss +164 -164
  63. package/assets/sass/{elements → components}/tables.scss +290 -290
  64. package/assets/sass/components/tabs.scss +87 -87
  65. package/assets/sass/components/testimonial.scss +132 -132
  66. package/assets/sass/components/timeline.scss +95 -95
  67. package/assets/sass/{elements → components}/tooltips.scss +84 -84
  68. package/assets/sass/core.scss +6 -6
  69. package/assets/sass/email.scss +65 -65
  70. package/assets/sass/error.scss +4 -4
  71. package/assets/sass/foundations/brand.scss +76 -72
  72. package/assets/sass/foundations/circles.scss +74 -74
  73. package/assets/sass/foundations/icons.scss +80 -80
  74. package/assets/sass/foundations/media.scss +50 -50
  75. package/assets/sass/foundations/reboot.scss +130 -130
  76. package/assets/sass/foundations/root.scss +125 -125
  77. package/assets/sass/{elements → foundations}/type.scss +136 -136
  78. package/assets/sass/main.scss +7 -7
  79. package/assets/svg/icons.svg +598 -598
  80. package/assets/svg/logo.svg +49 -43
  81. package/assets/ts/main.ts +68 -68
  82. package/assets/ts/modules/accordion.ts +44 -43
  83. package/assets/ts/modules/alert.ts +58 -0
  84. package/assets/ts/modules/carousel.ts +103 -0
  85. package/assets/ts/modules/chart.ts +219 -0
  86. package/assets/ts/modules/drawer.ts +17 -0
  87. package/assets/ts/modules/file-upload.ts +49 -0
  88. package/assets/ts/modules/form.ts +169 -0
  89. package/assets/ts/modules/helpers.ts +120 -0
  90. package/assets/ts/modules/modal.ts +91 -0
  91. package/assets/ts/modules/nav.ts +29 -0
  92. package/assets/ts/modules/orderablelist.ts +123 -0
  93. package/assets/ts/modules/table.ts +586 -0
  94. package/assets/ts/modules/testimonial.ts +84 -0
  95. package/assets/ts/modules/youtubevideo.ts +146 -0
  96. package/dist/components.es.js +493 -509
  97. package/dist/components.umd.js +15 -15
  98. package/package.json +109 -108
  99. package/src/components/Accordion/Accordion.spec.js +63 -63
  100. package/src/components/Accordion/Accordion.vue +22 -22
  101. package/src/components/Accordion/AccordionItem.vue +52 -52
  102. package/src/components/Accordion/README.md +34 -34
  103. package/src/components/Alert/Alert.spec.js +49 -49
  104. package/src/components/Alert/Alert.vue +39 -39
  105. package/src/components/Alert/README.md +28 -28
  106. package/src/components/Banner/Banner.spec.js +28 -28
  107. package/src/components/Banner/Banner.vue +38 -38
  108. package/src/components/Banner/README.md +23 -23
  109. package/src/{elements → components}/Card/Card.vue +122 -122
  110. package/src/{elements/FileUploads → components/Card}/README.md +24 -24
  111. package/src/components/CardDeck/CardDeck.spec.js +99 -99
  112. package/src/components/CardDeck/CardDeck.vue +77 -77
  113. package/src/components/CardDeck/README.md +24 -24
  114. package/src/components/Carousel/Carousel.spec.js +45 -45
  115. package/src/components/Carousel/Carousel.vue +85 -85
  116. package/src/components/Carousel/README.md +19 -19
  117. package/src/components/Chart/Chart.spec.js +201 -201
  118. package/src/components/Chart/Chart.vue +88 -88
  119. package/src/components/Chart/README.md +17 -17
  120. package/src/components/Drawer/Drawer.vue +53 -53
  121. package/src/components/Drawer/README.md +22 -22
  122. package/src/{elements → components}/FileUploads/FileUploads.vue +48 -48
  123. package/src/{elements/Card → components/FileUploads}/README.md +24 -24
  124. package/src/components/Header/Header.spec.js +33 -33
  125. package/src/components/Header/Header.vue +38 -38
  126. package/src/components/Header/README.md +27 -27
  127. package/src/{elements → components}/Input/Input.vue +272 -272
  128. package/src/{elements → components}/Input/README.md +19 -19
  129. package/src/components/Modal/Modal.spec.js +22 -22
  130. package/src/components/Modal/Modal.vue +43 -43
  131. package/src/components/Modal/README.md +19 -19
  132. package/src/components/Nav/Nav.spec.js +35 -35
  133. package/src/components/Nav/Nav.vue +215 -215
  134. package/src/components/Nav/README.md +22 -22
  135. package/src/components/NoteFeed/NoteFeed.vue +79 -79
  136. package/src/components/NoteFeed/README.md +16 -16
  137. package/src/components/PropertySearchbar/PropertySearchbar.vue +204 -204
  138. package/src/components/PropertySearchbar/README.md +25 -25
  139. package/src/components/Snapshot/README.md +20 -20
  140. package/src/components/Snapshot/Snapshot.vue +32 -32
  141. package/src/components/Stepper/README.md +32 -32
  142. package/src/components/Stepper/Step.vue +28 -28
  143. package/src/components/Stepper/Stepper.spec.js +99 -99
  144. package/src/components/Stepper/Stepper.vue +33 -33
  145. package/src/{elements → components}/Table/README.md +62 -62
  146. package/src/{elements → components}/Table/Table.spec.js +90 -90
  147. package/src/{elements → components}/Table/Table.vue +129 -129
  148. package/src/components/Tabs/README.md +27 -27
  149. package/src/components/Tabs/Tab.vue +32 -32
  150. package/src/components/Tabs/Tabs.vue +77 -77
  151. package/src/components/Testimonial/README.md +25 -25
  152. package/src/components/Testimonial/Testimonial.spec.js +57 -57
  153. package/src/components/Testimonial/Testimonial.vue +60 -60
  154. package/src/components/Timeline/README.md +18 -18
  155. package/src/components/Timeline/Timeline.spec.js +17 -17
  156. package/src/components/Timeline/Timeline.vue +24 -24
  157. package/src/foundations/Icon/Icon.spec.js +24 -24
  158. package/src/foundations/Icon/Icon.vue +24 -24
  159. package/src/foundations/Icon/README.md +11 -11
  160. package/src/foundations/Logo/Logo.spec.js +56 -56
  161. package/src/foundations/Logo/Logo.vue +39 -39
  162. package/src/foundations/Logo/README.md +20 -20
  163. package/src/foundations/YoutubeVideo/README.md +11 -11
  164. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +24 -24
  165. package/src/helpers/strings.js +12 -12
  166. package/src/index.js +27 -27
  167. package/src/vue-shim.d.ts +6 -6
  168. package/assets/css/email.min.css +0 -1
  169. package/assets/css/email.min.css.map +0 -1
  170. package/assets/css/error.min.css +0 -1
  171. package/assets/css/error.min.css.map +0 -1
  172. package/assets/ts/main.js +0 -57
  173. package/assets/ts/main.js.map +0 -1
  174. package/assets/ts/modules/accordion.js +0 -33
  175. package/assets/ts/modules/accordion.js.map +0 -1
  176. package/src/components/Accordion/Accordion.screenshot.vue +0 -57
  177. package/src/components/Accordion/__screenshots__/win32/laptop/Accordion.png +0 -0
  178. package/src/components/Accordion/__screenshots__/win32/mobile/Accordion.png +0 -0
  179. package/src/components/Accordion/__screenshots__/win32/tablet/Accordion.png +0 -0
@@ -1,85 +1,85 @@
1
- @use "../_func.scss" as *;
2
-
3
- :is(abbr[title], .tooltip) {
4
-
5
- text-decoration: underline;
6
- text-underline-offset: 0.2em;
7
- text-decoration-thickness: 2px;
8
- text-decoration-style: dashed;
9
- text-decoration-color: var(--colour-underline);
10
- position: relative;
11
- cursor: help;
12
-
13
- &:is(:hover, :focus, :active){
14
-
15
- text-decoration: none;
16
- }
17
- }
18
-
19
- @mixin tooltip(){
20
-
21
- display: block;
22
- z-index: var(--index-above);
23
- position: absolute;
24
- top: calc(100% + 0.25rem);
25
- left: 50%;
26
- min-width: max(120%, #{rem(100)});
27
- transform: translate(-50%,0);
28
- background: var(--body-bg);
29
- color: inherit;
30
- padding: 0.5em;
31
- border-radius: 3px;
32
- box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.3);
33
- }
34
-
35
- .tooltip {
36
-
37
-
38
- &:after{
39
-
40
- content: "";
41
- display: inline-block;
42
- margin-left: 0.1em;
43
- margin-bottom: 0.1em;
44
- width: 0.8em;
45
- height: 0.9em;
46
- vertical-align: text-bottom;
47
- background: currentColor;
48
- mask-image: var(--icon-question);
49
- mask-size: 100%;
50
- mask-repeat: no-repeat;
51
- mask-position: 50% 50%;
52
- -webkit-mask-image: var(--icon-question);
53
- -webkit-mask-size: 100%;
54
- -webkit-mask-repeat: no-repeat;
55
- -webkit-mask-position: 50% 50%;
56
- }
57
-
58
- .tooltip__content {
59
-
60
- opacity: 0;
61
- position: absolute;
62
-
63
- }
64
-
65
- &:is(:hover, :focus, :active){
66
-
67
- .tooltip__content {
68
-
69
- opacity: 1;
70
- @include tooltip();
71
- }
72
- }
73
- }
74
-
75
- @media (hover: none) {
76
-
77
- :is(abbr[title], .tooltip[title]) {
78
-
79
- &:is(:hover, :focus, :active):before{
80
-
81
- content: attr(title);
82
- @include tooltip();
83
- }
84
- }
1
+ @use "../_func.scss" as *;
2
+
3
+ :is(abbr[title], .tooltip) {
4
+
5
+ text-decoration: underline;
6
+ text-underline-offset: 0.2em;
7
+ text-decoration-thickness: 2px;
8
+ text-decoration-style: dashed;
9
+ text-decoration-color: var(--colour-underline);
10
+ position: relative;
11
+ cursor: help;
12
+
13
+ &:is(:hover, :focus, :active){
14
+
15
+ text-decoration: none;
16
+ }
17
+ }
18
+
19
+ @mixin tooltip(){
20
+
21
+ display: block;
22
+ z-index: var(--index-above);
23
+ position: absolute;
24
+ top: calc(100% + 0.25rem);
25
+ left: 50%;
26
+ min-width: max(120%, #{rem(100)});
27
+ transform: translate(-50%,0);
28
+ background: var(--body-bg);
29
+ color: inherit;
30
+ padding: 0.5em;
31
+ border-radius: 3px;
32
+ box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.3);
33
+ }
34
+
35
+ .tooltip {
36
+
37
+
38
+ &:after{
39
+
40
+ content: "";
41
+ display: inline-block;
42
+ margin-left: 0.1em;
43
+ margin-bottom: 0.1em;
44
+ width: 0.8em;
45
+ height: 0.9em;
46
+ vertical-align: text-bottom;
47
+ background: currentColor;
48
+ mask-image: var(--icon-question);
49
+ mask-size: 100%;
50
+ mask-repeat: no-repeat;
51
+ mask-position: 50% 50%;
52
+ -webkit-mask-image: var(--icon-question);
53
+ -webkit-mask-size: 100%;
54
+ -webkit-mask-repeat: no-repeat;
55
+ -webkit-mask-position: 50% 50%;
56
+ }
57
+
58
+ .tooltip__content {
59
+
60
+ opacity: 0;
61
+ position: absolute;
62
+
63
+ }
64
+
65
+ &:is(:hover, :focus, :active){
66
+
67
+ .tooltip__content {
68
+
69
+ opacity: 1;
70
+ @include tooltip();
71
+ }
72
+ }
73
+ }
74
+
75
+ @media (hover: none) {
76
+
77
+ :is(abbr[title], .tooltip[title]) {
78
+
79
+ &:is(:hover, :focus, :active):before{
80
+
81
+ content: attr(title);
82
+ @include tooltip();
83
+ }
84
+ }
85
85
  }
@@ -1,6 +1,6 @@
1
- @charset "UTF-8";
2
-
3
- @use "_fonts";
4
- @use "_corefiles";
5
- @use "_forms";
6
- @use "_print";
1
+ @charset "UTF-8";
2
+
3
+ @use "_fonts";
4
+ @use "_corefiles";
5
+ @use "_forms";
6
+ @use "_print";
@@ -1,66 +1,66 @@
1
- @charset "UTF-8";
2
-
3
- // Set mobile only variable so that the media query mixin doesn't print out non mobile rules
4
-
5
- @use "_func" as *;
6
-
7
- $mobileOnly: "true";
8
- $compatible: "true";
9
-
10
- // Update the breakpoints to just one to remove some utility classes
11
- $grid-breakpoints: (
12
- xs: 0
13
- );
14
-
15
- // Simplify the grid
16
- $grid-columns: 4;
17
-
18
- $device-xs-width: 600;
19
- $device-md-width: 600;
20
- $container-padding-x: 32;
21
- $default-curve-width: 600;
22
-
23
- @import "_corefiles";
24
-
25
- :root {
26
-
27
- --container-padding-x: #{rem(66)};
28
- }
29
-
30
- html {
31
-
32
- @media (min-width: #{em(600)}) {
33
- font-size: 100%;
34
- }
35
- }
36
-
37
- .content-wrapper > * {
38
- max-width: 600px;
39
- margin-inline: auto;
40
- }
41
-
42
- .container:not(.container-fluid) {
43
- max-width: 600px;
44
- padding-left: #{rem(48)};
45
- padding-right: #{rem(48)};
46
- }
47
-
48
- .table--email,
49
- .table--email tr,
50
- .table--email td {
51
- border: none;
52
- margin: 0;
53
- padding: 0;
54
- }
55
- .table--email td + td {
56
- padding-left: 1rem;
57
- }
58
-
59
- /* card */
60
- .card {
61
- min-height: auto;
62
- }
63
- /* utilities */
64
- .text-white {
65
- color: white;;
1
+ @charset "UTF-8";
2
+
3
+ // Set mobile only variable so that the media query mixin doesn't print out non mobile rules
4
+
5
+ @use "_func" as *;
6
+
7
+ $mobileOnly: "true";
8
+ $compatible: "true";
9
+
10
+ // Update the breakpoints to just one to remove some utility classes
11
+ $grid-breakpoints: (
12
+ xs: 0
13
+ );
14
+
15
+ // Simplify the grid
16
+ $grid-columns: 4;
17
+
18
+ $device-xs-width: 600;
19
+ $device-md-width: 600;
20
+ $container-padding-x: 32;
21
+ $default-curve-width: 600;
22
+
23
+ @import "_corefiles";
24
+
25
+ :root {
26
+
27
+ --container-padding-x: #{rem(66)};
28
+ }
29
+
30
+ html {
31
+
32
+ @media (min-width: #{em(600)}) {
33
+ font-size: 100%;
34
+ }
35
+ }
36
+
37
+ .content-wrapper > * {
38
+ max-width: 600px;
39
+ margin-inline: auto;
40
+ }
41
+
42
+ .container:not(.container-fluid) {
43
+ max-width: 600px;
44
+ padding-left: #{rem(48)};
45
+ padding-right: #{rem(48)};
46
+ }
47
+
48
+ .table--email,
49
+ .table--email tr,
50
+ .table--email td {
51
+ border: none;
52
+ margin: 0;
53
+ padding: 0;
54
+ }
55
+ .table--email td + td {
56
+ padding-left: 1rem;
57
+ }
58
+
59
+ /* card */
60
+ .card {
61
+ min-height: auto;
62
+ }
63
+ /* utilities */
64
+ .text-white {
65
+ color: white;;
66
66
  }
@@ -1,5 +1,5 @@
1
- @charset "UTF-8";
2
-
3
- // Set mobile only variable so that the media query mixin doesn't print out non mobile rules
4
- @use "_func" as *;
1
+ @charset "UTF-8";
2
+
3
+ // Set mobile only variable so that the media query mixin doesn't print out non mobile rules
4
+ @use "_func" as *;
5
5
  @import "_corefiles";
@@ -1,72 +1,76 @@
1
- @use "../_func" as *;
2
-
3
- .brand {
4
-
5
- --svg-width: #{em(380,130)};
6
-
7
- &--sold {
8
- --svg-width: #{em(247,130)};
9
- }
10
-
11
- &--key {
12
- --svg-width: #{em(228,130)};
13
- }
14
-
15
- &--compliance,
16
- &--movebutler {
17
- --svg-width: #{em(740,130)};
18
- }
19
-
20
- &--medwaylaw {
21
- --svg-width: #{em(465,130)};
22
- }
23
-
24
- display: inline-flex;
25
- flex-direction: row;
26
- flex-wrap: nowrap;
27
- align-items: center;
28
- padding-right: rem(16);
29
- padding-bottom: rem(16);
30
- min-width: 100%;
31
- min-width: Min(100%, var(--svg-width));
32
- font-size: rem(64);
33
- @include var(color,--colour-brand);
34
-
35
- /* Restrict the logo colours so that only text-secondary can be defined */
36
- &[class*="text-"]:not(.text-secondary){
37
- color: inherit!important;
38
- }
39
-
40
- svg {
41
- fill: currentColor;
42
- height: 1em;
43
- width: 100%;
44
- max-width: var(--svg-width);
45
- }
46
-
47
- span {
48
- white-space: nowrap;
49
- font-size: 1rem;
50
- padding-left: rem(16);
51
- line-height: 1;
52
- font-weight: bold;
53
- display: inline-block;
54
- text-decoration: none;
55
- }
56
- }
57
-
58
- a.brand:not(:hover):not(:focus):not(:active),
59
- a:not(:hover):not(:focus):not(:active) .brand {
60
-
61
- @include var(color,--colour-brand);
62
- }
63
-
64
- a.brand:hover,
65
- a.brand:focus,
66
- a.brand:active,
67
- a:hover .brand,
68
- a:focus .brand,
69
- a:active .brand {
70
-
71
- color: currentColor!important;
72
- }
1
+ @use "../_func" as *;
2
+
3
+ .brand {
4
+
5
+ --svg-width: #{em(380,130)};
6
+
7
+ &--sold {
8
+ --svg-width: #{em(247,130)};
9
+ }
10
+
11
+ &--key {
12
+ --svg-width: #{em(228,130)};
13
+ }
14
+
15
+ &--compliance,
16
+ &--movebutler {
17
+ --svg-width: #{em(740,130)};
18
+ }
19
+
20
+ &--medwaylaw {
21
+ --svg-width: #{em(465,130)};
22
+ }
23
+
24
+ &--openview {
25
+ --svg-width: #{em(475,89)};
26
+ }
27
+
28
+ display: inline-flex;
29
+ flex-direction: row;
30
+ flex-wrap: nowrap;
31
+ align-items: center;
32
+ padding-right: rem(16);
33
+ padding-bottom: rem(16);
34
+ min-width: 100%;
35
+ min-width: Min(100%, var(--svg-width));
36
+ font-size: rem(64);
37
+ @include var(color,--colour-brand);
38
+
39
+ /* Restrict the logo colours so that only text-secondary can be defined */
40
+ &[class*="text-"]:not(.text-secondary){
41
+ color: inherit!important;
42
+ }
43
+
44
+ svg {
45
+ fill: currentColor;
46
+ height: 1em;
47
+ width: 100%;
48
+ max-width: var(--svg-width);
49
+ }
50
+
51
+ span {
52
+ white-space: nowrap;
53
+ font-size: 1rem;
54
+ padding-left: rem(16);
55
+ line-height: 1;
56
+ font-weight: bold;
57
+ display: inline-block;
58
+ text-decoration: none;
59
+ }
60
+ }
61
+
62
+ a.brand:not(:hover):not(:focus):not(:active),
63
+ a:not(:hover):not(:focus):not(:active) .brand {
64
+
65
+ @include var(color,--colour-brand);
66
+ }
67
+
68
+ a.brand:hover,
69
+ a.brand:focus,
70
+ a.brand:active,
71
+ a:hover .brand,
72
+ a:focus .brand,
73
+ a:active .brand {
74
+
75
+ color: currentColor!important;
76
+ }
@@ -1,75 +1,75 @@
1
- @use "../_func" as *;
2
-
3
- .circle {
4
- position: relative;
5
- border-radius: 50%;
6
- height: 1em;
7
- width: 1em;
8
- display: inline-block;
9
- font-size: rem(200);
10
- overflow: hidden;
11
- @include var(color,--colour-secondary);
12
-
13
- &:not([class*="gradient-"]){
14
-
15
- border: 2px solid currentColor;
16
- }
17
-
18
- &:not([class*="border-"]):before{
19
-
20
- background-color: currentColor;
21
- }
22
-
23
- &:not([class*="gradient-"]):before {
24
- content: "";
25
- display: block;
26
- position: absolute;
27
- top: 0;
28
- left: 0;
29
- width: 100%;
30
- height: 100%;
31
- mask-image: var(--icon-bg);
32
- mask-size: rem(34);
33
- mask-repeat: repeat;
34
- mask-position: 50% 50%;
35
- -webkit-mask-image: var(--icon-bg);
36
- -webkit-mask-size: rem(34);
37
- -webkit-mask-repeat: repeat;
38
- -webkit-mask-position: 50% 51%;
39
- }
40
-
41
- &--cross:before,
42
- &--plus:before {
43
-
44
- background-color: currentColor;
45
- --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 1.25px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-3.3,20.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,37.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,3.41l6.6-6.82m.11,6.71L13.59-3.3M30.7,20.41l6.6-6.82m.11,6.71-6.82-6.6'/%3E%3C/svg%3E");
46
- }
47
-
48
- &--plus:before {
49
-
50
- transform: rotate(46deg);
51
- }
52
-
53
- &--stripe:before {
54
-
55
- background-color: currentColor;
56
- --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 2px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cline y1='8.5' x2='34' y2='8.5' /%3E%3Cline y1='25.5' x2='34' y2='25.5' /%3E%3C/svg%3E");
57
- transform: rotate(45deg);
58
- }
59
-
60
- &--dots:before {
61
-
62
- background-color: currentColor;
63
- --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='17' r='3' /%3E%3Ccircle cy='17' r='3' /%3E%3Ccircle cx='34' cy='17' r='3' /%3E%3Ccircle cx='17' cy='34' r='3' /%3E%3C/svg%3E");
64
- }
65
-
66
- // Add an image into a circle
67
- > img {
68
- position: absolute;
69
- top: 0;
70
- left: 0;
71
- width: 100%;
72
- height: 100%;
73
- object-fit: cover;
74
- }
1
+ @use "../_func" as *;
2
+
3
+ .circle {
4
+ position: relative;
5
+ border-radius: 50%;
6
+ height: 1em;
7
+ width: 1em;
8
+ display: inline-block;
9
+ font-size: rem(200);
10
+ overflow: hidden;
11
+ @include var(color,--colour-secondary);
12
+
13
+ &:not([class*="gradient-"]){
14
+
15
+ border: 2px solid currentColor;
16
+ }
17
+
18
+ &:not([class*="border-"]):before{
19
+
20
+ background-color: currentColor;
21
+ }
22
+
23
+ &:not([class*="gradient-"]):before {
24
+ content: "";
25
+ display: block;
26
+ position: absolute;
27
+ top: 0;
28
+ left: 0;
29
+ width: 100%;
30
+ height: 100%;
31
+ mask-image: var(--icon-bg);
32
+ mask-size: rem(34);
33
+ mask-repeat: repeat;
34
+ mask-position: 50% 50%;
35
+ -webkit-mask-image: var(--icon-bg);
36
+ -webkit-mask-size: rem(34);
37
+ -webkit-mask-repeat: repeat;
38
+ -webkit-mask-position: 50% 51%;
39
+ }
40
+
41
+ &--cross:before,
42
+ &--plus:before {
43
+
44
+ background-color: currentColor;
45
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 1.25px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-3.3,20.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,37.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,3.41l6.6-6.82m.11,6.71L13.59-3.3M30.7,20.41l6.6-6.82m.11,6.71-6.82-6.6'/%3E%3C/svg%3E");
46
+ }
47
+
48
+ &--plus:before {
49
+
50
+ transform: rotate(46deg);
51
+ }
52
+
53
+ &--stripe:before {
54
+
55
+ background-color: currentColor;
56
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 2px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cline y1='8.5' x2='34' y2='8.5' /%3E%3Cline y1='25.5' x2='34' y2='25.5' /%3E%3C/svg%3E");
57
+ transform: rotate(45deg);
58
+ }
59
+
60
+ &--dots:before {
61
+
62
+ background-color: currentColor;
63
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='17' r='3' /%3E%3Ccircle cy='17' r='3' /%3E%3Ccircle cx='34' cy='17' r='3' /%3E%3Ccircle cx='17' cy='34' r='3' /%3E%3C/svg%3E");
64
+ }
65
+
66
+ // Add an image into a circle
67
+ > img {
68
+ position: absolute;
69
+ top: 0;
70
+ left: 0;
71
+ width: 100%;
72
+ height: 100%;
73
+ object-fit: cover;
74
+ }
75
75
  }