@iamproperty/components 3.7.4 → 3.7.5
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.
- package/assets/css/components/card.css +1 -1
- package/assets/css/components/card.css.map +1 -1
- package/assets/css/components/dialog.css +1 -1
- package/assets/css/components/dialog.css.map +1 -1
- package/assets/css/components/notification.css +1 -0
- package/assets/css/components/notification.css.map +1 -0
- package/assets/css/components/table.css +1 -1
- package/assets/css/components/table.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/bundle.js +3 -0
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/card/card.component.min.js +2 -2
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.js +71 -0
- package/assets/js/components/notification/notification.component.min.js +18 -0
- package/assets/js/components/notification/notification.component.min.js.map +1 -0
- package/assets/js/components/pagination/pagination.component.js +2 -2
- package/assets/js/components/pagination/pagination.component.min.js +11 -11
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/table/table.component.js +2 -2
- package/assets/js/components/table/table.component.min.js +11 -11
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.js +3 -0
- package/assets/js/dynamic.min.js +14 -2
- package/assets/js/dynamic.min.js.map +1 -1
- package/assets/js/flat-components.js +6 -0
- package/assets/js/modules/helpers.js +13 -0
- package/assets/js/modules/notification.js +53 -0
- package/assets/js/modules/table.js +1 -1
- package/assets/js/scripts.bundle.js +27 -15
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/sass/_components.scss +1 -1
- package/assets/sass/components/card.scss +7 -2
- package/assets/sass/components/dialog.scss +14 -10
- package/assets/sass/components/notification.scss +195 -0
- package/assets/sass/components/table.scss +2 -4
- package/assets/sass/foundations/reboot.scss +48 -1
- package/assets/sass/foundations/root.scss +3 -3
- package/assets/ts/bundle.ts +4 -0
- package/assets/ts/components/notification/README.md +32 -0
- package/assets/ts/components/notification/notification.component.ts +90 -0
- package/assets/ts/components/pagination/pagination.component.ts +3 -2
- package/assets/ts/components/table/table.component.ts +4 -3
- package/assets/ts/dynamic.ts +6 -0
- package/assets/ts/flat-components.ts +8 -0
- package/assets/ts/modules/helpers.ts +17 -0
- package/assets/ts/modules/notification.ts +76 -0
- package/assets/ts/modules/table.ts +1 -1
- package/dist/components.es.js +669 -645
- package/dist/components.umd.js +37 -25
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/Notification/Notification.vue +24 -0
- package/src/components/Notification/README.md +32 -0
- package/src/index.js +2 -1
- package/assets/css/components/alert.css +0 -1
- package/assets/css/components/alert.css.map +0 -1
- package/assets/js/modules/alert.js +0 -41
- package/assets/sass/components/alert.scss +0 -121
- package/assets/ts/modules/alert.ts +0 -58
- package/src/components/Alert/Alert.spec.js +0 -49
- package/src/components/Alert/Alert.vue +0 -39
- package/src/components/Alert/README.md +0 -29
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.carousel{padding-bottom:3rem}.carousel .carousel__wrapper{position:relative}.carousel .carousel__inner{--gutter-x: 1rem;overflow:auto;scroll-snap-type:x mandatory;margin-right:calc(var(--gutter-x) * -.5);margin-left:calc(var(--gutter-x) * -.5)}.carousel .carousel__inner>.row{flex-wrap:nowrap;margin:0}.carousel .carousel__inner>.row>.col{padding-top:2.25rem;padding-bottom:1.5rem;scroll-snap-align:start;scroll-padding:calc(var(--gutter-x) * -1)}.carousel .carousel__item>*:last-child{margin-bottom:0;padding-bottom:0}body.js-enabled .carousel__inner{scrollbar-width:none;-ms-overflow-style:none}body.js-enabled .carousel__inner::-webkit-scrollbar{display:none}.btn-next,.btn-prev{--marker-bg: var(--colour-secondary);text-indent:100%;white-space:nowrap;background:var(--marker-bg);border-radius:100%;width:2.25rem;height:2.25rem;text-indent:-300rem;overflow:hidden;border:none;position:relative;margin:0 .5rem;padding:0}@media screen and (min-width: 62em){.btn-next,.btn-prev{width:3rem;height:3rem}}.btn-next:disabled,.btn-prev:disabled{opacity:.8;pointer-events:none}.btn-next:after,.btn-prev:after{content:"";position:absolute;right:0;top:0;height:100%;width:100%;background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 60%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:55% 50%;transform:rotate(0)}.btn-next:hover,.btn-next:focus,.btn-prev:hover,.btn-prev:focus{background:var(--colour-warning);color:var(--colour-hover);border-radius:100%}.btn-next:active,.btn-prev:active{border-radius:100%}.btn-prev:after{transform:rotate(180deg)}.carousel:not(.hide-controls){padding-bottom:4.5rem!important}.carousel.hide-controls .carousel__controls{display:none}.carousel .carousel__controls{position:absolute;text-align:center;width:auto;left:0;width:calc(100% + 2rem);margin-left:-1rem;margin-right:-1rem;bottom:-3rem}.carousel .carousel__controls a{width:1rem;height:1rem;min-height:1rem;border-radius:50%;text-indent:-50rem;overflow:hidden;background:currentColor;padding:0;margin:0 .5rem .5rem}.carousel .carousel__controls a:before{display:none}.carousel .carousel__controls a:first-child:last-child{display:none}.carousel .carousel__controls>a:nth-child(10)~a{display:none}.carousel.hide-btns .carousel__wrapper>.btn{display:none}.carousel:not(.hide-btns) .carousel__inner{margin-left:1.75rem;margin-right:1.75rem}.carousel .carousel__wrapper>.btn{position:absolute;top:50%;left:-1.25rem;transform:translateY(-50%)}.carousel .carousel__wrapper>.btn.btn-next{left:auto;right:-1.25rem}@media screen and (min-width: 62em){.carousel .carousel__wrapper>.btn{margin-left:-1rem;margin-right:-1rem}}.carousel .carousel__inner>.row>.col:first-child{margin-left:0!important}@media screen and (min-width: 36em){.carousel .carousel__controls>a:nth-child(10)~a{display:inline-block}.carousel .carousel__inner>.row[class*=row-cols-sm-]>.col{scroll-snap-align:unset}.carousel .carousel__inner>.row-cols-sm-2>.col:nth-child(odd),.carousel .carousel__inner>.row-cols-sm-3>.col:nth-child(3n+1),.carousel .carousel__inner>.row-cols-sm-4>.col:nth-child(4n+1),.carousel .carousel__inner>.row-cols-sm-5>.col:nth-child(5n+1),.carousel .carousel__inner>.row-cols-sm-6>.col:nth-child(6n+1){scroll-snap-align:start}body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-2>.col:nth-child(odd),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-3>.col:nth-child(3n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-4>.col:nth-child(4n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-5>.col:nth-child(5n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-6>.col:nth-child(6n+1){margin-left:4rem}.carousel .carousel__controls.cols-sm-2>a:not(:nth-child(odd)),.carousel .carousel__controls.cols-sm-3>a:not(:nth-child(3n+1)),.carousel .carousel__controls.cols-sm-4>a:not(:nth-child(4n+1)),.carousel .carousel__controls.cols-sm-5>a:not(:nth-child(5n+1)),.carousel .carousel__controls.cols-sm-6>a:not(:nth-child(6n+1)){display:none}.carousel .carousel__controls.cols-sm-2>a:first-child:nth-last-child(2),.carousel .carousel__controls.cols-sm-3>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3)),.carousel .carousel__controls.cols-sm-4>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4)),.carousel .carousel__controls.cols-sm-5>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5)),.carousel .carousel__controls.cols-sm-6>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5),a:first-child:nth-last-child(6)){display:none}.carousel.hide-sm-btns .carousel__wrapper>.btn{display:none}.carousel.hide-sm-btns .carousel__inner{margin-left:0;margin-right:0}}@media screen and (min-width: 62em){.carousel .carousel__inner>.row[class*=row-cols-md-]>.col{scroll-snap-align:unset;margin-left:0}.carousel .carousel__inner>.row-cols-md-2>.col:nth-child(odd),.carousel .carousel__inner>.row-cols-md-3>.col:nth-child(3n+1),.carousel .carousel__inner>.row-cols-md-4>.col:nth-child(4n+1),.carousel .carousel__inner>.row-cols-md-5>.col:nth-child(5n+1),.carousel .carousel__inner>.row-cols-md-6>.col:nth-child(6n+1){scroll-snap-align:start}body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-2>.col:nth-child(odd),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-3>.col:nth-child(3n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-4>.col:nth-child(4n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-5>.col:nth-child(5n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-6>.col:nth-child(6n+1){margin-left:50vw}.carousel .carousel__controls.cols-md-2>a:not(:nth-child(odd)),.carousel .carousel__controls.cols-md-3>a:not(:nth-child(3n+1)),.carousel .carousel__controls.cols-md-4>a:not(:nth-child(4n+1)),.carousel .carousel__controls.cols-md-5>a:not(:nth-child(5n+1)),.carousel .carousel__controls.cols-md-6>a:not(:nth-child(6n+1)){display:none}.carousel .carousel__controls.cols-md-2>a:first-child:nth-last-child(2),.carousel .carousel__controls.cols-md-3>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3)),.carousel .carousel__controls.cols-md-4>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4)),.carousel .carousel__controls.cols-md-5>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5)),.carousel .carousel__controls.cols-md-6>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5),a:first-child:nth-last-child(6)){display:none}.carousel.hide-md-btns .carousel__wrapper>.btn{display:none}.carousel.hide-md-btns .carousel__inner{margin-left:0;margin-right:0}}.testimonial{--testimonial-padding: 1rem;--testimonial-spacing: 1rem}@media screen and (min-width: 62em){.testimonial{--testimonial-padding: 4rem;--testimonial-spacing: 2rem}}.testimonial>div:first-child{position:relative;overflow:hidden}.testimonial .circle{color:currentColor;position:absolute;top:-18rem;right:-8rem;font-size:28rem;border-width:4px}.testimonial__images{overflow:auto;scroll-snap-type:x mandatory;display:flex;user-select:none;touch-action:pan-x;height:14.375rem}@media screen and (min-width: 36em){.testimonial__images{height:21.25rem}}@media screen and (min-width: 62em){.testimonial__images{min-height:100%;scroll-snap-type:y mandatory;flex-direction:column;touch-action:pan-y}}.testimonial__images img{scroll-snap-align:start;user-select:none;pointer-events:none;flex-shrink:0}.testimonial .testimonial__controls{display:none}.testimonial.testimonial--multi .testimonial__controls{display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}@media screen and (min-width: 62em){.testimonial.testimonial--multi .testimonial__controls{left:auto;bottom:auto;right:0;top:50%;transform:rotate(90deg) translateY(-120%);transform-origin:center}}.testimonial h2{padding:2rem var(--testimonial-padding) 0 var(--testimonial-padding)}@media screen and (min-width: 36em){.testimonial h2{padding-top:3rem}}@media screen and (min-width: 62em){.testimonial h2{padding-top:9rem}}.testimonial__content{--display-none: none;margin:0 var(--testimonial-padding) var(--testimonial-spacing) var(--testimonial-padding);position:relative}@media screen and (min-width: 62em){.testimonial__content{--display-none: block}.testimonial__content blockquote:not(.largest){position:absolute;top:0}}.testimonial[data-show="1"] blockquote:not(:nth-child(1)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="2"] blockquote:not(:nth-child(2)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="3"] blockquote:not(:nth-child(3)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="4"] blockquote:not(:nth-child(4)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="5"] blockquote:not(:nth-child(5)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="6"] blockquote:not(:nth-child(6)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="7"] blockquote:not(:nth-child(7)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="8"] blockquote:not(:nth-child(8)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="9"] blockquote:not(:nth-child(9)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="10"] blockquote:not(:nth-child(10)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial__after{padding:1rem var(--testimonial-padding) var(--testimonial-spacing) var(--testimonial-padding)}.testimonial__images::-webkit-scrollbar{display:none}.testimonial__images{-ms-overflow-style:none;scrollbar-width:none}.property-searchbar fieldset{position:relative}@media screen and (min-width: 62em){.property-searchbar fieldset{position:relative;padding-right:1.5rem}.property-searchbar fieldset:after{content:"";position:absolute;top:0;right:.5rem;display:block;height:100%;width:1px;background-color:var(--colour-muted);opacity:.25}}.property-searchbar .form-control__wrapper{margin-bottom:1rem}@media screen and (min-width: 62em){.property-searchbar .form-control__wrapper{margin-bottom:0}}.property-searchbar .form-label,.property-searchbar label{font-size:.875rem;text-transform:uppercase}@media screen and (min-width: 62em){.property-searchbar .row .row .form-label{display:none}.property-searchbar .form-control,.property-searchbar .form-select{padding:.5rem 1.5rem .5rem .5rem}.property-searchbar .form-select{background-position:right .5rem center}}.property-searchbar .input--locations{padding-right:5.5rem}.property-searchbar .select--miles{position:absolute;bottom:0rem;right:.5rem;width:5rem}@media screen and (min-width: 62em){.property-searchbar .select--miles{right:1.5rem}}.property-searchbar .select--miles label{display:none}.property-searchbar .select--miles select{background-color:transparent;border-color:transparent}@media screen and (min-width: 62em){.property-searchbar .property-searchbar__btn{align-items:flex-end}}.property-searchbar button{margin-top:1rem;margin-bottom:1rem}@media screen and (min-width: 62em){.property-searchbar button{margin:0;padding-left:3.5rem;padding-right:3.5rem}}.property-searchbar--hero .property-searchbar{--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: var(--colour-canvas);padding:1rem;background-color:#fff;width:100%;border-radius:.625rem;-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.24);box-shadow:0 2px 4px #0000003d;position:relative}.property-searchbar--hero .property-searchbar .text-primary{color:var(--colour-primary)!important}@media screen and (min-width: 62em){.property-searchbar--hero .property-searchbar{border-radius:3rem;padding:1.5rem 2.5rem}.property-searchbar--hero .property-searchbar .form-label,.property-searchbar--hero .property-searchbar label{margin-bottom:0}.property-searchbar--hero .property-searchbar .form-control,.property-searchbar--hero .property-searchbar .form-select{margin-left:-.5rem;border:none;padding-top:.25rem;padding-bottom:.25rem}.property-searchbar--hero .property-searchbar .form-select{background-position:right 0rem center;padding-right:1rem}.property-searchbar--hero .property-searchbar .property-searchbar__btn{align-items:center}}.nav .nav__mobile-bar{background:var(--colour-primary);color:#fff;--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);display:flex;flex-direction:column;flex-wrap:nowrap;width:23.4375rem}@media screen and (min-width: 36em){.nav .nav__mobile-bar{width:100%}}.nav .nav__mobile-bar>.container{padding-top:1rem;padding-bottom:1rem;flex-shrink:0;overflow:visible}.nav{overflow-x:hidden;font-weight:700}.nav__inner,.nav__menu--account{display:flex;flex-direction:column;flex-wrap:nowrap}.nav__inner>.container,.nav__menu--account>.container{padding-top:1rem;padding-bottom:0;flex-shrink:0;overflow:visible;z-index:unset}.nav__menu{padding-top:2.25rem;padding-bottom:1rem}.nav .brand{font-size:2.25rem}@media screen and (min-width: 62em){.nav .brand{font-size:3.75rem}}.nav__logo img{height:2.25rem;width:auto}@media screen and (min-width: 36em){.nav__logo img{height:3.75rem;width:auto}}.nav__search-btn,.nav__menu-btn{display:flex}.nav__search-btn label,.nav__menu-btn label{height:1.125rem;width:1.5rem;text-indent:-300%;overflow:hidden;position:relative;cursor:pointer;color:var(--colour-link)}.nav__search-btn label:hover,.nav__search-btn label:focus,.nav__menu-btn label:hover,.nav__menu-btn label:focus{color:var(--colour-hover)}.nav__search-btn label:active,.nav__menu-btn label:active{color:var(--colour-active)}.nav__search-btn label:before,.nav__search-btn label:after,.nav__menu-btn label:before,.nav__menu-btn label:after{content:"";position:absolute;width:0%;height:2px;top:calc(50% - 1px);left:0;background:currentColor;transform-origin:50% 50%;transition:transform .5s,width .5s}.nav__search-btn label{text-indent:0;overflow:visible}.nav__search-btn .icon{height:2rem;width:2rem;margin-top:-.5rem;margin-left:-.0625rem;transition:opacity .5s;color:inherit}.nav__search-btn .icon__outline{stroke-width:2px;stroke:currentColor}.nav__menu-btn{display:flex}.nav__menu-btn label{border-top:2px solid currentColor;border-bottom:2px solid currentColor}.nav__menu-btn label:before,.nav__menu-btn label:after{width:100%}.nav__account-btn label{font-size:1.125rem;text-indent:0;overflow:visible;color:var(--colour-body);height:3rem;line-height:3rem;display:block;border-top:1px solid var(--colour-border);border-bottom:1px solid var(--colour-border)}.nav__account-btn .icon{height:1.75rem;width:1.75rem;margin-top:-.5rem;margin-right:.5rem;transition:opacity .5s;color:inherit}.nav__account-btn .icon__outline{stroke-width:2px;stroke:currentColor}.nav__menu>ul{margin-bottom:0}.nav__menu>ul>li>a{font-size:1.125rem;line-height:2rem;display:inline-block;position:relative;text-decoration:none}.nav__menu>ul>li>a.current{border-left:.375rem solid var(--colour-info);margin-left:-1.25rem;padding-left:.875rem}@media screen and (min-width: 62em){.nav__menu--search{display:none}#showSearch:checked~.nav__inner>.nav__menu--search{order:2;position:absolute;top:100%;left:0;width:100%;background:rgba(0,0,0,.6);height:calc(100vh - 5rem);display:block}}.services{line-height:2rem}.services li{display:flex;justify-content:space-between}.services .service--active:before{content:"";height:1em;width:1em;display:inline-block;background:var(--colour-secondary);margin-right:.5rem;margin-bottom:-.1em;border-radius:50%}.credits{border:2px solid var(--colour-primary);padding:1rem;margin-bottom:2rem;border-radius:.625rem}.credits .h5,.credits ul{padding-inline:1rem}.credits>*:last-child{margin-bottom:0!important}.nav[class*=bg-] .nav__inner{background-color:transparent}.nav__menu--secondary{flex-grow:1;font-weight:700}.nav__menu--secondary .nav__section-link{pointer-events:none;font-weight:700;color:var(--colour-link);font-size:1.125rem}.nav__menu--secondary>.container>ul>li{padding-block:.375rem}.nav__menu--secondary>.container>ul>li:not(:last-child){border-bottom:1px solid var(--colour-border)}.nav__menu--secondary>.container>ul>li a{display:inline-block;font-size:1.125rem;line-height:2.25rem;text-decoration:none;font-weight:700}.nav__menu--secondary>.container>ul>li ul{padding:0}.nav__menu--secondary>.container>ul>li ul a{font-weight:400}.nav__menu--secondary>.container>ul>li ul a .icon{display:none}.nav{position:sticky;top:0;left:0;width:100%;z-index:var(--index-menu)}.nav.is-stuck{-webkit-box-shadow:0 4px 20px -10px rgba(51,51,51,.25);box-shadow:0 4px 20px -10px #33333340}nav+main>*:first-child{padding-top:2rem}.nav__menu,.nav__btn,.nav__menu--secondary{display:none}.nav__inner,.nav__menu--account{position:absolute;top:0;left:100%;background:var(--colour-canvas);z-index:2;width:100%;overscroll-behavior:contain}@media screen and (min-width: 36em){.nav__inner,.nav__menu--account{width:23.4375rem}}.nav__menu--account{z-index:2;height:100vh}.nav:has(#showMenu:checked){min-height:100vh}#showMenu:checked~.nav__inner,#showAccount:checked~.nav__menu--account{height:100vh;overflow:visible;overflow-x:auto;left:0}@media screen and (min-width: 36em){#showMenu:checked~.nav__inner,#showAccount:checked~.nav__menu--account{left:calc(100% - 23.4375rem)}}@media screen and (min-width: 62em){#showAccount~.nav__menu--account{display:none}#showAccount:checked~.nav__menu--account{left:0;width:100%;height:auto;display:block;top:6rem;border-top:.3125rem solid var(--colour-primary);border-bottom:1px solid var(--colour-border-light);-webkit-box-shadow:0px 3px 6px 0px rgba(0,0,0,.16);-moz-box-shadow:0px 3px 6px 0px rgba(0,0,0,.16);box-shadow:0 3px 6px #00000029}}#showMenu:checked~div .nav__menu,#showMenu:checked~div .nav__btn,#showMenu:checked~div .nav__menu--secondary,#showMenu:not(:checked)~#showSearch:checked~div .nav__menu--search{display:block}#showMenu:checked~div .nav__menu-btn label,#showSearch:checked~div .nav__search-btn label{border:0}#showMenu:checked~div .nav__menu-btn label .icon,#showSearch:checked~div .nav__search-btn label .icon{opacity:0}#showMenu:checked~div .nav__menu-btn label:before,#showSearch:checked~div .nav__search-btn label:before{width:100%;transform:rotate(45deg)}#showMenu:checked~div .nav__menu-btn label:after,#showSearch:checked~div .nav__search-btn label:after{width:100%;transform:rotate(-45deg)}@media screen and (min-width: 36em){#showMenu:checked~.nav__bg{content:" ";position:absolute;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);z-index:1}}@media screen and (min-width: 62em){.nav__bg{display:none}}@media screen and (min-width: 62em){.nav .nav__mobile-bar{display:none}.nav__logo{height:4rem}#showMenu:checked~.nav__inner,.nav__inner{overflow:visible;position:static;width:100%}.nav .nav__menu{display:flex;padding-bottom:0}.nav__btn,.nav__menu--secondary{display:flex}.nav .nav__inner>.container{padding-bottom:1rem}.nav__search-btn,.nav__btn{order:2;margin-left:1rem}.nav__search-btn .btn,.nav__btn .btn{margin-bottom:0}.nav__menu{padding-top:0}.nav__menu>.list-unstyled{margin-left:-1.5rem!important;margin-right:-1.5rem!important;width:calc(100% + 3rem);margin-bottom:0;padding-top:0;padding-left:1.5rem;padding-right:1.5rem}.nav__menu>.list-unstyled>li{display:inline-block;padding-left:1rem;padding-right:1rem}.nav__menu>.list-unstyled>li:not(:last-child){border-right:1px solid var(--colour-border)}.nav__menu>.list-unstyled>li>a{line-height:1.75rem}.nav__menu>.list-unstyled>li>a.current{border-left:none;padding-left:0;border-bottom:.1875rem solid var(--colour-info)}.nav__account-btn{max-width:fit-content!important}.nav__account-btn label{border:none!important;padding-top:.5rem;position:relative;padding-right:2.5rem}.nav__account-btn label:after{content:"";position:absolute;top:calc(50% + .5rem);right:0;width:1.5em;height:1.5em;background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transition:transform .2s ease-in-out;transform:rotate(90deg) translate(-50%)}.nav .nav__menu--secondary>.container>.list-unstyled{font-size:.9375rem;padding-top:0}}@media screen and (min-width: 62em){.nav__menu--secondary{background-color:var(--colour-primary);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme)}.nav__menu--secondary .nav__section-link{pointer-events:all}.nav__menu--secondary>.container{padding-bottom:0}.nav__menu--secondary>.container>.list-unstyled{margin-left:-1rem!important;margin-right:-1rem!important;width:calc(100% + 2rem);margin-bottom:0}.nav__menu--secondary>.container>.list-unstyled>li{display:inline-block;padding-left:1rem;padding-right:1rem;border:none!important;padding-block:0;position:relative}.nav__menu--secondary>.container>.list-unstyled>li a,.nav__menu--secondary>.container>.list-unstyled>li .nav__section-link{display:block;line-height:2.25rem;padding-block:.5rem;cursor:pointer}.nav__menu--secondary>.container>.list-unstyled>li ul{display:none}.nav__menu--secondary>.container>.list-unstyled>li:hover>.nav__section-link,.nav__menu--secondary>.container>.list-unstyled>li:focus>.nav__section-link,.nav__menu--secondary>.container>.list-unstyled>li:focus-within>.nav__section-link{color:var(--colour-selected)}.nav__menu--secondary>.container>.list-unstyled>li:hover ul,.nav__menu--secondary>.container>.list-unstyled>li:focus ul,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul{display:block;background:white;position:absolute;top:100%;left:0;padding-top:1rem;-webkit-box-shadow:0 4px 20px -10px rgba(51,51,51,.25);box-shadow:0 4px 20px -10px #33333340;--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: var(--colour-canvas);--colour-admin: var(--colour-admin-theme)}.nav__menu--secondary>.container>.list-unstyled>li:hover ul .text-primary,.nav__menu--secondary>.container>.list-unstyled>li:focus ul .text-primary,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul .text-primary{color:var(--colour-primary)!important}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li{padding-inline:1.5rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li:last-child,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li:last-child,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li:last-child{padding-bottom:1rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li.nav__download{background:var(--colour-admin);padding-top:1rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li.nav__download+li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li.nav__download+li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li.nav__download+li.nav__download{padding-top:0}.nav__menu--secondary>.container>.list-unstyled>li:hover ul a,.nav__menu--secondary>.container>.list-unstyled>li:focus ul a,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul a{white-space:nowrap;padding:0;line-height:3rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul a .icon,.nav__menu--secondary>.container>.list-unstyled>li:focus ul a .icon,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul a .icon{display:inline-block;font-size:1.5em;padding:0;margin:-.15em .25em 0 0}.nav__menu--secondary>.container>.logout-button{display:none}}@media screen and (min-width: 62em){.nav__menu--account>.container:first-child{display:none}.nav__menu--account>.container:not(:first-child){display:flex;flex-wrap:wrap;gap:2rem;align-items:start}.nav__menu--account>.container:not(:first-child):before{display:none}.nav__menu--account>.container:not(:first-child)>.row,.nav__menu--account>.container:not(:first-child) .nav__featured-link,.nav__menu--account>.container:not(:first-child) .credits{flex-basis:22%;flex-grow:1;margin:0}.nav__menu--account>.container:not(:first-child)>.row>.col:first-child,.nav__menu--account>.container:not(:first-child) .nav__featured-link>.row>.col:first-child{max-width:100%!important;width:100%;flex-shrink:0;min-width:100%;margin-bottom:1rem}.nav__menu--account>.container:not(:first-child) .logout-button{min-width:100%}}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu{position:static;height:4.5rem;margin-bottom:-5rem}}.nav .list-unstyled>li details.nav__mega-menu .inner{z-index:5}.nav .list-unstyled>li details.nav__mega-menu .inner [class*=bg-]{--bs-bg-opacity: 0}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu .inner [class*=bg-]{--bs-bg-opacity: 1}}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu .inner{--bs-bg-opacity: 1;position:absolute;top:100%;left:50%;width:100vw!important;max-width:100vw!important;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translate(-50%);background:rgba(0,0,0,.6);height:calc(100vh - 8rem);pointer-events:none;padding-top:0}.nav .list-unstyled>li details.nav__mega-menu .inner .container{padding:0 1.5rem 1rem!important;max-width:90rem!important;text-align:left;pointer-events:all;display:flex}.nav .list-unstyled>li details.nav__mega-menu .inner .container>div{padding:2.25rem}}.nav--inline-search .nav__menu form{position:relative}.nav--inline-search .nav__menu form .form-control__wrapper .form-control{padding-right:3rem}.nav--inline-search .nav__menu form button{position:absolute;bottom:0;right:0;margin:0;z-index:var(--index-focus);border-color:transparent;background:transparent;padding:.85rem 0rem}.nav--inline-search .nav__menu form button .icon{stroke:currentColor}@media screen and (min-width: 62em){.nav--inline-search .nav__menu>.list-unstyled{text-align:left;margin-right:0!important}.nav--inline-search .nav__menu form{min-width:21.875rem;position:relative}.nav--inline-search .nav__menu form .form-control__wrapper{margin-bottom:0;display:flex;align-items:center}.nav--inline-search .nav__menu form .form-control__wrapper label{white-space:nowrap;padding-right:1rem}.nav--inline-search .nav__menu form .form-control__wrapper .form-control{padding:.4375rem 3rem .4375rem 1rem}.nav--inline-search .nav__menu form button{padding:.5rem 0rem}}@media screen and (min-width: 62em){.nav--admin .nav__logo{height:3rem}.nav--admin .nav__logo .brand{font-size:3rem}}.nav--just-account .nav__menu,.nav--just-account .nav__account-btn{display:none!important}@media screen and (min-width: 62em){.nav--just-account .nav__menu,.nav--just-account .nav__account-btn{display:block!important}}.nav--just-account #showMenu:checked~.nav__menu--account{height:100vh;overflow:visible;overflow-x:auto;left:0;pointer-events:none;background:transparent}@media screen and (min-width: 36em){.nav--just-account #showMenu:checked~.nav__menu--account{width:23.4375rem;left:calc(100% - 23.4375rem)}}.nav--just-account #showMenu:checked~.nav__menu--account>.container:first-child{opacity:0}.nav--just-account #showMenu:checked~.nav__menu--account>.container:not(:first-child){pointer-events:all}.stepper{background:#f0f0f0;display:flex;flex-wrap:wrap;margin-bottom:2rem;border:1px solid var(--colour-canvas);overflow:hidden}@media screen and (min-width: 62em){.stepper{flex-wrap:nowrap;overflow-x:auto}}.stepper ol{margin:0;z-index:1;background:var(--colour-canvas);counter-reset:section;width:100%;overflow:auto}@media screen and (min-width: 36em){.stepper ol{display:flex;flex-grow:1;padding-right:calc(2rem + 1px);margin-top:-1px;margin-bottom:-1px;margin-right:calc(-2rem - 2px);clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%)}}@media screen and (min-width: 62em){.stepper ol{overflow:initial}}.stepper ol li{width:100%;max-width:100%;background:var(--colour-canvas);padding:1px}@media screen and (min-width: 36em){.stepper ol li:first-child a{padding-left:1rem;clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%)}}@media screen and (min-width: 62em){.stepper ol li:first-child a{padding-left:2rem}}.stepper ol li a{display:block;padding:1rem;text-decoration:none;background:var(--colour-muted);line-height:1;position:relative;color:var(--colour-primary)}@media screen and (min-width: 36em){.stepper ol li a{margin-right:-2rem;padding:2rem 3rem;clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%,2rem 50%);display:flex;height:100%;vertical-align:baseline;justify-content:center;align-items:center}}.stepper ol li a span{position:relative;display:inline;padding-left:2.25rem}.stepper ol li a span:before{counter-increment:section;content:counter(section);display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);margin-right:.5rem;font-size:.75em;border-radius:50%;border:2px solid currentColor;height:1.5rem;line-height:1.3rem;width:1.5rem;font-family:var(--font-heading);text-align:center}.stepper ol li a.bg-warning span:before,.stepper ol li a.bg-danger span:before{content:"!"}.stepper ol li a.bg-success span:before{content:"\2713";text-indent:-.1em}.stepper ol li a.current{background:var(--colour-primary);color:#fff;pointer-events:none}.stepper ol li a:not([href]){pointer-events:none}.stepper ol li a[href]:hover{opacity:.6}.stepper ol li a[href]:active{opacity:.8}.stepper>span{width:100%;display:flex;padding:1rem;flex-shrink:0;margin:0;position:relative;z-index:0;align-items:center}.stepper>span.stepper__end{display:none}@media screen and (min-width: 62em){.stepper>span{width:max-content;padding:2rem}.stepper>span.stepper__end{padding-left:3.5rem;display:flex}}.tabs:not(.admin-panel){position:relative}.tabs__links{margin-bottom:1.5rem;overflow:visible;padding-bottom:2px;position:relative;display:block}.tabs__links:after{content:"";left:50%;position:relative;height:3px;width:100vw;border-bottom:1px solid var(--colour-border);transform:translate(-50%);display:block;clear:both}.tabs__links .link:not(.text-decoration-none):not(.btn){--is-current: 0;font-weight:700;font-family:var(--font-heading);font-size:1.125rem;cursor:pointer;margin:.5rem 1.5rem 0 0;padding:0;display:inline-block}.tabs__links .link:not(.text-decoration-none):not(.btn):last-child{margin-inline-end:0}.tabs__links .link:not(.text-decoration-none):not(.btn):after{position:absolute;content:"";top:100%;left:50%;height:2px;transform:translate(-50%);background:var(--colour-info);transition:width .5s;width:0%}.tabs__links .link:not(.text-decoration-none):not(.btn):hover:after,.tabs__links .link:not(.text-decoration-none):not(.btn):focus:after,.tabs__links .link:not(.text-decoration-none):not(.btn).focus:after{width:60%}.tabs__links .link:not(.text-decoration-none):not(.btn)[aria-pressed=true]:after,.tabs__links .link:not(.text-decoration-none):not(.btn):active:after,.tabs__links .link:not(.text-decoration-none):not(.btn).active:after{width:100%}.tabs__links .link:not(.text-decoration-none):not(.btn)[aria-pressed=true],.tabs__links .link:not(.text-decoration-none):not(.btn).active{pointer-events:none;outline:var(--contrast-outline-width, 0px) solid var(--colour-primary-theme)!important}.alert__inner{position:relative;padding:1.5rem;margin-bottom:2rem;border-radius:.375rem}.alert__inner:not(.bg-primary):not(.bg-dark):not(.bg-danger){--colour-body: black;color:#000}.alert__inner>*:last-child{margin-bottom:0}.alert__inner>*{max-width:100%}.alert--fixed{position:fixed;padding-top:2rem;z-index:var(--index-floating);left:50%;transform:translate(-50%);bottom:0}@media (forced-colors: active){.alert .alert__inner{border:1px solid CanvasText;color:CanvasText}}.alert--dismissible .alert__inner{padding-right:4rem;overflow:hidden}.alert--dismissible .alert__inner .btn-close{position:absolute;top:1.5rem;right:1.5rem;height:1rem;width:1rem;padding:0;border:none;z-index:var(--index-focus);background:currentColor;mask-image:var(--icon-close);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-close);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%}@media (forced-colors: active){.alert--dismissible .alert__inner .btn-close{border:1px solid CanvasText;mask-image:none;-webkit-mask-image:none}.alert--dismissible .alert__inner .btn-close:before{content:"X"}}.alert__holder{position:fixed;z-index:var(--index-floating);bottom:0;left:0;width:100%;max-height:100vh;overflow:auto;background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.4))}.alert__holder>*:first-child{margin-top:2rem}.alert__holder .alert--fixed{position:static;transform:none;padding-top:0}[data-timeout] .alert__inner:after{content:"";position:absolute;bottom:0;left:0;width:0%;height:.25rem;background:black;animation:progress var(--animation-length) linear}@keyframes progress{0%{width:0%}to{width:100%}}
|
|
1
|
+
@charset "UTF-8";.carousel{padding-bottom:3rem}.carousel .carousel__wrapper{position:relative}.carousel .carousel__inner{--gutter-x: 1rem;overflow:auto;scroll-snap-type:x mandatory;margin-right:calc(var(--gutter-x) * -.5);margin-left:calc(var(--gutter-x) * -.5)}.carousel .carousel__inner>.row{flex-wrap:nowrap;margin:0}.carousel .carousel__inner>.row>.col{padding-top:2.25rem;padding-bottom:1.5rem;scroll-snap-align:start;scroll-padding:calc(var(--gutter-x) * -1)}.carousel .carousel__item>*:last-child{margin-bottom:0;padding-bottom:0}body.js-enabled .carousel__inner{scrollbar-width:none;-ms-overflow-style:none}body.js-enabled .carousel__inner::-webkit-scrollbar{display:none}.btn-next,.btn-prev{--marker-bg: var(--colour-secondary);text-indent:100%;white-space:nowrap;background:var(--marker-bg);border-radius:100%;width:2.25rem;height:2.25rem;text-indent:-300rem;overflow:hidden;border:none;position:relative;margin:0 .5rem;padding:0}@media screen and (min-width: 62em){.btn-next,.btn-prev{width:3rem;height:3rem}}.btn-next:disabled,.btn-prev:disabled{opacity:.8;pointer-events:none}.btn-next:after,.btn-prev:after{content:"";position:absolute;right:0;top:0;height:100%;width:100%;background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 60%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:55% 50%;transform:rotate(0)}.btn-next:hover,.btn-next:focus,.btn-prev:hover,.btn-prev:focus{background:var(--colour-warning);color:var(--colour-hover);border-radius:100%}.btn-next:active,.btn-prev:active{border-radius:100%}.btn-prev:after{transform:rotate(180deg)}.carousel:not(.hide-controls){padding-bottom:4.5rem!important}.carousel.hide-controls .carousel__controls{display:none}.carousel .carousel__controls{position:absolute;text-align:center;width:auto;left:0;width:calc(100% + 2rem);margin-left:-1rem;margin-right:-1rem;bottom:-3rem}.carousel .carousel__controls a{width:1rem;height:1rem;min-height:1rem;border-radius:50%;text-indent:-50rem;overflow:hidden;background:currentColor;padding:0;margin:0 .5rem .5rem}.carousel .carousel__controls a:before{display:none}.carousel .carousel__controls a:first-child:last-child{display:none}.carousel .carousel__controls>a:nth-child(10)~a{display:none}.carousel.hide-btns .carousel__wrapper>.btn{display:none}.carousel:not(.hide-btns) .carousel__inner{margin-left:1.75rem;margin-right:1.75rem}.carousel .carousel__wrapper>.btn{position:absolute;top:50%;left:-1.25rem;transform:translateY(-50%)}.carousel .carousel__wrapper>.btn.btn-next{left:auto;right:-1.25rem}@media screen and (min-width: 62em){.carousel .carousel__wrapper>.btn{margin-left:-1rem;margin-right:-1rem}}.carousel .carousel__inner>.row>.col:first-child{margin-left:0!important}@media screen and (min-width: 36em){.carousel .carousel__controls>a:nth-child(10)~a{display:inline-block}.carousel .carousel__inner>.row[class*=row-cols-sm-]>.col{scroll-snap-align:unset}.carousel .carousel__inner>.row-cols-sm-2>.col:nth-child(odd),.carousel .carousel__inner>.row-cols-sm-3>.col:nth-child(3n+1),.carousel .carousel__inner>.row-cols-sm-4>.col:nth-child(4n+1),.carousel .carousel__inner>.row-cols-sm-5>.col:nth-child(5n+1),.carousel .carousel__inner>.row-cols-sm-6>.col:nth-child(6n+1){scroll-snap-align:start}body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-2>.col:nth-child(odd),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-3>.col:nth-child(3n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-4>.col:nth-child(4n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-5>.col:nth-child(5n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-sm-6>.col:nth-child(6n+1){margin-left:4rem}.carousel .carousel__controls.cols-sm-2>a:not(:nth-child(odd)),.carousel .carousel__controls.cols-sm-3>a:not(:nth-child(3n+1)),.carousel .carousel__controls.cols-sm-4>a:not(:nth-child(4n+1)),.carousel .carousel__controls.cols-sm-5>a:not(:nth-child(5n+1)),.carousel .carousel__controls.cols-sm-6>a:not(:nth-child(6n+1)){display:none}.carousel .carousel__controls.cols-sm-2>a:first-child:nth-last-child(2),.carousel .carousel__controls.cols-sm-3>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3)),.carousel .carousel__controls.cols-sm-4>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4)),.carousel .carousel__controls.cols-sm-5>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5)),.carousel .carousel__controls.cols-sm-6>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5),a:first-child:nth-last-child(6)){display:none}.carousel.hide-sm-btns .carousel__wrapper>.btn{display:none}.carousel.hide-sm-btns .carousel__inner{margin-left:0;margin-right:0}}@media screen and (min-width: 62em){.carousel .carousel__inner>.row[class*=row-cols-md-]>.col{scroll-snap-align:unset;margin-left:0}.carousel .carousel__inner>.row-cols-md-2>.col:nth-child(odd),.carousel .carousel__inner>.row-cols-md-3>.col:nth-child(3n+1),.carousel .carousel__inner>.row-cols-md-4>.col:nth-child(4n+1),.carousel .carousel__inner>.row-cols-md-5>.col:nth-child(5n+1),.carousel .carousel__inner>.row-cols-md-6>.col:nth-child(6n+1){scroll-snap-align:start}body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-2>.col:nth-child(odd),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-3>.col:nth-child(3n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-4>.col:nth-child(4n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-5>.col:nth-child(5n+1),body:not(.js-enabled) .carousel .carousel__inner>.row-cols-md-6>.col:nth-child(6n+1){margin-left:50vw}.carousel .carousel__controls.cols-md-2>a:not(:nth-child(odd)),.carousel .carousel__controls.cols-md-3>a:not(:nth-child(3n+1)),.carousel .carousel__controls.cols-md-4>a:not(:nth-child(4n+1)),.carousel .carousel__controls.cols-md-5>a:not(:nth-child(5n+1)),.carousel .carousel__controls.cols-md-6>a:not(:nth-child(6n+1)){display:none}.carousel .carousel__controls.cols-md-2>a:first-child:nth-last-child(2),.carousel .carousel__controls.cols-md-3>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3)),.carousel .carousel__controls.cols-md-4>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4)),.carousel .carousel__controls.cols-md-5>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5)),.carousel .carousel__controls.cols-md-6>:is(a:first-child:nth-last-child(2),a:first-child:nth-last-child(3),a:first-child:nth-last-child(4),a:first-child:nth-last-child(5),a:first-child:nth-last-child(6)){display:none}.carousel.hide-md-btns .carousel__wrapper>.btn{display:none}.carousel.hide-md-btns .carousel__inner{margin-left:0;margin-right:0}}.testimonial{--testimonial-padding: 1rem;--testimonial-spacing: 1rem}@media screen and (min-width: 62em){.testimonial{--testimonial-padding: 4rem;--testimonial-spacing: 2rem}}.testimonial>div:first-child{position:relative;overflow:hidden}.testimonial .circle{color:currentColor;position:absolute;top:-18rem;right:-8rem;font-size:28rem;border-width:4px}.testimonial__images{overflow:auto;scroll-snap-type:x mandatory;display:flex;user-select:none;touch-action:pan-x;height:14.375rem}@media screen and (min-width: 36em){.testimonial__images{height:21.25rem}}@media screen and (min-width: 62em){.testimonial__images{min-height:100%;scroll-snap-type:y mandatory;flex-direction:column;touch-action:pan-y}}.testimonial__images img{scroll-snap-align:start;user-select:none;pointer-events:none;flex-shrink:0}.testimonial .testimonial__controls{display:none}.testimonial.testimonial--multi .testimonial__controls{display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}@media screen and (min-width: 62em){.testimonial.testimonial--multi .testimonial__controls{left:auto;bottom:auto;right:0;top:50%;transform:rotate(90deg) translateY(-120%);transform-origin:center}}.testimonial h2{padding:2rem var(--testimonial-padding) 0 var(--testimonial-padding)}@media screen and (min-width: 36em){.testimonial h2{padding-top:3rem}}@media screen and (min-width: 62em){.testimonial h2{padding-top:9rem}}.testimonial__content{--display-none: none;margin:0 var(--testimonial-padding) var(--testimonial-spacing) var(--testimonial-padding);position:relative}@media screen and (min-width: 62em){.testimonial__content{--display-none: block}.testimonial__content blockquote:not(.largest){position:absolute;top:0}}.testimonial[data-show="1"] blockquote:not(:nth-child(1)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="2"] blockquote:not(:nth-child(2)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="3"] blockquote:not(:nth-child(3)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="4"] blockquote:not(:nth-child(4)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="5"] blockquote:not(:nth-child(5)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="6"] blockquote:not(:nth-child(6)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="7"] blockquote:not(:nth-child(7)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="8"] blockquote:not(:nth-child(8)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="9"] blockquote:not(:nth-child(9)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial[data-show="10"] blockquote:not(:nth-child(10)){display:var(--display-none);opacity:0;user-select:none;pointer-events:none}.testimonial__after{padding:1rem var(--testimonial-padding) var(--testimonial-spacing) var(--testimonial-padding)}.testimonial__images::-webkit-scrollbar{display:none}.testimonial__images{-ms-overflow-style:none;scrollbar-width:none}.property-searchbar fieldset{position:relative}@media screen and (min-width: 62em){.property-searchbar fieldset{position:relative;padding-right:1.5rem}.property-searchbar fieldset:after{content:"";position:absolute;top:0;right:.5rem;display:block;height:100%;width:1px;background-color:var(--colour-muted);opacity:.25}}.property-searchbar .form-control__wrapper{margin-bottom:1rem}@media screen and (min-width: 62em){.property-searchbar .form-control__wrapper{margin-bottom:0}}.property-searchbar .form-label,.property-searchbar label{font-size:.875rem;text-transform:uppercase}@media screen and (min-width: 62em){.property-searchbar .row .row .form-label{display:none}.property-searchbar .form-control,.property-searchbar .form-select{padding:.5rem 1.5rem .5rem .5rem}.property-searchbar .form-select{background-position:right .5rem center}}.property-searchbar .input--locations{padding-right:5.5rem}.property-searchbar .select--miles{position:absolute;bottom:0rem;right:.5rem;width:5rem}@media screen and (min-width: 62em){.property-searchbar .select--miles{right:1.5rem}}.property-searchbar .select--miles label{display:none}.property-searchbar .select--miles select{background-color:transparent;border-color:transparent}@media screen and (min-width: 62em){.property-searchbar .property-searchbar__btn{align-items:flex-end}}.property-searchbar button{margin-top:1rem;margin-bottom:1rem}@media screen and (min-width: 62em){.property-searchbar button{margin:0;padding-left:3.5rem;padding-right:3.5rem}}.property-searchbar--hero .property-searchbar{--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: var(--colour-canvas);padding:1rem;background-color:#fff;width:100%;border-radius:.625rem;-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.24);box-shadow:0 2px 4px #0000003d;position:relative}.property-searchbar--hero .property-searchbar .text-primary{color:var(--colour-primary)!important}@media screen and (min-width: 62em){.property-searchbar--hero .property-searchbar{border-radius:3rem;padding:1.5rem 2.5rem}.property-searchbar--hero .property-searchbar .form-label,.property-searchbar--hero .property-searchbar label{margin-bottom:0}.property-searchbar--hero .property-searchbar .form-control,.property-searchbar--hero .property-searchbar .form-select{margin-left:-.5rem;border:none;padding-top:.25rem;padding-bottom:.25rem}.property-searchbar--hero .property-searchbar .form-select{background-position:right 0rem center;padding-right:1rem}.property-searchbar--hero .property-searchbar .property-searchbar__btn{align-items:center}}.nav .nav__mobile-bar{background:var(--colour-primary);color:#fff;--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme);display:flex;flex-direction:column;flex-wrap:nowrap;width:23.4375rem}@media screen and (min-width: 36em){.nav .nav__mobile-bar{width:100%}}.nav .nav__mobile-bar>.container{padding-top:1rem;padding-bottom:1rem;flex-shrink:0;overflow:visible}.nav{overflow-x:hidden;font-weight:700}.nav__inner,.nav__menu--account{display:flex;flex-direction:column;flex-wrap:nowrap}.nav__inner>.container,.nav__menu--account>.container{padding-top:1rem;padding-bottom:0;flex-shrink:0;overflow:visible;z-index:unset}.nav__menu{padding-top:2.25rem;padding-bottom:1rem}.nav .brand{font-size:2.25rem}@media screen and (min-width: 62em){.nav .brand{font-size:3.75rem}}.nav__logo img{height:2.25rem;width:auto}@media screen and (min-width: 36em){.nav__logo img{height:3.75rem;width:auto}}.nav__search-btn,.nav__menu-btn{display:flex}.nav__search-btn label,.nav__menu-btn label{height:1.125rem;width:1.5rem;text-indent:-300%;overflow:hidden;position:relative;cursor:pointer;color:var(--colour-link)}.nav__search-btn label:hover,.nav__search-btn label:focus,.nav__menu-btn label:hover,.nav__menu-btn label:focus{color:var(--colour-hover)}.nav__search-btn label:active,.nav__menu-btn label:active{color:var(--colour-active)}.nav__search-btn label:before,.nav__search-btn label:after,.nav__menu-btn label:before,.nav__menu-btn label:after{content:"";position:absolute;width:0%;height:2px;top:calc(50% - 1px);left:0;background:currentColor;transform-origin:50% 50%;transition:transform .5s,width .5s}.nav__search-btn label{text-indent:0;overflow:visible}.nav__search-btn .icon{height:2rem;width:2rem;margin-top:-.5rem;margin-left:-.0625rem;transition:opacity .5s;color:inherit}.nav__search-btn .icon__outline{stroke-width:2px;stroke:currentColor}.nav__menu-btn{display:flex}.nav__menu-btn label{border-top:2px solid currentColor;border-bottom:2px solid currentColor}.nav__menu-btn label:before,.nav__menu-btn label:after{width:100%}.nav__account-btn label{font-size:1.125rem;text-indent:0;overflow:visible;color:var(--colour-body);height:3rem;line-height:3rem;display:block;border-top:1px solid var(--colour-border);border-bottom:1px solid var(--colour-border)}.nav__account-btn .icon{height:1.75rem;width:1.75rem;margin-top:-.5rem;margin-right:.5rem;transition:opacity .5s;color:inherit}.nav__account-btn .icon__outline{stroke-width:2px;stroke:currentColor}.nav__menu>ul{margin-bottom:0}.nav__menu>ul>li>a{font-size:1.125rem;line-height:2rem;display:inline-block;position:relative;text-decoration:none}.nav__menu>ul>li>a.current{border-left:.375rem solid var(--colour-info);margin-left:-1.25rem;padding-left:.875rem}@media screen and (min-width: 62em){.nav__menu--search{display:none}#showSearch:checked~.nav__inner>.nav__menu--search{order:2;position:absolute;top:100%;left:0;width:100%;background:rgba(0,0,0,.6);height:calc(100vh - 5rem);display:block}}.services{line-height:2rem}.services li{display:flex;justify-content:space-between}.services .service--active:before{content:"";height:1em;width:1em;display:inline-block;background:var(--colour-secondary);margin-right:.5rem;margin-bottom:-.1em;border-radius:50%}.credits{border:2px solid var(--colour-primary);padding:1rem;margin-bottom:2rem;border-radius:.625rem}.credits .h5,.credits ul{padding-inline:1rem}.credits>*:last-child{margin-bottom:0!important}.nav[class*=bg-] .nav__inner{background-color:transparent}.nav__menu--secondary{flex-grow:1;font-weight:700}.nav__menu--secondary .nav__section-link{pointer-events:none;font-weight:700;color:var(--colour-link);font-size:1.125rem}.nav__menu--secondary>.container>ul>li{padding-block:.375rem}.nav__menu--secondary>.container>ul>li:not(:last-child){border-bottom:1px solid var(--colour-border)}.nav__menu--secondary>.container>ul>li a{display:inline-block;font-size:1.125rem;line-height:2.25rem;text-decoration:none;font-weight:700}.nav__menu--secondary>.container>ul>li ul{padding:0}.nav__menu--secondary>.container>ul>li ul a{font-weight:400}.nav__menu--secondary>.container>ul>li ul a .icon{display:none}.nav{position:sticky;top:0;left:0;width:100%;z-index:var(--index-menu)}.nav.is-stuck{-webkit-box-shadow:0 4px 20px -10px rgba(51,51,51,.25);box-shadow:0 4px 20px -10px #33333340}nav+main>*:first-child{padding-top:2rem}.nav__menu,.nav__btn,.nav__menu--secondary{display:none}.nav__inner,.nav__menu--account{position:absolute;top:0;left:100%;background:var(--colour-canvas);z-index:2;width:100%;overscroll-behavior:contain}@media screen and (min-width: 36em){.nav__inner,.nav__menu--account{width:23.4375rem}}.nav__menu--account{z-index:2;height:100vh}.nav:has(#showMenu:checked){min-height:100vh}#showMenu:checked~.nav__inner,#showAccount:checked~.nav__menu--account{height:100vh;overflow:visible;overflow-x:auto;left:0}@media screen and (min-width: 36em){#showMenu:checked~.nav__inner,#showAccount:checked~.nav__menu--account{left:calc(100% - 23.4375rem)}}@media screen and (min-width: 62em){#showAccount~.nav__menu--account{display:none}#showAccount:checked~.nav__menu--account{left:0;width:100%;height:auto;display:block;top:6rem;border-top:.3125rem solid var(--colour-primary);border-bottom:1px solid var(--colour-border-light);-webkit-box-shadow:0px 3px 6px 0px rgba(0,0,0,.16);-moz-box-shadow:0px 3px 6px 0px rgba(0,0,0,.16);box-shadow:0 3px 6px #00000029}}#showMenu:checked~div .nav__menu,#showMenu:checked~div .nav__btn,#showMenu:checked~div .nav__menu--secondary,#showMenu:not(:checked)~#showSearch:checked~div .nav__menu--search{display:block}#showMenu:checked~div .nav__menu-btn label,#showSearch:checked~div .nav__search-btn label{border:0}#showMenu:checked~div .nav__menu-btn label .icon,#showSearch:checked~div .nav__search-btn label .icon{opacity:0}#showMenu:checked~div .nav__menu-btn label:before,#showSearch:checked~div .nav__search-btn label:before{width:100%;transform:rotate(45deg)}#showMenu:checked~div .nav__menu-btn label:after,#showSearch:checked~div .nav__search-btn label:after{width:100%;transform:rotate(-45deg)}@media screen and (min-width: 36em){#showMenu:checked~.nav__bg{content:" ";position:absolute;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);z-index:1}}@media screen and (min-width: 62em){.nav__bg{display:none}}@media screen and (min-width: 62em){.nav .nav__mobile-bar{display:none}.nav__logo{height:4rem}#showMenu:checked~.nav__inner,.nav__inner{overflow:visible;position:static;width:100%}.nav .nav__menu{display:flex;padding-bottom:0}.nav__btn,.nav__menu--secondary{display:flex}.nav .nav__inner>.container{padding-bottom:1rem}.nav__search-btn,.nav__btn{order:2;margin-left:1rem}.nav__search-btn .btn,.nav__btn .btn{margin-bottom:0}.nav__menu{padding-top:0}.nav__menu>.list-unstyled{margin-left:-1.5rem!important;margin-right:-1.5rem!important;width:calc(100% + 3rem);margin-bottom:0;padding-top:0;padding-left:1.5rem;padding-right:1.5rem}.nav__menu>.list-unstyled>li{display:inline-block;padding-left:1rem;padding-right:1rem}.nav__menu>.list-unstyled>li:not(:last-child){border-right:1px solid var(--colour-border)}.nav__menu>.list-unstyled>li>a{line-height:1.75rem}.nav__menu>.list-unstyled>li>a.current{border-left:none;padding-left:0;border-bottom:.1875rem solid var(--colour-info)}.nav__account-btn{max-width:fit-content!important}.nav__account-btn label{border:none!important;padding-top:.5rem;position:relative;padding-right:2.5rem}.nav__account-btn label:after{content:"";position:absolute;top:calc(50% + .5rem);right:0;width:1.5em;height:1.5em;background:currentColor;mask-image:var(--icon-arrow);mask-size:50%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:50%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transition:transform .2s ease-in-out;transform:rotate(90deg) translate(-50%)}.nav .nav__menu--secondary>.container>.list-unstyled{font-size:.9375rem;padding-top:0}}@media screen and (min-width: 62em){.nav__menu--secondary{background-color:var(--colour-primary);--colour-canvas: #262626;--colour-canvas-2: #313131;--colour-body: #BFBFBF;--colour-heading: var(--colour-white);--colour-link: var(--colour-white);--colour-hover: var(--colour-white);--colour-active: var(--colour-white);--colour-border: var(--colour-white);--colour-brand: var(--colour-white);--colour-btn: #00313c;--colour-btn-border: var(--colour-white);--colour-btn-bg: var(--colour-white);--colour-btn-hover: var(--colour-white);--colour-btn-secondary: var(--colour-white);--colour-btn-secondary-border: var(--colour-white);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-white);--colour-btn-secondary-hover: var(--colour-primary-theme)}.nav__menu--secondary .nav__section-link{pointer-events:all}.nav__menu--secondary>.container{padding-bottom:0}.nav__menu--secondary>.container>.list-unstyled{margin-left:-1rem!important;margin-right:-1rem!important;width:calc(100% + 2rem);margin-bottom:0}.nav__menu--secondary>.container>.list-unstyled>li{display:inline-block;padding-left:1rem;padding-right:1rem;border:none!important;padding-block:0;position:relative}.nav__menu--secondary>.container>.list-unstyled>li a,.nav__menu--secondary>.container>.list-unstyled>li .nav__section-link{display:block;line-height:2.25rem;padding-block:.5rem;cursor:pointer}.nav__menu--secondary>.container>.list-unstyled>li ul{display:none}.nav__menu--secondary>.container>.list-unstyled>li:hover>.nav__section-link,.nav__menu--secondary>.container>.list-unstyled>li:focus>.nav__section-link,.nav__menu--secondary>.container>.list-unstyled>li:focus-within>.nav__section-link{color:var(--colour-selected)}.nav__menu--secondary>.container>.list-unstyled>li:hover ul,.nav__menu--secondary>.container>.list-unstyled>li:focus ul,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul{display:block;background:white;position:absolute;top:100%;left:0;padding-top:1rem;-webkit-box-shadow:0 4px 20px -10px rgba(51,51,51,.25);box-shadow:0 4px 20px -10px #33333340;--colour-muted: #9d9d9d;--colour-body: #595959;--colour-border: #D8D8D8;--colour-link: var(--colour-primary-theme);--colour-brand: var(--colour-primary);--colour-underline: var(--colour-secondary);--colour-heading: var(--colour-primary);--colour-focus: var(--colour-primary-theme);--colour-hover: var(--colour-primary-theme);--colour-active: var(--colour-primary-theme);--colour-selected: var(--colour-info);--colour-inverted: #FCFCFC;--colour-btn: var(--colour-primary-theme);--colour-btn-bg: var(--colour-warning);--colour-btn-border: var(--colour-warning);--colour-btn-bg-hover: transparent;--colour-btn-hover: var(--colour-primary-theme);--colour-btn-secondary: var(--colour-primary-theme);--colour-btn-secondary-border: var(--colour-primary-theme);--colour-btn-secondary-bg: transparent;--colour-btn-secondary-bg-hover: var(--colour-primary-theme);--colour-btn-secondary-hover: var(--colour-inverted);--colour-canvas-2: var(--colour-canvas);--colour-admin: var(--colour-admin-theme)}.nav__menu--secondary>.container>.list-unstyled>li:hover ul .text-primary,.nav__menu--secondary>.container>.list-unstyled>li:focus ul .text-primary,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul .text-primary{color:var(--colour-primary)!important}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li{padding-inline:1.5rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li:last-child,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li:last-child,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li:last-child{padding-bottom:1rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li.nav__download{background:var(--colour-admin);padding-top:1rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul li.nav__download+li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus ul li.nav__download+li.nav__download,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul li.nav__download+li.nav__download{padding-top:0}.nav__menu--secondary>.container>.list-unstyled>li:hover ul a,.nav__menu--secondary>.container>.list-unstyled>li:focus ul a,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul a{white-space:nowrap;padding:0;line-height:3rem}.nav__menu--secondary>.container>.list-unstyled>li:hover ul a .icon,.nav__menu--secondary>.container>.list-unstyled>li:focus ul a .icon,.nav__menu--secondary>.container>.list-unstyled>li:focus-within ul a .icon{display:inline-block;font-size:1.5em;padding:0;margin:-.15em .25em 0 0}.nav__menu--secondary>.container>.logout-button{display:none}}@media screen and (min-width: 62em){.nav__menu--account>.container:first-child{display:none}.nav__menu--account>.container:not(:first-child){display:flex;flex-wrap:wrap;gap:2rem;align-items:start}.nav__menu--account>.container:not(:first-child):before{display:none}.nav__menu--account>.container:not(:first-child)>.row,.nav__menu--account>.container:not(:first-child) .nav__featured-link,.nav__menu--account>.container:not(:first-child) .credits{flex-basis:22%;flex-grow:1;margin:0}.nav__menu--account>.container:not(:first-child)>.row>.col:first-child,.nav__menu--account>.container:not(:first-child) .nav__featured-link>.row>.col:first-child{max-width:100%!important;width:100%;flex-shrink:0;min-width:100%;margin-bottom:1rem}.nav__menu--account>.container:not(:first-child) .logout-button{min-width:100%}}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu{position:static;height:4.5rem;margin-bottom:-5rem}}.nav .list-unstyled>li details.nav__mega-menu .inner{z-index:5}.nav .list-unstyled>li details.nav__mega-menu .inner [class*=bg-]{--bs-bg-opacity: 0}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu .inner [class*=bg-]{--bs-bg-opacity: 1}}@media screen and (min-width: 62em){.nav .list-unstyled>li details.nav__mega-menu .inner{--bs-bg-opacity: 1;position:absolute;top:100%;left:50%;width:100vw!important;max-width:100vw!important;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translate(-50%);background:rgba(0,0,0,.6);height:calc(100vh - 8rem);pointer-events:none;padding-top:0}.nav .list-unstyled>li details.nav__mega-menu .inner .container{padding:0 1.5rem 1rem!important;max-width:90rem!important;text-align:left;pointer-events:all;display:flex}.nav .list-unstyled>li details.nav__mega-menu .inner .container>div{padding:2.25rem}}.nav--inline-search .nav__menu form{position:relative}.nav--inline-search .nav__menu form .form-control__wrapper .form-control{padding-right:3rem}.nav--inline-search .nav__menu form button{position:absolute;bottom:0;right:0;margin:0;z-index:var(--index-focus);border-color:transparent;background:transparent;padding:.85rem 0rem}.nav--inline-search .nav__menu form button .icon{stroke:currentColor}@media screen and (min-width: 62em){.nav--inline-search .nav__menu>.list-unstyled{text-align:left;margin-right:0!important}.nav--inline-search .nav__menu form{min-width:21.875rem;position:relative}.nav--inline-search .nav__menu form .form-control__wrapper{margin-bottom:0;display:flex;align-items:center}.nav--inline-search .nav__menu form .form-control__wrapper label{white-space:nowrap;padding-right:1rem}.nav--inline-search .nav__menu form .form-control__wrapper .form-control{padding:.4375rem 3rem .4375rem 1rem}.nav--inline-search .nav__menu form button{padding:.5rem 0rem}}@media screen and (min-width: 62em){.nav--admin .nav__logo{height:3rem}.nav--admin .nav__logo .brand{font-size:3rem}}.nav--just-account .nav__menu,.nav--just-account .nav__account-btn{display:none!important}@media screen and (min-width: 62em){.nav--just-account .nav__menu,.nav--just-account .nav__account-btn{display:block!important}}.nav--just-account #showMenu:checked~.nav__menu--account{height:100vh;overflow:visible;overflow-x:auto;left:0;pointer-events:none;background:transparent}@media screen and (min-width: 36em){.nav--just-account #showMenu:checked~.nav__menu--account{width:23.4375rem;left:calc(100% - 23.4375rem)}}.nav--just-account #showMenu:checked~.nav__menu--account>.container:first-child{opacity:0}.nav--just-account #showMenu:checked~.nav__menu--account>.container:not(:first-child){pointer-events:all}.stepper{background:#f0f0f0;display:flex;flex-wrap:wrap;margin-bottom:2rem;border:1px solid var(--colour-canvas);overflow:hidden}@media screen and (min-width: 62em){.stepper{flex-wrap:nowrap;overflow-x:auto}}.stepper ol{margin:0;z-index:1;background:var(--colour-canvas);counter-reset:section;width:100%;overflow:auto}@media screen and (min-width: 36em){.stepper ol{display:flex;flex-grow:1;padding-right:calc(2rem + 1px);margin-top:-1px;margin-bottom:-1px;margin-right:calc(-2rem - 2px);clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%)}}@media screen and (min-width: 62em){.stepper ol{overflow:initial}}.stepper ol li{width:100%;max-width:100%;background:var(--colour-canvas);padding:1px}@media screen and (min-width: 36em){.stepper ol li:first-child a{padding-left:1rem;clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%)}}@media screen and (min-width: 62em){.stepper ol li:first-child a{padding-left:2rem}}.stepper ol li a{display:block;padding:1rem;text-decoration:none;background:var(--colour-muted);line-height:1;position:relative;color:var(--colour-primary)}@media screen and (min-width: 36em){.stepper ol li a{margin-right:-2rem;padding:2rem 3rem;clip-path:polygon(0 0,calc(100% - 2rem) 0,100% 50%,calc(100% - 2rem) 100%,0 100%,2rem 50%);display:flex;height:100%;vertical-align:baseline;justify-content:center;align-items:center}}.stepper ol li a span{position:relative;display:inline;padding-left:2.25rem}.stepper ol li a span:before{counter-increment:section;content:counter(section);display:block;position:absolute;top:50%;left:0;transform:translateY(-50%);margin-right:.5rem;font-size:.75em;border-radius:50%;border:2px solid currentColor;height:1.5rem;line-height:1.3rem;width:1.5rem;font-family:var(--font-heading);text-align:center}.stepper ol li a.bg-warning span:before,.stepper ol li a.bg-danger span:before{content:"!"}.stepper ol li a.bg-success span:before{content:"\2713";text-indent:-.1em}.stepper ol li a.current{background:var(--colour-primary);color:#fff;pointer-events:none}.stepper ol li a:not([href]){pointer-events:none}.stepper ol li a[href]:hover{opacity:.6}.stepper ol li a[href]:active{opacity:.8}.stepper>span{width:100%;display:flex;padding:1rem;flex-shrink:0;margin:0;position:relative;z-index:0;align-items:center}.stepper>span.stepper__end{display:none}@media screen and (min-width: 62em){.stepper>span{width:max-content;padding:2rem}.stepper>span.stepper__end{padding-left:3.5rem;display:flex}}.tabs:not(.admin-panel){position:relative}.tabs__links{margin-bottom:1.5rem;overflow:visible;padding-bottom:2px;position:relative;display:block}.tabs__links:after{content:"";left:50%;position:relative;height:3px;width:100vw;border-bottom:1px solid var(--colour-border);transform:translate(-50%);display:block;clear:both}.tabs__links .link:not(.text-decoration-none):not(.btn){--is-current: 0;font-weight:700;font-family:var(--font-heading);font-size:1.125rem;cursor:pointer;margin:.5rem 1.5rem 0 0;padding:0;display:inline-block}.tabs__links .link:not(.text-decoration-none):not(.btn):last-child{margin-inline-end:0}.tabs__links .link:not(.text-decoration-none):not(.btn):after{position:absolute;content:"";top:100%;left:50%;height:2px;transform:translate(-50%);background:var(--colour-info);transition:width .5s;width:0%}.tabs__links .link:not(.text-decoration-none):not(.btn):hover:after,.tabs__links .link:not(.text-decoration-none):not(.btn):focus:after,.tabs__links .link:not(.text-decoration-none):not(.btn).focus:after{width:60%}.tabs__links .link:not(.text-decoration-none):not(.btn)[aria-pressed=true]:after,.tabs__links .link:not(.text-decoration-none):not(.btn):active:after,.tabs__links .link:not(.text-decoration-none):not(.btn).active:after{width:100%}.tabs__links .link:not(.text-decoration-none):not(.btn)[aria-pressed=true],.tabs__links .link:not(.text-decoration-none):not(.btn).active{pointer-events:none;outline:var(--contrast-outline-width, 0px) solid var(--colour-primary-theme)!important}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"name": "iamproperty"
|
|
6
6
|
},
|
|
7
7
|
"private": false,
|
|
8
|
-
"version": "3.7.
|
|
8
|
+
"version": "3.7.5",
|
|
9
9
|
"scripts": {
|
|
10
10
|
"bootstrap": "copyfiles -u 2 node_modules/bootstrap/**/* assets/bootstrap",
|
|
11
11
|
"dev": "npm run copy && node local_modules/delete-assets.js && vite --host",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<iam-notification>
|
|
3
|
+
<slot></slot>
|
|
4
|
+
</iam-notification>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
import iamNotification from '../../../assets/js/components/notification/notification.component.js'
|
|
9
|
+
|
|
10
|
+
export default {
|
|
11
|
+
name: 'Notification',
|
|
12
|
+
props: {
|
|
13
|
+
|
|
14
|
+
},
|
|
15
|
+
created(){
|
|
16
|
+
|
|
17
|
+
this.$nextTick(function () {
|
|
18
|
+
|
|
19
|
+
if (!window.customElements.get('iam-notification'))
|
|
20
|
+
window.customElements.define('iam-notification', iamNotification);
|
|
21
|
+
})
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
</script>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
```
|
|
2
|
+
<!-- Inline -->
|
|
3
|
+
<Notification data-status="danger" data-dismiss="">
|
|
4
|
+
<strong>Just an example</strong><br> Alert message will display here <a href="/" data-dismiss-button="" slot="btns" class="link">Retry</a>
|
|
5
|
+
</Notification>
|
|
6
|
+
|
|
7
|
+
<!-- Alert -->
|
|
8
|
+
<Notification data-type="alert" data-status="danger" data-dismiss="">
|
|
9
|
+
<strong>Just an example</strong><br> Alert message will display here <a href="/" data-dismiss-button="" slot="btns" class="link">Retry</a>
|
|
10
|
+
</Notification>
|
|
11
|
+
|
|
12
|
+
<!-- Toast -->
|
|
13
|
+
<Notification data-type="toast" data-status="danger" data-dismiss="">
|
|
14
|
+
<strong>Just an example</strong><br> Alert message will display here <a href="/" data-dismiss-button="" slot="btns" class="link">Retry</a>
|
|
15
|
+
</Notification>
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**Properties**
|
|
20
|
+
|
|
21
|
+
| Option | Type | Default Value | Description |
|
|
22
|
+
| ------ | ---- | ------------- | ----------- |
|
|
23
|
+
| data-status | String | info | Choose from danger,succes and warning. This will change the colour of the notification box and which icon is shown. |
|
|
24
|
+
| data-type | String | inline | Choose from alert and toast. This will change the behavour of the component. |
|
|
25
|
+
| data-dismiss | Boolean | - | Adds a close button which will remove the alert box after clicking it. |
|
|
26
|
+
| data-timeout | Boolean | - | Adds a timer for how long the notification will appear. |
|
|
27
|
+
|
|
28
|
+
**Slots**
|
|
29
|
+
|
|
30
|
+
| Option | Default Value | Description |
|
|
31
|
+
| ------ | ------------- | ----------- |
|
|
32
|
+
| default | - | This is the content of the notification box |
|
package/src/index.js
CHANGED
|
@@ -19,8 +19,9 @@ export { default as Stepper } from './components/Stepper/Stepper.vue'
|
|
|
19
19
|
export { default as Step } from './components/Stepper/Step.vue'
|
|
20
20
|
export { default as Tabs } from './components/Tabs/Tabs.vue'
|
|
21
21
|
export { default as Tab } from './components/Tabs/Tab.vue'
|
|
22
|
-
export { default as Alert } from './components/Alert/Alert.vue'
|
|
23
22
|
export { default as NoteFeed } from './components/NoteFeed/NoteFeed.vue'
|
|
24
23
|
|
|
25
24
|
export { default as AppliedFilters } from './components/AppliedFilters/AppliedFilters.vue'
|
|
26
25
|
export { default as Filterlist } from './components/Filterlist/Filterlist.vue'
|
|
26
|
+
|
|
27
|
+
export { default as Notification } from './components/Notification/Notification.vue'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.alert__inner{position:relative;padding:1.5rem;margin-bottom:2rem;border-radius:.375rem}.alert__inner:not(.bg-primary):not(.bg-dark):not(.bg-danger){--colour-body: black;color:#000}.alert__inner>*:last-child{margin-bottom:0}.alert__inner>*{max-width:100%}.alert--fixed{position:fixed;padding-top:2rem;z-index:var(--index-floating);left:50%;transform:translate(-50%, 0);bottom:0}@media(forced-colors: active){.alert .alert__inner{border:1px solid CanvasText;color:CanvasText}}.alert--dismissible .alert__inner{padding-right:4rem;overflow:hidden}.alert--dismissible .alert__inner .btn-close{position:absolute;top:1.5rem;right:1.5rem;height:1rem;width:1rem;padding:0;border:none;z-index:var(--index-focus);background:currentColor;mask-image:var(--icon-close);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-close);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%}@media(forced-colors: active){.alert--dismissible .alert__inner .btn-close{border:1px solid CanvasText;mask-image:none;-webkit-mask-image:none}.alert--dismissible .alert__inner .btn-close:before{content:"X"}}.alert__holder{position:fixed;z-index:var(--index-floating);bottom:0;left:0;width:100%;max-height:100vh;overflow:auto;background:linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4))}.alert__holder>*:first-child{margin-top:2rem}.alert__holder .alert--fixed{position:static;transform:none;padding-top:0}[data-timeout] .alert__inner:after{content:"";position:absolute;bottom:0;left:0;width:0%;height:.25rem;background:#000;animation:progress var(--animation-length) linear}@keyframes progress{0%{width:0%}100%{width:100%}}/*# sourceMappingURL=alert.css.map */
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../sass/components/alert.scss","../../bootstrap/scss/mixins/_border-radius.scss"],"names":[],"mappings":"AAIE,cACE,kBACA,eACA,mBCYA,sBDRA,6DACE,qBACA,WAGF,2BACE,gBAGF,gBACE,eAIJ,cACE,eACA,iBACA,8BACA,SACA,6BACA,SAGF,8BAEE,qBACE,4BACA,kBAMN,kCACE,mBACA,gBAGA,6CACE,kBACA,WACA,aACA,YACA,WACA,UACA,YACA,2BACA,wBACA,6BACA,eACA,sBACA,sBACA,qCACA,uBACA,8BACA,8BAEA,8BAnBF,6CAwBI,4BACA,gBACA,wBALA,oDACE,aASR,eACE,eACA,8BACA,SACA,OACA,WACA,iBACA,cACA,iEAEA,6BACE,gBAGF,6BACE,gBACA,eACA,cAIJ,mCAEE,WACA,kBACA,SACA,OACA,SACA,cACA,gBACA,kDAGF,oBACE,GACE,SAEF,KACI","file":"alert.css"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
function alert(element) {
|
|
3
|
-
// Create a dissmissable button
|
|
4
|
-
element.addEventListener('click', function (e) {
|
|
5
|
-
for (var target = e.target; target && target != this; target = target.parentNode) {
|
|
6
|
-
if (target.matches('.btn-close')) {
|
|
7
|
-
e.preventDefault();
|
|
8
|
-
element.classList.remove('show');
|
|
9
|
-
setTimeout(function () {
|
|
10
|
-
element.remove();
|
|
11
|
-
}, 300); // Execute something() 1 second later.
|
|
12
|
-
break;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}, false);
|
|
16
|
-
// Self disappearing alert
|
|
17
|
-
if (element.hasAttribute('data-timeout')) {
|
|
18
|
-
let timeOut = element.getAttribute('data-timeout');
|
|
19
|
-
setTimeout(function () {
|
|
20
|
-
element.classList.remove('show');
|
|
21
|
-
setTimeout(function () {
|
|
22
|
-
element.remove();
|
|
23
|
-
}, 300); // Execute something() 1 second later.
|
|
24
|
-
}, timeOut); // Execute something() 1 second later.
|
|
25
|
-
}
|
|
26
|
-
// Create an alert holder thats fixed to the bottom of the page, alerts with the class of alert--fix are then moved to this area. Creating a fixed but scrollable area that alerts can be stacked up on.
|
|
27
|
-
if (!document.querySelector('.alert__holder')) {
|
|
28
|
-
var bodyElement = document.getElementsByTagName("BODY")[0];
|
|
29
|
-
let newDiv = document.createElement("div");
|
|
30
|
-
newDiv.classList.add('alert__holder');
|
|
31
|
-
if (document.querySelector('main'))
|
|
32
|
-
document.querySelector('main').appendChild(newDiv);
|
|
33
|
-
else
|
|
34
|
-
document.body.appendChild(newDiv);
|
|
35
|
-
}
|
|
36
|
-
let alertHolder = document.querySelector('.alert__holder');
|
|
37
|
-
if (element.classList.contains('alert--fixed') && !element.parentNode.classList.contains('alert__wrapper')) {
|
|
38
|
-
alertHolder.appendChild(element);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
export default alert;
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
@use "../_func" as *;
|
|
2
|
-
|
|
3
|
-
.alert {
|
|
4
|
-
|
|
5
|
-
&__inner {
|
|
6
|
-
position: relative;
|
|
7
|
-
padding: 1.5rem;
|
|
8
|
-
margin-bottom: 2rem;
|
|
9
|
-
@include border-radius($alert-border-radius);
|
|
10
|
-
//--bg-opacity: 0.5;
|
|
11
|
-
|
|
12
|
-
&:not(.bg-primary):not(.bg-dark):not(.bg-danger) {
|
|
13
|
-
--colour-body: black;
|
|
14
|
-
color: black;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
> *:last-child {
|
|
18
|
-
margin-bottom: 0;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
> * {
|
|
22
|
-
max-width: 100%;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
&--fixed {
|
|
27
|
-
position: fixed;
|
|
28
|
-
padding-top: 2rem;
|
|
29
|
-
z-index: var(--index-floating);
|
|
30
|
-
left: 50%;
|
|
31
|
-
transform: translate(-50%,0);
|
|
32
|
-
bottom: 0;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
@media (forced-colors: active) {
|
|
36
|
-
|
|
37
|
-
.alert__inner {
|
|
38
|
-
border: 1px solid CanvasText;
|
|
39
|
-
color: CanvasText;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
// Dismissible alerts
|
|
45
|
-
.alert--dismissible .alert__inner{
|
|
46
|
-
padding-right: 4rem;
|
|
47
|
-
overflow: hidden;
|
|
48
|
-
|
|
49
|
-
// Adjust close link position
|
|
50
|
-
.btn-close {
|
|
51
|
-
position: absolute;
|
|
52
|
-
top: 1.5rem;
|
|
53
|
-
right: 1.5rem;
|
|
54
|
-
height: 1rem;
|
|
55
|
-
width: 1rem;
|
|
56
|
-
padding:0;
|
|
57
|
-
border: none;
|
|
58
|
-
z-index: var(--index-focus);
|
|
59
|
-
background: currentColor;
|
|
60
|
-
mask-image: var(--icon-close);
|
|
61
|
-
mask-size: 100%;
|
|
62
|
-
mask-repeat: no-repeat;
|
|
63
|
-
mask-position: 50% 50%;
|
|
64
|
-
-webkit-mask-image: var(--icon-close);
|
|
65
|
-
-webkit-mask-size: 100%;
|
|
66
|
-
-webkit-mask-repeat: no-repeat;
|
|
67
|
-
-webkit-mask-position: 50% 50%;
|
|
68
|
-
|
|
69
|
-
@media (forced-colors: active) {
|
|
70
|
-
|
|
71
|
-
&:before {
|
|
72
|
-
content: "X";
|
|
73
|
-
}
|
|
74
|
-
border: 1px solid CanvasText;
|
|
75
|
-
mask-image: none;
|
|
76
|
-
-webkit-mask-image: none;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.alert__holder {
|
|
82
|
-
position: fixed;
|
|
83
|
-
z-index: var(--index-floating);
|
|
84
|
-
bottom: 0;
|
|
85
|
-
left: 0;
|
|
86
|
-
width: 100%;
|
|
87
|
-
max-height: 100vh;
|
|
88
|
-
overflow: auto;
|
|
89
|
-
background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.4));
|
|
90
|
-
|
|
91
|
-
> *:first-child {
|
|
92
|
-
margin-top: 2rem;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
.alert--fixed {
|
|
96
|
-
position: static;
|
|
97
|
-
transform: none;
|
|
98
|
-
padding-top: 0;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
[data-timeout] .alert__inner:after {
|
|
103
|
-
|
|
104
|
-
content: "";
|
|
105
|
-
position: absolute;
|
|
106
|
-
bottom: 0;
|
|
107
|
-
left: 0;
|
|
108
|
-
width: 0%;
|
|
109
|
-
height: 0.25rem;
|
|
110
|
-
background: black;
|
|
111
|
-
animation: progress var(--animation-length) linear;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
@keyframes progress{
|
|
115
|
-
0%{
|
|
116
|
-
width: 0%;
|
|
117
|
-
}
|
|
118
|
-
100%{
|
|
119
|
-
width: 100%;
|
|
120
|
-
}
|
|
121
|
-
};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
function alert(element) {
|
|
3
|
-
|
|
4
|
-
// Create a dissmissable button
|
|
5
|
-
element.addEventListener('click', function(e){
|
|
6
|
-
|
|
7
|
-
for (var target = e.target; target && target != this; target = target.parentNode) {
|
|
8
|
-
if (target.matches('.btn-close')) {
|
|
9
|
-
|
|
10
|
-
e.preventDefault();
|
|
11
|
-
|
|
12
|
-
element.classList.remove('show');
|
|
13
|
-
setTimeout(function () {
|
|
14
|
-
element.remove();
|
|
15
|
-
}, 300); // Execute something() 1 second later.
|
|
16
|
-
|
|
17
|
-
break;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}, false);
|
|
21
|
-
|
|
22
|
-
// Self disappearing alert
|
|
23
|
-
if(element.hasAttribute('data-timeout')){
|
|
24
|
-
|
|
25
|
-
let timeOut = element.getAttribute('data-timeout');
|
|
26
|
-
|
|
27
|
-
setTimeout(function () {
|
|
28
|
-
element.classList.remove('show');
|
|
29
|
-
setTimeout(function () {
|
|
30
|
-
element.remove();
|
|
31
|
-
}, 300); // Execute something() 1 second later.
|
|
32
|
-
}, timeOut); // Execute something() 1 second later.
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
// Create an alert holder thats fixed to the bottom of the page, alerts with the class of alert--fix are then moved to this area. Creating a fixed but scrollable area that alerts can be stacked up on.
|
|
38
|
-
if(!document.querySelector('.alert__holder')){
|
|
39
|
-
var bodyElement = document.getElementsByTagName("BODY")[0];
|
|
40
|
-
|
|
41
|
-
let newDiv = document.createElement("div");
|
|
42
|
-
newDiv.classList.add('alert__holder');
|
|
43
|
-
|
|
44
|
-
if(document.querySelector('main'))
|
|
45
|
-
document.querySelector('main').appendChild(newDiv);
|
|
46
|
-
else
|
|
47
|
-
document.body.appendChild(newDiv);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
let alertHolder = document.querySelector('.alert__holder');
|
|
51
|
-
|
|
52
|
-
if(element.classList.contains('alert--fixed') && !element.parentNode.classList.contains('alert__wrapper')){
|
|
53
|
-
|
|
54
|
-
alertHolder.appendChild(element);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export default alert
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { mount } from '@vue/test-utils'
|
|
2
|
-
import Alert from './Alert.vue'
|
|
3
|
-
|
|
4
|
-
describe('Alert component', () => {
|
|
5
|
-
it('renders correctly', () => {
|
|
6
|
-
|
|
7
|
-
const test = mount(Alert, {
|
|
8
|
-
propsData: {
|
|
9
|
-
},
|
|
10
|
-
slots: {
|
|
11
|
-
default: `<p>Content</p>`
|
|
12
|
-
}
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
expect(test.html()).toContain('bg-primary')
|
|
16
|
-
expect(test.html()).toContain('<p>Content</p>')
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
it('renders correct background', () => {
|
|
20
|
-
|
|
21
|
-
const test = mount(Alert, {
|
|
22
|
-
propsData: {
|
|
23
|
-
colour: 'info'
|
|
24
|
-
},
|
|
25
|
-
slots: {
|
|
26
|
-
default: `<p>Content</p>`
|
|
27
|
-
}
|
|
28
|
-
})
|
|
29
|
-
|
|
30
|
-
expect(test.html()).toContain('bg-info')
|
|
31
|
-
expect(test.html()).toContain('<p>Content</p>')
|
|
32
|
-
})
|
|
33
|
-
|
|
34
|
-
it('renders a close button', () => {
|
|
35
|
-
|
|
36
|
-
const test = mount(Alert, {
|
|
37
|
-
propsData: {
|
|
38
|
-
dismissible: 'true'
|
|
39
|
-
},
|
|
40
|
-
slots: {
|
|
41
|
-
default: `<p>Content</p>`
|
|
42
|
-
}
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
expect(test.html()).toContain('<button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>')
|
|
46
|
-
})
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
})
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div :class="`container alert pb-0 ${dismissible?'alert--dismissible fade show':''}`" ref="wrapper" :data-timeout="timeout" :style="(timeout?`--animation-length: ${timeout}ms`:'')">
|
|
3
|
-
<div :class="`alert__inner bg-${colour}`" role="alert">
|
|
4
|
-
<button v-if="dismissible" type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
|
5
|
-
<slot></slot>
|
|
6
|
-
</div>
|
|
7
|
-
</div>
|
|
8
|
-
</template>
|
|
9
|
-
|
|
10
|
-
<style lang="scss">
|
|
11
|
-
@import "../../../assets/sass/components/alert.scss";
|
|
12
|
-
</style>
|
|
13
|
-
|
|
14
|
-
<script>
|
|
15
|
-
import alert from '../../../assets/ts/modules/alert'
|
|
16
|
-
|
|
17
|
-
export default {
|
|
18
|
-
name: 'Alert',
|
|
19
|
-
props: {
|
|
20
|
-
dismissible: {
|
|
21
|
-
type: [String,Boolean],
|
|
22
|
-
required: false,
|
|
23
|
-
default: false
|
|
24
|
-
},
|
|
25
|
-
colour: {
|
|
26
|
-
type: String,
|
|
27
|
-
required: false,
|
|
28
|
-
default: 'primary'
|
|
29
|
-
},
|
|
30
|
-
timeout: {
|
|
31
|
-
type: [String,Number],
|
|
32
|
-
required: false
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
mounted(){
|
|
36
|
-
alert(this.$refs.wrapper);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
</script>
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
### Usage
|
|
2
|
-
|
|
3
|
-
```
|
|
4
|
-
<Alert class="alert--fixed" colour="info" dismissible timeout="6000">
|
|
5
|
-
<h2 class="h6">Self dismissing alert</h2>
|
|
6
|
-
<p>Curabitur aliquet quam id dui posuere blandit. Vivamus suscipit tortor eget felis porttitor volutpat. Proin eget tortor risus. Proin eget tortor risus. Vestibulum ac diam sit amet quam vehicula elementum sed sit amet dui. Proin eget tortor risus. Vivamus suscipit tortor eget felis porttitor volutpat. Vivamus magna justo, lacinia eget consectetur sed, convallis at tellus.</p>
|
|
7
|
-
</Alert>
|
|
8
|
-
```
|
|
9
|
-
|
|
10
|
-
### Class and data modifiers
|
|
11
|
-
|
|
12
|
-
- Adding a class of **.alert--fixed** stick the alert box to the bottom of the page.
|
|
13
|
-
- Adding a class of **.alert--dismissible** will add the correct padding for the having a btn to the right.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
### Properties
|
|
17
|
-
|
|
18
|
-
| Option | Type | Default Value | Description |
|
|
19
|
-
| ------ | ---- | ------------- | ----------- |
|
|
20
|
-
| dismissible | Boolean | - | Adds a close button which will remove the alert box after clicking it. |
|
|
21
|
-
| colour | String | primary | Apply a background colour the alert box, any of the theme colours can be used. |
|
|
22
|
-
| timeout | String or Number | - | Sets a timeout to remove the alert box. |
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
### Slots
|
|
26
|
-
|
|
27
|
-
| Option | Default Value | Description |
|
|
28
|
-
| ------ | ------------- | ----------- |
|
|
29
|
-
| default | - | This is the content of the alert box |
|