@iamproperty/components 6.0.0 → 6.1.0--beta

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 (207) hide show
  1. package/assets/bootstrap/README.md +8 -7
  2. package/assets/bootstrap/js/index.esm.js +19 -0
  3. package/assets/bootstrap/js/index.umd.js +34 -0
  4. package/assets/bootstrap/js/src/alert.js +1 -1
  5. package/assets/bootstrap/js/src/base-component.js +2 -2
  6. package/assets/bootstrap/js/src/button.js +1 -1
  7. package/assets/bootstrap/js/src/carousel.js +1 -1
  8. package/assets/bootstrap/js/src/collapse.js +1 -1
  9. package/assets/bootstrap/js/src/dom/data.js +1 -1
  10. package/assets/bootstrap/js/src/dom/event-handler.js +1 -1
  11. package/assets/bootstrap/js/src/dom/manipulator.js +1 -1
  12. package/assets/bootstrap/js/src/dom/selector-engine.js +1 -1
  13. package/assets/bootstrap/js/src/dropdown.js +3 -12
  14. package/assets/bootstrap/js/src/modal.js +13 -17
  15. package/assets/bootstrap/js/src/offcanvas.js +1 -1
  16. package/assets/bootstrap/js/src/popover.js +1 -1
  17. package/assets/bootstrap/js/src/scrollspy.js +10 -14
  18. package/assets/bootstrap/js/src/tab.js +4 -2
  19. package/assets/bootstrap/js/src/toast.js +4 -9
  20. package/assets/bootstrap/js/src/tooltip.js +50 -32
  21. package/assets/bootstrap/js/src/util/backdrop.js +1 -1
  22. package/assets/bootstrap/js/src/util/component-functions.js +1 -1
  23. package/assets/bootstrap/js/src/util/config.js +1 -1
  24. package/assets/bootstrap/js/src/util/focustrap.js +1 -1
  25. package/assets/bootstrap/js/src/util/index.js +1 -1
  26. package/assets/bootstrap/js/src/util/sanitizer.js +1 -1
  27. package/assets/bootstrap/js/src/util/scrollbar.js +1 -1
  28. package/assets/bootstrap/js/src/util/swipe.js +1 -1
  29. package/assets/bootstrap/js/src/util/template-factory.js +1 -1
  30. package/assets/bootstrap/package.json +27 -28
  31. package/assets/bootstrap/scss/_accordion.scss +4 -7
  32. package/assets/bootstrap/scss/_button-group.scss +1 -1
  33. package/assets/bootstrap/scss/_buttons.scss +7 -28
  34. package/assets/bootstrap/scss/_carousel.scss +3 -0
  35. package/assets/bootstrap/scss/_dropdown.scss +1 -2
  36. package/assets/bootstrap/scss/_functions.scss +2 -2
  37. package/assets/bootstrap/scss/_list-group.scss +5 -6
  38. package/assets/bootstrap/scss/_modal.scss +1 -1
  39. package/assets/bootstrap/scss/_nav.scss +2 -2
  40. package/assets/bootstrap/scss/_navbar.scss +0 -2
  41. package/assets/bootstrap/scss/_offcanvas.scss +4 -5
  42. package/assets/bootstrap/scss/_pagination.scss +1 -1
  43. package/assets/bootstrap/scss/_popover.scss +5 -5
  44. package/assets/bootstrap/scss/_toasts.scss +2 -5
  45. package/assets/bootstrap/scss/_variables-dark.scss +87 -0
  46. package/assets/bootstrap/scss/_variables.scss +17 -18
  47. package/assets/bootstrap/scss/bootstrap-utilities.scss +0 -3
  48. package/assets/bootstrap/scss/forms/_floating-labels.scss +0 -1
  49. package/assets/bootstrap/scss/forms/_input-group.scss +4 -7
  50. package/assets/bootstrap/scss/helpers/_focus-ring.scss +5 -0
  51. package/assets/bootstrap/scss/helpers/_icon-link.scss +25 -0
  52. package/assets/bootstrap/scss/mixins/_banner.scss +2 -2
  53. package/assets/bootstrap/scss/mixins/_color-mode.scss +21 -0
  54. package/assets/bootstrap/scss/mixins/_forms.scss +10 -10
  55. package/assets/bootstrap/scss/mixins/_table-variants.scss +2 -2
  56. package/assets/bootstrap/scss/mixins/_utilities.scss +1 -1
  57. package/assets/css/components/barchart.component.css +1 -1
  58. package/assets/css/components/barchart.component.css.map +1 -1
  59. package/assets/css/components/card.component.css +1 -0
  60. package/assets/css/components/card.component.css.map +1 -0
  61. package/assets/css/components/card.module.css +1 -0
  62. package/assets/css/components/card.module.css.map +1 -0
  63. package/assets/css/components/charts.config.css +1 -1
  64. package/assets/css/components/charts.config.css.map +1 -1
  65. package/assets/css/components/charts.css +1 -1
  66. package/assets/css/components/charts.css.map +1 -1
  67. package/assets/css/components/charts.module.css +1 -1
  68. package/assets/css/components/charts.module.css.map +1 -1
  69. package/assets/css/components/filter-card.component.css +1 -0
  70. package/assets/css/components/filter-card.component.css.map +1 -0
  71. package/assets/css/components/multiselect.preload.css +1 -1
  72. package/assets/css/components/multiselect.preload.css.map +1 -1
  73. package/assets/css/components/record-card.component.css +1 -0
  74. package/assets/css/components/record-card.component.css.map +1 -0
  75. package/assets/css/components/timeline.css +1 -1
  76. package/assets/css/components/timeline.css.map +1 -1
  77. package/assets/css/components/video-card.component.css +1 -0
  78. package/assets/css/components/video-card.component.css.map +1 -0
  79. package/assets/css/core.min.css +1 -1
  80. package/assets/css/core.min.css.map +1 -1
  81. package/assets/css/style.min.css +1 -1
  82. package/assets/css/style.min.css.map +1 -1
  83. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  84. package/assets/js/components/actionbar/actionbar.component.min.js +5 -5
  85. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  86. package/assets/js/components/address-lookup/address-lookup.component.min.js +1 -1
  87. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  88. package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
  89. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  90. package/assets/js/components/barchart/barchart.component.js +2 -0
  91. package/assets/js/components/barchart/barchart.component.min.js +4 -2
  92. package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
  93. package/assets/js/components/card/card.component.js +92 -154
  94. package/assets/js/components/card/card.component.min.js +26 -31
  95. package/assets/js/components/card/card.component.min.js.map +1 -1
  96. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  97. package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
  98. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  99. package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
  100. package/assets/js/components/fileupload/fileupload.component.min.js +1 -1
  101. package/assets/js/components/fileupload/fileupload.component.min.js.map +1 -1
  102. package/assets/js/components/filter-card/filter-card.component.js +71 -0
  103. package/assets/js/components/filter-card/filter-card.component.min.js +27 -0
  104. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -0
  105. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  106. package/assets/js/components/header/header.component.min.js +1 -1
  107. package/assets/js/components/header/header.component.min.js.map +1 -1
  108. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  109. package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
  110. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  111. package/assets/js/components/marketing/marketing.component.min.js.map +1 -1
  112. package/assets/js/components/multiselect/multiselect.component.min.js +1 -1
  113. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  114. package/assets/js/components/nav/nav.component.min.js +1 -1
  115. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  116. package/assets/js/components/notification/notification.component.min.js +1 -1
  117. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  118. package/assets/js/components/pagination/pagination.component.min.js +1 -1
  119. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  120. package/assets/js/components/record-card/record-card.component.js +69 -0
  121. package/assets/js/components/record-card/record-card.component.min.js +27 -0
  122. package/assets/js/components/record-card/record-card.component.min.js.map +1 -0
  123. package/assets/js/components/search/search.component.min.js +1 -1
  124. package/assets/js/components/slider/slider.component.min.js +1 -1
  125. package/assets/js/components/slider/slider.component.min.js.map +1 -1
  126. package/assets/js/components/table/table.component.min.js +2 -2
  127. package/assets/js/components/table/table.component.min.js.map +1 -1
  128. package/assets/js/components/tabs/tabs.component.min.js +1 -1
  129. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  130. package/assets/js/components/video-card/video-card.component.js +176 -0
  131. package/assets/js/components/video-card/video-card.component.min.js +30 -0
  132. package/assets/js/components/video-card/video-card.component.min.js.map +1 -0
  133. package/assets/js/components.bundle.js +5 -0
  134. package/assets/js/components.bundle.js.map +1 -0
  135. package/assets/js/components.js +30 -0
  136. package/assets/js/modules/card.module.js +33 -0
  137. package/assets/js/modules/chart.js +2 -2
  138. package/assets/js/modules/dialogs.js +0 -6
  139. package/assets/js/modules/table.js +1 -1
  140. package/assets/js/scripts.bundle.js +3 -194
  141. package/assets/js/scripts.bundle.js.map +1 -1
  142. package/assets/js/scripts.bundle.min.js +2 -2
  143. package/assets/js/scripts.bundle.min.js.map +1 -1
  144. package/assets/js/scripts.js +17 -0
  145. package/assets/js/tests/filterlist.spec.js +1 -1
  146. package/assets/sass/_components.scss +81 -1
  147. package/assets/sass/_corefiles.scss +4 -10
  148. package/assets/sass/_elements.scss +2 -0
  149. package/assets/sass/components/card.component.scss +229 -0
  150. package/assets/sass/components/card.module.scss +154 -0
  151. package/assets/sass/components/charts.config.scss +3 -0
  152. package/assets/sass/components/charts.module.scss +5 -3
  153. package/assets/sass/components/filter-card.component.scss +106 -0
  154. package/assets/sass/components/multiselect.preload.scss +7 -0
  155. package/assets/sass/components/record-card.component.scss +204 -0
  156. package/assets/sass/components/video-card.component.scss +80 -0
  157. package/assets/sass/components.reset.scss +5 -43
  158. package/assets/sass/elements/badge-tag.scss +5 -1
  159. package/assets/sass/elements/buttons.scss +3 -0
  160. package/assets/sass/elements/dialog.scss +2 -744
  161. package/assets/sass/elements/forms.scss +5 -0
  162. package/assets/sass/elements/media.scss +0 -38
  163. package/assets/sass/elements/modal.scss +553 -0
  164. package/assets/sass/elements/popover.scss +207 -0
  165. package/assets/sass/foundations/reboot.scss +2 -2
  166. package/assets/sass/foundations/root.scss +0 -1
  167. package/assets/ts/components/barchart/barchart.component.ts +2 -0
  168. package/assets/ts/components/card/card.component.ts +94 -192
  169. package/assets/ts/components/filter-card/filter-card.component.ts +81 -0
  170. package/assets/ts/components/record-card/record-card.component.ts +82 -0
  171. package/assets/ts/components/video-card/video-card.component.ts +227 -0
  172. package/assets/ts/components.ts +38 -0
  173. package/assets/ts/modules/card.module.ts +43 -0
  174. package/assets/ts/modules/dialogs.ts +0 -8
  175. package/assets/ts/modules/table.ts +1 -1
  176. package/assets/ts/scripts.ts +22 -0
  177. package/assets/ts/tests/filterlist.spec.ts +1 -1
  178. package/dist/components.es.js +201 -201
  179. package/dist/components.umd.js +76 -81
  180. package/package.json +8 -7
  181. package/src/components/BarChart/BarChart.vue +2 -2
  182. package/src/components/FilterCard/FilterCard.vue +25 -0
  183. package/src/components/RecordCard/RecordCard.vue +25 -0
  184. package/src/components/VideoCard/VideoCard.vue +25 -0
  185. package/assets/css/components/card.css +0 -1
  186. package/assets/css/components/card.css.map +0 -1
  187. package/assets/css/components/card.global.css +0 -1
  188. package/assets/css/components/card.global.css.map +0 -1
  189. package/assets/css/components/card.preload.css +0 -1
  190. package/assets/css/components/card.preload.css.map +0 -1
  191. package/assets/js/bundle.js +0 -74
  192. package/assets/js/dynamic.js +0 -80
  193. package/assets/js/dynamic.min.js +0 -18
  194. package/assets/js/dynamic.min.js.map +0 -1
  195. package/assets/js/flat-components.js +0 -84
  196. package/assets/js/modules/youtubevideo.js +0 -106
  197. package/assets/sass/components/card.global.scss +0 -102
  198. package/assets/sass/components/card.preload.scss +0 -8
  199. package/assets/sass/components/card.scss +0 -606
  200. package/assets/ts/bundle.ts +0 -94
  201. package/assets/ts/components/barchart/README.md +0 -37
  202. package/assets/ts/components/card/README.md +0 -39
  203. package/assets/ts/dynamic.ts +0 -107
  204. package/assets/ts/flat-components.ts +0 -106
  205. package/assets/ts/modules/youtubevideo.ts +0 -141
  206. package/src/foundations/YoutubeVideo/README.md +0 -11
  207. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +0 -24
