@iamproperty/components 7.5.1--beta6 → 7.5.1--beta7

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 (187) hide show
  1. package/assets/css/components/actionbar.component.css +1 -1
  2. package/assets/css/components/actionbar.component.css.map +1 -1
  3. package/assets/css/components/address-lookup.component.css +1 -1
  4. package/assets/css/components/address-lookup.component.css.map +1 -1
  5. package/assets/css/components/applied-filters.css +1 -1
  6. package/assets/css/components/applied-filters.css.map +1 -1
  7. package/assets/css/components/calendar.component.css +1 -1
  8. package/assets/css/components/calendar.component.css.map +1 -1
  9. package/assets/css/components/card.component.css +1 -1
  10. package/assets/css/components/card.component.css.map +1 -1
  11. package/assets/css/components/fileupload.css +1 -1
  12. package/assets/css/components/fileupload.css.map +1 -1
  13. package/assets/css/components/input-range.component.css +1 -0
  14. package/assets/css/components/input-range.component.css.map +1 -0
  15. package/assets/css/components/input.component.css +1 -0
  16. package/assets/css/components/input.component.css.map +1 -0
  17. package/assets/css/components/modal.component.css +1 -0
  18. package/assets/css/components/modal.component.css.map +1 -0
  19. package/assets/css/components/multi-step-modal.component.css +1 -0
  20. package/assets/css/components/multi-step-modal.component.css.map +1 -0
  21. package/assets/css/components/multi-step-modal.global.css +1 -0
  22. package/assets/css/components/multi-step-modal.global.css.map +1 -0
  23. package/assets/css/components/multiselect.css +1 -1
  24. package/assets/css/components/multiselect.css.map +1 -1
  25. package/assets/css/components/nav.component.css +1 -1
  26. package/assets/css/components/nav.component.css.map +1 -1
  27. package/assets/css/components/pagination.css +1 -1
  28. package/assets/css/components/pagination.css.map +1 -1
  29. package/assets/css/components/password.component.css +1 -0
  30. package/assets/css/components/password.component.css.map +1 -0
  31. package/assets/css/components/slider.css +1 -1
  32. package/assets/css/components/slider.css.map +1 -1
  33. package/assets/css/components/tabs.component.css +1 -1
  34. package/assets/css/components/tabs.component.css.map +1 -1
  35. package/assets/css/components/tabs.config.css +1 -1
  36. package/assets/css/components/tabs.config.css.map +1 -1
  37. package/assets/css/core.min.css +1 -1
  38. package/assets/css/core.min.css.map +1 -1
  39. package/assets/css/mobile-core.min.css +1 -1
  40. package/assets/css/mobile-core.min.css.map +1 -1
  41. package/assets/css/mobile.min.css +1 -1
  42. package/assets/css/mobile.min.css.map +1 -1
  43. package/assets/css/style.min.css +1 -1
  44. package/assets/css/style.min.css.map +1 -1
  45. package/assets/js/components/accordion/accordion.component.js +1 -1
  46. package/assets/js/components/accordion/accordion.component.min.js +3 -3
  47. package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
  48. package/assets/js/components/actionbar/actionbar.component.js +2 -4
  49. package/assets/js/components/actionbar/actionbar.component.min.js +4 -4
  50. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  51. package/assets/js/components/address-lookup/address-lookup.component.js +45 -0
  52. package/assets/js/components/address-lookup/address-lookup.component.min.js +12 -4
  53. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  54. package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
  55. package/assets/js/components/applied-filters/applied-filters.component.js +0 -2
  56. package/assets/js/components/applied-filters/applied-filters.component.min.js +5 -7
  57. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  58. package/assets/js/components/barchart/barchart.component.min.js +1 -1
  59. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  60. package/assets/js/components/calendar/calendar.component.min.js +5 -5
  61. package/assets/js/components/card/card.component.min.js +8 -8
  62. package/assets/js/components/card/card.component.min.js.map +1 -1
  63. package/assets/js/components/carousel/carousel.component.min.js +1 -1
  64. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  65. package/assets/js/components/content/content.component.min.js +1 -1
  66. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  67. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +1 -1
  68. package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
  69. package/assets/js/components/filter-card/filter-card.component.js +19 -0
  70. package/assets/js/components/filter-card/filter-card.component.min.js +4 -4
  71. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
  72. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  73. package/assets/js/components/header/header.component.min.js +1 -1
  74. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  75. package/assets/js/components/input/input.component.js +128 -0
  76. package/assets/js/components/input/input.component.min.js +16 -0
  77. package/assets/js/components/input/input.component.min.js.map +1 -0
  78. package/assets/js/components/input-range/input-range.component.js +62 -0
  79. package/assets/js/components/input-range/input-range.component.min.js +14 -0
  80. package/assets/js/components/input-range/input-range.component.min.js.map +1 -0
  81. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  82. package/assets/js/components/menu/menu.component.min.js +1 -1
  83. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  84. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  85. package/assets/js/components/modal/modal.component.js +141 -0
  86. package/assets/js/components/modal/modal.component.min.js +28 -0
  87. package/assets/js/components/modal/modal.component.min.js.map +1 -0
  88. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  89. package/assets/js/components/multi-step-modal/multi-step-modal.component.js +233 -0
  90. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +17 -0
  91. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -0
  92. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  93. package/assets/js/components/nav/nav.component.min.js +5 -5
  94. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  95. package/assets/js/components/notification/notification.component.min.js +1 -1
  96. package/assets/js/components/pagination/pagination.component.min.js +3 -3
  97. package/assets/js/components/password/password.component.js +93 -0
  98. package/assets/js/components/password/password.component.min.js +17 -0
  99. package/assets/js/components/password/password.component.min.js.map +1 -0
  100. package/assets/js/components/rank/rank.component.min.js +1 -1
  101. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  102. package/assets/js/components/record-card/record-card.component.min.js +4 -4
  103. package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
  104. package/assets/js/components/search/search.component.min.js +1 -1
  105. package/assets/js/components/slider/slider.component.min.js +3 -3
  106. package/assets/js/components/split-button/split-button.component.min.js +1 -1
  107. package/assets/js/components/std-address-lookup/std-address-lookup.component.js +2 -0
  108. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +18 -8
  109. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  110. package/assets/js/components/table/table.component.min.js +3 -3
  111. package/assets/js/components/table/table.component.min.js.map +1 -1
  112. package/assets/js/components/table-ajax/table-ajax.component.min.js +4 -4
  113. package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
  114. package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
  115. package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
  116. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
  117. package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
  118. package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
  119. package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
  120. package/assets/js/components/tabs/tabs.component.min.js +2 -2
  121. package/assets/js/components/video-card/video-card.component.min.js +4 -4
  122. package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
  123. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  124. package/assets/js/modules/applied-filters.js +78 -61
  125. package/assets/js/modules/card.module.js +6 -1
  126. package/assets/js/modules/dialogs.js +6 -2
  127. package/assets/js/modules/password.js +72 -0
  128. package/assets/js/modules/table.js +10 -6
  129. package/assets/js/scripts.bundle.js +2 -3
  130. package/assets/js/scripts.bundle.js.map +1 -1
  131. package/assets/js/scripts.bundle.min.js +2 -2
  132. package/assets/js/scripts.bundle.min.js.map +1 -1
  133. package/assets/js/scripts.js +0 -2
  134. package/assets/sass/_components.scss +2 -0
  135. package/assets/sass/_elements.scss +2 -0
  136. package/assets/sass/components/actionbar.component.scss +1 -0
  137. package/assets/sass/components/address-lookup.component.scss +20 -0
  138. package/assets/sass/components/applied-filters.scss +10 -14
  139. package/assets/sass/components/input-range.component.scss +38 -0
  140. package/assets/sass/components/input.component.scss +102 -0
  141. package/assets/sass/components/modal.component.scss +269 -0
  142. package/assets/sass/components/multi-step-modal.component.scss +255 -0
  143. package/assets/sass/components/multi-step-modal.global.scss +92 -0
  144. package/assets/sass/components/password.component.scss +60 -0
  145. package/assets/sass/components/tabs.config.scss +2 -2
  146. package/assets/sass/elements/badge-tag.scss +0 -1
  147. package/assets/sass/elements/details.scss +12 -7
  148. package/assets/sass/elements/dialog.scss +46 -5
  149. package/assets/sass/elements/forms.scss +41 -177
  150. package/assets/sass/elements/hr.scss +1 -1
  151. package/assets/sass/elements/modal.scss +19 -21
  152. package/assets/sass/elements/prefix.scss +115 -0
  153. package/assets/ts/components/accordion/accordion.component.ts +1 -1
  154. package/assets/ts/components/actionbar/actionbar.component.ts +3 -10
  155. package/assets/ts/components/address-lookup/address-lookup.component.ts +60 -0
  156. package/assets/ts/components/applied-filters/applied-filters.component.ts +0 -2
  157. package/assets/ts/components/filter-card/filter-card.component.ts +27 -0
  158. package/assets/ts/components/input/input.component.ts +168 -0
  159. package/assets/ts/components/input-range/input-range.component.ts +78 -0
  160. package/assets/ts/components/modal/modal.component.ts +188 -0
  161. package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +304 -0
  162. package/assets/ts/components/password/password.component.ts +118 -0
  163. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +2 -1
  164. package/assets/ts/modules/applied-filters.ts +107 -71
  165. package/assets/ts/modules/card.module.ts +9 -4
  166. package/assets/ts/modules/dialogs.ts +6 -2
  167. package/assets/ts/modules/password.ts +82 -0
  168. package/assets/ts/modules/table.ts +13 -6
  169. package/assets/ts/scripts.ts +2 -2
  170. package/dist/components.es.js +641 -959
  171. package/dist/components.umd.js +275 -182
  172. package/package.json +2 -2
  173. package/src/components/Input/Input.vue +19 -363
  174. package/src/components/InputRange/InputRange.vue +22 -0
  175. package/src/components/Modal/Modal.vue +22 -0
  176. package/src/components/MultiStepModal/MultiStepModal.vue +23 -0
  177. package/src/components/{PasswordIndicator/PasswordIndicator.vue → Password/Password.vue} +23 -23
  178. package/assets/js/components/password-indicator/password-indicator.component.js +0 -19
  179. package/assets/js/components/password-indicator/password-indicator.component.min.js +0 -7
  180. package/assets/js/components/password-indicator/password-indicator.component.min.js.map +0 -1
  181. package/assets/js/modules/form.js +0 -125
  182. package/assets/js/modules/inputs.js +0 -151
  183. package/assets/js/modules/password-indicator.js +0 -21
  184. package/assets/ts/components/password-indicator/password-indicator.component.ts +0 -24
  185. package/assets/ts/modules/form.ts +0 -166
  186. package/assets/ts/modules/inputs.ts +0 -181
  187. package/assets/ts/modules/password-indicator.ts +0 -29
