IMPR: Select2 is optional now

This commit is contained in:
Tony Air 2021-01-15 01:13:57 +07:00
parent 88789fe5b1
commit 4deb6efa5d
5 changed files with 296 additions and 373 deletions

152
dist/records.json vendored
View File

@ -72,158 +72,6 @@
831 831
] ]
}, },
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./node_modules/.pnpm/@a2nt/meta-lightbox@2.7.1/node_modules/@a2nt/meta-lightbox/src/scss/app.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./node_modules/.pnpm/@a2nt/meta-lightbox@2.7.1/node_modules/@a2nt/meta-lightbox/src/scss/app.scss": 953
},
"usedIds": [
254,
953
]
}
}
],
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/_components/_ui.map.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/_components/_ui.map.scss": 140
},
"usedIds": [
140,
254
]
}
}
],
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/app.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/app.scss": 200,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/select2@4.0.13/node_modules/select2/dist/css/select2.css": 282
},
"usedIds": [
200,
254,
282
]
}
}
],
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/cms.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/cms.scss": 209
},
"usedIds": [
209,
254
]
}
}
],
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/editor.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/editor.scss": 98
},
"usedIds": [
98,
254
]
}
}
],
"mini-css-extract-plugin /mnt/data/srv/dist/repositories/webpack-bootstrap-ui-kit/node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/order.scss": [
{
"chunks": {
"byName": {
"mini-css-extract-plugin": 323
},
"bySource": {
"0 mini-css-extract-plugin": 323
},
"usedIds": [
323
]
},
"modules": {
"byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/runtime/api.js": 254,
"./node_modules/.pnpm/css-loader@5.0.1_webpack@5.11.1/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/.pnpm/resolve-url-loader@3.1.2/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@10.1.0_node-sass@5.0.0+webpack@5.11.1/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[3]!./src/scss/types/order.scss": 558
},
"usedIds": [
254,
558
]
}
}
],
"modules": { "modules": {
"byIdentifier": { "byIdentifier": {
"./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/bootstrap@4.5.3_jquery@3.5.1+popper.js@1.16.1/node_modules/bootstrap/js/dist/alert.js": 6, "./node_modules/.pnpm/babel-loader@8.2.2_3ea652ad0eeb1c91bd4bd943f4964921/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/bootstrap@4.5.3_jquery@3.5.1+popper.js@1.16.1/node_modules/bootstrap/js/dist/alert.js": 6,

View File

@ -2,13 +2,6 @@
import $ from 'jquery'; import $ from 'jquery';
//import 'bootstrap-select/dist/js/bootstrap-select';
//$.fn.selectpicker.Constructor.BootstrapVersion = '4';
import select2 from 'select2/dist/js/select2.js';
//import Inputmask from 'inputmask';
//import select2 from 'jquery.inputmask/dist/jquery.inputmask.bundle';
import Events from '../_events'; import Events from '../_events';
import SpinnerUI from './_ui.spinner'; import SpinnerUI from './_ui.spinner';
import FormFieldUI from './_ui.form.fields'; import FormFieldUI from './_ui.form.fields';
@ -41,14 +34,6 @@ const FormBasics = (($) => {
new FormFieldUI(el); new FormFieldUI(el);
}); });
const $selectFields = $el
.find('select:not([readonly])')
.not('.no-select2');
$selectFields.each((i, el) => {
$(el).select2();
});
$fields.each((e, el) => { $fields.each((e, el) => {
const $el = $(el); const $el = $(el);
@ -118,17 +103,6 @@ const FormBasics = (($) => {
const ui = this; const ui = this;
const $el = $(ui._el); const $el = $(ui._el);
const $selectFields = $el
.find('select:not([readonly])')
.not('.no-select2');
$selectFields.each((i, el) => {
const $el = $(el);
if ($el.hasClass('select2-hidden-accessible')) {
$el.select2('destroy');
}
});
$.removeData(ui._el, DATA_KEY); $.removeData(ui._el, DATA_KEY);
ui._el = null; ui._el = null;
$el.removeClass(`${NAME}-active`); $el.removeClass(`${NAME}-active`);

View File

@ -0,0 +1,97 @@
'use strict';
import $ from 'jquery';
import select2 from 'select2/dist/js/select2.js';
import Events from '../_events';
const FormSelect2 = (($) => {
// Constants
const NAME = 'jsFormSelect2';
const DATA_KEY = NAME;
const $Html = $('html, body');
const W = window;
const D = document;
class FormSelect2 {
constructor(el) {
const ui = this;
const $el = $(el);
ui._el = el;
ui.dispose();
console.log(`${NAME}: init`);
$el.data(DATA_KEY, this);
const $fields = $el.find(Events.FORM_FIELDS);
const $selectFields = $el
.find('select:not([readonly])')
.not('.no-select2');
$selectFields.each((i, el) => {
$(el).select2();
});
$el.addClass(`${NAME}-active`);
$el.trigger(Events.FORM_INIT_BASICS);
}
// Public methods
dispose() {
console.log(`${NAME}: dispose`);
const ui = this;
const $el = $(ui._el);
const $selectFields = $el
.find('select:not([readonly])')
.not('.no-select2');
$selectFields.each((i, el) => {
const $el = $(el);
if ($el.hasClass('select2-hidden-accessible')) {
$el.select2('destroy');
}
});
$.removeData(ui._el, DATA_KEY);
ui._el = null;
$el.removeClass(`${NAME}-active`);
}
static _jQueryInterface() {
return this.each(() => {
// attach functionality to el
const $el = $(this);
let data = $el.data(DATA_KEY);
if (!data) {
data = new FormSelect2(this);
$el.data(DATA_KEY, data);
}
});
}
}
// jQuery interface
$.fn[NAME] = FormSelect2._jQueryInterface;
$.fn[NAME].Constructor = FormSelect2;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return FormSelect2._jQueryInterface;
};
const init = () => {
$('form').jsFormSelect2();
};
// auto-apply
$(W).on(`${NAME}.init ${Events.AJAX} ${Events.LOADED}`, () => {
init();
});
return FormSelect2;
})($);
export default FormSelect2;

View File

@ -77,6 +77,8 @@ import '@a2nt/meta-lightbox/src/js/app';
// Map UI // Map UI
//import MapApi from './_components/_ui.map.api'; //import MapApi from './_components/_ui.map.api';
//import FormSelect2 from './_components/_ui.form.select2';
import './_main'; import './_main';
import './_layout'; import './_layout';
@ -84,12 +86,12 @@ import './_layout';
import './_components/drivers/_google.track.external.links'; import './_components/drivers/_google.track.external.links';
function importAll(r) { function importAll(r) {
return r.keys().map(r); return r.keys().map(r);
} }
const images = importAll( const images = importAll(
require.context('../img/', false, /\.(png|jpe?g|svg)$/), require.context('../img/', false, /\.(png|jpe?g|svg)$/),
); );
const fontAwesome = importAll( const fontAwesome = importAll(
require.context('font-awesome', false, /\.(otf|eot|svg|ttf|woff|woff2)$/), require.context('font-awesome', false, /\.(otf|eot|svg|ttf|woff|woff2)$/),
); );

View File

@ -6,10 +6,10 @@
@import '../_animations'; @import '../_animations';
.loading { .loading {
animation: fade 0.8s linear infinite; animation: fade 0.8s linear infinite;
} }
.pulse { .pulse {
animation: pulse 0.8s linear infinite; animation: pulse 0.8s linear infinite;
} }
// don't let images be wider than the parent layer // don't let images be wider than the parent layer
@ -18,35 +18,35 @@ a,
span, span,
button, button,
i { i {
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: contain; background-size: contain;
} }
iframe, iframe,
img { img {
max-width: 100%; max-width: 100%;
} }
table, table,
p { p {
&:first-child { &:first-child {
margin-top: 0; margin-top: 0;
} }
&:last-child { &:last-child {
margin-bottom: 0; margin-bottom: 0;
} }
} }
.a { .a {
cursor: pointer; cursor: pointer;
color: $link-color; color: $link-color;
text-decoration: $link-decoration; text-decoration: $link-decoration;
&:hover, &:hover,
&:focus { &:focus {
text-decoration: $link-hover-decoration; text-decoration: $link-hover-decoration;
color: $link-hover-color; color: $link-hover-color;
} }
} }
.a, .a,
@ -54,63 +54,63 @@ a,
[data-toggle], [data-toggle],
button, button,
.btn { .btn {
&:hover, &:hover,
&.active, &.active,
&:focus, &:focus,
&[aria-expanded='true'] { &[aria-expanded='true'] {
opacity: 0.8; opacity: 0.8;
> .fa, > .fa,
> .far, > .far,
> .fas, > .fas,
> .fab, > .fab,
&.fa, &.fa,
&.far, &.far,
&.fas, &.fas,
&.fab { &.fab {
transform: rotate(-180deg); transform: rotate(-180deg);
} }
} }
&.disabled { &.disabled {
opacity: 0.5; opacity: 0.5;
cursor: default; cursor: default;
&:hover, &:hover,
&.active, &.active,
&:focus, &:focus,
&[aria-expanded='true'] { &[aria-expanded='true'] {
> .fa, > .fa,
> .far, > .far,
> .fas, > .fas,
> .fab, > .fab,
&.fa, &.fa,
&.far, &.far,
&.fas, &.fas,
&.fab { &.fab {
transform: rotate(0deg); transform: rotate(0deg);
} }
} }
} }
} }
// exclude bootstrap-table // exclude bootstrap-table
[data-toggle='table'] { [data-toggle='table'] {
&:hover, &:hover,
&.active, &.active,
&:focus { &:focus {
opacity: 1; opacity: 1;
} }
} }
[data-toggle='collapse'] { [data-toggle='collapse'] {
&[aria-expanded='true'] { &[aria-expanded='true'] {
.accordion-icon { .accordion-icon {
&:before { &:before {
content: '\f068'; content: '\f068';
} }
} }
} }
} }
// transactions // transactions
@ -133,239 +133,241 @@ textarea,
.message, .message,
[data-toggle], [data-toggle],
[data-toggle] * { [data-toggle] * {
transition: all 0.4s ease; transition: all 0.4s ease;
} }
.navbar-toggler { .navbar-toggler {
transition: transform ease 0.4s; transition: transform ease 0.4s;
} }
.btn-toolbar { .btn-toolbar {
margin-top: $field-gutter-height; margin-top: $field-gutter-height;
} }
/* /*
* Extra class definition at _ui.form.basics.scss * Extra class definition at _ui.form.basics.scss
*/ */
.field { .field {
position: relative; position: relative;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
margin: $field-gutter-height 0; margin: $field-gutter-height 0;
} }
// element col paddings // element col paddings
.col-block { .col-block {
padding-top: $col-block-gutter-height; padding-top: $col-block-gutter-height;
padding-bottom: $col-block-gutter-height; padding-bottom: $col-block-gutter-height;
} }
// rewrite btn opacity on hover // rewrite btn opacity on hover
.btn { .btn {
&:hover, &:hover,
&.active, &.active,
&:focus { &:focus {
opacity: 1; opacity: 1;
} }
} }
// SS-messages // SS-messages
.alert, .alert,
.alert-info, .alert-info,
.alert-danger { .alert-danger {
display: block; display: block;
} }
.alert + .alert { .alert + .alert {
border-top: 0; border-top: 0;
} }
.alert { .alert {
.container { .container {
position: relative; position: relative;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@media (min-width: map-get($grid-breakpoints, 'sm')) { @media (min-width: map-get($grid-breakpoints, 'sm')) {
flex-direction: row; flex-direction: row;
} }
} }
.typography { .typography {
flex: 1 1; flex: 1 1;
} }
.btn-close { .btn-close {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
@media (min-width: map-get($grid-breakpoints, 'sm')) { @media (min-width: map-get($grid-breakpoints, 'sm')) {
position: static; position: static;
margin-left: 1rem; margin-left: 1rem;
} }
} }
} }
.message { .message {
@extend .alert; @extend .alert;
@extend .alert-info; @extend .alert-info;
display: block; display: block;
margin: 0.5rem 0; margin: 0.5rem 0;
} }
.message.validation, .message.validation,
.message.required, .message.required,
.message.error { .message.error {
@extend .alert; @extend .alert;
@extend .alert-danger; @extend .alert-danger;
} }
.message.required, .message.required,
.message.error { .message.error {
@extend .alert; @extend .alert;
@extend .alert-danger; @extend .alert-danger;
} }
.list-group-item.active { .list-group-item.active {
a, a,
.a { .a {
color: $list-group-active-color; color: $list-group-active-color;
} }
} }
// dropdown icon // dropdown icon
.navbar-toggler { .navbar-toggler {
&[aria-expanded='true'] { &[aria-expanded='true'] {
transform: rotate(90deg); transform: rotate(90deg);
} }
} }
.dropdown-toggle { .dropdown-toggle {
position: relative; position: relative;
padding-right: 1.5em; padding-right: 1.5em;
&:after { &:after {
position: absolute; position: absolute;
right: 0.5em; right: 0.5em;
bottom: 1em; bottom: 1em;
} }
} }
.navbar-nav .dropdown-toggle.nav-link { .navbar-nav .dropdown-toggle.nav-link {
padding-right: 1.5em; padding-right: 1.5em;
} }
.dropdown.show .dropdown-toggle::after, .dropdown.show .dropdown-toggle::after,
.dropdown-toggle.active-dropdown::after, .dropdown-toggle.active-dropdown::after,
.dropdown-toggle.active::after { .dropdown-toggle.active::after {
transform: rotate(-90deg); transform: rotate(-90deg);
} }
@keyframes expand { @keyframes expand {
from { from {
max-height: 0; max-height: 0;
} overflow: hidden;
to { }
max-height: 500rem; to {
max-height: 200vh; max-height: 500rem;
} max-height: 200vh;
overflow: auto;
}
} }
.dropdown-menu { .dropdown-menu {
padding: 0; padding: 0;
border-radius: 0; border-radius: 0;
will-change: max-height, display; will-change: max-height, display;
overflow: hidden; overflow: hidden;
transition: none; transition: none;
&.show { &.show {
animation: expand 2s; animation: expand 2s;
animation-fill-mode: both; animation-fill-mode: both;
overflow: visible; overflow: visible;
} }
.dropdown-list { .dropdown-list {
@extend .list-unstyled; @extend .list-unstyled;
} }
.dropdown-menu { .dropdown-menu {
top: 0; top: 0;
left: 100%; left: 100%;
} }
} }
.row, .row,
.row-xs { .row-xs {
> [class^='col-'] > .card { > [class^='col-'] > .card {
height: 100%; height: 100%;
} }
} }
.row-xs { .row-xs {
margin-right: -($grid-gutter-xs-width / 2); margin-right: -($grid-gutter-xs-width / 2);
margin-left: -($grid-gutter-xs-width / 2); margin-left: -($grid-gutter-xs-width / 2);
[class^='col-'] { [class^='col-'] {
padding-left: $grid-gutter-xs-width / 2; padding-left: $grid-gutter-xs-width / 2;
padding-right: $grid-gutter-xs-width / 2; padding-right: $grid-gutter-xs-width / 2;
} }
} }
#ForgotPassword { #ForgotPassword {
margin: 1rem 0; margin: 1rem 0;
width: 100%; width: 100%;
} }
#BetterNavigator { #BetterNavigator {
display: none; display: none;
@media (min-width: map-get($grid-breakpoints,'md')) { @media (min-width: map-get($grid-breakpoints,'md')) {
display: block; display: block;
} }
} }
#SiteWideOffline { #SiteWideOffline {
position: fixed; position: fixed;
top: 0; top: 0;
left: 0; left: 0;
z-index: 99999; z-index: 99999;
width: 100%; width: 100%;
} }
.alert-offline { .alert-offline {
display: none; display: none;
} }
body.is-offline { body.is-offline {
.alert-offline { .alert-offline {
display: block; display: block;
} }
} }
[aria-expanded='true'] { [aria-expanded='true'] {
.fa-bars { .fa-bars {
&:before { &:before {
content: '\f00d'; content: '\f00d';
} }
} }
} }
.jsSidebarUI { .jsSidebarUI {
position: relative; position: relative;
min-height: 100%; min-height: 100%;
} }
.jsSidebarUI__inner { .jsSidebarUI__inner {
position: relative; position: relative;
will-change: position, top; will-change: position, top;
} }
#BetterNavigator { #BetterNavigator {
a, a,
button, button,
div, div,
i, i,
span { span {
background-size: auto; background-size: auto;
} }
} }