Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e47682eb87 | |||
| edf474acea | |||
| 5af3e0e298 | |||
| 2aafa38085 | |||
| d91a29c6b7 | |||
| aa4aa15c54 | |||
| 88e706b44f | |||
| 2f5789aea8 | |||
| 2f9a30ebd3 | |||
| 2f4d38b4b2 |
@@ -1,3 +1,31 @@
|
||||
# 7.1.0
|
||||
## Feature
|
||||
- Support subscription payment methods
|
||||
- Support Shopware 6.7.2.0
|
||||
|
||||
## Bugfix
|
||||
- Fixed issue with shipping costs not being processed correctly
|
||||
|
||||
# 7.0.1
|
||||
## Feature
|
||||
- Add plugin version metric
|
||||
|
||||
## Bugfix
|
||||
- Fixed error message when refund amount exceeds total
|
||||
- Fixed bug where only 25 sales channels showed in the dropdown
|
||||
- Removed erroneous logs
|
||||
|
||||
# 7.0.0
|
||||
- Compatibility with Shopware 6.7.0
|
||||
|
||||
# 6.1.14
|
||||
- Disable Recreate Cart for Headless Storefront Order
|
||||
- Added the correct Exception Type to the finalize method
|
||||
|
||||
# 6.1.13
|
||||
- Updated English documentation
|
||||
- Added French, German and Italian documentation
|
||||
|
||||
# 6.1.12
|
||||
- Compatibility with 6.6.10.x
|
||||
- Prevent duplicate transactions being created when the first times out
|
||||
|
||||
@@ -1,3 +1,25 @@
|
||||
# 7.1.0
|
||||
– Unterstützung für Abonnement-Zahlungsmethoden
|
||||
– Support für Shopware 6.7.2.0
|
||||
– Problem mit fehlerhafter Bearbeitung der Versandkosten behoben
|
||||
|
||||
# 7.0.1
|
||||
- Plugin-Versionsmetrik hinzugefügt
|
||||
- Fehlermeldung behoben, wenn der Rückerstattungsbetrag den Gesamtbetrag überschreitet
|
||||
- Fehler behoben, bei dem nur 25 Vertriebskanäle in der Dropdown-Liste angezeigt wurden
|
||||
- Fehlerhafte Protokolle entfernt
|
||||
|
||||
# 7.0.0
|
||||
- Kompatibilität mit Shopware 6.7.0
|
||||
|
||||
# 6.1.14
|
||||
– Warenkorb neu erstellen für Headless Storefront Order deaktivieren
|
||||
– Der korrekte Ausnahmetyp wurde zur Finalisierungsmethode hinzugefügt
|
||||
|
||||
# 6.1.13
|
||||
– Englische Dokumentation aktualisiert
|
||||
– Französische, deutsche und italienische Dokumentation hinzugefügt
|
||||
|
||||
# 6.1.12
|
||||
- Kompatibilität mit 6.6.10.x
|
||||
- Verhindern Sie, dass beim ersten Timeout doppelte Transaktionen erstellt werden
|
||||
|
||||
@@ -4,76 +4,104 @@ VR Payment Integration for Shopware 6
|
||||
=============================
|
||||
|
||||
The VR Payment plugin wraps around the VR Payment API. This library facilitates your interaction with various services such as transactions.
|
||||
Please note that this plugin is for versions 6.5 and 6.6. For the 6.4 plugin please visit [our Shopware 6.4 plugin](https://github.com/vr-payment/shopware-6-4).
|
||||
Please note that this plugin is for versions 6.5, 6.6 or 6.7. For the 6.4 plugin please visit [our Shopware 6.4 plugin](https://github.com/vr-payment/shopware-6-4).
|
||||
|
||||
## Requirements
|
||||
|
||||
- Shopware 6.5.x or Shopware 6.6.x. See table below.
|
||||
- Shopware 6.7.x, 6.6.x or 6.5.x. See table below.
|
||||
- PHP minimum version supported by the each shop version.
|
||||
|
||||
## Supported versions
|
||||
## Documentation
|
||||
|
||||
___________________________________________________________________________________
|
||||
| Shopware 6 version | Plugin major version | Supported until |
|
||||
|-------------------------------|------------------------|------------------------|
|
||||
| Shopware 6.6.x | 6.x | Further notice |
|
||||
| Shopware 6.5.x | 5.x | October 2024 |
|
||||
-----------------------------------------------------------------------------------
|
||||
- For English documentation click [here](@WalleeDocPath(/docs/en/documentation.html))
|
||||
- Für die deutsche Dokumentation klicken Sie [hier](@WalleeDocPath(/docs/de/documentation.html))
|
||||
- Pour la documentation Française, cliquez [ici](@WalleeDocPath(/docs/fr/documentation.html))
|
||||
- Per la documentazione in tedesco, clicca [qui](@WalleeDocPath(/docs/it/documentation.html))
|
||||
|
||||
## Installation
|
||||
|
||||
You can use **Composer** or **install manually**
|
||||
|
||||
### Composer
|
||||
|
||||
The preferred method is via [composer](https://getcomposer.org). Follow the
|
||||
[installation instructions](https://getcomposer.org/doc/00-intro.md) if you do not already have
|
||||
composer installed.
|
||||
|
||||
Once composer is installed, execute the following command from the shop root to install the plugin:
|
||||
### **Via Composer (Recommended)**
|
||||
1. Navigate to your Shopware root directory.
|
||||
2. Run:
|
||||
|
||||
```bash
|
||||
Copy
|
||||
composer require vrpayment/shopware-6
|
||||
php bin/console plugin:refresh
|
||||
php bin/console plugin:install --activate --clearCache VRPaymentPayment
|
||||
```
|
||||
|
||||
#### Update via composer
|
||||
```bash
|
||||
composer update vrpayment/shopware-6
|
||||
php bin/console plugin:refresh
|
||||
php bin/console plugin:install --activate --clearCache VRPaymentPayment
|
||||
```
|
||||
|
||||
### Manual Installation
|
||||
|
||||
Alternatively you can download the package in its entirety. The [Releases](../../releases) page lists all stable versions.
|
||||
|
||||
Uncompress the zip file you download, and include the autoloader in your project:
|
||||
1. Download the latest [Release](../../releases)
|
||||
2. Extract the ZIP to custom/plugins/VRPaymentPayment.
|
||||
|
||||
```bash
|
||||
# unzip to ShopwareInstallDir/custom/plugins/VRPaymentPayment
|
||||
# For versions 6.1.10 and older, the SDK is installed automatically when installing the plugin in the shop, so you don't need to
|
||||
# run the following command.
|
||||
composer require vrpayment/sdk 4.8.0
|
||||
php bin/console plugin:refresh
|
||||
php bin/console plugin:install --activate --clearCache VRPaymentPayment
|
||||
Copy
|
||||
bin/console plugin:refresh
|
||||
bin/console plugin:install --activate --clearCache VRPaymentPayment
|
||||
```
|
||||
|
||||
## Usage
|
||||
The library needs to be configured with your account's space id, user id, and application key which are available in your VR Payment
|
||||
account dashboard.
|
||||
## Configuration
|
||||
### API Credentials
|
||||
|
||||
1. Navigate to Shopware Admin > Settings > VRPayment Payment.
|
||||
2. Enter your Space ID, User ID, and API Key (obtained from the [VR Payment Portal](https://gateway.vr-payment.de/)).
|
||||
|
||||
### Payment Methods
|
||||
|
||||
Configure supported methods (e.g., credit cards, Apple Pay) via the [VR Payment Portal](https://gateway.vr-payment.de/).
|
||||
|
||||
### Key Features
|
||||
**iFrame Integration**: Embed payment forms directly into your checkout.
|
||||
|
||||
**Refunds & Captures**: Trigger full/partial refunds and captures from Shopware or the [VR Payment Portal](https://gateway.vr-payment.de/).
|
||||
|
||||
**Multi-Store Support**: Manage configurations across multiple stores.
|
||||
|
||||
**Automatic Updates**: Payment methods sync dynamically via the VRPayment API.
|
||||
|
||||
**Subscriptions**: Make recurring payments with Subscriptions (Shopware Commercial) and VRPayment.
|
||||
|
||||
## Compatibiliity
|
||||
|
||||
___________________________________________________________________________________
|
||||
| Shopware 6 version | Plugin major version | Supported until |
|
||||
|-------------------------------|------------------------|------------------------|
|
||||
| Shopware 6.7.x | 7.x | Further notice |
|
||||
| Shopware 6.6.x | 6.x | December 2025 |
|
||||
| Shopware 6.5.x | 5.x | October 2024 |
|
||||
-----------------------------------------------------------------------------------
|
||||
|
||||
### Troubleshooting
|
||||
**Logs**: Check payment logs with:
|
||||
|
||||
### Logs and debugging
|
||||
To view the logs please run the command below:
|
||||
```bash
|
||||
cd shopware/install/dir
|
||||
Copy
|
||||
tail -f var/log/vrpayment_payment*.log
|
||||
```
|
||||
### Common Issues:
|
||||
|
||||
## Documentation
|
||||
Ensure composer update vrpayment/shopware-6 is run after updates.
|
||||
|
||||
[Documentation](https://gateway.vr-payment.de/doc/shopware-6/6.1.12/docs/en/documentation.html)
|
||||
Verify API credentials match your VRPayment account.
|
||||
|
||||
## FAQs
|
||||
**Q: Does this plugin support one-click payments?**
|
||||
A: Yes, via tokenization in the VRPayment Portal.
|
||||
|
||||
**Q: How do I handle PCI compliance?**
|
||||
A: The plugin uses iFrame integration, reducing PCI requirements to SAQ-A.
|
||||
|
||||
### Changelog
|
||||
For version-specific updates, see the [GitHub Releases](https://github.com/vr-payment/shopware-6/releases).
|
||||
|
||||
### Contributing
|
||||
Report issues via GitHub Issues.
|
||||
|
||||
Follow the Shopware Plugin Base Guide for development.
|
||||
|
||||
This template combines technical clarity with user-friendly guidance. For advanced customization (e.g., overriding templates or payment handlers), refer to the Shopware Documentation.
|
||||
|
||||
## License
|
||||
|
||||
|
||||
@@ -53,11 +53,11 @@
|
||||
"ext-json": "*",
|
||||
"ext-mbstring": "*",
|
||||
"php": ">=8.2",
|
||||
"shopware/core": "~6.6.0",
|
||||
"shopware/administration": "~6.6.0",
|
||||
"shopware/storefront":"~6.6.0",
|
||||
"shopware/core": "~6.7.0",
|
||||
"shopware/administration": "~6.7.0",
|
||||
"shopware/storefront":"~6.7.0",
|
||||
"vrpayment/sdk": "^4.0.0"
|
||||
},
|
||||
"type": "shopware-platform-plugin",
|
||||
"version": "6.1.12"
|
||||
"version": "7.1.0"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,692 @@
|
||||
* {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
*:before, *:after {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
font-family: sans-serif;
|
||||
line-height: 1.15;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
-ms-overflow-style: scrollbar;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
|
||||
@-ms-viewport {
|
||||
width: device-width;
|
||||
}
|
||||
|
||||
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
font-size: 1rem;
|
||||
font-weight: 300;
|
||||
line-height: 1.5;
|
||||
color: #212529;
|
||||
text-align: left;
|
||||
background-color: #fff;
|
||||
padding-right: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
html,body {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
[tabindex="-1"]:focus {
|
||||
outline: 0 !important;
|
||||
}
|
||||
|
||||
hr {
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.5rem;
|
||||
font-weight: 200;
|
||||
margin-bottom: 1.875rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.625rem;
|
||||
font-weight: 300;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3rem;
|
||||
font-weight: 300;
|
||||
margin-top: 1.3rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.125rem;
|
||||
font-weight: 400;
|
||||
margin-top: 1.875rem;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 1rem;
|
||||
font-weight: bold;
|
||||
margin-top: 1.875rem;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
p {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
abbr[title], abbr[data-original-title] {
|
||||
text-decoration: underline;
|
||||
-webkit-text-decoration: underline dotted;
|
||||
text-decoration: underline dotted;
|
||||
cursor: help;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
address {
|
||||
margin-bottom: 1rem;
|
||||
font-style: normal;
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
ol, ul, dl {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
ol ol, ul ul, ol ul, ul ol {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin-bottom: .5rem;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
b, strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
sub, sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -.5em;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #007bff;
|
||||
text-decoration: none;
|
||||
background-color: transparent;
|
||||
-webkit-text-decoration-skip: objects;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #0056b3;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]) {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]):focus {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
pre, code, kbd, samp {
|
||||
font-family: monospace, monospace;
|
||||
font-size: 90%;
|
||||
padding: 2px 4px 2px 4px;
|
||||
color: #c7254e;
|
||||
background-color: #f9f2f4;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
overflow: auto;
|
||||
-ms-overflow-style: scrollbar;
|
||||
}
|
||||
|
||||
figure {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
img {
|
||||
vertical-align: middle;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
caption {
|
||||
padding-top: 8px;
|
||||
padding-bottom: 8px;
|
||||
color: #a7a7a7;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
th {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
output {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
summary {
|
||||
display: list-item;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
table col[class*="col-"] {
|
||||
position: static;
|
||||
float: none;
|
||||
display: table-column;
|
||||
}
|
||||
|
||||
table td[class*="col-"],table th[class*="col-"] {
|
||||
position: static;
|
||||
float: none;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
ol.glossary {
|
||||
counter-reset: glossary-counter;
|
||||
list-style: none;
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
ol.glossary li {
|
||||
counter-increment: glossary-counter;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
ol.glossary li::before {
|
||||
content: counter(glossary-counter);
|
||||
position: absolute;
|
||||
background-color: #73EAA9;
|
||||
color: #fff;
|
||||
border-radius: 100px;
|
||||
width: 24px;
|
||||
left: -40px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
line-height: 24px;
|
||||
}
|
||||
|
||||
.layout-wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
.layout-title {
|
||||
padding: 1.875rem 0;
|
||||
border-bottom: 1px solid #f0f0f0;
|
||||
}
|
||||
|
||||
.layout-title h1 {
|
||||
font-size: 3rem;
|
||||
font-weight: 200;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.layout-title h2 {
|
||||
font-size: 2rem;
|
||||
font-weight: 200;
|
||||
text-align: center;
|
||||
color: #999;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.layout-navigation .nav {
|
||||
padding: 1.875rem 0;
|
||||
border-bottom: 1px solid #f0f0f0;
|
||||
text-align: center;
|
||||
background: #fff;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li > a {
|
||||
border: 1px solid #007bff;
|
||||
border-radius: 100px;
|
||||
padding: 6px 12px;
|
||||
margin: 0 8px;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li > a:hover, .layout-navigation .nav > li > a:active, .layout-navigation .nav > li > a:focus {
|
||||
border: 1px solid #0056b3;
|
||||
color: #0056b3;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.layout-content {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.layout-content:before, .layout-content:after {
|
||||
content: " ";
|
||||
display: table;
|
||||
}
|
||||
|
||||
.layout-content:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
width: 25%;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.layout-content .col-right-wrapper {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
padding: 2.5rem 2rem 0;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 75%;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.layout-content .col-body:before, .layout-content .col-body:after {
|
||||
content: " ";
|
||||
display: table;
|
||||
}
|
||||
|
||||
.layout-content .col-body:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.layout-content .col-body-wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
padding: 2.5rem 2rem 0;
|
||||
}
|
||||
|
||||
.nav {
|
||||
padding-left: 0;
|
||||
margin-bottom: 0;
|
||||
list-style: none;
|
||||
line-height: 2;
|
||||
}
|
||||
|
||||
.table-of-contents {
|
||||
padding: 1.25rem 0;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-number {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-title {
|
||||
color: #212529;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
flex-grow: 1;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-title:hover {
|
||||
color: #0056b3;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li.extended > a .item-title, .table-of-contents .nav > li.active > a .item-title, .table-of-contents .nav > li.extended > a .item-title:hover, .table-of-contents .nav > li.active > a .item-title:hover {
|
||||
color: #007bff;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav {
|
||||
display: none;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > a {
|
||||
padding-left: 1rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > a .item-title {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > .nav > li > a {
|
||||
padding-left: 2rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > .nav > li > a .item-title {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li.active > .nav {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.chapter {
|
||||
margin: 0 0 6rem;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
.section {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
|
||||
.chapter > .chapter-title h1, .chapter > .chapter-title h2, .chapter > .chapter-title h3, .chapter > .chapter-title h4, .chapter > .chapter-title h5, .chapter > .chapter-title h6, .section > .section-title h1, .section > .section-title h2, .section > .section-title h3, .section > .section-title h4, .section > .section-title h5, .section > .section-title h6 {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.chapter > .chapter-title h1 {
|
||||
border-bottom: 2px solid #eeeeee;
|
||||
margin-bottom: 1.5rem;
|
||||
padding-bottom: 0.2em;
|
||||
}
|
||||
|
||||
.chapter-title .title-number, .section-title .title-number {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.paragraph {
|
||||
line-height: 1.75em;
|
||||
}
|
||||
|
||||
.paragraph + .paragraph {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
.dlist {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.dlist dl dt {
|
||||
float: left;
|
||||
width: 160px;
|
||||
clear: left;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.dlist dl dd {
|
||||
margin-left: 180px;
|
||||
}
|
||||
|
||||
.ulist {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.imageblock {
|
||||
margin: 30px auto;
|
||||
}
|
||||
|
||||
.imageblock .content img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.imageblock .title {
|
||||
padding: 10px 0 0;
|
||||
}
|
||||
|
||||
.exampleblock, .quoteblock, .literalblock {
|
||||
background: #f5f4f4;
|
||||
padding: 20px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.exampleblock .title, .quoteblock .title, .literalblock .title {
|
||||
text-transform: uppercase;
|
||||
font-size: 0.75em;
|
||||
font-weight: 400;
|
||||
color: #979797;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.quoteblock blockquote {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
.quoteblock blockquote p:last-child, .quoteblock blockquote ul:last-child, .quoteblock blockquote ol:last-child {
|
||||
margin-bottom: 9px;
|
||||
}
|
||||
|
||||
.literalblock pre {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.listingblock {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.listingblock pre {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.listingblock pre code {
|
||||
display: block;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.admonitionblock {
|
||||
line-height: 1.8em;
|
||||
padding: 20px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.admonitionblock .icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.admonitionblock.important {
|
||||
background: #fce1e1;
|
||||
border-left: 5px solid #ff6060;
|
||||
}
|
||||
|
||||
.admonitionblock.note, .admonitionblock.tip {
|
||||
background: #e0f2fc;
|
||||
border-left: 5px solid #88d5ff;
|
||||
}
|
||||
|
||||
.admonitionblock.caution, .admonitionblock.warning {
|
||||
background: #fdf3d8;
|
||||
border-left: 5px solid #f1c654;
|
||||
}
|
||||
|
||||
table.tableblock {
|
||||
background-color: #fff;
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
margin-bottom: 18px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th, table.tableblock > tbody > tr > th, table.tableblock > tfoot > tr > th, table.tableblock > thead > tr > td, table.tableblock > tbody > tr > td, table.tableblock > tfoot > tr > td {
|
||||
padding: 8px;
|
||||
line-height: 1.42857143;
|
||||
vertical-align: top;
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th {
|
||||
vertical-align: bottom;
|
||||
border-bottom: 2px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock > caption + thead > tr:first-child > th, table.tableblock > colgroup + thead > tr:first-child > th, table.tableblock > thead:first-child > tr:first-child > th, table.tableblock > caption + thead > tr:first-child > td, table.tableblock > colgroup + thead > tr:first-child > td, table.tableblock > thead:first-child > tr:first-child > td {
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
table.tableblock > tbody + tbody {
|
||||
border-top: 2px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock .table {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
table.tableblock > tbody > tr:nth-of-type(odd) {
|
||||
background-color: #f7f7f7;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th p:last-child, table.tableblock > tbody > tr > th p:last-child, table.tableblock > tfoot > tr > th p:last-child, table.tableblock > thead > tr > td p:last-child, table.tableblock > tbody > tr > td p:last-child, table.tableblock > tfoot > tr > td p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.loaded .table-of-contents .nav .nav {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.layout-wrapper .layout-title, .layout-wrapper .layout-navigation, .layout-wrapper .layout-content {
|
||||
max-width: 1200px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 991px) {
|
||||
html {
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@media print {
|
||||
body {
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.layout-title h1 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.chapter {
|
||||
margin-bottom: 3rem;
|
||||
}
|
||||
|
||||
.section {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
(function($){
|
||||
|
||||
hljs.initHighlightingOnLoad();
|
||||
|
||||
$(document).ready(function(){
|
||||
$('.col-right-wrapper').stick_in_parent({
|
||||
parent: '.layout-content'
|
||||
});
|
||||
$('body').scrollspy({
|
||||
target: '.table-of-contents'
|
||||
});
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
|
||||
Monokai Sublime style. Derived from Monokai by noformnocontent http://nn.mit-license.org/
|
||||
|
||||
*/
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
padding: 0.5em;
|
||||
background: #23241f;
|
||||
}
|
||||
|
||||
.hljs,
|
||||
.hljs-tag,
|
||||
.hljs-subst {
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
.hljs-strong,
|
||||
.hljs-emphasis {
|
||||
color: #a8a8a2;
|
||||
}
|
||||
|
||||
.hljs-bullet,
|
||||
.hljs-quote,
|
||||
.hljs-number,
|
||||
.hljs-regexp,
|
||||
.hljs-literal,
|
||||
.hljs-link {
|
||||
color: #ae81ff;
|
||||
}
|
||||
|
||||
.hljs-code,
|
||||
.hljs-title,
|
||||
.hljs-section,
|
||||
.hljs-selector-class {
|
||||
color: #a6e22e;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-name,
|
||||
.hljs-attr {
|
||||
color: #f92672;
|
||||
}
|
||||
|
||||
.hljs-symbol,
|
||||
.hljs-attribute {
|
||||
color: #66d9ef;
|
||||
}
|
||||
|
||||
.hljs-params,
|
||||
.hljs-class .hljs-title {
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-type,
|
||||
.hljs-built_in,
|
||||
.hljs-builtin-name,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-attr,
|
||||
.hljs-selector-pseudo,
|
||||
.hljs-addition,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable {
|
||||
color: #e6db74;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-deletion,
|
||||
.hljs-meta {
|
||||
color: #75715e;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.7
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
!function(r){"use strict";function o(t,s){this.$body=r(document.body),this.$scrollElement=r(t).is(document.body)?r(window):r(t),this.options=r.extend({},o.DEFAULTS,s),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",r.proxy(this.process,this)),this.refresh(),this.process()}function s(i){return this.each(function(){var t=r(this),s=t.data("bs.scrollspy"),e="object"==typeof i&&i;s||t.data("bs.scrollspy",s=new o(this,e)),"string"==typeof i&&s[i]()})}o.VERSION="3.3.7",o.DEFAULTS={offset:10},o.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},o.prototype.refresh=function(){var t=this,i="offset",o=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),r.isWindow(this.$scrollElement[0])||(i="position",o=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var t=r(this),s=t.data("target")||t.attr("href"),e=/^#./.test(s)&&r(s);return e&&e.length&&e.is(":visible")&&[[e[i]().top+o,s]]||null}).sort(function(t,s){return t[0]-s[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},o.prototype.process=function(){var t,s=this.$scrollElement.scrollTop()+this.options.offset,e=this.getScrollHeight(),i=this.options.offset+e-this.$scrollElement.height(),o=this.offsets,r=this.targets,l=this.activeTarget;if(this.scrollHeight!=e&&this.refresh(),i<=s)return l!=(t=r[r.length-1])&&this.activate(t);if(l&&s<o[0])return this.activeTarget=null,this.clear();for(t=o.length;t--;)l!=r[t]&&s>=o[t]&&(void 0===o[t+1]||s<o[t+1])&&this.activate(r[t])},o.prototype.activate=function(t){this.activeTarget=t,this.clear();var s=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',e=r(s).parents("li").addClass("active");e.parent(".dropdown-menu").length&&(e=e.closest("li.dropdown").addClass("active")),e.trigger("activate.bs.scrollspy")},o.prototype.clear=function(){r(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var t=r.fn.scrollspy;r.fn.scrollspy=s,r.fn.scrollspy.Constructor=o,r.fn.scrollspy.noConflict=function(){return r.fn.scrollspy=t,this},r(window).on("load.bs.scrollspy.data-api",function(){r('[data-spy="scroll"]').each(function(){var t=r(this);s.call(t,t.data())})})}(jQuery);
|
||||
@@ -0,0 +1,5 @@
|
||||
/**
|
||||
@license Sticky-kit v1.1.2 | WTFPL | Leaf Corcoran 2015 | http://leafo.net
|
||||
*/
|
||||
|
||||
(function(){var M,Q;M=this.jQuery||window.jQuery,Q=M(window),M.fn.stick_in_parent=function(t){var x,o,C,i,e,P,s,V,F,z,r,I,A,j;for(null==t&&(t={}),j=t.sticky_class,P=t.inner_scrolling,A=t.recalc_every,I=t.parent,F=t.offset_top,z=t.offset_bottom,V=t.spacer,C=t.bottoming,null==F&&(F=0),null==z&&(z=0),null==I&&(I=void 0),null==P&&(P=!0),null==j&&(j="is_stuck"),x=M(document),null==C&&(C=!0),r=function(t){var o,i;return window.getComputedStyle?(t[0],o=window.getComputedStyle(t[0]),i=parseFloat(o.getPropertyValue("width"))+parseFloat(o.getPropertyValue("margin-left"))+parseFloat(o.getPropertyValue("margin-right")),"border-box"!==o.getPropertyValue("box-sizing")&&(i+=parseFloat(o.getPropertyValue("border-left-width"))+parseFloat(o.getPropertyValue("border-right-width"))+parseFloat(o.getPropertyValue("padding-left"))+parseFloat(o.getPropertyValue("padding-right"))),i):t.outerWidth(!0)},i=function(n,l,a,c,p,d,u,f){var h,t,g,m,k,y,b,v,o,_,w,e;if(!n.data("sticky_kit")){if(n.data("sticky_kit",!0),k=x.height(),b=n.parent(),null!=I&&(b=b.closest(I)),!b.length)throw"failed to find stick parent";return h=g=!1,(w=null!=V?V&&n.closest(V):M('<div class="sticky-kit-manual-spacer" />'))&&w.css("position",n.css("position")),(v=function(){var t,o,i;if(!f)return k=x.height(),t=parseInt(b.css("border-top-width"),10),o=parseInt(b.css("padding-top"),10),l=parseInt(b.css("padding-bottom"),10),a=b.offset().top+t+o,c=b.height(),g&&(h=g=!1,null==V&&(n.insertAfter(w),w.detach()),n.css({position:"",top:"",width:"",bottom:""}).removeClass(j),i=!0),p=n.offset().top-(parseInt(n.css("margin-top"),10)||0)-F,d=n.outerHeight(!0),u=n.css("float"),w&&w.css({width:r(n),height:d,display:n.css("display"),"vertical-align":n.css("vertical-align"),float:u}),i?e():void 0})(),m=void 0,y=F,_=A,e=function(){var t,o,i,e,s,r;if(d!==c&&!f)return i=!1,null!=_&&(_-=1)<=0&&(_=A,v(),i=!0),i||x.height()===k||(v(),i=!0),e=Q.scrollTop(),null!=m&&(o=e-m),m=e,g?(C&&(s=c+a<e+d+y+z,h&&!s&&(h=!1,n.css({position:"fixed",bottom:"",top:y}).removeClass("is_bottomed").trigger("sticky_kit:unbottom"))),e<p&&(g=!1,y=F,null==V&&("left"!==u&&"right"!==u||n.insertAfter(w),w.detach()),t={position:"",width:"",top:""},n.css(t).removeClass(j).trigger("sticky_kit:unstick")),P&&(r=Q.height())<d+F&&(h||(y-=o,y=Math.max(r-d,y),y=Math.min(F,y),g&&n.css({top:y+"px"})))):p<e&&(g=!0,(t={position:"fixed",top:y}).width="border-box"===n.css("box-sizing")?n.outerWidth()+"px":n.width()+"px",n.css(t).addClass(j),null==V&&(n.after(w),"left"!==u&&"right"!==u||w.append(n)),n.trigger("sticky_kit:stick")),g&&C&&(null==s&&(s=c+a<e+d+y+z),!h&&s)?(h=!0,"static"===b.css("position")&&b.css({position:"relative"}),n.css({position:"absolute",bottom:l+z,top:"auto"}).addClass("is_bottomed").trigger("sticky_kit:bottom")):void 0},o=function(){return v(),e()},t=function(){if(f=!0,Q.off("touchmove",e),Q.off("scroll",e),Q.off("resize",o),M(document.body).off("sticky_kit:recalc",o),n.off("sticky_kit:detach",t),n.removeData("sticky_kit"),n.css({position:"",bottom:"",top:"",width:""}),b.position("position",""),g)return null==V&&("left"!==u&&"right"!==u||n.insertAfter(w),w.remove()),n.removeClass(j)},Q.on("touchmove",e),Q.on("scroll",e),Q.on("resize",o),M(document.body).on("sticky_kit:recalc",o),n.on("sticky_kit:detach",t),setTimeout(e,0)}},e=0,s=this.length;e<s;e++)o=this[e],i(M(o));return this}}).call(this);
|
||||
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 97 KiB |
|
After Width: | Height: | Size: 9.2 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 105 KiB |
|
After Width: | Height: | Size: 83 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 116 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 309 KiB |
|
After Width: | Height: | Size: 372 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 99 KiB |
|
After Width: | Height: | Size: 152 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 106 KiB |
|
After Width: | Height: | Size: 193 KiB |
|
After Width: | Height: | Size: 60 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 97 KiB |
|
After Width: | Height: | Size: 9.2 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 105 KiB |
|
After Width: | Height: | Size: 83 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 116 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 309 KiB |
|
After Width: | Height: | Size: 372 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 99 KiB |
|
After Width: | Height: | Size: 152 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 106 KiB |
|
After Width: | Height: | Size: 193 KiB |
|
After Width: | Height: | Size: 60 KiB |
@@ -0,0 +1,692 @@
|
||||
* {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
*:before, *:after {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
font-family: sans-serif;
|
||||
line-height: 1.15;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
-ms-overflow-style: scrollbar;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
}
|
||||
|
||||
@-ms-viewport {
|
||||
width: device-width;
|
||||
}
|
||||
|
||||
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
font-size: 1rem;
|
||||
font-weight: 300;
|
||||
line-height: 1.5;
|
||||
color: #212529;
|
||||
text-align: left;
|
||||
background-color: #fff;
|
||||
padding-right: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
html,body {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
[tabindex="-1"]:focus {
|
||||
outline: 0 !important;
|
||||
}
|
||||
|
||||
hr {
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.5rem;
|
||||
font-weight: 200;
|
||||
margin-bottom: 1.875rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.625rem;
|
||||
font-weight: 300;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3rem;
|
||||
font-weight: 300;
|
||||
margin-top: 1.3rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.125rem;
|
||||
font-weight: 400;
|
||||
margin-top: 1.875rem;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 1rem;
|
||||
font-weight: bold;
|
||||
margin-top: 1.875rem;
|
||||
margin-bottom: 1.3rem;
|
||||
}
|
||||
|
||||
p {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
abbr[title], abbr[data-original-title] {
|
||||
text-decoration: underline;
|
||||
-webkit-text-decoration: underline dotted;
|
||||
text-decoration: underline dotted;
|
||||
cursor: help;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
address {
|
||||
margin-bottom: 1rem;
|
||||
font-style: normal;
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
ol, ul, dl {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
ol ol, ul ul, ol ul, ul ol {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin-bottom: .5rem;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
b, strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
sub, sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -.5em;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #007bff;
|
||||
text-decoration: none;
|
||||
background-color: transparent;
|
||||
-webkit-text-decoration-skip: objects;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #0056b3;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]) {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:not([href]):not([tabindex]):focus {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
pre, code, kbd, samp {
|
||||
font-family: monospace, monospace;
|
||||
font-size: 90%;
|
||||
padding: 2px 4px 2px 4px;
|
||||
color: #c7254e;
|
||||
background-color: #f9f2f4;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
overflow: auto;
|
||||
-ms-overflow-style: scrollbar;
|
||||
}
|
||||
|
||||
figure {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
img {
|
||||
vertical-align: middle;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
caption {
|
||||
padding-top: 8px;
|
||||
padding-bottom: 8px;
|
||||
color: #a7a7a7;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
th {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
output {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
summary {
|
||||
display: list-item;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
table col[class*="col-"] {
|
||||
position: static;
|
||||
float: none;
|
||||
display: table-column;
|
||||
}
|
||||
|
||||
table td[class*="col-"],table th[class*="col-"] {
|
||||
position: static;
|
||||
float: none;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
ol.glossary {
|
||||
counter-reset: glossary-counter;
|
||||
list-style: none;
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
ol.glossary li {
|
||||
counter-increment: glossary-counter;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
ol.glossary li::before {
|
||||
content: counter(glossary-counter);
|
||||
position: absolute;
|
||||
background-color: #73EAA9;
|
||||
color: #fff;
|
||||
border-radius: 100px;
|
||||
width: 24px;
|
||||
left: -40px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
line-height: 24px;
|
||||
}
|
||||
|
||||
.layout-wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
.layout-title {
|
||||
padding: 1.875rem 0;
|
||||
border-bottom: 1px solid #f0f0f0;
|
||||
}
|
||||
|
||||
.layout-title h1 {
|
||||
font-size: 3rem;
|
||||
font-weight: 200;
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.layout-title h2 {
|
||||
font-size: 2rem;
|
||||
font-weight: 200;
|
||||
text-align: center;
|
||||
color: #999;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.layout-navigation .nav {
|
||||
padding: 1.875rem 0;
|
||||
border-bottom: 1px solid #f0f0f0;
|
||||
text-align: center;
|
||||
background: #fff;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li > a {
|
||||
border: 1px solid #007bff;
|
||||
border-radius: 100px;
|
||||
padding: 6px 12px;
|
||||
margin: 0 8px;
|
||||
}
|
||||
|
||||
.layout-navigation .nav > li > a:hover, .layout-navigation .nav > li > a:active, .layout-navigation .nav > li > a:focus {
|
||||
border: 1px solid #0056b3;
|
||||
color: #0056b3;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.layout-content {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.layout-content:before, .layout-content:after {
|
||||
content: " ";
|
||||
display: table;
|
||||
}
|
||||
|
||||
.layout-content:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
width: 25%;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.layout-content .col-right-wrapper {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
padding: 2.5rem 2rem 0;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 75%;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.layout-content .col-body:before, .layout-content .col-body:after {
|
||||
content: " ";
|
||||
display: table;
|
||||
}
|
||||
|
||||
.layout-content .col-body:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.layout-content .col-body-wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
padding: 2.5rem 2rem 0;
|
||||
}
|
||||
|
||||
.nav {
|
||||
padding-left: 0;
|
||||
margin-bottom: 0;
|
||||
list-style: none;
|
||||
line-height: 2;
|
||||
}
|
||||
|
||||
.table-of-contents {
|
||||
padding: 1.25rem 0;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-number {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-title {
|
||||
color: #212529;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
flex-grow: 1;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li > a .item-title:hover {
|
||||
color: #0056b3;
|
||||
}
|
||||
|
||||
.table-of-contents .nav > li.extended > a .item-title, .table-of-contents .nav > li.active > a .item-title, .table-of-contents .nav > li.extended > a .item-title:hover, .table-of-contents .nav > li.active > a .item-title:hover {
|
||||
color: #007bff;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav {
|
||||
display: none;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > a {
|
||||
padding-left: 1rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > a .item-title {
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > .nav > li > a {
|
||||
padding-left: 2rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li > .nav > li > .nav > li > a .item-title {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
.table-of-contents > .nav > li.active > .nav {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.chapter {
|
||||
margin: 0 0 6rem;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
.section {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
|
||||
.chapter > .chapter-title h1, .chapter > .chapter-title h2, .chapter > .chapter-title h3, .chapter > .chapter-title h4, .chapter > .chapter-title h5, .chapter > .chapter-title h6, .section > .section-title h1, .section > .section-title h2, .section > .section-title h3, .section > .section-title h4, .section > .section-title h5, .section > .section-title h6 {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.chapter > .chapter-title h1 {
|
||||
border-bottom: 2px solid #eeeeee;
|
||||
margin-bottom: 1.5rem;
|
||||
padding-bottom: 0.2em;
|
||||
}
|
||||
|
||||
.chapter-title .title-number, .section-title .title-number {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.paragraph {
|
||||
line-height: 1.75em;
|
||||
}
|
||||
|
||||
.paragraph + .paragraph {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
.dlist {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.dlist dl dt {
|
||||
float: left;
|
||||
width: 160px;
|
||||
clear: left;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.dlist dl dd {
|
||||
margin-left: 180px;
|
||||
}
|
||||
|
||||
.ulist {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.imageblock {
|
||||
margin: 30px auto;
|
||||
}
|
||||
|
||||
.imageblock .content img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.imageblock .title {
|
||||
padding: 10px 0 0;
|
||||
}
|
||||
|
||||
.exampleblock, .quoteblock, .literalblock {
|
||||
background: #f5f4f4;
|
||||
padding: 20px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.exampleblock .title, .quoteblock .title, .literalblock .title {
|
||||
text-transform: uppercase;
|
||||
font-size: 0.75em;
|
||||
font-weight: 400;
|
||||
color: #979797;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.quoteblock blockquote {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
.quoteblock blockquote p:last-child, .quoteblock blockquote ul:last-child, .quoteblock blockquote ol:last-child {
|
||||
margin-bottom: 9px;
|
||||
}
|
||||
|
||||
.literalblock pre {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.listingblock {
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.listingblock pre {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.listingblock pre code {
|
||||
display: block;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.admonitionblock {
|
||||
line-height: 1.8em;
|
||||
padding: 20px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
.admonitionblock .icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.admonitionblock.important {
|
||||
background: #fce1e1;
|
||||
border-left: 5px solid #ff6060;
|
||||
}
|
||||
|
||||
.admonitionblock.note, .admonitionblock.tip {
|
||||
background: #e0f2fc;
|
||||
border-left: 5px solid #88d5ff;
|
||||
}
|
||||
|
||||
.admonitionblock.caution, .admonitionblock.warning {
|
||||
background: #fdf3d8;
|
||||
border-left: 5px solid #f1c654;
|
||||
}
|
||||
|
||||
table.tableblock {
|
||||
background-color: #fff;
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
margin-bottom: 18px;
|
||||
margin: 30px 0;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th, table.tableblock > tbody > tr > th, table.tableblock > tfoot > tr > th, table.tableblock > thead > tr > td, table.tableblock > tbody > tr > td, table.tableblock > tfoot > tr > td {
|
||||
padding: 8px;
|
||||
line-height: 1.42857143;
|
||||
vertical-align: top;
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th {
|
||||
vertical-align: bottom;
|
||||
border-bottom: 2px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock > caption + thead > tr:first-child > th, table.tableblock > colgroup + thead > tr:first-child > th, table.tableblock > thead:first-child > tr:first-child > th, table.tableblock > caption + thead > tr:first-child > td, table.tableblock > colgroup + thead > tr:first-child > td, table.tableblock > thead:first-child > tr:first-child > td {
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
table.tableblock > tbody + tbody {
|
||||
border-top: 2px solid #eee;
|
||||
}
|
||||
|
||||
table.tableblock .table {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
table.tableblock > tbody > tr:nth-of-type(odd) {
|
||||
background-color: #f7f7f7;
|
||||
}
|
||||
|
||||
table.tableblock > thead > tr > th p:last-child, table.tableblock > tbody > tr > th p:last-child, table.tableblock > tfoot > tr > th p:last-child, table.tableblock > thead > tr > td p:last-child, table.tableblock > tbody > tr > td p:last-child, table.tableblock > tfoot > tr > td p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.loaded .table-of-contents .nav .nav {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.layout-wrapper .layout-title, .layout-wrapper .layout-navigation, .layout-wrapper .layout-content {
|
||||
max-width: 1200px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 991px) {
|
||||
html {
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@media print {
|
||||
body {
|
||||
color: #000;
|
||||
font-family: Georgia, "Times New Roman", Times, serif;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.layout-title h1 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.layout-content .col-right {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.layout-content .col-body {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.chapter {
|
||||
margin-bottom: 3rem;
|
||||
}
|
||||
|
||||
.section {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
(function($){
|
||||
|
||||
hljs.initHighlightingOnLoad();
|
||||
|
||||
$(document).ready(function(){
|
||||
$('.col-right-wrapper').stick_in_parent({
|
||||
parent: '.layout-content'
|
||||
});
|
||||
$('body').scrollspy({
|
||||
target: '.table-of-contents'
|
||||
});
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
|
||||
Monokai Sublime style. Derived from Monokai by noformnocontent http://nn.mit-license.org/
|
||||
|
||||
*/
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
padding: 0.5em;
|
||||
background: #23241f;
|
||||
}
|
||||
|
||||
.hljs,
|
||||
.hljs-tag,
|
||||
.hljs-subst {
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
.hljs-strong,
|
||||
.hljs-emphasis {
|
||||
color: #a8a8a2;
|
||||
}
|
||||
|
||||
.hljs-bullet,
|
||||
.hljs-quote,
|
||||
.hljs-number,
|
||||
.hljs-regexp,
|
||||
.hljs-literal,
|
||||
.hljs-link {
|
||||
color: #ae81ff;
|
||||
}
|
||||
|
||||
.hljs-code,
|
||||
.hljs-title,
|
||||
.hljs-section,
|
||||
.hljs-selector-class {
|
||||
color: #a6e22e;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-name,
|
||||
.hljs-attr {
|
||||
color: #f92672;
|
||||
}
|
||||
|
||||
.hljs-symbol,
|
||||
.hljs-attribute {
|
||||
color: #66d9ef;
|
||||
}
|
||||
|
||||
.hljs-params,
|
||||
.hljs-class .hljs-title {
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-type,
|
||||
.hljs-built_in,
|
||||
.hljs-builtin-name,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-attr,
|
||||
.hljs-selector-pseudo,
|
||||
.hljs-addition,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable {
|
||||
color: #e6db74;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-deletion,
|
||||
.hljs-meta {
|
||||
color: #75715e;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.7
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
!function(r){"use strict";function o(t,s){this.$body=r(document.body),this.$scrollElement=r(t).is(document.body)?r(window):r(t),this.options=r.extend({},o.DEFAULTS,s),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",r.proxy(this.process,this)),this.refresh(),this.process()}function s(i){return this.each(function(){var t=r(this),s=t.data("bs.scrollspy"),e="object"==typeof i&&i;s||t.data("bs.scrollspy",s=new o(this,e)),"string"==typeof i&&s[i]()})}o.VERSION="3.3.7",o.DEFAULTS={offset:10},o.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},o.prototype.refresh=function(){var t=this,i="offset",o=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),r.isWindow(this.$scrollElement[0])||(i="position",o=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var t=r(this),s=t.data("target")||t.attr("href"),e=/^#./.test(s)&&r(s);return e&&e.length&&e.is(":visible")&&[[e[i]().top+o,s]]||null}).sort(function(t,s){return t[0]-s[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},o.prototype.process=function(){var t,s=this.$scrollElement.scrollTop()+this.options.offset,e=this.getScrollHeight(),i=this.options.offset+e-this.$scrollElement.height(),o=this.offsets,r=this.targets,l=this.activeTarget;if(this.scrollHeight!=e&&this.refresh(),i<=s)return l!=(t=r[r.length-1])&&this.activate(t);if(l&&s<o[0])return this.activeTarget=null,this.clear();for(t=o.length;t--;)l!=r[t]&&s>=o[t]&&(void 0===o[t+1]||s<o[t+1])&&this.activate(r[t])},o.prototype.activate=function(t){this.activeTarget=t,this.clear();var s=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',e=r(s).parents("li").addClass("active");e.parent(".dropdown-menu").length&&(e=e.closest("li.dropdown").addClass("active")),e.trigger("activate.bs.scrollspy")},o.prototype.clear=function(){r(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var t=r.fn.scrollspy;r.fn.scrollspy=s,r.fn.scrollspy.Constructor=o,r.fn.scrollspy.noConflict=function(){return r.fn.scrollspy=t,this},r(window).on("load.bs.scrollspy.data-api",function(){r('[data-spy="scroll"]').each(function(){var t=r(this);s.call(t,t.data())})})}(jQuery);
|
||||
@@ -0,0 +1,5 @@
|
||||
/**
|
||||
@license Sticky-kit v1.1.2 | WTFPL | Leaf Corcoran 2015 | http://leafo.net
|
||||
*/
|
||||
|
||||
(function(){var M,Q;M=this.jQuery||window.jQuery,Q=M(window),M.fn.stick_in_parent=function(t){var x,o,C,i,e,P,s,V,F,z,r,I,A,j;for(null==t&&(t={}),j=t.sticky_class,P=t.inner_scrolling,A=t.recalc_every,I=t.parent,F=t.offset_top,z=t.offset_bottom,V=t.spacer,C=t.bottoming,null==F&&(F=0),null==z&&(z=0),null==I&&(I=void 0),null==P&&(P=!0),null==j&&(j="is_stuck"),x=M(document),null==C&&(C=!0),r=function(t){var o,i;return window.getComputedStyle?(t[0],o=window.getComputedStyle(t[0]),i=parseFloat(o.getPropertyValue("width"))+parseFloat(o.getPropertyValue("margin-left"))+parseFloat(o.getPropertyValue("margin-right")),"border-box"!==o.getPropertyValue("box-sizing")&&(i+=parseFloat(o.getPropertyValue("border-left-width"))+parseFloat(o.getPropertyValue("border-right-width"))+parseFloat(o.getPropertyValue("padding-left"))+parseFloat(o.getPropertyValue("padding-right"))),i):t.outerWidth(!0)},i=function(n,l,a,c,p,d,u,f){var h,t,g,m,k,y,b,v,o,_,w,e;if(!n.data("sticky_kit")){if(n.data("sticky_kit",!0),k=x.height(),b=n.parent(),null!=I&&(b=b.closest(I)),!b.length)throw"failed to find stick parent";return h=g=!1,(w=null!=V?V&&n.closest(V):M('<div class="sticky-kit-manual-spacer" />'))&&w.css("position",n.css("position")),(v=function(){var t,o,i;if(!f)return k=x.height(),t=parseInt(b.css("border-top-width"),10),o=parseInt(b.css("padding-top"),10),l=parseInt(b.css("padding-bottom"),10),a=b.offset().top+t+o,c=b.height(),g&&(h=g=!1,null==V&&(n.insertAfter(w),w.detach()),n.css({position:"",top:"",width:"",bottom:""}).removeClass(j),i=!0),p=n.offset().top-(parseInt(n.css("margin-top"),10)||0)-F,d=n.outerHeight(!0),u=n.css("float"),w&&w.css({width:r(n),height:d,display:n.css("display"),"vertical-align":n.css("vertical-align"),float:u}),i?e():void 0})(),m=void 0,y=F,_=A,e=function(){var t,o,i,e,s,r;if(d!==c&&!f)return i=!1,null!=_&&(_-=1)<=0&&(_=A,v(),i=!0),i||x.height()===k||(v(),i=!0),e=Q.scrollTop(),null!=m&&(o=e-m),m=e,g?(C&&(s=c+a<e+d+y+z,h&&!s&&(h=!1,n.css({position:"fixed",bottom:"",top:y}).removeClass("is_bottomed").trigger("sticky_kit:unbottom"))),e<p&&(g=!1,y=F,null==V&&("left"!==u&&"right"!==u||n.insertAfter(w),w.detach()),t={position:"",width:"",top:""},n.css(t).removeClass(j).trigger("sticky_kit:unstick")),P&&(r=Q.height())<d+F&&(h||(y-=o,y=Math.max(r-d,y),y=Math.min(F,y),g&&n.css({top:y+"px"})))):p<e&&(g=!0,(t={position:"fixed",top:y}).width="border-box"===n.css("box-sizing")?n.outerWidth()+"px":n.width()+"px",n.css(t).addClass(j),null==V&&(n.after(w),"left"!==u&&"right"!==u||w.append(n)),n.trigger("sticky_kit:stick")),g&&C&&(null==s&&(s=c+a<e+d+y+z),!h&&s)?(h=!0,"static"===b.css("position")&&b.css({position:"relative"}),n.css({position:"absolute",bottom:l+z,top:"auto"}).addClass("is_bottomed").trigger("sticky_kit:bottom")):void 0},o=function(){return v(),e()},t=function(){if(f=!0,Q.off("touchmove",e),Q.off("scroll",e),Q.off("resize",o),M(document.body).off("sticky_kit:recalc",o),n.off("sticky_kit:detach",t),n.removeData("sticky_kit"),n.css({position:"",bottom:"",top:"",width:""}),b.position("position",""),g)return null==V&&("left"!==u&&"right"!==u||n.insertAfter(w),w.remove()),n.removeClass(j)},Q.on("touchmove",e),Q.on("scroll",e),Q.on("resize",o),M(document.body).on("sticky_kit:recalc",o),n.on("sticky_kit:detach",t),setTimeout(e,0)}},e=0,s=this.length;e<s;e++)o=this[e],i(M(o));return this}}).call(this);
|
||||
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 97 KiB |
|
After Width: | Height: | Size: 9.2 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 105 KiB |
|
After Width: | Height: | Size: 83 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 116 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 309 KiB |
|
After Width: | Height: | Size: 372 KiB |
|
After Width: | Height: | Size: 128 KiB |
|
After Width: | Height: | Size: 99 KiB |
|
After Width: | Height: | Size: 152 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |