@iamproperty/components 3.4.5 → 3.4.7

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 (203) hide show
  1. package/assets/css/components/accordion.css +1 -0
  2. package/assets/css/components/accordion.css.map +1 -0
  3. package/assets/css/components/alert.css +1 -0
  4. package/assets/css/components/alert.css.map +1 -0
  5. package/assets/css/components/applied-filters.css +1 -0
  6. package/assets/css/components/applied-filters.css.map +1 -0
  7. package/assets/css/components/buttons.css +1 -0
  8. package/assets/css/components/buttons.css.map +1 -0
  9. package/assets/css/components/card.css +1 -0
  10. package/assets/css/components/card.css.map +1 -0
  11. package/assets/css/components/carousel.css +1 -0
  12. package/assets/css/components/carousel.css.map +1 -0
  13. package/assets/css/components/charts.css +1 -0
  14. package/assets/css/components/charts.css.map +1 -0
  15. package/assets/css/components/container.css +1 -0
  16. package/assets/css/components/container.css.map +1 -0
  17. package/assets/css/components/dialog.css +1 -0
  18. package/assets/css/components/dialog.css.map +1 -0
  19. package/assets/css/components/forms.css +1 -0
  20. package/assets/css/components/forms.css.map +1 -0
  21. package/assets/css/components/header.css +1 -0
  22. package/assets/css/components/header.css.map +1 -0
  23. package/assets/css/components/lists.css +1 -0
  24. package/assets/css/components/lists.css.map +1 -0
  25. package/assets/css/components/nav.css +1 -0
  26. package/assets/css/components/nav.css.map +1 -0
  27. package/assets/css/components/pagination.css +1 -0
  28. package/assets/css/components/pagination.css.map +1 -0
  29. package/assets/css/components/panel.css +1 -0
  30. package/assets/css/components/panel.css.map +1 -0
  31. package/assets/css/components/property-searchbar.css +1 -0
  32. package/assets/css/components/property-searchbar.css.map +1 -0
  33. package/assets/css/components/snapshot.css +1 -0
  34. package/assets/css/components/snapshot.css.map +1 -0
  35. package/assets/css/components/stepper.css +1 -0
  36. package/assets/css/components/stepper.css.map +1 -0
  37. package/assets/css/components/table.css +1 -0
  38. package/assets/css/components/table.css.map +1 -0
  39. package/assets/css/components/tabs.css +1 -0
  40. package/assets/css/components/tabs.css.map +1 -0
  41. package/assets/css/components/testimonial.css +1 -0
  42. package/assets/css/components/testimonial.css.map +1 -0
  43. package/assets/css/components/timeline.css +1 -0
  44. package/assets/css/components/timeline.css.map +1 -0
  45. package/assets/css/components/tooltips.css +1 -0
  46. package/assets/css/components/tooltips.css.map +1 -0
  47. package/assets/css/core.min.css +1 -1
  48. package/assets/css/core.min.css.map +1 -1
  49. package/assets/css/style.min.css +1 -1
  50. package/assets/css/style.min.css.map +1 -1
  51. package/assets/fonts/qanelas-bold-webfont.woff +0 -0
  52. package/assets/fonts/qanelas-bold-webfont.woff2 +0 -0
  53. package/assets/js/bundle.js +68 -0
  54. package/assets/js/components/accordion/accordion.component.js +33 -0
  55. package/assets/js/components/accordion/accordion.component.min.js +14 -0
  56. package/assets/js/components/accordion/accordion.component.min.js.map +1 -0
  57. package/assets/js/components/applied-filters/applied-filters.component.js +26 -0
  58. package/assets/js/components/card/card.component.js +91 -0
  59. package/assets/js/components/card/card.component.min.js +21 -0
  60. package/assets/js/components/card/card.component.min.js.map +1 -0
  61. package/assets/js/components/filterlist/filterlist.component.js +49 -0
  62. package/assets/js/components/filterlist/filterlist.component.min.js +23 -0
  63. package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -0
  64. package/assets/js/components/header/header.component.js +51 -0
  65. package/assets/js/components/header/header.component.min.js +30 -0
  66. package/assets/js/components/header/header.component.min.js.map +1 -0
  67. package/assets/js/components/pagination/pagination.component.js +34 -0
  68. package/assets/js/components/table/table.component.js +104 -0
  69. package/assets/js/components/table/table.component.min.js +24 -0
  70. package/assets/js/components/table/table.component.min.js.map +1 -0
  71. package/assets/js/components/tabs/tabs.component.js +34 -0
  72. package/assets/js/components/tabs/tabs.component.min.js +17 -0
  73. package/assets/js/components/tabs/tabs.component.min.js.map +1 -0
  74. package/assets/js/dynamic.js +74 -0
  75. package/assets/js/dynamic.min.js +5 -0
  76. package/assets/js/dynamic.min.js.map +1 -0
  77. package/assets/js/flat-components.js +79 -0
  78. package/assets/js/modules/accordion.js +11 -14
  79. package/assets/js/modules/applied-filters.js +100 -0
  80. package/assets/js/modules/data-layer.js +45 -0
  81. package/assets/js/modules/filterlist.js +32 -0
  82. package/assets/js/modules/helpers.js +80 -47
  83. package/assets/js/modules/pagination.js +33 -0
  84. package/assets/js/modules/table.js +507 -420
  85. package/assets/js/modules/tabs.js +97 -0
  86. package/assets/js/modules/youtubevideo.js +53 -61
  87. package/assets/js/scripts.bundle.js +111 -984
  88. package/assets/js/scripts.bundle.js.map +1 -1
  89. package/assets/js/scripts.bundle.min.js +3 -4
  90. package/assets/js/scripts.bundle.min.js.map +1 -1
  91. package/assets/js/tests/filterlist.spec.js +22 -0
  92. package/assets/js/tests/pagination.spec.js +15 -0
  93. package/assets/js/tests/table.spec.js +147 -0
  94. package/assets/sass/_components.scss +1 -2
  95. package/assets/sass/_corefiles.scss +5 -4
  96. package/assets/sass/_fonts.scss +4 -4
  97. package/assets/sass/_func.scss +1 -0
  98. package/assets/sass/_functions/functions.scss +6 -0
  99. package/assets/sass/_functions/mixins.scss +9 -9
  100. package/assets/sass/_functions/utilities.scss +16 -0
  101. package/assets/sass/_functions/variables.scss +128 -86
  102. package/assets/sass/_tests/colours.spec.scss +1 -1
  103. package/assets/sass/_tests/mixins.spec.scss +1 -1
  104. package/assets/sass/_tests/typography.spec.scss +2 -2
  105. package/assets/sass/components/accordion.scss +9 -6
  106. package/assets/sass/components/applied-filters.scss +65 -0
  107. package/assets/sass/components/card.scss +178 -227
  108. package/assets/sass/components/charts.scss +4 -0
  109. package/assets/sass/components/container.scss +13 -8
  110. package/assets/sass/components/dialog.scss +202 -0
  111. package/assets/sass/components/forms.scss +39 -5
  112. package/assets/sass/components/header.scss +34 -11
  113. package/assets/sass/components/lists.scss +15 -0
  114. package/assets/sass/components/nav.scss +5 -1
  115. package/assets/sass/components/pagination.scss +140 -0
  116. package/assets/sass/components/panel.scss +3 -4
  117. package/assets/sass/components/snapshot.scss +1 -1
  118. package/assets/sass/components/table.scss +419 -0
  119. package/assets/sass/components/tabs.scss +52 -36
  120. package/assets/sass/components/timeline.scss +2 -2
  121. package/assets/sass/foundations/icons.scss +1 -1
  122. package/assets/sass/{components → foundations}/links.scss +29 -2
  123. package/assets/sass/foundations/reboot.scss +21 -15
  124. package/assets/sass/foundations/root.scss +12 -5
  125. package/assets/sass/foundations/type.scss +90 -66
  126. package/assets/svg/illustrations/table.svg +165 -0
  127. package/assets/ts/README.md +12 -0
  128. package/assets/ts/bundle.ts +87 -0
  129. package/assets/ts/components/accordion/README.md +17 -0
  130. package/assets/ts/components/accordion/accordion.component.ts +43 -0
  131. package/assets/ts/components/applied-filters/README.md +5 -0
  132. package/assets/ts/components/applied-filters/applied-filters.component.ts +33 -0
  133. package/assets/ts/components/card/README.md +22 -0
  134. package/assets/ts/components/card/card.component.ts +117 -0
  135. package/assets/ts/components/filterlist/README.md +17 -0
  136. package/assets/ts/components/filterlist/filterlist.component.ts +60 -0
  137. package/assets/ts/components/header/README.md +26 -0
  138. package/assets/ts/components/header/header.component.ts +61 -0
  139. package/assets/ts/components/pagination/README.md +11 -0
  140. package/assets/ts/components/pagination/pagination.component.ts +45 -0
  141. package/assets/ts/components/table/README.md +23 -0
  142. package/assets/ts/components/table/table.component.ts +128 -0
  143. package/assets/ts/components/tabs/README.md +18 -0
  144. package/assets/ts/components/tabs/tabs.component.ts +41 -0
  145. package/assets/ts/dynamic.ts +98 -0
  146. package/assets/ts/flat-components.ts +100 -0
  147. package/assets/ts/html.d.ts +4 -0
  148. package/assets/ts/modules/accordion.ts +15 -21
  149. package/assets/ts/modules/applied-filters.ts +146 -0
  150. package/assets/ts/modules/data-layer.ts +58 -0
  151. package/assets/ts/modules/filterlist.ts +46 -0
  152. package/assets/ts/modules/helpers.ts +93 -55
  153. package/assets/ts/modules/pagination.ts +44 -0
  154. package/assets/ts/modules/table.ts +598 -433
  155. package/assets/ts/modules/tabs.ts +136 -0
  156. package/assets/ts/modules/youtubevideo.ts +58 -63
  157. package/assets/ts/tests/filterlist.spec.ts +29 -0
  158. package/assets/ts/tests/pagination.spec.ts +21 -0
  159. package/assets/ts/tests/table.spec.ts +191 -0
  160. package/dist/components.es.js +1359 -1356
  161. package/dist/components.umd.js +103 -54
  162. package/dist/style.css +1 -1
  163. package/package.json +20 -12
  164. package/src/components/Accordion/Accordion.spec.js +1 -1
  165. package/src/components/Accordion/Accordion.vue +7 -5
  166. package/src/components/Accordion/AccordionItem.vue +3 -6
  167. package/src/components/Accordion/README.md +0 -2
  168. package/src/components/AppliedFilters/AppliedFilters.vue +20 -0
  169. package/src/components/AppliedFilters/README.md +5 -0
  170. package/src/components/Card/Card.vue +11 -112
  171. package/src/components/Card/README.md +16 -18
  172. package/src/components/Carousel/Carousel.vue +49 -10
  173. package/src/components/Chart/Chart.vue +46 -4
  174. package/src/components/Filterlist/Filterlist.vue +20 -0
  175. package/src/components/Filterlist/README.md +17 -0
  176. package/src/components/Header/Header.spec.js +5 -4
  177. package/src/components/Header/Header.vue +14 -20
  178. package/src/components/Pagination/Pagination.vue +30 -0
  179. package/src/components/Pagination/README.md +11 -0
  180. package/src/components/Snapshot/Snapshot.vue +1 -1
  181. package/src/components/Table/README.md +29 -44
  182. package/src/components/Table/Table.spec.js +5 -37
  183. package/src/components/Table/Table.vue +16 -91
  184. package/src/components/Tabs/README.md +0 -2
  185. package/src/components/Tabs/Tab.vue +3 -2
  186. package/src/components/Tabs/Tabs.vue +8 -64
  187. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +1 -1
  188. package/src/index.js +3 -2
  189. package/assets/fonts/qanelassoft-extrabold-webfont.woff +0 -0
  190. package/assets/fonts/qanelassoft-extrabold-webfont.woff2 +0 -0
  191. package/assets/js/main.js +0 -57
  192. package/assets/js/modules/modal.js +0 -69
  193. package/assets/sass/components/cardDeck.scss +0 -108
  194. package/assets/sass/components/modal.scss +0 -136
  195. package/assets/sass/components/tables.scss +0 -291
  196. package/assets/ts/main.ts +0 -68
  197. package/assets/ts/modules/modal.ts +0 -91
  198. package/src/components/CardDeck/CardDeck.spec.js +0 -99
  199. package/src/components/CardDeck/CardDeck.vue +0 -77
  200. package/src/components/CardDeck/README.md +0 -25
  201. package/src/components/Modal/Modal.spec.js +0 -22
  202. package/src/components/Modal/Modal.vue +0 -43
  203. package/src/components/Modal/README.md +0 -20
@@ -1,17 +1,7 @@
1
1
  <template>
2
- <div class="container tabs__container" ref="wrapper">
3
-
4
- <input type="radio" class="tab__input" v-for="(value,index) in tabLinks()" :key="index" :data-key="index" :name="value.name" :id="value.id" :checked="(index == 0 ? true:false)" />
5
-
6
- <div class="tabs__links">
7
- <label v-for="(value,index) in tabLinks()" :key="index" :for="value.id" class="link" v-on:click="openTab(index)">
8
- {{value.tabTitle}}
9
- </label>
10
- </div>
11
- <div class="tabs">
12
- <slot></slot>
13
- </div>
14
- </div>
2
+ <iam-tabs ref="wrapper">
3
+ <slot></slot>
4
+ </iam-tabs>
15
5
  </template>
16
6
 
17
7
  <style lang="scss">
@@ -19,59 +9,13 @@
19
9
  </style>
20
10
 
21
11
  <script>
22
- export default {
23
- name: 'Tabs',
24
- data () {
25
- return {
26
- tabsID: 'tabs_'+Math.random().toString(36).substr(2, 9)
27
- }
28
- },
29
- computed: {
30
- tabLinks (){
31
- return () => {
32
-
33
- const tabLinks = [];
34
- let i = 1;
35
-
36
- for (const [key, value] of Object.entries(this.$slots.default())) {
37
-
38
- // Check if the value in the object is actually a tab and has the correct data
39
- if(value.props && value.props.title){
40
-
41
- let tabTitle = value.props.title;
12
+ import iamTabs from '../../../assets/ts/components/tabs/tabs.component'
42
13
 
43
- let tab = {
44
- name: this.tabsID,
45
- id: this.tabsID+"_tab"+i++,
46
- tabTitle: tabTitle
47
- }
14
+ if (!window.customElements.get('iam-tabs'))
15
+ window.customElements.define('iam-tabs', iamTabs);
48
16
 
49
- tabLinks.push(tab);
50
- }
51
- }
52
17
 
53
- return tabLinks;
54
- }
55
- }
56
- },
57
- methods: {
58
- openTab: function (index) {
59
-
60
- let i = 0;
61
- for (const [key, value] of Object.entries(this.$slots.default())) {
62
-
63
- if(value.props && value.props.title){
64
-
65
- if(i == index){
66
-
67
- console.log(value)
68
- value.type.data().show = true;
69
- }
70
-
71
- i++;
72
- }
73
- }
74
- }
75
- }
18
+ export default {
19
+ name: 'Tabs'
76
20
  }
77
21
  </script>
@@ -10,7 +10,7 @@
10
10
  import youtubeVideo from '../../../assets/ts/modules/youtubevideo'
11
11
 
12
12
  export default {
13
- name: 'YoutuveVideo',
13
+ name: 'YoutubeVideo',
14
14
  props: {
15
15
  video: {
16
16
  type: String,
package/src/index.js CHANGED
@@ -10,13 +10,11 @@ export { default as Accordion } from './components/Accordion/Accordion.vue'
10
10
  export { default as AccordionItem } from './components/Accordion/AccordionItem.vue'
11
11
  export { default as Banner } from './components/Banner/Banner.vue'
12
12
  export { default as Card } from './components/Card/Card.vue'
13
- export { default as CardDeck } from './components/CardDeck/CardDeck.vue'
14
13
  export { default as Carousel } from './components/Carousel/Carousel.vue'
15
14
  export { default as Header } from './components/Header/Header.vue'
16
15
  export { default as Testimonial } from './components/Testimonial/Testimonial.vue'
17
16
  export { default as PropertySearchbar } from './components/PropertySearchbar/PropertySearchbar.vue'
18
17
  export { default as Nav } from './components/Nav/Nav.vue'
19
- export { default as Modal } from './components/Modal/Modal.vue'
20
18
 
21
19
  export { default as Stepper } from './components/Stepper/Stepper.vue'
22
20
  export { default as Step } from './components/Stepper/Step.vue'
@@ -24,3 +22,6 @@ export { default as Tabs } from './components/Tabs/Tabs.vue'
24
22
  export { default as Tab } from './components/Tabs/Tab.vue'
25
23
  export { default as Alert } from './components/Alert/Alert.vue'
26
24
  export { default as NoteFeed } from './components/NoteFeed/NoteFeed.vue'
25
+
26
+ export { default as AppliedFilters } from './components/AppliedFilters/AppliedFilters.vue'
27
+ export { default as Filterlist } from './components/Filterlist/Filterlist.vue'
package/assets/js/main.js DELETED
@@ -1,57 +0,0 @@
1
- // @ts-nocheck
2
- // Modules
3
- import * as helpers from './modules/helpers.js';
4
- import nav from './modules/nav.js';
5
- import table from './modules/table.js';
6
- import accordion from './modules/accordion.js';
7
- import testimonial from './modules/testimonial.js';
8
- import carousel from './modules/carousel.js';
9
- import form from './modules/form.js';
10
- import youtubeVideo from './modules/youtubevideo.js';
11
- import modal from './modules/modal.js';
12
- // Attach classes to dom elements
13
- document.addEventListener("DOMContentLoaded", function () {
14
- helpers.addBodyClasses(document.body);
15
- helpers.addGlobalEvents(document.body);
16
- helpers.checkElements(document.body);
17
- console.log('test.js');
18
- // ANav
19
- Array.from(document.querySelectorAll('.nav')).forEach((arrayElement) => {
20
- nav(arrayElement);
21
- });
22
- // Advanced tables
23
- Array.from(document.querySelectorAll('.table__wrapper')).forEach((arrayElement) => {
24
- table(arrayElement);
25
- });
26
- // Accordions
27
- Array.from(document.querySelectorAll('.accordion')).forEach((arrayElement) => {
28
- accordion(arrayElement);
29
- });
30
- // Testimonial
31
- Array.from(document.querySelectorAll('.testimonial')).forEach((arrayElement) => {
32
- testimonial(arrayElement);
33
- });
34
- // Carousel
35
- Array.from(document.querySelectorAll('.carousel')).forEach((arrayElement) => {
36
- carousel(arrayElement);
37
- });
38
- // Form
39
- Array.from(document.querySelectorAll('form')).forEach((arrayElement) => {
40
- form(arrayElement);
41
- });
42
- // Modal
43
- Array.from(document.querySelectorAll('.modal')).forEach((arrayElement) => {
44
- modal(arrayElement);
45
- });
46
- // YouTube videos
47
- Array.from(document.querySelectorAll('.youtube-embed')).forEach((arrayElement) => {
48
- new youtubeVideo(arrayElement);
49
- });
50
- window.addEventListener('hashchange', function () {
51
- const hash = location.hash.replace('#', '');
52
- const label = document.querySelector(`label[for="${hash}"]`);
53
- if (label instanceof HTMLElement) {
54
- label.click();
55
- }
56
- }, false);
57
- });
@@ -1,69 +0,0 @@
1
- // @ts-nocheck
2
- const modal = (element) => {
3
- const links = element.querySelectorAll('.modal__outer a, .modal__outer button');
4
- const firstLink = links[0];
5
- const lastLink = links[links.length - 1];
6
- const modalID = element.getAttribute('id');
7
- const closeModal = function () {
8
- const button = document.querySelector('[href="' + window.location.hash + '"]');
9
- button.focus();
10
- window.location.hash = "close";
11
- history.replaceState("", document.title, window.location.pathname + window.location.search);
12
- // If there is more than one video lets make sure there is only one playing at a time.
13
- if (typeof window.player != "undefined" && typeof window.player.pauseVideo == "function")
14
- window.player.pauseVideo();
15
- };
16
- // Trap the tab focus inside
17
- element.addEventListener('keydown', function (e) {
18
- if (e.key === "Tab" && e.shiftKey && document.activeElement == firstLink) {
19
- e.preventDefault();
20
- lastLink.focus();
21
- }
22
- else if (e.key === "Tab" && !e.shiftKey && document.activeElement == lastLink) {
23
- e.preventDefault();
24
- firstLink.focus();
25
- }
26
- });
27
- // ESC will close the open modal
28
- document.addEventListener("keydown", function (e) {
29
- if (e.key === "Escape" && document.querySelector('.modal:target'))
30
- closeModal();
31
- });
32
- element.addEventListener('click', function (e) {
33
- for (var target = e.target; target && target != this; target = target.parentNode) {
34
- // Close links will close the model by default but we want to remove the hash link also
35
- if (target.matches('[href="#close"]')) {
36
- e.preventDefault();
37
- closeModal();
38
- break;
39
- }
40
- // Dock the modal to the right or left to make the content behind readable
41
- else if (target.matches('.modal__dock--right')) {
42
- e.preventDefault();
43
- if (!element.classList.contains('modal--left'))
44
- element.classList.add('modal--right');
45
- element.classList.remove('modal--left');
46
- break;
47
- }
48
- else if (target.matches('.modal__dock--left')) {
49
- e.preventDefault();
50
- if (!element.classList.contains('modal--right'))
51
- element.classList.add('modal--left');
52
- element.classList.remove('modal--right');
53
- break;
54
- }
55
- }
56
- });
57
- function locationHashChanged() {
58
- if (location.hash === '#' + modalID) {
59
- console.log("Modal is now open");
60
- const videoButton = document.querySelector('.modal:target .modal__inner > .youtube-embed:first-child:last-child a');
61
- console.log(videoButton);
62
- if (videoButton) {
63
- videoButton.click();
64
- }
65
- }
66
- }
67
- window.onhashchange = locationHashChanged;
68
- };
69
- export default modal;
@@ -1,108 +0,0 @@
1
- @use "../_func" as *;
2
-
3
- // #region Card Deck
4
- .card-deck.container:not([data-card-type="simple"]) {
5
-
6
- padding-bottom: 3rem;
7
-
8
- > .row:first-child {
9
- padding-top: 0.5rem;
10
- }
11
-
12
- &[class*="bg-"] {
13
- padding-bottom: 5rem;
14
- }
15
- }
16
- // #endregion
17
-
18
- // #region Fake container query that transforms the card into a vertical card
19
- @mixin vertical-card(){
20
- .card-header__wrapper {
21
- position: absolute;
22
- top: 0;
23
- left: 0;
24
- width: 45.8%;
25
- height: 100%;
26
- padding: 0;
27
- }
28
- .card-header__wrapper ~ .card-body,
29
- .card-header__wrapper ~ .card-footer {
30
- padding-left: calc(45.8% + #{$card-spacer-x + $card-spacer-x});
31
- }
32
- }
33
-
34
- @media screen and (min-width: 36em) and (max-width: 61.99em) {
35
-
36
- .card-deck .row-cols-sm-1 {
37
- @include vertical-card();
38
- }
39
- }
40
-
41
- @include media-breakpoint-up(md) {
42
-
43
- .card-deck:not(.card-deck--featured) .row-cols-md-1 {
44
-
45
- @include vertical-card();
46
- }
47
- }
48
- // #endregion
49
-
50
- // #region Featured Card deck
51
- .card-deck--featured {
52
-
53
- > .row > .col:nth-child(4) ~ .col {
54
- display: none;
55
- }
56
-
57
- > .row > .col:not(:first-child) .card-header__wrapper {
58
- display: none;
59
- }
60
-
61
- .row-cols-sm-1 > .col:not(:first-child) .card-header__wrapper ~ .card-body {
62
- padding-left: 1.5rem;
63
- }
64
-
65
- .card-footer {
66
- display: none;
67
- }
68
-
69
- @include media-breakpoint-up(md) {
70
-
71
- > .row {
72
- display: grid;
73
- grid-template-columns: 1fr 1fr 41.66666667%;
74
- grid-template-rows: auto auto auto;
75
- gap: var(--gutter-y) var(--gutter-x);
76
- grid-template-areas:
77
- "featured featured card2"
78
- "featured featured card3"
79
- "featured featured card4";
80
- margin-top:0;
81
- }
82
- > .row > .col:first-child {
83
- grid-area: featured;
84
- }
85
- > .row > .col:not(:first-child) {
86
- min-height: 0;
87
- }
88
-
89
- > .row > .col:nth-child(2) {
90
- grid-area: card2;
91
- }
92
-
93
- > .row > .col:nth-child(3) {
94
- grid-area: card3;
95
- }
96
-
97
- > .row > .col:nth-child(4) {
98
- grid-area: card4;
99
- }
100
-
101
- > .row > .col {
102
- width: 100%;
103
- margin-top:0;
104
- }
105
-
106
- }
107
- }
108
- // #endregion
@@ -1,136 +0,0 @@
1
- @use "sass:math";
2
- @use "../_func" as *;
3
-
4
- .modal {
5
- display: none;
6
- }
7
-
8
- .modal:target {
9
- display: block;
10
- position: fixed;
11
- top: 0;
12
- left: 0;
13
- width: 100%;
14
- height: 100%;
15
- background: rgba(0,0,0,0.25);
16
- z-index: var(--index-overlay);
17
- border: none;
18
- overscroll-behavior: contain;
19
-
20
- > a:first-child {
21
-
22
- position: absolute;
23
- top: 0;
24
- left: 0;
25
- width: 100%;
26
- height: 100%;
27
- opacity: 0;
28
- cursor: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 512 512'%3e%3cg transform='rotate(45 256 256)'%3e%3crect id='r' x='16' y='216' width='480' height='80' rx='14'/%3e%3cuse href='%23r' transform='rotate(90 256 256)'/%3e%3c/g%3e%3c/svg%3e") 8 8, pointer;
29
- }
30
-
31
- > button {
32
- display: none;
33
-
34
- @include media-breakpoint-up(md) {
35
- display: block;
36
- position: absolute;
37
- z-index: var(--index-focus);
38
- top: 50%;
39
- transform: translate(0,-50%);
40
- overflow: hidden;
41
- text-indent: 300%;
42
- width: 2rem;
43
- height: 2rem;
44
-
45
- &.btn:not(:hover):not(:focus) {
46
- background-color: white;
47
- }
48
-
49
- &.modal__dock--left {
50
- right: calc(50% + #{rem(math.div(820,2))} + 1rem);
51
-
52
- &:after {
53
- transform: rotate(-180deg);
54
- }
55
- }
56
- &.modal__dock--right {
57
- left: calc(50% + #{rem(math.div(820,2))} + 1rem);
58
- }
59
- }
60
- }
61
-
62
-
63
- &.modal--left button.modal__dock--left {
64
- display: none;
65
- }
66
-
67
- &.modal--left button.modal__dock--right {
68
- left: calc(#{rem(640)} + 2rem);
69
- }
70
-
71
- &.modal--right button.modal__dock--right {
72
- display: none;
73
- }
74
-
75
- &.modal--right button.modal__dock--left {
76
- right: calc(#{rem(640)} + 2rem);
77
- }
78
- }
79
-
80
-
81
- .modal__outer {
82
-
83
- position: absolute;
84
- top: 50%;
85
- left: 50%;
86
- width: 90%;
87
- max-width: rem(820);
88
- height: fit-content;
89
- max-height: 90%;
90
- overflow: visible;
91
- transform: translate(-50%,-50%);
92
-
93
- > .btn:first-child {
94
- position: absolute;
95
- top: 0;
96
- right: 0;
97
- margin-top: -0.75rem;
98
- margin-right: -0.75rem;
99
- z-index: var(--index-focus);
100
-
101
- &:not(:hover):not(:focus):not(:active){
102
- background: white;
103
- }
104
- }
105
- @include media-breakpoint-up(md) {
106
- .modal--left & {
107
- left: 1rem;
108
- transform: translate(0,-50%);
109
- max-width: 40rem;
110
- }
111
-
112
- .modal--right & {
113
- left: auto;
114
- right: 1rem;
115
- transform: translate(0,-50%);
116
- max-width: 40rem;
117
- }
118
- }
119
- }
120
-
121
- .modal__inner {
122
- background: white;
123
- overscroll-behavior: contain;
124
- height: fit-content;
125
- max-height: 90vh;
126
- overflow: auto;
127
-
128
- & > *:first-child {
129
-
130
- padding: 1rem;
131
- @include media-breakpoint-up(sm) {
132
-
133
- padding: 2rem;
134
- }
135
- }
136
- }