@@ -1,606 +0,0 @@
1
- @use "../_func.scss" as *;
2
-
3
- // #region Default card
4
- .card {
5
- --card-icon-right: 1rem;
6
- box-shadow: var(--card-box-shadow);
7
- border-radius: var(--card-border-radius);
8
- position: relative;
9
- font-weight: bold;
10
- font-size: rem(18);
11
- line-height: rem(24);
12
- color: var(--colour-primary);
13
- min-height: 100%;
14
- width: 100%;
15
- text-align: left;
16
- display: flex;
17
- flex-direction: column;
18
- overflow: hidden;
19
- z-index: 0;
20
- background: var(--colour-canvas-2);
21
- outline: 2px solid var(--outline-colour,--colour-canvas-2);
22
- outline-offset: -2px;
23
-
24
- > *:not(.btn-compact) {
25
- min-width: 100%;
26
- }
27
-
28
- &.border-0 {
29
- box-shadow: none;
30
- --card-left-padding: 0rem;
31
- outline-offset: 1px!important;
32
- }
33
-
34
- &__body {
35
- position: relative;
36
- padding: var(--card-top-padding) var(--card-right-padding) 0 var(--card-left-padding);
37
- z-index: -1;
38
- }
39
-
40
- &__footer {
41
- margin-top: auto;
42
- padding: 0 var(--card-right-padding) var(--card-bottom-padding) var(--card-left-padding);
43
- }
44
-
45
- &:is(:hover,:focus) {
46
- .link:after {
47
- width: 50%;
48
- }
49
- }
50
-
51
- &:has(.card__footer .link) {
52
- &:before,
53
- &:after {
54
- display: none;
55
- }
56
- }
57
-
58
- &:not(:has(.dialog__wrapper)){
59
-
60
- &:before,
61
- &:after {
62
- content: "";
63
- position: absolute;
64
- right: var(--card-icon-right);
65
- bottom: var(--card-bottom-padding);
66
- height: rem(24);
67
- width: rem(24);
68
- background: var(--colour-warning);
69
- border-radius: 50%;
70
- }
71
-
72
- &:after {
73
- background: var(--colour-primary-theme);
74
- mask-image: var(--icon,var(--icon-arrow));
75
- mask-size: 50%;
76
- mask-repeat: no-repeat;
77
- mask-position: 50% 50%;
78
- -webkit-mask-image: var(--icon,var(--icon-arrow));
79
- -webkit-mask-size: 50%;
80
- -webkit-mask-repeat: no-repeat;
81
- -webkit-mask-position: 50% 50%;
82
- z-index: 2;
83
- }
84
-
85
- &:is(:hover,:focus,.hover) {
86
- --hover-outline-colour-default: var(--colour, var(--colour-primary));
87
- outline: 2px solid var(--hover-outline-colour, var(--hover-outline-colour-default));
88
- outline-offset: -2px;
89
- }
90
-
91
- // Update arrow cololur
92
- &:not([class*="colour-"]):is(:hover,:focus,.hover,:active, .active) {
93
-
94
- &:before {
95
- background: var(--hover-icon-bg, var(--colour-primary-theme));
96
- }
97
- &:after {
98
- background: var(--hover-icon-colour, #ffffff);
99
- }
100
- }
101
-
102
- &:is(:active, .active){
103
- --card-icon-right: var(--card-icon-right-overide,0.5rem);
104
- outline: none;
105
- }
106
-
107
- &:is(:active){
108
- background: #FCFCFC;
109
- }
110
-
111
- }
112
-
113
- span{
114
- display: block;
115
- font-weight: bold;
116
- padding-top: rem(24);
117
- font-size: rem(16);
118
- }
119
-
120
- &:has(.card__illustration) .card__body {
121
-
122
- align-items: center;
123
- display: flex;
124
-
125
- .card__illustration {
126
- height: rem(64);
127
- width: rem(64);
128
- margin-right: rem(24);
129
- margin-top: rem(-20);
130
- margin-bottom: rem(-20);
131
- position: relative;
132
-
133
- img {
134
- position: absolute;
135
- top: 0;
136
- left: 0;
137
- width: 100%;
138
- height: 100%;
139
- object-fit: contain;
140
- }
141
- }
142
- }
143
-
144
-
145
- .card__total {
146
- font-size: rem(48);
147
- line-height: rem(48);
148
- padding-right: rem(16);
149
- margin-top: 0.5rem;
150
- }
151
-
152
- &.card--has-icon:not(.card--secondary):not(.card--filter) {
153
- display: flex;
154
- align-items: center;
155
-
156
- &:before,
157
- &:after {
158
- top: calc(50% - 0.75rem);
159
- bottom: auto;
160
- }
161
- }
162
-
163
- &.card--has-icon:not(.card--secondary):not(.card--filter) .card__body {
164
- padding-left: 4rem;
165
- margin-block: auto;
166
- padding-bottom: var(--card-bottom-padding);
167
- }
168
- &.card--has-icon:not(.card--secondary):not(.card--filter) .card__footer {
169
- padding: 0;
170
- display: none;
171
- }
172
- }
173
-
174
- ::slotted(i){
175
- font-size: rem(24)!important;
176
- margin: -3px var(--card-icon-right) 0 0!important;
177
- vertical-align: middle!important;
178
- }
179
- ::slotted(i:not(.fa-light):not(.fa-bold)){
180
- font-weight: 400!important;
181
- }
182
-
183
- ::slotted(span:not(.badge)){
184
- display: block!important;
185
- font-weight: normal!important;
186
- font-size: rem(16)!important;
187
- }
188
- ::slotted(small){
189
- padding-top: rem(16)!important;
190
- display: block!important;
191
- font-weight: normal!important;
192
- padding-bottom: 0!important;
193
- color: var(--colour-body);
194
- }
195
- ::slotted(span:not(.badge):not([class*="pt-"])){
196
- padding-top: rem(24)!important;
197
- }
198
- // #endregion
199
-
200
- // #region card bages
201
- .card__head .card__badges {
202
-
203
- position: absolute;
204
- top: 1rem;
205
- text-align: left;
206
- left: 1rem;
207
- z-index: 9;
208
- }
209
-
210
- .card__body .card__badges.card__badges--inline {
211
-
212
- margin-top: -1rem;
213
- min-height: 1rem;
214
- }
215
- .card__body .card__badges:not(.card__badges--inline) {
216
-
217
- position: absolute;
218
- top: 0.5rem;
219
- text-align: left;
220
- right: 0.75rem;
221
- z-index: 9;
222
- }
223
-
224
- // #endregion
225
-
226
- // #region border left
227
- .card[class*="colour-"],
228
- .card--filter {
229
-
230
- border-left: rem(12) solid var(--colour,var(--colour-primary));
231
- }
232
- // #endregion
233
-
234
- //#region Filter card
235
- .card--filter {
236
- --top-padding: #{rem(24)};
237
- --right-padding: 1rem;
238
- --bottom-padding: #{rem(24)};
239
- --left-padding: 1rem;
240
-
241
- //border-left: rem(12) solid var(--colour,var(--colour-primary));
242
-
243
- &:has(.card__total) .card__body{
244
-
245
- align-items: center;
246
- display: flex;
247
- }
248
-
249
- &:before,
250
- &:after {
251
- display: none;
252
- }
253
-
254
- &:is(:hover,:focus,.hover) {
255
- outline: none;
256
-
257
- :is(.card__body,.card__footer) {
258
- background: #EEEEEE;
259
- }
260
- }
261
-
262
- &:is(:checked, .checked,:active, .active){
263
- outline: 2px solid var(--colour,var(--colour-primary));
264
- outline-offset: -2px;
265
-
266
- .card__body {
267
- background: none;
268
- }
269
- .card__footer {
270
- background: none;
271
- }
272
- }
273
-
274
- &.card--has-icon {
275
- --bottom-padding: #{rem(16)};
276
- border: none;
277
- }
278
-
279
- .icon {
280
- font-size: rem(18)!important;
281
- height: rem(18)!important;
282
- margin: 0 0 0.5rem 0!important;
283
- font-weight: 400!important;
284
- display: block!important;
285
- }
286
-
287
- .card__total {
288
- margin-top: 0;
289
- order: -1;
290
- }
291
- }
292
-
293
- @include dark-mode() {
294
- .card--filter {
295
-
296
- .card__body {
297
- background: none!important;
298
- }
299
-
300
- &:is(:hover,:focus,.hover, :active, .active):not(:checked,.checked){
301
- outline: 2px solid var(--colour, var(--colour-primary))!important;
302
- outline-offset: -2px;
303
- }
304
- }
305
- }
306
-
307
- .card--filter ::slotted(i) {
308
- display: block !important;
309
- font-size: rem(18)!important;
310
- margin: 0 0 0.5rem 0!important;
311
- }
312
- // #endregion
313
-
314
- // #region card with an image
315
- .card:has(.card__head) {
316
- .card__head {
317
- padding-bottom: 0;
318
- padding-top: var(--img-height, 27%);
319
- position: relative;
320
- overflow: hidden;
321
- background: rgba(0,0,0,0.1);
322
- z-index: -1;
323
-
324
- > img {
325
- position: absolute;
326
- top: 0;
327
- left: 0;
328
- width: 102%;
329
- height: 102%;
330
- object-fit: cover;
331
- }
332
- }
333
- }
334
-
335
- .card.card--lg-image:has(.card__head) .card__head{
336
-
337
- padding-top: 55%;
338
- }
339
- // #endregion
340
-
341
-
342
- :host([data-selected]) .card {
343
- //background-color: yellow!important;
344
-
345
- &:before,
346
- &:after {
347
- display: none!important;
348
- }
349
- }
350
-
351
- // #region card with a flag
352
- :host(.card--flag) {
353
- position: relative;
354
-
355
- &:after {
356
- content: "\f024";
357
- font-family: "Font Awesome 6 Pro";
358
- position: absolute;
359
- top: 1rem;
360
- right: 1rem;
361
- font-size: rem(16);
362
- line-height: 1;
363
- height: rem(16);
364
- width: rem(16);
365
- display: inline-block;
366
- font-weight: normal;
367
- color: var(--colour, var(--colour-primary));
368
- }
369
- }
370
- // #endregion
371
-
372
-
373
- //#region Dashboard card
374
- .card--secondary {
375
-
376
- --card-top-padding: #{rem(16)};
377
- --card-bottom-padding: #{rem(24)};
378
-
379
- &:before,
380
- &:after {
381
- display: none;
382
- }
383
- }
384
-
385
- .card--secondary .btn-compact {
386
- position: absolute;
387
- top: 0;
388
- right: 0;
389
- margin: 0.5rem 0.5rem 0 0;
390
- z-index: 99;
391
- }
392
-
393
- // For docs
394
- .card--secondary.secondary-hover {
395
-
396
- outline: 2px solid var(--colour, var(--colour-primary));
397
- outline-offset: -2px;
398
-
399
- .btn-compact {
400
- background-color: var(--colour);
401
- color: var(--colour-primary-theme);
402
- border-color: rgba(0, 0, 0, 0) !important;
403
- }
404
- }
405
-
406
- .card--secondary:has(.btn-compact:is(:hover, :focus, :active)) {
407
-
408
- .btn-compact {
409
- pointer-events: all;
410
- }
411
- }
412
-
413
- .card--secondary ::slotted(i) {
414
- display: block !important;
415
- font-size: rem(40)!important;
416
- margin: 0.5rem 0 0.5rem 0!important;
417
- line-height: rem(40);
418
- }
419
- // #endregion
420
-
421
- //#region Record card
422
-
423
-
424
-
425
- .card--record:has(.card__head) {
426
- --img-height: 40%;
427
-
428
- &:before,
429
- &:after {
430
- display: none;
431
- }
432
-
433
- .card__head {
434
- background: transparent;
435
- position: relative;
436
-
437
- }
438
- }
439
-
440
- :host([data-record="business"]) {
441
- --record-icon: '\f54f';
442
- --record-colour: var(--wider-colour-2);
443
- }
444
- :host([data-record="page"]) {
445
- --record-icon: '\f15c';
446
- --record-colour: var(--wider-colour-3);
447
- }
448
- :host([data-record="contact"]) {
449
- --record-icon: "\f2b9";
450
- --record-colour: var(--wider-colour-4);
451
- }
452
- :host([data-record="lettings"]) {
453
- --record-icon: "";
454
- --record-icon-font: Font Awesome Kit;
455
- --record-colour: var(--wider-colour-5);
456
- }
457
-
458
- :host([data-record="sales"]) {
459
- --record-icon: "";
460
- --record-icon-font: Font Awesome Kit;
461
- --record-colour: var(--wider-colour-7);
462
- }
463
- :host([data-record="landlord"]) {
464
- --record-icon: "";
465
- --record-icon-font: Font Awesome Kit;
466
- --record-colour: var(--wider-colour-8);
467
- }
468
-
469
- :host([data-record="contractor"]) {
470
- --record-icon: "\f82c";
471
- --record-colour: var(--wider-colour-9);
472
- }
473
-
474
- :host([data-record="vendor"]) {
475
- --record-icon: "";
476
- --record-icon-font: Font Awesome Kit;
477
- --record-colour: var(--wider-colour-13);
478
- }
479
-
480
- :host([data-record="tenant"]) {
481
- --record-icon: "\e1b0";
482
- --record-colour: var(--wider-colour-6);
483
- }
484
- :host([data-record="sales-applicant"]) {
485
- --record-icon: "";
486
- --record-icon-font: Font Awesome Kit;
487
- --record-colour: var(--wider-colour-10);
488
- }
489
-
490
- :host([data-record]) .card--record:has(.card__head) {
491
-
492
- .card__head {
493
- background: transparent;
494
- position: relative;
495
-
496
- &:before {
497
- font-family: var(--record-icon-font,"Font Awesome 6 Pro");
498
- font-weight: normal;
499
- font-size: rem(24);
500
- content: var(--record-icon);
501
- display: block;
502
- position: absolute;
503
- top: auto;
504
- left: 50%;
505
- bottom: 0;
506
- background-color: var(--record-colour);
507
- border-radius: 50%;
508
- height: rem(64);
509
- line-height: rem(64);
510
- width: rem(64);
511
- text-align: center;
512
- transform: translate(-50%,0);
513
- }
514
-
515
- }
516
- }
517
-
518
-
519
- slot[name="btns"] {
520
- display: flex;
521
- flex-direction: row;
522
- flex-wrap: nowrap;
523
- justify-content: flex-end;
524
- margin-right: calc(var(--card-right-padding) * -1);
525
-
526
- margin-bottom: calc(var(--card-bottom-padding) * -1);
527
- padding-right: 1rem;
528
- padding-bottom: 1rem;
529
-
530
- pointer-events: none;
531
- }
532
-
533
- ::slotted([slot="btns"]){
534
-
535
- pointer-events: all;
536
- margin: 0!important;
537
- }
538
-
539
- //#endregion
540
-
541
- .dialog__wrapper {
542
- position: absolute;
543
- right: 1rem;
544
- bottom: 2rem;
545
- min-width: 3rem !important;
546
- left: auto;
547
- z-index: 999;
548
-
549
- > dialog {
550
-
551
- display: var(--menu-display, none);
552
- position: fixed;
553
- top: anchor(top);
554
- position-anchor: --anchor-el;
555
- left: anchor(right);
556
- right: auto;
557
- margin: 0 0 0 #{rem(4)};
558
- padding: rem(16);
559
-
560
-
561
- &::backdrop {
562
- display: none;
563
- }
564
- }
565
-
566
- > dialog:popover-open {
567
-
568
- display: block!important;
569
- }
570
-
571
- &:has(dialog:popover-open) > button {
572
- background-color: var(--colour);
573
- }
574
-
575
- > button {
576
- margin: 0;
577
- anchor-name: --anchor-el;
578
-
579
- &:not(:hover,:focus,:focus-within,:active){
580
-
581
- background: var(--ellipsis-bg);
582
- }
583
- }
584
- }
585
- ::slotted([slot="actions"]){
586
- border: none !important;
587
- margin: 0 !important;
588
- display: block!important;
589
- width: fit-content;
590
- }
591
- ::slotted([slot="primary-action"]){
592
- overflow: hidden;
593
- background-color: transparent;
594
- text-indent: -300%;
595
- position: absolute!important;
596
- inset: 0;
597
- margin: 0!important;
598
- z-index: 99;
599
- border: none;
600
- }
601
- ::slotted([slot="primary-action"]:is(:hover,:focus,.hover)) {
602
- --hover-outline-colour-default: var(--colour, var(--colour-primary));
603
- outline: 2px solid var(--hover-outline-colour, var(--hover-outline-colour-default));
604
- outline-offset: -2px;
605
- border-radius: var(--card-border-radius)!important;
606
- }
@@ -1,94 +0,0 @@
1
- // @ts-nocheck
2
- // Modules
3
- import * as helpers from '../js/modules/helpers'
4
- import extendDialogs from '../js/modules/dialogs'
5
- import createDataLayer from '../js/modules/data-layer'
6
- import extendInputs from '../js/modules/inputs';
7
- import nav from '../js/modules/nav'
8
- import testimonial from '../js/modules/testimonial'
9
- import carousel from '../js/modules/carousel'
10
- import form from '../js/modules/form'
11
- import youtubeVideo from '../js/modules/youtubevideo'
12
- import iamHeader from './components/header/header.component'
13
- import iamAccordion from './components/accordion/accordion.component'
14
- import iamTabs from './components/tabs/tabs.component'
15
- import iamTable from './components/table/table.component'
16
- import iamCard from './components/card/card.component'
17
- import iamAppliedFilters from './components/applied-filters/applied-filters.component'
18
- import iamPagination from './components/pagination/pagination.component'
19
- import iamFilterlist from './components/filterlist/filterlist.component'
20
- import iamNotification from './components/notification/notification.component'
21
-
22
- // Attach classes to dom elements
23
- document.addEventListener("DOMContentLoaded", function() {
24
-
25
- createDataLayer();
26
- // Global stuff
27
- helpers.addBodyClasses(document.body);
28
- helpers.addGlobalEvents(document.body);
29
- extendDialogs(document.body);
30
- extendInputs(document.body);
31
- //helpers.checkElements(document.body);
32
-
33
- if (!window.customElements.get(`iam-header`))
34
- window.customElements.define(`iam-header`, iamHeader);
35
-
36
- if (!window.customElements.get(`iam-accordion`))
37
- window.customElements.define(`iam-accordion`, iamAccordion);
38
-
39
- if (!window.customElements.get(`iam-tabs`))
40
- window.customElements.define(`iam-tabs`, iamTabs);
41
-
42
- if (!window.customElements.get(`iam-table`))
43
- window.customElements.define(`iam-table`, iamTable);
44
-
45
- if (!window.customElements.get(`iam-card`))
46
- window.customElements.define(`iam-card`, iamCard);
47
-
48
- if (!window.customElements.get(`iam-filterlist`))
49
- window.customElements.define(`iam-filterlist`, iamFilterlist);
50
-
51
- if (!window.customElements.get(`iam-pagination`))
52
- window.customElements.define(`iam-pagination`, iamPagination);
53
-
54
- if (!window.customElements.get(`iam-applied-filters`))
55
- window.customElements.define(`iam-applied-filters`, iamAppliedFilters);
56
-
57
- if (!window.customElements.get(`iam-notification`))
58
- window.customElements.define(`iam-notification`, iamNotification);
59
-
60
- // ANav
61
- Array.from(document.querySelectorAll('.nav')).forEach((arrayElement) => {
62
- nav(arrayElement);
63
- });
64
-
65
-
66
-
67
- // Testimonial
68
- Array.from(document.querySelectorAll('.testimonial')).forEach((arrayElement) => {
69
- testimonial(arrayElement);
70
- });
71
- // Carousel
72
- Array.from(document.querySelectorAll('.carousel')).forEach((arrayElement) => {
73
- carousel(arrayElement);
74
- });
75
- // Form
76
- Array.from(document.querySelectorAll('form')).forEach((arrayElement) => {
77
- form(arrayElement);
78
- });
79
- // YouTube videos
80
- Array.from(document.querySelectorAll('.youtube-embed')).forEach((arrayElement) => {
81
- new youtubeVideo(arrayElement);
82
- });
83
-
84
-
85
- window.addEventListener('hashchange', function() {
86
-
87
- const hash = location.hash.replace('#','');
88
- const label = document.querySelector(`label[for="${hash}"]`);
89
-
90
- if (label instanceof HTMLElement)
91
- label.click();
92
-
93
- }, false);
94
- });