Updated SBAdmin Template along with chartjs, boostrap, fontawesome, jquery etc updated numbers to use mono-space, Add buttons are now just a + icon
This commit is contained in:
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-piggy-bank"></i> Accounts</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-piggy-bank"></i> Accounts</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addAccountModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addAccountModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ $sql = mysqli_query($mysqli,"SELECT * FROM calendars, calendar_events WHERE cale
|
|||||||
</select>
|
</select>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addCalendarEventModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addCalendarEventModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addCategoryModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addCategoryModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+3
-6
@@ -76,12 +76,9 @@ if(isset($_GET['client_id'])){
|
|||||||
|
|
||||||
<?php include("header.php"); ?>
|
<?php include("header.php"); ?>
|
||||||
|
|
||||||
<div class="card mb-3 border-0">
|
<div class="card mb-3">
|
||||||
<div class="card-body mb-4">
|
<div class="card-body mb-2">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col border-left border-right ">
|
|
||||||
<h2 class="text-secondary"><?php echo $client_name; ?></h2>
|
|
||||||
</div>
|
|
||||||
<div class="col border-right">
|
<div class="col border-right">
|
||||||
<h4 class="text-secondary">Address</h4>
|
<h4 class="text-secondary">Address</h4>
|
||||||
<a href="//maps.<?php echo $session_map_source; ?>.com/?q=<?php echo "$client_address $client_zip"; ?>" target="_blank">
|
<a href="//maps.<?php echo $session_map_source; ?>.com/?q=<?php echo "$client_address $client_zip"; ?>" target="_blank">
|
||||||
@@ -105,7 +102,7 @@ if(isset($_GET['client_id'])){
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-1">
|
<div class="col-1">
|
||||||
<div class="dropdown dropleft text-center">
|
<div class="dropdown dropleft text-center">
|
||||||
<button class="btn btn-secondary btn-sm float-right" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
<button class="btn btn-dark btn-sm float-right" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
<i class="fas fa-ellipsis-h"></i>
|
<i class="fas fa-ellipsis-h"></i>
|
||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||||
|
|||||||
+6
-1
@@ -1,10 +1,15 @@
|
|||||||
<!-- Sidebar -->
|
<!-- Sidebar -->
|
||||||
|
|
||||||
<ul class="sidebar navbar-nav d-print-none">
|
<ul class="sidebar navbar-nav d-print-none">
|
||||||
|
|
||||||
|
<li class="nav-item my-3">
|
||||||
|
<h2 class="text-white text-center"><?php echo $client_name; ?></h2>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="clients.php">
|
<a class="nav-link" href="clients.php">
|
||||||
<button class="btn btn-outline-light btn-block">
|
<button class="btn btn-outline-light btn-block">
|
||||||
<i class="fas fa-fw fa-arrow-left mx-2"></i>
|
<i class="fas fa-fw fa-arrow-left"></i>
|
||||||
<span>Back</span>
|
<span>Back</span>
|
||||||
</button>
|
</button>
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-users"></i> Clients</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-users"></i> Clients</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addClientModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addClientModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+419
-229
File diff suppressed because it is too large
Load Diff
Vendored
+5
-5
File diff suppressed because one or more lines are too long
+1
-1
@@ -12,7 +12,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-shopping-cart"></i> Expenses</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-shopping-cart"></i> Expenses</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addExpenseModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addExpenseModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+11
-11
@@ -194,10 +194,10 @@ if(isset($_GET['invoice_id'])){
|
|||||||
<td class="text-center d-print-none"><a class="btn btn-danger btn-sm" href="post.php?delete_invoice_item=<?php echo $invoice_item_id; ?>"><i class="fa fa-trash"></i></a></td>
|
<td class="text-center d-print-none"><a class="btn btn-danger btn-sm" href="post.php?delete_invoice_item=<?php echo $invoice_item_id; ?>"><i class="fa fa-trash"></i></a></td>
|
||||||
<td><?php echo $invoice_item_name; ?></td>
|
<td><?php echo $invoice_item_name; ?></td>
|
||||||
<td><?php echo $invoice_item_description; ?></td>
|
<td><?php echo $invoice_item_description; ?></td>
|
||||||
<td class="text-right">$<?php echo number_format($invoice_item_price,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($invoice_item_price,2); ?></td>
|
||||||
<td class="text-center"><?php echo $invoice_item_quantity; ?></td>
|
<td class="text-center text-monospace"><?php echo $invoice_item_quantity; ?></td>
|
||||||
<td class="text-right">$<?php echo number_format($invoice_item_tax,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($invoice_item_tax,2); ?></td>
|
||||||
<td class="text-right">$<?php echo number_format($invoice_item_total,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($invoice_item_total,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -250,29 +250,29 @@ if(isset($_GET['invoice_id'])){
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
<td>Subtotal</td>
|
<td>Subtotal</td>
|
||||||
<td class="text-right">$<?php echo number_format($sub_total,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($sub_total,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php if($discount > 0){ ?>
|
<?php if($discount > 0){ ?>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
<td>Discount</td>
|
<td>Discount</td>
|
||||||
<td class="text-right">$<?php echo number_format($invoice_discount,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($invoice_discount,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
<?php if($total_tax > 0){ ?>
|
<?php if($total_tax > 0){ ?>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
<td>Tax</td>
|
<td>Tax</td>
|
||||||
<td class="text-right">$<?php echo number_format($total_tax,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($total_tax,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
<?php if($amount_paid > 0){ ?>
|
<?php if($amount_paid > 0){ ?>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
<td><div class="text-success">Paid to Date</div></td>
|
<td><div class="text-success">Paid to Date</div></td>
|
||||||
<td class="text-right text-success">$<?php echo number_format($amount_paid,2); ?></td>
|
<td class="text-right text-monospace text-success">$<?php echo number_format($amount_paid,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
<td><strong>Balance Due</strong></td>
|
<td><strong>Balance Due</strong></td>
|
||||||
<td class="text-right"><strong>$<?php echo number_format($balance,2); ?></strong></td>
|
<td class="text-right text-monospace"><strong>$<?php echo number_format($balance,2); ?></strong></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -327,7 +327,7 @@ if(isset($_GET['invoice_id'])){
|
|||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Date</th>
|
<th>Date</th>
|
||||||
<th>Amount</th>
|
<th class="text-right">Amount</th>
|
||||||
<th>Account</th>
|
<th>Account</th>
|
||||||
<th class="text-center">Action</th>
|
<th class="text-center">Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -345,7 +345,7 @@ if(isset($_GET['invoice_id'])){
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td><?php echo $payment_date; ?></td>
|
<td><?php echo $payment_date; ?></td>
|
||||||
<td>$<?php echo number_format($payment_amount,2); ?></td>
|
<td class=" text-right text-monospace">$<?php echo number_format($payment_amount,2); ?></td>
|
||||||
<td><?php echo $account_name; ?></td>
|
<td><?php echo $account_name; ?></td>
|
||||||
<td class="text-center"><a class="btn btn-danger btn-sm" href="post.php?delete_payment=<?php echo $payment_id; ?>"><i class="fa fa-trash"></i></a></td>
|
<td class="text-center"><a class="btn btn-danger btn-sm" href="post.php?delete_payment=<?php echo $payment_id; ?>"><i class="fa fa-trash"></i></a></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
+1
-1
@@ -85,7 +85,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-file"></i> Invoices</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-file"></i> Invoices</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addInvoiceModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addInvoiceModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Start Bootstrap - SB Admin v5.0.3 (https://startbootstrap.com/template-overviews/sb-admin)
|
* Start Bootstrap - SB Admin v5.1.0 (https://startbootstrap.com/template-overviews/sb-admin)
|
||||||
* Copyright 2013-2019 Start Bootstrap
|
* Copyright 2013-2019 Start Bootstrap
|
||||||
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-sb-admin/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-sb-admin/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-car"></i> Mileage</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-car"></i> Mileage</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addMileageModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addMileageModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-box"></i> Products</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-box"></i> Products</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addProductModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addProductModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-file"></i> Quotes</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-file"></i> Quotes</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addQuoteModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addQuoteModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-copy"></i> Recurring Invoices</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-copy"></i> Recurring Invoices</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addRecurringInvoiceModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm float-right" data-toggle="modal" data-target="#addRecurringInvoiceModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<td class="text-right">$<?php echo number_format($expense_amount_for_month,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($expense_amount_for_month,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($total_expense_for_all_months,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($total_expense_for_all_months,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -106,14 +106,14 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($expense_total_amount_for_month,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($expense_total_amount_for_month,2); ?></th>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($total_expense_for_all_months,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($total_expense_for_all_months,2); ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<td class="text-right">$<?php echo number_format($payment_amount_for_month,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($payment_amount_for_month,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($total_payment_for_all_months,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($total_payment_for_all_months,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -105,14 +105,14 @@ $sql_categories = mysqli_query($mysqli,"SELECT * FROM categories WHERE category_
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($payment_total_amount_for_month,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($payment_total_amount_for_month,2); ?></th>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($total_payment_for_all_months,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($total_payment_for_all_months,2); ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
+25
-25
@@ -75,7 +75,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($payment_amount_for_quarter_one,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($payment_amount_for_quarter_one,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -87,7 +87,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($payment_amount_for_quarter_two,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($payment_amount_for_quarter_two,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -99,7 +99,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($payment_amount_for_quarter_three,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($payment_amount_for_quarter_three,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -113,9 +113,9 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($payment_amount_for_quarter_four,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($payment_amount_for_quarter_four,2); ?></td>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($total_payments_for_all_four_quarters,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($total_payments_for_all_four_quarters,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -142,7 +142,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($payment_total_amount_for_quarter_one,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($payment_total_amount_for_quarter_one,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -154,7 +154,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($payment_total_amount_for_quarter_two,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($payment_total_amount_for_quarter_two,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -166,7 +166,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($payment_total_amount_for_quarter_three,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($payment_total_amount_for_quarter_three,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -180,9 +180,9 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($payment_total_amount_for_quarter_four,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($payment_total_amount_for_quarter_four,2); ?></th>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($total_payments_for_all_four_quarters,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($total_payments_for_all_four_quarters,2); ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
@@ -208,7 +208,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($expense_amount_for_quarter_one,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($expense_amount_for_quarter_one,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -220,7 +220,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($expense_amount_for_quarter_two,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($expense_amount_for_quarter_two,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -232,7 +232,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($expense_amount_for_quarter_three,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($expense_amount_for_quarter_three,2); ?></td>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -246,9 +246,9 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($expense_amount_for_quarter_four,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($expense_amount_for_quarter_four,2); ?></td>
|
||||||
|
|
||||||
<td class="text-right">$<?php echo number_format($total_expenses_for_all_four_quarters,2); ?></td>
|
<td class="text-right text-monospace">$<?php echo number_format($total_expenses_for_all_four_quarters,2); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -275,7 +275,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($expense_total_amount_for_quarter_one,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($expense_total_amount_for_quarter_one,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -287,7 +287,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($expense_total_amount_for_quarter_two,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($expense_total_amount_for_quarter_two,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -299,7 +299,7 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($expense_total_amount_for_quarter_three,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($expense_total_amount_for_quarter_three,2); ?></th>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
@@ -313,9 +313,9 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($expense_total_amount_for_quarter_four,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($expense_total_amount_for_quarter_four,2); ?></th>
|
||||||
|
|
||||||
<th class="text-right">$<?php echo number_format($total_expenses_for_all_four_quarters,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($total_expenses_for_all_four_quarters,2); ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<?php
|
<?php
|
||||||
@@ -327,11 +327,11 @@ $sql_categories_expense = mysqli_query($mysqli,"SELECT * FROM categories WHERE c
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<th>Net Profit</th>
|
<th>Net Profit</th>
|
||||||
<th class="text-right">$<?php echo number_format($net_profit_quarter_one,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($net_profit_quarter_one,2); ?></th>
|
||||||
<th class="text-right">$<?php echo number_format($net_profit_quarter_two,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($net_profit_quarter_two,2); ?></th>
|
||||||
<th class="text-right">$<?php echo number_format($net_profit_quarter_three,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($net_profit_quarter_three,2); ?></th>
|
||||||
<th class="text-right">$<?php echo number_format($net_profit_quarter_four,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($net_profit_quarter_four,2); ?></th>
|
||||||
<th class="text-right">$<?php echo number_format($net_profit_year,2); ?></th>
|
<th class="text-right text-monospace">$<?php echo number_format($net_profit_year,2); ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
// Styling for custom cards
|
||||||
|
// Custom class for the background icon in card blocks
|
||||||
|
.card-body-icon {
|
||||||
|
position: absolute;
|
||||||
|
z-index: 0;
|
||||||
|
top: -1.25rem;
|
||||||
|
right: -1rem;
|
||||||
|
opacity: 0.4;
|
||||||
|
|
||||||
|
font-size: 5rem;
|
||||||
|
@include rotate;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Override breakpoints for card columns to work well with sidebar layout
|
||||||
|
.card-columns {
|
||||||
|
@media (min-width: 576px) {
|
||||||
|
column-count: 1;
|
||||||
|
}
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
column-count: 2;
|
||||||
|
}
|
||||||
|
@media (min-width: 1200px) {
|
||||||
|
column-count: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
footer.sticky-footer {
|
||||||
|
display: flex;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: calc(100% - #{$sidebar-collapsed-width});
|
||||||
|
height: $sticky-footer-height;
|
||||||
|
background-color: $gray-200;
|
||||||
|
.copyright {
|
||||||
|
line-height: 1;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
width: calc(100% - #{$sidebar-base-width});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
body.sidebar-toggled {
|
||||||
|
footer.sticky-footer {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
footer.sticky-footer {
|
||||||
|
width: calc(100% - #{$sidebar-collapsed-width});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
// Global styling for this template
|
||||||
|
|
||||||
|
html {
|
||||||
|
position: relative;
|
||||||
|
min-height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#wrapper {
|
||||||
|
display: flex;
|
||||||
|
#content-wrapper {
|
||||||
|
overflow-x: hidden;
|
||||||
|
width: 100%;
|
||||||
|
padding-top: 1rem;
|
||||||
|
padding-bottom: $sticky-footer-height;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Scroll to top button
|
||||||
|
.scroll-to-top {
|
||||||
|
position: fixed;
|
||||||
|
right: 15px;
|
||||||
|
bottom: 15px;
|
||||||
|
display: none;
|
||||||
|
width: 50px;
|
||||||
|
height: 50px;
|
||||||
|
text-align: center;
|
||||||
|
color: $white;
|
||||||
|
background: fade-out($gray-800, .5);
|
||||||
|
line-height: 46px;
|
||||||
|
&:focus,
|
||||||
|
&:hover {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
background: $gray-800;
|
||||||
|
}
|
||||||
|
i {
|
||||||
|
font-weight: 800;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,69 @@
|
|||||||
|
:root {
|
||||||
|
--input-padding-x: 0.75rem;
|
||||||
|
--input-padding-y: 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-login {
|
||||||
|
max-width: 25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-register {
|
||||||
|
max-width: 40rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group > input,
|
||||||
|
.form-label-group > label {
|
||||||
|
padding: var(--input-padding-y) var(--input-padding-x);
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group > label {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 0;
|
||||||
|
/* Override default `<label>` margin */
|
||||||
|
line-height: 1.5;
|
||||||
|
color: #495057;
|
||||||
|
border: 1px solid transparent;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
transition: all 0.1s ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input::-webkit-input-placeholder {
|
||||||
|
color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input:-ms-input-placeholder {
|
||||||
|
color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input::-ms-input-placeholder {
|
||||||
|
color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input::-moz-placeholder {
|
||||||
|
color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input::placeholder {
|
||||||
|
color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input:not(:placeholder-shown) {
|
||||||
|
padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
|
||||||
|
padding-bottom: calc(var(--input-padding-y) / 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-label-group input:not(:placeholder-shown) ~ label {
|
||||||
|
padding-top: calc(var(--input-padding-y) / 3);
|
||||||
|
padding-bottom: calc(var(--input-padding-y) / 3);
|
||||||
|
font-size: 12px;
|
||||||
|
color: #777;
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
@mixin rotate {
|
||||||
|
transform: rotate(15deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin sidebar-icons {
|
||||||
|
.nav-item {
|
||||||
|
&:last-child {
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.nav-link {
|
||||||
|
text-align: center;
|
||||||
|
padding: 0.75rem 1rem;
|
||||||
|
width: $sidebar-collapsed-width;
|
||||||
|
span {
|
||||||
|
font-size: 0.65rem;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dropdown-menu {
|
||||||
|
position: absolute !important;
|
||||||
|
transform: none !important;
|
||||||
|
left: calc(#{$sidebar-collapsed-width} + 0.5rem) !important;
|
||||||
|
margin: 0;
|
||||||
|
&.dropup {
|
||||||
|
bottom: 0;
|
||||||
|
top: auto !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.dropdown .dropdown-toggle::after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,115 @@
|
|||||||
|
.navbar-nav {
|
||||||
|
|
||||||
|
.form-inline .input-group {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-item {
|
||||||
|
&.active {
|
||||||
|
.nav-link {
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.dropdown {
|
||||||
|
.dropdown-toggle {
|
||||||
|
&::after {
|
||||||
|
width: 1rem;
|
||||||
|
text-align: center;
|
||||||
|
float: right;
|
||||||
|
vertical-align: 0;
|
||||||
|
border: 0;
|
||||||
|
font-weight: 900;
|
||||||
|
content: '\f105';
|
||||||
|
font-family: 'Font Awesome 5 Free';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.show {
|
||||||
|
.dropdown-toggle::after {
|
||||||
|
content: '\f107';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.no-arrow {
|
||||||
|
.dropdown-toggle::after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.nav-link {
|
||||||
|
&:focus {
|
||||||
|
// remove outline for Safari and Firefox
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
.badge {
|
||||||
|
position: absolute;
|
||||||
|
margin-left: 0.75rem;
|
||||||
|
top: 0.3rem;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 0.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media(min-width: 768px) {
|
||||||
|
|
||||||
|
.form-inline .input-group {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar {
|
||||||
|
width: $sidebar-collapsed-width !important;
|
||||||
|
background-color: $gray-900;
|
||||||
|
min-height: calc(100vh - #{$navbar-base-height});
|
||||||
|
@include sidebar-icons;
|
||||||
|
.nav-item {
|
||||||
|
.nav-link {
|
||||||
|
color: fade-out($white, 0.5);
|
||||||
|
&:active,
|
||||||
|
&:focus,
|
||||||
|
&:hover {
|
||||||
|
color: fade-out($white, 0.25);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.toggled {
|
||||||
|
width: 0 !important;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
.sidebar {
|
||||||
|
width: $sidebar-base-width !important;
|
||||||
|
|
||||||
|
.nav-item {
|
||||||
|
.nav-link {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
text-align: left;
|
||||||
|
padding: 1rem;
|
||||||
|
width: $sidebar-base-width;
|
||||||
|
span {
|
||||||
|
font-size: 1rem;
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dropdown-menu {
|
||||||
|
position: static !important;
|
||||||
|
margin: 0 1rem;
|
||||||
|
// Position fix for Firefox
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
&.dropdown .dropdown-toggle::after {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.toggled {
|
||||||
|
overflow: visible;
|
||||||
|
width: $sidebar-collapsed-width !important;
|
||||||
|
@include sidebar-icons;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
// Additional Text Helper Class
|
||||||
|
.smaller {
|
||||||
|
font-size: 0.7rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper class for the overflow property
|
||||||
|
.o-hidden {
|
||||||
|
overflow: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper classes for z-index
|
||||||
|
.z-0 {
|
||||||
|
z-index: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.z-1 {
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
// Spacing Variables
|
||||||
|
// Change below variable if the height of the navbar changes
|
||||||
|
$navbar-base-height: 56px;
|
||||||
|
// Change below variable to change the width of the sidenav
|
||||||
|
$sidebar-base-width: 225px;
|
||||||
|
// Change below variable to change the width of the sidenav when collapsed
|
||||||
|
$sidebar-collapsed-width: 90px;
|
||||||
|
// Change below variable to change the height of the sticky footer
|
||||||
|
$sticky-footer-height: 80px;
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
// Import Custom Variables
|
||||||
|
@import "variables.scss";
|
||||||
|
|
||||||
|
// Import Bootstrap
|
||||||
|
@import "../vendor/bootstrap/scss/bootstrap.scss";
|
||||||
|
|
||||||
|
// Import Custom SCSS
|
||||||
|
@import "mixins.scss";
|
||||||
|
@import "global.scss";
|
||||||
|
@import "utilities.scss";
|
||||||
|
@import "navbar.scss";
|
||||||
|
@import "cards.scss";
|
||||||
|
@import "login.scss";
|
||||||
|
@import "footer.scss";
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
<!-- Sidebar -->
|
<!-- Sidebar -->
|
||||||
<ul class="sidebar navbar-nav d-print-none">
|
<ul class="sidebar navbar-nav d-print-none">
|
||||||
|
<li class="nav-item">
|
||||||
|
<h2 class="text-white text-center my-3"><?php echo $config_company_name; ?></h2>
|
||||||
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="dashboard.php">
|
<a class="nav-link" href="dashboard.php">
|
||||||
<i class="fas fa-fw fa-tachometer-alt mx-2"></i>
|
<i class="fas fa-fw fa-tachometer-alt mx-2"></i>
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
<nav class="navbar navbar-expand navbar-dark bg-primary static-top">
|
<nav class="navbar navbar-expand navbar-dark bg-primary static-top">
|
||||||
|
|
||||||
<a class="navbar-brand mr-1" href="index.php"><?php echo "$config_company_name";?></a>
|
|
||||||
|
|
||||||
<button class="btn btn-link btn-sm text-white order-1 order-sm-0" id="sidebarToggle" href="#">
|
<button class="btn btn-link btn-sm text-white order-1 order-sm-0" id="sidebarToggle" href="#">
|
||||||
<i class="fas fa-bars"></i>
|
<i class="fas fa-bars"></i>
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@ $sql = mysqli_query($mysqli,"SELECT * FROM transfers ORDER BY transfer_date DESC
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-exchange-alt"></i> Transfers</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-exchange-alt"></i> Transfers</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addTransferModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addTransferModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h6 class="float-left mt-1"><i class="fa fa-users"></i> Users</h6>
|
<h6 class="float-left mt-1"><i class="fa fa-users"></i> Users</h6>
|
||||||
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addUserModal"><i class="fas fa-plus"></i> New</button>
|
<button type="button" class="btn btn-primary btn-sm mr-auto float-right" data-toggle="modal" data-target="#addUserModal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
|||||||
+300
-105
@@ -1,13 +1,13 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v4.2.1 (https://getbootstrap.com/)
|
* Bootstrap v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
(function (global, factory) {
|
(function (global, factory) {
|
||||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) :
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) :
|
||||||
typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) :
|
typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) :
|
||||||
(factory((global.bootstrap = {}),global.jQuery));
|
(global = global || self, factory(global.bootstrap = {}, global.jQuery));
|
||||||
}(this, (function (exports,$) { 'use strict';
|
}(this, function (exports, $) { 'use strict';
|
||||||
|
|
||||||
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
||||||
|
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.2.1): util.js
|
* Bootstrap (v4.3.1): util.js
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@@ -145,7 +145,11 @@
|
|||||||
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
|
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
|
||||||
}
|
}
|
||||||
|
|
||||||
return selector && document.querySelector(selector) ? selector : null;
|
try {
|
||||||
|
return document.querySelector(selector) ? selector : null;
|
||||||
|
} catch (err) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
getTransitionDurationFromElement: function getTransitionDurationFromElement(element) {
|
getTransitionDurationFromElement: function getTransitionDurationFromElement(element) {
|
||||||
if (!element) {
|
if (!element) {
|
||||||
@@ -225,7 +229,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME = 'alert';
|
var NAME = 'alert';
|
||||||
var VERSION = '4.2.1';
|
var VERSION = '4.3.1';
|
||||||
var DATA_KEY = 'bs.alert';
|
var DATA_KEY = 'bs.alert';
|
||||||
var EVENT_KEY = "." + DATA_KEY;
|
var EVENT_KEY = "." + DATA_KEY;
|
||||||
var DATA_API_KEY = '.data-api';
|
var DATA_API_KEY = '.data-api';
|
||||||
@@ -280,8 +284,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getRootElement = function _getRootElement(element) {
|
_proto._getRootElement = function _getRootElement(element) {
|
||||||
var selector = Util.getSelectorFromElement(element);
|
var selector = Util.getSelectorFromElement(element);
|
||||||
@@ -323,8 +327,8 @@
|
|||||||
|
|
||||||
_proto._destroyElement = function _destroyElement(element) {
|
_proto._destroyElement = function _destroyElement(element) {
|
||||||
$(element).detach().trigger(Event.CLOSED).remove();
|
$(element).detach().trigger(Event.CLOSED).remove();
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Alert._jQueryInterface = function _jQueryInterface(config) {
|
Alert._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -390,7 +394,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$1 = 'button';
|
var NAME$1 = 'button';
|
||||||
var VERSION$1 = '4.2.1';
|
var VERSION$1 = '4.3.1';
|
||||||
var DATA_KEY$1 = 'bs.button';
|
var DATA_KEY$1 = 'bs.button';
|
||||||
var EVENT_KEY$1 = "." + DATA_KEY$1;
|
var EVENT_KEY$1 = "." + DATA_KEY$1;
|
||||||
var DATA_API_KEY$1 = '.data-api';
|
var DATA_API_KEY$1 = '.data-api';
|
||||||
@@ -476,8 +480,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY$1);
|
$.removeData(this._element, DATA_KEY$1);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Button._jQueryInterface = function _jQueryInterface(config) {
|
Button._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -544,7 +548,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$2 = 'carousel';
|
var NAME$2 = 'carousel';
|
||||||
var VERSION$2 = '4.2.1';
|
var VERSION$2 = '4.3.1';
|
||||||
var DATA_KEY$2 = 'bs.carousel';
|
var DATA_KEY$2 = 'bs.carousel';
|
||||||
var EVENT_KEY$2 = "." + DATA_KEY$2;
|
var EVENT_KEY$2 = "." + DATA_KEY$2;
|
||||||
var DATA_API_KEY$2 = '.data-api';
|
var DATA_API_KEY$2 = '.data-api';
|
||||||
@@ -739,8 +743,8 @@
|
|||||||
this._isSliding = null;
|
this._isSliding = null;
|
||||||
this._activeElement = null;
|
this._activeElement = null;
|
||||||
this._indicatorsElement = null;
|
this._indicatorsElement = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default, config);
|
config = _objectSpread({}, Default, config);
|
||||||
@@ -784,7 +788,9 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this._config.touch) {
|
||||||
this._addTouchEventListeners();
|
this._addTouchEventListeners();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
_proto._addTouchEventListeners = function _addTouchEventListeners() {
|
_proto._addTouchEventListeners = function _addTouchEventListeners() {
|
||||||
@@ -1025,8 +1031,8 @@
|
|||||||
if (isCycling) {
|
if (isCycling) {
|
||||||
this.cycle();
|
this.cycle();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Carousel._jQueryInterface = function _jQueryInterface(config) {
|
Carousel._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -1053,7 +1059,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
data[action]();
|
data[action]();
|
||||||
} else if (_config.interval) {
|
} else if (_config.interval && _config.ride) {
|
||||||
data.pause();
|
data.pause();
|
||||||
data.cycle();
|
data.cycle();
|
||||||
}
|
}
|
||||||
@@ -1142,7 +1148,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$3 = 'collapse';
|
var NAME$3 = 'collapse';
|
||||||
var VERSION$3 = '4.2.1';
|
var VERSION$3 = '4.3.1';
|
||||||
var DATA_KEY$3 = 'bs.collapse';
|
var DATA_KEY$3 = 'bs.collapse';
|
||||||
var EVENT_KEY$3 = "." + DATA_KEY$3;
|
var EVENT_KEY$3 = "." + DATA_KEY$3;
|
||||||
var DATA_API_KEY$3 = '.data-api';
|
var DATA_API_KEY$3 = '.data-api';
|
||||||
@@ -1364,8 +1370,8 @@
|
|||||||
this._element = null;
|
this._element = null;
|
||||||
this._triggerArray = null;
|
this._triggerArray = null;
|
||||||
this._isTransitioning = null;
|
this._isTransitioning = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$1, config);
|
config = _objectSpread({}, Default$1, config);
|
||||||
@@ -1409,8 +1415,8 @@
|
|||||||
if (triggerArray.length) {
|
if (triggerArray.length) {
|
||||||
$(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
|
$(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
|
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
|
||||||
var selector = Util.getSelectorFromElement(element);
|
var selector = Util.getSelectorFromElement(element);
|
||||||
@@ -1497,7 +1503,7 @@
|
|||||||
|
|
||||||
/**!
|
/**!
|
||||||
* @fileOverview Kickass library to create and place poppers near their reference elements.
|
* @fileOverview Kickass library to create and place poppers near their reference elements.
|
||||||
* @version 1.14.6
|
* @version 1.14.7
|
||||||
* @license
|
* @license
|
||||||
* Copyright (c) 2016 Federico Zivolo and contributors
|
* Copyright (c) 2016 Federico Zivolo and contributors
|
||||||
*
|
*
|
||||||
@@ -2065,7 +2071,11 @@
|
|||||||
if (getStyleComputedProperty(element, 'position') === 'fixed') {
|
if (getStyleComputedProperty(element, 'position') === 'fixed') {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return isFixed(getParentNode(element));
|
var parentNode = getParentNode(element);
|
||||||
|
if (!parentNode) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return isFixed(parentNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2721,18 +2731,23 @@
|
|||||||
var _data$offsets = data.offsets,
|
var _data$offsets = data.offsets,
|
||||||
popper = _data$offsets.popper,
|
popper = _data$offsets.popper,
|
||||||
reference = _data$offsets.reference;
|
reference = _data$offsets.reference;
|
||||||
|
var round = Math.round,
|
||||||
|
floor = Math.floor;
|
||||||
|
|
||||||
|
|
||||||
var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;
|
|
||||||
var isVariation = data.placement.indexOf('-') !== -1;
|
|
||||||
var sameWidthOddness = reference.width % 2 === popper.width % 2;
|
|
||||||
var bothOddWidth = reference.width % 2 === 1 && popper.width % 2 === 1;
|
|
||||||
var noRound = function noRound(v) {
|
var noRound = function noRound(v) {
|
||||||
return v;
|
return v;
|
||||||
};
|
};
|
||||||
|
|
||||||
var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthOddness ? Math.round : Math.floor;
|
var referenceWidth = round(reference.width);
|
||||||
var verticalToInteger = !shouldRound ? noRound : Math.round;
|
var popperWidth = round(popper.width);
|
||||||
|
|
||||||
|
var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;
|
||||||
|
var isVariation = data.placement.indexOf('-') !== -1;
|
||||||
|
var sameWidthParity = referenceWidth % 2 === popperWidth % 2;
|
||||||
|
var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;
|
||||||
|
|
||||||
|
var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;
|
||||||
|
var verticalToInteger = !shouldRound ? noRound : round;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),
|
left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),
|
||||||
@@ -4072,7 +4087,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$4 = 'dropdown';
|
var NAME$4 = 'dropdown';
|
||||||
var VERSION$4 = '4.2.1';
|
var VERSION$4 = '4.3.1';
|
||||||
var DATA_KEY$4 = 'bs.dropdown';
|
var DATA_KEY$4 = 'bs.dropdown';
|
||||||
var EVENT_KEY$4 = "." + DATA_KEY$4;
|
var EVENT_KEY$4 = "." + DATA_KEY$4;
|
||||||
var DATA_API_KEY$4 = '.data-api';
|
var DATA_API_KEY$4 = '.data-api';
|
||||||
@@ -4301,8 +4316,8 @@
|
|||||||
if (this._popper !== null) {
|
if (this._popper !== null) {
|
||||||
this._popper.scheduleUpdate();
|
this._popper.scheduleUpdate();
|
||||||
}
|
}
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._addEventListeners = function _addEventListeners() {
|
_proto._addEventListeners = function _addEventListeners() {
|
||||||
var _this = this;
|
var _this = this;
|
||||||
@@ -4358,24 +4373,28 @@
|
|||||||
return $(this._element).closest('.navbar').length > 0;
|
return $(this._element).closest('.navbar').length > 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
_proto._getPopperConfig = function _getPopperConfig() {
|
_proto._getOffset = function _getOffset() {
|
||||||
var _this2 = this;
|
var _this2 = this;
|
||||||
|
|
||||||
var offsetConf = {};
|
var offset = {};
|
||||||
|
|
||||||
if (typeof this._config.offset === 'function') {
|
if (typeof this._config.offset === 'function') {
|
||||||
offsetConf.fn = function (data) {
|
offset.fn = function (data) {
|
||||||
data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets) || {});
|
data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
offsetConf.offset = this._config.offset;
|
offset.offset = this._config.offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return offset;
|
||||||
|
};
|
||||||
|
|
||||||
|
_proto._getPopperConfig = function _getPopperConfig() {
|
||||||
var popperConfig = {
|
var popperConfig = {
|
||||||
placement: this._getPlacement(),
|
placement: this._getPlacement(),
|
||||||
modifiers: {
|
modifiers: {
|
||||||
offset: offsetConf,
|
offset: this._getOffset(),
|
||||||
flip: {
|
flip: {
|
||||||
enabled: this._config.flip
|
enabled: this._config.flip
|
||||||
},
|
},
|
||||||
@@ -4393,8 +4412,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return popperConfig;
|
return popperConfig;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -4478,8 +4497,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return parent || element.parentNode;
|
return parent || element.parentNode;
|
||||||
}; // eslint-disable-next-line complexity
|
} // eslint-disable-next-line complexity
|
||||||
|
;
|
||||||
|
|
||||||
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
|
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
|
||||||
// If not input/textarea:
|
// If not input/textarea:
|
||||||
@@ -4594,7 +4613,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$5 = 'modal';
|
var NAME$5 = 'modal';
|
||||||
var VERSION$5 = '4.2.1';
|
var VERSION$5 = '4.3.1';
|
||||||
var DATA_KEY$5 = 'bs.modal';
|
var DATA_KEY$5 = 'bs.modal';
|
||||||
var EVENT_KEY$5 = "." + DATA_KEY$5;
|
var EVENT_KEY$5 = "." + DATA_KEY$5;
|
||||||
var DATA_API_KEY$5 = '.data-api';
|
var DATA_API_KEY$5 = '.data-api';
|
||||||
@@ -4627,6 +4646,7 @@
|
|||||||
CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
|
CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
|
||||||
};
|
};
|
||||||
var ClassName$5 = {
|
var ClassName$5 = {
|
||||||
|
SCROLLABLE: 'modal-dialog-scrollable',
|
||||||
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
|
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
|
||||||
BACKDROP: 'modal-backdrop',
|
BACKDROP: 'modal-backdrop',
|
||||||
OPEN: 'modal-open',
|
OPEN: 'modal-open',
|
||||||
@@ -4635,6 +4655,7 @@
|
|||||||
};
|
};
|
||||||
var Selector$5 = {
|
var Selector$5 = {
|
||||||
DIALOG: '.modal-dialog',
|
DIALOG: '.modal-dialog',
|
||||||
|
MODAL_BODY: '.modal-body',
|
||||||
DATA_TOGGLE: '[data-toggle="modal"]',
|
DATA_TOGGLE: '[data-toggle="modal"]',
|
||||||
DATA_DISMISS: '[data-dismiss="modal"]',
|
DATA_DISMISS: '[data-dismiss="modal"]',
|
||||||
FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
|
FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
|
||||||
@@ -4787,8 +4808,8 @@
|
|||||||
|
|
||||||
_proto.handleUpdate = function handleUpdate() {
|
_proto.handleUpdate = function handleUpdate() {
|
||||||
this._adjustDialog();
|
this._adjustDialog();
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$3, config);
|
config = _objectSpread({}, Default$3, config);
|
||||||
@@ -4812,7 +4833,11 @@
|
|||||||
|
|
||||||
this._element.setAttribute('aria-modal', true);
|
this._element.setAttribute('aria-modal', true);
|
||||||
|
|
||||||
|
if ($(this._dialog).hasClass(ClassName$5.SCROLLABLE)) {
|
||||||
|
this._dialog.querySelector(Selector$5.MODAL_BODY).scrollTop = 0;
|
||||||
|
} else {
|
||||||
this._element.scrollTop = 0;
|
this._element.scrollTop = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (transition) {
|
if (transition) {
|
||||||
Util.reflow(this._element);
|
Util.reflow(this._element);
|
||||||
@@ -4982,11 +5007,11 @@
|
|||||||
} else if (callback) {
|
} else if (callback) {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
}; // ----------------------------------------------------------------------
|
} // ----------------------------------------------------------------------
|
||||||
// the following methods are used to handle overflowing modals
|
// the following methods are used to handle overflowing modals
|
||||||
// todo (fat): these should probably be refactored out of modal.js
|
// todo (fat): these should probably be refactored out of modal.js
|
||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
|
;
|
||||||
|
|
||||||
_proto._adjustDialog = function _adjustDialog() {
|
_proto._adjustDialog = function _adjustDialog() {
|
||||||
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
|
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
|
||||||
@@ -5071,8 +5096,8 @@
|
|||||||
var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
|
var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
|
||||||
document.body.removeChild(scrollDiv);
|
document.body.removeChild(scrollDiv);
|
||||||
return scrollbarWidth;
|
return scrollbarWidth;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
|
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -5163,6 +5188,127 @@
|
|||||||
return Modal._jQueryInterface;
|
return Modal._jQueryInterface;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap (v4.3.1): tools/sanitizer.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
|
||||||
|
var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
||||||
|
var DefaultWhitelist = {
|
||||||
|
// Global attributes allowed on any supplied element below.
|
||||||
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
|
a: ['target', 'href', 'title', 'rel'],
|
||||||
|
area: [],
|
||||||
|
b: [],
|
||||||
|
br: [],
|
||||||
|
col: [],
|
||||||
|
code: [],
|
||||||
|
div: [],
|
||||||
|
em: [],
|
||||||
|
hr: [],
|
||||||
|
h1: [],
|
||||||
|
h2: [],
|
||||||
|
h3: [],
|
||||||
|
h4: [],
|
||||||
|
h5: [],
|
||||||
|
h6: [],
|
||||||
|
i: [],
|
||||||
|
img: ['src', 'alt', 'title', 'width', 'height'],
|
||||||
|
li: [],
|
||||||
|
ol: [],
|
||||||
|
p: [],
|
||||||
|
pre: [],
|
||||||
|
s: [],
|
||||||
|
small: [],
|
||||||
|
span: [],
|
||||||
|
sub: [],
|
||||||
|
sup: [],
|
||||||
|
strong: [],
|
||||||
|
u: [],
|
||||||
|
ul: []
|
||||||
|
/**
|
||||||
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
|
||||||
|
};
|
||||||
|
var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;
|
||||||
|
/**
|
||||||
|
* A pattern that matches safe data URLs. Only matches image, video and audio types.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
|
||||||
|
var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
|
||||||
|
|
||||||
|
function allowedAttribute(attr, allowedAttributeList) {
|
||||||
|
var attrName = attr.nodeName.toLowerCase();
|
||||||
|
|
||||||
|
if (allowedAttributeList.indexOf(attrName) !== -1) {
|
||||||
|
if (uriAttrs.indexOf(attrName) !== -1) {
|
||||||
|
return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN));
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var regExp = allowedAttributeList.filter(function (attrRegex) {
|
||||||
|
return attrRegex instanceof RegExp;
|
||||||
|
}); // Check if a regular expression validates the attribute.
|
||||||
|
|
||||||
|
for (var i = 0, l = regExp.length; i < l; i++) {
|
||||||
|
if (attrName.match(regExp[i])) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
|
||||||
|
if (unsafeHtml.length === 0) {
|
||||||
|
return unsafeHtml;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sanitizeFn && typeof sanitizeFn === 'function') {
|
||||||
|
return sanitizeFn(unsafeHtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
var domParser = new window.DOMParser();
|
||||||
|
var createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
|
||||||
|
var whitelistKeys = Object.keys(whiteList);
|
||||||
|
var elements = [].slice.call(createdDocument.body.querySelectorAll('*'));
|
||||||
|
|
||||||
|
var _loop = function _loop(i, len) {
|
||||||
|
var el = elements[i];
|
||||||
|
var elName = el.nodeName.toLowerCase();
|
||||||
|
|
||||||
|
if (whitelistKeys.indexOf(el.nodeName.toLowerCase()) === -1) {
|
||||||
|
el.parentNode.removeChild(el);
|
||||||
|
return "continue";
|
||||||
|
}
|
||||||
|
|
||||||
|
var attributeList = [].slice.call(el.attributes);
|
||||||
|
var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
|
||||||
|
attributeList.forEach(function (attr) {
|
||||||
|
if (!allowedAttribute(attr, whitelistedAttributes)) {
|
||||||
|
el.removeAttribute(attr.nodeName);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
for (var i = 0, len = elements.length; i < len; i++) {
|
||||||
|
var _ret = _loop(i, len);
|
||||||
|
|
||||||
|
if (_ret === "continue") continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
return createdDocument.body.innerHTML;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Constants
|
* Constants
|
||||||
@@ -5170,12 +5316,13 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$6 = 'tooltip';
|
var NAME$6 = 'tooltip';
|
||||||
var VERSION$6 = '4.2.1';
|
var VERSION$6 = '4.3.1';
|
||||||
var DATA_KEY$6 = 'bs.tooltip';
|
var DATA_KEY$6 = 'bs.tooltip';
|
||||||
var EVENT_KEY$6 = "." + DATA_KEY$6;
|
var EVENT_KEY$6 = "." + DATA_KEY$6;
|
||||||
var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
|
var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
|
||||||
var CLASS_PREFIX = 'bs-tooltip';
|
var CLASS_PREFIX = 'bs-tooltip';
|
||||||
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
||||||
|
var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
|
||||||
var DefaultType$4 = {
|
var DefaultType$4 = {
|
||||||
animation: 'boolean',
|
animation: 'boolean',
|
||||||
template: 'string',
|
template: 'string',
|
||||||
@@ -5185,10 +5332,13 @@
|
|||||||
html: 'boolean',
|
html: 'boolean',
|
||||||
selector: '(string|boolean)',
|
selector: '(string|boolean)',
|
||||||
placement: '(string|function)',
|
placement: '(string|function)',
|
||||||
offset: '(number|string)',
|
offset: '(number|string|function)',
|
||||||
container: '(string|element|boolean)',
|
container: '(string|element|boolean)',
|
||||||
fallbackPlacement: '(string|array)',
|
fallbackPlacement: '(string|array)',
|
||||||
boundary: '(string|element)'
|
boundary: '(string|element)',
|
||||||
|
sanitize: 'boolean',
|
||||||
|
sanitizeFn: '(null|function)',
|
||||||
|
whiteList: 'object'
|
||||||
};
|
};
|
||||||
var AttachmentMap$1 = {
|
var AttachmentMap$1 = {
|
||||||
AUTO: 'auto',
|
AUTO: 'auto',
|
||||||
@@ -5209,7 +5359,10 @@
|
|||||||
offset: 0,
|
offset: 0,
|
||||||
container: false,
|
container: false,
|
||||||
fallbackPlacement: 'flip',
|
fallbackPlacement: 'flip',
|
||||||
boundary: 'scrollParent'
|
boundary: 'scrollParent',
|
||||||
|
sanitize: true,
|
||||||
|
sanitizeFn: null,
|
||||||
|
whiteList: DefaultWhitelist
|
||||||
};
|
};
|
||||||
var HoverState = {
|
var HoverState = {
|
||||||
SHOW: 'show',
|
SHOW: 'show',
|
||||||
@@ -5394,9 +5547,7 @@
|
|||||||
this._popper = new Popper(this.element, tip, {
|
this._popper = new Popper(this.element, tip, {
|
||||||
placement: attachment,
|
placement: attachment,
|
||||||
modifiers: {
|
modifiers: {
|
||||||
offset: {
|
offset: this._getOffset(),
|
||||||
offset: this.config.offset
|
|
||||||
},
|
|
||||||
flip: {
|
flip: {
|
||||||
behavior: this.config.fallbackPlacement
|
behavior: this.config.fallbackPlacement
|
||||||
},
|
},
|
||||||
@@ -5505,8 +5656,8 @@
|
|||||||
if (this._popper !== null) {
|
if (this._popper !== null) {
|
||||||
this._popper.scheduleUpdate();
|
this._popper.scheduleUpdate();
|
||||||
}
|
}
|
||||||
}; // Protected
|
} // Protected
|
||||||
|
;
|
||||||
|
|
||||||
_proto.isWithContent = function isWithContent() {
|
_proto.isWithContent = function isWithContent() {
|
||||||
return Boolean(this.getTitle());
|
return Boolean(this.getTitle());
|
||||||
@@ -5528,19 +5679,27 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto.setElementContent = function setElementContent($element, content) {
|
_proto.setElementContent = function setElementContent($element, content) {
|
||||||
var html = this.config.html;
|
|
||||||
|
|
||||||
if (typeof content === 'object' && (content.nodeType || content.jquery)) {
|
if (typeof content === 'object' && (content.nodeType || content.jquery)) {
|
||||||
// Content is a DOM node or a jQuery
|
// Content is a DOM node or a jQuery
|
||||||
if (html) {
|
if (this.config.html) {
|
||||||
if (!$(content).parent().is($element)) {
|
if (!$(content).parent().is($element)) {
|
||||||
$element.empty().append(content);
|
$element.empty().append(content);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$element.text($(content).text());
|
$element.text($(content).text());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.config.html) {
|
||||||
|
if (this.config.sanitize) {
|
||||||
|
content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn);
|
||||||
|
}
|
||||||
|
|
||||||
|
$element.html(content);
|
||||||
} else {
|
} else {
|
||||||
$element[html ? 'html' : 'text'](content);
|
$element.text(content);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -5552,8 +5711,25 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return title;
|
return title;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
|
_proto._getOffset = function _getOffset() {
|
||||||
|
var _this3 = this;
|
||||||
|
|
||||||
|
var offset = {};
|
||||||
|
|
||||||
|
if (typeof this.config.offset === 'function') {
|
||||||
|
offset.fn = function (data) {
|
||||||
|
data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {});
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
offset.offset = this.config.offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
return offset;
|
||||||
|
};
|
||||||
|
|
||||||
_proto._getContainer = function _getContainer() {
|
_proto._getContainer = function _getContainer() {
|
||||||
if (this.config.container === false) {
|
if (this.config.container === false) {
|
||||||
@@ -5572,27 +5748,27 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto._setListeners = function _setListeners() {
|
_proto._setListeners = function _setListeners() {
|
||||||
var _this3 = this;
|
var _this4 = this;
|
||||||
|
|
||||||
var triggers = this.config.trigger.split(' ');
|
var triggers = this.config.trigger.split(' ');
|
||||||
triggers.forEach(function (trigger) {
|
triggers.forEach(function (trigger) {
|
||||||
if (trigger === 'click') {
|
if (trigger === 'click') {
|
||||||
$(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, function (event) {
|
$(_this4.element).on(_this4.constructor.Event.CLICK, _this4.config.selector, function (event) {
|
||||||
return _this3.toggle(event);
|
return _this4.toggle(event);
|
||||||
});
|
});
|
||||||
} else if (trigger !== Trigger.MANUAL) {
|
} else if (trigger !== Trigger.MANUAL) {
|
||||||
var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN;
|
var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN;
|
||||||
var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT;
|
var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT;
|
||||||
$(_this3.element).on(eventIn, _this3.config.selector, function (event) {
|
$(_this4.element).on(eventIn, _this4.config.selector, function (event) {
|
||||||
return _this3._enter(event);
|
return _this4._enter(event);
|
||||||
}).on(eventOut, _this3.config.selector, function (event) {
|
}).on(eventOut, _this4.config.selector, function (event) {
|
||||||
return _this3._leave(event);
|
return _this4._leave(event);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$(this.element).closest('.modal').on('hide.bs.modal', function () {
|
$(this.element).closest('.modal').on('hide.bs.modal', function () {
|
||||||
if (_this3.element) {
|
if (_this4.element) {
|
||||||
_this3.hide();
|
_this4.hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -5691,7 +5867,13 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, this.constructor.Default, $(this.element).data(), typeof config === 'object' && config ? config : {});
|
var dataAttributes = $(this.element).data();
|
||||||
|
Object.keys(dataAttributes).forEach(function (dataAttr) {
|
||||||
|
if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {
|
||||||
|
delete dataAttributes[dataAttr];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
config = _objectSpread({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
|
||||||
|
|
||||||
if (typeof config.delay === 'number') {
|
if (typeof config.delay === 'number') {
|
||||||
config.delay = {
|
config.delay = {
|
||||||
@@ -5709,6 +5891,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
|
Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
|
||||||
|
|
||||||
|
if (config.sanitize) {
|
||||||
|
config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn);
|
||||||
|
}
|
||||||
|
|
||||||
return config;
|
return config;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -5757,8 +5944,8 @@
|
|||||||
this.hide();
|
this.hide();
|
||||||
this.show();
|
this.show();
|
||||||
this.config.animation = initConfigAnimation;
|
this.config.animation = initConfigAnimation;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -5846,7 +6033,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$7 = 'popover';
|
var NAME$7 = 'popover';
|
||||||
var VERSION$7 = '4.2.1';
|
var VERSION$7 = '4.3.1';
|
||||||
var DATA_KEY$7 = 'bs.popover';
|
var DATA_KEY$7 = 'bs.popover';
|
||||||
var EVENT_KEY$7 = "." + DATA_KEY$7;
|
var EVENT_KEY$7 = "." + DATA_KEY$7;
|
||||||
var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
|
var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
|
||||||
@@ -5929,8 +6116,8 @@
|
|||||||
|
|
||||||
this.setElementContent($tip.find(Selector$7.CONTENT), content);
|
this.setElementContent($tip.find(Selector$7.CONTENT), content);
|
||||||
$tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW);
|
$tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW);
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getContent = function _getContent() {
|
_proto._getContent = function _getContent() {
|
||||||
return this.element.getAttribute('data-content') || this.config.content;
|
return this.element.getAttribute('data-content') || this.config.content;
|
||||||
@@ -5943,8 +6130,8 @@
|
|||||||
if (tabClass !== null && tabClass.length > 0) {
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
$tip.removeClass(tabClass.join(''));
|
$tip.removeClass(tabClass.join(''));
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Popover._jQueryInterface = function _jQueryInterface(config) {
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -6033,7 +6220,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$8 = 'scrollspy';
|
var NAME$8 = 'scrollspy';
|
||||||
var VERSION$8 = '4.2.1';
|
var VERSION$8 = '4.3.1';
|
||||||
var DATA_KEY$8 = 'bs.scrollspy';
|
var DATA_KEY$8 = 'bs.scrollspy';
|
||||||
var EVENT_KEY$8 = "." + DATA_KEY$8;
|
var EVENT_KEY$8 = "." + DATA_KEY$8;
|
||||||
var DATA_API_KEY$6 = '.data-api';
|
var DATA_API_KEY$6 = '.data-api';
|
||||||
@@ -6156,8 +6343,8 @@
|
|||||||
this._targets = null;
|
this._targets = null;
|
||||||
this._activeTarget = null;
|
this._activeTarget = null;
|
||||||
this._scrollHeight = null;
|
this._scrollHeight = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
|
config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
|
||||||
@@ -6264,8 +6451,8 @@
|
|||||||
}).forEach(function (node) {
|
}).forEach(function (node) {
|
||||||
return node.classList.remove(ClassName$8.ACTIVE);
|
return node.classList.remove(ClassName$8.ACTIVE);
|
||||||
});
|
});
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -6340,7 +6527,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$9 = 'tab';
|
var NAME$9 = 'tab';
|
||||||
var VERSION$9 = '4.2.1';
|
var VERSION$9 = '4.3.1';
|
||||||
var DATA_KEY$9 = 'bs.tab';
|
var DATA_KEY$9 = 'bs.tab';
|
||||||
var EVENT_KEY$9 = "." + DATA_KEY$9;
|
var EVENT_KEY$9 = "." + DATA_KEY$9;
|
||||||
var DATA_API_KEY$7 = '.data-api';
|
var DATA_API_KEY$7 = '.data-api';
|
||||||
@@ -6448,8 +6635,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY$9);
|
$.removeData(this._element, DATA_KEY$9);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._activate = function _activate(element, container, callback) {
|
_proto._activate = function _activate(element, container, callback) {
|
||||||
var _this2 = this;
|
var _this2 = this;
|
||||||
@@ -6491,7 +6678,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Util.reflow(element);
|
Util.reflow(element);
|
||||||
$(element).addClass(ClassName$9.SHOW);
|
|
||||||
|
if (element.classList.contains(ClassName$9.FADE)) {
|
||||||
|
element.classList.add(ClassName$9.SHOW);
|
||||||
|
}
|
||||||
|
|
||||||
if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) {
|
if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) {
|
||||||
var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0];
|
var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0];
|
||||||
@@ -6507,8 +6697,8 @@
|
|||||||
if (callback) {
|
if (callback) {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Tab._jQueryInterface = function _jQueryInterface(config) {
|
Tab._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -6572,7 +6762,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$a = 'toast';
|
var NAME$a = 'toast';
|
||||||
var VERSION$a = '4.2.1';
|
var VERSION$a = '4.3.1';
|
||||||
var DATA_KEY$a = 'bs.toast';
|
var DATA_KEY$a = 'bs.toast';
|
||||||
var EVENT_KEY$a = "." + DATA_KEY$a;
|
var EVENT_KEY$a = "." + DATA_KEY$a;
|
||||||
var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
|
var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
|
||||||
@@ -6687,8 +6877,8 @@
|
|||||||
$.removeData(this._element, DATA_KEY$a);
|
$.removeData(this._element, DATA_KEY$a);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
this._config = null;
|
this._config = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
|
config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
|
||||||
@@ -6721,8 +6911,8 @@
|
|||||||
} else {
|
} else {
|
||||||
complete();
|
complete();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Toast._jQueryInterface = function _jQueryInterface(config) {
|
Toast._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -6756,6 +6946,11 @@
|
|||||||
get: function get() {
|
get: function get() {
|
||||||
return DefaultType$7;
|
return DefaultType$7;
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: "Default",
|
||||||
|
get: function get() {
|
||||||
|
return Default$7;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return Toast;
|
return Toast;
|
||||||
@@ -6777,7 +6972,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.2.1): index.js
|
* Bootstrap (v4.3.1): index.js
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@@ -6814,5 +7009,5 @@
|
|||||||
|
|
||||||
Object.defineProperty(exports, '__esModule', { value: true });
|
Object.defineProperty(exports, '__esModule', { value: true });
|
||||||
|
|
||||||
})));
|
}));
|
||||||
//# sourceMappingURL=bootstrap.bundle.js.map
|
//# sourceMappingURL=bootstrap.bundle.js.map
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
+3
-3
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+285
-99
@@ -1,16 +1,16 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v4.2.1 (https://getbootstrap.com/)
|
* Bootstrap v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
(function (global, factory) {
|
(function (global, factory) {
|
||||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('popper.js'), require('jquery')) :
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery'), require('popper.js')) :
|
||||||
typeof define === 'function' && define.amd ? define(['exports', 'popper.js', 'jquery'], factory) :
|
typeof define === 'function' && define.amd ? define(['exports', 'jquery', 'popper.js'], factory) :
|
||||||
(factory((global.bootstrap = {}),global.Popper,global.jQuery));
|
(global = global || self, factory(global.bootstrap = {}, global.jQuery, global.Popper));
|
||||||
}(this, (function (exports,Popper,$) { 'use strict';
|
}(this, function (exports, $, Popper) { 'use strict';
|
||||||
|
|
||||||
Popper = Popper && Popper.hasOwnProperty('default') ? Popper['default'] : Popper;
|
|
||||||
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
||||||
|
Popper = Popper && Popper.hasOwnProperty('default') ? Popper['default'] : Popper;
|
||||||
|
|
||||||
function _defineProperties(target, props) {
|
function _defineProperties(target, props) {
|
||||||
for (var i = 0; i < props.length; i++) {
|
for (var i = 0; i < props.length; i++) {
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.2.1): util.js
|
* Bootstrap (v4.3.1): util.js
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@@ -146,7 +146,11 @@
|
|||||||
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
|
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
|
||||||
}
|
}
|
||||||
|
|
||||||
return selector && document.querySelector(selector) ? selector : null;
|
try {
|
||||||
|
return document.querySelector(selector) ? selector : null;
|
||||||
|
} catch (err) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
getTransitionDurationFromElement: function getTransitionDurationFromElement(element) {
|
getTransitionDurationFromElement: function getTransitionDurationFromElement(element) {
|
||||||
if (!element) {
|
if (!element) {
|
||||||
@@ -226,7 +230,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME = 'alert';
|
var NAME = 'alert';
|
||||||
var VERSION = '4.2.1';
|
var VERSION = '4.3.1';
|
||||||
var DATA_KEY = 'bs.alert';
|
var DATA_KEY = 'bs.alert';
|
||||||
var EVENT_KEY = "." + DATA_KEY;
|
var EVENT_KEY = "." + DATA_KEY;
|
||||||
var DATA_API_KEY = '.data-api';
|
var DATA_API_KEY = '.data-api';
|
||||||
@@ -281,8 +285,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getRootElement = function _getRootElement(element) {
|
_proto._getRootElement = function _getRootElement(element) {
|
||||||
var selector = Util.getSelectorFromElement(element);
|
var selector = Util.getSelectorFromElement(element);
|
||||||
@@ -324,8 +328,8 @@
|
|||||||
|
|
||||||
_proto._destroyElement = function _destroyElement(element) {
|
_proto._destroyElement = function _destroyElement(element) {
|
||||||
$(element).detach().trigger(Event.CLOSED).remove();
|
$(element).detach().trigger(Event.CLOSED).remove();
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Alert._jQueryInterface = function _jQueryInterface(config) {
|
Alert._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -391,7 +395,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$1 = 'button';
|
var NAME$1 = 'button';
|
||||||
var VERSION$1 = '4.2.1';
|
var VERSION$1 = '4.3.1';
|
||||||
var DATA_KEY$1 = 'bs.button';
|
var DATA_KEY$1 = 'bs.button';
|
||||||
var EVENT_KEY$1 = "." + DATA_KEY$1;
|
var EVENT_KEY$1 = "." + DATA_KEY$1;
|
||||||
var DATA_API_KEY$1 = '.data-api';
|
var DATA_API_KEY$1 = '.data-api';
|
||||||
@@ -477,8 +481,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY$1);
|
$.removeData(this._element, DATA_KEY$1);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Button._jQueryInterface = function _jQueryInterface(config) {
|
Button._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -545,7 +549,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$2 = 'carousel';
|
var NAME$2 = 'carousel';
|
||||||
var VERSION$2 = '4.2.1';
|
var VERSION$2 = '4.3.1';
|
||||||
var DATA_KEY$2 = 'bs.carousel';
|
var DATA_KEY$2 = 'bs.carousel';
|
||||||
var EVENT_KEY$2 = "." + DATA_KEY$2;
|
var EVENT_KEY$2 = "." + DATA_KEY$2;
|
||||||
var DATA_API_KEY$2 = '.data-api';
|
var DATA_API_KEY$2 = '.data-api';
|
||||||
@@ -740,8 +744,8 @@
|
|||||||
this._isSliding = null;
|
this._isSliding = null;
|
||||||
this._activeElement = null;
|
this._activeElement = null;
|
||||||
this._indicatorsElement = null;
|
this._indicatorsElement = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default, config);
|
config = _objectSpread({}, Default, config);
|
||||||
@@ -785,7 +789,9 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this._config.touch) {
|
||||||
this._addTouchEventListeners();
|
this._addTouchEventListeners();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
_proto._addTouchEventListeners = function _addTouchEventListeners() {
|
_proto._addTouchEventListeners = function _addTouchEventListeners() {
|
||||||
@@ -1026,8 +1032,8 @@
|
|||||||
if (isCycling) {
|
if (isCycling) {
|
||||||
this.cycle();
|
this.cycle();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Carousel._jQueryInterface = function _jQueryInterface(config) {
|
Carousel._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -1054,7 +1060,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
data[action]();
|
data[action]();
|
||||||
} else if (_config.interval) {
|
} else if (_config.interval && _config.ride) {
|
||||||
data.pause();
|
data.pause();
|
||||||
data.cycle();
|
data.cycle();
|
||||||
}
|
}
|
||||||
@@ -1143,7 +1149,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$3 = 'collapse';
|
var NAME$3 = 'collapse';
|
||||||
var VERSION$3 = '4.2.1';
|
var VERSION$3 = '4.3.1';
|
||||||
var DATA_KEY$3 = 'bs.collapse';
|
var DATA_KEY$3 = 'bs.collapse';
|
||||||
var EVENT_KEY$3 = "." + DATA_KEY$3;
|
var EVENT_KEY$3 = "." + DATA_KEY$3;
|
||||||
var DATA_API_KEY$3 = '.data-api';
|
var DATA_API_KEY$3 = '.data-api';
|
||||||
@@ -1365,8 +1371,8 @@
|
|||||||
this._element = null;
|
this._element = null;
|
||||||
this._triggerArray = null;
|
this._triggerArray = null;
|
||||||
this._isTransitioning = null;
|
this._isTransitioning = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$1, config);
|
config = _objectSpread({}, Default$1, config);
|
||||||
@@ -1410,8 +1416,8 @@
|
|||||||
if (triggerArray.length) {
|
if (triggerArray.length) {
|
||||||
$(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
|
$(triggerArray).toggleClass(ClassName$3.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
|
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
|
||||||
var selector = Util.getSelectorFromElement(element);
|
var selector = Util.getSelectorFromElement(element);
|
||||||
@@ -1503,7 +1509,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$4 = 'dropdown';
|
var NAME$4 = 'dropdown';
|
||||||
var VERSION$4 = '4.2.1';
|
var VERSION$4 = '4.3.1';
|
||||||
var DATA_KEY$4 = 'bs.dropdown';
|
var DATA_KEY$4 = 'bs.dropdown';
|
||||||
var EVENT_KEY$4 = "." + DATA_KEY$4;
|
var EVENT_KEY$4 = "." + DATA_KEY$4;
|
||||||
var DATA_API_KEY$4 = '.data-api';
|
var DATA_API_KEY$4 = '.data-api';
|
||||||
@@ -1732,8 +1738,8 @@
|
|||||||
if (this._popper !== null) {
|
if (this._popper !== null) {
|
||||||
this._popper.scheduleUpdate();
|
this._popper.scheduleUpdate();
|
||||||
}
|
}
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._addEventListeners = function _addEventListeners() {
|
_proto._addEventListeners = function _addEventListeners() {
|
||||||
var _this = this;
|
var _this = this;
|
||||||
@@ -1789,24 +1795,28 @@
|
|||||||
return $(this._element).closest('.navbar').length > 0;
|
return $(this._element).closest('.navbar').length > 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
_proto._getPopperConfig = function _getPopperConfig() {
|
_proto._getOffset = function _getOffset() {
|
||||||
var _this2 = this;
|
var _this2 = this;
|
||||||
|
|
||||||
var offsetConf = {};
|
var offset = {};
|
||||||
|
|
||||||
if (typeof this._config.offset === 'function') {
|
if (typeof this._config.offset === 'function') {
|
||||||
offsetConf.fn = function (data) {
|
offset.fn = function (data) {
|
||||||
data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets) || {});
|
data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
offsetConf.offset = this._config.offset;
|
offset.offset = this._config.offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return offset;
|
||||||
|
};
|
||||||
|
|
||||||
|
_proto._getPopperConfig = function _getPopperConfig() {
|
||||||
var popperConfig = {
|
var popperConfig = {
|
||||||
placement: this._getPlacement(),
|
placement: this._getPlacement(),
|
||||||
modifiers: {
|
modifiers: {
|
||||||
offset: offsetConf,
|
offset: this._getOffset(),
|
||||||
flip: {
|
flip: {
|
||||||
enabled: this._config.flip
|
enabled: this._config.flip
|
||||||
},
|
},
|
||||||
@@ -1824,8 +1834,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return popperConfig;
|
return popperConfig;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -1909,8 +1919,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return parent || element.parentNode;
|
return parent || element.parentNode;
|
||||||
}; // eslint-disable-next-line complexity
|
} // eslint-disable-next-line complexity
|
||||||
|
;
|
||||||
|
|
||||||
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
|
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
|
||||||
// If not input/textarea:
|
// If not input/textarea:
|
||||||
@@ -2025,7 +2035,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$5 = 'modal';
|
var NAME$5 = 'modal';
|
||||||
var VERSION$5 = '4.2.1';
|
var VERSION$5 = '4.3.1';
|
||||||
var DATA_KEY$5 = 'bs.modal';
|
var DATA_KEY$5 = 'bs.modal';
|
||||||
var EVENT_KEY$5 = "." + DATA_KEY$5;
|
var EVENT_KEY$5 = "." + DATA_KEY$5;
|
||||||
var DATA_API_KEY$5 = '.data-api';
|
var DATA_API_KEY$5 = '.data-api';
|
||||||
@@ -2058,6 +2068,7 @@
|
|||||||
CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
|
CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
|
||||||
};
|
};
|
||||||
var ClassName$5 = {
|
var ClassName$5 = {
|
||||||
|
SCROLLABLE: 'modal-dialog-scrollable',
|
||||||
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
|
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
|
||||||
BACKDROP: 'modal-backdrop',
|
BACKDROP: 'modal-backdrop',
|
||||||
OPEN: 'modal-open',
|
OPEN: 'modal-open',
|
||||||
@@ -2066,6 +2077,7 @@
|
|||||||
};
|
};
|
||||||
var Selector$5 = {
|
var Selector$5 = {
|
||||||
DIALOG: '.modal-dialog',
|
DIALOG: '.modal-dialog',
|
||||||
|
MODAL_BODY: '.modal-body',
|
||||||
DATA_TOGGLE: '[data-toggle="modal"]',
|
DATA_TOGGLE: '[data-toggle="modal"]',
|
||||||
DATA_DISMISS: '[data-dismiss="modal"]',
|
DATA_DISMISS: '[data-dismiss="modal"]',
|
||||||
FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
|
FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
|
||||||
@@ -2218,8 +2230,8 @@
|
|||||||
|
|
||||||
_proto.handleUpdate = function handleUpdate() {
|
_proto.handleUpdate = function handleUpdate() {
|
||||||
this._adjustDialog();
|
this._adjustDialog();
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$3, config);
|
config = _objectSpread({}, Default$3, config);
|
||||||
@@ -2243,7 +2255,11 @@
|
|||||||
|
|
||||||
this._element.setAttribute('aria-modal', true);
|
this._element.setAttribute('aria-modal', true);
|
||||||
|
|
||||||
|
if ($(this._dialog).hasClass(ClassName$5.SCROLLABLE)) {
|
||||||
|
this._dialog.querySelector(Selector$5.MODAL_BODY).scrollTop = 0;
|
||||||
|
} else {
|
||||||
this._element.scrollTop = 0;
|
this._element.scrollTop = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (transition) {
|
if (transition) {
|
||||||
Util.reflow(this._element);
|
Util.reflow(this._element);
|
||||||
@@ -2413,11 +2429,11 @@
|
|||||||
} else if (callback) {
|
} else if (callback) {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
}; // ----------------------------------------------------------------------
|
} // ----------------------------------------------------------------------
|
||||||
// the following methods are used to handle overflowing modals
|
// the following methods are used to handle overflowing modals
|
||||||
// todo (fat): these should probably be refactored out of modal.js
|
// todo (fat): these should probably be refactored out of modal.js
|
||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
|
;
|
||||||
|
|
||||||
_proto._adjustDialog = function _adjustDialog() {
|
_proto._adjustDialog = function _adjustDialog() {
|
||||||
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
|
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
|
||||||
@@ -2502,8 +2518,8 @@
|
|||||||
var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
|
var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
|
||||||
document.body.removeChild(scrollDiv);
|
document.body.removeChild(scrollDiv);
|
||||||
return scrollbarWidth;
|
return scrollbarWidth;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
|
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -2594,6 +2610,127 @@
|
|||||||
return Modal._jQueryInterface;
|
return Modal._jQueryInterface;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap (v4.3.1): tools/sanitizer.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
|
||||||
|
var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
||||||
|
var DefaultWhitelist = {
|
||||||
|
// Global attributes allowed on any supplied element below.
|
||||||
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
|
a: ['target', 'href', 'title', 'rel'],
|
||||||
|
area: [],
|
||||||
|
b: [],
|
||||||
|
br: [],
|
||||||
|
col: [],
|
||||||
|
code: [],
|
||||||
|
div: [],
|
||||||
|
em: [],
|
||||||
|
hr: [],
|
||||||
|
h1: [],
|
||||||
|
h2: [],
|
||||||
|
h3: [],
|
||||||
|
h4: [],
|
||||||
|
h5: [],
|
||||||
|
h6: [],
|
||||||
|
i: [],
|
||||||
|
img: ['src', 'alt', 'title', 'width', 'height'],
|
||||||
|
li: [],
|
||||||
|
ol: [],
|
||||||
|
p: [],
|
||||||
|
pre: [],
|
||||||
|
s: [],
|
||||||
|
small: [],
|
||||||
|
span: [],
|
||||||
|
sub: [],
|
||||||
|
sup: [],
|
||||||
|
strong: [],
|
||||||
|
u: [],
|
||||||
|
ul: []
|
||||||
|
/**
|
||||||
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
|
||||||
|
};
|
||||||
|
var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;
|
||||||
|
/**
|
||||||
|
* A pattern that matches safe data URLs. Only matches image, video and audio types.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
|
||||||
|
var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
|
||||||
|
|
||||||
|
function allowedAttribute(attr, allowedAttributeList) {
|
||||||
|
var attrName = attr.nodeName.toLowerCase();
|
||||||
|
|
||||||
|
if (allowedAttributeList.indexOf(attrName) !== -1) {
|
||||||
|
if (uriAttrs.indexOf(attrName) !== -1) {
|
||||||
|
return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN));
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var regExp = allowedAttributeList.filter(function (attrRegex) {
|
||||||
|
return attrRegex instanceof RegExp;
|
||||||
|
}); // Check if a regular expression validates the attribute.
|
||||||
|
|
||||||
|
for (var i = 0, l = regExp.length; i < l; i++) {
|
||||||
|
if (attrName.match(regExp[i])) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
|
||||||
|
if (unsafeHtml.length === 0) {
|
||||||
|
return unsafeHtml;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sanitizeFn && typeof sanitizeFn === 'function') {
|
||||||
|
return sanitizeFn(unsafeHtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
var domParser = new window.DOMParser();
|
||||||
|
var createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
|
||||||
|
var whitelistKeys = Object.keys(whiteList);
|
||||||
|
var elements = [].slice.call(createdDocument.body.querySelectorAll('*'));
|
||||||
|
|
||||||
|
var _loop = function _loop(i, len) {
|
||||||
|
var el = elements[i];
|
||||||
|
var elName = el.nodeName.toLowerCase();
|
||||||
|
|
||||||
|
if (whitelistKeys.indexOf(el.nodeName.toLowerCase()) === -1) {
|
||||||
|
el.parentNode.removeChild(el);
|
||||||
|
return "continue";
|
||||||
|
}
|
||||||
|
|
||||||
|
var attributeList = [].slice.call(el.attributes);
|
||||||
|
var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
|
||||||
|
attributeList.forEach(function (attr) {
|
||||||
|
if (!allowedAttribute(attr, whitelistedAttributes)) {
|
||||||
|
el.removeAttribute(attr.nodeName);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
for (var i = 0, len = elements.length; i < len; i++) {
|
||||||
|
var _ret = _loop(i, len);
|
||||||
|
|
||||||
|
if (_ret === "continue") continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
return createdDocument.body.innerHTML;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Constants
|
* Constants
|
||||||
@@ -2601,12 +2738,13 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$6 = 'tooltip';
|
var NAME$6 = 'tooltip';
|
||||||
var VERSION$6 = '4.2.1';
|
var VERSION$6 = '4.3.1';
|
||||||
var DATA_KEY$6 = 'bs.tooltip';
|
var DATA_KEY$6 = 'bs.tooltip';
|
||||||
var EVENT_KEY$6 = "." + DATA_KEY$6;
|
var EVENT_KEY$6 = "." + DATA_KEY$6;
|
||||||
var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
|
var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6];
|
||||||
var CLASS_PREFIX = 'bs-tooltip';
|
var CLASS_PREFIX = 'bs-tooltip';
|
||||||
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
||||||
|
var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
|
||||||
var DefaultType$4 = {
|
var DefaultType$4 = {
|
||||||
animation: 'boolean',
|
animation: 'boolean',
|
||||||
template: 'string',
|
template: 'string',
|
||||||
@@ -2616,10 +2754,13 @@
|
|||||||
html: 'boolean',
|
html: 'boolean',
|
||||||
selector: '(string|boolean)',
|
selector: '(string|boolean)',
|
||||||
placement: '(string|function)',
|
placement: '(string|function)',
|
||||||
offset: '(number|string)',
|
offset: '(number|string|function)',
|
||||||
container: '(string|element|boolean)',
|
container: '(string|element|boolean)',
|
||||||
fallbackPlacement: '(string|array)',
|
fallbackPlacement: '(string|array)',
|
||||||
boundary: '(string|element)'
|
boundary: '(string|element)',
|
||||||
|
sanitize: 'boolean',
|
||||||
|
sanitizeFn: '(null|function)',
|
||||||
|
whiteList: 'object'
|
||||||
};
|
};
|
||||||
var AttachmentMap$1 = {
|
var AttachmentMap$1 = {
|
||||||
AUTO: 'auto',
|
AUTO: 'auto',
|
||||||
@@ -2640,7 +2781,10 @@
|
|||||||
offset: 0,
|
offset: 0,
|
||||||
container: false,
|
container: false,
|
||||||
fallbackPlacement: 'flip',
|
fallbackPlacement: 'flip',
|
||||||
boundary: 'scrollParent'
|
boundary: 'scrollParent',
|
||||||
|
sanitize: true,
|
||||||
|
sanitizeFn: null,
|
||||||
|
whiteList: DefaultWhitelist
|
||||||
};
|
};
|
||||||
var HoverState = {
|
var HoverState = {
|
||||||
SHOW: 'show',
|
SHOW: 'show',
|
||||||
@@ -2825,9 +2969,7 @@
|
|||||||
this._popper = new Popper(this.element, tip, {
|
this._popper = new Popper(this.element, tip, {
|
||||||
placement: attachment,
|
placement: attachment,
|
||||||
modifiers: {
|
modifiers: {
|
||||||
offset: {
|
offset: this._getOffset(),
|
||||||
offset: this.config.offset
|
|
||||||
},
|
|
||||||
flip: {
|
flip: {
|
||||||
behavior: this.config.fallbackPlacement
|
behavior: this.config.fallbackPlacement
|
||||||
},
|
},
|
||||||
@@ -2936,8 +3078,8 @@
|
|||||||
if (this._popper !== null) {
|
if (this._popper !== null) {
|
||||||
this._popper.scheduleUpdate();
|
this._popper.scheduleUpdate();
|
||||||
}
|
}
|
||||||
}; // Protected
|
} // Protected
|
||||||
|
;
|
||||||
|
|
||||||
_proto.isWithContent = function isWithContent() {
|
_proto.isWithContent = function isWithContent() {
|
||||||
return Boolean(this.getTitle());
|
return Boolean(this.getTitle());
|
||||||
@@ -2959,19 +3101,27 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto.setElementContent = function setElementContent($element, content) {
|
_proto.setElementContent = function setElementContent($element, content) {
|
||||||
var html = this.config.html;
|
|
||||||
|
|
||||||
if (typeof content === 'object' && (content.nodeType || content.jquery)) {
|
if (typeof content === 'object' && (content.nodeType || content.jquery)) {
|
||||||
// Content is a DOM node or a jQuery
|
// Content is a DOM node or a jQuery
|
||||||
if (html) {
|
if (this.config.html) {
|
||||||
if (!$(content).parent().is($element)) {
|
if (!$(content).parent().is($element)) {
|
||||||
$element.empty().append(content);
|
$element.empty().append(content);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$element.text($(content).text());
|
$element.text($(content).text());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.config.html) {
|
||||||
|
if (this.config.sanitize) {
|
||||||
|
content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn);
|
||||||
|
}
|
||||||
|
|
||||||
|
$element.html(content);
|
||||||
} else {
|
} else {
|
||||||
$element[html ? 'html' : 'text'](content);
|
$element.text(content);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2983,8 +3133,25 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
return title;
|
return title;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
|
_proto._getOffset = function _getOffset() {
|
||||||
|
var _this3 = this;
|
||||||
|
|
||||||
|
var offset = {};
|
||||||
|
|
||||||
|
if (typeof this.config.offset === 'function') {
|
||||||
|
offset.fn = function (data) {
|
||||||
|
data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {});
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
offset.offset = this.config.offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
return offset;
|
||||||
|
};
|
||||||
|
|
||||||
_proto._getContainer = function _getContainer() {
|
_proto._getContainer = function _getContainer() {
|
||||||
if (this.config.container === false) {
|
if (this.config.container === false) {
|
||||||
@@ -3003,27 +3170,27 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto._setListeners = function _setListeners() {
|
_proto._setListeners = function _setListeners() {
|
||||||
var _this3 = this;
|
var _this4 = this;
|
||||||
|
|
||||||
var triggers = this.config.trigger.split(' ');
|
var triggers = this.config.trigger.split(' ');
|
||||||
triggers.forEach(function (trigger) {
|
triggers.forEach(function (trigger) {
|
||||||
if (trigger === 'click') {
|
if (trigger === 'click') {
|
||||||
$(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, function (event) {
|
$(_this4.element).on(_this4.constructor.Event.CLICK, _this4.config.selector, function (event) {
|
||||||
return _this3.toggle(event);
|
return _this4.toggle(event);
|
||||||
});
|
});
|
||||||
} else if (trigger !== Trigger.MANUAL) {
|
} else if (trigger !== Trigger.MANUAL) {
|
||||||
var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN;
|
var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN;
|
||||||
var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT;
|
var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT;
|
||||||
$(_this3.element).on(eventIn, _this3.config.selector, function (event) {
|
$(_this4.element).on(eventIn, _this4.config.selector, function (event) {
|
||||||
return _this3._enter(event);
|
return _this4._enter(event);
|
||||||
}).on(eventOut, _this3.config.selector, function (event) {
|
}).on(eventOut, _this4.config.selector, function (event) {
|
||||||
return _this3._leave(event);
|
return _this4._leave(event);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$(this.element).closest('.modal').on('hide.bs.modal', function () {
|
$(this.element).closest('.modal').on('hide.bs.modal', function () {
|
||||||
if (_this3.element) {
|
if (_this4.element) {
|
||||||
_this3.hide();
|
_this4.hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -3122,7 +3289,13 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, this.constructor.Default, $(this.element).data(), typeof config === 'object' && config ? config : {});
|
var dataAttributes = $(this.element).data();
|
||||||
|
Object.keys(dataAttributes).forEach(function (dataAttr) {
|
||||||
|
if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {
|
||||||
|
delete dataAttributes[dataAttr];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
config = _objectSpread({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
|
||||||
|
|
||||||
if (typeof config.delay === 'number') {
|
if (typeof config.delay === 'number') {
|
||||||
config.delay = {
|
config.delay = {
|
||||||
@@ -3140,6 +3313,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
|
Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType);
|
||||||
|
|
||||||
|
if (config.sanitize) {
|
||||||
|
config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn);
|
||||||
|
}
|
||||||
|
|
||||||
return config;
|
return config;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -3188,8 +3366,8 @@
|
|||||||
this.hide();
|
this.hide();
|
||||||
this.show();
|
this.show();
|
||||||
this.config.animation = initConfigAnimation;
|
this.config.animation = initConfigAnimation;
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -3277,7 +3455,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$7 = 'popover';
|
var NAME$7 = 'popover';
|
||||||
var VERSION$7 = '4.2.1';
|
var VERSION$7 = '4.3.1';
|
||||||
var DATA_KEY$7 = 'bs.popover';
|
var DATA_KEY$7 = 'bs.popover';
|
||||||
var EVENT_KEY$7 = "." + DATA_KEY$7;
|
var EVENT_KEY$7 = "." + DATA_KEY$7;
|
||||||
var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
|
var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7];
|
||||||
@@ -3360,8 +3538,8 @@
|
|||||||
|
|
||||||
this.setElementContent($tip.find(Selector$7.CONTENT), content);
|
this.setElementContent($tip.find(Selector$7.CONTENT), content);
|
||||||
$tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW);
|
$tip.removeClass(ClassName$7.FADE + " " + ClassName$7.SHOW);
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getContent = function _getContent() {
|
_proto._getContent = function _getContent() {
|
||||||
return this.element.getAttribute('data-content') || this.config.content;
|
return this.element.getAttribute('data-content') || this.config.content;
|
||||||
@@ -3374,8 +3552,8 @@
|
|||||||
if (tabClass !== null && tabClass.length > 0) {
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
$tip.removeClass(tabClass.join(''));
|
$tip.removeClass(tabClass.join(''));
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Popover._jQueryInterface = function _jQueryInterface(config) {
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -3464,7 +3642,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$8 = 'scrollspy';
|
var NAME$8 = 'scrollspy';
|
||||||
var VERSION$8 = '4.2.1';
|
var VERSION$8 = '4.3.1';
|
||||||
var DATA_KEY$8 = 'bs.scrollspy';
|
var DATA_KEY$8 = 'bs.scrollspy';
|
||||||
var EVENT_KEY$8 = "." + DATA_KEY$8;
|
var EVENT_KEY$8 = "." + DATA_KEY$8;
|
||||||
var DATA_API_KEY$6 = '.data-api';
|
var DATA_API_KEY$6 = '.data-api';
|
||||||
@@ -3587,8 +3765,8 @@
|
|||||||
this._targets = null;
|
this._targets = null;
|
||||||
this._activeTarget = null;
|
this._activeTarget = null;
|
||||||
this._scrollHeight = null;
|
this._scrollHeight = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
|
config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
|
||||||
@@ -3695,8 +3873,8 @@
|
|||||||
}).forEach(function (node) {
|
}).forEach(function (node) {
|
||||||
return node.classList.remove(ClassName$8.ACTIVE);
|
return node.classList.remove(ClassName$8.ACTIVE);
|
||||||
});
|
});
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -3771,7 +3949,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$9 = 'tab';
|
var NAME$9 = 'tab';
|
||||||
var VERSION$9 = '4.2.1';
|
var VERSION$9 = '4.3.1';
|
||||||
var DATA_KEY$9 = 'bs.tab';
|
var DATA_KEY$9 = 'bs.tab';
|
||||||
var EVENT_KEY$9 = "." + DATA_KEY$9;
|
var EVENT_KEY$9 = "." + DATA_KEY$9;
|
||||||
var DATA_API_KEY$7 = '.data-api';
|
var DATA_API_KEY$7 = '.data-api';
|
||||||
@@ -3879,8 +4057,8 @@
|
|||||||
_proto.dispose = function dispose() {
|
_proto.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY$9);
|
$.removeData(this._element, DATA_KEY$9);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._activate = function _activate(element, container, callback) {
|
_proto._activate = function _activate(element, container, callback) {
|
||||||
var _this2 = this;
|
var _this2 = this;
|
||||||
@@ -3922,7 +4100,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
Util.reflow(element);
|
Util.reflow(element);
|
||||||
$(element).addClass(ClassName$9.SHOW);
|
|
||||||
|
if (element.classList.contains(ClassName$9.FADE)) {
|
||||||
|
element.classList.add(ClassName$9.SHOW);
|
||||||
|
}
|
||||||
|
|
||||||
if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) {
|
if (element.parentNode && $(element.parentNode).hasClass(ClassName$9.DROPDOWN_MENU)) {
|
||||||
var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0];
|
var dropdownElement = $(element).closest(Selector$9.DROPDOWN)[0];
|
||||||
@@ -3938,8 +4119,8 @@
|
|||||||
if (callback) {
|
if (callback) {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Tab._jQueryInterface = function _jQueryInterface(config) {
|
Tab._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -4003,7 +4184,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var NAME$a = 'toast';
|
var NAME$a = 'toast';
|
||||||
var VERSION$a = '4.2.1';
|
var VERSION$a = '4.3.1';
|
||||||
var DATA_KEY$a = 'bs.toast';
|
var DATA_KEY$a = 'bs.toast';
|
||||||
var EVENT_KEY$a = "." + DATA_KEY$a;
|
var EVENT_KEY$a = "." + DATA_KEY$a;
|
||||||
var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
|
var JQUERY_NO_CONFLICT$a = $.fn[NAME$a];
|
||||||
@@ -4118,8 +4299,8 @@
|
|||||||
$.removeData(this._element, DATA_KEY$a);
|
$.removeData(this._element, DATA_KEY$a);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
this._config = null;
|
this._config = null;
|
||||||
}; // Private
|
} // Private
|
||||||
|
;
|
||||||
|
|
||||||
_proto._getConfig = function _getConfig(config) {
|
_proto._getConfig = function _getConfig(config) {
|
||||||
config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
|
config = _objectSpread({}, Default$7, $(this._element).data(), typeof config === 'object' && config ? config : {});
|
||||||
@@ -4152,8 +4333,8 @@
|
|||||||
} else {
|
} else {
|
||||||
complete();
|
complete();
|
||||||
}
|
}
|
||||||
}; // Static
|
} // Static
|
||||||
|
;
|
||||||
|
|
||||||
Toast._jQueryInterface = function _jQueryInterface(config) {
|
Toast._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
@@ -4187,6 +4368,11 @@
|
|||||||
get: function get() {
|
get: function get() {
|
||||||
return DefaultType$7;
|
return DefaultType$7;
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: "Default",
|
||||||
|
get: function get() {
|
||||||
|
return Default$7;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return Toast;
|
return Toast;
|
||||||
@@ -4208,7 +4394,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.2.1): index.js
|
* Bootstrap (v4.3.1): index.js
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@@ -4245,5 +4431,5 @@
|
|||||||
|
|
||||||
Object.defineProperty(exports, '__esModule', { value: true });
|
Object.defineProperty(exports, '__esModule', { value: true });
|
||||||
|
|
||||||
})));
|
}));
|
||||||
//# sourceMappingURL=bootstrap.js.map
|
//# sourceMappingURL=bootstrap.js.map
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+3
-3
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+2
-1
@@ -6,13 +6,14 @@
|
|||||||
.badge {
|
.badge {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: $badge-padding-y $badge-padding-x;
|
padding: $badge-padding-y $badge-padding-x;
|
||||||
font-size: $badge-font-size;
|
@include font-size($badge-font-size);
|
||||||
font-weight: $badge-font-weight;
|
font-weight: $badge-font-weight;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
vertical-align: baseline;
|
vertical-align: baseline;
|
||||||
@include border-radius($badge-border-radius);
|
@include border-radius($badge-border-radius);
|
||||||
|
@include transition($badge-transition);
|
||||||
|
|
||||||
@at-root a#{&} {
|
@at-root a#{&} {
|
||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
|
|||||||
Vendored
+2
-5
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
font-family: $btn-font-family;
|
||||||
font-weight: $btn-font-weight;
|
font-weight: $btn-font-weight;
|
||||||
color: $body-color;
|
color: $body-color;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -34,11 +35,6 @@
|
|||||||
@include box-shadow(none);
|
@include box-shadow(none);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Opinionated: add "hand" cursor to non-disabled .btn elements
|
|
||||||
&:not(:disabled):not(.disabled) {
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:not(:disabled):not(.disabled):active,
|
&:not(:disabled):not(.disabled):active,
|
||||||
&:not(:disabled):not(.disabled).active {
|
&:not(:disabled):not(.disabled).active {
|
||||||
@include box-shadow($btn-active-box-shadow);
|
@include box-shadow($btn-active-box-shadow);
|
||||||
@@ -81,6 +77,7 @@ fieldset:disabled a.btn {
|
|||||||
.btn-link {
|
.btn-link {
|
||||||
font-weight: $font-weight-normal;
|
font-weight: $font-weight-normal;
|
||||||
color: $link-color;
|
color: $link-color;
|
||||||
|
text-decoration: $link-decoration;
|
||||||
|
|
||||||
@include hover {
|
@include hover {
|
||||||
color: $link-hover-color;
|
color: $link-hover-color;
|
||||||
|
|||||||
Vendored
+13
-34
@@ -6,7 +6,7 @@
|
|||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
min-width: 0;
|
min-width: 0; // See https://github.com/twbs/bootstrap/pull/22740#issuecomment-305868106
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
background-color: $card-bg;
|
background-color: $card-bg;
|
||||||
background-clip: border-box;
|
background-clip: border-box;
|
||||||
@@ -36,6 +36,7 @@
|
|||||||
// as much space as possible, ensuring footers are aligned to the bottom.
|
// as much space as possible, ensuring footers are aligned to the bottom.
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
padding: $card-spacer-x;
|
padding: $card-spacer-x;
|
||||||
|
color: $card-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-title {
|
.card-title {
|
||||||
@@ -195,55 +196,35 @@
|
|||||||
|
|
||||||
// Handle rounded corners
|
// Handle rounded corners
|
||||||
@if $enable-rounded {
|
@if $enable-rounded {
|
||||||
&:first-child {
|
&:not(:last-child) {
|
||||||
@include border-right-radius(0);
|
@include border-right-radius(0);
|
||||||
|
|
||||||
.card-img-top,
|
.card-img-top,
|
||||||
.card-header {
|
.card-header {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
}
|
}
|
||||||
.card-img-bottom,
|
.card-img-bottom,
|
||||||
.card-footer {
|
.card-footer {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-bottom-right-radius: 0;
|
border-bottom-right-radius: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:last-child {
|
&:not(:first-child) {
|
||||||
@include border-left-radius(0);
|
@include border-left-radius(0);
|
||||||
|
|
||||||
.card-img-top,
|
.card-img-top,
|
||||||
.card-header {
|
.card-header {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
}
|
}
|
||||||
.card-img-bottom,
|
.card-img-bottom,
|
||||||
.card-footer {
|
.card-footer {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:only-child {
|
|
||||||
@include border-radius($card-border-radius);
|
|
||||||
|
|
||||||
.card-img-top,
|
|
||||||
.card-header {
|
|
||||||
@include border-top-radius($card-border-radius);
|
|
||||||
}
|
|
||||||
.card-img-bottom,
|
|
||||||
.card-footer {
|
|
||||||
@include border-bottom-radius($card-border-radius);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&:not(:first-child):not(:last-child):not(:only-child) {
|
|
||||||
@include border-radius(0);
|
|
||||||
|
|
||||||
.card-img-top,
|
|
||||||
.card-img-bottom,
|
|
||||||
.card-header,
|
|
||||||
.card-footer {
|
|
||||||
@include border-radius(0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -278,29 +259,27 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
.accordion {
|
.accordion {
|
||||||
.card {
|
> .card {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
&:not(:first-of-type) {
|
&:not(:first-of-type) {
|
||||||
.card-header:first-child {
|
.card-header:first-child {
|
||||||
border-radius: 0;
|
@include border-radius(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
&:not(:last-of-type) {
|
&:not(:last-of-type) {
|
||||||
border-bottom: 0;
|
border-bottom: 0;
|
||||||
border-radius: 0;
|
@include border-radius(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:first-of-type {
|
&:first-of-type {
|
||||||
border-bottom: 0;
|
border-bottom: 0;
|
||||||
border-bottom-right-radius: 0;
|
@include border-bottom-radius(0);
|
||||||
border-bottom-left-radius: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&:last-of-type {
|
&:last-of-type {
|
||||||
border-top-left-radius: 0;
|
@include border-top-radius(0);
|
||||||
border-top-right-radius: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-header {
|
.card-header {
|
||||||
|
|||||||
Vendored
+1
-2
@@ -127,8 +127,7 @@
|
|||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: $carousel-control-icon-width;
|
width: $carousel-control-icon-width;
|
||||||
height: $carousel-control-icon-width;
|
height: $carousel-control-icon-width;
|
||||||
background: transparent no-repeat center center;
|
background: no-repeat 50% / 100% 100%;
|
||||||
background-size: 100% 100%;
|
|
||||||
}
|
}
|
||||||
.carousel-control-prev-icon {
|
.carousel-control-prev-icon {
|
||||||
background-image: $carousel-control-prev-icon-bg;
|
background-image: $carousel-control-prev-icon-bg;
|
||||||
|
|||||||
Vendored
+1
-4
@@ -1,6 +1,6 @@
|
|||||||
.close {
|
.close {
|
||||||
float: right;
|
float: right;
|
||||||
font-size: $close-font-size;
|
@include font-size($close-font-size);
|
||||||
font-weight: $close-font-weight;
|
font-weight: $close-font-weight;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
color: $close-color;
|
color: $close-color;
|
||||||
@@ -17,9 +17,6 @@
|
|||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
opacity: .75;
|
opacity: .75;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Opinionated: add "hand" cursor to non-disabled .close elements
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Vendored
+5
-5
@@ -1,6 +1,6 @@
|
|||||||
// Inline code
|
// Inline code
|
||||||
code {
|
code {
|
||||||
font-size: $code-font-size;
|
@include font-size($code-font-size);
|
||||||
color: $code-color;
|
color: $code-color;
|
||||||
word-break: break-word;
|
word-break: break-word;
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@ code {
|
|||||||
// User input typically entered via keyboard
|
// User input typically entered via keyboard
|
||||||
kbd {
|
kbd {
|
||||||
padding: $kbd-padding-y $kbd-padding-x;
|
padding: $kbd-padding-y $kbd-padding-x;
|
||||||
font-size: $kbd-font-size;
|
@include font-size($kbd-font-size);
|
||||||
color: $kbd-color;
|
color: $kbd-color;
|
||||||
background-color: $kbd-bg;
|
background-color: $kbd-bg;
|
||||||
@include border-radius($border-radius-sm);
|
@include border-radius($border-radius-sm);
|
||||||
@@ -21,7 +21,7 @@ kbd {
|
|||||||
|
|
||||||
kbd {
|
kbd {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
font-size: 100%;
|
@include font-size(100%);
|
||||||
font-weight: $nested-kbd-font-weight;
|
font-weight: $nested-kbd-font-weight;
|
||||||
@include box-shadow(none);
|
@include box-shadow(none);
|
||||||
}
|
}
|
||||||
@@ -30,12 +30,12 @@ kbd {
|
|||||||
// Blocks of code
|
// Blocks of code
|
||||||
pre {
|
pre {
|
||||||
display: block;
|
display: block;
|
||||||
font-size: $code-font-size;
|
@include font-size($code-font-size);
|
||||||
color: $pre-color;
|
color: $pre-color;
|
||||||
|
|
||||||
// Account for some code outputs that place code tags in pre tags
|
// Account for some code outputs that place code tags in pre tags
|
||||||
code {
|
code {
|
||||||
font-size: inherit;
|
@include font-size(inherit);
|
||||||
color: inherit;
|
color: inherit;
|
||||||
word-break: normal;
|
word-break: normal;
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-11
@@ -95,9 +95,7 @@
|
|||||||
width: $custom-control-indicator-size;
|
width: $custom-control-indicator-size;
|
||||||
height: $custom-control-indicator-size;
|
height: $custom-control-indicator-size;
|
||||||
content: "";
|
content: "";
|
||||||
background-repeat: no-repeat;
|
background: no-repeat 50% / #{$custom-control-indicator-bg-size};
|
||||||
background-position: center center;
|
|
||||||
background-size: $custom-control-indicator-bg-size;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -144,6 +142,7 @@
|
|||||||
|
|
||||||
.custom-radio {
|
.custom-radio {
|
||||||
.custom-control-label::before {
|
.custom-control-label::before {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: $custom-radio-indicator-border-radius;
|
border-radius: $custom-radio-indicator-border-radius;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -173,6 +172,7 @@
|
|||||||
left: -($custom-switch-width + $custom-control-gutter);
|
left: -($custom-switch-width + $custom-control-gutter);
|
||||||
width: $custom-switch-width;
|
width: $custom-switch-width;
|
||||||
pointer-events: all;
|
pointer-events: all;
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: $custom-switch-indicator-border-radius;
|
border-radius: $custom-switch-indicator-border-radius;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -182,6 +182,7 @@
|
|||||||
width: $custom-switch-indicator-size;
|
width: $custom-switch-indicator-size;
|
||||||
height: $custom-switch-indicator-size;
|
height: $custom-switch-indicator-size;
|
||||||
background-color: $custom-control-indicator-border-color;
|
background-color: $custom-control-indicator-border-color;
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: $custom-switch-indicator-border-radius;
|
border-radius: $custom-switch-indicator-border-radius;
|
||||||
@include transition(transform .15s ease-in-out, $custom-forms-transition);
|
@include transition(transform .15s ease-in-out, $custom-forms-transition);
|
||||||
}
|
}
|
||||||
@@ -213,6 +214,8 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: $custom-select-height;
|
height: $custom-select-height;
|
||||||
padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
|
padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
|
||||||
|
font-family: $custom-select-font-family;
|
||||||
|
@include font-size($custom-select-font-size);
|
||||||
font-weight: $custom-select-font-weight;
|
font-weight: $custom-select-font-weight;
|
||||||
line-height: $custom-select-line-height;
|
line-height: $custom-select-line-height;
|
||||||
color: $custom-select-color;
|
color: $custom-select-color;
|
||||||
@@ -220,11 +223,7 @@
|
|||||||
background: $custom-select-background;
|
background: $custom-select-background;
|
||||||
background-color: $custom-select-bg;
|
background-color: $custom-select-bg;
|
||||||
border: $custom-select-border-width solid $custom-select-border-color;
|
border: $custom-select-border-width solid $custom-select-border-color;
|
||||||
@if $enable-rounded {
|
@include border-radius($custom-select-border-radius, 0);
|
||||||
border-radius: $custom-select-border-radius;
|
|
||||||
} @else {
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
@include box-shadow($custom-select-box-shadow);
|
@include box-shadow($custom-select-box-shadow);
|
||||||
appearance: none;
|
appearance: none;
|
||||||
|
|
||||||
@@ -262,7 +261,7 @@
|
|||||||
|
|
||||||
// Hides the default caret in IE11
|
// Hides the default caret in IE11
|
||||||
&::-ms-expand {
|
&::-ms-expand {
|
||||||
opacity: 0;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -271,7 +270,7 @@
|
|||||||
padding-top: $custom-select-padding-y-sm;
|
padding-top: $custom-select-padding-y-sm;
|
||||||
padding-bottom: $custom-select-padding-y-sm;
|
padding-bottom: $custom-select-padding-y-sm;
|
||||||
padding-left: $custom-select-padding-x-sm;
|
padding-left: $custom-select-padding-x-sm;
|
||||||
font-size: $custom-select-font-size-sm;
|
@include font-size($custom-select-font-size-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.custom-select-lg {
|
.custom-select-lg {
|
||||||
@@ -279,7 +278,7 @@
|
|||||||
padding-top: $custom-select-padding-y-lg;
|
padding-top: $custom-select-padding-y-lg;
|
||||||
padding-bottom: $custom-select-padding-y-lg;
|
padding-bottom: $custom-select-padding-y-lg;
|
||||||
padding-left: $custom-select-padding-x-lg;
|
padding-left: $custom-select-padding-x-lg;
|
||||||
font-size: $custom-select-font-size-lg;
|
@include font-size($custom-select-font-size-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -331,6 +330,7 @@
|
|||||||
z-index: 1;
|
z-index: 1;
|
||||||
height: $custom-file-height;
|
height: $custom-file-height;
|
||||||
padding: $custom-file-padding-y $custom-file-padding-x;
|
padding: $custom-file-padding-y $custom-file-padding-x;
|
||||||
|
font-family: $custom-file-font-family;
|
||||||
font-weight: $custom-file-font-weight;
|
font-weight: $custom-file-font-weight;
|
||||||
line-height: $custom-file-line-height;
|
line-height: $custom-file-line-height;
|
||||||
color: $custom-file-color;
|
color: $custom-file-color;
|
||||||
|
|||||||
Vendored
+15
-15
@@ -7,6 +7,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-toggle {
|
.dropdown-toggle {
|
||||||
|
white-space: nowrap;
|
||||||
|
|
||||||
// Generate the caret automatically
|
// Generate the caret automatically
|
||||||
@include caret;
|
@include caret;
|
||||||
}
|
}
|
||||||
@@ -22,8 +24,8 @@
|
|||||||
min-width: $dropdown-min-width;
|
min-width: $dropdown-min-width;
|
||||||
padding: $dropdown-padding-y 0;
|
padding: $dropdown-padding-y 0;
|
||||||
margin: $dropdown-spacer 0 0; // override default ul
|
margin: $dropdown-spacer 0 0; // override default ul
|
||||||
font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues
|
@include font-size($dropdown-font-size);
|
||||||
color: $body-color;
|
color: $dropdown-color;
|
||||||
text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)
|
text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)
|
||||||
list-style: none;
|
list-style: none;
|
||||||
background-color: $dropdown-bg;
|
background-color: $dropdown-bg;
|
||||||
@@ -33,17 +35,6 @@
|
|||||||
@include box-shadow($dropdown-box-shadow);
|
@include box-shadow($dropdown-box-shadow);
|
||||||
}
|
}
|
||||||
|
|
||||||
@each $breakpoint in map-keys($grid-breakpoints) {
|
|
||||||
@include media-breakpoint-up($breakpoint) {
|
|
||||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
|
||||||
|
|
||||||
.dropdown-menu#{$infix}-right {
|
|
||||||
right: 0;
|
|
||||||
left: auto;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@each $breakpoint in map-keys($grid-breakpoints) {
|
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||||
@include media-breakpoint-up($breakpoint) {
|
@include media-breakpoint-up($breakpoint) {
|
||||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||||
@@ -52,6 +43,11 @@
|
|||||||
right: auto;
|
right: auto;
|
||||||
left: 0;
|
left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dropdown-menu#{$infix}-right {
|
||||||
|
right: 0;
|
||||||
|
left: auto;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,7 +114,7 @@
|
|||||||
|
|
||||||
// Dividers (basically an `<hr>`) within the dropdown
|
// Dividers (basically an `<hr>`) within the dropdown
|
||||||
.dropdown-divider {
|
.dropdown-divider {
|
||||||
@include nav-divider($dropdown-divider-bg);
|
@include nav-divider($dropdown-divider-bg, $dropdown-divider-margin-y);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Links, buttons, and more within the dropdown menu
|
// Links, buttons, and more within the dropdown menu
|
||||||
@@ -136,6 +132,9 @@
|
|||||||
background-color: transparent; // For `<button>`s
|
background-color: transparent; // For `<button>`s
|
||||||
border: 0; // For `<button>`s
|
border: 0; // For `<button>`s
|
||||||
|
|
||||||
|
// Prevent dropdown overflow if there's no padding
|
||||||
|
// See https://github.com/twbs/bootstrap/pull/27703
|
||||||
|
@if $dropdown-padding-y == 0 {
|
||||||
&:first-child {
|
&:first-child {
|
||||||
@include border-top-radius($dropdown-inner-border-radius);
|
@include border-top-radius($dropdown-inner-border-radius);
|
||||||
}
|
}
|
||||||
@@ -143,6 +142,7 @@
|
|||||||
&:last-child {
|
&:last-child {
|
||||||
@include border-bottom-radius($dropdown-inner-border-radius);
|
@include border-bottom-radius($dropdown-inner-border-radius);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
color: $dropdown-link-hover-color;
|
color: $dropdown-link-hover-color;
|
||||||
@@ -178,7 +178,7 @@
|
|||||||
display: block;
|
display: block;
|
||||||
padding: $dropdown-padding-y $dropdown-item-padding-x;
|
padding: $dropdown-padding-y $dropdown-item-padding-x;
|
||||||
margin-bottom: 0; // for use with heading elements
|
margin-bottom: 0; // for use with heading elements
|
||||||
font-size: $font-size-sm;
|
@include font-size($font-size-sm);
|
||||||
color: $dropdown-header-color;
|
color: $dropdown-header-color;
|
||||||
white-space: nowrap; // as with > li > a
|
white-space: nowrap; // as with > li > a
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+12
-16
@@ -9,7 +9,8 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: $input-height;
|
height: $input-height;
|
||||||
padding: $input-padding-y $input-padding-x;
|
padding: $input-padding-y $input-padding-x;
|
||||||
font-size: $input-font-size;
|
font-family: $input-font-family;
|
||||||
|
@include font-size($input-font-size);
|
||||||
font-weight: $input-font-weight;
|
font-weight: $input-font-weight;
|
||||||
line-height: $input-line-height;
|
line-height: $input-line-height;
|
||||||
color: $input-color;
|
color: $input-color;
|
||||||
@@ -18,13 +19,7 @@
|
|||||||
border: $input-border-width solid $input-border-color;
|
border: $input-border-width solid $input-border-color;
|
||||||
|
|
||||||
// Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
|
// Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
|
||||||
@if $enable-rounded {
|
@include border-radius($input-border-radius, 0);
|
||||||
// Manually use the if/else instead of the mixin to account for iOS override
|
|
||||||
border-radius: $input-border-radius;
|
|
||||||
} @else {
|
|
||||||
// Otherwise undo the iOS default
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@include box-shadow($input-box-shadow);
|
@include box-shadow($input-box-shadow);
|
||||||
@include transition($input-transition);
|
@include transition($input-transition);
|
||||||
@@ -88,21 +83,21 @@ select.form-control {
|
|||||||
padding-top: calc(#{$input-padding-y} + #{$input-border-width});
|
padding-top: calc(#{$input-padding-y} + #{$input-border-width});
|
||||||
padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});
|
padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});
|
||||||
margin-bottom: 0; // Override the `<label>/<legend>` default
|
margin-bottom: 0; // Override the `<label>/<legend>` default
|
||||||
font-size: inherit; // Override the `<legend>` default
|
@include font-size(inherit); // Override the `<legend>` default
|
||||||
line-height: $input-line-height;
|
line-height: $input-line-height;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-form-label-lg {
|
.col-form-label-lg {
|
||||||
padding-top: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
padding-top: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
||||||
padding-bottom: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
padding-bottom: calc(#{$input-padding-y-lg} + #{$input-border-width});
|
||||||
font-size: $input-font-size-lg;
|
@include font-size($input-font-size-lg);
|
||||||
line-height: $input-line-height-lg;
|
line-height: $input-line-height-lg;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-form-label-sm {
|
.col-form-label-sm {
|
||||||
padding-top: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
padding-top: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
||||||
padding-bottom: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
padding-bottom: calc(#{$input-padding-y-sm} + #{$input-border-width});
|
||||||
font-size: $input-font-size-sm;
|
@include font-size($input-font-size-sm);
|
||||||
line-height: $input-line-height-sm;
|
line-height: $input-line-height-sm;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -142,7 +137,7 @@ select.form-control {
|
|||||||
.form-control-sm {
|
.form-control-sm {
|
||||||
height: $input-height-sm;
|
height: $input-height-sm;
|
||||||
padding: $input-padding-y-sm $input-padding-x-sm;
|
padding: $input-padding-y-sm $input-padding-x-sm;
|
||||||
font-size: $input-font-size-sm;
|
@include font-size($input-font-size-sm);
|
||||||
line-height: $input-line-height-sm;
|
line-height: $input-line-height-sm;
|
||||||
@include border-radius($input-border-radius-sm);
|
@include border-radius($input-border-radius-sm);
|
||||||
}
|
}
|
||||||
@@ -150,7 +145,7 @@ select.form-control {
|
|||||||
.form-control-lg {
|
.form-control-lg {
|
||||||
height: $input-height-lg;
|
height: $input-height-lg;
|
||||||
padding: $input-padding-y-lg $input-padding-x-lg;
|
padding: $input-padding-y-lg $input-padding-x-lg;
|
||||||
font-size: $input-font-size-lg;
|
@include font-size($input-font-size-lg);
|
||||||
line-height: $input-line-height-lg;
|
line-height: $input-line-height-lg;
|
||||||
@include border-radius($input-border-radius-lg);
|
@include border-radius($input-border-radius-lg);
|
||||||
}
|
}
|
||||||
@@ -163,7 +158,6 @@ select.form-control {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// stylelint-disable-next-line no-duplicate-selectors
|
|
||||||
textarea.form-control {
|
textarea.form-control {
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
@@ -248,8 +242,9 @@ textarea.form-control {
|
|||||||
// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
|
// pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for
|
||||||
// server side validation.
|
// server side validation.
|
||||||
|
|
||||||
@include form-validation-state("valid", $form-feedback-valid-color);
|
@each $state, $data in $form-validation-states {
|
||||||
@include form-validation-state("invalid", $form-feedback-invalid-color);
|
@include form-validation-state($state, map-get($data, color), map-get($data, icon));
|
||||||
|
}
|
||||||
|
|
||||||
// Inline forms
|
// Inline forms
|
||||||
//
|
//
|
||||||
@@ -318,6 +313,7 @@ textarea.form-control {
|
|||||||
}
|
}
|
||||||
.form-check-input {
|
.form-check-input {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
flex-shrink: 0;
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-right: $form-check-input-margin-x;
|
margin-right: $form-check-input-margin-x;
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
|
|||||||
+3
-3
@@ -21,12 +21,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Starts at zero
|
// Starts at zero
|
||||||
// Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.
|
// Used to ensure the min-width of the lowest breakpoint starts at 0.
|
||||||
@mixin _assert-starts-at-zero($map) {
|
@mixin _assert-starts-at-zero($map, $map-name: "$grid-breakpoints") {
|
||||||
$values: map-values($map);
|
$values: map-values($map);
|
||||||
$first-value: nth($values, 1);
|
$first-value: nth($values, 1);
|
||||||
@if $first-value != 0 {
|
@if $first-value != 0 {
|
||||||
@warn "First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.";
|
@warn "First breakpoint in #{$map-name} must start at 0, but starts at #{$first-value}.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -37,6 +37,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.figure-caption {
|
.figure-caption {
|
||||||
font-size: $figure-caption-font-size;
|
@include font-size($figure-caption-font-size);
|
||||||
color: $figure-caption-color;
|
color: $figure-caption-color;
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -104,7 +104,7 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
padding: $input-padding-y $input-padding-x;
|
padding: $input-padding-y $input-padding-x;
|
||||||
margin-bottom: 0; // Allow use of <label> elements by overriding our default margin-bottom
|
margin-bottom: 0; // Allow use of <label> elements by overriding our default margin-bottom
|
||||||
font-size: $font-size-base; // Match inputs
|
@include font-size($input-font-size); // Match inputs
|
||||||
font-weight: $font-weight-normal;
|
font-weight: $font-weight-normal;
|
||||||
line-height: $input-line-height;
|
line-height: $input-line-height;
|
||||||
color: $input-group-addon-color;
|
color: $input-group-addon-color;
|
||||||
@@ -139,7 +139,7 @@
|
|||||||
.input-group-lg > .input-group-prepend > .btn,
|
.input-group-lg > .input-group-prepend > .btn,
|
||||||
.input-group-lg > .input-group-append > .btn {
|
.input-group-lg > .input-group-append > .btn {
|
||||||
padding: $input-padding-y-lg $input-padding-x-lg;
|
padding: $input-padding-y-lg $input-padding-x-lg;
|
||||||
font-size: $input-font-size-lg;
|
@include font-size($input-font-size-lg);
|
||||||
line-height: $input-line-height-lg;
|
line-height: $input-line-height-lg;
|
||||||
@include border-radius($input-border-radius-lg);
|
@include border-radius($input-border-radius-lg);
|
||||||
}
|
}
|
||||||
@@ -156,7 +156,7 @@
|
|||||||
.input-group-sm > .input-group-prepend > .btn,
|
.input-group-sm > .input-group-prepend > .btn,
|
||||||
.input-group-sm > .input-group-append > .btn {
|
.input-group-sm > .input-group-append > .btn {
|
||||||
padding: $input-padding-y-sm $input-padding-x-sm;
|
padding: $input-padding-y-sm $input-padding-x-sm;
|
||||||
font-size: $input-font-size-sm;
|
@include font-size($input-font-size-sm);
|
||||||
line-height: $input-line-height-sm;
|
line-height: $input-line-height-sm;
|
||||||
@include border-radius($input-border-radius-sm);
|
@include border-radius($input-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|||||||
+1
@@ -1,6 +1,7 @@
|
|||||||
.jumbotron {
|
.jumbotron {
|
||||||
padding: $jumbotron-padding ($jumbotron-padding / 2);
|
padding: $jumbotron-padding ($jumbotron-padding / 2);
|
||||||
margin-bottom: $jumbotron-padding;
|
margin-bottom: $jumbotron-padding;
|
||||||
|
color: $jumbotron-color;
|
||||||
background-color: $jumbotron-bg;
|
background-color: $jumbotron-bg;
|
||||||
@include border-radius($border-radius-lg);
|
@include border-radius($border-radius-lg);
|
||||||
|
|
||||||
|
|||||||
+33
-5
@@ -24,6 +24,7 @@
|
|||||||
|
|
||||||
// Hover state
|
// Hover state
|
||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
|
z-index: 1; // Place hover/focus items above their siblings for proper border styling
|
||||||
color: $list-group-action-hover-color;
|
color: $list-group-action-hover-color;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
background-color: $list-group-hover-bg;
|
background-color: $list-group-hover-bg;
|
||||||
@@ -46,6 +47,7 @@
|
|||||||
padding: $list-group-item-padding-y $list-group-item-padding-x;
|
padding: $list-group-item-padding-y $list-group-item-padding-x;
|
||||||
// Place the border on the list items and negative margin up for better styling
|
// Place the border on the list items and negative margin up for better styling
|
||||||
margin-bottom: -$list-group-border-width;
|
margin-bottom: -$list-group-border-width;
|
||||||
|
color: $list-group-color;
|
||||||
background-color: $list-group-bg;
|
background-color: $list-group-bg;
|
||||||
border: $list-group-border-width solid $list-group-border-color;
|
border: $list-group-border-width solid $list-group-border-color;
|
||||||
|
|
||||||
@@ -58,11 +60,6 @@
|
|||||||
@include border-bottom-radius($list-group-border-radius);
|
@include border-bottom-radius($list-group-border-radius);
|
||||||
}
|
}
|
||||||
|
|
||||||
@include hover-focus {
|
|
||||||
z-index: 1; // Place hover/active items above their siblings for proper border styling
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.disabled,
|
&.disabled,
|
||||||
&:disabled {
|
&:disabled {
|
||||||
color: $list-group-disabled-color;
|
color: $list-group-disabled-color;
|
||||||
@@ -80,6 +77,37 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Horizontal
|
||||||
|
//
|
||||||
|
// Change the layout of list group items from vertical (default) to horizontal.
|
||||||
|
|
||||||
|
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||||
|
@include media-breakpoint-up($breakpoint) {
|
||||||
|
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||||
|
|
||||||
|
.list-group-horizontal#{$infix} {
|
||||||
|
flex-direction: row;
|
||||||
|
|
||||||
|
.list-group-item {
|
||||||
|
margin-right: -$list-group-border-width;
|
||||||
|
margin-bottom: 0;
|
||||||
|
|
||||||
|
&:first-child {
|
||||||
|
@include border-left-radius($list-group-border-radius);
|
||||||
|
@include border-top-right-radius(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
@include border-right-radius($list-group-border-radius);
|
||||||
|
@include border-bottom-left-radius(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Flush list items
|
// Flush list items
|
||||||
//
|
//
|
||||||
// Remove borders and border-radius to keep list group items edge-to-edge. Most
|
// Remove borders and border-radius to keep list group items edge-to-edge. Most
|
||||||
|
|||||||
Vendored
+6
@@ -2,6 +2,12 @@
|
|||||||
//
|
//
|
||||||
// Used in conjunction with global variables to enable certain theme features.
|
// Used in conjunction with global variables to enable certain theme features.
|
||||||
|
|
||||||
|
// Vendor
|
||||||
|
@import "vendor/rfs";
|
||||||
|
|
||||||
|
// Deprecate
|
||||||
|
@import "mixins/deprecate";
|
||||||
|
|
||||||
// Utilities
|
// Utilities
|
||||||
@import "mixins/breakpoints";
|
@import "mixins/breakpoints";
|
||||||
@import "mixins/hover";
|
@import "mixins/hover";
|
||||||
|
|||||||
Vendored
+47
-4
@@ -50,17 +50,51 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.modal-dialog-scrollable {
|
||||||
|
display: flex; // IE10/11
|
||||||
|
max-height: calc(100% - #{$modal-dialog-margin * 2});
|
||||||
|
|
||||||
|
.modal-content {
|
||||||
|
max-height: calc(100vh - #{$modal-dialog-margin * 2}); // IE10/11
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-header,
|
||||||
|
.modal-footer {
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-body {
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.modal-dialog-centered {
|
.modal-dialog-centered {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
min-height: calc(100% - (#{$modal-dialog-margin} * 2));
|
min-height: calc(100% - #{$modal-dialog-margin * 2});
|
||||||
|
|
||||||
// Ensure `modal-dialog-centered` extends the full height of the view (IE10/11)
|
// Ensure `modal-dialog-centered` extends the full height of the view (IE10/11)
|
||||||
&::before {
|
&::before {
|
||||||
display: block; // IE10
|
display: block; // IE10
|
||||||
height: calc(100vh - (#{$modal-dialog-margin} * 2));
|
height: calc(100vh - #{$modal-dialog-margin * 2});
|
||||||
content: "";
|
content: "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Ensure `.modal-body` shows scrollbar (IE10/11)
|
||||||
|
&.modal-dialog-scrollable {
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
.modal-content {
|
||||||
|
max-height: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Actual modal
|
// Actual modal
|
||||||
@@ -70,6 +104,7 @@
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`
|
width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`
|
||||||
// counteract the pointer-events: none; in the .modal-dialog
|
// counteract the pointer-events: none; in the .modal-dialog
|
||||||
|
color: $modal-content-color;
|
||||||
pointer-events: auto;
|
pointer-events: auto;
|
||||||
background-color: $modal-content-bg;
|
background-color: $modal-content-bg;
|
||||||
background-clip: padding-box;
|
background-clip: padding-box;
|
||||||
@@ -159,11 +194,19 @@
|
|||||||
margin: $modal-dialog-margin-y-sm-up auto;
|
margin: $modal-dialog-margin-y-sm-up auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.modal-dialog-scrollable {
|
||||||
|
max-height: calc(100% - #{$modal-dialog-margin-y-sm-up * 2});
|
||||||
|
|
||||||
|
.modal-content {
|
||||||
|
max-height: calc(100vh - #{$modal-dialog-margin-y-sm-up * 2});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.modal-dialog-centered {
|
.modal-dialog-centered {
|
||||||
min-height: calc(100% - (#{$modal-dialog-margin-y-sm-up} * 2));
|
min-height: calc(100% - #{$modal-dialog-margin-y-sm-up * 2});
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
height: calc(100vh - (#{$modal-dialog-margin-y-sm-up} * 2));
|
height: calc(100vh - #{$modal-dialog-margin-y-sm-up * 2});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Vendored
+2
-7
@@ -44,7 +44,7 @@
|
|||||||
padding-top: $navbar-brand-padding-y;
|
padding-top: $navbar-brand-padding-y;
|
||||||
padding-bottom: $navbar-brand-padding-y;
|
padding-bottom: $navbar-brand-padding-y;
|
||||||
margin-right: $navbar-padding-x;
|
margin-right: $navbar-padding-x;
|
||||||
font-size: $navbar-brand-font-size;
|
@include font-size($navbar-brand-font-size);
|
||||||
line-height: inherit;
|
line-height: inherit;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
|
||||||
@@ -107,7 +107,7 @@
|
|||||||
// Button for toggling the navbar when in its collapsed state
|
// Button for toggling the navbar when in its collapsed state
|
||||||
.navbar-toggler {
|
.navbar-toggler {
|
||||||
padding: $navbar-toggler-padding-y $navbar-toggler-padding-x;
|
padding: $navbar-toggler-padding-y $navbar-toggler-padding-x;
|
||||||
font-size: $navbar-toggler-font-size;
|
@include font-size($navbar-toggler-font-size);
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
background-color: transparent; // remove default button style
|
background-color: transparent; // remove default button style
|
||||||
border: $border-width solid transparent; // remove default button style
|
border: $border-width solid transparent; // remove default button style
|
||||||
@@ -116,11 +116,6 @@
|
|||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Opinionated: add "hand" cursor to non-disabled .navbar-toggler elements
|
|
||||||
&:not(:disabled):not(.disabled) {
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Keep as a separate element so folks can easily override it with another icon
|
// Keep as a separate element so folks can easily override it with another icon
|
||||||
|
|||||||
-5
@@ -27,11 +27,6 @@
|
|||||||
outline: $pagination-focus-outline;
|
outline: $pagination-focus-outline;
|
||||||
box-shadow: $pagination-focus-box-shadow;
|
box-shadow: $pagination-focus-box-shadow;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Opinionated: add "hand" cursor to non-disabled .page-link elements
|
|
||||||
&:not(:disabled):not(.disabled) {
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-item {
|
.page-item {
|
||||||
|
|||||||
Vendored
+26
-38
@@ -8,7 +8,7 @@
|
|||||||
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
||||||
// So reset our font and text properties to avoid inheriting weird values.
|
// So reset our font and text properties to avoid inheriting weird values.
|
||||||
@include reset-text();
|
@include reset-text();
|
||||||
font-size: $popover-font-size;
|
@include font-size($popover-font-size);
|
||||||
// Allow breaking very long words so they don't overflow the popover's bounds
|
// Allow breaking very long words so they don't overflow the popover's bounds
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
background-color: $popover-bg;
|
background-color: $popover-bg;
|
||||||
@@ -38,73 +38,64 @@
|
|||||||
.bs-popover-top {
|
.bs-popover-top {
|
||||||
margin-bottom: $popover-arrow-height;
|
margin-bottom: $popover-arrow-height;
|
||||||
|
|
||||||
.arrow {
|
> .arrow {
|
||||||
bottom: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
bottom: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before,
|
&::before {
|
||||||
.arrow::after {
|
|
||||||
border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before {
|
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
|
||||||
border-top-color: $popover-arrow-outer-color;
|
border-top-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow::after {
|
&::after {
|
||||||
bottom: $popover-border-width;
|
bottom: $popover-border-width;
|
||||||
|
border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
|
||||||
border-top-color: $popover-arrow-color;
|
border-top-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.bs-popover-right {
|
.bs-popover-right {
|
||||||
margin-left: $popover-arrow-height;
|
margin-left: $popover-arrow-height;
|
||||||
|
|
||||||
.arrow {
|
> .arrow {
|
||||||
left: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
left: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
||||||
width: $popover-arrow-height;
|
width: $popover-arrow-height;
|
||||||
height: $popover-arrow-width;
|
height: $popover-arrow-width;
|
||||||
margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
|
margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before,
|
&::before {
|
||||||
.arrow::after {
|
|
||||||
border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before {
|
|
||||||
left: 0;
|
left: 0;
|
||||||
|
border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
|
||||||
border-right-color: $popover-arrow-outer-color;
|
border-right-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow::after {
|
&::after {
|
||||||
left: $popover-border-width;
|
left: $popover-border-width;
|
||||||
|
border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
|
||||||
border-right-color: $popover-arrow-color;
|
border-right-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.bs-popover-bottom {
|
.bs-popover-bottom {
|
||||||
margin-top: $popover-arrow-height;
|
margin-top: $popover-arrow-height;
|
||||||
|
|
||||||
.arrow {
|
> .arrow {
|
||||||
top: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
top: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before,
|
&::before {
|
||||||
.arrow::after {
|
|
||||||
border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before {
|
|
||||||
top: 0;
|
top: 0;
|
||||||
|
border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
|
||||||
border-bottom-color: $popover-arrow-outer-color;
|
border-bottom-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow::after {
|
&::after {
|
||||||
top: $popover-border-width;
|
top: $popover-border-width;
|
||||||
|
border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
|
||||||
border-bottom-color: $popover-arrow-color;
|
border-bottom-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// This will remove the popover-header's border just below the arrow
|
// This will remove the popover-header's border just below the arrow
|
||||||
.popover-header::before {
|
.popover-header::before {
|
||||||
@@ -122,27 +113,24 @@
|
|||||||
.bs-popover-left {
|
.bs-popover-left {
|
||||||
margin-right: $popover-arrow-height;
|
margin-right: $popover-arrow-height;
|
||||||
|
|
||||||
.arrow {
|
> .arrow {
|
||||||
right: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
right: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
|
||||||
width: $popover-arrow-height;
|
width: $popover-arrow-height;
|
||||||
height: $popover-arrow-width;
|
height: $popover-arrow-width;
|
||||||
margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
|
margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before,
|
&::before {
|
||||||
.arrow::after {
|
|
||||||
border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
|
|
||||||
}
|
|
||||||
|
|
||||||
.arrow::before {
|
|
||||||
right: 0;
|
right: 0;
|
||||||
|
border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
|
||||||
border-left-color: $popover-arrow-outer-color;
|
border-left-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.arrow::after {
|
&::after {
|
||||||
right: $popover-border-width;
|
right: $popover-border-width;
|
||||||
|
border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
|
||||||
border-left-color: $popover-arrow-color;
|
border-left-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.bs-popover-auto {
|
.bs-popover-auto {
|
||||||
@@ -165,7 +153,7 @@
|
|||||||
.popover-header {
|
.popover-header {
|
||||||
padding: $popover-header-padding-y $popover-header-padding-x;
|
padding: $popover-header-padding-y $popover-header-padding-x;
|
||||||
margin-bottom: 0; // Reset the default from Reboot
|
margin-bottom: 0; // Reset the default from Reboot
|
||||||
font-size: $font-size-base;
|
@include font-size($font-size-base);
|
||||||
color: $popover-header-color;
|
color: $popover-header-color;
|
||||||
background-color: $popover-header-bg;
|
background-color: $popover-header-bg;
|
||||||
border-bottom: $popover-border-width solid darken($popover-header-bg, 5%);
|
border-bottom: $popover-border-width solid darken($popover-header-bg, 5%);
|
||||||
|
|||||||
Vendored
+12
-3
@@ -1,13 +1,16 @@
|
|||||||
@keyframes progress-bar-stripes {
|
// Disable animation if transitions are disabled
|
||||||
|
@if $enable-transitions {
|
||||||
|
@keyframes progress-bar-stripes {
|
||||||
from { background-position: $progress-height 0; }
|
from { background-position: $progress-height 0; }
|
||||||
to { background-position: 0 0; }
|
to { background-position: 0 0; }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.progress {
|
.progress {
|
||||||
display: flex;
|
display: flex;
|
||||||
height: $progress-height;
|
height: $progress-height;
|
||||||
overflow: hidden; // force rounded corners by cropping it
|
overflow: hidden; // force rounded corners by cropping it
|
||||||
font-size: $progress-font-size;
|
@include font-size($progress-font-size);
|
||||||
background-color: $progress-bg;
|
background-color: $progress-bg;
|
||||||
@include border-radius($progress-border-radius);
|
@include border-radius($progress-border-radius);
|
||||||
@include box-shadow($progress-box-shadow);
|
@include box-shadow($progress-box-shadow);
|
||||||
@@ -29,6 +32,12 @@
|
|||||||
background-size: $progress-height $progress-height;
|
background-size: $progress-height $progress-height;
|
||||||
}
|
}
|
||||||
|
|
||||||
.progress-bar-animated {
|
@if $enable-transitions {
|
||||||
|
.progress-bar-animated {
|
||||||
animation: progress-bar-stripes $progress-bar-animation-timing;
|
animation: progress-bar-stripes $progress-bar-animation-timing;
|
||||||
|
|
||||||
|
@media (prefers-reduced-motion: reduce) {
|
||||||
|
animation: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+28
-7
@@ -46,7 +46,7 @@ article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
|
|||||||
body {
|
body {
|
||||||
margin: 0; // 1
|
margin: 0; // 1
|
||||||
font-family: $font-family-base;
|
font-family: $font-family-base;
|
||||||
font-size: $font-size-base;
|
@include font-size($font-size-base);
|
||||||
font-weight: $font-weight-base;
|
font-weight: $font-weight-base;
|
||||||
line-height: $line-height-base;
|
line-height: $line-height-base;
|
||||||
color: $body-color;
|
color: $body-color;
|
||||||
@@ -155,7 +155,7 @@ strong {
|
|||||||
}
|
}
|
||||||
|
|
||||||
small {
|
small {
|
||||||
font-size: 80%; // Add the correct font size in all browsers
|
@include font-size(80%); // Add the correct font size in all browsers
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -166,7 +166,7 @@ small {
|
|||||||
sub,
|
sub,
|
||||||
sup {
|
sup {
|
||||||
position: relative;
|
position: relative;
|
||||||
font-size: 75%;
|
@include font-size(75%);
|
||||||
line-height: 0;
|
line-height: 0;
|
||||||
vertical-align: baseline;
|
vertical-align: baseline;
|
||||||
}
|
}
|
||||||
@@ -220,7 +220,7 @@ code,
|
|||||||
kbd,
|
kbd,
|
||||||
samp {
|
samp {
|
||||||
font-family: $font-family-monospace;
|
font-family: $font-family-monospace;
|
||||||
font-size: 1em; // Correct the odd `em` font sizing in all browsers.
|
@include font-size(1em); // Correct the odd `em` font sizing in all browsers.
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
@@ -297,6 +297,7 @@ label {
|
|||||||
//
|
//
|
||||||
// Details at https://github.com/twbs/bootstrap/issues/24093
|
// Details at https://github.com/twbs/bootstrap/issues/24093
|
||||||
button {
|
button {
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -316,7 +317,7 @@ optgroup,
|
|||||||
textarea {
|
textarea {
|
||||||
margin: 0; // Remove the margin in Firefox and Safari
|
margin: 0; // Remove the margin in Firefox and Safari
|
||||||
font-family: inherit;
|
font-family: inherit;
|
||||||
font-size: inherit;
|
@include font-size(inherit);
|
||||||
line-height: inherit;
|
line-height: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -330,6 +331,14 @@ select {
|
|||||||
text-transform: none; // Remove the inheritance of text transform in Firefox
|
text-transform: none; // Remove the inheritance of text transform in Firefox
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Remove the inheritance of word-wrap in Safari.
|
||||||
|
//
|
||||||
|
// Details at https://github.com/twbs/bootstrap/issues/24990
|
||||||
|
select {
|
||||||
|
word-wrap: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
||||||
// controls in Android 4.
|
// controls in Android 4.
|
||||||
// 2. Correct the inability to style clickable types in iOS and Safari.
|
// 2. Correct the inability to style clickable types in iOS and Safari.
|
||||||
@@ -340,6 +349,18 @@ button,
|
|||||||
-webkit-appearance: button; // 2
|
-webkit-appearance: button; // 2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Opinionated: add "hand" cursor to non-disabled button elements.
|
||||||
|
@if $enable-pointer-cursor-for-buttons {
|
||||||
|
button,
|
||||||
|
[type="button"],
|
||||||
|
[type="reset"],
|
||||||
|
[type="submit"] {
|
||||||
|
&:not(:disabled) {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
|
// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
|
||||||
button::-moz-focus-inner,
|
button::-moz-focus-inner,
|
||||||
[type="button"]::-moz-focus-inner,
|
[type="button"]::-moz-focus-inner,
|
||||||
@@ -395,7 +416,7 @@ legend {
|
|||||||
max-width: 100%; // 1
|
max-width: 100%; // 1
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin-bottom: .5rem;
|
margin-bottom: .5rem;
|
||||||
font-size: 1.5rem;
|
@include font-size(1.5rem);
|
||||||
line-height: inherit;
|
line-height: inherit;
|
||||||
color: inherit; // 2
|
color: inherit; // 2
|
||||||
white-space: normal; // 1
|
white-space: normal; // 1
|
||||||
@@ -421,7 +442,7 @@ progress {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
|
// Remove the inner padding in Chrome and Safari on macOS.
|
||||||
//
|
//
|
||||||
|
|
||||||
[type="search"]::-webkit-search-decoration {
|
[type="search"]::-webkit-search-decoration {
|
||||||
|
|||||||
Vendored
+2
@@ -13,6 +13,7 @@
|
|||||||
vertical-align: text-bottom;
|
vertical-align: text-bottom;
|
||||||
border: $spinner-border-width solid currentColor;
|
border: $spinner-border-width solid currentColor;
|
||||||
border-right-color: transparent;
|
border-right-color: transparent;
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
animation: spinner-border .75s linear infinite;
|
animation: spinner-border .75s linear infinite;
|
||||||
}
|
}
|
||||||
@@ -42,6 +43,7 @@
|
|||||||
height: $spinner-height;
|
height: $spinner-height;
|
||||||
vertical-align: text-bottom;
|
vertical-align: text-bottom;
|
||||||
background-color: currentColor;
|
background-color: currentColor;
|
||||||
|
// stylelint-disable-next-line property-blacklist
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
animation: spinner-grow .75s linear infinite;
|
animation: spinner-grow .75s linear infinite;
|
||||||
|
|||||||
Vendored
+3
-5
@@ -5,6 +5,7 @@
|
|||||||
.table {
|
.table {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin-bottom: $spacer;
|
margin-bottom: $spacer;
|
||||||
|
color: $table-color;
|
||||||
background-color: $table-bg; // Reset for nesting within parents with `background-color`.
|
background-color: $table-bg; // Reset for nesting within parents with `background-color`.
|
||||||
|
|
||||||
th,
|
th,
|
||||||
@@ -22,10 +23,6 @@
|
|||||||
tbody + tbody {
|
tbody + tbody {
|
||||||
border-top: (2 * $table-border-width) solid $table-border-color;
|
border-top: (2 * $table-border-width) solid $table-border-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
.table {
|
|
||||||
background-color: $body-bg;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -88,6 +85,7 @@
|
|||||||
.table-hover {
|
.table-hover {
|
||||||
tbody tr {
|
tbody tr {
|
||||||
@include hover {
|
@include hover {
|
||||||
|
color: $table-hover-color;
|
||||||
background-color: $table-hover-bg;
|
background-color: $table-hover-bg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -152,6 +150,7 @@
|
|||||||
&.table-hover {
|
&.table-hover {
|
||||||
tbody tr {
|
tbody tr {
|
||||||
@include hover {
|
@include hover {
|
||||||
|
color: $table-dark-hover-color;
|
||||||
background-color: $table-dark-hover-bg;
|
background-color: $table-dark-hover-bg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -175,7 +174,6 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
overflow-x: auto;
|
overflow-x: auto;
|
||||||
-webkit-overflow-scrolling: touch;
|
-webkit-overflow-scrolling: touch;
|
||||||
-ms-overflow-style: -ms-autohiding-scrollbar; // See https://github.com/twbs/bootstrap/pull/10057
|
|
||||||
|
|
||||||
// Prevent double border on horizontal scroll due to use of `display: block;`
|
// Prevent double border on horizontal scroll due to use of `display: block;`
|
||||||
> .table-bordered {
|
> .table-bordered {
|
||||||
|
|||||||
Vendored
+3
-2
@@ -1,14 +1,15 @@
|
|||||||
.toast {
|
.toast {
|
||||||
max-width: $toast-max-width;
|
max-width: $toast-max-width;
|
||||||
overflow: hidden; // cheap rounded corners on nested items
|
overflow: hidden; // cheap rounded corners on nested items
|
||||||
font-size: $toast-font-size; // knock it down to 14px
|
@include font-size($toast-font-size);
|
||||||
|
color: $toast-color;
|
||||||
background-color: $toast-background-color;
|
background-color: $toast-background-color;
|
||||||
background-clip: padding-box;
|
background-clip: padding-box;
|
||||||
border: $toast-border-width solid $toast-border-color;
|
border: $toast-border-width solid $toast-border-color;
|
||||||
border-radius: $toast-border-radius;
|
|
||||||
box-shadow: $toast-box-shadow;
|
box-shadow: $toast-box-shadow;
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(10px);
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
|
@include border-radius($toast-border-radius);
|
||||||
|
|
||||||
&:not(:last-child) {
|
&:not(:last-child) {
|
||||||
margin-bottom: $toast-padding-x;
|
margin-bottom: $toast-padding-x;
|
||||||
|
|||||||
Vendored
+1
-1
@@ -7,7 +7,7 @@
|
|||||||
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
||||||
// So reset our font and text properties to avoid inheriting weird values.
|
// So reset our font and text properties to avoid inheriting weird values.
|
||||||
@include reset-text();
|
@include reset-text();
|
||||||
font-size: $tooltip-font-size;
|
@include font-size($tooltip-font-size);
|
||||||
// Allow breaking very long words so they don't overflow the tooltip's bounds
|
// Allow breaking very long words so they don't overflow the tooltip's bounds
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
|
|||||||
-2
@@ -1,5 +1,3 @@
|
|||||||
// stylelint-disable selector-no-qualifying-type
|
|
||||||
|
|
||||||
.fade {
|
.fade {
|
||||||
@include transition($transition-fade);
|
@include transition($transition-fade);
|
||||||
|
|
||||||
|
|||||||
Vendored
+15
-15
@@ -13,36 +13,36 @@ h1, h2, h3, h4, h5, h6,
|
|||||||
color: $headings-color;
|
color: $headings-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1, .h1 { font-size: $h1-font-size; }
|
h1, .h1 { @include font-size($h1-font-size); }
|
||||||
h2, .h2 { font-size: $h2-font-size; }
|
h2, .h2 { @include font-size($h2-font-size); }
|
||||||
h3, .h3 { font-size: $h3-font-size; }
|
h3, .h3 { @include font-size($h3-font-size); }
|
||||||
h4, .h4 { font-size: $h4-font-size; }
|
h4, .h4 { @include font-size($h4-font-size); }
|
||||||
h5, .h5 { font-size: $h5-font-size; }
|
h5, .h5 { @include font-size($h5-font-size); }
|
||||||
h6, .h6 { font-size: $h6-font-size; }
|
h6, .h6 { @include font-size($h6-font-size); }
|
||||||
|
|
||||||
.lead {
|
.lead {
|
||||||
font-size: $lead-font-size;
|
@include font-size($lead-font-size);
|
||||||
font-weight: $lead-font-weight;
|
font-weight: $lead-font-weight;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Type display classes
|
// Type display classes
|
||||||
.display-1 {
|
.display-1 {
|
||||||
font-size: $display1-size;
|
@include font-size($display1-size);
|
||||||
font-weight: $display1-weight;
|
font-weight: $display1-weight;
|
||||||
line-height: $display-line-height;
|
line-height: $display-line-height;
|
||||||
}
|
}
|
||||||
.display-2 {
|
.display-2 {
|
||||||
font-size: $display2-size;
|
@include font-size($display2-size);
|
||||||
font-weight: $display2-weight;
|
font-weight: $display2-weight;
|
||||||
line-height: $display-line-height;
|
line-height: $display-line-height;
|
||||||
}
|
}
|
||||||
.display-3 {
|
.display-3 {
|
||||||
font-size: $display3-size;
|
@include font-size($display3-size);
|
||||||
font-weight: $display3-weight;
|
font-weight: $display3-weight;
|
||||||
line-height: $display-line-height;
|
line-height: $display-line-height;
|
||||||
}
|
}
|
||||||
.display-4 {
|
.display-4 {
|
||||||
font-size: $display4-size;
|
@include font-size($display4-size);
|
||||||
font-weight: $display4-weight;
|
font-weight: $display4-weight;
|
||||||
line-height: $display-line-height;
|
line-height: $display-line-height;
|
||||||
}
|
}
|
||||||
@@ -66,7 +66,7 @@ hr {
|
|||||||
|
|
||||||
small,
|
small,
|
||||||
.small {
|
.small {
|
||||||
font-size: $small-font-size;
|
@include font-size($small-font-size);
|
||||||
font-weight: $font-weight-normal;
|
font-weight: $font-weight-normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -104,19 +104,19 @@ mark,
|
|||||||
|
|
||||||
// Builds on `abbr`
|
// Builds on `abbr`
|
||||||
.initialism {
|
.initialism {
|
||||||
font-size: 90%;
|
@include font-size(90%);
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Blockquotes
|
// Blockquotes
|
||||||
.blockquote {
|
.blockquote {
|
||||||
margin-bottom: $spacer;
|
margin-bottom: $spacer;
|
||||||
font-size: $blockquote-font-size;
|
@include font-size($blockquote-font-size);
|
||||||
}
|
}
|
||||||
|
|
||||||
.blockquote-footer {
|
.blockquote-footer {
|
||||||
display: block;
|
display: block;
|
||||||
font-size: $blockquote-small-font-size;
|
@include font-size($blockquote-small-font-size);
|
||||||
color: $blockquote-small-color;
|
color: $blockquote-small-color;
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
|
|||||||
+1
@@ -11,6 +11,7 @@
|
|||||||
@import "utilities/screenreaders";
|
@import "utilities/screenreaders";
|
||||||
@import "utilities/shadows";
|
@import "utilities/shadows";
|
||||||
@import "utilities/sizing";
|
@import "utilities/sizing";
|
||||||
|
@import "utilities/stretched-link";
|
||||||
@import "utilities/spacing";
|
@import "utilities/spacing";
|
||||||
@import "utilities/text";
|
@import "utilities/text";
|
||||||
@import "utilities/visibility";
|
@import "utilities/visibility";
|
||||||
|
|||||||
+108
-76
@@ -114,8 +114,11 @@ $enable-transitions: true !default;
|
|||||||
$enable-prefers-reduced-motion-media-query: true !default;
|
$enable-prefers-reduced-motion-media-query: true !default;
|
||||||
$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS
|
$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS
|
||||||
$enable-grid-classes: true !default;
|
$enable-grid-classes: true !default;
|
||||||
|
$enable-pointer-cursor-for-buttons: true !default;
|
||||||
$enable-print-styles: true !default;
|
$enable-print-styles: true !default;
|
||||||
|
$enable-responsive-font-sizes: false !default;
|
||||||
$enable-validation-icons: true !default;
|
$enable-validation-icons: true !default;
|
||||||
|
$enable-deprecation-messages: true !default;
|
||||||
|
|
||||||
|
|
||||||
// Spacing
|
// Spacing
|
||||||
@@ -185,38 +188,28 @@ $paragraph-margin-bottom: 1rem !default;
|
|||||||
// Define the minimum dimensions at which your layout will change,
|
// Define the minimum dimensions at which your layout will change,
|
||||||
// adapting to different screen sizes, for use in media queries.
|
// adapting to different screen sizes, for use in media queries.
|
||||||
|
|
||||||
$grid-breakpoints: () !default;
|
$grid-breakpoints: (
|
||||||
// stylelint-disable-next-line scss/dollar-variable-default
|
|
||||||
$grid-breakpoints: map-merge(
|
|
||||||
(
|
|
||||||
xs: 0,
|
xs: 0,
|
||||||
sm: 576px,
|
sm: 576px,
|
||||||
md: 768px,
|
md: 768px,
|
||||||
lg: 992px,
|
lg: 992px,
|
||||||
xl: 1200px
|
xl: 1200px
|
||||||
),
|
) !default;
|
||||||
$grid-breakpoints
|
|
||||||
);
|
|
||||||
|
|
||||||
@include _assert-ascending($grid-breakpoints, "$grid-breakpoints");
|
@include _assert-ascending($grid-breakpoints, "$grid-breakpoints");
|
||||||
@include _assert-starts-at-zero($grid-breakpoints);
|
@include _assert-starts-at-zero($grid-breakpoints, "$grid-breakpoints");
|
||||||
|
|
||||||
|
|
||||||
// Grid containers
|
// Grid containers
|
||||||
//
|
//
|
||||||
// Define the maximum width of `.container` for different screen sizes.
|
// Define the maximum width of `.container` for different screen sizes.
|
||||||
|
|
||||||
$container-max-widths: () !default;
|
$container-max-widths: (
|
||||||
// stylelint-disable-next-line scss/dollar-variable-default
|
|
||||||
$container-max-widths: map-merge(
|
|
||||||
(
|
|
||||||
sm: 540px,
|
sm: 540px,
|
||||||
md: 720px,
|
md: 720px,
|
||||||
lg: 960px,
|
lg: 960px,
|
||||||
xl: 1140px
|
xl: 1140px
|
||||||
),
|
) !default;
|
||||||
$container-max-widths
|
|
||||||
);
|
|
||||||
|
|
||||||
@include _assert-ascending($container-max-widths, "$container-max-widths");
|
@include _assert-ascending($container-max-widths, "$container-max-widths");
|
||||||
|
|
||||||
@@ -253,6 +246,8 @@ $component-active-color: $white !default;
|
|||||||
$component-active-bg: theme-color("primary") !default;
|
$component-active-bg: theme-color("primary") !default;
|
||||||
|
|
||||||
$caret-width: .3em !default;
|
$caret-width: .3em !default;
|
||||||
|
$caret-vertical-align: $caret-width * .85 !default;
|
||||||
|
$caret-spacing: $caret-width * .85 !default;
|
||||||
|
|
||||||
$transition-base: all .2s ease-in-out !default;
|
$transition-base: all .2s ease-in-out !default;
|
||||||
$transition-fade: opacity .15s linear !default;
|
$transition-fade: opacity .15s linear !default;
|
||||||
@@ -264,13 +259,13 @@ $embed-responsive-aspect-ratios: join(
|
|||||||
(
|
(
|
||||||
(21 9),
|
(21 9),
|
||||||
(16 9),
|
(16 9),
|
||||||
(3 4),
|
(4 3),
|
||||||
(1 1),
|
(1 1),
|
||||||
),
|
),
|
||||||
$embed-responsive-aspect-ratios
|
$embed-responsive-aspect-ratios
|
||||||
);
|
);
|
||||||
|
|
||||||
// Fonts
|
// Typography
|
||||||
//
|
//
|
||||||
// Font, line-height, and color for body text, headings, and more.
|
// Font, line-height, and color for body text, headings, and more.
|
||||||
|
|
||||||
@@ -281,8 +276,8 @@ $font-family-base: $font-family-sans-serif !default;
|
|||||||
// stylelint-enable value-keyword-case
|
// stylelint-enable value-keyword-case
|
||||||
|
|
||||||
$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`
|
$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`
|
||||||
$font-size-lg: ($font-size-base * 1.25) !default;
|
$font-size-lg: $font-size-base * 1.25 !default;
|
||||||
$font-size-sm: ($font-size-base * .875) !default;
|
$font-size-sm: $font-size-base * .875 !default;
|
||||||
|
|
||||||
$font-weight-lighter: lighter !default;
|
$font-weight-lighter: lighter !default;
|
||||||
$font-weight-light: 300 !default;
|
$font-weight-light: 300 !default;
|
||||||
@@ -301,10 +296,10 @@ $h5-font-size: $font-size-base * 1.25 !default;
|
|||||||
$h6-font-size: $font-size-base !default;
|
$h6-font-size: $font-size-base !default;
|
||||||
|
|
||||||
$headings-margin-bottom: $spacer / 2 !default;
|
$headings-margin-bottom: $spacer / 2 !default;
|
||||||
$headings-font-family: inherit !default;
|
$headings-font-family: null !default;
|
||||||
$headings-font-weight: 500 !default;
|
$headings-font-weight: 500 !default;
|
||||||
$headings-line-height: 1.2 !default;
|
$headings-line-height: 1.2 !default;
|
||||||
$headings-color: inherit !default;
|
$headings-color: null !default;
|
||||||
|
|
||||||
$display1-size: 6rem !default;
|
$display1-size: 6rem !default;
|
||||||
$display2-size: 5.5rem !default;
|
$display2-size: 5.5rem !default;
|
||||||
@@ -317,7 +312,7 @@ $display3-weight: 300 !default;
|
|||||||
$display4-weight: 300 !default;
|
$display4-weight: 300 !default;
|
||||||
$display-line-height: $headings-line-height !default;
|
$display-line-height: $headings-line-height !default;
|
||||||
|
|
||||||
$lead-font-size: ($font-size-base * 1.25) !default;
|
$lead-font-size: $font-size-base * 1.25 !default;
|
||||||
$lead-font-weight: 300 !default;
|
$lead-font-weight: 300 !default;
|
||||||
|
|
||||||
$small-font-size: 80% !default;
|
$small-font-size: 80% !default;
|
||||||
@@ -326,7 +321,7 @@ $text-muted: $gray-600 !default;
|
|||||||
|
|
||||||
$blockquote-small-color: $gray-600 !default;
|
$blockquote-small-color: $gray-600 !default;
|
||||||
$blockquote-small-font-size: $small-font-size !default;
|
$blockquote-small-font-size: $small-font-size !default;
|
||||||
$blockquote-font-size: ($font-size-base * 1.25) !default;
|
$blockquote-font-size: $font-size-base * 1.25 !default;
|
||||||
|
|
||||||
$hr-border-color: rgba($black, .1) !default;
|
$hr-border-color: rgba($black, .1) !default;
|
||||||
$hr-border-width: $border-width !default;
|
$hr-border-width: $border-width !default;
|
||||||
@@ -352,21 +347,25 @@ $hr-margin-y: $spacer !default;
|
|||||||
$table-cell-padding: .75rem !default;
|
$table-cell-padding: .75rem !default;
|
||||||
$table-cell-padding-sm: .3rem !default;
|
$table-cell-padding-sm: .3rem !default;
|
||||||
|
|
||||||
$table-bg: transparent !default;
|
$table-color: $body-color !default;
|
||||||
|
$table-bg: null !default;
|
||||||
$table-accent-bg: rgba($black, .05) !default;
|
$table-accent-bg: rgba($black, .05) !default;
|
||||||
|
$table-hover-color: $table-color !default;
|
||||||
$table-hover-bg: rgba($black, .075) !default;
|
$table-hover-bg: rgba($black, .075) !default;
|
||||||
$table-active-bg: $table-hover-bg !default;
|
$table-active-bg: $table-hover-bg !default;
|
||||||
|
|
||||||
$table-border-width: $border-width !default;
|
$table-border-width: $border-width !default;
|
||||||
$table-border-color: $gray-300 !default;
|
$table-border-color: $border-color !default;
|
||||||
|
|
||||||
$table-head-bg: $gray-200 !default;
|
$table-head-bg: $gray-200 !default;
|
||||||
$table-head-color: $gray-700 !default;
|
$table-head-color: $gray-700 !default;
|
||||||
|
|
||||||
$table-dark-bg: $gray-900 !default;
|
$table-dark-color: $white !default;
|
||||||
|
$table-dark-bg: $gray-800 !default;
|
||||||
$table-dark-accent-bg: rgba($white, .05) !default;
|
$table-dark-accent-bg: rgba($white, .05) !default;
|
||||||
|
$table-dark-hover-color: $table-dark-color !default;
|
||||||
$table-dark-hover-bg: rgba($white, .075) !default;
|
$table-dark-hover-bg: rgba($white, .075) !default;
|
||||||
$table-dark-border-color: lighten($gray-900, 7.5%) !default;
|
$table-dark-border-color: lighten($table-dark-bg, 7.5%) !default;
|
||||||
$table-dark-color: $white !default;
|
$table-dark-color: $white !default;
|
||||||
|
|
||||||
$table-striped-order: odd !default;
|
$table-striped-order: odd !default;
|
||||||
@@ -383,6 +382,7 @@ $table-border-level: -6 !default;
|
|||||||
|
|
||||||
$input-btn-padding-y: .375rem !default;
|
$input-btn-padding-y: .375rem !default;
|
||||||
$input-btn-padding-x: .75rem !default;
|
$input-btn-padding-x: .75rem !default;
|
||||||
|
$input-btn-font-family: null !default;
|
||||||
$input-btn-font-size: $font-size-base !default;
|
$input-btn-font-size: $font-size-base !default;
|
||||||
$input-btn-line-height: $line-height-base !default;
|
$input-btn-line-height: $line-height-base !default;
|
||||||
|
|
||||||
@@ -409,6 +409,7 @@ $input-btn-border-width: $border-width !default;
|
|||||||
|
|
||||||
$btn-padding-y: $input-btn-padding-y !default;
|
$btn-padding-y: $input-btn-padding-y !default;
|
||||||
$btn-padding-x: $input-btn-padding-x !default;
|
$btn-padding-x: $input-btn-padding-x !default;
|
||||||
|
$btn-font-family: $input-btn-font-family !default;
|
||||||
$btn-font-size: $input-btn-font-size !default;
|
$btn-font-size: $input-btn-font-size !default;
|
||||||
$btn-line-height: $input-btn-line-height !default;
|
$btn-line-height: $input-btn-line-height !default;
|
||||||
|
|
||||||
@@ -449,6 +450,7 @@ $label-margin-bottom: .5rem !default;
|
|||||||
|
|
||||||
$input-padding-y: $input-btn-padding-y !default;
|
$input-padding-y: $input-btn-padding-y !default;
|
||||||
$input-padding-x: $input-btn-padding-x !default;
|
$input-padding-x: $input-btn-padding-x !default;
|
||||||
|
$input-font-family: $input-btn-font-family !default;
|
||||||
$input-font-size: $input-btn-font-size !default;
|
$input-font-size: $input-btn-font-size !default;
|
||||||
$input-font-weight: $font-weight-base !default;
|
$input-font-weight: $font-weight-base !default;
|
||||||
$input-line-height: $input-btn-line-height !default;
|
$input-line-height: $input-btn-line-height !default;
|
||||||
@@ -486,14 +488,13 @@ $input-plaintext-color: $body-color !default;
|
|||||||
|
|
||||||
$input-height-border: $input-border-width * 2 !default;
|
$input-height-border: $input-border-width * 2 !default;
|
||||||
|
|
||||||
$input-height-inner: ($input-btn-font-size * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;
|
$input-height-inner: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2}) !default;
|
||||||
$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;
|
$input-height-inner-half: calc(#{$input-line-height * .5em} + #{$input-padding-y}) !default;
|
||||||
|
$input-height-inner-quarter: calc(#{$input-line-height * .25em} + #{$input-padding-y / 2}) !default;
|
||||||
|
|
||||||
$input-height-inner-sm: ($input-btn-font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;
|
$input-height: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2} + #{$input-height-border}) !default;
|
||||||
$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;
|
$input-height-sm: calc(#{$input-line-height-sm * 1em} + #{$input-btn-padding-y-sm * 2} + #{$input-height-border}) !default;
|
||||||
|
$input-height-lg: calc(#{$input-line-height-lg * 1em} + #{$input-btn-padding-y-lg * 2} + #{$input-height-border}) !default;
|
||||||
$input-height-inner-lg: ($input-btn-font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;
|
|
||||||
$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;
|
|
||||||
|
|
||||||
$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
|
$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
|
||||||
|
|
||||||
@@ -535,7 +536,7 @@ $custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5)
|
|||||||
$custom-control-indicator-checked-box-shadow: none !default;
|
$custom-control-indicator-checked-box-shadow: none !default;
|
||||||
$custom-control-indicator-checked-border-color: $custom-control-indicator-checked-bg !default;
|
$custom-control-indicator-checked-border-color: $custom-control-indicator-checked-bg !default;
|
||||||
|
|
||||||
$custom-control-indicator-focus-box-shadow: $input-btn-focus-box-shadow !default;
|
$custom-control-indicator-focus-box-shadow: $input-focus-box-shadow !default;
|
||||||
$custom-control-indicator-focus-border-color: $input-focus-border-color !default;
|
$custom-control-indicator-focus-border-color: $input-focus-border-color !default;
|
||||||
|
|
||||||
$custom-control-indicator-active-color: $component-active-color !default;
|
$custom-control-indicator-active-color: $component-active-color !default;
|
||||||
@@ -559,8 +560,10 @@ $custom-switch-width: $custom-control-indicator-size *
|
|||||||
$custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
|
$custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
|
||||||
$custom-switch-indicator-size: calc(#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}) !default;
|
$custom-switch-indicator-size: calc(#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}) !default;
|
||||||
|
|
||||||
$custom-select-padding-y: $input-btn-padding-y !default;
|
$custom-select-padding-y: $input-padding-y !default;
|
||||||
$custom-select-padding-x: $input-btn-padding-x !default;
|
$custom-select-padding-x: $input-padding-x !default;
|
||||||
|
$custom-select-font-family: $input-font-family !default;
|
||||||
|
$custom-select-font-size: $input-font-size !default;
|
||||||
$custom-select-height: $input-height !default;
|
$custom-select-height: $input-height !default;
|
||||||
$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator
|
$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator
|
||||||
$custom-select-font-weight: $input-font-weight !default;
|
$custom-select-font-weight: $input-font-weight !default;
|
||||||
@@ -574,9 +577,9 @@ $custom-select-indicator-color: $gray-800 !default;
|
|||||||
$custom-select-indicator: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"), "#", "%23") !default;
|
$custom-select-indicator: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"), "#", "%23") !default;
|
||||||
$custom-select-background: $custom-select-indicator no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
|
$custom-select-background: $custom-select-indicator no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
|
||||||
|
|
||||||
$custom-select-feedback-icon-padding-right: $input-height-inner * 3 / 4 + $custom-select-padding-x + $custom-select-indicator-padding !default;
|
$custom-select-feedback-icon-padding-right: calc((1em + #{2 * $custom-select-padding-y}) * 3 / 4 + #{$custom-select-padding-x + $custom-select-indicator-padding}) !default;
|
||||||
$custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
|
$custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
|
||||||
$custom-select-feedback-icon-size: ($input-height-inner / 2) ($input-height-inner / 2) !default;
|
$custom-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;
|
||||||
|
|
||||||
$custom-select-border-width: $input-border-width !default;
|
$custom-select-border-width: $input-border-width !default;
|
||||||
$custom-select-border-color: $input-border-color !default;
|
$custom-select-border-color: $input-border-color !default;
|
||||||
@@ -585,16 +588,16 @@ $custom-select-box-shadow: inset 0 1px 2px rgba($black, .075) !default;
|
|||||||
|
|
||||||
$custom-select-focus-border-color: $input-focus-border-color !default;
|
$custom-select-focus-border-color: $input-focus-border-color !default;
|
||||||
$custom-select-focus-width: $input-focus-width !default;
|
$custom-select-focus-width: $input-focus-width !default;
|
||||||
$custom-select-focus-box-shadow: 0 0 0 $custom-select-focus-width rgba($custom-select-focus-border-color, .5) !default;
|
$custom-select-focus-box-shadow: 0 0 0 $custom-select-focus-width $input-btn-focus-color !default;
|
||||||
|
|
||||||
$custom-select-padding-y-sm: $input-padding-y-sm !default;
|
$custom-select-padding-y-sm: $input-padding-y-sm !default;
|
||||||
$custom-select-padding-x-sm: $input-padding-x-sm !default;
|
$custom-select-padding-x-sm: $input-padding-x-sm !default;
|
||||||
$custom-select-font-size-sm: $input-btn-font-size-sm !default;
|
$custom-select-font-size-sm: $input-font-size-sm !default;
|
||||||
$custom-select-height-sm: $input-height-sm !default;
|
$custom-select-height-sm: $input-height-sm !default;
|
||||||
|
|
||||||
$custom-select-padding-y-lg: $input-padding-y-lg !default;
|
$custom-select-padding-y-lg: $input-padding-y-lg !default;
|
||||||
$custom-select-padding-x-lg: $input-padding-x-lg !default;
|
$custom-select-padding-x-lg: $input-padding-x-lg !default;
|
||||||
$custom-select-font-size-lg: $input-btn-font-size-lg !default;
|
$custom-select-font-size-lg: $input-font-size-lg !default;
|
||||||
$custom-select-height-lg: $input-height-lg !default;
|
$custom-select-height-lg: $input-height-lg !default;
|
||||||
|
|
||||||
$custom-range-track-width: 100% !default;
|
$custom-range-track-width: 100% !default;
|
||||||
@@ -624,6 +627,7 @@ $custom-file-disabled-bg: $input-disabled-bg !default;
|
|||||||
$custom-file-padding-y: $input-padding-y !default;
|
$custom-file-padding-y: $input-padding-y !default;
|
||||||
$custom-file-padding-x: $input-padding-x !default;
|
$custom-file-padding-x: $input-padding-x !default;
|
||||||
$custom-file-line-height: $input-line-height !default;
|
$custom-file-line-height: $input-line-height !default;
|
||||||
|
$custom-file-font-family: $input-font-family !default;
|
||||||
$custom-file-font-weight: $input-font-weight !default;
|
$custom-file-font-weight: $input-font-weight !default;
|
||||||
$custom-file-color: $input-color !default;
|
$custom-file-color: $input-color !default;
|
||||||
$custom-file-bg: $input-bg !default;
|
$custom-file-bg: $input-bg !default;
|
||||||
@@ -648,38 +652,23 @@ $form-feedback-invalid-color: theme-color("danger") !default;
|
|||||||
$form-feedback-icon-valid-color: $form-feedback-valid-color !default;
|
$form-feedback-icon-valid-color: $form-feedback-valid-color !default;
|
||||||
$form-feedback-icon-valid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"), "#", "%23") !default;
|
$form-feedback-icon-valid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"), "#", "%23") !default;
|
||||||
$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
|
$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
|
||||||
$form-feedback-icon-invalid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$form-feedback-icon-invalid-color}' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"), "#", "%23") !default;
|
$form-feedback-icon-invalid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$form-feedback-icon-invalid-color}' viewBox='-2 -2 7 7'%3e%3cpath stroke='#{$form-feedback-icon-invalid-color}' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"), "#", "%23") !default;
|
||||||
|
|
||||||
|
|
||||||
// Dropdowns
|
|
||||||
//
|
|
||||||
// Dropdown menu container and contents.
|
|
||||||
|
|
||||||
$dropdown-min-width: 10rem !default;
|
|
||||||
$dropdown-padding-y: .5rem !default;
|
|
||||||
$dropdown-spacer: .125rem !default;
|
|
||||||
$dropdown-bg: $white !default;
|
|
||||||
$dropdown-border-color: rgba($black, .15) !default;
|
|
||||||
$dropdown-border-radius: $border-radius !default;
|
|
||||||
$dropdown-border-width: $border-width !default;
|
|
||||||
$dropdown-inner-border-radius: calc(#{$dropdown-border-radius} - #{$dropdown-border-width}) !default;
|
|
||||||
$dropdown-divider-bg: $gray-200 !default;
|
|
||||||
$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
|
|
||||||
|
|
||||||
$dropdown-link-color: $gray-900 !default;
|
|
||||||
$dropdown-link-hover-color: darken($gray-900, 5%) !default;
|
|
||||||
$dropdown-link-hover-bg: $gray-100 !default;
|
|
||||||
|
|
||||||
$dropdown-link-active-color: $component-active-color !default;
|
|
||||||
$dropdown-link-active-bg: $component-active-bg !default;
|
|
||||||
|
|
||||||
$dropdown-link-disabled-color: $gray-600 !default;
|
|
||||||
|
|
||||||
$dropdown-item-padding-y: .25rem !default;
|
|
||||||
$dropdown-item-padding-x: 1.5rem !default;
|
|
||||||
|
|
||||||
$dropdown-header-color: $gray-600 !default;
|
|
||||||
|
|
||||||
|
$form-validation-states: () !default;
|
||||||
|
// stylelint-disable-next-line scss/dollar-variable-default
|
||||||
|
$form-validation-states: map-merge(
|
||||||
|
(
|
||||||
|
"valid": (
|
||||||
|
"color": $form-feedback-valid-color,
|
||||||
|
"icon": $form-feedback-icon-valid
|
||||||
|
),
|
||||||
|
"invalid": (
|
||||||
|
"color": $form-feedback-invalid-color,
|
||||||
|
"icon": $form-feedback-icon-invalid
|
||||||
|
),
|
||||||
|
),
|
||||||
|
$form-validation-states
|
||||||
|
);
|
||||||
|
|
||||||
// Z-index master list
|
// Z-index master list
|
||||||
//
|
//
|
||||||
@@ -755,6 +744,39 @@ $navbar-dark-brand-color: $navbar-dark-active-color !default;
|
|||||||
$navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
|
$navbar-dark-brand-hover-color: $navbar-dark-active-color !default;
|
||||||
|
|
||||||
|
|
||||||
|
// Dropdowns
|
||||||
|
//
|
||||||
|
// Dropdown menu container and contents.
|
||||||
|
|
||||||
|
$dropdown-min-width: 10rem !default;
|
||||||
|
$dropdown-padding-y: .5rem !default;
|
||||||
|
$dropdown-spacer: .125rem !default;
|
||||||
|
$dropdown-font-size: $font-size-base !default;
|
||||||
|
$dropdown-color: $body-color !default;
|
||||||
|
$dropdown-bg: $white !default;
|
||||||
|
$dropdown-border-color: rgba($black, .15) !default;
|
||||||
|
$dropdown-border-radius: $border-radius !default;
|
||||||
|
$dropdown-border-width: $border-width !default;
|
||||||
|
$dropdown-inner-border-radius: calc(#{$dropdown-border-radius} - #{$dropdown-border-width}) !default;
|
||||||
|
$dropdown-divider-bg: $gray-200 !default;
|
||||||
|
$dropdown-divider-margin-y: $nav-divider-margin-y !default;
|
||||||
|
$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
|
||||||
|
|
||||||
|
$dropdown-link-color: $gray-900 !default;
|
||||||
|
$dropdown-link-hover-color: darken($gray-900, 5%) !default;
|
||||||
|
$dropdown-link-hover-bg: $gray-100 !default;
|
||||||
|
|
||||||
|
$dropdown-link-active-color: $component-active-color !default;
|
||||||
|
$dropdown-link-active-bg: $component-active-bg !default;
|
||||||
|
|
||||||
|
$dropdown-link-disabled-color: $gray-600 !default;
|
||||||
|
|
||||||
|
$dropdown-item-padding-y: .25rem !default;
|
||||||
|
$dropdown-item-padding-x: 1.5rem !default;
|
||||||
|
|
||||||
|
$dropdown-header-color: $gray-600 !default;
|
||||||
|
|
||||||
|
|
||||||
// Pagination
|
// Pagination
|
||||||
|
|
||||||
$pagination-padding-y: .5rem !default;
|
$pagination-padding-y: .5rem !default;
|
||||||
@@ -789,6 +811,7 @@ $pagination-disabled-border-color: $gray-300 !default;
|
|||||||
// Jumbotron
|
// Jumbotron
|
||||||
|
|
||||||
$jumbotron-padding: 2rem !default;
|
$jumbotron-padding: 2rem !default;
|
||||||
|
$jumbotron-color: null !default;
|
||||||
$jumbotron-bg: $gray-200 !default;
|
$jumbotron-bg: $gray-200 !default;
|
||||||
|
|
||||||
|
|
||||||
@@ -801,7 +824,8 @@ $card-border-radius: $border-radius !default;
|
|||||||
$card-border-color: rgba($black, .125) !default;
|
$card-border-color: rgba($black, .125) !default;
|
||||||
$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
|
$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
|
||||||
$card-cap-bg: rgba($black, .03) !default;
|
$card-cap-bg: rgba($black, .03) !default;
|
||||||
$card-cap-color: inherit !default;
|
$card-cap-color: null !default;
|
||||||
|
$card-color: null !default;
|
||||||
$card-bg: $white !default;
|
$card-bg: $white !default;
|
||||||
|
|
||||||
$card-img-overlay-padding: 1.25rem !default;
|
$card-img-overlay-padding: 1.25rem !default;
|
||||||
@@ -866,10 +890,12 @@ $popover-arrow-outer-color: fade-in($popover-border-color, .05) !default
|
|||||||
|
|
||||||
|
|
||||||
// Toasts
|
// Toasts
|
||||||
|
|
||||||
$toast-max-width: 350px !default;
|
$toast-max-width: 350px !default;
|
||||||
$toast-padding-x: .75rem !default;
|
$toast-padding-x: .75rem !default;
|
||||||
$toast-padding-y: .25rem !default;
|
$toast-padding-y: .25rem !default;
|
||||||
$toast-font-size: .875rem !default;
|
$toast-font-size: .875rem !default;
|
||||||
|
$toast-color: null !default;
|
||||||
$toast-background-color: rgba($white, .85) !default;
|
$toast-background-color: rgba($white, .85) !default;
|
||||||
$toast-border-width: 1px !default;
|
$toast-border-width: 1px !default;
|
||||||
$toast-border-color: rgba(0, 0, 0, .1) !default;
|
$toast-border-color: rgba(0, 0, 0, .1) !default;
|
||||||
@@ -889,6 +915,9 @@ $badge-padding-y: .25em !default;
|
|||||||
$badge-padding-x: .4em !default;
|
$badge-padding-x: .4em !default;
|
||||||
$badge-border-radius: $border-radius !default;
|
$badge-border-radius: $border-radius !default;
|
||||||
|
|
||||||
|
$badge-transition: $btn-transition !default;
|
||||||
|
$badge-focus-width: $input-btn-focus-width !default;
|
||||||
|
|
||||||
$badge-pill-padding-x: .6em !default;
|
$badge-pill-padding-x: .6em !default;
|
||||||
// Use a higher than normal value to ensure completely rounded edges when
|
// Use a higher than normal value to ensure completely rounded edges when
|
||||||
// customizing padding or font-size on labels.
|
// customizing padding or font-size on labels.
|
||||||
@@ -905,6 +934,7 @@ $modal-dialog-margin-y-sm-up: 1.75rem !default;
|
|||||||
|
|
||||||
$modal-title-line-height: $line-height-base !default;
|
$modal-title-line-height: $line-height-base !default;
|
||||||
|
|
||||||
|
$modal-content-color: null !default;
|
||||||
$modal-content-bg: $white !default;
|
$modal-content-bg: $white !default;
|
||||||
$modal-content-border-color: rgba($black, .2) !default;
|
$modal-content-border-color: rgba($black, .2) !default;
|
||||||
$modal-content-border-width: $border-width !default;
|
$modal-content-border-width: $border-width !default;
|
||||||
@@ -914,7 +944,7 @@ $modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
|
|||||||
|
|
||||||
$modal-backdrop-bg: $black !default;
|
$modal-backdrop-bg: $black !default;
|
||||||
$modal-backdrop-opacity: .5 !default;
|
$modal-backdrop-opacity: .5 !default;
|
||||||
$modal-header-border-color: $gray-200 !default;
|
$modal-header-border-color: $border-color !default;
|
||||||
$modal-footer-border-color: $modal-header-border-color !default;
|
$modal-footer-border-color: $modal-header-border-color !default;
|
||||||
$modal-header-border-width: $modal-content-border-width !default;
|
$modal-header-border-width: $modal-content-border-width !default;
|
||||||
$modal-footer-border-width: $modal-header-border-width !default;
|
$modal-footer-border-width: $modal-header-border-width !default;
|
||||||
@@ -951,7 +981,7 @@ $alert-color-level: 6 !default;
|
|||||||
// Progress bars
|
// Progress bars
|
||||||
|
|
||||||
$progress-height: 1rem !default;
|
$progress-height: 1rem !default;
|
||||||
$progress-font-size: ($font-size-base * .75) !default;
|
$progress-font-size: $font-size-base * .75 !default;
|
||||||
$progress-bg: $gray-200 !default;
|
$progress-bg: $gray-200 !default;
|
||||||
$progress-border-radius: $border-radius !default;
|
$progress-border-radius: $border-radius !default;
|
||||||
$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;
|
$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;
|
||||||
@@ -963,6 +993,7 @@ $progress-bar-transition: width .6s ease !default;
|
|||||||
|
|
||||||
// List group
|
// List group
|
||||||
|
|
||||||
|
$list-group-color: null !default;
|
||||||
$list-group-bg: $white !default;
|
$list-group-bg: $white !default;
|
||||||
$list-group-border-color: rgba($black, .125) !default;
|
$list-group-border-color: rgba($black, .125) !default;
|
||||||
$list-group-border-width: $border-width !default;
|
$list-group-border-width: $border-width !default;
|
||||||
@@ -1081,6 +1112,7 @@ $pre-scrollable-max-height: 340px !default;
|
|||||||
|
|
||||||
// Utilities
|
// Utilities
|
||||||
|
|
||||||
|
$displays: none, inline, inline-block, block, table, table-row, table-cell, flex, inline-flex !default;
|
||||||
$overflows: auto, hidden !default;
|
$overflows: auto, hidden !default;
|
||||||
$positions: static, relative, absolute, fixed, sticky !default;
|
$positions: static, relative, absolute, fixed, sticky !default;
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Grid v4.2.1 (https://getbootstrap.com/)
|
* Bootstrap Grid v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors
|
* Copyright 2011-2019 The Bootstrap Authors
|
||||||
* Copyright 2011-2018 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Reboot v4.2.1 (https://getbootstrap.com/)
|
* Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors
|
* Copyright 2011-2019 The Bootstrap Authors
|
||||||
* Copyright 2011-2018 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
||||||
*/
|
*/
|
||||||
|
|||||||
Vendored
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v4.2.1 (https://getbootstrap.com/)
|
* Bootstrap v4.3.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2018 The Bootstrap Authors
|
* Copyright 2011-2019 The Bootstrap Authors
|
||||||
* Copyright 2011-2018 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|||||||
+6
@@ -7,5 +7,11 @@
|
|||||||
color: color-yiq($bg);
|
color: color-yiq($bg);
|
||||||
background-color: darken($bg, 10%);
|
background-color: darken($bg, 10%);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&:focus,
|
||||||
|
&.focus {
|
||||||
|
outline: 0;
|
||||||
|
box-shadow: 0 0 0 $badge-focus-width rgba($bg, .5);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+29
-1
@@ -1,9 +1,13 @@
|
|||||||
|
// stylelint-disable property-blacklist
|
||||||
// Single side border-radius
|
// Single side border-radius
|
||||||
|
|
||||||
@mixin border-radius($radius: $border-radius) {
|
@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {
|
||||||
@if $enable-rounded {
|
@if $enable-rounded {
|
||||||
border-radius: $radius;
|
border-radius: $radius;
|
||||||
}
|
}
|
||||||
|
@else if $fallback-border-radius != false {
|
||||||
|
border-radius: $fallback-border-radius;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin border-top-radius($radius) {
|
@mixin border-top-radius($radius) {
|
||||||
@@ -33,3 +37,27 @@
|
|||||||
border-bottom-left-radius: $radius;
|
border-bottom-left-radius: $radius;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@mixin border-top-left-radius($radius) {
|
||||||
|
@if $enable-rounded {
|
||||||
|
border-top-left-radius: $radius;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin border-top-right-radius($radius) {
|
||||||
|
@if $enable-rounded {
|
||||||
|
border-top-right-radius: $radius;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin border-bottom-right-radius($radius) {
|
||||||
|
@if $enable-rounded {
|
||||||
|
border-bottom-right-radius: $radius;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin border-bottom-left-radius($radius) {
|
||||||
|
@if $enable-rounded {
|
||||||
|
border-bottom-left-radius: $radius;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
+16
-1
@@ -1,5 +1,20 @@
|
|||||||
@mixin box-shadow($shadow...) {
|
@mixin box-shadow($shadow...) {
|
||||||
@if $enable-shadows {
|
@if $enable-shadows {
|
||||||
box-shadow: $shadow;
|
$result: ();
|
||||||
|
|
||||||
|
@if (length($shadow) == 1) {
|
||||||
|
// We can pass `@include box-shadow(none);`
|
||||||
|
$result: $shadow;
|
||||||
|
} @else {
|
||||||
|
// Filter to avoid invalid properties for example `box-shadow: none, 1px 1px black;`
|
||||||
|
@for $i from 1 through length($shadow) {
|
||||||
|
@if nth($shadow, $i) != "none" {
|
||||||
|
$result: append($result, nth($shadow, $i), "comma");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@if (length($result) > 0) {
|
||||||
|
box-shadow: $result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-7
@@ -49,7 +49,7 @@
|
|||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
// Avoid using mixin so we can pass custom focus shadow properly
|
// Avoid using mixin so we can pass custom focus shadow properly
|
||||||
@if $enable-shadows {
|
@if $enable-shadows and $btn-active-box-shadow != none {
|
||||||
box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
||||||
} @else {
|
} @else {
|
||||||
box-shadow: 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
box-shadow: 0 0 0 $btn-focus-width rgba(mix(color-yiq($background), $border, 15%), .5);
|
||||||
@@ -100,12 +100,8 @@
|
|||||||
// Button sizes
|
// Button sizes
|
||||||
@mixin button-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
|
@mixin button-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
|
||||||
padding: $padding-y $padding-x;
|
padding: $padding-y $padding-x;
|
||||||
font-size: $font-size;
|
@include font-size($font-size);
|
||||||
line-height: $line-height;
|
line-height: $line-height;
|
||||||
// Manually declare to provide an override to the browser default
|
// Manually declare to provide an override to the browser default
|
||||||
@if $enable-rounded {
|
@include border-radius($border-radius, 0);
|
||||||
border-radius: $border-radius;
|
|
||||||
} @else {
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-4
@@ -29,8 +29,8 @@
|
|||||||
@if $enable-caret {
|
@if $enable-caret {
|
||||||
&::after {
|
&::after {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-left: $caret-width * .85;
|
margin-left: $caret-spacing;
|
||||||
vertical-align: $caret-width * .85;
|
vertical-align: $caret-vertical-align;
|
||||||
content: "";
|
content: "";
|
||||||
@if $direction == down {
|
@if $direction == down {
|
||||||
@include caret-down;
|
@include caret-down;
|
||||||
@@ -48,8 +48,8 @@
|
|||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-right: $caret-width * .85;
|
margin-right: $caret-spacing;
|
||||||
vertical-align: $caret-width * .85;
|
vertical-align: $caret-vertical-align;
|
||||||
content: "";
|
content: "";
|
||||||
@include caret-left;
|
@include caret-left;
|
||||||
}
|
}
|
||||||
|
|||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
// Deprecate mixin
|
||||||
|
//
|
||||||
|
// This mixin can be used to deprecate mixins or functions.
|
||||||
|
// `$enable-deprecation-messages` is a global variable, `$ignore-warning` is a variable that can be passed to
|
||||||
|
// some deprecated mixins to suppress the warning (for example if the mixin is still be used in the current version of Bootstrap)
|
||||||
|
@mixin deprecate($name, $deprecate-version, $remove-version, $ignore-warning: false) {
|
||||||
|
@if ($enable-deprecation-messages != false and $ignore-warning != true) {
|
||||||
|
@warn "#{$name} has been deprecated as of #{$deprecate-version}. It will be removed entirely in #{$remove-version}.";
|
||||||
|
}
|
||||||
|
}
|
||||||
+3
@@ -2,10 +2,13 @@
|
|||||||
|
|
||||||
@mixin float-left {
|
@mixin float-left {
|
||||||
float: left !important;
|
float: left !important;
|
||||||
|
@include deprecate("The `float-left` mixin", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
@mixin float-right {
|
@mixin float-right {
|
||||||
float: right !important;
|
float: right !important;
|
||||||
|
@include deprecate("The `float-right` mixin", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
@mixin float-none {
|
@mixin float-none {
|
||||||
float: none !important;
|
float: none !important;
|
||||||
|
@include deprecate("The `float-none` mixin", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
|
|||||||
+8
-14
@@ -26,12 +26,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@mixin form-validation-state($state, $color) {
|
@mixin form-validation-state($state, $color, $icon) {
|
||||||
.#{$state}-feedback {
|
.#{$state}-feedback {
|
||||||
display: none;
|
display: none;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin-top: $form-feedback-margin-top;
|
margin-top: $form-feedback-margin-top;
|
||||||
font-size: $form-feedback-font-size;
|
@include font-size($form-feedback-font-size);
|
||||||
color: $color;
|
color: $color;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
max-width: 100%; // Contain to parent when possible
|
max-width: 100%; // Contain to parent when possible
|
||||||
padding: $form-feedback-tooltip-padding-y $form-feedback-tooltip-padding-x;
|
padding: $form-feedback-tooltip-padding-y $form-feedback-tooltip-padding-x;
|
||||||
margin-top: .1rem;
|
margin-top: .1rem;
|
||||||
font-size: $form-feedback-tooltip-font-size;
|
@include font-size($form-feedback-tooltip-font-size);
|
||||||
line-height: $form-feedback-tooltip-line-height;
|
line-height: $form-feedback-tooltip-line-height;
|
||||||
color: color-yiq($color);
|
color: color-yiq($color);
|
||||||
background-color: rgba($color, $form-feedback-tooltip-opacity);
|
background-color: rgba($color, $form-feedback-tooltip-opacity);
|
||||||
@@ -57,15 +57,10 @@
|
|||||||
|
|
||||||
@if $enable-validation-icons {
|
@if $enable-validation-icons {
|
||||||
padding-right: $input-height-inner;
|
padding-right: $input-height-inner;
|
||||||
|
background-image: $icon;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: center right calc(#{$input-height-inner} / 4);
|
background-position: center right $input-height-inner-quarter;
|
||||||
background-size: calc(#{$input-height-inner} / 2) calc(#{$input-height-inner} / 2);
|
background-size: $input-height-inner-half $input-height-inner-half;
|
||||||
|
|
||||||
@if $state == "valid" {
|
|
||||||
background-image: $form-feedback-icon-valid;
|
|
||||||
} @else {
|
|
||||||
background-image: $form-feedback-icon-invalid;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
@@ -86,7 +81,7 @@
|
|||||||
&.is-#{$state} {
|
&.is-#{$state} {
|
||||||
@if $enable-validation-icons {
|
@if $enable-validation-icons {
|
||||||
padding-right: $input-height-inner;
|
padding-right: $input-height-inner;
|
||||||
background-position: top calc(#{$input-height-inner} / 4) right calc(#{$input-height-inner} / 4);
|
background-position: top $input-height-inner-quarter right $input-height-inner-quarter;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -97,9 +92,8 @@
|
|||||||
border-color: $color;
|
border-color: $color;
|
||||||
|
|
||||||
@if $enable-validation-icons {
|
@if $enable-validation-icons {
|
||||||
$form-feedback-icon: if($state == "valid", $form-feedback-icon-valid, $form-feedback-icon-invalid);
|
|
||||||
padding-right: $custom-select-feedback-icon-padding-right;
|
padding-right: $custom-select-feedback-icon-padding-right;
|
||||||
background: $custom-select-background, $form-feedback-icon no-repeat $custom-select-feedback-icon-position / $custom-select-feedback-icon-size;
|
background: $custom-select-background, $icon $custom-select-bg no-repeat $custom-select-feedback-icon-position / $custom-select-feedback-icon-size;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
|
|||||||
+1
-1
@@ -20,7 +20,6 @@
|
|||||||
//
|
//
|
||||||
// Short retina mixin for setting background-image and -size.
|
// Short retina mixin for setting background-image and -size.
|
||||||
|
|
||||||
// stylelint-disable indentation, media-query-list-comma-newline-after
|
|
||||||
@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
|
@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
|
||||||
background-image: url($file-1x);
|
background-image: url($file-1x);
|
||||||
|
|
||||||
@@ -33,4 +32,5 @@
|
|||||||
background-image: url($file-2x);
|
background-image: url($file-2x);
|
||||||
background-size: $width-1x $height-1x;
|
background-size: $width-1x $height-1x;
|
||||||
}
|
}
|
||||||
|
@include deprecate("`img-retina()`", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
@mixin pagination-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
|
@mixin pagination-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
|
||||||
.page-link {
|
.page-link {
|
||||||
padding: $padding-y $padding-x;
|
padding: $padding-y $padding-x;
|
||||||
font-size: $font-size;
|
@include font-size($font-size);
|
||||||
line-height: $line-height;
|
line-height: $line-height;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
font-weight: $font-weight-normal;
|
font-weight: $font-weight-normal;
|
||||||
line-height: $line-height-base;
|
line-height: $line-height-base;
|
||||||
text-align: left; // Fallback for where `start` is not supported
|
text-align: left; // Fallback for where `start` is not supported
|
||||||
text-align: start; // stylelint-disable-line declaration-block-no-duplicate-properties
|
text-align: start;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
text-transform: none;
|
text-transform: none;
|
||||||
|
|||||||
+1
@@ -3,4 +3,5 @@
|
|||||||
@mixin size($width, $height: $width) {
|
@mixin size($width, $height: $width) {
|
||||||
width: $width;
|
width: $width;
|
||||||
height: $height;
|
height: $height;
|
||||||
|
@include deprecate("`size()`", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,9 +6,11 @@
|
|||||||
#{$parent} {
|
#{$parent} {
|
||||||
color: $color !important;
|
color: $color !important;
|
||||||
}
|
}
|
||||||
|
@if $emphasized-link-hover-darken-percentage != 0 {
|
||||||
a#{$parent} {
|
a#{$parent} {
|
||||||
@include hover-focus {
|
@include hover-focus {
|
||||||
color: darken($color, $emphasized-link-hover-darken-percentage) !important;
|
color: darken($color, $emphasized-link-hover-darken-percentage) !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-3
@@ -7,7 +7,5 @@
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border: 0;
|
border: 0;
|
||||||
|
|
||||||
@if ($ignore-warning != true) {
|
@include deprecate("`text-hide()`", "v4.1.0", "v5", $ignore-warning);
|
||||||
@warn "The `text-hide()` mixin has been deprecated as of v4.1.0. It will be removed entirely in v5.";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@if $enable-prefers-reduced-motion-media-query {
|
@if $enable-prefers-reduced-motion-media-query {
|
||||||
@media screen and (prefers-reduced-motion: reduce) {
|
@media (prefers-reduced-motion: reduce) {
|
||||||
transition: none;
|
transition: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,4 +4,5 @@
|
|||||||
|
|
||||||
@mixin invisible($visibility) {
|
@mixin invisible($visibility) {
|
||||||
visibility: $visibility !important;
|
visibility: $visibility !important;
|
||||||
|
@include deprecate("`invisible()`", "v4.3.0", "v5");
|
||||||
}
|
}
|
||||||
|
|||||||
+13
-1
@@ -1,4 +1,4 @@
|
|||||||
// stylelint-disable declaration-no-important
|
// stylelint-disable property-blacklist, declaration-no-important
|
||||||
|
|
||||||
//
|
//
|
||||||
// Border
|
// Border
|
||||||
@@ -30,26 +30,38 @@
|
|||||||
// Border-radius
|
// Border-radius
|
||||||
//
|
//
|
||||||
|
|
||||||
|
.rounded-sm {
|
||||||
|
border-radius: $border-radius-sm !important;
|
||||||
|
}
|
||||||
|
|
||||||
.rounded {
|
.rounded {
|
||||||
border-radius: $border-radius !important;
|
border-radius: $border-radius !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rounded-top {
|
.rounded-top {
|
||||||
border-top-left-radius: $border-radius !important;
|
border-top-left-radius: $border-radius !important;
|
||||||
border-top-right-radius: $border-radius !important;
|
border-top-right-radius: $border-radius !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rounded-right {
|
.rounded-right {
|
||||||
border-top-right-radius: $border-radius !important;
|
border-top-right-radius: $border-radius !important;
|
||||||
border-bottom-right-radius: $border-radius !important;
|
border-bottom-right-radius: $border-radius !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rounded-bottom {
|
.rounded-bottom {
|
||||||
border-bottom-right-radius: $border-radius !important;
|
border-bottom-right-radius: $border-radius !important;
|
||||||
border-bottom-left-radius: $border-radius !important;
|
border-bottom-left-radius: $border-radius !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rounded-left {
|
.rounded-left {
|
||||||
border-top-left-radius: $border-radius !important;
|
border-top-left-radius: $border-radius !important;
|
||||||
border-bottom-left-radius: $border-radius !important;
|
border-bottom-left-radius: $border-radius !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.rounded-lg {
|
||||||
|
border-radius: $border-radius-lg !important;
|
||||||
|
}
|
||||||
|
|
||||||
.rounded-circle {
|
.rounded-circle {
|
||||||
border-radius: 50% !important;
|
border-radius: 50% !important;
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-18
@@ -8,15 +8,9 @@
|
|||||||
@include media-breakpoint-up($breakpoint) {
|
@include media-breakpoint-up($breakpoint) {
|
||||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||||
|
|
||||||
.d#{$infix}-none { display: none !important; }
|
@each $value in $displays {
|
||||||
.d#{$infix}-inline { display: inline !important; }
|
.d#{$infix}-#{$value} { display: $value !important; }
|
||||||
.d#{$infix}-inline-block { display: inline-block !important; }
|
}
|
||||||
.d#{$infix}-block { display: block !important; }
|
|
||||||
.d#{$infix}-table { display: table !important; }
|
|
||||||
.d#{$infix}-table-row { display: table-row !important; }
|
|
||||||
.d#{$infix}-table-cell { display: table-cell !important; }
|
|
||||||
.d#{$infix}-flex { display: flex !important; }
|
|
||||||
.d#{$infix}-inline-flex { display: inline-flex !important; }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -26,13 +20,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
@media print {
|
@media print {
|
||||||
.d-print-none { display: none !important; }
|
@each $value in $displays {
|
||||||
.d-print-inline { display: inline !important; }
|
.d-print-#{$value} { display: $value !important; }
|
||||||
.d-print-inline-block { display: inline-block !important; }
|
}
|
||||||
.d-print-block { display: block !important; }
|
|
||||||
.d-print-table { display: table !important; }
|
|
||||||
.d-print-table-row { display: table-row !important; }
|
|
||||||
.d-print-table-cell { display: table-cell !important; }
|
|
||||||
.d-print-flex { display: flex !important; }
|
|
||||||
.d-print-inline-flex { display: inline-flex !important; }
|
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-3
@@ -1,9 +1,11 @@
|
|||||||
|
// stylelint-disable declaration-no-important
|
||||||
|
|
||||||
@each $breakpoint in map-keys($grid-breakpoints) {
|
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||||
@include media-breakpoint-up($breakpoint) {
|
@include media-breakpoint-up($breakpoint) {
|
||||||
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
|
||||||
|
|
||||||
.float#{$infix}-left { @include float-left; }
|
.float#{$infix}-left { float: left !important; }
|
||||||
.float#{$infix}-right { @include float-right; }
|
.float#{$infix}-right { float: right !important; }
|
||||||
.float#{$infix}-none { @include float-none; }
|
.float#{$infix}-none { float: none !important; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
//
|
||||||
|
// Stretched link
|
||||||
|
//
|
||||||
|
|
||||||
|
.stretched-link {
|
||||||
|
&::after {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 1;
|
||||||
|
// Just in case `pointer-events: none` is set on a parent
|
||||||
|
pointer-events: auto;
|
||||||
|
content: "";
|
||||||
|
// IE10 bugfix, see https://stackoverflow.com/questions/16947967/ie10-hover-pseudo-class-doesnt-work-without-background-color
|
||||||
|
background-color: rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
+6
-1
@@ -4,7 +4,7 @@
|
|||||||
// Text
|
// Text
|
||||||
//
|
//
|
||||||
|
|
||||||
.text-monospace { font-family: $font-family-monospace; }
|
.text-monospace { font-family: $font-family-monospace !important; }
|
||||||
|
|
||||||
// Alignment
|
// Alignment
|
||||||
|
|
||||||
@@ -62,6 +62,11 @@
|
|||||||
|
|
||||||
.text-decoration-none { text-decoration: none !important; }
|
.text-decoration-none { text-decoration: none !important; }
|
||||||
|
|
||||||
|
.text-break {
|
||||||
|
word-break: break-word !important; // IE & < Edge 18
|
||||||
|
overflow-wrap: break-word !important;
|
||||||
|
}
|
||||||
|
|
||||||
// Reset
|
// Reset
|
||||||
|
|
||||||
.text-reset { color: inherit !important; }
|
.text-reset { color: inherit !important; }
|
||||||
|
|||||||
+4
-2
@@ -1,11 +1,13 @@
|
|||||||
|
// stylelint-disable declaration-no-important
|
||||||
|
|
||||||
//
|
//
|
||||||
// Visibility utilities
|
// Visibility utilities
|
||||||
//
|
//
|
||||||
|
|
||||||
.visible {
|
.visible {
|
||||||
@include invisible(visible);
|
visibility: visible !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.invisible {
|
.invisible {
|
||||||
@include invisible(hidden);
|
visibility: hidden !important;
|
||||||
}
|
}
|
||||||
|
|||||||
+204
@@ -0,0 +1,204 @@
|
|||||||
|
// stylelint-disable property-blacklist, scss/dollar-variable-default
|
||||||
|
|
||||||
|
// SCSS RFS mixin
|
||||||
|
//
|
||||||
|
// Automated font-resizing
|
||||||
|
//
|
||||||
|
// See https://github.com/twbs/rfs
|
||||||
|
|
||||||
|
// Configuration
|
||||||
|
|
||||||
|
// Base font size
|
||||||
|
$rfs-base-font-size: 1.25rem !default;
|
||||||
|
$rfs-font-size-unit: rem !default;
|
||||||
|
|
||||||
|
// Breakpoint at where font-size starts decreasing if screen width is smaller
|
||||||
|
$rfs-breakpoint: 1200px !default;
|
||||||
|
$rfs-breakpoint-unit: px !default;
|
||||||
|
|
||||||
|
// Resize font-size based on screen height and width
|
||||||
|
$rfs-two-dimensional: false !default;
|
||||||
|
|
||||||
|
// Factor of decrease
|
||||||
|
$rfs-factor: 10 !default;
|
||||||
|
|
||||||
|
@if type-of($rfs-factor) != "number" or $rfs-factor <= 1 {
|
||||||
|
@error "`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1.";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Generate enable or disable classes. Possibilities: false, "enable" or "disable"
|
||||||
|
$rfs-class: false !default;
|
||||||
|
|
||||||
|
// 1 rem = $rfs-rem-value px
|
||||||
|
$rfs-rem-value: 16 !default;
|
||||||
|
|
||||||
|
// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14
|
||||||
|
$rfs-safari-iframe-resize-bug-fix: false !default;
|
||||||
|
|
||||||
|
// Disable RFS by setting $enable-responsive-font-sizes to false
|
||||||
|
$enable-responsive-font-sizes: true !default;
|
||||||
|
|
||||||
|
// Cache $rfs-base-font-size unit
|
||||||
|
$rfs-base-font-size-unit: unit($rfs-base-font-size);
|
||||||
|
|
||||||
|
// Remove px-unit from $rfs-base-font-size for calculations
|
||||||
|
@if $rfs-base-font-size-unit == "px" {
|
||||||
|
$rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1);
|
||||||
|
}
|
||||||
|
@else if $rfs-base-font-size-unit == "rem" {
|
||||||
|
$rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1 / $rfs-rem-value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cache $rfs-breakpoint unit to prevent multiple calls
|
||||||
|
$rfs-breakpoint-unit-cache: unit($rfs-breakpoint);
|
||||||
|
|
||||||
|
// Remove unit from $rfs-breakpoint for calculations
|
||||||
|
@if $rfs-breakpoint-unit-cache == "px" {
|
||||||
|
$rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1);
|
||||||
|
}
|
||||||
|
@else if $rfs-breakpoint-unit-cache == "rem" or $rfs-breakpoint-unit-cache == "em" {
|
||||||
|
$rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1 / $rfs-rem-value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Responsive font-size mixin
|
||||||
|
@mixin rfs($fs, $important: false) {
|
||||||
|
// Cache $fs unit
|
||||||
|
$fs-unit: if(type-of($fs) == "number", unit($fs), false);
|
||||||
|
|
||||||
|
// Add !important suffix if needed
|
||||||
|
$rfs-suffix: if($important, " !important", "");
|
||||||
|
|
||||||
|
// If $fs isn't a number (like inherit) or $fs has a unit (not px or rem, like 1.5em) or $ is 0, just print the value
|
||||||
|
@if not $fs-unit or $fs-unit != "" and $fs-unit != "px" and $fs-unit != "rem" or $fs == 0 {
|
||||||
|
font-size: #{$fs}#{$rfs-suffix};
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
// Variables for storing static and fluid rescaling
|
||||||
|
$rfs-static: null;
|
||||||
|
$rfs-fluid: null;
|
||||||
|
|
||||||
|
// Remove px-unit from $fs for calculations
|
||||||
|
@if $fs-unit == "px" {
|
||||||
|
$fs: $fs / ($fs * 0 + 1);
|
||||||
|
}
|
||||||
|
@else if $fs-unit == "rem" {
|
||||||
|
$fs: $fs / ($fs * 0 + 1 / $rfs-rem-value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set default font-size
|
||||||
|
@if $rfs-font-size-unit == rem {
|
||||||
|
$rfs-static: #{$fs / $rfs-rem-value}rem#{$rfs-suffix};
|
||||||
|
}
|
||||||
|
@else if $rfs-font-size-unit == px {
|
||||||
|
$rfs-static: #{$fs}px#{$rfs-suffix};
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
@error "`#{$rfs-font-size-unit}` is not a valid unit for $rfs-font-size-unit. Use `px` or `rem`.";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Only add media query if font-size is bigger as the minimum font-size
|
||||||
|
// If $rfs-factor == 1, no rescaling will take place
|
||||||
|
@if $fs > $rfs-base-font-size and $enable-responsive-font-sizes {
|
||||||
|
$min-width: null;
|
||||||
|
$variable-unit: null;
|
||||||
|
|
||||||
|
// Calculate minimum font-size for given font-size
|
||||||
|
$fs-min: $rfs-base-font-size + ($fs - $rfs-base-font-size) / $rfs-factor;
|
||||||
|
|
||||||
|
// Calculate difference between given font-size and minimum font-size for given font-size
|
||||||
|
$fs-diff: $fs - $fs-min;
|
||||||
|
|
||||||
|
// Base font-size formatting
|
||||||
|
// No need to check if the unit is valid, because we did that before
|
||||||
|
$min-width: if($rfs-font-size-unit == rem, #{$fs-min / $rfs-rem-value}rem, #{$fs-min}px);
|
||||||
|
|
||||||
|
// If two-dimensional, use smallest of screen width and height
|
||||||
|
$variable-unit: if($rfs-two-dimensional, vmin, vw);
|
||||||
|
|
||||||
|
// Calculate the variable width between 0 and $rfs-breakpoint
|
||||||
|
$variable-width: #{$fs-diff * 100 / $rfs-breakpoint}#{$variable-unit};
|
||||||
|
|
||||||
|
// Set the calculated font-size.
|
||||||
|
$rfs-fluid: calc(#{$min-width} + #{$variable-width}) #{$rfs-suffix};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Rendering
|
||||||
|
@if $rfs-fluid == null {
|
||||||
|
// Only render static font-size if no fluid font-size is available
|
||||||
|
font-size: $rfs-static;
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
$mq-value: null;
|
||||||
|
|
||||||
|
// RFS breakpoint formatting
|
||||||
|
@if $rfs-breakpoint-unit == em or $rfs-breakpoint-unit == rem {
|
||||||
|
$mq-value: #{$rfs-breakpoint / $rfs-rem-value}#{$rfs-breakpoint-unit};
|
||||||
|
}
|
||||||
|
@else if $rfs-breakpoint-unit == px {
|
||||||
|
$mq-value: #{$rfs-breakpoint}px;
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
@error "`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`.";
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $rfs-class == "disable" {
|
||||||
|
// Adding an extra class increases specificity,
|
||||||
|
// which prevents the media query to override the font size
|
||||||
|
&,
|
||||||
|
.disable-responsive-font-size &,
|
||||||
|
&.disable-responsive-font-size {
|
||||||
|
font-size: $rfs-static;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
font-size: $rfs-static;
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $rfs-two-dimensional {
|
||||||
|
@media (max-width: #{$mq-value}), (max-height: #{$mq-value}) {
|
||||||
|
@if $rfs-class == "enable" {
|
||||||
|
.enable-responsive-font-size &,
|
||||||
|
&.enable-responsive-font-size {
|
||||||
|
font-size: $rfs-fluid;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
font-size: $rfs-fluid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $rfs-safari-iframe-resize-bug-fix {
|
||||||
|
// stylelint-disable-next-line length-zero-no-unit
|
||||||
|
min-width: 0vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
@media (max-width: #{$mq-value}) {
|
||||||
|
@if $rfs-class == "enable" {
|
||||||
|
.enable-responsive-font-size &,
|
||||||
|
&.enable-responsive-font-size {
|
||||||
|
font-size: $rfs-fluid;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
font-size: $rfs-fluid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $rfs-safari-iframe-resize-bug-fix {
|
||||||
|
// stylelint-disable-next-line length-zero-no-unit
|
||||||
|
min-width: 0vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// The font-size & responsive-font-size mixin uses RFS to rescale font sizes
|
||||||
|
@mixin font-size($fs, $important: false) {
|
||||||
|
@include rfs($fs, $important);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin responsive-font-size($fs, $important: false) {
|
||||||
|
@include rfs($fs, $important);
|
||||||
|
}
|
||||||
Vendored
+12902
-12576
File diff suppressed because it is too large
Load Diff
Vendored
+5
-8
File diff suppressed because one or more lines are too long
Vendored
+11543
-11319
File diff suppressed because it is too large
Load Diff
Vendored
+5
-8
File diff suppressed because one or more lines are too long
Vendored
-38
@@ -1,38 +0,0 @@
|
|||||||
# @fortawesome/fontawesome-free - The Official Font Awesome 5 NPM package
|
|
||||||
|
|
||||||
> "I came here to chew bubblegum and install Font Awesome 5 - and I'm all out of bubblegum"
|
|
||||||
|
|
||||||
[](https://www.npmjs.com/package/@fortawesome/fontawesome-free)
|
|
||||||
|
|
||||||
## Installation
|
|
||||||
|
|
||||||
```
|
|
||||||
$ npm i --save @fortawesome/fontawesome-free
|
|
||||||
```
|
|
||||||
|
|
||||||
Or
|
|
||||||
|
|
||||||
```
|
|
||||||
$ yarn add @fortawesome/fontawesome-free
|
|
||||||
```
|
|
||||||
|
|
||||||
## What's included?
|
|
||||||
|
|
||||||
**This package includes all the same files available through our Free and Pro CDN.**
|
|
||||||
|
|
||||||
* /js - All JavaScript files associated with Font Awesome 5 SVG with JS
|
|
||||||
* /css - All CSS using the classic Web Fonts with CSS implementation
|
|
||||||
* /sprites - SVG icons packaged in a convenient sprite
|
|
||||||
* /scss, /less - CSS Pre-processor files for Web Fonts with CSS
|
|
||||||
* /webfonts - Accompanying files for Web Fonts with CSS
|
|
||||||
* /svg - Individual icon files in SVG format
|
|
||||||
|
|
||||||
## Documentation
|
|
||||||
|
|
||||||
Get started [here](https://fontawesome.com/get-started). Continue your journey [here](https://fontawesome.com/how-to-use).
|
|
||||||
|
|
||||||
Or go straight to the [API documentation](https://fontawesome.com/how-to-use/font-awesome-api).
|
|
||||||
|
|
||||||
## Issues and support
|
|
||||||
|
|
||||||
Start with [GitHub issues](https://github.com/FortAwesome/Font-Awesome/issues) and ping us on [Twitter](https://twitter.com/fontawesome) if you need to.
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user