@@ -0,0 +1,102 @@
1
+ @use '../func' as *;
2
+ @use '../elements/prefix.scss' as *;
3
+
4
+ *,
5
+ *::before,
6
+ *::after {
7
+ box-sizing: border-box;
8
+ }
9
+
10
+ .wrapper {
11
+ display: flex;
12
+ margin-top: 0.5rem;
13
+ }
14
+
15
+ :host {
16
+ display: block;
17
+ max-width: var(--input-max-width, 50rem);
18
+ }
19
+
20
+ :host(:not(.mb-0)) {
21
+ //margin-bottom: 1.5rem;
22
+ }
23
+
24
+ ::slotted(input) {
25
+ margin: 0!important;
26
+ }
27
+
28
+ ::slotted(input.has-prefix) {
29
+ margin: 0!important;
30
+ border-start-start-radius: 0!important;
31
+ border-end-start-radius: 0!important;
32
+ }
33
+
34
+ ::slotted(input.has-suffix) {
35
+ border-start-end-radius: 0!important;
36
+ border-end-end-radius: 0!important;
37
+ }
38
+
39
+ // #region colors
40
+ ::slotted(input[type='color']) {
41
+ width: 3rem !important;
42
+ flex-shrink: 0 !important;
43
+ flex-grow: 0 !important;
44
+ border-start-end-radius: 0 !important;
45
+ border-end-end-radius: 0 !important;
46
+ padding: 0 !important;
47
+ overflow: hidden;
48
+ }
49
+
50
+ ::slotted(input[type='color'])::-webkit-color-swatch{
51
+ border-radius: 0;
52
+ border: none;
53
+ }
54
+
55
+ ::slotted(output) {
56
+ border-left: none !important;
57
+ border-end-start-radius: 0 !important;
58
+ border-start-start-radius: 0 !important;
59
+ margin: 0 !important;
60
+ }
61
+ // #endregion
62
+
63
+ // #region
64
+ @layer elements {
65
+ ::slotted(select:is([slot="prefix"],[slot="suffix"])){
66
+
67
+ --option-colour: red;
68
+
69
+ //--input-padding-block: 0;
70
+
71
+ margin: 0!important;
72
+
73
+ padding-top: 0!important;
74
+ padding-left: 0.25rem!important;
75
+ padding-bottom: 0!important;
76
+ padding-right: 2rem!important;
77
+
78
+ margin-right: 0rem !important;
79
+ border: none !important;
80
+ //color: white;
81
+ height: 100%!important;
82
+ max-height: 100%!important;
83
+ min-height: 100%!important;
84
+
85
+ $form-select-indicator-new: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m2 5 6 6 6-6'/></svg>") !default;
86
+
87
+ background: escape-svg($form-select-indicator-new)!important;
88
+ background-position: center right!important;
89
+ background-size: 1.25rem!important;
90
+ background-repeat: no-repeat!important;
91
+ background-color: var(--colour-primary)!important;
92
+ color: var(--colour-white)!important;
93
+
94
+ field-sizing: content!important;
95
+ }
96
+ }
97
+ // #endregion
98
+
99
+
100
+ .suffix[role="button"] {
101
+ cursor: pointer;
102
+ }
@@ -0,0 +1,269 @@
1
+ @use '../_func.scss' as *;
2
+ @use '../elements/dialog.scss' as *;
3
+ @use '../elements/buttons.scss' as *;
4
+
5
+ :host{
6
+
7
+ overscroll-behavior: contain;
8
+
9
+ display: block;
10
+ container-type: inline-size;
11
+
12
+ }
13
+
14
+ ::slotted(dialog) {
15
+ display: contents!important;
16
+ }
17
+
18
+ ::slotted(button) {
19
+ margin: 0!important;
20
+ }
21
+
22
+ dialog[open] {
23
+ //overflow-y: hidden;
24
+ width: 90vw;
25
+ max-width: rem(324); // col-width*4
26
+
27
+ //height: 90vh;
28
+ max-height: min(90vh, #{rem(752)});
29
+ overscroll-behavior: contain;
30
+ overflow-y: hidden;
31
+
32
+ @include media-breakpoint-up(sm, $mobileOnly) {
33
+ --dialog-padding: #{rem(32)};
34
+ min-width: rem(335);
35
+ width: fit-content;
36
+ max-width: rem(686);
37
+ }
38
+
39
+ @include media-breakpoint-up(md, $mobileOnly) {
40
+ min-width: rem(454);
41
+ width: fit-content;
42
+ max-width: rem(736);
43
+ }
44
+
45
+ &::before {
46
+ content: "";
47
+ top: 0.75rem;
48
+ bottom: auto;
49
+ left: 0;
50
+ right: 6px;
51
+ height: calc(var(--dialog-padding) - 0.75rem);
52
+ position: absolute;
53
+ display: block;
54
+ background: linear-gradient(0deg, transparent 0%, var(--colour-canvas-2) 100%);
55
+ z-index: 2;
56
+ }
57
+
58
+ &::after {
59
+ content: "";
60
+ top: auto;
61
+ bottom: 0.75rem;
62
+ left: 0;
63
+ right: 6px;
64
+ height: calc(var(--dialog-padding) - 0.75rem);
65
+ position: absolute;
66
+ display: block;
67
+ background: linear-gradient(180deg, transparent 0%, var(--colour-canvas-2) 100%);
68
+ z-index: 2;
69
+ }
70
+
71
+ .scroll {
72
+ margin-inline: calc(var(--dialog-padding) * -1);
73
+ margin-block: calc(calc(var(--dialog-padding) - 0.75rem) * -1);
74
+ padding-inline: var(--dialog-padding);
75
+ padding-block: calc(var(--dialog-padding) - 0.75rem);
76
+ height: 100%;
77
+ max-height: 100%;
78
+ overflow: auto;
79
+ overscroll-behavior: contain;
80
+ position: relative;
81
+ z-index: 1;
82
+
83
+ .fa-circle {
84
+ display: none;
85
+ }
86
+ }
87
+
88
+
89
+ // Close button
90
+ > button:first-child {
91
+
92
+ position: absolute;
93
+ top: calc(var(--dialog-padding) - 0.75rem);
94
+ right: 6px;
95
+ z-index: var(--index-floating);
96
+ margin: 0;
97
+
98
+ &:not(:hover,:focus,:active){
99
+ background-color: Canvas;
100
+ }
101
+
102
+ @container (min-width: 36em) {
103
+ right: calc(var(--dialog-padding) - 0.75rem);
104
+ }
105
+
106
+ }
107
+
108
+
109
+ &:has(.youtube-embed) {
110
+ padding: 0 !important;
111
+ }
112
+
113
+ &.dialog--fullwidth {
114
+ max-width: rem(1112);
115
+ }
116
+
117
+ .btn-group {
118
+ display: none;
119
+ }
120
+ }
121
+
122
+ // Size variants
123
+ // small
124
+ @include media-breakpoint-up(sm, $mobileOnly) {
125
+
126
+ :host(.modal--sm) dialog[open] {
127
+
128
+ min-width: rem(335);
129
+ width: rem(335);
130
+ max-width: rem(335);
131
+ }
132
+ }
133
+
134
+ @include media-breakpoint-up(md, $mobileOnly) {
135
+
136
+ :host(.modal--sm) dialog[open] {
137
+ min-width: rem(454);
138
+ width: rem(454);
139
+ max-width: rem(454);
140
+ }
141
+ }
142
+
143
+ // large
144
+ @include media-breakpoint-up(sm, $mobileOnly) {
145
+
146
+ :host(.modal--lg) dialog[open] {
147
+ min-width: rem(686);
148
+ width: rem(686);
149
+ max-width: rem(686);
150
+ }
151
+ }
152
+
153
+ @include media-breakpoint-up(md, $mobileOnly) {
154
+
155
+ :host(.modal--lg) dialog[open] {
156
+ min-width: rem(736);
157
+ width: rem(736);
158
+ max-width: rem(736);
159
+ }
160
+ }
161
+
162
+
163
+
164
+
165
+ dialog::backdrop {
166
+ background: rgba(0, 0, 0, 0.3);
167
+ backdrop-filter: blur(4px);
168
+ overscroll-behavior: contain;
169
+ }
170
+
171
+ ::-webkit-scrollbar {
172
+ width: 6px;
173
+ height: 6px;
174
+ }
175
+
176
+ ::-webkit-scrollbar-track {
177
+ background-color: transparent;
178
+ border-top: 4px solid transparent;
179
+ }
180
+
181
+ ::-webkit-scrollbar-thumb {
182
+ background-color: #c1c1c1;
183
+ width: 6px;
184
+ border-radius: 3px;
185
+ }
186
+
187
+ ::slotted(p:last-child){
188
+ padding-bottom: 0!important;
189
+ }
190
+ ::slotted(p:last-of-type){
191
+ padding-bottom: 0!important;
192
+ }
193
+ ::slotted(:last-child){
194
+ margin-bottom: 0!important;
195
+ }
196
+
197
+ // #region transactional
198
+ :host(:is([data-type="transactional"],[data-type="acknowledgement"])) dialog[open] {
199
+ text-align: center;
200
+
201
+ .scroll > .fa-circle {
202
+ display: var(--fa-display, block);
203
+ line-height: 1;
204
+ font-size: 3rem;
205
+ height: 3rem;
206
+ width: 3rem;
207
+ margin-top: 0;
208
+ margin-bottom: rem(24);
209
+ line-height: 1;
210
+ color: var(--colour-heading);
211
+ margin-inline: auto;
212
+
213
+ @include media-breakpoint-up(md, $mobileOnly) {
214
+ font-size: 4rem;
215
+ height: 4rem;
216
+ width: 4rem;
217
+ }
218
+
219
+ &:has(> i) {
220
+ position: relative;
221
+ }
222
+
223
+ > i:before {
224
+ position: absolute;
225
+ top: 0;
226
+ left: 50%;
227
+ transform: scale(0.5) translate(-100%, 0);
228
+ }
229
+ }
230
+
231
+ > button:first-child {
232
+
233
+ display: none;
234
+ }
235
+
236
+ .btn-group {
237
+ display: flex;
238
+ justify-content: center;
239
+ gap: var(--gap);
240
+ padding-top: 2rem;
241
+
242
+ button {
243
+ margin: 0;
244
+ }
245
+ }
246
+
247
+ @container (max-width: 36em) {
248
+ .btn-group {
249
+ display: flex;
250
+ flex-direction: column-reverse;
251
+ button {
252
+ display: block;
253
+ width: 100%;
254
+ max-width: 100%;
255
+ min-width: 100%;
256
+ text-align: center;
257
+ }
258
+ }
259
+ }
260
+ }
261
+
262
+
263
+ :host([data-type="acknowledgement"]) dialog[open] {
264
+
265
+ .btn-group [data-cancel] {
266
+ display: none;
267
+ }
268
+ }
269
+ // #endregion
@@ -0,0 +1,255 @@
1
+ @use '../_func.scss' as *;
2
+ @use '../elements/dialog.scss' as *;
3
+
4
+ @use '../elements/buttons.scss' as *;
5
+
6
+ $darkMode: 'true' !default;
7
+
8
+ *,
9
+ *:before,
10
+ *:after {
11
+ box-sizing: border-box;
12
+ }
13
+
14
+ // #region Multi
15
+
16
+ dialog[open] {
17
+ --dialog-padding: 1.5rem;
18
+ box-sizing: border-box;
19
+ padding-top: calc(var(--dialog-padding) * 4);
20
+ //display: block;
21
+ //position: relative;
22
+ //margin-right: 0 !important;
23
+ //min-height: 100%;
24
+ padding-left: var(--dialog-padding);
25
+
26
+ @include media-breakpoint-up(md, $mobileOnly) {
27
+ padding-top: var(--dialog-padding);
28
+ padding-left: calc(var(--dialog-padding) + #{rem(282)}) !important;
29
+ //display: flex;
30
+ flex-direction: column;
31
+ }
32
+ }
33
+
34
+
35
+ ::slotted(dialog) {
36
+ display: contents!important;
37
+ }
38
+
39
+ ::slotted(button) {
40
+ margin: 0!important;
41
+ }
42
+
43
+
44
+
45
+ // #region Multi step modal
46
+
47
+ dialog[open] {
48
+ padding: 6rem rem(24) 0 rem(24);
49
+
50
+ @include media-breakpoint-up(sm, $mobileOnly) {
51
+ min-width: rem(452);
52
+ width: rem(452);
53
+ max-width: rem(452);
54
+ }
55
+
56
+ @include media-breakpoint-up(md, $mobileOnly) {
57
+ min-width: rem(924);
58
+ width: rem(924);
59
+ max-width: rem(924);
60
+ padding: 0;
61
+
62
+ @media (min-height: #{rem(500)}) {
63
+ height: rem(478);
64
+ max-height: rem(478);
65
+ }
66
+ }
67
+
68
+ > button:first-child {
69
+
70
+ position: absolute;
71
+ top: 5rem;
72
+ right: 6px;
73
+ z-index: var(--index-floating);
74
+ margin: 0;
75
+
76
+ &:not(:hover,:focus,:active){
77
+ background-color: Canvas;
78
+ }
79
+
80
+ @include media-breakpoint-up(md, $mobileOnly) {
81
+
82
+ top: calc(var(--dialog-padding) - 0.75rem);
83
+ right: calc(var(--dialog-padding) - 0.75rem);
84
+ }
85
+
86
+ }
87
+
88
+ }
89
+
90
+ // #endregion
91
+
92
+ // #region mobile fullwidth view For multi step modal
93
+ @media screen and (max-width: 36em) {
94
+ dialog[open] {
95
+ min-width: 100%;
96
+ min-height: 100%;
97
+ border-radius: 0;
98
+ overflow-y: auto;
99
+
100
+ iam-multi-step {
101
+ padding-inline: 0 !important;
102
+ }
103
+
104
+ form {
105
+ height: calc(100vh - 6rem);
106
+ padding-inline: var(--dialog-padding) !important;
107
+ }
108
+
109
+ .btn--wrapper {
110
+ padding-top: rem(64);
111
+ }
112
+ }
113
+
114
+ dialog[open] {
115
+ .mh-lg {
116
+ max-height: none !important;
117
+ overflow: visible;
118
+ }
119
+
120
+ &:before,
121
+ *:first-child {
122
+ margin-top: auto !important;
123
+ }
124
+
125
+ *:last-child {
126
+ margin-bottom: auto !important;
127
+ }
128
+ }
129
+ }
130
+ // #endregion
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+ // #region steps
143
+ .steps {
144
+ width: 100%;
145
+ position: absolute;
146
+ top: 0;
147
+ left: 0;
148
+ padding: var(--dialog-padding);
149
+ counter-reset: section;
150
+ display: flex;
151
+ justify-content: space-between;
152
+ background-color: var(--colour-primary);
153
+
154
+ &:before {
155
+ content: '';
156
+ position: absolute;
157
+ top: calc(50% - 1px);
158
+ left: var(--dialog-padding);
159
+ z-index: 2;
160
+ width: calc(100% - var(--dialog-padding) - var(--dialog-padding));
161
+ height: 2px;
162
+ background: currentColor;
163
+ z-index: 1;
164
+ background: linear-gradient(
165
+ 90deg,
166
+ var(--colour-success) 0%,
167
+ var(--colour-success) var(--progress, 0%),
168
+ rgba(255, 255, 255, 0.5) var(--progress, 0%),
169
+ rgba(255, 255, 255, 0.5) 100%
170
+ );
171
+ }
172
+
173
+ button {
174
+ position: relative;
175
+ background: transparent;
176
+ border: none;
177
+ color: rgba($color: #ffffff, $alpha: 0.5);
178
+ height: rem(24);
179
+ line-height: rem(24);
180
+ width: rem(24);
181
+ text-indent: 300%;
182
+ overflow: hidden;
183
+ z-index: 2;
184
+ background-color: var(--colour-primary);
185
+ outline: 0.5rem solid var(--colour-primary);
186
+ cursor: pointer;
187
+
188
+ &:before {
189
+ position: absolute;
190
+ top: 0;
191
+ left: 0;
192
+ counter-increment: section;
193
+ content: counter(section);
194
+
195
+ border: 1px solid currentColor;
196
+ height: rem(24);
197
+ line-height: rem(24);
198
+ width: rem(24);
199
+ text-align: center;
200
+ display: inline-block;
201
+ text-indent: 0;
202
+ border-radius: 50%;
203
+ }
204
+
205
+ &:not(.active):not(.valid) {
206
+ pointer-events: none;
207
+
208
+ &:before {
209
+ opacity: 0.5;
210
+ }
211
+ }
212
+
213
+ &.active {
214
+ color: var(--colour-white);
215
+ }
216
+ &.valid {
217
+ color: var(--colour-success);
218
+ }
219
+ }
220
+
221
+ @container style(--theme: dark) {
222
+ button {
223
+ color: rgba($color: #000000, $alpha: 0.5);
224
+
225
+ &.active {
226
+ color: black;
227
+ }
228
+ &.valid {
229
+ color: var(--colour-complete);
230
+ }
231
+ }
232
+ }
233
+
234
+ @include media-breakpoint-up(md, $mobileOnly) {
235
+ width: rem(282);
236
+ height: 100%;
237
+ flex-direction: column;
238
+ justify-content: center;
239
+
240
+ &:before {
241
+ display: none;
242
+ }
243
+
244
+ button {
245
+ margin-block: 0.5rem;
246
+ width: 100%;
247
+ text-indent: 0;
248
+ text-align: left;
249
+ padding-left: 2rem;
250
+ font-size: rem(18);
251
+ outline-width: 1px;
252
+ }
253
+ }
254
+ }
255
+ // #endregion
@@ -0,0 +1,92 @@
1
+ @use '../_func.scss' as *;
2
+
3
+ // #region Multi step modal
4
+ @layer components {
5
+ iam-multi-step-modal {
6
+
7
+
8
+ :is(.h1, .h2, .h3, .h4, .h5, .h6) {
9
+ padding-right: calc(var(--dialog-padding) * 3);
10
+ padding-bottom: var(--dialog-padding);
11
+ }
12
+
13
+ form {
14
+ overflow: auto;
15
+ padding-bottom: var(--dialog-padding);
16
+ padding-top: var(--dialog-padding);
17
+ max-height: calc(min(90vh, 47rem) - 6rem);
18
+ }
19
+
20
+ fieldset {
21
+ > :last-child {
22
+ margin-bottom: var(--dialog-padding) !important;
23
+ }
24
+
25
+ > p:last-child {
26
+ padding-bottom: 0 !important;
27
+ margin-bottom: var(--dialog-padding) !important;
28
+ }
29
+ }
30
+
31
+ fieldset:not(.active) {
32
+ display: none;
33
+ }
34
+
35
+ @include media-breakpoint-up(sm, $mobileOnly) {
36
+
37
+
38
+ .btn--wrapper {
39
+ margin-top: auto;
40
+ text-align: right;
41
+ }
42
+
43
+ form {
44
+ height: calc(100vh - 6rem);
45
+ padding-left: 0 !important;
46
+ padding-right: var(--dialog-padding) !important;
47
+ }
48
+ }
49
+
50
+ @include media-breakpoint-up(md, $mobileOnly) {
51
+
52
+ form {
53
+ display: flex;
54
+ flex-direction: column;
55
+ }
56
+
57
+ fieldset {
58
+
59
+ &.active {
60
+
61
+ display: flex;
62
+ }
63
+ flex-direction: column;
64
+ flex-grow: 1;
65
+ position: relative;
66
+
67
+ overflow: auto;
68
+ margin-bottom: calc(var(--dialog-padding) * -1);
69
+ padding-right: calc(var(--dialog-padding) - 10px);
70
+ margin-right: calc((var(--dialog-padding) * -1) + 10px);
71
+
72
+ max-height: rem(370);
73
+
74
+ &::before {
75
+ content: '';
76
+ top: 100%;
77
+ bottom: 0;
78
+ left: 0;
79
+ right: 0;
80
+ height: var(--dialog-padding);
81
+ min-height: var(--dialog-padding);
82
+ position: sticky;
83
+ display: block;
84
+ background: linear-gradient(180deg, transparent 0%, var(--colour-canvas-2) 100%);
85
+ z-index: 2;
86
+ margin-bottom: calc(var(--dialog-padding) * -1);
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ // #endregion