From 489477be8446c4e2f575c7aac64d4d0991ac9d76 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 9 Nov 2017 11:21:10 +0100 Subject: [PATCH 01/20] =?UTF-8?q?1.Przygotowanie=20proj.:=20instalacja=20N?= =?UTF-8?q?ode=20Package=20Manager=20oraz=20konfiguracja=20zada=C5=84=20dl?= =?UTF-8?q?a=20gulp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ css/main.css | 5 +++++ dist/bundle.js | 0 gulpfile.js | 41 ++++++++++++++++++++++++++++++++++++++ index.html | 33 ++++++++++++++++++++++++++++++ js/ajax.js | 0 js/app.js | 2 ++ js/data.js | 3 +++ package.json | 31 ++++++++++++++++++++++++++++ sass/main.scss | 3 +++ sass/modules/_all.scss | 0 sass/modules/_colors.scss | 0 sass/partials/_base.scss | 0 sass/partials/_footer.scss | 0 sass/partials/_header.scss | 0 15 files changed, 120 insertions(+) create mode 100644 .gitignore create mode 100644 css/main.css create mode 100644 dist/bundle.js create mode 100644 gulpfile.js create mode 100644 index.html create mode 100644 js/ajax.js create mode 100644 js/app.js create mode 100644 js/data.js create mode 100644 package.json create mode 100644 sass/main.scss create mode 100644 sass/modules/_all.scss create mode 100644 sass/modules/_colors.scss create mode 100644 sass/partials/_base.scss create mode 100644 sass/partials/_footer.scss create mode 100644 sass/partials/_header.scss diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8ee8d20 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules +/node_modules \ No newline at end of file diff --git a/css/main.css b/css/main.css new file mode 100644 index 0000000..84a19f6 --- /dev/null +++ b/css/main.css @@ -0,0 +1,5 @@ +body { + background-color: #456; +} + +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1Njtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFBLElBQUksQ0FBQztFQUNILGdCQUFnQixFQUFFLElBQUk7Q0FDdkIifQ== */ diff --git a/dist/bundle.js b/dist/bundle.js new file mode 100644 index 0000000..e69de29 diff --git a/gulpfile.js b/gulpfile.js new file mode 100644 index 0000000..7eadaa4 --- /dev/null +++ b/gulpfile.js @@ -0,0 +1,41 @@ +var gulp = require('gulp'); +var sass = require('gulp-sass'); +var sourcemaps = require('gulp-sourcemaps'); +var browserSync = require('browser-sync').create(); +var watch = require('gulp-watch'); +var jslint = require('gulp-jslint'); // nie dodany do skryptu (zaintalowany) +var plumber = require('gulp-plumber'); // nie dodany do skryptu (zaintalowany) + + + +var Files = { + html: './index.html', + css_dest: './css', + scss_all: './sass/**/*.scss', + scss_main: './sass/*.scss' +} + + +gulp.task('sass', function(){ + + return gulp.src(Files.scss_main) + .pipe(sourcemaps.init()) + .pipe(sass({outputStyle: 'expanded'})) + .on('error', sass.logError) + .pipe(sourcemaps.write()) + .pipe(gulp.dest(Files.css_dest)) + .pipe(browserSync.stream()) +}); + +gulp.task('default', ['sass'], function(){ + + browserSync.init({ + server: { + baseDir: './' + } + }); + + gulp.watch(Files.scss_all, ['sass']); + gulp.watch(Files.html, browserSync.reload); + +}); diff --git a/index.html b/index.html new file mode 100644 index 0000000..3d2da90 --- /dev/null +++ b/index.html @@ -0,0 +1,33 @@ + + + + + + Zadanie rekrutacyjne + + + + +
+
+
+
+ +
+

+

+
+ +
+ + + + + + + diff --git a/js/ajax.js b/js/ajax.js new file mode 100644 index 0000000..e69de29 diff --git a/js/app.js b/js/app.js new file mode 100644 index 0000000..c853ca5 --- /dev/null +++ b/js/app.js @@ -0,0 +1,2 @@ +require("./data.js"); +require("./ajax.js"); diff --git a/js/data.js b/js/data.js new file mode 100644 index 0000000..3e91afb --- /dev/null +++ b/js/data.js @@ -0,0 +1,3 @@ +document.addEventListener("DOMContentLoaded", function () { + console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM +}); diff --git a/package.json b/package.json new file mode 100644 index 0000000..6f0de56 --- /dev/null +++ b/package.json @@ -0,0 +1,31 @@ +{ + "name": "frontend_recruitment", + "version": "1.0.0", + "description": "Zadanie rekrutacyjne", + "main": "index.js", + "scripts": { + "test": "test" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Vongriffe/frontend_recruitment.git", + "server": "webpack --config webpack.config.js" + }, + "author": "Kamel Boukoffa - Vongriffe", + "license": "ISC", + "bugs": { + "url": "https://github.com/Vongriffe/frontend_recruitment/issues" + }, + "homepage": "https://github.com/Vongriffe/frontend_recruitment#readme", + "devDependencies": { + "browser-sync": "^2.18.13", + "gulp": "^3.9.1", + "gulp-debug": "^3.1.0", + "gulp-jslint": "^1.0.10", + "gulp-plumber": "^1.1.0", + "gulp-sass": "^3.1.0", + "gulp-sourcemaps": "^2.6.1", + "gulp-watch": "^4.3.11", + "webpack": "^3.8.1" + } +} diff --git a/sass/main.scss b/sass/main.scss new file mode 100644 index 0000000..8f1f111 --- /dev/null +++ b/sass/main.scss @@ -0,0 +1,3 @@ +body { + background-color: #456; +} diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss new file mode 100644 index 0000000..e69de29 diff --git a/sass/modules/_colors.scss b/sass/modules/_colors.scss new file mode 100644 index 0000000..e69de29 diff --git a/sass/partials/_base.scss b/sass/partials/_base.scss new file mode 100644 index 0000000..e69de29 diff --git a/sass/partials/_footer.scss b/sass/partials/_footer.scss new file mode 100644 index 0000000..e69de29 diff --git a/sass/partials/_header.scss b/sass/partials/_header.scss new file mode 100644 index 0000000..e69de29 From 6cb5d0bd17f0b23102594caf4cc2bf11f0586d17 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 9 Nov 2017 11:50:23 +0100 Subject: [PATCH 02/20] 2.Dynamicznie zmieniany link do API --- js/data.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/js/data.js b/js/data.js index 3e91afb..116aad3 100644 --- a/js/data.js +++ b/js/data.js @@ -1,3 +1,14 @@ document.addEventListener("DOMContentLoaded", function () { + + var apiPath = "https://gwo.pl/booksApi/v1/search?query="; + var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie + + submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit + this.url = apiPath + encodeURI(userInput.value); + console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany + + }); + console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM + }); From 8c8e5ca618f6dcfc965edd501ee1b6f782f81e89 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 9 Nov 2017 12:04:41 +0100 Subject: [PATCH 03/20] 2a. poprawki: struktura html + wyszukanie w drzewie DOM input placeholder --- index.html | 36 ++++++++++++++++++++---------------- js/data.js | 4 ++++ 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/index.html b/index.html index 3d2da90..d59cf8f 100644 --- a/index.html +++ b/index.html @@ -1,33 +1,37 @@ - - - - Zadanie rekrutacyjne + + + + Zadanie rekrutacyjne + -
-
-
-
+
+
+
+
+ +

-
+
+
+ +
+
+
+
-
-
-
-
-
-
- +
+ diff --git a/js/data.js b/js/data.js index 116aad3..a3add2d 100644 --- a/js/data.js +++ b/js/data.js @@ -2,6 +2,10 @@ document.addEventListener("DOMContentLoaded", function () { var apiPath = "https://gwo.pl/booksApi/v1/search?query="; var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie + var userInput = document.getElementById("searchBook"); + + console.log(submit); + submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit this.url = apiPath + encodeURI(userInput.value); From 5868682f4b6e2702f3f127896100bfe72ada00fb Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 9 Nov 2017 13:51:28 +0100 Subject: [PATCH 04/20] 3.Pobranie listy API i przekazanie jej do struktury html --- dist/bundle.js | 160 ++++++++++++++++++++++++++++++++++++++++++++++ index.html | 3 +- js/data.js | 63 ++++++++++++++++-- package.json | 6 +- webpack.config.js | 6 ++ 5 files changed, 230 insertions(+), 8 deletions(-) create mode 100644 webpack.config.js diff --git a/dist/bundle.js b/dist/bundle.js index e69de29..eed1400 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -0,0 +1,160 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + +__webpack_require__(1); +__webpack_require__(2); + + +/***/ }), +/* 1 */ +/***/ (function(module, exports) { + +document.addEventListener("DOMContentLoaded", function () { + console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM + + var apiPath = "https://gwo.pl/booksApi/v1/search?query="; + var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie + var userInput = document.getElementById("searchBook"); + + var bookContainer = document.getElementById("show-data"); + var pageCounter = 1; + + submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit + this.url = apiPath + encodeURI(userInput.value); + console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany + + var ourRequest = new XMLHttpRequest(); + + ourRequest.open("GET", this.url); // używam metody "GET" aby pobrać dane + ourRequest.onload = function() { + + if (ourRequest.status >= 200 && ourRequest.status < 400) { + var ourData = JSON.parse(ourRequest.responseText); + renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). + + } else { + console.log("We connected to the server, but it returned an error."); + } + }; + + ourRequest.onerror = function() { + console.log("Connection error"); + }; + ourRequest.send(); + + + + function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer + pageCounter ++ + + var htmlString = ""; + + console.log(pageCounter); + + for (i = 0; i < data.length; i++) { + htmlString += + "
" + + "
" + '' + "
" + + "
" + + "
" + data[i].title + "
" + + "
" + data[i].author + "
" + + "
" + data[i].isbn + "
" + + "
" + data[i].men + "
" + + "
" + data[i].pages_count + "
" + + "
" + JSON.stringify(data[i].levels) + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - do poprawy + "
" + data[i].subject + "
" + + "
" + data[i].type + "
" + + "
" + "sprawdź" + "
" + + "
" + "
"; + + } + + if ( pageCounter > 3 ) { + + console.log("jak usunąć bookContainer przed przekazaniem parametru do API ? "); + bookContainer.insertAdjacentHTML("afterbegin", htmlString); + } + + bookContainer.insertAdjacentHTML("beforeend", htmlString); + + } + + }); + +}); + + +/***/ }), +/* 2 */ +/***/ (function(module, exports) { + + + +/***/ }) +/******/ ]); \ No newline at end of file diff --git a/index.html b/index.html index d59cf8f..0bdd9e0 100644 --- a/index.html +++ b/index.html @@ -32,6 +32,7 @@ - + + diff --git a/js/data.js b/js/data.js index a3add2d..e794638 100644 --- a/js/data.js +++ b/js/data.js @@ -1,18 +1,73 @@ document.addEventListener("DOMContentLoaded", function () { + console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM var apiPath = "https://gwo.pl/booksApi/v1/search?query="; var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie var userInput = document.getElementById("searchBook"); - console.log(submit); - + var bookContainer = document.getElementById("show-data"); + var pageCounter = 1; submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit this.url = apiPath + encodeURI(userInput.value); console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany - }); + var ourRequest = new XMLHttpRequest(); - console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM + ourRequest.open("GET", this.url); // używam metody "GET" aby pobrać dane + ourRequest.onload = function() { + + if (ourRequest.status >= 200 && ourRequest.status < 400) { + var ourData = JSON.parse(ourRequest.responseText); + renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). + + } else { + console.log("We connected to the server, but it returned an error."); + } + }; + + ourRequest.onerror = function() { + console.log("Connection error"); + }; + ourRequest.send(); + + + + function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer + pageCounter ++ + + var htmlString = ""; + + console.log(pageCounter); + + for (i = 0; i < data.length; i++) { + htmlString += + "
" + + "
" + '' + "
" + + "
" + + "
" + data[i].title + "
" + + "
" + data[i].author + "
" + + "
" + data[i].isbn + "
" + + "
" + data[i].men + "
" + + "
" + data[i].pages_count + "
" + + "
" + JSON.stringify(data[i].levels) + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - do poprawy + "
" + data[i].subject + "
" + + "
" + data[i].type + "
" + + "
" + "sprawdź" + "
" + + "
" + "
"; + + } + + if ( pageCounter > 3 ) { + + console.log("jak usunąć bookContainer przed przekazaniem parametru do API ? "); + bookContainer.insertAdjacentHTML("afterbegin", htmlString); + } + + bookContainer.insertAdjacentHTML("beforeend", htmlString); + + } + + }); }); diff --git a/package.json b/package.json index 6f0de56..7fc6a90 100644 --- a/package.json +++ b/package.json @@ -4,12 +4,12 @@ "description": "Zadanie rekrutacyjne", "main": "index.js", "scripts": { - "test": "test" + "test": "test", + "server": "webpack --config webpack.config.js" }, "repository": { "type": "git", - "url": "git+https://github.com/Vongriffe/frontend_recruitment.git", - "server": "webpack --config webpack.config.js" + "url": "git+https://github.com/Vongriffe/frontend_recruitment.git" }, "author": "Kamel Boukoffa - Vongriffe", "license": "ISC", diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000..0f994eb --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,6 @@ +module.exports = { + entry: './js/app.js', + output: { + filename: './dist/bundle.js' + } +}; From 85b1a0ccefa590dfa6cdff92ed14f53e9adeb754 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Fri, 10 Nov 2017 13:47:34 +0100 Subject: [PATCH 05/20] 3a. poprawne zwaracanie kodu HTML --- dist/bundle.js | 8 ++++---- index.html | 8 ++++---- js/data.js | 27 ++++++++------------------- package.json | 1 + 4 files changed, 17 insertions(+), 27 deletions(-) diff --git a/dist/bundle.js b/dist/bundle.js index eed1400..371c291 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -135,14 +135,14 @@ document.addEventListener("DOMContentLoaded", function () { } - if ( pageCounter > 3 ) { + if ( pageCounter > 2 ) { console.log("jak usunąć bookContainer przed przekazaniem parametru do API ? "); bookContainer.insertAdjacentHTML("afterbegin", htmlString); } - - bookContainer.insertAdjacentHTML("beforeend", htmlString); - + if ( pageCounter = 1 ) { + bookContainer.insertAdjacentHTML("beforeend", htmlString); + } } }); diff --git a/index.html b/index.html index 0bdd9e0..54534ef 100644 --- a/index.html +++ b/index.html @@ -17,11 +17,11 @@
-

+

-
+
@@ -32,7 +32,7 @@ - - + + diff --git a/js/data.js b/js/data.js index e794638..0755711 100644 --- a/js/data.js +++ b/js/data.js @@ -5,11 +5,13 @@ document.addEventListener("DOMContentLoaded", function () { var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie var userInput = document.getElementById("searchBook"); - var bookContainer = document.getElementById("show-data"); + var bookContainer = document.getElementById("showData"); + console.log(bookContainer); var pageCounter = 1; submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit - this.url = apiPath + encodeURI(userInput.value); + this.url = apiPath + encodeURI(userInput.value); + console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany var ourRequest = new XMLHttpRequest(); @@ -31,16 +33,14 @@ document.addEventListener("DOMContentLoaded", function () { }; ourRequest.send(); - - function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer - pageCounter ++ - + pageCounter++; var htmlString = ""; - console.log(pageCounter); + var line = document.createElement("div"); for (i = 0; i < data.length; i++) { + htmlString += "
" + "
" + '' + "
" + @@ -55,19 +55,8 @@ document.addEventListener("DOMContentLoaded", function () { "
" + data[i].type + "
" + "
" + "sprawdź" + "
" + "
" + ""; - } - - if ( pageCounter > 3 ) { - - console.log("jak usunąć bookContainer przed przekazaniem parametru do API ? "); - bookContainer.insertAdjacentHTML("afterbegin", htmlString); - } - - bookContainer.insertAdjacentHTML("beforeend", htmlString); - + document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } - }); - }); diff --git a/package.json b/package.json index 7fc6a90..5edef76 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "homepage": "https://github.com/Vongriffe/frontend_recruitment#readme", "devDependencies": { "browser-sync": "^2.18.13", + "fast-json": "^1.1.0", "gulp": "^3.9.1", "gulp-debug": "^3.1.0", "gulp-jslint": "^1.0.10", From e67f1c577ad9e08f02de6d20e07108ee1c6bc5b5 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Fri, 10 Nov 2017 13:48:47 +0100 Subject: [PATCH 06/20] 3a. poprawne zwaracanie kodu HTML z wykorzystaniem atrybutu innerHTML --- js/data.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/data.js b/js/data.js index 0755711..ce3cccd 100644 --- a/js/data.js +++ b/js/data.js @@ -56,7 +56,7 @@ document.addEventListener("DOMContentLoaded", function () { "
" + "sprawdź" + "
" + "" + ""; } - document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. + document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } }); }); From 38bb4bfefec07a7166b3b9eb18f62d3d70af256b Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Fri, 10 Nov 2017 16:21:44 +0100 Subject: [PATCH 07/20] 4. ostylowanie wyszukiwarki --- css/main.css | 55 +++++++++++++++++++++++++++++++++++-- index.html | 1 + sass/main.scss | 58 ++++++++++++++++++++++++++++++++++++++- sass/modules/_all.scss | 39 ++++++++++++++++++++++++++ sass/modules/_colors.scss | 3 ++ 5 files changed, 153 insertions(+), 3 deletions(-) diff --git a/css/main.css b/css/main.css index 84a19f6..f1ca5f3 100644 --- a/css/main.css +++ b/css/main.css @@ -1,5 +1,56 @@ +section form input { + box-sizing: border-box; + display: block; + width: 100%; + border-width: 1px; + border-style: solid; + padding: 16px; + outline: 0; + font-family: inherit; + font-size: 0.95em; +} + +section form, section #showData { + padding: 1rem; + width: 45rem; + margin: 10px auto; +} + body { - background-color: #456; + background: #FFF; + font-family: 'Open Sans', sans-serif; +} + +section form { + font-size: 16px; +} + +section form input[type="submit"] { + background: #d5041f; + border-color: transparent; + color: #FFF; + cursor: pointer; +} + +section #showData .book { + display: flex; + justify-content: center; + height: 18rem; + margin: 10px auto; + width: 45rem; + border: 1px solid #555; + text-align: left; +} + +section #showData .book .bookImage { + width: 40%; + background-size: cover; + background-repeat: no-repeat; + background-color: transparent; +} + +footer { + background-color: #fe6103; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1Njtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFBLElBQUksQ0FBQztFQUNILGdCQUFnQixFQUFFLElBQUk7Q0FDdkIifQ== */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNmZWZiMDMsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjZmVmYjAzLFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuYm9keSB7XG4gIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBiYWNrZ291bmRDb2xvcik7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbn1cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgLmJvb2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxOHJlbTtcbiAgICAgIG1hcmdpbjoxMHB4IGF1dG87XG4gICAgICB3aWR0aDogNDVyZW07XG4gICAgICAvLyBwYWRkaW5nOiAxMHB4O1xuICAgICAgLy8gYmFja2dyb3VuZDogcmVkO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzU1NTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuICBmb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gIH1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiIsIlxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4laW5wdXQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAwLjk1ZW07XG4gIH1cblxuICAlZm9ybSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICB3aWR0aDogNDVyZW07XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIH1cblxuICAlYnV0dG9uIHtcbiAgICAkY29sb3I6ICM1YTU3ZmY7XG4gICAgJGNvbG9yLWFsdDogI2ZmYzcwMDtcblxuICAgIGNvbG9yOiAkY29sb3ItYWx0O1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IGdyYXlzY2FsZSgkY29sb3ItYWx0KTtcblxuICAgIH1cbiAgfVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCQSxBRVpBLE9GWU8sQ0FFTCxJQUFJLENBS0YsS0FBSyxDRW5CRjtFQUNILFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsR0FBRztFQUNqQixZQUFZLEVBQUUsS0FBSztFQUNuQixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FBVyxFQUFFLE9BQU87RUFDcEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FGRUgsQUVBRSxPRkFLLENBRUwsSUFBSSxFQUZOLEFFQUUsT0ZBSyxDQVlMLFNBQVMsQ0VaSDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsU0FBUztDQUNsQjs7QUZUSCxBQUFBLElBQUksQ0FBQztFQUNILFVBQVUsRUFQSSxJQUFJO0VBUWxCLFdBQVcsRUFBRSx1QkFBdUI7Q0FDckM7O0FBRUQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0VBRUgsU0FBUyxFQUFFLElBQUk7Q0FNaEI7O0FBVkgsQUVuQkUsT0ZtQkssQ0FFTCxJQUFJLENFckJKLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsRUFBZTtFQUNuQixVQUFVLEVGQ04sT0FBTztFRUFYLFlBQVksRUFBRSxXQUFXO0VBQ3pCLEtBQUssRUZFQyxJQUFJO0VFRFYsTUFBTSxFQUFFLE9BQU87Q0FDaEI7O0FGY0gsQUFjSSxPQWRHLENBWUwsU0FBUyxDQUVQLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLE1BQU07RUFDdkIsTUFBTSxFQUFFLEtBQUs7RUFDYixNQUFNLEVBQUMsU0FBUztFQUNoQixLQUFLLEVBQUUsS0FBSztFQUdaLE1BQU0sRUFBRSxjQUFjO0VBQ3RCLFVBQVUsRUFBRSxJQUFJO0NBUWpCOztBQS9CTCxBQXlCTSxPQXpCQyxDQVlMLFNBQVMsQ0FFUCxLQUFLLENBV0gsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLEdBQUc7RUFDVixlQUFlLEVBQUUsS0FBSztFQUN0QixpQkFBaUIsRUFBRSxTQUFTO0VBQzVCLGdCQUFnQixFQUFFLFdBQVc7Q0FDOUI7O0FBS0wsQUFBQSxNQUFNLENBQUM7RUFDTCxnQkFBZ0IsRUE3Q1AsT0FBTztDQThDakIifQ== */ diff --git a/index.html b/index.html index 54534ef..d79f9d8 100644 --- a/index.html +++ b/index.html @@ -4,6 +4,7 @@ + Zadanie rekrutacyjne diff --git a/sass/main.scss b/sass/main.scss index 8f1f111..bfc3569 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,3 +1,59 @@ +@import "modules/_colors"; +@import "modules/_all"; + +$mapOfPrimarColors: +(redGwo:#d5041f, +orangeGwo: #fefb03, +yellowGwo: #f5bf00, +whiteGwo: #FFF); + +$mapOfColors: +(backgoundColor:#FFF, +textColor: #fefb03, +footerColor: #fe6103, +linkCoror: #00c6ff, +hoverColor: #9600ff); + body { - background-color: #456; + background: map-get($mapOfColors, backgoundColor); + font-family: 'Open Sans', sans-serif; } + +section { + + form { + @extend %form ; + font-size: 16px; + + @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); + input { + @extend %input; + } + } + + #showData { + @extend %form ; + .book { + display: flex; + justify-content: center; + height: 18rem; + margin:10px auto; + width: 45rem; + // padding: 10px; + // background: red; + border: 1px solid #555; + text-align: left; + + .bookImage { + width: 40%; + background-size: cover; + background-repeat: no-repeat; + background-color: transparent; + } + } + } +} + + footer { + background-color: map-get($mapOfColors, footerColor); + } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index e69de29..4d5b29e 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -0,0 +1,39 @@ + +@mixin inputSubmit($colorBackground, $color ) { + input[type="submit"] { + background: $colorBackground; + border-color: transparent; + color: $color; + cursor: pointer; + } +} +%input { + box-sizing: border-box; + display: block; + width: 100%; + border-width: 1px; + border-style: solid; + padding: 16px; + outline: 0; + font-family: inherit; + font-size: 0.95em; + } + + %form { + padding: 1rem; + width: 45rem; + margin: 10px auto; + } + + %button { + $color: #5a57ff; + $color-alt: #ffc700; + + color: $color-alt; + background: lighten($color, 20%); + &:hover { + color: lighten($color, 100%); + background: grayscale($color-alt); + + } + } diff --git a/sass/modules/_colors.scss b/sass/modules/_colors.scss index e69de29..73de0c6 100644 --- a/sass/modules/_colors.scss +++ b/sass/modules/_colors.scss @@ -0,0 +1,3 @@ +$primary-color: #ea8300; +$additional-color: #d5041f; +$complementary-color: #f5bf00; From 9b5ccb1567ef25a3477b2f9a08b3f9b53d61a2ad Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sat, 11 Nov 2017 01:18:30 +0100 Subject: [PATCH 08/20] =?UTF-8?q?5.=20ostylowanie=20wyszukiwarki=20+=20dyn?= =?UTF-8?q?amiczne=20dodanie=20breakpoint=20jak=20i=20podmian=C4=99=20brac?= =?UTF-8?q?kets=C3=B3w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/main.css | 104 +++++++++++++++++++++++++++++++++++------ js/data.js | 7 +-- sass/main.scss | 53 ++++++++++++--------- sass/modules/_all.scss | 73 +++++++++++++++++++++++++++++ 4 files changed, 197 insertions(+), 40 deletions(-) diff --git a/css/main.css b/css/main.css index f1ca5f3..21f0db4 100644 --- a/css/main.css +++ b/css/main.css @@ -1,3 +1,14 @@ +section #showData:after, section #showData:before { + content: ""; + display: block; + clear: both; +} + +section #showData .book { + float: left; + display: block; +} + section form input { box-sizing: border-box; display: block; @@ -14,6 +25,14 @@ section form, section #showData { padding: 1rem; width: 45rem; margin: 10px auto; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); + border-radius: 1px; +} + +* { + box-sizing: border-box; + margin: 0; + padding: 0; } body { @@ -21,6 +40,10 @@ body { font-family: 'Open Sans', sans-serif; } +h2 { + color: #ea8300; +} + section form { font-size: 16px; } @@ -30,27 +53,80 @@ section form input[type="submit"] { border-color: transparent; color: #FFF; cursor: pointer; + margin-top: 16px; } -section #showData .book { - display: flex; - justify-content: center; - height: 18rem; - margin: 10px auto; - width: 45rem; - border: 1px solid #555; - text-align: left; +section form #submit { + background: #d5041f; + color: #FFF; + border: 0; + font-size: 18px; + border-radius: 2px; + transition: .6s; + overflow: hidden; } -section #showData .book .bookImage { - width: 40%; - background-size: cover; - background-repeat: no-repeat; - background-color: transparent; +section form #submit:focus { + outline: 0; +} + +section form #submit:before { + content: ''; + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.5); + width: 60px; + height: 100%; + left: 0; + top: 0; + opacity: .5; + filter: blur(30px); + transform: translateX(-100px) skewX(-15deg); +} + +section form #submit:after { + content: ''; + display: block; + position: absolute; + background: rgba(255, 255, 255, 0.2); + width: 30px; + height: 100%; + left: 30px; + top: 0; + opacity: 0; + filter: blur(5px); + transform: translateX(-100px) skewX(-15deg); +} + +section form #submit:hover { + background: #ea8300; + cursor: pointer; +} + +section form #submit:hover:before { + transform: translateX(300px) skewX(-15deg); + opacity: 0.6; + transition: .7s; +} + +section form #submit:hover:after { + transform: translateX(300px) skewX(-15deg); + opacity: 1; + transition: .7s; +} + +section #showData { + font-size: 12px; +} + +section #showData .book { + margin-bottom: 10px; + width: 50%; + padding: 1rem; } footer { background-color: #fe6103; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNmZWZiMDMsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjZmVmYjAzLFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuYm9keSB7XG4gIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBiYWNrZ291bmRDb2xvcik7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbn1cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgLmJvb2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxOHJlbTtcbiAgICAgIG1hcmdpbjoxMHB4IGF1dG87XG4gICAgICB3aWR0aDogNDVyZW07XG4gICAgICAvLyBwYWRkaW5nOiAxMHB4O1xuICAgICAgLy8gYmFja2dyb3VuZDogcmVkO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzU1NTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuICBmb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gIH1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiIsIlxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4laW5wdXQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAwLjk1ZW07XG4gIH1cblxuICAlZm9ybSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICB3aWR0aDogNDVyZW07XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIH1cblxuICAlYnV0dG9uIHtcbiAgICAkY29sb3I6ICM1YTU3ZmY7XG4gICAgJGNvbG9yLWFsdDogI2ZmYzcwMDtcblxuICAgIGNvbG9yOiAkY29sb3ItYWx0O1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IGdyYXlzY2FsZSgkY29sb3ItYWx0KTtcblxuICAgIH1cbiAgfVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCQSxBRVpBLE9GWU8sQ0FFTCxJQUFJLENBS0YsS0FBSyxDRW5CRjtFQUNILFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsR0FBRztFQUNqQixZQUFZLEVBQUUsS0FBSztFQUNuQixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FBVyxFQUFFLE9BQU87RUFDcEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FGRUgsQUVBRSxPRkFLLENBRUwsSUFBSSxFQUZOLEFFQUUsT0ZBSyxDQVlMLFNBQVMsQ0VaSDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsU0FBUztDQUNsQjs7QUZUSCxBQUFBLElBQUksQ0FBQztFQUNILFVBQVUsRUFQSSxJQUFJO0VBUWxCLFdBQVcsRUFBRSx1QkFBdUI7Q0FDckM7O0FBRUQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0VBRUgsU0FBUyxFQUFFLElBQUk7Q0FNaEI7O0FBVkgsQUVuQkUsT0ZtQkssQ0FFTCxJQUFJLENFckJKLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsRUFBZTtFQUNuQixVQUFVLEVGQ04sT0FBTztFRUFYLFlBQVksRUFBRSxXQUFXO0VBQ3pCLEtBQUssRUZFQyxJQUFJO0VFRFYsTUFBTSxFQUFFLE9BQU87Q0FDaEI7O0FGY0gsQUFjSSxPQWRHLENBWUwsU0FBUyxDQUVQLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLE1BQU07RUFDdkIsTUFBTSxFQUFFLEtBQUs7RUFDYixNQUFNLEVBQUMsU0FBUztFQUNoQixLQUFLLEVBQUUsS0FBSztFQUdaLE1BQU0sRUFBRSxjQUFjO0VBQ3RCLFVBQVUsRUFBRSxJQUFJO0NBUWpCOztBQS9CTCxBQXlCTSxPQXpCQyxDQVlMLFNBQVMsQ0FFUCxLQUFLLENBV0gsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLEdBQUc7RUFDVixlQUFlLEVBQUUsS0FBSztFQUN0QixpQkFBaUIsRUFBRSxTQUFTO0VBQzVCLGdCQUFnQixFQUFFLFdBQVc7Q0FDOUI7O0FBS0wsQUFBQSxNQUFNLENBQUM7RUFDTCxnQkFBZ0IsRUE3Q1AsT0FBTztDQThDakIifQ== */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGJhY2tnb3VuZENvbG9yKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbn1cblxuLy8gcCB7XG4vLyAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgdGV4dENvbG9yKTtcbi8vIH1cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgfVxuICAgICNzdWJtaXR7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKSA7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiIsIlxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuXG4lY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgb3V0bGluZTogMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuOTVlbTtcbiAgfVxuXG4gICVmb3JtIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiA0NXJlbTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuXG4gICVidXR0b24ge1xuICAgICRjb2xvcjogIzVhNTdmZjtcbiAgICAkY29sb3ItYWx0OiAjZmZjNzAwO1xuXG4gICAgY29sb3I6ICRjb2xvci1hbHQ7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3IsIDIwJSk7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogbGlnaHRlbigkY29sb3IsIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogZ3JheXNjYWxlKCRjb2xvci1hbHQpO1xuICAgIH1cbiAgfVxuXG5cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmJlZm9yZXtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICB0cmFuc2l0aW9uOiAuN3M7XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogLjdzO1xuICAgIH1cbiAg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 */ diff --git a/js/data.js b/js/data.js index ce3cccd..2cb4ce4 100644 --- a/js/data.js +++ b/js/data.js @@ -38,24 +38,25 @@ document.addEventListener("DOMContentLoaded", function () { var htmlString = ""; var line = document.createElement("div"); - for (i = 0; i < data.length; i++) { htmlString += "
" + "
" + '' + "
" + "
" + - "
" + data[i].title + "
" + + "
" + "

" + (data[i].title).replace(/\./g,'
') + "

"+ "
" + "
" + data[i].author + "
" + "
" + data[i].isbn + "
" + "
" + data[i].men + "
" + "
" + data[i].pages_count + "
" + - "
" + JSON.stringify(data[i].levels) + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - do poprawy + "
" + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g,' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst "
" + data[i].subject + "
" + "
" + data[i].type + "
" + "
" + "sprawdź" + "
" + "
" + "
"; } + + document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } }); diff --git a/sass/main.scss b/sass/main.scss index bfc3569..d3b2494 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,59 +1,66 @@ @import "modules/_colors"; @import "modules/_all"; +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + $mapOfPrimarColors: (redGwo:#d5041f, -orangeGwo: #fefb03, +orangeGwo: #ea8300, yellowGwo: #f5bf00, whiteGwo: #FFF); $mapOfColors: (backgoundColor:#FFF, -textColor: #fefb03, +textColor: #c4c4c4, footerColor: #fe6103, linkCoror: #00c6ff, hoverColor: #9600ff); + body { background: map-get($mapOfColors, backgoundColor); font-family: 'Open Sans', sans-serif; } +h2 { + color: map-get($mapOfPrimarColors, orangeGwo); +} + +// p { +// color: map-get($mapOfColors, textColor); +// } + section { form { @extend %form ; font-size: 16px; - @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); input { - @extend %input; + @extend %input ; + } + #submit{ + @include button(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)) ; } } #showData { + @extend %clearfix ; + font-size: 12px; @extend %form ; .book { - display: flex; - justify-content: center; - height: 18rem; - margin:10px auto; - width: 45rem; - // padding: 10px; - // background: red; - border: 1px solid #555; - text-align: left; - - .bookImage { - width: 40%; - background-size: cover; - background-repeat: no-repeat; - background-color: transparent; - } + @extend %float ; + margin-bottom: 10px; + width: 50%; + padding: 1rem; } } } - footer { - background-color: map-get($mapOfColors, footerColor); - } +footer { + background-color: map-get($mapOfColors, footerColor); +} diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 4d5b29e..28451c8 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -1,12 +1,29 @@ + @mixin inputSubmit($colorBackground, $color ) { input[type="submit"] { background: $colorBackground; border-color: transparent; color: $color; cursor: pointer; + margin-top: 16px; + } +} + +%clearfix { + &:after, + &:before { + content: ""; + display: block; + clear: both; } } + +%float { + float: left; + display: block; +} + %input { box-sizing: border-box; display: block; @@ -23,6 +40,8 @@ padding: 1rem; width: 45rem; margin: 10px auto; + box-shadow: 0 2px 5px rgba(0,0,0,0.3); + border-radius: 1px; } %button { @@ -34,6 +53,60 @@ &:hover { color: lighten($color, 100%); background: grayscale($color-alt); + } + } + + +@mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { + background: $colorBasic; + color: $colorText; + border: 0; + font-size: 18px; + border-radius: 2px; + transition: .6s; + overflow: hidden; + &:focus{ + outline: 0; + } + &:before{ + content: ''; + display: block; + position: absolute; + background: rgba(255,255,255,0.5); + width: 60px; + height: 100%; + left: 0; + top: 0; + opacity: .5; + filter: blur(30px); + transform: translateX(-100px) skewX(-15deg); + } + &:after{ + content: ''; + display: block; + position: absolute; + background: rgba(255,255,255,0.2); + width: 30px; + height: 100%; + left: 30px; + top: 0; + opacity: 0; + filter: blur(5px); + transform: translateX(-100px) skewX(-15deg); + } + &:hover{ + background: $colorHover; + cursor: pointer; + &:before{ + transform: translateX(300px) skewX(-15deg); + opacity: 0.6; + transition: .7s; + } + &:after{ + transform: translateX(300px) skewX(-15deg); + opacity: 1; + transition: .7s; } } +} From 5e9a8a2152425bf3928d8567a0976fe6e24af296 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sat, 11 Nov 2017 03:57:29 +0100 Subject: [PATCH 09/20] 6. SASS - ostylowanie wyszukiwarki --- css/main.css | 93 +++++++++++++++++++++++++++++++-------- js/data.js | 24 +++++----- sass/main.scss | 33 ++++++++++++-- sass/modules/_all.scss | 89 ++++++++++++++++--------------------- sass/modules/_colors.scss | 1 + 5 files changed, 157 insertions(+), 83 deletions(-) diff --git a/css/main.css b/css/main.css index 21f0db4..7f81613 100644 --- a/css/main.css +++ b/css/main.css @@ -36,7 +36,7 @@ section form, section #showData { } body { - background: #FFF; + background: #ea8300; font-family: 'Open Sans', sans-serif; } @@ -45,6 +45,7 @@ h2 { } section form { + background: #FFF; font-size: 16px; } @@ -56,14 +57,18 @@ section form input[type="submit"] { margin-top: 16px; } +section form input { + border: 1px solid #ea8300; +} + section form #submit { - background: #d5041f; + background: #ea8300; color: #FFF; border: 0; - font-size: 18px; border-radius: 2px; transition: .6s; overflow: hidden; + text-decoration: none; } section form #submit:focus { @@ -74,7 +79,6 @@ section form #submit:before { content: ''; display: block; position: absolute; - background: rgba(255, 255, 255, 0.5); width: 60px; height: 100%; left: 0; @@ -88,7 +92,6 @@ section form #submit:after { content: ''; display: block; position: absolute; - background: rgba(255, 255, 255, 0.2); width: 30px; height: 100%; left: 30px; @@ -99,34 +102,86 @@ section form #submit:after { } section form #submit:hover { - background: #ea8300; + background: #d5041f; cursor: pointer; } -section form #submit:hover:before { - transform: translateX(300px) skewX(-15deg); - opacity: 0.6; - transition: .7s; -} - -section form #submit:hover:after { - transform: translateX(300px) skewX(-15deg); - opacity: 1; - transition: .7s; -} - section #showData { + background: #FFF; font-size: 12px; } section #showData .book { margin-bottom: 10px; width: 50%; + height: 38rem; padding: 1rem; } +section #showData .book .author { + padding-top: 1rem; +} + +section #showData .book .title { + padding-top: 1rem; +} + +section #showData .book .btnDiv { + position: absolute; +} + +section #showData .book .btnBook { + bottom: 0; + margin-bottom: 1rem; + display: inline-block; + padding: 1rem 2.5rem; + font-size: 12px; + background: #ea8300; + color: #FFF; + border: 0; + border-radius: 2px; + transition: .6s; + overflow: hidden; + text-decoration: none; +} + +section #showData .book .btnBook:focus { + outline: 0; +} + +section #showData .book .btnBook:before { + content: ''; + display: block; + position: absolute; + width: 60px; + height: 100%; + left: 0; + top: 0; + opacity: .5; + filter: blur(30px); + transform: translateX(-100px) skewX(-15deg); +} + +section #showData .book .btnBook:after { + content: ''; + display: block; + position: absolute; + width: 30px; + height: 100%; + left: 30px; + top: 0; + opacity: 0; + filter: blur(5px); + transform: translateX(-100px) skewX(-15deg); +} + +section #showData .book .btnBook:hover { + background: #d5041f; + cursor: pointer; +} + footer { background-color: #fe6103; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGJhY2tnb3VuZENvbG9yKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbn1cblxuLy8gcCB7XG4vLyAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgdGV4dENvbG9yKTtcbi8vIH1cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgfVxuICAgICNzdWJtaXR7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKSA7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiIsIlxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuXG4lY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgb3V0bGluZTogMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuOTVlbTtcbiAgfVxuXG4gICVmb3JtIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiA0NXJlbTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuXG4gICVidXR0b24ge1xuICAgICRjb2xvcjogIzVhNTdmZjtcbiAgICAkY29sb3ItYWx0OiAjZmZjNzAwO1xuXG4gICAgY29sb3I6ICRjb2xvci1hbHQ7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3IsIDIwJSk7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogbGlnaHRlbigkY29sb3IsIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogZ3JheXNjYWxlKCRjb2xvci1hbHQpO1xuICAgIH1cbiAgfVxuXG5cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmJlZm9yZXtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICB0cmFuc2l0aW9uOiAuN3M7XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogLjdzO1xuICAgIH1cbiAg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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbn1cblxuaDIge1xuICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG59XG5cbi8vIHAge1xuLy8gICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4vLyB9XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICB9XG4gICAgI3N1Ym1pdHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgQGV4dGVuZCAlY2xlYXJmaXggO1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDM4cmVtO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuYnRuRGl2IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgfVxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICB3aWR0aDogNDVyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjMpO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbiVidXR0b24ge1xuICAkY29sb3I6ICM1YTU3ZmY7XG4gICRjb2xvci1hbHQ6ICNmZmM3MDA7XG5cbiAgY29sb3I6ICRjb2xvci1hbHQ7XG4gIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogbGlnaHRlbigkY29sb3IsIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGdyYXlzY2FsZSgkY29sb3ItYWx0KTtcbiAgfVxufVxuXG5cbkBtaXhpbiBpbnB1dFN1Ym1pdCgkY29sb3JCYWNrZ3JvdW5kLCAkY29sb3IgKSB7XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9DQSxBRXBDQSxPRm9DTyxDQWdCTCxTQUFTLEFFbkRULE1BQU8sRUZtQ1QsQUVwQ0EsT0ZvQ08sQ0FnQkwsU0FBUyxBRWxEVCxPQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUY4QkgsQUUzQkEsT0YyQk8sQ0FnQkwsU0FBUyxDQUtQLEtBQUssQ0VoREY7RUFDTCxLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FGd0JELEFFdEJBLE9Gc0JPLENBRUwsSUFBSSxDQUtGLEtBQUssQ0U3QkY7RUFDTCxVQUFVLEVBQUUsVUFBVTtFQUN0QixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsWUFBWSxFQUFFLEdBQUc7RUFDakIsWUFBWSxFQUFFLEtBQUs7RUFDbkIsT0FBTyxF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 */ diff --git a/js/data.js b/js/data.js index 2cb4ce4..c5824e3 100644 --- a/js/data.js +++ b/js/data.js @@ -4,6 +4,7 @@ document.addEventListener("DOMContentLoaded", function () { var apiPath = "https://gwo.pl/booksApi/v1/search?query="; var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie var userInput = document.getElementById("searchBook"); + var userInput2 = document.querySelector('#searchBook') var bookContainer = document.getElementById("showData"); console.log(bookContainer); @@ -23,9 +24,14 @@ document.addEventListener("DOMContentLoaded", function () { var ourData = JSON.parse(ourRequest.responseText); renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). + if (ourData.length === 0 ) { + console.log("puste zapytanie"); + } + } else { console.log("We connected to the server, but it returned an error."); } + }; ourRequest.onerror = function() { @@ -45,18 +51,16 @@ document.addEventListener("DOMContentLoaded", function () { "
" + '' + "
" + "
" + "
" + "

" + (data[i].title).replace(/\./g,'
') + "

"+ "
" + - "
" + data[i].author + "
" + - "
" + data[i].isbn + "
" + - "
" + data[i].men + "
" + - "
" + data[i].pages_count + "
" + - "
" + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g,' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - "
" + data[i].subject + "
" + - "
" + data[i].type + "
" + - "
" + "sprawdź" + "
" + + "
" + "autorzy: "+ (data[i].author) + "
" + + "
" + "ISBN: " + data[i].isbn + "
" + + "
" + "numer dopuszczenia MEN: " + data[i].men + "
" + + "
" + "liczba stron: " + data[i].pages_count + "
" + + "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g,' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst + "
" + "przedmiot: " + data[i].subject + "
" + + "
" + "rodzaj publikacji: " + data[i].type + "
" + + "" + "
" + ""; } - - document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } }); diff --git a/sass/main.scss b/sass/main.scss index d3b2494..f579ec2 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -22,7 +22,7 @@ hoverColor: #9600ff); body { - background: map-get($mapOfColors, backgoundColor); + background: map-get($mapOfPrimarColors, orangeGwo); font-family: 'Open Sans', sans-serif; } @@ -38,25 +38,52 @@ section { form { @extend %form ; + background: map-get($mapOfPrimarColors, whiteGwo); font-size: 16px; @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); input { @extend %input ; + border: 1px solid map-get($mapOfPrimarColors, orangeGwo); } #submit{ - @include button(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)) ; + @include button(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } #showData { @extend %clearfix ; - font-size: 12px; @extend %form ; + background: map-get($mapOfPrimarColors, whiteGwo); + font-size: 12px; .book { @extend %float ; + // border: 1px solid map-get($mapOfPrimarColors, orangeGwo); margin-bottom: 10px; width: 50%; + height: 38rem; padding: 1rem; + .author { + padding-top: 1rem; + } + .title { + padding-top: 1rem; + } + + .btnDiv { + position: absolute; + } + .btnBook { + bottom: 0; + margin-bottom: 1rem; + display: inline-block; + padding: 1rem 2.5rem; + font-size: 12px; + @include button(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); + } + + .bookInfo { + + } } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 28451c8..4a600dc 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -1,15 +1,3 @@ - - -@mixin inputSubmit($colorBackground, $color ) { - input[type="submit"] { - background: $colorBackground; - border-color: transparent; - color: $color; - cursor: pointer; - margin-top: 16px; - } -} - %clearfix { &:after, &:before { @@ -25,47 +13,58 @@ } %input { - box-sizing: border-box; - display: block; - width: 100%; - border-width: 1px; - border-style: solid; - padding: 16px; - outline: 0; - font-family: inherit; - font-size: 0.95em; - } + box-sizing: border-box; + display: block; + width: 100%; + border-width: 1px; + border-style: solid; + padding: 16px; + outline: 0; + font-family: inherit; + font-size: 0.95em; +} - %form { - padding: 1rem; - width: 45rem; - margin: 10px auto; - box-shadow: 0 2px 5px rgba(0,0,0,0.3); - border-radius: 1px; - } +%form { + padding: 1rem; + width: 45rem; + margin: 10px auto; + box-shadow: 0 2px 5px rgba(0,0,0,0.3); + border-radius: 1px; +} - %button { - $color: #5a57ff; - $color-alt: #ffc700; +%button { + $color: #5a57ff; + $color-alt: #ffc700; - color: $color-alt; - background: lighten($color, 20%); - &:hover { - color: lighten($color, 100%); - background: grayscale($color-alt); - } + color: $color-alt; + background: lighten($color, 20%); + &:hover { + color: lighten($color, 100%); + background: grayscale($color-alt); } +} +@mixin inputSubmit($colorBackground, $color ) { + input[type="submit"] { + background: $colorBackground; + border-color: transparent; + color: $color; + cursor: pointer; + margin-top: 16px; + } +} + @mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { background: $colorBasic; color: $colorText; border: 0; - font-size: 18px; border-radius: 2px; transition: .6s; overflow: hidden; + text-decoration: none; + &:focus{ outline: 0; } @@ -73,7 +72,6 @@ content: ''; display: block; position: absolute; - background: rgba(255,255,255,0.5); width: 60px; height: 100%; left: 0; @@ -86,7 +84,6 @@ content: ''; display: block; position: absolute; - background: rgba(255,255,255,0.2); width: 30px; height: 100%; left: 30px; @@ -98,15 +95,5 @@ &:hover{ background: $colorHover; cursor: pointer; - &:before{ - transform: translateX(300px) skewX(-15deg); - opacity: 0.6; - transition: .7s; - } - &:after{ - transform: translateX(300px) skewX(-15deg); - opacity: 1; - transition: .7s; - } } } diff --git a/sass/modules/_colors.scss b/sass/modules/_colors.scss index 73de0c6..d7ac102 100644 --- a/sass/modules/_colors.scss +++ b/sass/modules/_colors.scss @@ -1,3 +1,4 @@ $primary-color: #ea8300; $additional-color: #d5041f; $complementary-color: #f5bf00; +$neutralColor: #FFF; From fef801ef57d492b8c6bb90da79ef9e4f11cde275 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sat, 11 Nov 2017 22:05:05 +0100 Subject: [PATCH 10/20] 6.ostylowanie wyszukiwarki oraz wgranie imagemin --- css/main.css | 113 ++++++++++++++++++++++------------------- gulpfile.js | 21 ++++++-- index.html | 5 +- js/data.js | 15 +++--- package.json | 1 + sass/main.scss | 73 +++++++++++++++++--------- sass/modules/_all.scss | 53 ++++++++++++------- 7 files changed, 176 insertions(+), 105 deletions(-) diff --git a/css/main.css b/css/main.css index 7f81613..fafcf92 100644 --- a/css/main.css +++ b/css/main.css @@ -1,4 +1,5 @@ -section #showData:after, section #showData:before { +@charset "UTF-8"; +section form:after, section #showData .book:after, section form:before, section #showData .book:before { content: ""; display: block; clear: both; @@ -11,10 +12,7 @@ section #showData .book { section form input { box-sizing: border-box; - display: block; width: 100%; - border-width: 1px; - border-style: solid; padding: 16px; outline: 0; font-family: inherit; @@ -38,10 +36,16 @@ section form, section #showData { body { background: #ea8300; font-family: 'Open Sans', sans-serif; + text-rendering: optimizeSpeed; + image-rendering: pixelated; } h2 { color: #ea8300; + font-kerning: auto; + font-weight: 800; + font-size: 16px; + margin-top: 1rem; } section form { @@ -49,12 +53,20 @@ section form { font-size: 16px; } +section form #searchBook { + width: 59%; +} + +section form #submit { + width: 39%; + margin-left: 0.6rem; +} + section form input[type="submit"] { background: #d5041f; border-color: transparent; color: #FFF; cursor: pointer; - margin-top: 16px; } section form input { @@ -107,81 +119,78 @@ section form #submit:hover { } section #showData { + display: flex; + flex-wrap: wrap; background: #FFF; font-size: 12px; } section #showData .book { - margin-bottom: 10px; - width: 50%; - height: 38rem; - padding: 1rem; + position: relative; + width: 49%; + padding: 3rem 3rem 1rem; + background: #FFF; + margin: 1px; } section #showData .book .author { padding-top: 1rem; } -section #showData .book .title { - padding-top: 1rem; -} - section #showData .book .btnDiv { - position: absolute; + margin-top: auto; + margin-top: 1rem; + display: flex; + flex-direction: column; } -section #showData .book .btnBook { - bottom: 0; - margin-bottom: 1rem; - display: inline-block; +section #showData .book .btnDiv .btnBook { + margin-bottom: 2rem; padding: 1rem 2.5rem; font-size: 12px; - background: #ea8300; - color: #FFF; - border: 0; - border-radius: 2px; - transition: .6s; - overflow: hidden; text-decoration: none; + color: #ea8300; + background: #FFF; + margin: 0 auto; + text-align: center; + transition: all ease .5s; + width: 15rem; + border: 1px solid #ea8300; + border-radius: 0.2rem; + padding: 20px auto; + text-transform: uppercase; } -section #showData .book .btnBook:focus { - outline: 0; +section #showData .book .btnDiv .btnBook:hover { + width: 18rem; + padding: 20px auto; } -section #showData .book .btnBook:before { - content: ''; - display: block; - position: absolute; - width: 60px; - height: 100%; - left: 0; - top: 0; - opacity: .5; - filter: blur(30px); - transform: translateX(-100px) skewX(-15deg); +section #showData .book .btnDiv .btnBook:after { + content: "→"; + transition: all ease .5s; + position: relative; + opacity: 0; + left: -12px; } -section #showData .book .btnBook:after { - content: ''; - display: block; - position: absolute; - width: 30px; - height: 100%; - left: 30px; - top: 0; - opacity: 0; - filter: blur(5px); - transform: translateX(-100px) skewX(-15deg); +section #showData .book .btnDiv .btnBook:hover:after { + content: "→"; + transition: all ease .5s; + opacity: 1; + left: 8px; } -section #showData .book .btnBook:hover { - background: #d5041f; - cursor: pointer; +section #showData .book .bookImage { + height: 16rem; +} + +section #showData .book .bookImage img { + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } footer { background-color: #fe6103; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbn1cblxuaDIge1xuICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG59XG5cbi8vIHAge1xuLy8gICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4vLyB9XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICB9XG4gICAgI3N1Ym1pdHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgQGV4dGVuZCAlY2xlYXJmaXggO1xuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDM4cmVtO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuYnRuRGl2IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgfVxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICB3aWR0aDogNDVyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjMpO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbiVidXR0b24ge1xuICAkY29sb3I6ICM1YTU3ZmY7XG4gICRjb2xvci1hbHQ6ICNmZmM3MDA7XG5cbiAgY29sb3I6ICRjb2xvci1hbHQ7XG4gIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogbGlnaHRlbigkY29sb3IsIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGdyYXlzY2FsZSgkY29sb3ItYWx0KTtcbiAgfVxufVxuXG5cbkBtaXhpbiBpbnB1dFN1Ym1pdCgkY29sb3JCYWNrZ3JvdW5kLCAkY29sb3IgKSB7XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9DQSxBRXBDQSxPRm9DTyxDQWdCTCxTQUFTLEFFbkRULE1BQU8sRUZtQ1QsQUVwQ0EsT0ZvQ08sQ0FnQkwsU0FBUyxBRWxEVCxPQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUY4QkgsQUUzQkEsT0YyQk8sQ0FnQkwsU0FBUyxDQUtQLEtBQUssQ0VoREY7RUFDTCxLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxLQUFLO0NBQ2Y7O0FGd0JELEFFdEJBLE9Gc0JPLENBRUwsSUFBSSxDQUtGLEtBQUssQ0U3QkY7RUFDTCxVQUFVLEVBQUUsVUFBVTtFQUN0QixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsWUFBWSxFQUFFLEdBQUc7RUFDakIsWUFBWSxFQUFFLEtBQUs7RUFDbkIsT0FBTyxF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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbnNlY3Rpb24ge1xuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgI3NlYXJjaEJvb2sge1xuICAgICAgd2lkdGg6NTklO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOjM5JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQgO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAjc2hvd0RhdGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAuYm9vayB7XG4gICAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgICBAZXh0ZW5kICVmbG9hdCA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNDklO1xuICAgICAgcGFkZGluZzogM3JlbSAzcmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgIH1cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDQ1cmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuXG5AbWl4aW4gYnV0dG9uKCRjb2xvckJhc2ljLCAkY29sb3JIb3ZlciwgJGNvbG9yVGV4dCwgJGNvbG9ydGV4dEhvdmVyKSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJhc2ljO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXN7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAgJGNvbG9yQmFzaWM7XG4gIGJhY2tncm91bmQ6ICRjb2xvclRleHQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgd2lkdGg6IDE1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JCYXNpYztcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICBwYWRkaW5nOiAyMHB4IGF1dG87XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgd2lkdGg6IDE4cmVtO1xuICAgIHBhZGRpbmc6IDIwcHggYXV0bztcblxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCLihpJcIjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsZWZ0OiAtMTJweDtcbiAgfVxuXG4gICY6aG92ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbGVmdDogOHB4O1xuICB9XG5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBc0NBLEFFdENBLE9Gc0NPLENBQ0wsSUFBSSxBRXRDSixNQUFPLEVGcUNULEFFdENBLE9Gc0NPLENBMEJMLFNBQVMsQ0FRUCxLQUFLLEFFdkVQLE1BQU8sRUZxQ1QsQUV0Q0EsT0ZzQ08sQ0FDTCxJQUFJLEFFckNKLE9BQVEsRUZvQ1YsQUV0Q0EsT0ZzQ08sQ0EwQkwsU0FBUyxDQVFQLEtBQUssQUV0RVAsT0FBUSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FGZ0NILEFFN0JBLE9GNkJPLENBMEJMLFNBQVMsQ0FRUCxLQUFLLENFL0RGO0VBQ0wsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsS0FBSztDQUNmOztBRjBCRCxBRXhCQSxPRndCTyxDQUNMLElBQUksQ0FlRixLQUFLLENFeENGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FB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 */ diff --git a/gulpfile.js b/gulpfile.js index 7eadaa4..455546e 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -3,19 +3,32 @@ var sass = require('gulp-sass'); var sourcemaps = require('gulp-sourcemaps'); var browserSync = require('browser-sync').create(); var watch = require('gulp-watch'); -var jslint = require('gulp-jslint'); // nie dodany do skryptu (zaintalowany) -var plumber = require('gulp-plumber'); // nie dodany do skryptu (zaintalowany) - +var jslint = require('gulp-jslint'); +var plumber = require('gulp-plumber'); +var imagemin = require('gulp-imagemin'); var Files = { html: './index.html', css_dest: './css', scss_all: './sass/**/*.scss', - scss_main: './sass/*.scss' + scss_main: './sass/*.scss', + image_max: './image/*', + image_min:'./dist/images' } +gulp.task('image', function(){ + + return gulp.src(Files.image_min) + + .pipe(imagemin({interlaced: true, + progressive: true, + optimizationLevel: 5, + svgoPlugins: [{removeViewBox: true}] })) + .pipe(gulp.dest(Files.image_min)) +}); + gulp.task('sass', function(){ return gulp.src(Files.scss_main) diff --git a/index.html b/index.html index d79f9d8..b368556 100644 --- a/index.html +++ b/index.html @@ -18,11 +18,12 @@
-

-

+ +
+

www.gwo.pl

diff --git a/js/data.js b/js/data.js index c5824e3..2c5f598 100644 --- a/js/data.js +++ b/js/data.js @@ -2,7 +2,7 @@ document.addEventListener("DOMContentLoaded", function () { console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM var apiPath = "https://gwo.pl/booksApi/v1/search?query="; - var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie + var submitButton = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie var userInput = document.getElementById("searchBook"); var userInput2 = document.querySelector('#searchBook') @@ -10,7 +10,7 @@ document.addEventListener("DOMContentLoaded", function () { console.log(bookContainer); var pageCounter = 1; - submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit + submitButton.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit this.url = apiPath + encodeURI(userInput.value); console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany @@ -25,7 +25,8 @@ document.addEventListener("DOMContentLoaded", function () { renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). if (ourData.length === 0 ) { - console.log("puste zapytanie"); + var ourData = "Brak pozycji, spróbuj ponownie."; + document.getElementById("showData").innerHTML = ourData; } } else { @@ -48,7 +49,8 @@ document.addEventListener("DOMContentLoaded", function () { htmlString += "
" + - "
" + '' + "
" + + // "
" + "
" + + "
"+ '' + "
" + "
" + "
" + "

" + (data[i].title).replace(/\./g,'
') + "

"+ "
" + "
" + "autorzy: "+ (data[i].author) + "
" + @@ -57,9 +59,8 @@ document.addEventListener("DOMContentLoaded", function () { "
" + "liczba stron: " + data[i].pages_count + "
" + "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g,' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst "
" + "przedmiot: " + data[i].subject + "
" + - "
" + "rodzaj publikacji: " + data[i].type + "
" + - "" + - "
" + "
"; + "
" + "rodzaj publikacji: " + data[i].type + "
" + "" + + "" + ""; } document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } diff --git a/package.json b/package.json index 5edef76..74958d6 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "fast-json": "^1.1.0", "gulp": "^3.9.1", "gulp-debug": "^3.1.0", + "gulp-imagemin": "^3.4.0", "gulp-jslint": "^1.0.10", "gulp-plumber": "^1.1.0", "gulp-sass": "^3.1.0", diff --git a/sass/main.scss b/sass/main.scss index f579ec2..e238dda 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -24,65 +24,92 @@ hoverColor: #9600ff); body { background: map-get($mapOfPrimarColors, orangeGwo); font-family: 'Open Sans', sans-serif; + text-rendering: optimizeSpeed; + image-rendering: pixelated; } h2 { color: map-get($mapOfPrimarColors, orangeGwo); + font-kerning: auto; + font-weight: 800; + font-size: 16px; + margin-top: 1rem; } -// p { -// color: map-get($mapOfColors, textColor); -// } - section { - form { + @extend %clearfix ; + #searchBook { + width:59%; + } + #submit { + width:39%; + margin-left: 0.6rem; + } + @extend %form ; background: map-get($mapOfPrimarColors, whiteGwo); font-size: 16px; @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); + input { @extend %input ; border: 1px solid map-get($mapOfPrimarColors, orangeGwo); } - #submit{ + + #submit { @include button(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } #showData { - @extend %clearfix ; + display: flex; + flex-wrap: wrap; + @extend %form ; background: map-get($mapOfPrimarColors, whiteGwo); font-size: 12px; + .book { + @extend %clearfix ; @extend %float ; - // border: 1px solid map-get($mapOfPrimarColors, orangeGwo); - margin-bottom: 10px; - width: 50%; - height: 38rem; - padding: 1rem; + position: relative; + width: 49%; + padding: 3rem 3rem 1rem; + background: map-get($mapOfPrimarColors, whiteGwo); + margin: 1px; + .author { padding-top: 1rem; } + .title { - padding-top: 1rem; } - .btnDiv { - position: absolute; + .bookInfo { } - .btnBook { - bottom: 0; - margin-bottom: 1rem; - display: inline-block; - padding: 1rem 2.5rem; - font-size: 12px; - @include button(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); + + .btnDiv { + margin-top: auto; + margin-top: 1rem; + display: flex; + flex-direction: column; + + .btnBook { + margin-bottom: 2rem; + padding: 1rem 2.5rem; + font-size: 12px; + @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); + } } .bookInfo { - + } + .bookImage { + height: 16rem; + img { + box-shadow: 0 2px 5px rgba(0,0,0,0.1); + } } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 4a600dc..b1b1c7f 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -14,10 +14,7 @@ %input { box-sizing: border-box; - display: block; width: 100%; - border-width: 1px; - border-style: solid; padding: 16px; outline: 0; font-family: inherit; @@ -32,26 +29,12 @@ border-radius: 1px; } -%button { - $color: #5a57ff; - $color-alt: #ffc700; - - color: $color-alt; - background: lighten($color, 20%); - &:hover { - color: lighten($color, 100%); - background: grayscale($color-alt); - } -} - - @mixin inputSubmit($colorBackground, $color ) { input[type="submit"] { background: $colorBackground; border-color: transparent; color: $color; cursor: pointer; - margin-top: 16px; } } @@ -97,3 +80,39 @@ cursor: pointer; } } + +@mixin buttonStore($colorBasic, $colorHover, $colorText, $colortextHover) { + text-decoration: none; + color: $colorBasic; + background: $colorText; + margin: 0 auto; + text-align: center; + transition: all ease .5s; + width: 15rem; + border: 1px solid $colorBasic; + border-radius: 0.2rem; + padding: 20px auto; + text-transform: uppercase; + + &:hover { + width: 18rem; + padding: 20px auto; + + } + + &:after { + content: "→"; + transition: all ease .5s; + position:relative; + opacity: 0; + left: -12px; + } + + &:hover:after { + content: "→"; + transition: all ease .5s; + opacity: 1; + left: 8px; + } + +} From 0bd8e5b66e34a851e0e0f6afb88572af90092556 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sun, 12 Nov 2017 03:53:08 +0100 Subject: [PATCH 11/20] 7. Sass dodanie Breakpoints --- css/main.css | 49 ++++++++++++++++++++-------- index.html | 3 +- sass/main.scss | 67 ++++++++++++++++++++------------------ sass/modules/_all.scss | 8 ++--- sass/modules/_colors.scss | 14 ++++++++ sass/partials/_base.scss | 27 +++++++++++++++ sass/partials/_footer.scss | 2 ++ 7 files changed, 118 insertions(+), 52 deletions(-) diff --git a/css/main.css b/css/main.css index fafcf92..445d7a6 100644 --- a/css/main.css +++ b/css/main.css @@ -21,7 +21,7 @@ section form input { section form, section #showData { padding: 1rem; - width: 45rem; + width: 65rem; margin: 10px auto; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); border-radius: 1px; @@ -44,7 +44,7 @@ h2 { color: #ea8300; font-kerning: auto; font-weight: 800; - font-size: 16px; + font-size: 18px; margin-top: 1rem; } @@ -71,6 +71,12 @@ section form input[type="submit"] { section form input { border: 1px solid #ea8300; + font-family: inherit; + color: #ea8300; +} + +section form input[type="placeholder"] { + color: #fe6103; } section form #submit { @@ -91,7 +97,6 @@ section form #submit:before { content: ''; display: block; position: absolute; - width: 60px; height: 100%; left: 0; top: 0; @@ -127,8 +132,8 @@ section #showData { section #showData .book { position: relative; - width: 49%; - padding: 3rem 3rem 1rem; + width: 33.1%; + padding: 1rem 1rem 1rem; background: #FFF; margin: 1px; } @@ -137,11 +142,18 @@ section #showData .book .author { padding-top: 1rem; } +section #showData .book .bookInfo { + width: 100%; + background: #f7f7f7; + padding: 16px 12px 16px 16px; +} + section #showData .book .btnDiv { margin-top: auto; margin-top: 1rem; - display: flex; - flex-direction: column; + display: -webkit-flex; + -webkit-align-items: center; + align-items: flex-end; } section #showData .book .btnDiv .btnBook { @@ -154,7 +166,7 @@ section #showData .book .btnDiv .btnBook { margin: 0 auto; text-align: center; transition: all ease .5s; - width: 15rem; + width: 17rem; border: 1px solid #ea8300; border-radius: 0.2rem; padding: 20px auto; @@ -162,7 +174,7 @@ section #showData .book .btnDiv .btnBook { } section #showData .book .btnDiv .btnBook:hover { - width: 18rem; + width: 19rem; padding: 20px auto; } @@ -181,16 +193,25 @@ section #showData .book .btnDiv .btnBook:hover:after { left: 8px; } +section #showData .book .bookInfo { + border-left: 1px solid #ea8300; +} + +section #showData .book .bookInfo > div { + color: #bababa; +} + section #showData .book .bookImage { + overflow: hidden; + padding: 1rem; height: 16rem; + border: 1px solid #FFF; + background: #f7f7f7; } section #showData .book .bookImage img { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); + height: 14rem; } -footer { - background-color: #fe6103; -} - -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2FsbFwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxudGV4dENvbG9yOiAjYzRjNGM0LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmKTtcblxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbnNlY3Rpb24ge1xuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgI3NlYXJjaEJvb2sge1xuICAgICAgd2lkdGg6NTklO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOjM5JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQgO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAjc2hvd0RhdGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGV4dGVuZCAlZm9ybSA7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAuYm9vayB7XG4gICAgICBAZXh0ZW5kICVjbGVhcmZpeCA7XG4gICAgICBAZXh0ZW5kICVmbG9hdCA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNDklO1xuICAgICAgcGFkZGluZzogM3JlbSAzcmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgIH1cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDQ1cmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuXG5AbWl4aW4gYnV0dG9uKCRjb2xvckJhc2ljLCAkY29sb3JIb3ZlciwgJGNvbG9yVGV4dCwgJGNvbG9ydGV4dEhvdmVyKSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJhc2ljO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXN7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAgJGNvbG9yQmFzaWM7XG4gIGJhY2tncm91bmQ6ICRjb2xvclRleHQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgd2lkdGg6IDE1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JCYXNpYztcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICBwYWRkaW5nOiAyMHB4IGF1dG87XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgd2lkdGg6IDE4cmVtO1xuICAgIHBhZGRpbmc6IDIwcHggYXV0bztcblxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCLihpJcIjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsZWZ0OiAtMTJweDtcbiAgfVxuXG4gICY6aG92ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbGVmdDogOHB4O1xuICB9XG5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBc0NBLEFFdENBLE9Gc0NPLENBQ0wsSUFBSSxBRXRDSixNQUFPLEVGcUNULEFFdENBLE9Gc0NPLENBMEJMLFNBQVMsQ0FRUCxLQUFLLEFFdkVQLE1BQU8sRUZxQ1QsQUV0Q0EsT0ZzQ08sQ0FDTCxJQUFJLEFFckNKLE9BQVEsRUZvQ1YsQUV0Q0EsT0ZzQ08sQ0EwQkwsU0FBUyxDQVFQLEtBQUssQUV0RVAsT0FBUSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0NBQ1o7O0FGZ0NILEFFN0JBLE9GNkJPLENBMEJMLFNBQVMsQ0FRUCxLQUFLLENFL0RGO0VBQ0wsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsS0FBSztDQUNmOztBRjBCRCxBRXhCQSxPRndCTyxDQUNMLElBQUksQ0FlRixLQUFLLENFeENGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FB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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJwYXJ0aWFscy9fZm9vdGVyLnNjc3MiLCJwYXJ0aWFscy9fYmFzZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL19hbGxcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fZm9vdGVyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Jhc2VcIjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG50ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcblxuICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDo1OSU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDozOSU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcblxuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0IDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdICB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAZXh0ZW5kICVmb3JtIDtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAzMy4xJTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgIG1hcmdpbjogMXB4O1xuXG4gICAgICAuYXV0aG9yIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG5cbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgYmFja2dvdW5kQ29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDY1cmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiAxN3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yQmFzaWM7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgcGFkZGluZzogMjBweCBhdXRvO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIHdpZHRoOiAxOXJlbTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxuXG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4kc21QaG9uZTpcIihtaW4td2lkdGg6IDYwMHB4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDEwMjRweClcIjtcbiRoZERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMHB4KVwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQW1CQSxBRW5CQSxPRm1CTyxDQUVMLElBQUksQUVwQkosTUFBTyxFRmtCVCxBRW5CQSxPRm1CTyxDQW1DTCxTQUFTLENBUVAsS0FBSyxBRTdEUCxNQUFPLEVGa0JULEFFbkJBLE9GbUJPLENBRUwsSUFBSSxBRW5CSixPQUFRLEVGaUJWLEFFbkJBLE9GbUJPLENBbUNMLFNBQVMsQ0FRUCxLQUFLLEFFNURQ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 */ diff --git a/index.html b/index.html index b368556..d709096 100644 --- a/index.html +++ b/index.html @@ -5,6 +5,7 @@ + Zadanie rekrutacyjne @@ -18,7 +19,7 @@
- +
diff --git a/sass/main.scss b/sass/main.scss index e238dda..d168ebe 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,11 +1,7 @@ @import "modules/_colors"; @import "modules/_all"; - -* { - box-sizing: border-box; - margin: 0; - padding: 0; -} +@import "partials/_footer"; +@import "partials/_base"; $mapOfPrimarColors: (redGwo:#d5041f, @@ -15,33 +11,21 @@ whiteGwo: #FFF); $mapOfColors: (backgoundColor:#FFF, -textColor: #c4c4c4, +ColorBG: #f7f7f7, footerColor: #fe6103, linkCoror: #00c6ff, -hoverColor: #9600ff); - - -body { - background: map-get($mapOfPrimarColors, orangeGwo); - font-family: 'Open Sans', sans-serif; - text-rendering: optimizeSpeed; - image-rendering: pixelated; -} - -h2 { - color: map-get($mapOfPrimarColors, orangeGwo); - font-kerning: auto; - font-weight: 800; - font-size: 16px; - margin-top: 1rem; -} +hoverColor: #9600ff, +textColor: #bababa); section { + form { + @extend %clearfix ; #searchBook { width:59%; } + #submit { width:39%; margin-left: 0.6rem; @@ -55,6 +39,12 @@ section { input { @extend %input ; border: 1px solid map-get($mapOfPrimarColors, orangeGwo); + font-family: inherit; + color: map-get($mapOfPrimarColors, orangeGwo); + } + + input[type="placeholder"] { + color: map-get($mapOfColors, footerColor); } #submit { @@ -74,8 +64,8 @@ section { @extend %clearfix ; @extend %float ; position: relative; - width: 49%; - padding: 3rem 3rem 1rem; + width: 33.1%; + padding: 1rem 1rem 1rem; background: map-get($mapOfPrimarColors, whiteGwo); margin: 1px; @@ -87,34 +77,47 @@ section { } .bookInfo { + width: 100%; + background: map-get($mapOfColors, ColorBG); + padding: 16px 12px 16px 16px; + } .btnDiv { margin-top: auto; margin-top: 1rem; - display: flex; - flex-direction: column; + display: -webkit-flex; + -webkit-align-items: center; + align-items: flex-end; .btnBook { margin-bottom: 2rem; padding: 1rem 2.5rem; font-size: 12px; + @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } .bookInfo { + border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); } + + .bookInfo > div { + color: map-get($mapOfColors, textColor); + } + .bookImage { + overflow: hidden; + padding: 1rem; height: 16rem; + border: 1px solid map-get($mapOfColors, backgoundColor); + background: map-get($mapOfColors, ColorBG); img { box-shadow: 0 2px 5px rgba(0,0,0,0.1); + height: 14rem; } } } } } - -footer { - background-color: map-get($mapOfColors, footerColor); -} diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index b1b1c7f..4182825 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -23,7 +23,7 @@ %form { padding: 1rem; - width: 45rem; + width: 65rem; margin: 10px auto; box-shadow: 0 2px 5px rgba(0,0,0,0.3); border-radius: 1px; @@ -38,7 +38,6 @@ } } - @mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { background: $colorBasic; color: $colorText; @@ -55,7 +54,6 @@ content: ''; display: block; position: absolute; - width: 60px; height: 100%; left: 0; top: 0; @@ -88,14 +86,14 @@ margin: 0 auto; text-align: center; transition: all ease .5s; - width: 15rem; + width: 17rem; border: 1px solid $colorBasic; border-radius: 0.2rem; padding: 20px auto; text-transform: uppercase; &:hover { - width: 18rem; + width: 19rem; padding: 20px auto; } diff --git a/sass/modules/_colors.scss b/sass/modules/_colors.scss index d7ac102..cfb75bc 100644 --- a/sass/modules/_colors.scss +++ b/sass/modules/_colors.scss @@ -2,3 +2,17 @@ $primary-color: #ea8300; $additional-color: #d5041f; $complementary-color: #f5bf00; $neutralColor: #FFF; + +$mapOfPrimarColors: +(redGwo:#d5041f, +orangeGwo: #ea8300, +yellowGwo: #f5bf00, +whiteGwo: #FFF); + +$mapOfColors: +(backgoundColor:#FFF, +ColorBG: #f7f7f7, +footerColor: #fe6103, +linkCoror: #00c6ff, +hoverColor: #9600ff, +textColor: #bababa); diff --git a/sass/partials/_base.scss b/sass/partials/_base.scss index e69de29..6c86398 100644 --- a/sass/partials/_base.scss +++ b/sass/partials/_base.scss @@ -0,0 +1,27 @@ +@import "modules/_colors"; + +$smPhone:"(min-width: 600px)"; +$tablet: "(min-width: 768px) and (max-width: 1023px)"; +$desktop: "(min-width: 1024px)"; +$hdDesktop: "(min-width: 1600px)"; + +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +body { + background: map-get($mapOfPrimarColors, orangeGwo); + font-family: 'Open Sans', sans-serif; + text-rendering: optimizeSpeed; + image-rendering: pixelated; +} + +h2 { + color: map-get($mapOfPrimarColors, orangeGwo); + font-kerning: auto; + font-weight: 800; + font-size: 18px; + margin-top: 1rem; +} diff --git a/sass/partials/_footer.scss b/sass/partials/_footer.scss index e69de29..9186584 100644 --- a/sass/partials/_footer.scss +++ b/sass/partials/_footer.scss @@ -0,0 +1,2 @@ +footer { +} From 012fb199ae915e35efda97d3b883acf1848c45ef Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Tue, 14 Nov 2017 00:42:23 +0100 Subject: [PATCH 12/20] 8. Sass RWD --- css/main.css | 115 ++++++++++++++++++++++++++++++++++----- sass/main.scss | 77 ++++++++++++++++++++++---- sass/modules/_all.scss | 7 +-- sass/modules/_media.scss | 56 +++++++++++++++++++ sass/partials/_base.scss | 5 -- 5 files changed, 225 insertions(+), 35 deletions(-) create mode 100644 sass/modules/_media.scss diff --git a/css/main.css b/css/main.css index 445d7a6..69de82c 100644 --- a/css/main.css +++ b/css/main.css @@ -12,7 +12,6 @@ section #showData .book { section form input { box-sizing: border-box; - width: 100%; padding: 16px; outline: 0; font-family: inherit; @@ -21,7 +20,6 @@ section form input { section form, section #showData { padding: 1rem; - width: 65rem; margin: 10px auto; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); border-radius: 1px; @@ -53,13 +51,34 @@ section form { font-size: 16px; } -section form #searchBook { - width: 59%; +@media (min-width: 300px) and (max-width: 599px) { + section form { + width: 95%; + } } -section form #submit { - width: 39%; - margin-left: 0.6rem; +@media (min-width: 600px) and (max-width: 767px) { + section form { + width: 95%; + } +} + +@media (min-width: 768px) and (max-width: 1110px) { + section form { + width: 95%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + section form { + width: 80%; + } +} + +@media (min-width: 1601px) { + section form { + width: 80%; + } } section form input[type="submit"] { @@ -69,10 +88,20 @@ section form input[type="submit"] { cursor: pointer; } +section form #searchBook { + width: 70%; +} + +section form #submit { + width: 26%; + margin-left: 0.6rem; +} + section form input { border: 1px solid #ea8300; - font-family: inherit; color: #ea8300; + font-family: inherit; + width: 100%; } section form input[type="placeholder"] { @@ -124,20 +153,80 @@ section form #submit:hover { } section #showData { + width: 65rem; display: flex; flex-wrap: wrap; background: #FFF; font-size: 12px; } +@media (min-width: 300px) and (max-width: 599px) { + section #showData { + width: 95%; + } +} + +@media (min-width: 600px) and (max-width: 767px) { + section #showData { + width: 95%; + } +} + +@media (min-width: 768px) and (max-width: 1110px) { + section #showData { + width: 95%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + section #showData { + width: 80%; + } +} + +@media (min-width: 1601px) { + section #showData { + width: 80%; + } +} + section #showData .book { - position: relative; width: 33.1%; padding: 1rem 1rem 1rem; background: #FFF; margin: 1px; } +@media (min-width: 768px) and (max-width: 1110px) { + section #showData .book { + width: 49%; + } +} + +@media (min-width: 300px) and (max-width: 599px) { + section #showData .book { + width: 100%; + } +} + +@media (min-width: 600px) and (max-width: 767px) { + section #showData .book { + width: 49%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + section #showData .book { + width: 33%; + } +} + +@media (min-width: 1601px) { + section #showData .book { + width: 24.7%; + } +} + section #showData .book .author { padding-top: 1rem; } @@ -166,7 +255,7 @@ section #showData .book .btnDiv .btnBook { margin: 0 auto; text-align: center; transition: all ease .5s; - width: 17rem; + width: 90%; border: 1px solid #ea8300; border-radius: 0.2rem; padding: 20px auto; @@ -174,7 +263,7 @@ section #showData .book .btnDiv .btnBook { } section #showData .book .btnDiv .btnBook:hover { - width: 19rem; + width: 100%; padding: 20px auto; } @@ -205,7 +294,7 @@ section #showData .book .bookImage { overflow: hidden; padding: 1rem; height: 16rem; - border: 1px solid #FFF; + border-left: 1px solid #ea8300; background: #f7f7f7; } @@ -214,4 +303,4 @@ section #showData .book .bookImage img { height: 14rem; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJwYXJ0aWFscy9fZm9vdGVyLnNjc3MiLCJwYXJ0aWFscy9fYmFzZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL19hbGxcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fZm9vdGVyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Jhc2VcIjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG50ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcblxuICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDo1OSU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDozOSU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcblxuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0IDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdICB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAZXh0ZW5kICVmb3JtIDtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAzMy4xJTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgIG1hcmdpbjogMXB4O1xuXG4gICAgICAuYXV0aG9yIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG5cbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgYmFja2dvdW5kQ29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDY1cmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiAxN3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yQmFzaWM7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgcGFkZGluZzogMjBweCBhdXRvO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIHdpZHRoOiAxOXJlbTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxuXG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4kc21QaG9uZTpcIihtaW4td2lkdGg6IDYwMHB4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDEwMjRweClcIjtcbiRoZERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMHB4KVwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQW1CQSxBRW5CQSxPRm1CTyxDQUVMLElBQUksQUVwQkosTUFBTyxFRmtCVCxBRW5CQSxPRm1CTyxDQW1DTCxTQUFTLENBUVAsS0FBSyxBRTdEUCxNQUFPLEVGa0JULEFFbkJBLE9GbUJPLENBRUwsSUFBSSxBRW5CSixPQUFRLEVGaUJWLEFFbkJBLE9GbUJPLENBbUNMLFNBQVMsQ0FRUCxLQUFLLEFFNURQ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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fbWVkaWFcIjtcblxuQGltcG9ydCBcInBhcnRpYWxzL19mb290ZXJcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fYmFzZVwiO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICBAaW5jbHVkZSBpbnB1dFN1Ym1pdChtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDo3MCU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDoyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdICB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgQGluY2x1ZGUgcGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgc21QaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAZXh0ZW5kICVmb3JtIDtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIHdpZHRoOiAzMy4xJTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cblxuICAgICAgcGFkZGluZzogMXJlbSAxcmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcblxuICAgICAgfVxuXG4gICAgICAuYnRuRGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgICAgICAuYnRuQm9vayB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIDIuNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG5cbiRtYXAtdmFsdWVzOiAoXCIkbWluLXdpZHRoXCI6IDYwMHB4ICwgXCIkbWF4LXdpZHRoXCI6IDYwMHB4KTtcblxuJHBob25lMjogXCIobWluLXdpZHRoOiAxMDBweCkgYW5kIChtYXgtd2lkdGg6IDI5OXB4KVwiO1xuJHBob25lOiBcIihtaW4td2lkdGg6IDMwMHB4KSBhbmQgKG1heC13aWR0aDogNTk5cHgpXCI7XG4kc21QaG9uZTogXCIobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExMTBweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDExMTFweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweClcIjtcbiRtYXhEZXNrdG9wOiBcIihtaW4td2lkdGg6IDE2MDFweClcIjtcblxuXG4vLyAkbm9uLXJldGluYTogXCJzY3JlZW4gYW5kICgtd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW86IDEpXCI7XG4vLyAkcmV0aW5hOiBcIihtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIpLFxuLy8gICAgICAgICAgICAgICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDEuNWRwcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGhvbmUge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCB7XG4gIEBtZWRpYSAjeyRkZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3Age1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQXFCQSxBRXJCQSxPRnFCTyxDQUVMLElBQUksQUV0QkosTUFBTyxFRm9CVCxBRXJCQSxPRnFCTyxDQWtETCxTQUFTLENBMEJQLEtBQUssQUVo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 */ diff --git a/sass/main.scss b/sass/main.scss index d168ebe..9349195 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,5 +1,7 @@ @import "modules/_colors"; @import "modules/_all"; +@import "modules/_media"; + @import "partials/_footer"; @import "partials/_base"; @@ -20,27 +22,42 @@ textColor: #bababa); section { form { + @include phone { + width: 95%; + } + @include smPhone { + width: 95%; + } + @include tablet { + width: 95%; + } + @include desktop { + width: 80%; + } + @include maxDesktop { + width: 80%; + } + @extend %form ; @extend %clearfix ; + @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); + background: map-get($mapOfPrimarColors, whiteGwo); + font-size: 16px; + #searchBook { - width:59%; + width:70%; } #submit { - width:39%; + width:26%; margin-left: 0.6rem; } - - @extend %form ; - background: map-get($mapOfPrimarColors, whiteGwo); - font-size: 16px; - @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); - input { @extend %input ; border: 1px solid map-get($mapOfPrimarColors, orangeGwo); - font-family: inherit; color: map-get($mapOfPrimarColors, orangeGwo); + font-family: inherit; + width: 100%; } input[type="placeholder"] { @@ -53,6 +70,24 @@ section { } #showData { + + width: 65rem; + @include phone { + width: 95%; + } + @include smPhone { + width: 95%; + } + @include tablet { + width: 95%; + } + @include desktop { + width: 80%; + } + @include maxDesktop { + width: 80%; + } + display: flex; flex-wrap: wrap; @@ -63,8 +98,24 @@ section { .book { @extend %clearfix ; @extend %float ; - position: relative; width: 33.1%; + + @include tablet { + width: 49%; + } + @include phone { + width: 100%; + } + @include smPhone { + width: 49%; + } + @include desktop { + width: 33%; + } + @include maxDesktop { + width: 24.7%; + } + padding: 1rem 1rem 1rem; background: map-get($mapOfPrimarColors, whiteGwo); margin: 1px; @@ -94,7 +145,6 @@ section { margin-bottom: 2rem; padding: 1rem 2.5rem; font-size: 12px; - @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } @@ -111,13 +161,16 @@ section { overflow: hidden; padding: 1rem; height: 16rem; - border: 1px solid map-get($mapOfColors, backgoundColor); + border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); background: map-get($mapOfColors, ColorBG); + + img { box-shadow: 0 2px 5px rgba(0,0,0,0.1); height: 14rem; } } + } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 4182825..c4d6720 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -14,7 +14,6 @@ %input { box-sizing: border-box; - width: 100%; padding: 16px; outline: 0; font-family: inherit; @@ -23,7 +22,6 @@ %form { padding: 1rem; - width: 65rem; margin: 10px auto; box-shadow: 0 2px 5px rgba(0,0,0,0.3); border-radius: 1px; @@ -86,14 +84,14 @@ margin: 0 auto; text-align: center; transition: all ease .5s; - width: 17rem; + width: 90%; border: 1px solid $colorBasic; border-radius: 0.2rem; padding: 20px auto; text-transform: uppercase; &:hover { - width: 19rem; + width: 100%; padding: 20px auto; } @@ -112,5 +110,4 @@ opacity: 1; left: 8px; } - } diff --git a/sass/modules/_media.scss b/sass/modules/_media.scss new file mode 100644 index 0000000..8394d55 --- /dev/null +++ b/sass/modules/_media.scss @@ -0,0 +1,56 @@ +@import "modules/_colors"; + + +$map-values: ("$min-width": 600px , "$max-width": 600px); + +$phone2: "(min-width: 100px) and (max-width: 299px)"; +$phone: "(min-width: 300px) and (max-width: 599px)"; +$smPhone: "(min-width: 600px) and (max-width: 767px)"; +$tablet: "(min-width: 768px) and (max-width: 1110px)"; +$desktop: "(min-width: 1111px) and (max-width: 1600px)"; +$maxDesktop: "(min-width: 1601px)"; + + +// $non-retina: "screen and (-webkit-max-device-pixel-ratio: 1)"; +// $retina: "(min--moz-device-pixel-ratio: 1.5), +// (-o-min-device-pixel-ratio: 3/2), +// (-webkit-min-device-pixel-ratio: 1.5), +// (min-device-pixel-ratio: 1.5), +// (min-resolution: 144dpi), +// (min-resolution: 1.5dppx)"; + +@mixin phone2 { + @media #{$phone} { + @content; + } +} + +@mixin phone { + @media #{$phone} { + @content; + } +} + +@mixin smPhone { + @media #{$smPhone} { + @content; + } +} + +@mixin tablet { + @media #{$tablet} { + @content; + } +} + +@mixin desktop { + @media #{$desktop} { + @content; + } +} + +@mixin maxDesktop { + @media #{$maxDesktop} { + @content; + } +} diff --git a/sass/partials/_base.scss b/sass/partials/_base.scss index 6c86398..88f7eb0 100644 --- a/sass/partials/_base.scss +++ b/sass/partials/_base.scss @@ -1,10 +1,5 @@ @import "modules/_colors"; -$smPhone:"(min-width: 600px)"; -$tablet: "(min-width: 768px) and (max-width: 1023px)"; -$desktop: "(min-width: 1024px)"; -$hdDesktop: "(min-width: 1600px)"; - * { box-sizing: border-box; margin: 0; From d4fa9284e46af9fc8f19e2d8807ae90ccad71d8e Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Tue, 14 Nov 2017 21:19:31 +0100 Subject: [PATCH 13/20] 9. configuracja webpack --- css/main.css | 23 +++++++----- dist/bundle.js | 96 +++++++++-------------------------------------- index.html | 7 ++-- js/data.js | 38 +++++++++---------- my-index.html | 40 ++++++++++++++++++++ package.json | 5 ++- sass/main.scss | 70 ++++++++++++++++------------------ webpack.config.js | 11 +++++- 8 files changed, 140 insertions(+), 150 deletions(-) create mode 100644 my-index.html diff --git a/css/main.css b/css/main.css index 69de82c..81f823f 100644 --- a/css/main.css +++ b/css/main.css @@ -51,6 +51,13 @@ section form { font-size: 16px; } +section form input[type="submit"] { + background: #d5041f; + border-color: transparent; + color: #FFF; + cursor: pointer; +} + @media (min-width: 300px) and (max-width: 599px) { section form { width: 95%; @@ -81,13 +88,6 @@ section form { } } -section form input[type="submit"] { - background: #d5041f; - border-color: transparent; - color: #FFF; - cursor: pointer; -} - section form #searchBook { width: 70%; } @@ -192,7 +192,7 @@ section #showData { section #showData .book { width: 33.1%; - padding: 1rem 1rem 1rem; + padding: 1rem; background: #FFF; margin: 1px; } @@ -303,4 +303,9 @@ section #showData .book .bookImage img { height: 14rem; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fbWVkaWFcIjtcblxuQGltcG9ydCBcInBhcnRpYWxzL19mb290ZXJcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fYmFzZVwiO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWZvcm0gO1xuICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICBAaW5jbHVkZSBpbnB1dFN1Ym1pdChtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDo3MCU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDoyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dCA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdICB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gICNzaG93RGF0YSB7XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgQGluY2x1ZGUgcGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgc21QaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAZXh0ZW5kICVmb3JtIDtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4IDtcbiAgICAgIEBleHRlbmQgJWZsb2F0IDtcbiAgICAgIHdpZHRoOiAzMy4xJTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cblxuICAgICAgcGFkZGluZzogMXJlbSAxcmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcblxuICAgICAgfVxuXG4gICAgICAuYnRuRGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgICAgICAuYnRuQm9vayB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIDIuNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgfVxuXG4gICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIHRleHRDb2xvcik7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG5cbiRtYXAtdmFsdWVzOiAoXCIkbWluLXdpZHRoXCI6IDYwMHB4ICwgXCIkbWF4LXdpZHRoXCI6IDYwMHB4KTtcblxuJHBob25lMjogXCIobWluLXdpZHRoOiAxMDBweCkgYW5kIChtYXgtd2lkdGg6IDI5OXB4KVwiO1xuJHBob25lOiBcIihtaW4td2lkdGg6IDMwMHB4KSBhbmQgKG1heC13aWR0aDogNTk5cHgpXCI7XG4kc21QaG9uZTogXCIobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExMTBweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDExMTFweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweClcIjtcbiRtYXhEZXNrdG9wOiBcIihtaW4td2lkdGg6IDE2MDFweClcIjtcblxuXG4vLyAkbm9uLXJldGluYTogXCJzY3JlZW4gYW5kICgtd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW86IDEpXCI7XG4vLyAkcmV0aW5hOiBcIihtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIpLFxuLy8gICAgICAgICAgICAgICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDEuNWRwcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGhvbmUge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCB7XG4gIEBtZWRpYSAjeyRkZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3Age1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQXFCQSxBRXJCQSxPRnFCTyxDQUVMLElBQUksQUV0QkosTUFBTyxFRm9CVCxBRXJCQSxPRnFCTyxDQWtETCxTQUFTLENBMEJQLEtBQUssQUVo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 */ +section #showData .note { + font-weight: 800; + color: #d5041f; +} + +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fbWVkaWFcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fZm9vdGVyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Jhc2VcIjtcblxuLy8gJG1hcE9mUHJpbWFyQ29sb3JzOlxuLy8gKHJlZEd3bzojZDUwNDFmLFxuLy8gb3JhbmdlR3dvOiAjZWE4MzAwLFxuLy8geWVsbG93R3dvOiAjZjViZjAwLFxuLy8gd2hpdGVHd286ICNGRkYpO1xuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIHRleHRDb2xvcjogI2JhYmFiYSk7XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cblxuICAgICNzZWFyY2hCb29rIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNnJlbTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAjc2hvd0RhdGEge1xuICAgIHdpZHRoOiA2NXJlbTtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGV4dGVuZCAlZm9ybTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgICAgQGV4dGVuZCAlZmxvYXQ7XG4gICAgICB3aWR0aDogMzMuMSU7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcGhvbmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtYXhEZXNrdG9wIHtcbiAgICAgICAgd2lkdGg6IDI0LjclO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICBtYXJnaW46IDFweDtcblxuICAgICAgLmF1dGhvciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAudGl0bGUge31cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG5cbiRtYXAtdmFsdWVzOiAoXCIkbWluLXdpZHRoXCI6IDYwMHB4ICwgXCIkbWF4LXdpZHRoXCI6IDYwMHB4KTtcblxuJHBob25lMjogXCIobWluLXdpZHRoOiAxMDBweCkgYW5kIChtYXgtd2lkdGg6IDI5OXB4KVwiO1xuJHBob25lOiBcIihtaW4td2lkdGg6IDMwMHB4KSBhbmQgKG1heC13aWR0aDogNTk5cHgpXCI7XG4kc21QaG9uZTogXCIobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExMTBweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDExMTFweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweClcIjtcbiRtYXhEZXNrdG9wOiBcIihtaW4td2lkdGg6IDE2MDFweClcIjtcblxuXG4vLyAkbm9uLXJldGluYTogXCJzY3JlZW4gYW5kICgtd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW86IDEpXCI7XG4vLyAkcmV0aW5hOiBcIihtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIpLFxuLy8gICAgICAgICAgICAgICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDEuNWRwcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGhvbmUge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCB7XG4gIEBtZWRpYSAjeyRkZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3Age1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJt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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 371c291..4fd4f42 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -65,96 +65,36 @@ /************************************************************************/ /******/ ([ /* 0 */ +/*!*******************!*\ + !*** ./js/app.js ***! + \*******************/ +/*! dynamic exports provided */ +/*! all exports used */ /***/ (function(module, exports, __webpack_require__) { -__webpack_require__(1); -__webpack_require__(2); - +eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./ajax.js */ 2);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2FwcC5qcz9jOTllIl0sInNvdXJjZXNDb250ZW50IjpbInJlcXVpcmUoXCIuL2RhdGEuanNcIik7XG5yZXF1aXJlKFwiLi9hamF4LmpzXCIpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9hcHAuanNcbi8vIG1vZHVsZSBpZCA9IDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */ +/*!********************!*\ + !*** ./js/data.js ***! + \********************/ +/*! dynamic exports provided */ +/*! all exports used */ /***/ (function(module, exports) { -document.addEventListener("DOMContentLoaded", function () { - console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM - - var apiPath = "https://gwo.pl/booksApi/v1/search?query="; - var submit = document.getElementById("submit"); // Wyszukiwanie przycisku submit w DOM-ie - var userInput = document.getElementById("searchBook"); - - var bookContainer = document.getElementById("show-data"); - var pageCounter = 1; - - submit.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit - this.url = apiPath + encodeURI(userInput.value); - console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany - - var ourRequest = new XMLHttpRequest(); - - ourRequest.open("GET", this.url); // używam metody "GET" aby pobrać dane - ourRequest.onload = function() { - - if (ourRequest.status >= 200 && ourRequest.status < 400) { - var ourData = JSON.parse(ourRequest.responseText); - renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). - - } else { - console.log("We connected to the server, but it returned an error."); - } - }; - - ourRequest.onerror = function() { - console.log("Connection error"); - }; - ourRequest.send(); - - - - function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer - pageCounter ++ - - var htmlString = ""; - - console.log(pageCounter); - - for (i = 0; i < data.length; i++) { - htmlString += - "
" + - "
" + '' + "
" + - "
" + - "
" + data[i].title + "
" + - "
" + data[i].author + "
" + - "
" + data[i].isbn + "
" + - "
" + data[i].men + "
" + - "
" + data[i].pages_count + "
" + - "
" + JSON.stringify(data[i].levels) + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - do poprawy - "
" + data[i].subject + "
" + - "
" + data[i].type + "
" + - "
" + "sprawdź" + "
" + - "
" + "
"; - - } - - if ( pageCounter > 2 ) { - - console.log("jak usunąć bookContainer przed przekazaniem parametru do API ? "); - bookContainer.insertAdjacentHTML("afterbegin", htmlString); - } - if ( pageCounter = 1 ) { - bookContainer.insertAdjacentHTML("beforeend", htmlString); - } - } - - }); - -}); - +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n // \"
\" + \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" +\n \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgLy8gXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnIHN0eWxlPSdiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIrZGF0YVtpXS5jb3ZlcitcIiknPlwiICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnPlwiICsgJzxpbWcgc3JjPScgKyBkYXRhW2ldLmNvdmVyICsgJyArIGhlaWdodD1cIjI1MFwiPicgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tJbmZvJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSd0aXRsZSc+XCIgKyBcIjxoMj5cIiArIChkYXRhW2ldLnRpdGxlKS5yZXBsYWNlKC9cXC4vZywgJzxicj4nKSArIFwiPC9oMj5cIiArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYXV0aG9yJz5cIiArIFwiYXV0b3J6eTogXCIgKyAoZGF0YVtpXS5hdXRob3IpICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdpc2JuJz5cIiArIFwiSVNCTjogXCIgKyBkYXRhW2ldLmlzYm4gKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J21lbic+XCIgKyBcIm51bWVyIGRvcHVzemN6ZW5pYSBNRU46IFwiICsgZGF0YVtpXS5tZW4gKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3BhZ2VzX2NvdW50Jz5cIiArIFwibGljemJhIHN0cm9uOiBcIiArIGRhdGFbaV0ucGFnZXNfY291bnQgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2xldmVscyc+XCIgKyBcInBvemlvbXkgbmF1Y3phbmlhOiBcIiArIEpTT04uc3RyaW5naWZ5KGRhdGFbaV0ubGV2ZWxzKS5yZXBsYWNlKC86fFwifHNjaG9vbHxjbGFzc3x9fHt8XXxbW10vZywgJyAnKSArIFwiPC9kaXY+XCIgKyAvLyBKU09OLnN0cmluZ2lmeSB6d3JhY2EgbWkgY2nEhWcgemF3aWVyYWrEhWN5IHRla3N0XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdzdWJqZWN0Jz5cIiArIFwicHJ6ZWRtaW90OiBcIiArIGRhdGFbaV0uc3ViamVjdCArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndHlwZSc+XCIgKyBcInJvZHphaiBwdWJsaWthY2ppOiBcIiArIGRhdGFbaV0udHlwZSArIFwiPC9kaXY+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2J0bkRpdic+XCIgKyAnPGEgaHJlZj0nICsgZGF0YVtpXS51cmwgKyAnIGNsYXNzPVwiYnRuQm9va1wiID4nICsgXCJQcnplamTFuiBkbyBrc2nEmWdhcm5pXCIgKyBcIjwvYT5cIiArIFwiPC9kaXY+XCIgKyBcIjwvZGl2PlwiO1xuICAgICAgfVxuICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzaG93RGF0YVwiKS5pbm5lckhUTUwgPSBodG1sU3RyaW5nOyAvLyB3eWtvcnp5c3RhxYJlbSBhdHJ5YnV0IGlubmVySFRNTCBrdMOzcnkgendyYWNhIGtvZCBIVE1MLlxuICAgIH1cbiAgfSk7XG59KTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vanMvZGF0YS5qc1xuLy8gbW9kdWxlIGlkID0gMVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ +/*!********************!*\ + !*** ./js/ajax.js ***! + \********************/ +/*! dynamic exports provided */ +/*! all exports used */ /***/ (function(module, exports) { - +eval("//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///2\n"); /***/ }) /******/ ]); \ No newline at end of file diff --git a/index.html b/index.html index d709096..9a502ff 100644 --- a/index.html +++ b/index.html @@ -1,4 +1,3 @@ - @@ -35,7 +34,7 @@ - - - + + + diff --git a/js/data.js b/js/data.js index 2c5f598..92d3d56 100644 --- a/js/data.js +++ b/js/data.js @@ -1,4 +1,4 @@ -document.addEventListener("DOMContentLoaded", function () { +document.addEventListener("DOMContentLoaded", function() { console.log("DOM fully loaded and parsed"); // test - załadowanie drzewa DOM var apiPath = "https://gwo.pl/booksApi/v1/search?query="; @@ -10,22 +10,22 @@ document.addEventListener("DOMContentLoaded", function () { console.log(bookContainer); var pageCounter = 1; - submitButton.addEventListener ("click", function(event) { // dodanie eventu na przycisk submit - this.url = apiPath + encodeURI(userInput.value); + submitButton.addEventListener("click", function(event) { // dodanie eventu na przycisk submit + this.url = apiPath + encodeURI(userInput.value); console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany var ourRequest = new XMLHttpRequest(); - ourRequest.open("GET", this.url); // używam metody "GET" aby pobrać dane + ourRequest.open("GET", this.url); // używam metody "GET" aby pobrać dane ourRequest.onload = function() { if (ourRequest.status >= 200 && ourRequest.status < 400) { var ourData = JSON.parse(ourRequest.responseText); renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML(). - if (ourData.length === 0 ) { - var ourData = "Brak pozycji, spróbuj ponownie."; + if (ourData.length === 0) { + var ourData = "
Brak pozycji, spróbuj ponownie.
"; document.getElementById("showData").innerHTML = ourData; } @@ -48,19 +48,19 @@ document.addEventListener("DOMContentLoaded", function () { for (i = 0; i < data.length; i++) { htmlString += - "
" + - // "
" + "
" + - "
"+ '' + "
" + - "
" + - "
" + "

" + (data[i].title).replace(/\./g,'
') + "

"+ "
" + - "
" + "autorzy: "+ (data[i].author) + "
" + - "
" + "ISBN: " + data[i].isbn + "
" + - "
" + "numer dopuszczenia MEN: " + data[i].men + "
" + - "
" + "liczba stron: " + data[i].pages_count + "
" + - "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g,' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst - "
" + "przedmiot: " + data[i].subject + "
" + - "
" + "rodzaj publikacji: " + data[i].type + "
" + "
" + - "" + "
"; + "
" + + // "
" + "
" + + "
" + '' + "
" + + "
" + + "
" + "

" + (data[i].title).replace(/\./g, '
') + "

" + "
" + + "
" + "autorzy: " + (data[i].author) + "
" + + "
" + "ISBN: " + data[i].isbn + "
" + + "
" + "numer dopuszczenia MEN: " + data[i].men + "
" + + "
" + "liczba stron: " + data[i].pages_count + "
" + + "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g, ' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst + "
" + "przedmiot: " + data[i].subject + "
" + + "
" + "rodzaj publikacji: " + data[i].type + "
" + "
" + + "" + "
"; } document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } diff --git a/my-index.html b/my-index.html new file mode 100644 index 0000000..7f2a920 --- /dev/null +++ b/my-index.html @@ -0,0 +1,40 @@ + + + + + + + + Zadanie rekrutacyjne + + + + +
+
+
+
+ +
+ +
+ + +
+ +
+

www.gwo.pl

+
+ +
+ +
+ +
+
+ +
+ + + + diff --git a/package.json b/package.json index 74958d6..6ae79f5 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,9 @@ "main": "index.js", "scripts": { "test": "test", - "server": "webpack --config webpack.config.js" + "server": "webpack --config webpack.config.js", + "dev": "webpack -d --watch", + "prod": "webpack -p" }, "repository": { "type": "git", @@ -28,6 +30,7 @@ "gulp-sass": "^3.1.0", "gulp-sourcemaps": "^2.6.1", "gulp-watch": "^4.3.11", + "html-webpack-plugin": "^2.30.1", "webpack": "^3.8.1" } } diff --git a/sass/main.scss b/sass/main.scss index 9349195..95437f7 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,27 +1,31 @@ @import "modules/_colors"; @import "modules/_all"; @import "modules/_media"; - @import "partials/_footer"; @import "partials/_base"; -$mapOfPrimarColors: -(redGwo:#d5041f, -orangeGwo: #ea8300, -yellowGwo: #f5bf00, -whiteGwo: #FFF); - -$mapOfColors: -(backgoundColor:#FFF, -ColorBG: #f7f7f7, -footerColor: #fe6103, -linkCoror: #00c6ff, -hoverColor: #9600ff, -textColor: #bababa); +// $mapOfPrimarColors: +// (redGwo:#d5041f, +// orangeGwo: #ea8300, +// yellowGwo: #f5bf00, +// whiteGwo: #FFF); +// +// $mapOfColors: +// (backgoundColor:#FFF, +// ColorBG: #f7f7f7, +// footerColor: #fe6103, +// linkCoror: #00c6ff, +// hoverColor: #9600ff, +// textColor: #bababa); section { form { + @extend %form; + @extend %clearfix; + @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); + background: map-get($mapOfPrimarColors, whiteGwo); + font-size: 16px; @include phone { width: 95%; } @@ -38,29 +42,24 @@ section { width: 80%; } - @extend %form ; - @extend %clearfix ; - @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); - background: map-get($mapOfPrimarColors, whiteGwo); - font-size: 16px; - #searchBook { - width:70%; + width: 70%; } #submit { - width:26%; + width: 26%; margin-left: 0.6rem; } + input { - @extend %input ; + @extend %input; border: 1px solid map-get($mapOfPrimarColors, orangeGwo); color: map-get($mapOfPrimarColors, orangeGwo); font-family: inherit; width: 100%; } - input[type="placeholder"] { + input[type="placeholder"] { color: map-get($mapOfColors, footerColor); } @@ -70,7 +69,6 @@ section { } #showData { - width: 65rem; @include phone { width: 95%; @@ -87,19 +85,16 @@ section { @include maxDesktop { width: 80%; } - display: flex; flex-wrap: wrap; - - @extend %form ; + @extend %form; background: map-get($mapOfPrimarColors, whiteGwo); font-size: 12px; .book { - @extend %clearfix ; - @extend %float ; + @extend %clearfix; + @extend %float; width: 33.1%; - @include tablet { width: 49%; } @@ -115,8 +110,7 @@ section { @include maxDesktop { width: 24.7%; } - - padding: 1rem 1rem 1rem; + padding: 1rem; background: map-get($mapOfPrimarColors, whiteGwo); margin: 1px; @@ -124,14 +118,12 @@ section { padding-top: 1rem; } - .title { - } + .title {} .bookInfo { width: 100%; background: map-get($mapOfColors, ColorBG); padding: 16px 12px 16px 16px; - } .btnDiv { @@ -164,13 +156,15 @@ section { border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); background: map-get($mapOfColors, ColorBG); - img { box-shadow: 0 2px 5px rgba(0,0,0,0.1); height: 14rem; } } - + } + .note { + font-weight: 800; + color: map-get($mapOfPrimarColors, redGwo); } } } diff --git a/webpack.config.js b/webpack.config.js index 0f994eb..405335d 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,6 +1,15 @@ +var HtmlWebpackPlugin = require('html-webpack-plugin'); + module.exports = { entry: './js/app.js', output: { + // path: 'dist' filename: './dist/bundle.js' - } + }, + plugins: [ + new HtmlWebpackPlugin({ + title: 'fronted_recruitment', + template: 'my-index.html', //load + }) + ] }; From b2ef0a649edb056f25182c0c663dc9234ea62c73 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 16 Nov 2017 19:52:12 +0100 Subject: [PATCH 14/20] mixiny - flexbox --- css/main.css | 32 ++++++---- sass/main.scss | 15 ++--- sass/modules/_all.scss | 1 - sass/modules/_flex.scss | 132 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 157 insertions(+), 23 deletions(-) create mode 100644 sass/modules/_flex.scss diff --git a/css/main.css b/css/main.css index 81f823f..8a5ed6a 100644 --- a/css/main.css +++ b/css/main.css @@ -1,15 +1,10 @@ @charset "UTF-8"; -section form:after, section #showData .book:after, section form:before, section #showData .book:before { +section form:after, section form:before { content: ""; display: block; clear: both; } -section #showData .book { - float: left; - display: block; -} - section form input { box-sizing: border-box; padding: 16px; @@ -153,9 +148,16 @@ section form #submit:hover { } section #showData { - width: 65rem; + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; display: flex; + -webkit-flex-wrap: wrap; + -moz-flex-wrap: wrap; + -ms-flex-wrap: wrap; flex-wrap: wrap; + width: 65rem; background: #FFF; font-size: 12px; } @@ -238,15 +240,20 @@ section #showData .book .bookInfo { } section #showData .book .btnDiv { + -webkit-align-self: flex-end; + -moz-align-self: flex-end; + -ms-align-self: flex-end; + align-self: flex-end; + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; margin-top: auto; margin-top: 1rem; - display: -webkit-flex; - -webkit-align-items: center; - align-items: flex-end; } section #showData .book .btnDiv .btnBook { - margin-bottom: 2rem; padding: 1rem 2.5rem; font-size: 12px; text-decoration: none; @@ -270,7 +277,6 @@ section #showData .book .btnDiv .btnBook:hover { section #showData .book .btnDiv .btnBook:after { content: "→"; transition: all ease .5s; - position: relative; opacity: 0; left: -12px; } @@ -308,4 +314,4 @@ section #showData .note { color: #d5041f; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fbWVkaWFcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9fZm9vdGVyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Jhc2VcIjtcblxuLy8gJG1hcE9mUHJpbWFyQ29sb3JzOlxuLy8gKHJlZEd3bzojZDUwNDFmLFxuLy8gb3JhbmdlR3dvOiAjZWE4MzAwLFxuLy8geWVsbG93R3dvOiAjZjViZjAwLFxuLy8gd2hpdGVHd286ICNGRkYpO1xuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIHRleHRDb2xvcjogI2JhYmFiYSk7XG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cblxuICAgICNzZWFyY2hCb29rIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNnJlbTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAjc2hvd0RhdGEge1xuICAgIHdpZHRoOiA2NXJlbTtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGV4dGVuZCAlZm9ybTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgICAgQGV4dGVuZCAlZmxvYXQ7XG4gICAgICB3aWR0aDogMzMuMSU7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcGhvbmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtYXhEZXNrdG9wIHtcbiAgICAgICAgd2lkdGg6IDI0LjclO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICBtYXJnaW46IDFweDtcblxuICAgICAgLmF1dGhvciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAudGl0bGUge31cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcbiAgICAgIH1cblxuICAgICAgLmJ0bkRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJ0bkJvb2sge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG5cbiRtYXAtdmFsdWVzOiAoXCIkbWluLXdpZHRoXCI6IDYwMHB4ICwgXCIkbWF4LXdpZHRoXCI6IDYwMHB4KTtcblxuJHBob25lMjogXCIobWluLXdpZHRoOiAxMDBweCkgYW5kIChtYXgtd2lkdGg6IDI5OXB4KVwiO1xuJHBob25lOiBcIihtaW4td2lkdGg6IDMwMHB4KSBhbmQgKG1heC13aWR0aDogNTk5cHgpXCI7XG4kc21QaG9uZTogXCIobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KVwiO1xuJHRhYmxldDogXCIobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExMTBweClcIjtcbiRkZXNrdG9wOiBcIihtaW4td2lkdGg6IDExMTFweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweClcIjtcbiRtYXhEZXNrdG9wOiBcIihtaW4td2lkdGg6IDE2MDFweClcIjtcblxuXG4vLyAkbm9uLXJldGluYTogXCJzY3JlZW4gYW5kICgtd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW86IDEpXCI7XG4vLyAkcmV0aW5hOiBcIihtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIpLFxuLy8gICAgICAgICAgICAgICAgICAgICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDEuNWRwcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGhvbmUge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCB7XG4gIEBtZWRpYSAjeyRkZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3Age1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJmb290ZXIge1xufVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4iXSwibmFtZXMiOltdLCJt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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI2JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgd2lkdGg6IDMzLjElO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHt9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIC5idG5EaXYge1xuICAgICAgICBAaW5jbHVkZSBhbGlnbi1zZWxmKGZsZXgtZW5kKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAuYnRuQm9vayB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiLy8gRmxleGJveCBkaXNwbGF5XG4gIEBtaXhpbiBmbGV4Ym94KCkge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLy8gVGhlICdmbGV4JyBzaG9ydGhhbmRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxwb3NpdGl2ZS1udW1iZXI+LCBpbml0aWFsLCBhdXRvLCBvciBub25lXG4gIEBtaXhpbiBmbGV4KCR2YWx1ZXMpIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgIC1tb3otYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgIC13ZWJraXQtZmxleDogJHZhbHVlcztcbiAgICBcdCAgLW1zLWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgICAgICBmbGV4OiAkdmFsdWVzO1xuICB9XG5cbiAgLy8gRmxleCBGbG93IERpcmVjdGlvblxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyByb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgfVxuXG4gIC8vIEZsZXggTGluZSBXcmFwcGluZ1xuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBp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 */ diff --git a/sass/main.scss b/sass/main.scss index 95437f7..ee2bcda 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -1,5 +1,6 @@ @import "modules/_colors"; @import "modules/_all"; +@import "modules/_flex"; @import "modules/_media"; @import "partials/_footer"; @import "partials/_base"; @@ -69,6 +70,9 @@ section { } #showData { + @include flexbox(); + @include flex-wrap(wrap); + width: 65rem; @include phone { width: 95%; @@ -85,15 +89,11 @@ section { @include maxDesktop { width: 80%; } - display: flex; - flex-wrap: wrap; @extend %form; background: map-get($mapOfPrimarColors, whiteGwo); font-size: 12px; .book { - @extend %clearfix; - @extend %float; width: 33.1%; @include tablet { width: 49%; @@ -127,14 +127,11 @@ section { } .btnDiv { + @include align-self(flex-end); + @include flexbox(); margin-top: auto; margin-top: 1rem; - display: -webkit-flex; - -webkit-align-items: center; - align-items: flex-end; - .btnBook { - margin-bottom: 2rem; padding: 1rem 2.5rem; font-size: 12px; @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index c4d6720..36a73b1 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -99,7 +99,6 @@ &:after { content: "→"; transition: all ease .5s; - position:relative; opacity: 0; left: -12px; } diff --git a/sass/modules/_flex.scss b/sass/modules/_flex.scss new file mode 100644 index 0000000..cc3c4cd --- /dev/null +++ b/sass/modules/_flex.scss @@ -0,0 +1,132 @@ +// Flexbox display + @mixin flexbox() { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + } + + // The 'flex' shorthand + // - applies to: flex items + // , initial, auto, or none + @mixin flex($values) { + -webkit-box-flex: $values; + -moz-box-flex: $values; + -webkit-flex: $values; + -ms-flex: $values; + flex: $values; + } + + // Flex Flow Direction + // - applies to: flex containers + // row | row-reverse | column | column-reverse + @mixin flex-direction($direction) { + -webkit-flex-direction: $direction; + -moz-flex-direction: $direction; + -ms-flex-direction: $direction; + flex-direction: $direction; + } + + // Flex Line Wrapping + // - applies to: flex containers + // nowrap | wrap | wrap-reverse + @mixin flex-wrap($wrap) { + -webkit-flex-wrap: $wrap; + -moz-flex-wrap: $wrap; + -ms-flex-wrap: $wrap; + flex-wrap: $wrap; + } + + // Flex Direction and Wrap + // - applies to: flex containers + // || + @mixin flex-flow($flow) { + -webkit-flex-flow: $flow; + -moz-flex-flow: $flow; + -ms-flex-flow: $flow; + flex-flow: $flow; + } + + // Display Order + // - applies to: flex items + // + @mixin order($val) { + -webkit-box-ordinal-group: $val; + -moz-box-ordinal-group: $val; + -ms-flex-order: $val; + -webkit-order: $val; + order: $val; + } + + // Flex grow factor + // - applies to: flex items + // + @mixin flex-grow($grow) { + -webkit-flex-grow: $grow; + -moz-flex-grow: $grow; + -ms-flex-grow: $grow; + flex-grow: $grow; + } + + // Flex shrink + // - applies to: flex item shrink factor + // + @mixin flex-shrink($shrink) { + -webkit-flex-shrink: $shrink; + -moz-flex-shrink: $shrink; + -ms-flex-shrink: $shrink; + flex-shrink: $shrink; + } + + // Flex basis + // - the initial main size of the flex item + // - applies to: flex itemsnitial main size of the flex item + // + @mixin flex-basis($width) { + -webkit-flex-basis: $width; + -moz-flex-basis: $width; + -ms-flex-basis: $width; + flex-basis: $width; + } + + // Axis Alignment + // - applies to: flex containers + // flex-start | flex-end | center | space-between | space-around + @mixin justify-content($justify) { + -webkit-justify-content: $justify; + -moz-justify-content: $justify; + -ms-justify-content: $justify; + justify-content: $justify; + -ms-flex-pack: $justify; + } + + // Packing Flex Lines + // - applies to: multi-line flex containers + // flex-start | flex-end | center | space-between | space-around | stretch + @mixin align-content($align) { + -webkit-align-content: $align; + -moz-align-content: $align; + -ms-align-content: $align; + align-content: $align; + } + + // Cross-axis Alignment + // - applies to: flex containers + // flex-start | flex-end | center | baseline | stretch + @mixin align-items($align) { + -webkit-align-items: $align; + -moz-align-items: $align; + -ms-align-items: $align; + align-items: $align; + } + + // Cross-axis Alignment + // - applies to: flex items + // auto | flex-start | flex-end | center | baseline | stretch + @mixin align-self($align) { + -webkit-align-self: $align; + -moz-align-self: $align; + -ms-align-self: $align; + align-self: $align; + } From a42ff8f9561d996ad226e9bc3320d659c1bc2141 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Thu, 16 Nov 2017 23:21:30 +0100 Subject: [PATCH 15/20] =?UTF-8?q?wyr=C3=B3wnanie=20przycisk=C3=B3w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/main.css | 38 ++++++++++++++++++++------------------ sass/main.scss | 36 +++++++++++++++++++++--------------- 2 files changed, 41 insertions(+), 33 deletions(-) diff --git a/css/main.css b/css/main.css index 8a5ed6a..8706786 100644 --- a/css/main.css +++ b/css/main.css @@ -1,10 +1,4 @@ @charset "UTF-8"; -section form:after, section form:before { - content: ""; - display: block; - clear: both; -} - section form input { box-sizing: border-box; padding: 16px; @@ -193,12 +187,26 @@ section #showData { } section #showData .book { + -webkit-align-self: flex-end; + -moz-align-self: flex-end; + -ms-align-self: flex-end; + align-self: flex-end; + justify-self: flex-end; width: 33.1%; padding: 1rem; background: #FFF; margin: 1px; } +section #showData .book :nth-last-child(1) { + -webkit-align-self: flex-end; + -moz-align-self: flex-end; + -ms-align-self: flex-end; + align-self: flex-end; + margin-bottom: auto; + margin-top: 1rem; +} + @media (min-width: 768px) and (max-width: 1110px) { section #showData .book { width: 49%; @@ -239,21 +247,15 @@ section #showData .book .bookInfo { padding: 16px 12px 16px 16px; } -section #showData .book .btnDiv { - -webkit-align-self: flex-end; - -moz-align-self: flex-end; - -ms-align-self: flex-end; - align-self: flex-end; +section #showData .book div.btnDiv { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; - margin-top: auto; - margin-top: 1rem; } -section #showData .book .btnDiv .btnBook { +section #showData .book div.btnDiv .btnBook { padding: 1rem 2.5rem; font-size: 12px; text-decoration: none; @@ -269,19 +271,19 @@ section #showData .book .btnDiv .btnBook { text-transform: uppercase; } -section #showData .book .btnDiv .btnBook:hover { +section #showData .book div.btnDiv .btnBook:hover { width: 100%; padding: 20px auto; } -section #showData .book .btnDiv .btnBook:after { +section #showData .book div.btnDiv .btnBook:after { content: "→"; transition: all ease .5s; opacity: 0; left: -12px; } -section #showData .book .btnDiv .btnBook:hover:after { +section #showData .book div.btnDiv .btnBook:hover:after { content: "→"; transition: all ease .5s; opacity: 1; @@ -314,4 +316,4 @@ section #showData .note { color: #d5041f; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI2JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgd2lkdGg6IDMzLjElO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHt9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIC5idG5EaXYge1xuICAgICAgICBAaW5jbHVkZSBhbGlnbi1zZWxmKGZsZXgtZW5kKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAuYnRuQm9vayB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiLy8gRmxleGJveCBkaXNwbGF5XG4gIEBtaXhpbiBmbGV4Ym94KCkge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLy8gVGhlICdmbGV4JyBzaG9ydGhhbmRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxwb3NpdGl2ZS1udW1iZXI+LCBpbml0aWFsLCBhdXRvLCBvciBub25lXG4gIEBtaXhpbiBmbGV4KCR2YWx1ZXMpIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgIC1tb3otYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgIC13ZWJraXQtZmxleDogJHZhbHVlcztcbiAgICBcdCAgLW1zLWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgICAgICBmbGV4OiAkdmFsdWVzO1xuICB9XG5cbiAgLy8gRmxleCBGbG93IERpcmVjdGlvblxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyByb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgfVxuXG4gIC8vIEZsZXggTGluZSBXcmFwcGluZ1xuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBp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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI2JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xuXG4gICAgICA6Zmlyc3QtY2hpbGQgIHtcbiAgICAgIH1cbiAgICAgIDpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDMzLjElO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHt9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIGRpdi5idG5EaXYge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgICAgIC8vIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpIDtcbiAgICAgICAgLy8ganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogYXV0bztcblxuICAgICAgICAvLyBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgICAgIC5idG5Cb29rICB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiLy8gRmxleGJveCBkaXNwbGF5XG4gIEBtaXhpbiBmbGV4Ym94KCkge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLy8gVGhlICdmbGV4JyBzaG9ydGhhbmRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxwb3NpdGl2ZS1udW1iZXI+LCBpbml0aWFsLCBhdXRvLCBvciBub25lXG4gIEBtaXhpbiBmbGV4KCR2YWx1ZXMpIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgIC1tb3otYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgIC13ZWJraXQtZmxleDogJHZhbHVlcztcbiAgICBcdCAgLW1zLWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgICAgICBmbGV4OiAkdmFsdWVzO1xuICB9XG5cbiAgLy8gRmxleCBGbG93IERpcmVjdGlvblxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyByb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgfVxuXG4gIC8vIEZsZXggTGluZSBXcmFwcGluZ1xuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBcUJBLEFFUEEsT0ZPTyxDQUVMLElBQUksQ0ErQkYsS0FBSyxDRXhDRjtFQUNMLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsTUFBTTtDQUNsQjs7QUZDRCxBRUNBLE9GRE8sQ0FFTCxJQUFJLEVBRk4sQUVDQSxPRkRPLENBa0RMLFNBQVMsQ0VqREw7RUFDSixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxTQUFTO0VBQ2pCLFVBQVUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBZTtFQUNyQyxhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUl6QkQsQUFBQSxDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUUsVUFBVTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDSCxVQUFVLEVMRkQsT0FBTztFS0doQixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLGNBQWMsRUFBRSxhQUFhO0VBQzdCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFTFRJLE9BQU87RUtVaEIsWUFBWSxFQUFFLElBQUk7RUFDbEIs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 */ diff --git a/sass/main.scss b/sass/main.scss index ee2bcda..4cdb34c 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -19,11 +19,16 @@ // hoverColor: #9600ff, // textColor: #bababa); + + /////////////////// + // wyszukiwarka // + ////////////////// + section { form { @extend %form; - @extend %clearfix; + // @extend %clearfix; @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); background: map-get($mapOfPrimarColors, whiteGwo); font-size: 16px; @@ -42,16 +47,13 @@ section { @include maxDesktop { width: 80%; } - #searchBook { width: 70%; } - #submit { width: 26%; margin-left: 0.6rem; } - input { @extend %input; border: 1px solid map-get($mapOfPrimarColors, orangeGwo); @@ -69,6 +71,10 @@ section { } } +//////////////////////////// +// informacje o książkach// +////////////////////////// + #showData { @include flexbox(); @include flex-wrap(wrap); @@ -94,6 +100,16 @@ section { font-size: 12px; .book { + @include align-self(flex-end); + justify-self: flex-end; + + :first-child { + } + :nth-last-child(1) { + @include align-self(flex-end); + margin-bottom: auto; + margin-top: 1rem; + } width: 33.1%; @include tablet { width: 49%; @@ -117,42 +133,32 @@ section { .author { padding-top: 1rem; } - .title {} - .bookInfo { width: 100%; background: map-get($mapOfColors, ColorBG); padding: 16px 12px 16px 16px; } - - .btnDiv { - @include align-self(flex-end); + div.btnDiv { @include flexbox(); - margin-top: auto; - margin-top: 1rem; .btnBook { padding: 1rem 2.5rem; font-size: 12px; @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } - .bookInfo { border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); } - .bookInfo > div { color: map-get($mapOfColors, textColor); } - .bookImage { overflow: hidden; padding: 1rem; height: 16rem; border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); background: map-get($mapOfColors, ColorBG); - img { box-shadow: 0 2px 5px rgba(0,0,0,0.1); height: 14rem; From beacab0fa7d257a93f25df9c320408702d8fd939 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Fri, 17 Nov 2017 13:54:25 +0100 Subject: [PATCH 16/20] =?UTF-8?q?wyr=C3=B3wniane=20przyciski=20-=20przejd?= =?UTF-8?q?=C5=BA=20do=20ksi=C4=99garni?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/main.css | 111 ++++++++++++++++++++-------------------- dist/bundle.js | 2 +- js/data.js | 5 +- npm-debug.log | 24 +++++++++ sass/main.scss | 47 +++++++++-------- sass/modules/_all.scss | 53 ++++++++++--------- sass/modules/_flex.scss | 1 + 7 files changed, 138 insertions(+), 105 deletions(-) create mode 100644 npm-debug.log diff --git a/css/main.css b/css/main.css index 8706786..308f319 100644 --- a/css/main.css +++ b/css/main.css @@ -1,4 +1,3 @@ -@charset "UTF-8"; section form input { box-sizing: border-box; padding: 16px; @@ -187,23 +186,23 @@ section #showData { } section #showData .book { - -webkit-align-self: flex-end; - -moz-align-self: flex-end; - -ms-align-self: flex-end; - align-self: flex-end; - justify-self: flex-end; + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-flex-direction: column; + -moz-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + flex-flow: wrap; width: 33.1%; padding: 1rem; background: #FFF; margin: 1px; } -section #showData .book :nth-last-child(1) { - -webkit-align-self: flex-end; - -moz-align-self: flex-end; - -ms-align-self: flex-end; - align-self: flex-end; - margin-bottom: auto; +section #showData .book > :nth-of-type(3) { margin-top: 1rem; } @@ -247,49 +246,6 @@ section #showData .book .bookInfo { padding: 16px 12px 16px 16px; } -section #showData .book div.btnDiv { - display: -webkit-box; - display: -moz-box; - display: -ms-flexbox; - display: -webkit-flex; - display: flex; -} - -section #showData .book div.btnDiv .btnBook { - padding: 1rem 2.5rem; - font-size: 12px; - text-decoration: none; - color: #ea8300; - background: #FFF; - margin: 0 auto; - text-align: center; - transition: all ease .5s; - width: 90%; - border: 1px solid #ea8300; - border-radius: 0.2rem; - padding: 20px auto; - text-transform: uppercase; -} - -section #showData .book div.btnDiv .btnBook:hover { - width: 100%; - padding: 20px auto; -} - -section #showData .book div.btnDiv .btnBook:after { - content: "→"; - transition: all ease .5s; - opacity: 0; - left: -12px; -} - -section #showData .book div.btnDiv .btnBook:hover:after { - content: "→"; - transition: all ease .5s; - opacity: 1; - left: 8px; -} - section #showData .book .bookInfo { border-left: 1px solid #ea8300; } @@ -311,9 +267,52 @@ section #showData .book .bookImage img { height: 14rem; } +section #showData div.btnDiv2 { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-align-self: flex-end; + -moz-align-self: flex-end; + -ms-align-self: flex-end; + align-self: flex-end; + width: 100%; +} + +section #showData div.btnDiv2 .btnBook2 { + display: block; + width: 100%; + margin-top: 1rem; + padding: 1rem 2rem; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 1px; + text-decoration: none; + color: #FFF; + background-color: #ea8300; +} + +section #showData div.btnDiv2 .btnBook2:hover { + background-color: #d5041f; +} + section #showData .note { font-weight: 800; color: #d5041f; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5zZWN0aW9uIHtcblxuICBmb3JtIHtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI2JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xuXG4gICAgICA6Zmlyc3QtY2hpbGQgIHtcbiAgICAgIH1cbiAgICAgIDpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDMzLjElO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBzbVBob25lIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyNC43JTtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgICAgbWFyZ2luOiAxcHg7XG5cbiAgICAgIC5hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHt9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIGRpdi5idG5EaXYge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgICAgIC8vIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpIDtcbiAgICAgICAgLy8ganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogYXV0bztcblxuICAgICAgICAvLyBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgICAgIC5idG5Cb29rICB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvblN0b3JlKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIH1cblxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ub3RlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRik7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbnRleHRDb2xvcjogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogICRjb2xvckJhc2ljO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JUZXh0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuNXM7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJhc2ljO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHBhZGRpbmc6IDIwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAmOmhvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IGF1dG87XG5cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgLjVzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDhweDtcbiAgfVxufVxuIiwiLy8gRmxleGJveCBkaXNwbGF5XG4gIEBtaXhpbiBmbGV4Ym94KCkge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLy8gVGhlICdmbGV4JyBzaG9ydGhhbmRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxwb3NpdGl2ZS1udW1iZXI+LCBpbml0aWFsLCBhdXRvLCBvciBub25lXG4gIEBtaXhpbiBmbGV4KCR2YWx1ZXMpIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgIC1tb3otYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgIC13ZWJraXQtZmxleDogJHZhbHVlcztcbiAgICBcdCAgLW1zLWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgICAgICBmbGV4OiAkdmFsdWVzO1xuICB9XG5cbiAgLy8gRmxleCBGbG93IERpcmVjdGlvblxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyByb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAtbW96LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgfVxuXG4gIC8vIEZsZXggTGluZSBXcmFwcGluZ1xuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBcUJBLEFFUEEsT0ZPTyxDQUVMLElBQUksQ0ErQkYsS0FBSyxDRXhDRjtFQUNMLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsTUFBTTtDQUNsQjs7QUZDRCxBRUNBLE9GRE8sQ0FFTCxJQUFJLEVBRk4sQUVDQSxPRkRPLENBa0RMLFNBQVMsQ0VqREw7RUFDSixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxTQUFTO0VBQ2pCLFVBQVUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBZTtFQUNyQyxhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUl6QkQsQUFBQSxDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUUsVUFBVTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDSCxVQUFVLEVMRkQsT0FBTztFS0doQixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLGNBQWMsRUFBRSxhQUFhO0VBQzdCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFTFRJLE9BQU87RUtVaEIsWUFBWSxFQUFFLElBQUk7RUFDbEIs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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vXG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgLy8gQGV4dGVuZCAlY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOiAyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIGluZm9ybWFjamUgbyBrc2nEhcW8a2FjaC8vXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIGZsZXgtZmxvdzogd3JhcDtcblxuICAgICAgPiA6bnRoLW9mLXR5cGUoMykgIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAzMy4xJTtcbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgc21QaG9uZSB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgICB3aWR0aDogMjQuNyU7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgIG1hcmdpbjogMXB4O1xuXG4gICAgICAuYXV0aG9yIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB9XG4gICAgICAudGl0bGUge31cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgfVxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuICAgICAgLmJvb2tJbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vIGJ1dG9uIGRvIGtzacSZZ2FybmkgLy8vLy8vLy8vLy8vL1xuXG4gICAgZGl2LmJ0bkRpdjIge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2syIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5vdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICAgIFxuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG50ZXh0Q29sb3I6ICNiYWJhYmEpO1xuIiwiJWNsZWFyZml4IHtcbiAgJjphZnRlcixcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuJWZsb2F0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4laW5wdXQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yQmFzaWM7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNpdGlvbjogLjZzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgZmlsdGVyOiBibHVyKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpICBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JIb3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiRidXR0b24tY29sb3I6ICMyRDMxNDI7XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCYXNpYztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JIb3ZlcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwQkEsQUVaQSxPRllPLENBRUwsSUFBSSxDQTRCRixLQUFLLENFMUNGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFNBQVMsRUFBRSxNQUFNO0NBQ2xCOztBRk1ELEFFSkEsT0ZJTyxDQUVMLElBQUksRUFGTixBRUpBLE9GSU8sQ0FtREwsU0FBUyxDRXZETDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLFNBQVM7RUFDakIsVUFBVSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLGtCQUFlO0VBQ3JDLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBSXpCRCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxF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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 4fd4f42..49b2b21 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -83,7 +83,7 @@ eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./ajax.j /*! all exports used */ /***/ (function(module, exports) { -eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n // \"
\" + \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" +\n \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgLy8gXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnIHN0eWxlPSdiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIrZGF0YVtpXS5jb3ZlcitcIiknPlwiICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnPlwiICsgJzxpbWcgc3JjPScgKyBkYXRhW2ldLmNvdmVyICsgJyArIGhlaWdodD1cIjI1MFwiPicgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tJbmZvJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSd0aXRsZSc+XCIgKyBcIjxoMj5cIiArIChkYXRhW2ldLnRpdGxlKS5yZXBsYWNlKC9cXC4vZywgJzxicj4nKSArIFwiPC9oMj5cIiArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYXV0aG9yJz5cIiArIFwiYXV0b3J6eTogXCIgKyAoZGF0YVtpXS5hdXRob3IpICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdpc2JuJz5cIiArIFwiSVNCTjogXCIgKyBkYXRhW2ldLmlzYm4gKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J21lbic+XCIgKyBcIm51bWVyIGRvcHVzemN6ZW5pYSBNRU46IFwiICsgZGF0YVtpXS5tZW4gKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3BhZ2VzX2NvdW50Jz5cIiArIFwibGljemJhIHN0cm9uOiBcIiArIGRhdGFbaV0ucGFnZXNfY291bnQgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2xldmVscyc+XCIgKyBcInBvemlvbXkgbmF1Y3phbmlhOiBcIiArIEpTT04uc3RyaW5naWZ5KGRhdGFbaV0ubGV2ZWxzKS5yZXBsYWNlKC86fFwifHNjaG9vbHxjbGFzc3x9fHt8XXxbW10vZywgJyAnKSArIFwiPC9kaXY+XCIgKyAvLyBKU09OLnN0cmluZ2lmeSB6d3JhY2EgbWkgY2nEhWcgemF3aWVyYWrEhWN5IHRla3N0XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdzdWJqZWN0Jz5cIiArIFwicHJ6ZWRtaW90OiBcIiArIGRhdGFbaV0uc3ViamVjdCArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndHlwZSc+XCIgKyBcInJvZHphaiBwdWJsaWthY2ppOiBcIiArIGRhdGFbaV0udHlwZSArIFwiPC9kaXY+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2J0bkRpdic+XCIgKyAnPGEgaHJlZj0nICsgZGF0YVtpXS51cmwgKyAnIGNsYXNzPVwiYnRuQm9va1wiID4nICsgXCJQcnplamTFuiBkbyBrc2nEmWdhcm5pXCIgKyBcIjwvYT5cIiArIFwiPC9kaXY+XCIgKyBcIjwvZGl2PlwiO1xuICAgICAgfVxuICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzaG93RGF0YVwiKS5pbm5lckhUTUwgPSBodG1sU3RyaW5nOyAvLyB3eWtvcnp5c3RhxYJlbSBhdHJ5YnV0IGlubmVySFRNTCBrdMOzcnkgendyYWNhIGtvZCBIVE1MLlxuICAgIH1cbiAgfSk7XG59KTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vanMvZGF0YS5qc1xuLy8gbW9kdWxlIGlkID0gMVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n \"
\" +\n // \"
\" + \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rQ29udGVudCc+XCIgK1xuICAgICAgICAgIC8vIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJyBzdHlsZT0nYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiK2RhdGFbaV0uY292ZXIrXCIpJz5cIiArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJz5cIiArICc8aW1nIHNyYz0nICsgZGF0YVtpXS5jb3ZlciArICcgKyBoZWlnaHQ9XCIyNTBcIj4nICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW5mbyc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndGl0bGUnPlwiICsgXCI8aDI+XCIgKyAoZGF0YVtpXS50aXRsZSkucmVwbGFjZSgvXFwuL2csICc8YnI+JykgKyBcIjwvaDI+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Mic+XCIgKyAnPGEgaHJlZj0nICsgZGF0YVtpXS51cmwgKyAnIGNsYXNzPVwiYnRuQm9vazJcIiA+JyArIFwiUHJ6ZWpkxbogZG8ga3NpxJlnYXJuaVwiICsgXCI8L2E+XCIgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIjtcbiAgICAgIH1cbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2hvd0RhdGFcIikuaW5uZXJIVE1MID0gaHRtbFN0cmluZzsgLy8gd3lrb3J6eXN0YcWCZW0gYXRyeWJ1dCBpbm5lckhUTUwga3TDs3J5IHp3cmFjYSBrb2QgSFRNTC5cbiAgICB9XG4gIH0pO1xufSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL2pzL2RhdGEuanNcbi8vIG1vZHVsZSBpZCA9IDFcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ diff --git a/js/data.js b/js/data.js index 92d3d56..d83caf4 100644 --- a/js/data.js +++ b/js/data.js @@ -49,6 +49,7 @@ document.addEventListener("DOMContentLoaded", function() { htmlString += "
" + + "
" + // "
" + "
" + "
" + '' + "
" + "
" + @@ -59,8 +60,8 @@ document.addEventListener("DOMContentLoaded", function() { "
" + "liczba stron: " + data[i].pages_count + "
" + "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g, ' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst "
" + "przedmiot: " + data[i].subject + "
" + - "
" + "rodzaj publikacji: " + data[i].type + "
" + "
" + - "" + "
"; + "
" + "rodzaj publikacji: " + data[i].type + "
" + "
" + "" + + "" + ""; } document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } diff --git a/npm-debug.log b/npm-debug.log new file mode 100644 index 0000000..681f3f1 --- /dev/null +++ b/npm-debug.log @@ -0,0 +1,24 @@ +0 info it worked if it ends with ok +1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'webpack' ] +2 info using npm@3.10.10 +3 info using node@v6.11.0 +4 verbose stack Error: missing script: webpack +4 verbose stack at run (/usr/local/lib/node_modules/npm/lib/run-script.js:151:19) +4 verbose stack at /usr/local/lib/node_modules/npm/lib/run-script.js:61:5 +4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:356:5 +4 verbose stack at checkBinReferences_ (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:320:45) +4 verbose stack at final (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:354:3) +4 verbose stack at then (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:124:5) +4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:311:12 +4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:78:16 +4 verbose stack at tryToString (fs.js:456:3) +4 verbose stack at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:443:12) +5 verbose cwd /Users/VonGriff/Prework/frontend_recruitment +6 error Darwin 14.5.0 +7 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "webpack" +8 error node v6.11.0 +9 error npm v3.10.10 +10 error missing script: webpack +11 error If you need help, you may report this error at: +11 error +12 verbose exit [ 1, true ] diff --git a/sass/main.scss b/sass/main.scss index 4cdb34c..c97a797 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -20,9 +20,9 @@ // textColor: #bababa); - /////////////////// - // wyszukiwarka // - ////////////////// +/////////////////// +// wyszukiwarka // +////////////////// section { @@ -71,9 +71,9 @@ section { } } -//////////////////////////// -// informacje o książkach// -////////////////////////// + //////////////////////////// + // informacje o książkach// + ////////////////////////// #showData { @include flexbox(); @@ -100,14 +100,11 @@ section { font-size: 12px; .book { - @include align-self(flex-end); - justify-self: flex-end; + @include flexbox(); + @include flex-direction(column); + flex-flow: wrap; - :first-child { - } - :nth-last-child(1) { - @include align-self(flex-end); - margin-bottom: auto; + > :nth-of-type(3) { margin-top: 1rem; } width: 33.1%; @@ -139,16 +136,10 @@ section { background: map-get($mapOfColors, ColorBG); padding: 16px 12px 16px 16px; } - div.btnDiv { - @include flexbox(); - .btnBook { - padding: 1rem 2.5rem; - font-size: 12px; - @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); - } - } + .bookInfo { border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); + // padding-bottom: 3rem; } .bookInfo > div { color: map-get($mapOfColors, textColor); @@ -159,15 +150,29 @@ section { height: 16rem; border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); background: map-get($mapOfColors, ColorBG); + img { box-shadow: 0 2px 5px rgba(0,0,0,0.1); height: 14rem; } } } + + /////////// buton do księgarni ///////////// + + div.btnDiv2 { + @include flexbox(); + @include align-self(flex-end); + width: 100%; + + .btnBook2 { + @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); + } + } .note { font-weight: 800; color: map-get($mapOfPrimarColors, redGwo); + } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 36a73b1..8adce48 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -76,37 +76,40 @@ cursor: pointer; } } +$button-color: #2D3142; @mixin buttonStore($colorBasic, $colorHover, $colorText, $colortextHover) { - text-decoration: none; - color: $colorBasic; - background: $colorText; - margin: 0 auto; + + display: block; + width: 100%; + + margin-top: 1rem; + padding: 1rem 2rem; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; text-align: center; - transition: all ease .5s; - width: 90%; - border: 1px solid $colorBasic; - border-radius: 0.2rem; - padding: 20px auto; - text-transform: uppercase; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 1px; + text-decoration: none; + color: $colorText; + background-color: $colorBasic; &:hover { - width: 100%; - padding: 20px auto; - + background-color: $colorHover; } - - &:after { - content: "→"; - transition: all ease .5s; - opacity: 0; - left: -12px; + &:focus { } - - &:hover:after { - content: "→"; - transition: all ease .5s; - opacity: 1; - left: 8px; + &:active { } } diff --git a/sass/modules/_flex.scss b/sass/modules/_flex.scss index cc3c4cd..ef623da 100644 --- a/sass/modules/_flex.scss +++ b/sass/modules/_flex.scss @@ -29,6 +29,7 @@ } // Flex Line Wrapping + // umieszcza elementy w kolejnym anonimowym bloku // - applies to: flex containers // nowrap | wrap | wrap-reverse @mixin flex-wrap($wrap) { From 7e19ccd28b7d833086a77a5f4590e72857bd1af0 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sat, 18 Nov 2017 01:39:42 +0100 Subject: [PATCH 17/20] Dodany footer --- css/main.css | 145 ++++++++++++++++++++------- dist/bundle.js | 12 +-- index.html | 15 ++- js/ajax.js | 0 js/app.js | 2 +- js/component.js | 15 +++ js/data.js | 6 +- my-index.html | 15 ++- npm-debug.log | 12 ++- package.json | 1 - sass/main.scss | 200 +++++++++++++++++++++----------------- sass/modules/_all.scss | 7 +- sass/modules/_colors.scss | 5 +- sass/modules/_media.scss | 30 +++--- sass/partials/_base.scss | 5 +- 15 files changed, 302 insertions(+), 168 deletions(-) delete mode 100644 js/ajax.js create mode 100644 js/component.js diff --git a/css/main.css b/css/main.css index 308f319..4e35a84 100644 --- a/css/main.css +++ b/css/main.css @@ -9,7 +9,6 @@ section form input { section form, section #showData { padding: 1rem; margin: 10px auto; - box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); border-radius: 1px; } @@ -20,32 +19,23 @@ section form, section #showData { } body { - background: #ea8300; font-family: 'Open Sans', sans-serif; text-rendering: optimizeSpeed; image-rendering: pixelated; } h2 { - color: #ea8300; + color: #747a8a; font-kerning: auto; font-weight: 800; font-size: 18px; - margin-top: 1rem; } section form { - background: #FFF; + background: #f7f7f7; font-size: 16px; } -section form input[type="submit"] { - background: #d5041f; - border-color: transparent; - color: #FFF; - cursor: pointer; -} - @media (min-width: 300px) and (max-width: 599px) { section form { width: 95%; @@ -76,6 +66,17 @@ section form input[type="submit"] { } } +section form input[type="submit"] { + background: #d5041f; + border-color: transparent; + color: #FFF; + cursor: pointer; +} + +section form input[type="submit"] :focus { + border: 0.1em solid #bdbdbd; +} + section form #searchBook { width: 70%; } @@ -150,11 +151,21 @@ section #showData { -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; + background: #bababa; width: 65rem; - background: #FFF; font-size: 12px; } +section #showData > :nth-of-type(1) { + padding: 2rem; + width: 100%; +} + +section #showData > :nth-of-type(1) a { + color: #FFF; + text-decoration: none; +} + @media (min-width: 300px) and (max-width: 599px) { section #showData { width: 95%; @@ -186,6 +197,10 @@ section #showData { } section #showData .book { + background: #f7f7f7; + padding: 1rem; + margin: 1px; + width: 33.1%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; @@ -195,15 +210,10 @@ section #showData .book { -moz-flex-direction: column; -ms-flex-direction: column; flex-direction: column; + -webkit-flex-flow: wrap; + -moz-flex-flow: wrap; + -ms-flex-flow: wrap; flex-flow: wrap; - width: 33.1%; - padding: 1rem; - background: #FFF; - margin: 1px; -} - -section #showData .book > :nth-of-type(3) { - margin-top: 1rem; } @media (min-width: 768px) and (max-width: 1110px) { @@ -236,38 +246,46 @@ section #showData .book > :nth-of-type(3) { } } -section #showData .book .author { +section #showData .book > :nth-of-type(3) { + margin-top: 1rem; +} + +section #showData .book .bookContent { + width: 100%; +} + +section #showData .book .bookContent .author { padding-top: 1rem; } -section #showData .book .bookInfo { +section #showData .book .bookContent .title { + padding-bottom: 1rem; + border-bottom: 0.3rem solid #747a8a; +} + +section #showData .book .bookContent .bookInfo { width: 100%; background: #f7f7f7; padding: 16px 12px 16px 16px; } -section #showData .book .bookInfo { - border-left: 1px solid #ea8300; -} - -section #showData .book .bookInfo > div { +section #showData .book .bookContent .bookInfo > div { color: #bababa; } -section #showData .book .bookImage { - overflow: hidden; +section #showData .book .bookContent .bookImage { + width: 100%; padding: 1rem; height: 16rem; - border-left: 1px solid #ea8300; - background: #f7f7f7; + background: #FFF; } -section #showData .book .bookImage img { +section #showData .book .bookContent .bookImage img { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); height: 14rem; } -section #showData div.btnDiv2 { +section #showData div.btnDiv { display: -webkit-box; display: -moz-box; display: -ms-flexbox; @@ -280,7 +298,7 @@ section #showData div.btnDiv2 { width: 100%; } -section #showData div.btnDiv2 .btnBook2 { +section #showData div.btnDiv .btnBook { display: block; width: 100%; margin-top: 1rem; @@ -306,7 +324,7 @@ section #showData div.btnDiv2 .btnBook2 { background-color: #ea8300; } -section #showData div.btnDiv2 .btnBook2:hover { +section #showData div.btnDiv .btnBook:hover { background-color: #d5041f; } @@ -315,4 +333,57 @@ section #showData .note { color: #d5041f; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vXG4vLyAkbWFwT2ZDb2xvcnM6XG4vLyAoYmFja2dvdW5kQ29sb3I6I0ZGRixcbi8vIENvbG9yQkc6ICNmN2Y3ZjcsXG4vLyBmb290ZXJDb2xvcjogI2ZlNjEwMyxcbi8vIGxpbmtDb3JvcjogIzAwYzZmZixcbi8vIGhvdmVyQ29sb3I6ICM5NjAwZmYsXG4vLyB0ZXh0Q29sb3I6ICNiYWJhYmEpO1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vXG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgLy8gQGV4dGVuZCAlY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgaW5wdXRTdWJtaXQobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOiAyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIGluZm9ybWFjamUgbyBrc2nEhcW8a2FjaC8vXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgd2lkdGg6IDY1cmVtO1xuICAgIEBpbmNsdWRlIHBob25lIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHNtUGhvbmUge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIGZsZXgtZmxvdzogd3JhcDtcblxuICAgICAgPiA6bnRoLW9mLXR5cGUoMykgIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAzMy4xJTtcbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBwaG9uZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgc21QaG9uZSB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1heERlc2t0b3Age1xuICAgICAgICB3aWR0aDogMjQuNyU7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgIG1hcmdpbjogMXB4O1xuXG4gICAgICAuYXV0aG9yIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB9XG4gICAgICAudGl0bGUge31cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgfVxuICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCB0ZXh0Q29sb3IpO1xuICAgICAgfVxuICAgICAgLmJvb2tJbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vIGJ1dG9uIGRvIGtzacSZZ2FybmkgLy8vLy8vLy8vLy8vL1xuXG4gICAgZGl2LmJ0bkRpdjIge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2syIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5vdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICAgIFxuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG50ZXh0Q29sb3I6ICNiYWJhYmEpO1xuIiwiJWNsZWFyZml4IHtcbiAgJjphZnRlcixcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuJWZsb2F0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4laW5wdXQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxNnB4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG59XG5cbiVmb3JtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yQmFzaWM7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNpdGlvbjogLjZzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgZmlsdGVyOiBibHVyKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpICBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JIb3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiRidXR0b24tY29sb3I6ICMyRDMxNDI7XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCYXNpYztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JIb3ZlcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cblxuJG1hcC12YWx1ZXM6IChcIiRtaW4td2lkdGhcIjogNjAwcHggLCBcIiRtYXgtd2lkdGhcIjogNjAwcHgpO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5cbi8vICRub24tcmV0aW5hOiBcInNjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSlcIjtcbi8vICRyZXRpbmE6IFwiKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgICAgICAgICAgICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4vLyAgICAgICAgICAgICAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuLy8gICAgICAgICAgICAgICAgICAgICAobWluLXJlc29sdXRpb246IDE0NGRwaSksXG4vLyAgICAgICAgICAgICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweClcIjtcblxuQG1peGluIHBob25lMiB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBzbVBob25lIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgQG1lZGlhICN7JHRhYmxldH0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF4RGVza3RvcCB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBwaXhlbGF0ZWQ7XG59XG5cbmgyIHtcbiAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwQkEsQUVaQSxPRllPLENBRUwsSUFBSSxDQTRCRixLQUFLLENFMUNGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFNBQVMsRUFBRSxNQUFNO0NBQ2xCOztBRk1ELEFFSkEsT0ZJTyxDQUVMLElBQUksRUFGTixBRUpBLE9GSU8sQ0FtREwsU0FBUyxDRXZETDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLFNBQVM7RUFDakIsVUFBVSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLGtCQUFlO0VBQ3JDLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBSXpCRCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxF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 */ +footer div { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-justify-content: space-between; + -moz-justify-content: space-between; + -ms-justify-content: space-between; + justify-content: space-between; + -ms-flex-pack: space-between; + color: #FFF; + background: #d5041f; + padding: 0.5rem; + margin: 1rem auto; + font-size: 10px; +} + +@media (min-width: 300px) and (max-width: 599px) { + footer div { + width: 95%; + } +} + +@media (min-width: 600px) and (max-width: 767px) { + footer div { + width: 95%; + } +} + +@media (min-width: 768px) and (max-width: 1110px) { + footer div { + width: 95%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + footer div { + width: 80%; + } +} + +@media (min-width: 1601px) { + footer div { + width: 80%; + } +} + +footer div a { + text-decoration: none; + color: #FFF; +} + +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBzZWFyY2ggLyB3eXN6dWtpd2Fya2EgLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG4gICAgQGV4dGVuZCAlZm9ybTtcbiAgICAvLyBAZXh0ZW5kICVjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBpbnB1dFN1Ym1pdChtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgI3NlYXJjaEJvb2sge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICB9XG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNnJlbTtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIHJlbmRlciBib29rLy9cbiAgLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG5cbiAgICAvLyBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcblxuICAgID4gOm50aC1vZi10eXBlKDEpIHtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHdpZHRoOiA2NXJlbTtcbiAgICBAaW5jbHVkZSBwaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHNtUGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSB0YWJsZXQoOTUlKTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wKDgwJSk7XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCg4MCUpO1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgd2lkdGg6IDMzLjElO1xuXG4gICAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuICAgICAgQGluY2x1ZGUgZmxleC1mbG93KHdyYXApO1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQoNDklKTtcbiAgICAgIEBpbmNsdWRlIHBob25lKDEwMCUpO1xuICAgICAgQGluY2x1ZGUgc21QaG9uZSg0OSUpO1xuICAgICAgQGluY2x1ZGUgZGVza3RvcCgzMyUpO1xuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCgyNC43JSk7XG5cbiAgICAgID4gOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC5ib29rQ29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuM3JlbSBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgICAvLyBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvbnRBZGRpdGlvbmFsKTtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vIGJ1dHRvbiBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiAvLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGRpdi5idG5EaXYge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBAaW5jbHVkZSBidXR0b25TdG9yZShtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgICAgfVxuICAgIH1cbiAgICAubm90ZSB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIH1cbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLyBmb290ZXIgLy8vLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbmZvb3RlciB7XG4gIGRpdiB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKVxuXG5cbiAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYsXG5mb250TWFpbjogIzc0N2E4YSk7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbmZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcbiIsIiVjbGVhcmZpeCB7XG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbiVmbG9hdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuJWlucHV0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMTZweDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xufVxuXG4lZm9ybSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbkBtaXhpbiBpbnB1dFN1Ym1pdCgkY29sb3JCYWNrZ3JvdW5kLCAkY29sb3IgKSB7XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIDpmb2N1cyB7XG4gICAgLy8gIG91dGxpbmU6IG5vbmU7XG4gICAgIGJvcmRlcjogMC4xZW0gc29saWQgZGFya2VuKCNjY2MsIDYlKTtcbiAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yQmFzaWM7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNpdGlvbjogLjZzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgZmlsdGVyOiBibHVyKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpICBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JIb3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiRidXR0b24tY29sb3I6ICMyRDMxNDI7XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCYXNpYztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JIb3ZlcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbiRwaG9uZTI6IFwiKG1pbi13aWR0aDogMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAyOTlweClcIjtcbiRwaG9uZTogXCIobWluLXdpZHRoOiAzMDBweCkgYW5kIChtYXgtd2lkdGg6IDU5OXB4KVwiO1xuJHNtUGhvbmU6IFwiKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweClcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTEwcHgpXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAxMTExcHgpIGFuZCAobWF4LXdpZHRoOiAxNjAwcHgpXCI7XG4kbWF4RGVza3RvcDogXCIobWluLXdpZHRoOiAxNjAxcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHBob25lKCR3aWR0aCkgIHtcbiAgQG1lZGlhICN7JHBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiB0YWJsZXQoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skZGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3AoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbn1cbiIsIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSB7XG4gIC8vIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQkEsQUViQSxPRmFPLENBRUwsSUFBSSxDQW9CRixLQUFLLENFbkNGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFNBQVMsRUFBRSxNQUFNO0NBQ2xCOztBRk9ELEFFTEEsT0ZLTyxDQUVMLElBQUksRUFGTixBRUxBLE9GS08sQ0EyQ0wsU0FBUyxDRWhETDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLFNBQVM7RUFDakIsYUFBYSxFQUFFLEdBQUc7Q0FDbkI7O0FJeEJELEFBQUEsQ0FBQyxDQUFDO0VBQ0EsVUFBVSxFQUFFLFVBQVU7RUFDdEIsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVELEFBQUEsSUFBSSxDQUFDO0VBRUgsV0FBVyxFQUFFLHVCQUF1QjtFQUNwQyxjQUFjLEVBQUUsYUFBYTtFQUM3QixlQUFlLEVBQUUsU0FBUztDQUMzQjs7QUFFRCxBQUFBLEVBQUUsQ0FBQztFQUNELEtBQUssRUxORyxPQUFPO0VLT2YsWUFBWSxFQUFFLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7Q0FDaEI7O0FOT0QsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0VBU0gsVUFBVSxFQ3hCTCxPQUFPO0VEMEJaLFNBQVMsRUFBRSxJQUFJO0NBd0JoQjs7QUkvQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUpVakQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0lJVkgsS0FBSyxFSldVLEdBQUc7R0FrQ25COzs7QUl4Q0QsTUFBTSxFQUFF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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 49b2b21..726b8d2 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -72,7 +72,7 @@ /*! all exports used */ /***/ (function(module, exports, __webpack_require__) { -eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./ajax.js */ 2);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2FwcC5qcz9jOTllIl0sInNvdXJjZXNDb250ZW50IjpbInJlcXVpcmUoXCIuL2RhdGEuanNcIik7XG5yZXF1aXJlKFwiLi9hamF4LmpzXCIpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9hcHAuanNcbi8vIG1vZHVsZSBpZCA9IDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n"); +eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./component.js */ 2);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2FwcC5qcz9jOTllIl0sInNvdXJjZXNDb250ZW50IjpbInJlcXVpcmUoXCIuL2RhdGEuanNcIik7XG5yZXF1aXJlKFwiLi9jb21wb25lbnQuanNcIik7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL2pzL2FwcC5qc1xuLy8gbW9kdWxlIGlkID0gMFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */ @@ -83,18 +83,18 @@ eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./ajax.j /*! all exports used */ /***/ (function(module, exports) { -eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n \"
\" +\n // \"
\" + \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rQ29udGVudCc+XCIgK1xuICAgICAgICAgIC8vIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJyBzdHlsZT0nYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiK2RhdGFbaV0uY292ZXIrXCIpJz5cIiArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJz5cIiArICc8aW1nIHNyYz0nICsgZGF0YVtpXS5jb3ZlciArICcgKyBoZWlnaHQ9XCIyNTBcIj4nICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW5mbyc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndGl0bGUnPlwiICsgXCI8aDI+XCIgKyAoZGF0YVtpXS50aXRsZSkucmVwbGFjZSgvXFwuL2csICc8YnI+JykgKyBcIjwvaDI+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Mic+XCIgKyAnPGEgaHJlZj0nICsgZGF0YVtpXS51cmwgKyAnIGNsYXNzPVwiYnRuQm9vazJcIiA+JyArIFwiUHJ6ZWpkxbogZG8ga3NpxJlnYXJuaVwiICsgXCI8L2E+XCIgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIjtcbiAgICAgIH1cbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2hvd0RhdGFcIikuaW5uZXJIVE1MID0gaHRtbFN0cmluZzsgLy8gd3lrb3J6eXN0YcWCZW0gYXRyeWJ1dCBpbm5lckhUTUwga3TDs3J5IHp3cmFjYSBrb2QgSFRNTC5cbiAgICB9XG4gIH0pO1xufSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL2pzL2RhdGEuanNcbi8vIG1vZHVsZSBpZCA9IDFcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n var webConnection = \"
Brak połączenia z serwerem
\";\n document.getElementById(\"showData\").innerHTML = webConnection;\n\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICAgIHZhciB3ZWJDb25uZWN0aW9uID0gXCI8ZGl2IGNsYXNzPSdub3RlJz5CcmFrIHBvxYLEhWN6ZW5pYSB6IHNlcndlcmVtPC9kaXY+XCI7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IHdlYkNvbm5lY3Rpb247XG5cbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rQ29udGVudCc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJz5cIiArICc8aW1nIHNyYz0nICsgZGF0YVtpXS5jb3ZlciArICcgKyBoZWlnaHQ9XCIyNTBcIj4nICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW5mbyc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndGl0bGUnPlwiICsgXCI8aDI+XCIgKyAoZGF0YVtpXS50aXRsZSkucmVwbGFjZSgvXFwuL2csICc8YnI+JykgKyBcIjwvaDI+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Jz5cIiArICc8YSBocmVmPScgKyBkYXRhW2ldLnVybCArICcgY2xhc3M9XCJidG5Cb29rXCIgPicgKyBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiArIFwiPC9hPlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCI7XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IGh0bWxTdHJpbmc7IC8vIHd5a29yenlzdGHFgmVtIGF0cnlidXQgaW5uZXJIVE1MIGt0w7NyeSB6d3JhY2Ega29kIEhUTUwuXG4gICAgfVxuICB9KTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9kYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ -/*!********************!*\ - !*** ./js/ajax.js ***! - \********************/ +/*!*************************!*\ + !*** ./js/component.js ***! + \*************************/ /*! dynamic exports provided */ /*! all exports used */ /***/ (function(module, exports) { -eval("//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///2\n"); +eval("\nvar formattedBody = \"Witam, \\n\\n W związku z przesłaną aplikacją, chcielibyśmy zaprosić Pana na rozmowę kwalifikacyjną\";\n\nvar a = document.createElement('a');\nvar linkText = document.createTextNode(\"Kontakt\");\na.class = \"contact\";\na.innerHTML = linkText;\n\nvar mailToLink = \"mailto:kamelboukoffa.mac@gmail.com?\";\nvar mailContent = \"Subject=Rozmowa kwalifikacjna&\";\nmailContent += \"cc=vongriffe.mac@gmail.com&\";\nmailContent += \"body=\" + encodeURIComponent(formattedBody);\n\na.href = mailToLink + mailContent;\ndocument.getElementById(\"ex\").appendChild(a);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2NvbXBvbmVudC5qcz9hMDZhIl0sInNvdXJjZXNDb250ZW50IjpbIlxudmFyIGZvcm1hdHRlZEJvZHkgPSBcIldpdGFtLCBcXG5cXG4gVyB6d2nEhXprdSB6IHByemVzxYJhbsSFIGFwbGlrYWNqxIUsIGNoY2llbGliecWbbXkgemFwcm9zacSHIFBhbmEgbmEgcm96bW93xJkga3dhbGlmaWthY3lqbsSFXCI7XG5cbnZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xudmFyIGxpbmtUZXh0ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJLb250YWt0XCIpO1xuYS5jbGFzcyA9IFwiY29udGFjdFwiO1xuYS5pbm5lckhUTUwgPSBsaW5rVGV4dDtcblxudmFyIG1haWxUb0xpbmsgPSBcIm1haWx0bzprYW1lbGJvdWtvZmZhLm1hY0BnbWFpbC5jb20/XCI7XG52YXIgbWFpbENvbnRlbnQgPSBcIlN1YmplY3Q9Um96bW93YSBrd2FsaWZpa2Fjam5hJlwiO1xubWFpbENvbnRlbnQgKz0gXCJjYz12b25ncmlmZmUubWFjQGdtYWlsLmNvbSZcIjtcbm1haWxDb250ZW50ICs9IFwiYm9keT1cIiArIGVuY29kZVVSSUNvbXBvbmVudChmb3JtYXR0ZWRCb2R5KTtcblxuYS5ocmVmID0gbWFpbFRvTGluayArIG1haWxDb250ZW50O1xuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJleFwiKS5hcHBlbmRDaGlsZChhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vanMvY29tcG9uZW50LmpzXG4vLyBtb2R1bGUgaWQgPSAyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///2\n"); /***/ }) /******/ ]); \ No newline at end of file diff --git a/index.html b/index.html index 9a502ff..9a84954 100644 --- a/index.html +++ b/index.html @@ -23,7 +23,9 @@
-

www.gwo.pl

+
@@ -31,6 +33,17 @@ diff --git a/js/ajax.js b/js/ajax.js deleted file mode 100644 index e69de29..0000000 diff --git a/js/app.js b/js/app.js index c853ca5..324684e 100644 --- a/js/app.js +++ b/js/app.js @@ -1,2 +1,2 @@ require("./data.js"); -require("./ajax.js"); +require("./component.js"); diff --git a/js/component.js b/js/component.js new file mode 100644 index 0000000..06333b3 --- /dev/null +++ b/js/component.js @@ -0,0 +1,15 @@ + +var formattedBody = "Witam, \n\n W związku z przesłaną aplikacją, chcielibyśmy zaprosić Pana na rozmowę kwalifikacyjną"; + +var a = document.createElement('a'); +var linkText = document.createTextNode("Kontakt"); +a.class = "contact"; +a.innerHTML = linkText; + +var mailToLink = "mailto:kamelboukoffa.mac@gmail.com?"; +var mailContent = "Subject=Rozmowa kwalifikacjna&"; +mailContent += "cc=vongriffe.mac@gmail.com&"; +mailContent += "body=" + encodeURIComponent(formattedBody); + +a.href = mailToLink + mailContent; +document.getElementById("ex").appendChild(a); diff --git a/js/data.js b/js/data.js index d83caf4..a77a601 100644 --- a/js/data.js +++ b/js/data.js @@ -37,6 +37,9 @@ document.addEventListener("DOMContentLoaded", function() { ourRequest.onerror = function() { console.log("Connection error"); + var webConnection = "
Brak połączenia z serwerem
"; + document.getElementById("showData").innerHTML = webConnection; + }; ourRequest.send(); @@ -50,7 +53,6 @@ document.addEventListener("DOMContentLoaded", function() { htmlString += "
" + "
" + - // "
" + "
" + "
" + '' + "
" + "
" + "
" + "

" + (data[i].title).replace(/\./g, '
') + "

" + "
" + @@ -61,7 +63,7 @@ document.addEventListener("DOMContentLoaded", function() { "
" + "poziomy nauczania: " + JSON.stringify(data[i].levels).replace(/:|"|school|class|}|{|]|[[]/g, ' ') + "
" + // JSON.stringify zwraca mi ciąg zawierający tekst "
" + "przedmiot: " + data[i].subject + "
" + "
" + "rodzaj publikacji: " + data[i].type + "
" + "
" + "
" - + "" + "
"; + + "" + ""; } document.getElementById("showData").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML. } diff --git a/my-index.html b/my-index.html index 7f2a920..b92a0b4 100644 --- a/my-index.html +++ b/my-index.html @@ -23,7 +23,9 @@
-

www.gwo.pl

+
@@ -31,6 +33,17 @@ diff --git a/npm-debug.log b/npm-debug.log index 681f3f1..41ba5e2 100644 --- a/npm-debug.log +++ b/npm-debug.log @@ -1,8 +1,12 @@ 0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'webpack' ] +1 verbose cli [ '/usr/local/bin/node', +1 verbose cli '/usr/local/bin/npm', +1 verbose cli 'run', +1 verbose cli 'web', +1 verbose cli 'pack' ] 2 info using npm@3.10.10 3 info using node@v6.11.0 -4 verbose stack Error: missing script: webpack +4 verbose stack Error: missing script: web 4 verbose stack at run (/usr/local/lib/node_modules/npm/lib/run-script.js:151:19) 4 verbose stack at /usr/local/lib/node_modules/npm/lib/run-script.js:61:5 4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:356:5 @@ -15,10 +19,10 @@ 4 verbose stack at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:443:12) 5 verbose cwd /Users/VonGriff/Prework/frontend_recruitment 6 error Darwin 14.5.0 -7 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "webpack" +7 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "web" "pack" 8 error node v6.11.0 9 error npm v3.10.10 -10 error missing script: webpack +10 error missing script: web 11 error If you need help, you may report this error at: 11 error 12 verbose exit [ 1, true ] diff --git a/package.json b/package.json index 6ae79f5..ce9f917 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,6 @@ "description": "Zadanie rekrutacyjne", "main": "index.js", "scripts": { - "test": "test", "server": "webpack --config webpack.config.js", "dev": "webpack -d --watch", "prod": "webpack -p" diff --git a/sass/main.scss b/sass/main.scss index c97a797..96ac6bf 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -10,6 +10,7 @@ // orangeGwo: #ea8300, // yellowGwo: #f5bf00, // whiteGwo: #FFF); +// fontMain: color // // $mapOfColors: // (backgoundColor:#FFF, @@ -17,36 +18,28 @@ // footerColor: #fe6103, // linkCoror: #00c6ff, // hoverColor: #9600ff, -// textColor: #bababa); +// fontAdditional: #bababa); -/////////////////// -// wyszukiwarka // -////////////////// +//////////////////////////// +// search / wyszukiwarka // +////////////////////////// section { form { + @include phone(95%); + @include smPhone(95%); + @include tablet(95%); + @include desktop(80%); + @include maxDesktop(80%); @extend %form; // @extend %clearfix; @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); - background: map-get($mapOfPrimarColors, whiteGwo); + background: map-get($mapOfColors, ColorBG); + font-size: 16px; - @include phone { - width: 95%; - } - @include smPhone { - width: 95%; - } - @include tablet { - width: 95%; - } - @include desktop { - width: 80%; - } - @include maxDesktop { - width: 80%; - } + #searchBook { width: 70%; } @@ -71,108 +64,133 @@ section { } } - //////////////////////////// - // informacje o książkach// - ////////////////////////// + ////////////////// + // render book// + /////////////// #showData { @include flexbox(); @include flex-wrap(wrap); + background: map-get($mapOfColors, fontAdditional); - width: 65rem; - @include phone { - width: 95%; - } - @include smPhone { - width: 95%; - } - @include tablet { - width: 95%; - } - @include desktop { - width: 80%; - } - @include maxDesktop { - width: 80%; + // border: 1px solid map-get($mapOfPrimarColors, redGwo); + + > :nth-of-type(1) { + padding: 2rem; + width: 100%; + a { + color: map-get($mapOfPrimarColors, whiteGwo); + text-decoration: none; + } } + + width: 65rem; + @include phone(95%); + @include smPhone(95%); + @include tablet(95%); + @include desktop(80%); + @include maxDesktop(80%); @extend %form; - background: map-get($mapOfPrimarColors, whiteGwo); font-size: 12px; .book { + background: map-get($mapOfColors, ColorBG); + padding: 1rem; + margin: 1px; + width: 33.1%; + @include flexbox(); @include flex-direction(column); - flex-flow: wrap; + @include flex-flow(wrap); - > :nth-of-type(3) { - margin-top: 1rem; - } - width: 33.1%; - @include tablet { - width: 49%; - } - @include phone { - width: 100%; - } - @include smPhone { - width: 49%; - } - @include desktop { - width: 33%; - } - @include maxDesktop { - width: 24.7%; - } - padding: 1rem; - background: map-get($mapOfPrimarColors, whiteGwo); - margin: 1px; + @include tablet(49%); + @include phone(100%); + @include smPhone(49%); + @include desktop(33%); + @include maxDesktop(24.7%); - .author { - padding-top: 1rem; + > :nth-of-type(3) { + margin-top: 1rem; } - .title {} - .bookInfo { + .bookContent { width: 100%; - background: map-get($mapOfColors, ColorBG); - padding: 16px 12px 16px 16px; - } - - .bookInfo { - border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); - // padding-bottom: 3rem; - } - .bookInfo > div { - color: map-get($mapOfColors, textColor); - } - .bookImage { - overflow: hidden; - padding: 1rem; - height: 16rem; - border-left: 1px solid map-get($mapOfPrimarColors, orangeGwo); - background: map-get($mapOfColors, ColorBG); - - img { - box-shadow: 0 2px 5px rgba(0,0,0,0.1); - height: 14rem; + .author { + padding-top: 1rem; + } + .title { + padding-bottom: 1rem; + border-bottom: 0.3rem solid map-get($mapOfPrimarColors, fontMain); + } + .bookInfo { + width: 100%; + background: map-get($mapOfColors, ColorBG); + padding: 16px 12px 16px 16px; + } + .bookInfo { + // border-left: 1px solid map-get($mapOfPrimarColors, whiteGwo); + } + .bookInfo > div { + color: map-get($mapOfColors, fontAdditional); + } + .bookImage { + width: 100%; + padding: 1rem; + height: 16rem; + background: map-get($mapOfPrimarColors, whiteGwo); + + img { + box-shadow: 0 2px 5px rgba(0,0,0,0.1); + height: 14rem; + } } } + } - /////////// buton do księgarni ///////////// + ////////////////////////////////////////////////////// + /////////// button "Przejdź do księgarni" /////////// + //////////////////////////////////////////////////// - div.btnDiv2 { + div.btnDiv { @include flexbox(); @include align-self(flex-end); width: 100%; - .btnBook2 { + .btnBook { @include buttonStore(map-get($mapOfPrimarColors, orangeGwo), map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo), map-get($mapOfPrimarColors, whiteGwo)); } } .note { font-weight: 800; color: map-get($mapOfPrimarColors, redGwo); - + } + } +} + +/////////////////////////////// +/////////// footer /////////// +///////////////////////////// + +footer { + div { + @include flexbox(); + @include justify-content(space-between) + + + color: map-get($mapOfPrimarColors, whiteGwo); + background: map-get($mapOfPrimarColors, redGwo); + padding: 0.5rem; + margin: 1rem auto; + font-size: 10px; + @include phone(95%); + @include smPhone(95%); + @include tablet(95%); + @include desktop(80%); + @include maxDesktop(80%); + + a { + text-decoration: none; + color: map-get($mapOfPrimarColors, whiteGwo); } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 8adce48..afe1b4e 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -23,7 +23,6 @@ %form { padding: 1rem; margin: 10px auto; - box-shadow: 0 2px 5px rgba(0,0,0,0.3); border-radius: 1px; } @@ -33,9 +32,15 @@ border-color: transparent; color: $color; cursor: pointer; + + :focus { + // outline: none; + border: 0.1em solid darken(#ccc, 6%); + } } } + @mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { background: $colorBasic; color: $colorText; diff --git a/sass/modules/_colors.scss b/sass/modules/_colors.scss index cfb75bc..09eafe3 100644 --- a/sass/modules/_colors.scss +++ b/sass/modules/_colors.scss @@ -7,7 +7,8 @@ $mapOfPrimarColors: (redGwo:#d5041f, orangeGwo: #ea8300, yellowGwo: #f5bf00, -whiteGwo: #FFF); +whiteGwo: #FFF, +fontMain: #747a8a); $mapOfColors: (backgoundColor:#FFF, @@ -15,4 +16,4 @@ ColorBG: #f7f7f7, footerColor: #fe6103, linkCoror: #00c6ff, hoverColor: #9600ff, -textColor: #bababa); +fontAdditional: #bababa); diff --git a/sass/modules/_media.scss b/sass/modules/_media.scss index 8394d55..f539fc3 100644 --- a/sass/modules/_media.scss +++ b/sass/modules/_media.scss @@ -1,8 +1,5 @@ @import "modules/_colors"; - -$map-values: ("$min-width": 600px , "$max-width": 600px); - $phone2: "(min-width: 100px) and (max-width: 299px)"; $phone: "(min-width: 300px) and (max-width: 599px)"; $smPhone: "(min-width: 600px) and (max-width: 767px)"; @@ -10,47 +7,44 @@ $tablet: "(min-width: 768px) and (max-width: 1110px)"; $desktop: "(min-width: 1111px) and (max-width: 1600px)"; $maxDesktop: "(min-width: 1601px)"; - -// $non-retina: "screen and (-webkit-max-device-pixel-ratio: 1)"; -// $retina: "(min--moz-device-pixel-ratio: 1.5), -// (-o-min-device-pixel-ratio: 3/2), -// (-webkit-min-device-pixel-ratio: 1.5), -// (min-device-pixel-ratio: 1.5), -// (min-resolution: 144dpi), -// (min-resolution: 1.5dppx)"; - -@mixin phone2 { +@mixin phone2($width) { @media #{$phone} { @content; + width: $width; } } -@mixin phone { +@mixin phone($width) { @media #{$phone} { @content; + width: $width; } } -@mixin smPhone { +@mixin smPhone($width) { @media #{$smPhone} { @content; + width: $width; } } -@mixin tablet { +@mixin tablet($width) { @media #{$tablet} { @content; + width: $width; } } -@mixin desktop { +@mixin desktop($width) { @media #{$desktop} { @content; + width: $width; } } -@mixin maxDesktop { +@mixin maxDesktop($width) { @media #{$maxDesktop} { @content; + width: $width; } } diff --git a/sass/partials/_base.scss b/sass/partials/_base.scss index 88f7eb0..0449a5c 100644 --- a/sass/partials/_base.scss +++ b/sass/partials/_base.scss @@ -7,16 +7,15 @@ } body { - background: map-get($mapOfPrimarColors, orangeGwo); + // background: map-get($mapOfColors, fontAdditional); font-family: 'Open Sans', sans-serif; text-rendering: optimizeSpeed; image-rendering: pixelated; } h2 { - color: map-get($mapOfPrimarColors, orangeGwo); + color: map-get($mapOfPrimarColors, fontMain); font-kerning: auto; font-weight: 800; font-size: 18px; - margin-top: 1rem; } From f32a1161a185f0dac16b8c641122e994a4759da1 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sat, 18 Nov 2017 22:56:00 +0100 Subject: [PATCH 18/20] =?UTF-8?q?Dodanie=20listy=20do=20tytu=C5=82u=20pozy?= =?UTF-8?q?cji?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/main.css | 16 ++++++++++++++-- dist/bundle.js | 2 +- index.html | 2 +- js/data.js | 6 ++++-- my-index.html | 2 +- sass/main.scss | 32 ++++++++++++++++++++------------ sass/partials/_base.scss | 1 - 7 files changed, 41 insertions(+), 20 deletions(-) diff --git a/css/main.css b/css/main.css index 4e35a84..a2dd7ce 100644 --- a/css/main.css +++ b/css/main.css @@ -28,7 +28,6 @@ h2 { color: #747a8a; font-kerning: auto; font-weight: 800; - font-size: 18px; } section form { @@ -263,6 +262,19 @@ section #showData .book .bookContent .title { border-bottom: 0.3rem solid #747a8a; } +section #showData .book .bookContent .title ul { + list-style-type: none; +} + +section #showData .book .bookContent .title ul :nth-of-type(1) { + font-size: 25px; + color: #747a8a; +} + +section #showData .book .bookContent .title ul :nth-of-type(2) { + font-size: 18px; +} + section #showData .book .bookContent .bookInfo { width: 100%; background: #f7f7f7; @@ -386,4 +398,4 @@ footer div a { color: #FFF; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBzZWFyY2ggLyB3eXN6dWtpd2Fya2EgLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbnNlY3Rpb24ge1xuXG4gIGZvcm0ge1xuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG4gICAgQGV4dGVuZCAlZm9ybTtcbiAgICAvLyBAZXh0ZW5kICVjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBpbnB1dFN1Ym1pdChtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuXG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgI3NlYXJjaEJvb2sge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICB9XG4gICAgI3N1Ym1pdCB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNnJlbTtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgQGV4dGVuZCAlaW5wdXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInBsYWNlaG9sZGVyXCJdIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9vdGVyQ29sb3IpO1xuICAgIH1cblxuICAgICNzdWJtaXQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKSk7XG4gICAgfVxuICB9XG5cbiAgLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIHJlbmRlciBib29rLy9cbiAgLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG5cbiAgICAvLyBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcblxuICAgID4gOm50aC1vZi10eXBlKDEpIHtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHdpZHRoOiA2NXJlbTtcbiAgICBAaW5jbHVkZSBwaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHNtUGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSB0YWJsZXQoOTUlKTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wKDgwJSk7XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCg4MCUpO1xuICAgIEBleHRlbmQgJWZvcm07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgLmJvb2sge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgd2lkdGg6IDMzLjElO1xuXG4gICAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuICAgICAgQGluY2x1ZGUgZmxleC1mbG93KHdyYXApO1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQoNDklKTtcbiAgICAgIEBpbmNsdWRlIHBob25lKDEwMCUpO1xuICAgICAgQGluY2x1ZGUgc21QaG9uZSg0OSUpO1xuICAgICAgQGluY2x1ZGUgZGVza3RvcCgzMyUpO1xuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCgyNC43JSk7XG5cbiAgICAgID4gOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC5ib29rQ29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuM3JlbSBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgICAvLyBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvbnRBZGRpdGlvbmFsKTtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vIGJ1dHRvbiBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiAvLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGRpdi5idG5EaXYge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBAaW5jbHVkZSBidXR0b25TdG9yZShtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgICAgfVxuICAgIH1cbiAgICAubm90ZSB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIH1cbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLyBmb290ZXIgLy8vLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbmZvb3RlciB7XG4gIGRpdiB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKVxuXG5cbiAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYsXG5mb250TWFpbjogIzc0N2E4YSk7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbmZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcbiIsIiVjbGVhcmZpeCB7XG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbiVmbG9hdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuJWlucHV0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMTZweDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xufVxuXG4lZm9ybSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbkBtaXhpbiBpbnB1dFN1Ym1pdCgkY29sb3JCYWNrZ3JvdW5kLCAkY29sb3IgKSB7XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIDpmb2N1cyB7XG4gICAgLy8gIG91dGxpbmU6IG5vbmU7XG4gICAgIGJvcmRlcjogMC4xZW0gc29saWQgZGFya2VuKCNjY2MsIDYlKTtcbiAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yQmFzaWM7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNpdGlvbjogLjZzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpmb2N1c3tcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgZmlsdGVyOiBibHVyKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpICBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JIb3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiRidXR0b24tY29sb3I6ICMyRDMxNDI7XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCYXNpYztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JIb3ZlcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbiRwaG9uZTI6IFwiKG1pbi13aWR0aDogMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAyOTlweClcIjtcbiRwaG9uZTogXCIobWluLXdpZHRoOiAzMDBweCkgYW5kIChtYXgtd2lkdGg6IDU5OXB4KVwiO1xuJHNtUGhvbmU6IFwiKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweClcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTEwcHgpXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAxMTExcHgpIGFuZCAobWF4LXdpZHRoOiAxNjAwcHgpXCI7XG4kbWF4RGVza3RvcDogXCIobWluLXdpZHRoOiAxNjAxcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHBob25lKCR3aWR0aCkgIHtcbiAgQG1lZGlhICN7JHBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiB0YWJsZXQoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skZGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3AoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbn1cbiIsIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSB7XG4gIC8vIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQkEsQUViQSxPRmFPLENBRUwsSUFBSSxDQW9CRixLQUFLLENFbkNGO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFNBQVMsRUFBRSxNQUFNO0NBQ2xCOztBRk9ELEFFTEEsT0ZLTyxDQUVMLElBQUksRUFGTixBRUxBLE9GS08sQ0EyQ0wsU0FBUyxDRWhETDtFQUNKLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLFNBQVM7RUFDakIsYUFBYSxFQUFFLEdBQUc7Q0FDbkI7O0FJeEJELEFBQUEsQ0FBQyxDQUFDO0VBQ0EsVUFBVSxFQUFFLFVBQVU7RUFDdEIsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztDQUNYOztBQUVELEFBQUEsSUFBSSxDQUFDO0VBRUgsV0FBVyxFQUFFLHVCQUF1QjtFQUNwQyxjQUFjLEVBQUUsYUFBYTtFQUM3QixlQUFlLEVBQUUsU0FBUztDQUMzQjs7QUFFRCxBQUFBLEVBQUUsQ0FBQztFQUNELEtBQUssRUxORyxPQUFPO0VLT2YsWUFBWSxFQUFFLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsU0FBUyxFQUFFLElBQUk7Q0FDaEI7O0FOT0QsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0VBU0gsVUFBVSxFQ3hCTCxPQUFPO0VEMEJaLFNBQVMsRUFBRSxJQUFJO0NBd0JoQjs7QUkvQ0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUpVakQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0lJVkgsS0FBSyxFSldVLEdBQUc7R0FrQ25COzs7QUl4Q0QsTUFBTSxFQUFF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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHNlYXJjaCAvIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOiAyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgLy8vLyByZW5kZXIgYm9vay8vLy9cbiAgLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICNzaG93RGF0YSB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuXG4gICAgLy8gYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG5cbiAgICA+IDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBtYXJnaW46IDFweDtcbiAgICAgIHdpZHRoOiAzMy4xJTtcblxuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZmxvdyh3cmFwKTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0KDQ5JSk7XG4gICAgICBAaW5jbHVkZSBwaG9uZSgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUoNDklKTtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AoMzMlKTtcbiAgICAgIEBpbmNsdWRlIG1heERlc2t0b3AoMjQuNyUpO1xuXG4gICAgICA+IDpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICB9XG4gICAgICAuYm9va0NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLmF1dGhvciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgIDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBmb250TWFpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuM3JlbSBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvbnRBZGRpdGlvbmFsKTtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLyBidXR0b24gXCJQcnplamTFuiBkbyBrc2nEmWdhcm5pXCIgLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBkaXYuYnRuRGl2IHtcbiAgICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5idG5Cb29rIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5vdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8gZm9vdGVyIC8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5mb290ZXIge1xuICBkaXYge1xuICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2VlbilcblxuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG5cbiAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgZm9udC1zaXplOiAxMHB4O1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICB9XG4gIH1cbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG5cbiRtYXBPZlByaW1hckNvbG9yczpcbihyZWRHd286I2Q1MDQxZixcbm9yYW5nZUd3bzogI2VhODMwMCxcbnllbGxvd0d3bzogI2Y1YmYwMCxcbndoaXRlR3dvOiAjRkZGLFxuZm9udE1haW46ICM3NDdhOGEpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG5mb250QWRkaXRpb25hbDogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICA6Zm9jdXMge1xuICAgIC8vICBvdXRsaW5lOiBub25lO1xuICAgICBib3JkZXI6IDAuMWVtIHNvbGlkIGRhcmtlbigjY2NjLCA2JSk7XG4gICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gYnV0dG9uKCRjb2xvckJhc2ljLCAkY29sb3JIb3ZlciwgJGNvbG9yVGV4dCwgJGNvbG9ydGV4dEhvdmVyKSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJhc2ljO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXN7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4kYnV0dG9uLWNvbG9yOiAjMkQzMTQyO1xuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQmFzaWM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gIH1cbiAgJjpmb2N1cyB7XG4gIH1cbiAgJjphY3RpdmUge1xuICB9XG59XG4iLCIvLyBGbGV4Ym94IGRpc3BsYXlcbiAgQG1peGluIGZsZXhib3goKSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAvLyBUaGUgJ2ZsZXgnIHNob3J0aGFuZFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPHBvc2l0aXZlLW51bWJlcj4sIGluaXRpYWwsIGF1dG8sIG9yIG5vbmVcbiAgQG1peGluIGZsZXgoJHZhbHVlcykge1xuICAgIC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgLW1vei1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAtbXMtZmxleDogJHZhbHVlcztcbiAgICBcdCAgICAgIGZsZXg6ICR2YWx1ZXM7XG4gIH1cblxuICAvLyBGbGV4IEZsb3cgRGlyZWN0aW9uXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBjb250YWluZXJzXG4gIC8vIHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2VcbiAgQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgIC1tb3otZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICB9XG5cbiAgLy8gRmxleCBMaW5lIFdyYXBwaW5nXG4gIC8vIHVtaWVzemN6YSBlbGVtZW50eSB3IGtvbGVqbnltIGFub25pbW93eW0gYmxva3VcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gbm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZVxuICBAbWl4aW4gZmxleC13cmFwKCR3cmFwKSB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgIC1tb3otZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgICAgICBmbGV4LXdyYXA6ICR3cmFwO1xuICB9XG5cbiAgLy8gRmxleCBEaXJlY3Rpb24gYW5kIFdyYXBcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gPGZsZXgtZGlyZWN0aW9uPiB8fCA8ZmxleC13cmFwPlxuICBAbWl4aW4gZmxleC1mbG93KCRmbG93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgIC1tb3otZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgICAgICBmbGV4LWZsb3c6ICRmbG93O1xuICB9XG5cbiAgLy8gRGlzcGxheSBPcmRlclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPGludGVnZXI+XG4gIEBtaXhpbiBvcmRlcigkdmFsKSB7XG4gICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbDtcbiAgICAgICAtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgIFx0ICAgICAtbXMtZmxleC1vcmRlcjogJHZhbDtcbiAgICBcdCAgICAgIC13ZWJraXQtb3JkZXI6ICR2YWw7XG4gICAgXHRcdCAgICAgIG9yZGVyOiAkdmFsO1xuICB9XG5cbiAgLy8gRmxleCBncm93IGZhY3RvclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtZ3JvdygkZ3Jvdykge1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAtbW96LWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgIC1tcy1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgICAgICAgZmxleC1ncm93OiAkZ3JvdztcbiAgfVxuXG4gIC8vIEZsZXggc2hyaW5rXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtIHNocmluayBmYWN0b3JcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtc2hyaW5rKCRzaHJpbmspIHtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgIC1tb3otZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgIC1tcy1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICB9XG5cbiAgLy8gRmxleCBiYXNpc1xuICAvLyAtIHRoZSBpbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc25pdGlhbCBtYWluIHNpemUgb2YgdGhlIGZsZXggaXRlbVxuICAvLyA8d2lkdGg+XG4gIEBtaXhpbiBmbGV4LWJhc2lzKCR3aWR0aCkge1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgIC1tb3otZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAtbXMtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAgICAgZmxleC1iYXNpczogJHdpZHRoO1xuICB9XG5cbiAgLy8gQXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZFxuICBAbWl4aW4ganVzdGlmeS1jb250ZW50KCRqdXN0aWZ5KSB7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgIC1tb3otanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgLW1zLWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiAkanVzdGlmeTtcbiAgfVxuXG4gIC8vIFBhY2tpbmcgRmxleCBMaW5lc1xuICAvLyAtIGFwcGxpZXMgdG86IG11bHRpLWxpbmUgZmxleCBjb250YWluZXJzXG4gIC8vIGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1jb250ZW50KCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogJGFsaWduO1xuICB9XG5cbiAgLy8gQ3Jvc3MtYXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1pdGVtcygkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaFxuICBAbWl4aW4gYWxpZ24tc2VsZigkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgLW1zLWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6ICRhbGlnbjtcbiAgfVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5AbWl4aW4gcGhvbmUyKCR3aWR0aCkge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSgkd2lkdGgpICB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHNtUGhvbmUoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0KCR3aWR0aCkge1xuICBAbWVkaWEgI3skdGFibGV0fSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBtYXhEZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuICBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbn1cblxuaDIge1xuICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCQSxBRWRBLE9GY08sQ0FFTCxJQUFJLENBb0JGLEtBQUssQ0VwQ0Y7RUFDTCxVQUFVLEVBQUUsVUFBVTtFQUN0QixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FBVyxFQUFFLE9BQU87RUFDcEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FGUUQsQUVOQSxPRk1PLENBRUwsSUFBSSxFQUZOLEFFTkEsT0ZNTyxDQTJDTCxTQUFTLENFakRMO0VBQ0osT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsU0FBUztFQUNqQixhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUl4QkQsQUFBQSxDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUUsVUFBVTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFFSCxXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLGNBQWMsRUFBRSxhQUFhO0VBQzdCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFTE5HLE9BQU87RUtPZixZQUFZLEVBQUUsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QU5TRCxBQUVFLE9BRkssQ0FFTCxJQUFJLENBQUM7RUFTSCxVQUFVLEVDekJMLE9BQU87RUQyQlosU0FB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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 726b8d2..829e0f7 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -83,7 +83,7 @@ eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./compon /*! all exports used */ /***/ (function(module, exports) { -eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n var webConnection = \"
Brak połączenia z serwerem
\";\n document.getElementById(\"showData\").innerHTML = webConnection;\n\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n htmlString +=\n \"
\" +\n \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"

\" + (data[i].title).replace(/\\./g, '
') + \"

\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICAgIHZhciB3ZWJDb25uZWN0aW9uID0gXCI8ZGl2IGNsYXNzPSdub3RlJz5CcmFrIHBvxYLEhWN6ZW5pYSB6IHNlcndlcmVtPC9kaXY+XCI7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IHdlYkNvbm5lY3Rpb247XG5cbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBodG1sU3RyaW5nICs9XG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rQ29udGVudCc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nYm9va0ltYWdlJz5cIiArICc8aW1nIHNyYz0nICsgZGF0YVtpXS5jb3ZlciArICcgKyBoZWlnaHQ9XCIyNTBcIj4nICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW5mbyc+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0ndGl0bGUnPlwiICsgXCI8aDI+XCIgKyAoZGF0YVtpXS50aXRsZSkucmVwbGFjZSgvXFwuL2csICc8YnI+JykgKyBcIjwvaDI+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Jz5cIiArICc8YSBocmVmPScgKyBkYXRhW2ldLnVybCArICcgY2xhc3M9XCJidG5Cb29rXCIgPicgKyBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiArIFwiPC9hPlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCI7XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IGh0bWxTdHJpbmc7IC8vIHd5a29yenlzdGHFgmVtIGF0cnlidXQgaW5uZXJIVE1MIGt0w7NyeSB6d3JhY2Ega29kIEhUTUwuXG4gICAgfVxuICB9KTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9kYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///1\n"); +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n var webConnection = \"
Brak połączenia z serwerem
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n console.log((data[i].title));\n\n htmlString +=\n \"
\" +\n \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"
    \" + \"
  • \" + (data[i].title).replace(/\\./g, '
  • ') + \"
  • \" + \"
\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICAgIHZhciB3ZWJDb25uZWN0aW9uID0gXCI8ZGl2IGNsYXNzPSdub3RlJz5CcmFrIHBvxYLEhWN6ZW5pYSB6IHNlcndlcmVtPC9kaXY+XCI7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG5cbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBjb25zb2xlLmxvZygoZGF0YVtpXS50aXRsZSkpO1xuXG4gICAgICAgIGh0bWxTdHJpbmcgKz1cbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2snPlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tDb250ZW50Jz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnPlwiICsgJzxpbWcgc3JjPScgKyBkYXRhW2ldLmNvdmVyICsgJyArIGhlaWdodD1cIjI1MFwiPicgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tJbmZvJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSd0aXRsZSc+XCIgKyBcIjx1bD5cIiArIFwiPGxpPlwiICsgKGRhdGFbaV0udGl0bGUpLnJlcGxhY2UoL1xcLi9nLCAnPC9saT48bGk+JykgKyBcIjwvbGk+XCIgKyBcIjwvdWw+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Jz5cIiArICc8YSBocmVmPScgKyBkYXRhW2ldLnVybCArICcgY2xhc3M9XCJidG5Cb29rXCIgPicgKyBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiArIFwiPC9hPlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCI7XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IGh0bWxTdHJpbmc7IC8vIHd5a29yenlzdGHFgmVtIGF0cnlidXQgaW5uZXJIVE1MIGt0w7NyeSB6d3JhY2Ega29kIEhUTUwuXG4gICAgfVxuICB9KTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9kYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ diff --git a/index.html b/index.html index 9a84954..1e90d7e 100644 --- a/index.html +++ b/index.html @@ -47,7 +47,7 @@ - + diff --git a/js/data.js b/js/data.js index a77a601..119dd11 100644 --- a/js/data.js +++ b/js/data.js @@ -38,7 +38,7 @@ document.addEventListener("DOMContentLoaded", function() { ourRequest.onerror = function() { console.log("Connection error"); var webConnection = "
Brak połączenia z serwerem
"; - document.getElementById("showData").innerHTML = webConnection; + document.getElementById("showData").innerHTML = ourData; }; ourRequest.send(); @@ -50,12 +50,14 @@ document.addEventListener("DOMContentLoaded", function() { var line = document.createElement("div"); for (i = 0; i < data.length; i++) { + console.log((data[i].title)); + htmlString += "
" + "
" + "
" + '' + "
" + "
" + - "
" + "

" + (data[i].title).replace(/\./g, '
') + "

" + "
" + + "
" + "
    " + "
  • " + (data[i].title).replace(/\./g, '
  • ') + "
  • " + "
" + "
" + "
" + "autorzy: " + (data[i].author) + "
" + "
" + "ISBN: " + data[i].isbn + "
" + "
" + "numer dopuszczenia MEN: " + data[i].men + "
" + diff --git a/my-index.html b/my-index.html index b92a0b4..2d0af7a 100644 --- a/my-index.html +++ b/my-index.html @@ -47,7 +47,7 @@
- + diff --git a/sass/main.scss b/sass/main.scss index 96ac6bf..af3e78e 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -21,6 +21,7 @@ // fontAdditional: #bababa); + //////////////////////////// // search / wyszukiwarka // ////////////////////////// @@ -64,9 +65,9 @@ section { } } - ////////////////// - // render book// - /////////////// + ///////////////////// + //// render book//// + /////////////////// #showData { @include flexbox(); @@ -118,6 +119,17 @@ section { padding-top: 1rem; } .title { + + ul { + list-style-type: none; + :nth-of-type(1) { + font-size: 25px; + color: map-get($mapOfPrimarColors, fontMain); + } + :nth-of-type(2) { + font-size: 18px; + } + } padding-bottom: 1rem; border-bottom: 0.3rem solid map-get($mapOfPrimarColors, fontMain); } @@ -126,9 +138,6 @@ section { background: map-get($mapOfColors, ColorBG); padding: 16px 12px 16px 16px; } - .bookInfo { - // border-left: 1px solid map-get($mapOfPrimarColors, whiteGwo); - } .bookInfo > div { color: map-get($mapOfColors, fontAdditional); } @@ -144,7 +153,6 @@ section { } } } - } ////////////////////////////////////////////////////// @@ -176,17 +184,17 @@ footer { @include flexbox(); @include justify-content(space-between) + @include phone(95%); + @include smPhone(95%); + @include tablet(95%); + @include desktop(80%); + @include maxDesktop(80%); color: map-get($mapOfPrimarColors, whiteGwo); background: map-get($mapOfPrimarColors, redGwo); padding: 0.5rem; margin: 1rem auto; font-size: 10px; - @include phone(95%); - @include smPhone(95%); - @include tablet(95%); - @include desktop(80%); - @include maxDesktop(80%); a { text-decoration: none; diff --git a/sass/partials/_base.scss b/sass/partials/_base.scss index 0449a5c..c0ce261 100644 --- a/sass/partials/_base.scss +++ b/sass/partials/_base.scss @@ -17,5 +17,4 @@ h2 { color: map-get($mapOfPrimarColors, fontMain); font-kerning: auto; font-weight: 800; - font-size: 18px; } From fb6fe750ae443134f0364676c09188d1666acf11 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Sun, 19 Nov 2017 16:23:06 +0100 Subject: [PATCH 19/20] =?UTF-8?q?Sass=20-=20praca=20nad=20szat=C4=85=20gra?= =?UTF-8?q?ficzn=C4=85=20+=20footer/JS=20component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/main.css | 58 ++++++++++++++++++++++++++++++++++------- dist/bundle.js | 4 +-- index.html | 12 ++++----- js/component.js | 59 ++++++++++++++++++++++++++++++++++-------- js/data.js | 2 +- my-index.html | 17 +++++++----- package.json | 3 ++- sass/main.scss | 22 ++++++++++------ sass/modules/_all.scss | 47 ++++++++++++++++++++++++++++----- 9 files changed, 172 insertions(+), 52 deletions(-) diff --git a/css/main.css b/css/main.css index a2dd7ce..31863a1 100644 --- a/css/main.css +++ b/css/main.css @@ -1,13 +1,12 @@ section form input { - box-sizing: border-box; - padding: 16px; + padding: 1rem; outline: 0; font-family: inherit; font-size: 0.95em; } section form, section #showData { - padding: 1rem; + padding: 0.5rem; margin: 10px auto; border-radius: 1px; } @@ -31,7 +30,6 @@ h2 { } section form { - background: #f7f7f7; font-size: 16px; } @@ -76,12 +74,38 @@ section form input[type="submit"] :focus { border: 0.1em solid #bdbdbd; } -section form #searchBook { - width: 70%; +@media (min-width: 300px) and (max-width: 599px) { + section form #searchBook { + width: 68%; + } +} + +@media (min-width: 600px) and (max-width: 767px) { + section form #searchBook { + width: 68%; + } +} + +@media (min-width: 768px) and (max-width: 1110px) { + section form #searchBook { + width: 68%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + section form #searchBook { + width: 70%; + } +} + +@media (min-width: 1601px) { + section form #searchBook { + width: 70%; + } } section form #submit { - width: 26%; + width: 28%; margin-left: 0.6rem; } @@ -200,6 +224,9 @@ section #showData .book { padding: 1rem; margin: 1px; width: 33.1%; + -webkit-transition: all 0.3s; + -moz-transition: all 0.3s; + transition: all 0.3s; display: -webkit-box; display: -moz-box; display: -ms-flexbox; @@ -215,6 +242,13 @@ section #showData .book { flex-flow: wrap; } +section #showData .book:hover { + background-color: #FFF; + top: 0; + transform: translateY(-5px); + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5); +} + @media (min-width: 768px) and (max-width: 1110px) { section #showData .book { width: 49%; @@ -235,7 +269,7 @@ section #showData .book { @media (min-width: 1111px) and (max-width: 1600px) { section #showData .book { - width: 33%; + width: 33.1%; } } @@ -277,7 +311,6 @@ section #showData .book .bookContent .title ul :nth-of-type(2) { section #showData .book .bookContent .bookInfo { width: 100%; - background: #f7f7f7; padding: 16px 12px 16px 16px; } @@ -324,6 +357,9 @@ section #showData div.btnDiv .btnBook { -ms-touch-action: manipulation; touch-action: manipulation; cursor: pointer; + -webkit-transition: all 0.3s; + -moz-transition: all 0.3s; + transition: all 0.3s; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; @@ -338,6 +374,8 @@ section #showData div.btnDiv .btnBook { section #showData div.btnDiv .btnBook:hover { background-color: #d5041f; + cursor: pointer; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } section #showData .note { @@ -398,4 +436,4 @@ footer div a { color: #FFF; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHNlYXJjaCAvIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICAjc3VibWl0IHtcbiAgICAgIHdpZHRoOiAyNiU7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBvcmFuZ2VHd28pO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGxhY2Vob2xkZXJcIl0ge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb290ZXJDb2xvcik7XG4gICAgfVxuXG4gICAgI3N1Ym1pdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24obWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICB9XG4gIH1cblxuICAvLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgLy8vLyByZW5kZXIgYm9vay8vLy9cbiAgLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICNzaG93RGF0YSB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuXG4gICAgLy8gYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG5cbiAgICA+IDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIC5ib29rIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBDb2xvckJHKTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBtYXJnaW46IDFweDtcbiAgICAgIHdpZHRoOiAzMy4xJTtcblxuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZmxvdyh3cmFwKTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0KDQ5JSk7XG4gICAgICBAaW5jbHVkZSBwaG9uZSgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUoNDklKTtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AoMzMlKTtcbiAgICAgIEBpbmNsdWRlIG1heERlc2t0b3AoMjQuNyUpO1xuXG4gICAgICA+IDpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICB9XG4gICAgICAuYm9va0NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLmF1dGhvciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgIDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBmb250TWFpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuM3JlbSBzb2xpZCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW5mbyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweCAxNnB4IDE2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvID4gZGl2IHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvbnRBZGRpdGlvbmFsKTtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMTZyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLyBidXR0b24gXCJQcnplamTFuiBkbyBrc2nEmWdhcm5pXCIgLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBkaXYuYnRuRGl2IHtcbiAgICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5idG5Cb29rIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5vdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8gZm9vdGVyIC8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5mb290ZXIge1xuICBkaXYge1xuICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2VlbilcblxuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG5cbiAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgZm9udC1zaXplOiAxMHB4O1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHdoaXRlR3dvKTtcbiAgICB9XG4gIH1cbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjZWE4MzAwO1xuJGFkZGl0aW9uYWwtY29sb3I6ICNkNTA0MWY7XG4kY29tcGxlbWVudGFyeS1jb2xvcjogI2Y1YmYwMDtcbiRuZXV0cmFsQ29sb3I6ICNGRkY7XG5cbiRtYXBPZlByaW1hckNvbG9yczpcbihyZWRHd286I2Q1MDQxZixcbm9yYW5nZUd3bzogI2VhODMwMCxcbnllbGxvd0d3bzogI2Y1YmYwMCxcbndoaXRlR3dvOiAjRkZGLFxuZm9udE1haW46ICM3NDdhOGEpO1xuXG4kbWFwT2ZDb2xvcnM6XG4oYmFja2dvdW5kQ29sb3I6I0ZGRixcbkNvbG9yQkc6ICNmN2Y3ZjcsXG5mb290ZXJDb2xvcjogI2ZlNjEwMyxcbmxpbmtDb3JvcjogIzAwYzZmZixcbmhvdmVyQ29sb3I6ICM5NjAwZmYsXG5mb250QWRkaXRpb25hbDogI2JhYmFiYSk7XG4iLCIlY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG5AbWl4aW4gaW5wdXRTdWJtaXQoJGNvbG9yQmFja2dyb3VuZCwgJGNvbG9yICkge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICA6Zm9jdXMge1xuICAgIC8vICBvdXRsaW5lOiBub25lO1xuICAgICBib3JkZXI6IDAuMWVtIHNvbGlkIGRhcmtlbigjY2NjLCA2JSk7XG4gICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gYnV0dG9uKCRjb2xvckJhc2ljLCAkY29sb3JIb3ZlciwgJGNvbG9yVGV4dCwgJGNvbG9ydGV4dEhvdmVyKSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJhc2ljO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IC42cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXN7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4kYnV0dG9uLWNvbG9yOiAjMkQzMTQyO1xuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQmFzaWM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gIH1cbiAgJjpmb2N1cyB7XG4gIH1cbiAgJjphY3RpdmUge1xuICB9XG59XG4iLCIvLyBGbGV4Ym94IGRpc3BsYXlcbiAgQG1peGluIGZsZXhib3goKSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAvLyBUaGUgJ2ZsZXgnIHNob3J0aGFuZFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPHBvc2l0aXZlLW51bWJlcj4sIGluaXRpYWwsIGF1dG8sIG9yIG5vbmVcbiAgQG1peGluIGZsZXgoJHZhbHVlcykge1xuICAgIC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgLW1vei1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAtbXMtZmxleDogJHZhbHVlcztcbiAgICBcdCAgICAgIGZsZXg6ICR2YWx1ZXM7XG4gIH1cblxuICAvLyBGbGV4IEZsb3cgRGlyZWN0aW9uXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBjb250YWluZXJzXG4gIC8vIHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2VcbiAgQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgIC1tb3otZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICB9XG5cbiAgLy8gRmxleCBMaW5lIFdyYXBwaW5nXG4gIC8vIHVtaWVzemN6YSBlbGVtZW50eSB3IGtvbGVqbnltIGFub25pbW93eW0gYmxva3VcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gbm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZVxuICBAbWl4aW4gZmxleC13cmFwKCR3cmFwKSB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgIC1tb3otZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgICAgICBmbGV4LXdyYXA6ICR3cmFwO1xuICB9XG5cbiAgLy8gRmxleCBEaXJlY3Rpb24gYW5kIFdyYXBcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gPGZsZXgtZGlyZWN0aW9uPiB8fCA8ZmxleC13cmFwPlxuICBAbWl4aW4gZmxleC1mbG93KCRmbG93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgIC1tb3otZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgICAgICBmbGV4LWZsb3c6ICRmbG93O1xuICB9XG5cbiAgLy8gRGlzcGxheSBPcmRlclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPGludGVnZXI+XG4gIEBtaXhpbiBvcmRlcigkdmFsKSB7XG4gICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbDtcbiAgICAgICAtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgIFx0ICAgICAtbXMtZmxleC1vcmRlcjogJHZhbDtcbiAgICBcdCAgICAgIC13ZWJraXQtb3JkZXI6ICR2YWw7XG4gICAgXHRcdCAgICAgIG9yZGVyOiAkdmFsO1xuICB9XG5cbiAgLy8gRmxleCBncm93IGZhY3RvclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtZ3JvdygkZ3Jvdykge1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAtbW96LWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgIC1tcy1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgICAgICAgZmxleC1ncm93OiAkZ3JvdztcbiAgfVxuXG4gIC8vIEZsZXggc2hyaW5rXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtIHNocmluayBmYWN0b3JcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtc2hyaW5rKCRzaHJpbmspIHtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgIC1tb3otZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgIC1tcy1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICB9XG5cbiAgLy8gRmxleCBiYXNpc1xuICAvLyAtIHRoZSBpbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc25pdGlhbCBtYWluIHNpemUgb2YgdGhlIGZsZXggaXRlbVxuICAvLyA8d2lkdGg+XG4gIEBtaXhpbiBmbGV4LWJhc2lzKCR3aWR0aCkge1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgIC1tb3otZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAtbXMtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAgICAgZmxleC1iYXNpczogJHdpZHRoO1xuICB9XG5cbiAgLy8gQXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZFxuICBAbWl4aW4ganVzdGlmeS1jb250ZW50KCRqdXN0aWZ5KSB7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgIC1tb3otanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgLW1zLWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiAkanVzdGlmeTtcbiAgfVxuXG4gIC8vIFBhY2tpbmcgRmxleCBMaW5lc1xuICAvLyAtIGFwcGxpZXMgdG86IG11bHRpLWxpbmUgZmxleCBjb250YWluZXJzXG4gIC8vIGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1jb250ZW50KCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogJGFsaWduO1xuICB9XG5cbiAgLy8gQ3Jvc3MtYXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1pdGVtcygkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaFxuICBAbWl4aW4gYWxpZ24tc2VsZigkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgLW1zLWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6ICRhbGlnbjtcbiAgfVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5AbWl4aW4gcGhvbmUyKCR3aWR0aCkge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSgkd2lkdGgpICB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHNtUGhvbmUoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0KCR3aWR0aCkge1xuICBAbWVkaWEgI3skdGFibGV0fSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBtYXhEZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuICBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbn1cblxuaDIge1xuICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCQSxBRWRBLE9GY08sQ0FFTCxJQUFJLENBb0JGLEtBQUssQ0VwQ0Y7RUFDTCxVQUFVLEVBQUUsVUFBVTtFQUN0QixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FBVyxFQUFFLE9BQU87RUFDcEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FGUUQsQUVOQSxPRk1PLENBRUwsSUFBSSxFQUZOLEFFTkEsT0ZNTyxDQTJDTCxTQUFTLENFakRMO0VBQ0osT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsU0FBUztFQUNqQixhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUl4QkQsQUFBQSxDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUUsVUFBVTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFFSCxXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLGNBQWMsRUFBRSxhQUFhO0VBQzdCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFTE5HLE9BQU87RUtPZixZQUFZLEVBQUUsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QU5TRCxBQUVFLE9BRkssQ0FFTCxJQUFJLENBQUM7RUFTSCxVQUFVLEVDekJMLE9BQU87RUQyQlosU0FB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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHNlYXJjaCAvIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICBAaW5jbHVkZSBwaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgc21QaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgdGFibGV0KDY4JSk7XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wKDcwJSk7XG4gICAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDcwJSk7XG4gICAgfVxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI4JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJwbGFjZWhvbGRlclwiXSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLy8vIHJlbmRlciBib29rLy8vL1xuICAvLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG5cbiAgICA+IDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuXG4gICAgLmJvb2sge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgd2lkdGg6IDMzLjElO1xuXG4gICAgICBAaW5jbHVkZSBib29rSG92ZXIocmVkLCBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgYmFja2dvdW5kQ29sb3IpLCBncmVlbiwgeWVsbG93KSA7XG5cblxuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZmxvdyh3cmFwKTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0KDQ5JSk7XG4gICAgICBAaW5jbHVkZSBwaG9uZSgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUoNDklKTtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AoMzMuMSUpO1xuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCgyNC43JSk7XG5cbiAgICAgID4gOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC5ib29rQ29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4zcmVtIHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBmb250TWFpbik7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vIGJ1dHRvbiBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiAvLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGRpdi5idG5EaXYge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBAaW5jbHVkZSBidXR0b25TdG9yZShtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgICAgfVxuICAgIH1cbiAgICAubm90ZSB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIH1cbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLyBmb290ZXIgLy8vLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbmZvb3RlciB7XG4gIGRpdiB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKVxuXG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcblxuICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICBmb250LXNpemU6IDEwcHg7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYsXG5mb250TWFpbjogIzc0N2E4YSk7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbmZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcbiIsIiVjbGVhcmZpeCB7XG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbiVmbG9hdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuJWlucHV0IHtcbiAgLy8gYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xufVxuXG4lZm9ybSB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgOmZvY3VzIHtcbiAgICAgIC8vICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyOiAwLjFlbSBzb2xpZCBkYXJrZW4oI2NjYywgNiUpO1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4kYnV0dG9uLWNvbG9yOiAjMkQzMTQyO1xuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0MztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJhc2ljO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICB9XG4gICY6Zm9jdXMge1xuICB9XG4gICY6YWN0aXZlIHtcbiAgfVxufVxuXG5cbkBtaXhpbiBib29rSG92ZXIoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gICAgdG9wOiAwO1xuICAgIC8vIG9wYWNpdHk6IDA7XG4gICAgLy8gZmlsdGVyOiBibHVyKDVweCk7XG4gICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuNSk7XG5cbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbiRwaG9uZTI6IFwiKG1pbi13aWR0aDogMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAyOTlweClcIjtcbiRwaG9uZTogXCIobWluLXdpZHRoOiAzMDBweCkgYW5kIChtYXgtd2lkdGg6IDU5OXB4KVwiO1xuJHNtUGhvbmU6IFwiKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweClcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTEwcHgpXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAxMTExcHgpIGFuZCAobWF4LXdpZHRoOiAxNjAwcHgpXCI7XG4kbWF4RGVza3RvcDogXCIobWluLXdpZHRoOiAxNjAxcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHBob25lKCR3aWR0aCkgIHtcbiAgQG1lZGlhICN7JHBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiB0YWJsZXQoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skZGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3AoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbn1cbiIsIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSB7XG4gIC8vIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJBLEFFZEEsT0ZjTyxDQUVMLElBQUksQ0F3QkYsS0FBSyxDRXhDRjtFQUVMLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsTUFBTTtDQUNsQjs7QUZRRCxBRU5BLE9GTU8sQ0FFTCxJQUFJLEVBRk4sQUVOQSxPRk1PLENBK0NMLFNBQVMsQ0VyREw7RUFDSixPQUFPLEVBQUUsTUFBTTtFQUNmLE1BQU0sRUFBRSxTQUFTO0VBQ2pCLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBSXhCRCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUVILFdBQVcsRUFBRSx1QkFBdUI7RUFDcEMsY0FBYyxFQUFFLGFBQWE7RUFDN0IsZUFBZSxFQUFFLFNBQVM7Q0FDM0I7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDRCxLQUFLLEVMTkcsT0FBTztFS09mLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBTlNELEFBRUUsT0FGSyxDQUVMLElBQUksQ0FBQztFQVdILFNBQVMsRUFBRSxJQUFJO0NBNEJoQjs7QUlwREQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUpXakQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0lJWEgsS0FBSyxFSllVLEdBQUc7R0FzQ25COzs7QUk3Q0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFL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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 829e0f7..52b70de 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -83,7 +83,7 @@ eval("__webpack_require__(/*! ./data.js */ 1);\n__webpack_require__(/*! ./compon /*! all exports used */ /***/ (function(module, exports) { -eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n var webConnection = \"
Brak połączenia z serwerem
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n console.log((data[i].title));\n\n htmlString +=\n \"
\" +\n \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"
    \" + \"
  • \" + (data[i].title).replace(/\\./g, '
  • ') + \"
  • \" + \"
\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICAgIHZhciB3ZWJDb25uZWN0aW9uID0gXCI8ZGl2IGNsYXNzPSdub3RlJz5CcmFrIHBvxYLEhWN6ZW5pYSB6IHNlcndlcmVtPC9kaXY+XCI7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG5cbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBjb25zb2xlLmxvZygoZGF0YVtpXS50aXRsZSkpO1xuXG4gICAgICAgIGh0bWxTdHJpbmcgKz1cbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2snPlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tDb250ZW50Jz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnPlwiICsgJzxpbWcgc3JjPScgKyBkYXRhW2ldLmNvdmVyICsgJyArIGhlaWdodD1cIjI1MFwiPicgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tJbmZvJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSd0aXRsZSc+XCIgKyBcIjx1bD5cIiArIFwiPGxpPlwiICsgKGRhdGFbaV0udGl0bGUpLnJlcGxhY2UoL1xcLi9nLCAnPC9saT48bGk+JykgKyBcIjwvbGk+XCIgKyBcIjwvdWw+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Jz5cIiArICc8YSBocmVmPScgKyBkYXRhW2ldLnVybCArICcgY2xhc3M9XCJidG5Cb29rXCIgPicgKyBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiArIFwiPC9hPlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCI7XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IGh0bWxTdHJpbmc7IC8vIHd5a29yenlzdGHFgmVtIGF0cnlidXQgaW5uZXJIVE1MIGt0w7NyeSB6d3JhY2Ega29kIEhUTUwuXG4gICAgfVxuICB9KTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9kYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\"); // test - załadowanie drzewa DOM\n\n var apiPath = \"https://gwo.pl/booksApi/v1/search?query=\";\n var submitButton = document.getElementById(\"submit\"); // Wyszukiwanie przycisku submit w DOM-ie\n var userInput = document.getElementById(\"searchBook\");\n var userInput2 = document.querySelector('#searchBook')\n\n var bookContainer = document.getElementById(\"showData\");\n console.log(bookContainer);\n var pageCounter = 1;\n\n submitButton.addEventListener(\"click\", function(event) { // dodanie eventu na przycisk submit\n this.url = apiPath + encodeURI(userInput.value);\n\n console.log(this.url); // sprawdzam w konsoli czy link jest dynamicznie zmieniany\n\n var ourRequest = new XMLHttpRequest();\n\n ourRequest.open(\"GET\", this.url); // używam metody \"GET\" aby pobrać dane\n ourRequest.onload = function() {\n\n if (ourRequest.status >= 200 && ourRequest.status < 400) {\n var ourData = JSON.parse(ourRequest.responseText);\n renderHTML(ourData); // przekazuję zmienną zawierającą parsowane dane do funkcji renderHTML().\n\n if (ourData.length === 0) {\n var ourData = \"
Brak pozycji, spróbuj ponownie.
\";\n document.getElementById(\"showData\").innerHTML = ourData;\n }\n\n } else {\n console.log(\"We connected to the server, but it returned an error.\");\n }\n\n };\n\n ourRequest.onerror = function() {\n console.log(\"Connection error\");\n var webConnection = \"
Brak połączenia z serwerem
\";\n document.getElementById(\"showData\").innerHTML = webConnection;\n\n };\n ourRequest.send();\n\n function renderHTML(data) { // funkcja wrapująca div-y zawierające dane API do bookContainer\n pageCounter++;\n var htmlString = \"\";\n\n var line = document.createElement(\"div\");\n for (i = 0; i < data.length; i++) {\n\n console.log((data[i].title));\n\n htmlString +=\n \"
\" +\n \"
\" +\n \"
\" + '' + \"
\" +\n \"
\" +\n \"
\" + \"
    \" + \"
  • \" + (data[i].title).replace(/\\./g, '
  • ') + \"
  • \" + \"
\" + \"
\" +\n \"
\" + \"autorzy: \" + (data[i].author) + \"
\" +\n \"
\" + \"ISBN: \" + data[i].isbn + \"
\" +\n \"
\" + \"numer dopuszczenia MEN: \" + data[i].men + \"
\" +\n \"
\" + \"liczba stron: \" + data[i].pages_count + \"
\" +\n \"
\" + \"poziomy nauczania: \" + JSON.stringify(data[i].levels).replace(/:|\"|school|class|}|{|]|[[]/g, ' ') + \"
\" + // JSON.stringify zwraca mi ciąg zawierający tekst\n \"
\" + \"przedmiot: \" + data[i].subject + \"
\" +\n \"
\" + \"rodzaj publikacji: \" + data[i].type + \"
\" + \"
\" + \"
\"\n + \"\" + \"
\";\n }\n document.getElementById(\"showData\").innerHTML = htmlString; // wykorzystałem atrybut innerHTML który zwraca kod HTML.\n }\n });\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2RhdGEuanM/OWFjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiRE9NQ29udGVudExvYWRlZFwiLCBmdW5jdGlvbigpIHtcbiAgY29uc29sZS5sb2coXCJET00gZnVsbHkgbG9hZGVkIGFuZCBwYXJzZWRcIik7IC8vIHRlc3QgLSB6YcWCYWRvd2FuaWUgZHJ6ZXdhIERPTVxuXG4gIHZhciBhcGlQYXRoID0gXCJodHRwczovL2d3by5wbC9ib29rc0FwaS92MS9zZWFyY2g/cXVlcnk9XCI7XG4gIHZhciBzdWJtaXRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInN1Ym1pdFwiKTsgLy8gV3lzenVraXdhbmllIHByenljaXNrdSBzdWJtaXQgdyBET00taWVcbiAgdmFyIHVzZXJJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic2VhcmNoQm9va1wiKTtcbiAgdmFyIHVzZXJJbnB1dDIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VhcmNoQm9vaycpXG5cbiAgdmFyIGJvb2tDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpO1xuICBjb25zb2xlLmxvZyhib29rQ29udGFpbmVyKTtcbiAgdmFyIHBhZ2VDb3VudGVyID0gMTtcblxuICBzdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uKGV2ZW50KSB7IC8vIGRvZGFuaWUgZXZlbnR1IG5hIHByenljaXNrIHN1Ym1pdFxuICAgIHRoaXMudXJsID0gYXBpUGF0aCArIGVuY29kZVVSSSh1c2VySW5wdXQudmFsdWUpO1xuXG4gICAgY29uc29sZS5sb2codGhpcy51cmwpOyAvLyBzcHJhd2R6YW0gdyBrb25zb2xpIGN6eSBsaW5rIGplc3QgZHluYW1pY3puaWUgem1pZW5pYW55XG5cbiAgICB2YXIgb3VyUmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXG4gICAgb3VyUmVxdWVzdC5vcGVuKFwiR0VUXCIsIHRoaXMudXJsKTsgLy8gdcW8eXdhbSBtZXRvZHkgXCJHRVRcIiBhYnkgcG9icmFjzIEgZGFuZVxuICAgIG91clJlcXVlc3Qub25sb2FkID0gZnVuY3Rpb24oKSB7XG5cbiAgICAgIGlmIChvdXJSZXF1ZXN0LnN0YXR1cyA+PSAyMDAgJiYgb3VyUmVxdWVzdC5zdGF0dXMgPCA0MDApIHtcbiAgICAgICAgdmFyIG91ckRhdGEgPSBKU09OLnBhcnNlKG91clJlcXVlc3QucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgcmVuZGVySFRNTChvdXJEYXRhKTsgLy8gcHJ6ZWthenVqxJkgem1pZW5uxIUgemF3aWVyYWrEhWPEhSBwYXJzb3dhbmUgZGFuZSBkbyBmdW5rY2ppIHJlbmRlckhUTUwoKS5cblxuICAgICAgICBpZiAob3VyRGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICB2YXIgb3VyRGF0YSA9IFwiPGRpdiBjbGFzcz0nbm90ZSc+QnJhayBwb3p5Y2ppLCBzcHLDs2J1aiBwb25vd25pZS48L2Rpdj5cIjtcbiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IG91ckRhdGE7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJXZSBjb25uZWN0ZWQgdG8gdGhlIHNlcnZlciwgYnV0IGl0IHJldHVybmVkIGFuIGVycm9yLlwiKTtcbiAgICAgIH1cblxuICAgIH07XG5cbiAgICBvdXJSZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiQ29ubmVjdGlvbiBlcnJvclwiKTtcbiAgICAgIHZhciB3ZWJDb25uZWN0aW9uID0gXCI8ZGl2IGNsYXNzPSdub3RlJz5CcmFrIHBvxYLEhWN6ZW5pYSB6IHNlcndlcmVtPC9kaXY+XCI7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IHdlYkNvbm5lY3Rpb247XG5cbiAgICB9O1xuICAgIG91clJlcXVlc3Quc2VuZCgpO1xuXG4gICAgZnVuY3Rpb24gcmVuZGVySFRNTChkYXRhKSB7IC8vIGZ1bmtjamEgd3JhcHVqxIVjYSBkaXYteSB6YXdpZXJhasSFY2UgZGFuZSBBUEkgZG8gYm9va0NvbnRhaW5lclxuICAgICAgcGFnZUNvdW50ZXIrKztcbiAgICAgIHZhciBodG1sU3RyaW5nID0gXCJcIjtcblxuICAgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgZm9yIChpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcblxuICAgICAgICBjb25zb2xlLmxvZygoZGF0YVtpXS50aXRsZSkpO1xuXG4gICAgICAgIGh0bWxTdHJpbmcgKz1cbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2snPlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tDb250ZW50Jz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdib29rSW1hZ2UnPlwiICsgJzxpbWcgc3JjPScgKyBkYXRhW2ldLmNvdmVyICsgJyArIGhlaWdodD1cIjI1MFwiPicgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2Jvb2tJbmZvJz5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSd0aXRsZSc+XCIgKyBcIjx1bD5cIiArIFwiPGxpPlwiICsgKGRhdGFbaV0udGl0bGUpLnJlcGxhY2UoL1xcLi9nLCAnPC9saT48bGk+JykgKyBcIjwvbGk+XCIgKyBcIjwvdWw+XCIgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J2F1dGhvcic+XCIgKyBcImF1dG9yenk6IFwiICsgKGRhdGFbaV0uYXV0aG9yKSArIFwiPC9kaXY+XCIgK1xuICAgICAgICAgIFwiPGRpdiBjbGFzcz0naXNibic+XCIgKyBcIklTQk46IFwiICsgZGF0YVtpXS5pc2JuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdtZW4nPlwiICsgXCJudW1lciBkb3B1c3pjemVuaWEgTUVOOiBcIiArIGRhdGFbaV0ubWVuICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdwYWdlc19jb3VudCc+XCIgKyBcImxpY3piYSBzdHJvbjogXCIgKyBkYXRhW2ldLnBhZ2VzX2NvdW50ICsgXCI8L2Rpdj5cIiArXG4gICAgICAgICAgXCI8ZGl2IGNsYXNzPSdsZXZlbHMnPlwiICsgXCJwb3ppb215IG5hdWN6YW5pYTogXCIgKyBKU09OLnN0cmluZ2lmeShkYXRhW2ldLmxldmVscykucmVwbGFjZSgvOnxcInxzY2hvb2x8Y2xhc3N8fXx7fF18W1tdL2csICcgJykgKyBcIjwvZGl2PlwiICsgLy8gSlNPTi5zdHJpbmdpZnkgendyYWNhIG1pIGNpxIVnIHphd2llcmFqxIVjeSB0ZWtzdFxuICAgICAgICAgIFwiPGRpdiBjbGFzcz0nc3ViamVjdCc+XCIgKyBcInByemVkbWlvdDogXCIgKyBkYXRhW2ldLnN1YmplY3QgKyBcIjwvZGl2PlwiICtcbiAgICAgICAgICBcIjxkaXYgY2xhc3M9J3R5cGUnPlwiICsgXCJyb2R6YWogcHVibGlrYWNqaTogXCIgKyBkYXRhW2ldLnR5cGUgKyBcIjwvZGl2PlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCJcbiAgICAgICAgICArIFwiPGRpdiBjbGFzcz0nYnRuRGl2Jz5cIiArICc8YSBocmVmPScgKyBkYXRhW2ldLnVybCArICcgY2xhc3M9XCJidG5Cb29rXCIgPicgKyBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiArIFwiPC9hPlwiICsgXCI8L2Rpdj5cIiArIFwiPC9kaXY+XCI7XG4gICAgICB9XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNob3dEYXRhXCIpLmlubmVySFRNTCA9IGh0bWxTdHJpbmc7IC8vIHd5a29yenlzdGHFgmVtIGF0cnlidXQgaW5uZXJIVE1MIGt0w7NyeSB6d3JhY2Ega29kIEhUTUwuXG4gICAgfVxuICB9KTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9kYXRhLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ @@ -94,7 +94,7 @@ eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.lo /*! all exports used */ /***/ (function(module, exports) { -eval("\nvar formattedBody = \"Witam, \\n\\n W związku z przesłaną aplikacją, chcielibyśmy zaprosić Pana na rozmowę kwalifikacyjną\";\n\nvar a = document.createElement('a');\nvar linkText = document.createTextNode(\"Kontakt\");\na.class = \"contact\";\na.innerHTML = linkText;\n\nvar mailToLink = \"mailto:kamelboukoffa.mac@gmail.com?\";\nvar mailContent = \"Subject=Rozmowa kwalifikacjna&\";\nmailContent += \"cc=vongriffe.mac@gmail.com&\";\nmailContent += \"body=\" + encodeURIComponent(formattedBody);\n\na.href = mailToLink + mailContent;\ndocument.getElementById(\"ex\").appendChild(a);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2NvbXBvbmVudC5qcz9hMDZhIl0sInNvdXJjZXNDb250ZW50IjpbIlxudmFyIGZvcm1hdHRlZEJvZHkgPSBcIldpdGFtLCBcXG5cXG4gVyB6d2nEhXprdSB6IHByemVzxYJhbsSFIGFwbGlrYWNqxIUsIGNoY2llbGliecWbbXkgemFwcm9zacSHIFBhbmEgbmEgcm96bW93xJkga3dhbGlmaWthY3lqbsSFXCI7XG5cbnZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xudmFyIGxpbmtUZXh0ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJLb250YWt0XCIpO1xuYS5jbGFzcyA9IFwiY29udGFjdFwiO1xuYS5pbm5lckhUTUwgPSBsaW5rVGV4dDtcblxudmFyIG1haWxUb0xpbmsgPSBcIm1haWx0bzprYW1lbGJvdWtvZmZhLm1hY0BnbWFpbC5jb20/XCI7XG52YXIgbWFpbENvbnRlbnQgPSBcIlN1YmplY3Q9Um96bW93YSBrd2FsaWZpa2Fjam5hJlwiO1xubWFpbENvbnRlbnQgKz0gXCJjYz12b25ncmlmZmUubWFjQGdtYWlsLmNvbSZcIjtcbm1haWxDb250ZW50ICs9IFwiYm9keT1cIiArIGVuY29kZVVSSUNvbXBvbmVudChmb3JtYXR0ZWRCb2R5KTtcblxuYS5ocmVmID0gbWFpbFRvTGluayArIG1haWxDb250ZW50O1xuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJleFwiKS5hcHBlbmRDaGlsZChhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vanMvY29tcG9uZW50LmpzXG4vLyBtb2R1bGUgaWQgPSAyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///2\n"); +eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\");\n\n var formattedBody = \"Witam, \\n\\n Tereść wiadomości...\";\n\n var gitHub = document.createElement('a');\n var portfolio = document.createElement('a');\n var contactToMail = document.createElement('a');\n\n document.getElementById(\"linkGitHubId\").appendChild(gitHub);\n document.getElementById(\"linkPortfolioId\").appendChild(portfolio);\n document.getElementById(\"contactMailId\").appendChild(contactToMail);\n\n var footerTextFirst = document.createTextNode(\"GitHub\");\n var footerTextSecond = document.createTextNode(\"Portfolio\");\n var emailText = document.createTextNode(\"Kontakt\");\n\n var footerLinkFirst = \"https://github.com/Vongriffe\";\n var footerLinkSecond = \"http://capalgerie.org/portfolio/\";\n var mailToLink = \"mailto:kamelboukoffa.mac@gmail.com?\";\n\n\n console.log();\n\n function mailConcat(link, tag) {\n var content = \"Subject=Zadanie rekrutacyjne frontend&\";\n link+= \"\";\n if (link.indexOf(\"@\") >=0 ) {\n content += \"body=\" + encodeURIComponent(formattedBody);\n tag.appendChild(emailText);\n tag.title = \"napisz maila\";\n tag.href = link + content;\n } else if (link.indexOf(\"github\") >=0 ) {\n tag.appendChild(footerTextFirst);\n tag.href = link;\n tag.target = '_blank';\n } else if (link.indexOf(\"portfolio\") >=0 ) {\n tag.appendChild(footerTextSecond);\n tag.href = link;\n tag.target = '_blank';\n }\n }\n mailConcat(mailToLink, contactToMail);\n mailConcat(footerLinkFirst, gitHub);\n mailConcat(footerLinkSecond, portfolio);\n\n\n\n\n\n\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2NvbXBvbmVudC5qcz9hMDZhIl0sInNvdXJjZXNDb250ZW50IjpbImRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJET01Db250ZW50TG9hZGVkXCIsIGZ1bmN0aW9uKCkge1xuICBjb25zb2xlLmxvZyhcIkRPTSBmdWxseSBsb2FkZWQgYW5kIHBhcnNlZFwiKTtcblxuICB2YXIgZm9ybWF0dGVkQm9keSA9IFwiV2l0YW0sIFxcblxcbiBUZXJlxZvEhyB3aWFkb21vxZtjaS4uLlwiO1xuXG4gIHZhciBnaXRIdWIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBwb3J0Zm9saW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBjb250YWN0VG9NYWlsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua0dpdEh1YklkXCIpLmFwcGVuZENoaWxkKGdpdEh1Yik7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua1BvcnRmb2xpb0lkXCIpLmFwcGVuZENoaWxkKHBvcnRmb2xpbyk7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiY29udGFjdE1haWxJZFwiKS5hcHBlbmRDaGlsZChjb250YWN0VG9NYWlsKTtcblxuICB2YXIgZm9vdGVyVGV4dEZpcnN0ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJHaXRIdWJcIik7XG4gIHZhciBmb290ZXJUZXh0U2Vjb25kID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJQb3J0Zm9saW9cIik7XG4gIHZhciBlbWFpbFRleHQgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShcIktvbnRha3RcIik7XG5cbiAgdmFyIGZvb3RlckxpbmtGaXJzdCA9IFwiaHR0cHM6Ly9naXRodWIuY29tL1ZvbmdyaWZmZVwiO1xuICB2YXIgZm9vdGVyTGlua1NlY29uZCA9IFwiaHR0cDovL2NhcGFsZ2VyaWUub3JnL3BvcnRmb2xpby9cIjtcbiAgdmFyIG1haWxUb0xpbmsgPSBcIm1haWx0bzprYW1lbGJvdWtvZmZhLm1hY0BnbWFpbC5jb20/XCI7XG5cblxuICBjb25zb2xlLmxvZygpO1xuXG4gIGZ1bmN0aW9uIG1haWxDb25jYXQobGluaywgdGFnKSB7XG4gICAgdmFyIGNvbnRlbnQgPSBcIlN1YmplY3Q9WmFkYW5pZSByZWtydXRhY3lqbmUgZnJvbnRlbmQmXCI7XG4gICAgbGluays9IFwiXCI7XG4gICAgaWYgKGxpbmsuaW5kZXhPZihcIkBcIikgPj0wICkge1xuICAgICAgY29udGVudCArPSBcImJvZHk9XCIgKyBlbmNvZGVVUklDb21wb25lbnQoZm9ybWF0dGVkQm9keSk7XG4gICAgICB0YWcuYXBwZW5kQ2hpbGQoZW1haWxUZXh0KTtcbiAgICAgIHRhZy50aXRsZSA9IFwibmFwaXN6IG1haWxhXCI7XG4gICAgICB0YWcuaHJlZiA9IGxpbmsgKyBjb250ZW50O1xuICAgIH0gZWxzZSBpZiAobGluay5pbmRleE9mKFwiZ2l0aHViXCIpID49MCApIHtcbiAgICAgIHRhZy5hcHBlbmRDaGlsZChmb290ZXJUZXh0Rmlyc3QpO1xuICAgICAgdGFnLmhyZWYgPSBsaW5rO1xuICAgICAgdGFnLnRhcmdldCA9ICdfYmxhbmsnO1xuICAgIH0gZWxzZSBpZiAobGluay5pbmRleE9mKFwicG9ydGZvbGlvXCIpID49MCApIHtcbiAgICAgIHRhZy5hcHBlbmRDaGlsZChmb290ZXJUZXh0U2Vjb25kKTtcbiAgICAgIHRhZy5ocmVmID0gbGluaztcbiAgICAgIHRhZy50YXJnZXQgPSAnX2JsYW5rJztcbiAgICB9XG4gIH1cbiAgbWFpbENvbmNhdChtYWlsVG9MaW5rLCBjb250YWN0VG9NYWlsKTtcbiAgbWFpbENvbmNhdChmb290ZXJMaW5rRmlyc3QsIGdpdEh1Yik7XG4gIG1haWxDb25jYXQoZm9vdGVyTGlua1NlY29uZCwgcG9ydGZvbGlvKTtcblxuXG5cblxuXG5cbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9jb21wb25lbnQuanNcbi8vIG1vZHVsZSBpZCA9IDJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///2\n"); /***/ }) /******/ ]); \ No newline at end of file diff --git a/index.html b/index.html index 1e90d7e..0253dcd 100644 --- a/index.html +++ b/index.html @@ -35,19 +35,19 @@ - + diff --git a/js/component.js b/js/component.js index 06333b3..4d35054 100644 --- a/js/component.js +++ b/js/component.js @@ -1,15 +1,52 @@ +document.addEventListener("DOMContentLoaded", function() { + console.log("DOM fully loaded and parsed"); -var formattedBody = "Witam, \n\n W związku z przesłaną aplikacją, chcielibyśmy zaprosić Pana na rozmowę kwalifikacyjną"; + var formattedBody = "Witam, \n\n Tereść wiadomości..."; -var a = document.createElement('a'); -var linkText = document.createTextNode("Kontakt"); -a.class = "contact"; -a.innerHTML = linkText; + var gitHub = document.createElement('a'); + var portfolio = document.createElement('a'); + var contactToMail = document.createElement('a'); -var mailToLink = "mailto:kamelboukoffa.mac@gmail.com?"; -var mailContent = "Subject=Rozmowa kwalifikacjna&"; -mailContent += "cc=vongriffe.mac@gmail.com&"; -mailContent += "body=" + encodeURIComponent(formattedBody); + document.getElementById("linkGitHubId").appendChild(gitHub); + document.getElementById("linkPortfolioId").appendChild(portfolio); + document.getElementById("contactMailId").appendChild(contactToMail); -a.href = mailToLink + mailContent; -document.getElementById("ex").appendChild(a); + var footerTextFirst = document.createTextNode("GitHub"); + var footerTextSecond = document.createTextNode("Portfolio"); + var emailText = document.createTextNode("Kontakt"); + + var footerLinkFirst = "https://github.com/Vongriffe"; + var footerLinkSecond = "http://capalgerie.org/portfolio/"; + var mailToLink = "mailto:kamelboukoffa.mac@gmail.com?"; + + + console.log(); + + function mailConcat(link, tag) { + var content = "Subject=Zadanie rekrutacyjne frontend&"; + link+= ""; + if (link.indexOf("@") >=0 ) { + content += "body=" + encodeURIComponent(formattedBody); + tag.appendChild(emailText); + tag.title = "napisz maila"; + tag.href = link + content; + } else if (link.indexOf("github") >=0 ) { + tag.appendChild(footerTextFirst); + tag.href = link; + tag.target = '_blank'; + } else if (link.indexOf("portfolio") >=0 ) { + tag.appendChild(footerTextSecond); + tag.href = link; + tag.target = '_blank'; + } + } + mailConcat(mailToLink, contactToMail); + mailConcat(footerLinkFirst, gitHub); + mailConcat(footerLinkSecond, portfolio); + + + + + + +}); diff --git a/js/data.js b/js/data.js index 119dd11..94af25e 100644 --- a/js/data.js +++ b/js/data.js @@ -38,7 +38,7 @@ document.addEventListener("DOMContentLoaded", function() { ourRequest.onerror = function() { console.log("Connection error"); var webConnection = "
Brak połączenia z serwerem
"; - document.getElementById("showData").innerHTML = ourData; + document.getElementById("showData").innerHTML = webConnection; }; ourRequest.send(); diff --git a/my-index.html b/my-index.html index 2d0af7a..610a6ae 100644 --- a/my-index.html +++ b/my-index.html @@ -11,20 +11,27 @@
+
+
+ + +
@@ -35,19 +42,17 @@ - + diff --git a/package.json b/package.json index ce9f917..d12702f 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,8 @@ "scripts": { "server": "webpack --config webpack.config.js", "dev": "webpack -d --watch", - "prod": "webpack -p" + "prod": "webpack -p", + "install": "npm install gulp --save-dev" }, "repository": { "type": "git", diff --git a/sass/main.scss b/sass/main.scss index af3e78e..20d4816 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -37,15 +37,19 @@ section { @extend %form; // @extend %clearfix; @include inputSubmit(map-get($mapOfPrimarColors, redGwo), map-get($mapOfPrimarColors, whiteGwo)); - background: map-get($mapOfColors, ColorBG); + // background: map-get($mapOfColors, ColorBG); font-size: 16px; #searchBook { - width: 70%; + @include phone(68%); + @include smPhone(68%); + @include tablet(68%); + @include desktop(70%); + @include maxDesktop(70%); } #submit { - width: 26%; + width: 28%; margin-left: 0.6rem; } input { @@ -74,8 +78,6 @@ section { @include flex-wrap(wrap); background: map-get($mapOfColors, fontAdditional); - // border: 1px solid map-get($mapOfPrimarColors, redGwo); - > :nth-of-type(1) { padding: 2rem; width: 100%; @@ -86,13 +88,14 @@ section { } width: 65rem; + font-size: 12px; + @include phone(95%); @include smPhone(95%); @include tablet(95%); @include desktop(80%); @include maxDesktop(80%); @extend %form; - font-size: 12px; .book { background: map-get($mapOfColors, ColorBG); @@ -100,6 +103,9 @@ section { margin: 1px; width: 33.1%; + @include bookHover(red, map-get($mapOfColors, backgoundColor), green, yellow) ; + + @include flexbox(); @include flex-direction(column); @include flex-flow(wrap); @@ -107,7 +113,7 @@ section { @include tablet(49%); @include phone(100%); @include smPhone(49%); - @include desktop(33%); + @include desktop(33.1%); @include maxDesktop(24.7%); > :nth-of-type(3) { @@ -135,7 +141,7 @@ section { } .bookInfo { width: 100%; - background: map-get($mapOfColors, ColorBG); + // background: map-get($mapOfColors, ColorBG); padding: 16px 12px 16px 16px; } .bookInfo > div { diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index afe1b4e..463cf76 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -13,15 +13,15 @@ } %input { - box-sizing: border-box; - padding: 16px; + // box-sizing: border-box; + padding: 1rem; outline: 0; font-family: inherit; font-size: 0.95em; } %form { - padding: 1rem; + padding: 0.5rem; margin: 10px auto; border-radius: 1px; } @@ -34,14 +34,15 @@ cursor: pointer; :focus { - // outline: none; - border: 0.1em solid darken(#ccc, 6%); - } + // outline: none; + border: 0.1em solid darken(#ccc, 6%); + } } } @mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { + background: $colorBasic; color: $colorText; border: 0; @@ -81,13 +82,13 @@ cursor: pointer; } } + $button-color: #2D3142; @mixin buttonStore($colorBasic, $colorHover, $colorText, $colortextHover) { display: block; width: 100%; - margin-top: 1rem; padding: 1rem 2rem; font-size: 14px; @@ -95,10 +96,17 @@ $button-color: #2D3142; line-height: 1.42857143; text-align: center; white-space: nowrap; + vertical-align: middle; -ms-touch-action: manipulation; touch-action: manipulation; + cursor: pointer; + + -webkit-transition: all 0.3s; + -moz-transition: all 0.3s; + transition: all 0.3s; + -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; @@ -112,6 +120,31 @@ $button-color: #2D3142; &:hover { background-color: $colorHover; + cursor: pointer; + box-shadow: 0 2px 5px rgba(0,0,0,0.1); + } + &:focus { + } + &:active { + } +} + + +@mixin bookHover($colorBasic, $colorHover, $colorText, $colortextHover) { + -webkit-transition: all 0.3s; + -moz-transition: all 0.3s; + transition: all 0.3s; + + &:hover { + background-color: $colorHover; + top: 0; + // opacity: 0; + // filter: blur(5px); + // transform: translateX(-5px); + transform: translateY(-5px); + + box-shadow: 0 2px 5px rgba(0,0,0,0.5); + } &:focus { } From 5434aaec2ddac28eb54833b1bf59b941722dccb6 Mon Sep 17 00:00:00 2001 From: Vongriffe Date: Mon, 20 Nov 2017 22:48:21 +0100 Subject: [PATCH 20/20] Sass footer --- css/main.css | 113 +++++++++++++++++++++++++++++++++------- dist/bundle.js | 2 +- index.html | 24 ++++++--- js/component.js | 19 +++---- my-index.html | 1 + npm-debug.log | 28 ---------- sass/main.scss | 38 +++++++++++--- sass/modules/_all.scss | 31 +++++++++-- sass/modules/_icon.scss | 0 9 files changed, 182 insertions(+), 74 deletions(-) delete mode 100644 npm-debug.log create mode 100644 sass/modules/_icon.scss diff --git a/css/main.css b/css/main.css index 31863a1..2071dca 100644 --- a/css/main.css +++ b/css/main.css @@ -135,7 +135,8 @@ section form #submit:focus { } section form #submit:before { - content: ''; + font-family: 'iconfont'; + content: "\ea2d"; display: block; position: absolute; height: 100%; @@ -302,6 +303,7 @@ section #showData .book .bookContent .title ul { section #showData .book .bookContent .title ul :nth-of-type(1) { font-size: 25px; + font-weight: 800; color: #747a8a; } @@ -321,13 +323,12 @@ section #showData .book .bookContent .bookInfo > div { section #showData .book .bookContent .bookImage { width: 100%; padding: 1rem; - height: 16rem; + height: 15rem; background: #FFF; } section #showData .book .bookContent .bookImage img { - box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); - height: 14rem; + height: 13rem; } section #showData div.btnDiv { @@ -383,57 +384,131 @@ section #showData .note { color: #d5041f; } -footer div { +footer .full-of-color { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; - -webkit-justify-content: space-between; - -moz-justify-content: space-between; - -ms-justify-content: space-between; - justify-content: space-between; - -ms-flex-pack: space-between; + -webkit-flex-direction: row; + -moz-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + margin: 0 auto; +} + +@media (min-width: 300px) and (max-width: 599px) { + footer .full-of-color { + width: 95%; + } +} + +@media (min-width: 600px) and (max-width: 767px) { + footer .full-of-color { + width: 95%; + } +} + +@media (min-width: 768px) and (max-width: 1110px) { + footer .full-of-color { + width: 95%; + } +} + +@media (min-width: 1111px) and (max-width: 1600px) { + footer .full-of-color { + width: 80%; + } +} + +@media (min-width: 1601px) { + footer .full-of-color { + width: 80%; + } +} + +footer .full-of-color :nth-child(5n+1) { + background: #d5041f; +} + +footer .full-of-color :nth-child(5n+2) { + background: #ea8300; +} + +footer .full-of-color :nth-child(5n+3) { + background: #f5bf00; +} + +footer .full-of-color :nth-child(5n+4) { + background: #FFF; +} + +footer .full-of-color :nth-child(5n+5) { + background: #747a8a; +} + +footer .full-of-color div { + padding: 0.2rem; + width: 30%; +} + +footer .main-width { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-flex-direction: row-reverse; + -moz-flex-direction: row-reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; color: #FFF; background: #d5041f; - padding: 0.5rem; - margin: 1rem auto; + margin: 0 auto; font-size: 10px; } @media (min-width: 300px) and (max-width: 599px) { - footer div { + footer .main-width { width: 95%; } } @media (min-width: 600px) and (max-width: 767px) { - footer div { + footer .main-width { width: 95%; } } @media (min-width: 768px) and (max-width: 1110px) { - footer div { + footer .main-width { width: 95%; } } @media (min-width: 1111px) and (max-width: 1600px) { - footer div { + footer .main-width { width: 80%; } } @media (min-width: 1601px) { - footer div { + footer .main-width { width: 80%; } } -footer div a { +footer .main-width a { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + background: #d5041f; text-decoration: none; color: #FFF; + padding: 2rem; + width: 100%; } -/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHNlYXJjaCAvIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICBAaW5jbHVkZSBwaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgc21QaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgdGFibGV0KDY4JSk7XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wKDcwJSk7XG4gICAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDcwJSk7XG4gICAgfVxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI4JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJwbGFjZWhvbGRlclwiXSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLy8vIHJlbmRlciBib29rLy8vL1xuICAvLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG5cbiAgICA+IDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuXG4gICAgLmJvb2sge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgd2lkdGg6IDMzLjElO1xuXG4gICAgICBAaW5jbHVkZSBib29rSG92ZXIocmVkLCBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgYmFja2dvdW5kQ29sb3IpLCBncmVlbiwgeWVsbG93KSA7XG5cblxuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZmxvdyh3cmFwKTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0KDQ5JSk7XG4gICAgICBAaW5jbHVkZSBwaG9uZSgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUoNDklKTtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AoMzMuMSUpO1xuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCgyNC43JSk7XG5cbiAgICAgID4gOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC5ib29rQ29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4zcmVtIHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBmb250TWFpbik7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxNnJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vIGJ1dHRvbiBcIlByemVqZMW6IGRvIGtzacSZZ2FybmlcIiAvLy8vLy8vLy8vL1xuICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGRpdi5idG5EaXYge1xuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ0bkJvb2sge1xuICAgICAgICBAaW5jbHVkZSBidXR0b25TdG9yZShtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgICAgfVxuICAgIH1cbiAgICAubm90ZSB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIH1cbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLyBmb290ZXIgLy8vLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbmZvb3RlciB7XG4gIGRpdiB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1iZXR3ZWVuKVxuXG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcblxuICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICBmb250LXNpemU6IDEwcHg7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuICAgIH1cbiAgfVxufVxuIiwiJHByaW1hcnktY29sb3I6ICNlYTgzMDA7XG4kYWRkaXRpb25hbC1jb2xvcjogI2Q1MDQxZjtcbiRjb21wbGVtZW50YXJ5LWNvbG9yOiAjZjViZjAwO1xuJG5ldXRyYWxDb2xvcjogI0ZGRjtcblxuJG1hcE9mUHJpbWFyQ29sb3JzOlxuKHJlZEd3bzojZDUwNDFmLFxub3JhbmdlR3dvOiAjZWE4MzAwLFxueWVsbG93R3dvOiAjZjViZjAwLFxud2hpdGVHd286ICNGRkYsXG5mb250TWFpbjogIzc0N2E4YSk7XG5cbiRtYXBPZkNvbG9yczpcbihiYWNrZ291bmRDb2xvcjojRkZGLFxuQ29sb3JCRzogI2Y3ZjdmNyxcbmZvb3RlckNvbG9yOiAjZmU2MTAzLFxubGlua0Nvcm9yOiAjMDBjNmZmLFxuaG92ZXJDb2xvcjogIzk2MDBmZixcbmZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcbiIsIiVjbGVhcmZpeCB7XG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbiVmbG9hdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuJWlucHV0IHtcbiAgLy8gYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xufVxuXG4lZm9ybSB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuQG1peGluIGlucHV0U3VibWl0KCRjb2xvckJhY2tncm91bmQsICRjb2xvciApIHtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgOmZvY3VzIHtcbiAgICAgIC8vICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyOiAwLjFlbSBzb2xpZCBkYXJrZW4oI2NjYywgNiUpO1xuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgIHNrZXdYKC0xNWRlZyk7XG4gIH1cbiAgJjphZnRlcntcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCkgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4kYnV0dG9uLWNvbG9yOiAjMkQzMTQyO1xuXG5AbWl4aW4gYnV0dG9uU3RvcmUoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0MztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJhc2ljO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjEpO1xuICB9XG4gICY6Zm9jdXMge1xuICB9XG4gICY6YWN0aXZlIHtcbiAgfVxufVxuXG5cbkBtaXhpbiBib29rSG92ZXIoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gICAgdG9wOiAwO1xuICAgIC8vIG9wYWNpdHk6IDA7XG4gICAgLy8gZmlsdGVyOiBibHVyKDVweCk7XG4gICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuNSk7XG5cbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cbiIsIi8vIEZsZXhib3ggZGlzcGxheVxuICBAbWl4aW4gZmxleGJveCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIFRoZSAnZmxleCcgc2hvcnRoYW5kXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8cG9zaXRpdmUtbnVtYmVyPiwgaW5pdGlhbCwgYXV0bywgb3Igbm9uZVxuICBAbWl4aW4gZmxleCgkdmFsdWVzKSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAtbW96LWJveC1mbGV4OiAkdmFsdWVzO1xuICAgICAgICAtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XG4gICAgXHQgIC1tcy1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAgICAgZmxleDogJHZhbHVlcztcbiAgfVxuXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZVxuICBAbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgLW1vei1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gIH1cblxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gdW1pZXN6Y3phIGVsZW1lbnR5IHcga29sZWpueW0gYW5vbmltb3d5bSBibG9rdVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXG4gIEBtaXhpbiBmbGV4LXdyYXAoJHdyYXApIHtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgLW1vei1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgICAtbXMtZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogJHdyYXA7XG4gIH1cblxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJGZsb3cpIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgLW1vei1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJGZsb3c7XG4gIH1cblxuICAvLyBEaXNwbGF5IE9yZGVyXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8aW50ZWdlcj5cbiAgQG1peGluIG9yZGVyKCR2YWwpIHtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgICAgIC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XG4gICAgXHQgICAgIC1tcy1mbGV4LW9yZGVyOiAkdmFsO1xuICAgIFx0ICAgICAgLXdlYmtpdC1vcmRlcjogJHZhbDtcbiAgICBcdFx0ICAgICAgb3JkZXI6ICR2YWw7XG4gIH1cblxuICAvLyBGbGV4IGdyb3cgZmFjdG9yXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1ncm93KCRncm93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgIC1tb3otZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAgLW1zLWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgICAgICBmbGV4LWdyb3c6ICRncm93O1xuICB9XG5cbiAgLy8gRmxleCBzaHJpbmtcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW0gc2hyaW5rIGZhY3RvclxuICAvLyA8bnVtYmVyPlxuICBAbWl4aW4gZmxleC1zaHJpbmsoJHNocmluaykge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgLW1zLWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG4gIH1cblxuICAvLyBGbGV4IGJhc2lzXG4gIC8vIC0gdGhlIGluaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIDx3aWR0aD5cbiAgQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgLW1vei1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgIC1tcy1mbGV4LWJhc2lzOiAkd2lkdGg7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkd2lkdGg7XG4gIH1cblxuICAvLyBBeGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJGp1c3RpZnkpIHtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgLW1vei1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAtbXMtanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6ICRqdXN0aWZ5O1xuICB9XG5cbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWNvbnRlbnQoJGFsaWduKSB7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2hcbiAgQG1peGluIGFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgIC1tcy1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgfVxuXG4gIC8vIENyb3NzLWF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc1xuICAvLyBhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogJGFsaWduO1xuICB9XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbiRwaG9uZTI6IFwiKG1pbi13aWR0aDogMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAyOTlweClcIjtcbiRwaG9uZTogXCIobWluLXdpZHRoOiAzMDBweCkgYW5kIChtYXgtd2lkdGg6IDU5OXB4KVwiO1xuJHNtUGhvbmU6IFwiKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweClcIjtcbiR0YWJsZXQ6IFwiKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTEwcHgpXCI7XG4kZGVza3RvcDogXCIobWluLXdpZHRoOiAxMTExcHgpIGFuZCAobWF4LXdpZHRoOiAxNjAwcHgpXCI7XG4kbWF4RGVza3RvcDogXCIobWluLXdpZHRoOiAxNjAxcHgpXCI7XG5cbkBtaXhpbiBwaG9uZTIoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHBob25lKCR3aWR0aCkgIHtcbiAgQG1lZGlhICN7JHBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gc21QaG9uZSgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JHNtUGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiB0YWJsZXQoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyR0YWJsZXR9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skZGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIG1heERlc2t0b3AoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRtYXhEZXNrdG9wfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbn1cbiIsIkBpbXBvcnQgXCJtb2R1bGVzL19jb2xvcnNcIjtcblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSB7XG4gIC8vIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgZm9udE1haW4pO1xuICBmb250LWtlcm5pbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJBLEFFZEEsT0ZjTyxDQUVMLElBQUksQ0F3QkYsS0FBSyxDRXhDRjtFQUVMLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixXQUFXLEVBQUUsT0FBTztFQUNwQixTQUFTLEVBQUUsTUFBTTtDQUNsQjs7QUZRRCxBRU5BLE9GTU8sQ0FFTCxJQUFJLEVBRk4sQUVOQSxPRk1PLENBK0NMLFNBQVMsQ0VyREw7RUFDSixPQUFPLEVBQUUsTUFBTTtFQUNmLE1BQU0sRUFBRSxTQUFTO0VBQ2pCLGFBQWEsRUFBRSxHQUFHO0NBQ25COztBSXhCRCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUVILFdBQVcsRUFBRSx1QkFBdUI7RUFDcEMsY0FBYyxFQUFFLGFBQWE7RUFDN0IsZUFBZSxFQUFFLFNBQVM7Q0FDM0I7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDRCxLQUFLLEVMTkcsT0FBTztFS09mLFlBQVksRUFBRSxJQUFJO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0NBQ2pCOztBTlNELEFBRUUsT0FGSyxDQUVMLElBQUksQ0FBQztFQVdILFNBQVMsRUFBRSxJQUFJO0NBNEJoQjs7QUlwREQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7RUpXakQsQUFFRSxPQUZLLENBRUwsSUFBSSxDQUFDO0lJWEgsS0FBSyxFSllVLEdBQUc7R0FzQ25COzs7QUk3Q0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFL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 */ +/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvX2NvbG9ycy5zY3NzIiwibW9kdWxlcy9fYWxsLnNjc3MiLCJtb2R1bGVzL19mbGV4LnNjc3MiLCJtb2R1bGVzL19tZWRpYS5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX2Jhc2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fYWxsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fZmxleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21lZGlhXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvX2Zvb3RlclwiO1xuQGltcG9ydCBcInBhcnRpYWxzL19iYXNlXCI7XG5cbi8vICRtYXBPZlByaW1hckNvbG9yczpcbi8vIChyZWRHd286I2Q1MDQxZixcbi8vIG9yYW5nZUd3bzogI2VhODMwMCxcbi8vIHllbGxvd0d3bzogI2Y1YmYwMCxcbi8vIHdoaXRlR3dvOiAjRkZGKTtcbi8vIGZvbnRNYWluOiBjb2xvclxuLy9cbi8vICRtYXBPZkNvbG9yczpcbi8vIChiYWNrZ291bmRDb2xvcjojRkZGLFxuLy8gQ29sb3JCRzogI2Y3ZjdmNyxcbi8vIGZvb3RlckNvbG9yOiAjZmU2MTAzLFxuLy8gbGlua0Nvcm9yOiAjMDBjNmZmLFxuLy8gaG92ZXJDb2xvcjogIzk2MDBmZixcbi8vIGZvbnRBZGRpdGlvbmFsOiAjYmFiYWJhKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHNlYXJjaCAvIHd5c3p1a2l3YXJrYSAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuc2VjdGlvbiB7XG5cbiAgZm9ybSB7XG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuICAgIC8vIEBleHRlbmQgJWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGlucHV0U3VibWl0KG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG5cbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAjc2VhcmNoQm9vayB7XG4gICAgICBAaW5jbHVkZSBwaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgc21QaG9uZSg2OCUpO1xuICAgICAgQGluY2x1ZGUgdGFibGV0KDY4JSk7XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wKDcwJSk7XG4gICAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDcwJSk7XG4gICAgfVxuICAgICNzdWJtaXQge1xuICAgICAgd2lkdGg6IDI4JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byk7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJwbGFjZWhvbGRlclwiXSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIGZvb3RlckNvbG9yKTtcbiAgICB9XG5cbiAgICAjc3VibWl0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbihtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgb3JhbmdlR3dvKSwgbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3bykpO1xuICAgIH1cbiAgfVxuXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLy8vIHJlbmRlciBib29rLy8vL1xuICAvLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgI3Nob3dEYXRhIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mQ29sb3JzLCBmb250QWRkaXRpb25hbCk7XG5cbiAgICA+IDpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogNjVyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgQGluY2x1ZGUgcGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSBzbVBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgdGFibGV0KDk1JSk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCg4MCUpO1xuICAgIEBpbmNsdWRlIG1heERlc2t0b3AoODAlKTtcbiAgICBAZXh0ZW5kICVmb3JtO1xuXG4gICAgLmJvb2sge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZDb2xvcnMsIENvbG9yQkcpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgd2lkdGg6IDMzLjElO1xuXG4gICAgICBAaW5jbHVkZSBib29rSG92ZXIocmVkLCBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgYmFja2dvdW5kQ29sb3IpLCBncmVlbiwgeWVsbG93KSA7XG5cblxuICAgICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZmxvdyh3cmFwKTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0KDQ5JSk7XG4gICAgICBAaW5jbHVkZSBwaG9uZSgxMDAlKTtcbiAgICAgIEBpbmNsdWRlIHNtUGhvbmUoNDklKTtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AoMzMuMSUpO1xuICAgICAgQGluY2x1ZGUgbWF4RGVza3RvcCgyNC43JSk7XG5cbiAgICAgID4gOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgIC5ib29rQ29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4zcmVtIHNvbGlkIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCBmb250TWFpbik7XG4gICAgICAgIH1cbiAgICAgICAgLmJvb2tJbmZvIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgQ29sb3JCRyk7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAxMnB4IDE2cHggMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuYm9va0luZm8gPiBkaXYge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICAgICAgICB9XG4gICAgICAgIC5ib29rSW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsMC4xNiksIDAgMCAwIDFweCByZ2JhKDAsMCwwLDAuMDgpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLyBidXR0b24gXCJQcnplamTFuiBkbyBrc2nEmWdhcm5pXCIgLy8vLy8vLy8vLy9cbiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBkaXYuYnRuRGl2IHtcbiAgICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoZmxleC1lbmQpO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5idG5Cb29rIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uU3RvcmUobWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIG9yYW5nZUd3byksIG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pLCBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgd2hpdGVHd28pKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5vdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtYXBPZlByaW1hckNvbG9ycywgcmVkR3dvKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8gZm9vdGVyIC8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5mb290ZXIge1xuICAuZnVsbC1vZi1jb2xvciB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdyk7XG5cbiAgICBAaW5jbHVkZSBwaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHNtUGhvbmUoOTUlKTtcbiAgICBAaW5jbHVkZSB0YWJsZXQoOTUlKTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wKDgwJSk7XG4gICAgQGluY2x1ZGUgbWF4RGVza3RvcCg4MCUpO1xuXG4gICAgQGluY2x1ZGUgZnVsbE9mTWFpbkNvbG9ycztcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIGRpdiB7XG4gICAgICBwYWRkaW5nOiAwLjJyZW07XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cbiAgfVxuICAubWFpbi13aWR0aCB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdy1yZXZlcnNlICk7XG5cbiAgICAvLyBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2VlbilcblxuICAgIEBpbmNsdWRlIHBob25lKDk1JSk7XG4gICAgQGluY2x1ZGUgc21QaG9uZSg5NSUpO1xuICAgIEBpbmNsdWRlIHRhYmxldCg5NSUpO1xuICAgIEBpbmNsdWRlIGRlc2t0b3AoODAlKTtcbiAgICBAaW5jbHVkZSBtYXhEZXNrdG9wKDgwJSk7XG4gICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIHJlZEd3byk7XG5cbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDEwcHg7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCByZWRHd28pO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IG1hcC1nZXQoJG1hcE9mUHJpbWFyQ29sb3JzLCB3aGl0ZUd3byk7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCIkcHJpbWFyeS1jb2xvcjogI2VhODMwMDtcbiRhZGRpdGlvbmFsLWNvbG9yOiAjZDUwNDFmO1xuJGNvbXBsZW1lbnRhcnktY29sb3I6ICNmNWJmMDA7XG4kbmV1dHJhbENvbG9yOiAjRkZGO1xuXG4kbWFwT2ZQcmltYXJDb2xvcnM6XG4ocmVkR3dvOiNkNTA0MWYsXG5vcmFuZ2VHd286ICNlYTgzMDAsXG55ZWxsb3dHd286ICNmNWJmMDAsXG53aGl0ZUd3bzogI0ZGRixcbmZvbnRNYWluOiAjNzQ3YThhKTtcblxuJG1hcE9mQ29sb3JzOlxuKGJhY2tnb3VuZENvbG9yOiNGRkYsXG5Db2xvckJHOiAjZjdmN2Y3LFxuZm9vdGVyQ29sb3I6ICNmZTYxMDMsXG5saW5rQ29yb3I6ICMwMGM2ZmYsXG5ob3ZlckNvbG9yOiAjOTYwMGZmLFxuZm9udEFkZGl0aW9uYWw6ICNiYWJhYmEpO1xuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4lY2xlYXJmaXgge1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiVpbnB1dCB7XG4gIC8vIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuJWZvcm0ge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbkBtaXhpbiBpbnB1dFN1Ym1pdCgkY29sb3JCYWNrZ3JvdW5kLCAkY29sb3IgKSB7XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvckJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIDpmb2N1cyB7XG4gICAgICBib3JkZXI6IDAuMWVtIHNvbGlkIGRhcmtlbigjY2NjLCA2JSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24oJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcblxuICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNpYztcbiAgY29sb3I6ICRjb2xvclRleHQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiAuNnM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3Vze1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgZm9udC1mYW1pbHk6ICdpY29uZm9udCc7XG4gICAgY29udGVudDogXCJcXGVhMmRcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSAgc2tld1goLTE1ZGVnKTtcbiAgfVxuICAmOmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KSBza2V3WCgtMTVkZWcpO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbiRidXR0b24tY29sb3I6ICMyRDMxNDI7XG5cbkBtaXhpbiBidXR0b25TdG9yZSgkY29sb3JCYXNpYywgJGNvbG9ySG92ZXIsICRjb2xvclRleHQsICRjb2xvcnRleHRIb3Zlcikge1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGNvbG9yVGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQmFzaWM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gIH1cbiAgJjpmb2N1cyB7XG4gIH1cbiAgJjphY3RpdmUge1xuICB9XG59XG5cbkBtaXhpbiBib29rSG92ZXIoJGNvbG9yQmFzaWMsICRjb2xvckhvdmVyLCAkY29sb3JUZXh0LCAkY29sb3J0ZXh0SG92ZXIpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySG92ZXI7XG4gICAgdG9wOiAwO1xuICAgIC8vIG9wYWNpdHk6IDA7XG4gICAgLy8gZmlsdGVyOiBibHVyKDVweCk7XG4gICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLDAuNSk7XG5cbiAgfVxuICAmOmZvY3VzIHtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gIH1cbn1cblxuXG4kdG90YWw6IDU7XG4kc3RlcDogOTBkZWcgLyAkdG90YWw7XG5cbkBtaXhpbiBmdWxsT2ZDb2xvcnMge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR0b3RhbCB7XG4gICAgOm50aC1jaGlsZCgjeyRpfSkge1xuICAgICAgYmFja2dyb3VuZDogYWRqdXN0LWh1ZShibHVlLCAkaSAqICRzdGVwKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZ1bGxPZk1haW5Db2xvcnMge1xuXG4gICRwcmltYXJDb2xvcnM6ICgjZDUwNDFmLCAjZWE4MzAwLCAjZjViZjAwLCAjRkZGLCAjNzQ3YThhKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkcHJpbWFyQ29sb3JzKSB7XG4gICAgOm50aC1jaGlsZCgje2xlbmd0aCgkcHJpbWFyQ29sb3JzKX1uKyN7JGl9KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBudGgoJHByaW1hckNvbG9ycywgJGkpXG4gICAgfVxuICB9XG59XG4iLCIvLyBGbGV4Ym94IGRpc3BsYXlcbiAgQG1peGluIGZsZXhib3goKSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAvLyBUaGUgJ2ZsZXgnIHNob3J0aGFuZFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPHBvc2l0aXZlLW51bWJlcj4sIGluaXRpYWwsIGF1dG8sIG9yIG5vbmVcbiAgQG1peGluIGZsZXgoJHZhbHVlcykge1xuICAgIC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XG4gICAgICAgLW1vei1ib3gtZmxleDogJHZhbHVlcztcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAkdmFsdWVzO1xuICAgIFx0ICAtbXMtZmxleDogJHZhbHVlcztcbiAgICBcdCAgICAgIGZsZXg6ICR2YWx1ZXM7XG4gIH1cblxuICAvLyBGbGV4IEZsb3cgRGlyZWN0aW9uXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBjb250YWluZXJzXG4gIC8vIHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2VcbiAgQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgIC1tb3otZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICB9XG5cbiAgLy8gRmxleCBMaW5lIFdyYXBwaW5nXG4gIC8vIHVtaWVzemN6YSBlbGVtZW50eSB3IGtvbGVqbnltIGFub25pbW93eW0gYmxva3VcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gbm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZVxuICBAbWl4aW4gZmxleC13cmFwKCR3cmFwKSB7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6ICR3cmFwO1xuICAgICAgIC1tb3otZmxleC13cmFwOiAkd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogJHdyYXA7XG4gICAgICAgICAgICBmbGV4LXdyYXA6ICR3cmFwO1xuICB9XG5cbiAgLy8gRmxleCBEaXJlY3Rpb24gYW5kIFdyYXBcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gPGZsZXgtZGlyZWN0aW9uPiB8fCA8ZmxleC13cmFwPlxuICBAbWl4aW4gZmxleC1mbG93KCRmbG93KSB7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6ICRmbG93O1xuICAgICAgIC1tb3otZmxleC1mbG93OiAkZmxvdztcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogJGZsb3c7XG4gICAgICAgICAgICBmbGV4LWZsb3c6ICRmbG93O1xuICB9XG5cbiAgLy8gRGlzcGxheSBPcmRlclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPGludGVnZXI+XG4gIEBtaXhpbiBvcmRlcigkdmFsKSB7XG4gICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbDtcbiAgICAgICAtbW96LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsO1xuICAgIFx0ICAgICAtbXMtZmxleC1vcmRlcjogJHZhbDtcbiAgICBcdCAgICAgIC13ZWJraXQtb3JkZXI6ICR2YWw7XG4gICAgXHRcdCAgICAgIG9yZGVyOiAkdmFsO1xuICB9XG5cbiAgLy8gRmxleCBncm93IGZhY3RvclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtZ3JvdygkZ3Jvdykge1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAkZ3JvdztcbiAgICAgICAtbW96LWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgICAgIC1tcy1mbGV4LWdyb3c6ICRncm93O1xuICAgICAgICAgICAgZmxleC1ncm93OiAkZ3JvdztcbiAgfVxuXG4gIC8vIEZsZXggc2hyaW5rXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtIHNocmluayBmYWN0b3JcbiAgLy8gPG51bWJlcj5cbiAgQG1peGluIGZsZXgtc2hyaW5rKCRzaHJpbmspIHtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICAgICAgIC1tb3otZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgICAgIC1tcy1mbGV4LXNocmluazogJHNocmluaztcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAkc2hyaW5rO1xuICB9XG5cbiAgLy8gRmxleCBiYXNpc1xuICAvLyAtIHRoZSBpbml0aWFsIG1haW4gc2l6ZSBvZiB0aGUgZmxleCBpdGVtXG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBpdGVtc25pdGlhbCBtYWluIHNpemUgb2YgdGhlIGZsZXggaXRlbVxuICAvLyA8d2lkdGg+XG4gIEBtaXhpbiBmbGV4LWJhc2lzKCR3aWR0aCkge1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgIC1tb3otZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAtbXMtZmxleC1iYXNpczogJHdpZHRoO1xuICAgICAgICAgICAgZmxleC1iYXNpczogJHdpZHRoO1xuICB9XG5cbiAgLy8gQXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZFxuICBAbWl4aW4ganVzdGlmeS1jb250ZW50KCRqdXN0aWZ5KSB7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgIC1tb3otanVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbiAgICAgICAgLW1zLWp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiAkanVzdGlmeTtcbiAgfVxuXG4gIC8vIFBhY2tpbmcgRmxleCBMaW5lc1xuICAvLyAtIGFwcGxpZXMgdG86IG11bHRpLWxpbmUgZmxleCBjb250YWluZXJzXG4gIC8vIGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1jb250ZW50KCRhbGlnbikge1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgIC1tb3otYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24tY29udGVudDogJGFsaWduO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogJGFsaWduO1xuICB9XG5cbiAgLy8gQ3Jvc3MtYXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXG4gIEBtaXhpbiBhbGlnbi1pdGVtcygkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAgICAgLW1vei1hbGlnbi1pdGVtczogJGFsaWduO1xuICAgICAgICAtbXMtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiAkYWxpZ247XG4gIH1cblxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaFxuICBAbWl4aW4gYWxpZ24tc2VsZigkYWxpZ24pIHtcbiAgICAtd2Via2l0LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAtbW96LWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgLW1zLWFsaWduLXNlbGY6ICRhbGlnbjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6ICRhbGlnbjtcbiAgfVxuIiwiQGltcG9ydCBcIm1vZHVsZXMvX2NvbG9yc1wiO1xuXG4kcGhvbmUyOiBcIihtaW4td2lkdGg6IDEwMHB4KSBhbmQgKG1heC13aWR0aDogMjk5cHgpXCI7XG4kcGhvbmU6IFwiKG1pbi13aWR0aDogMzAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTlweClcIjtcbiRzbVBob25lOiBcIihtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpXCI7XG4kdGFibGV0OiBcIihtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTExMHB4KVwiO1xuJGRlc2t0b3A6IFwiKG1pbi13aWR0aDogMTExMXB4KSBhbmQgKG1heC13aWR0aDogMTYwMHB4KVwiO1xuJG1heERlc2t0b3A6IFwiKG1pbi13aWR0aDogMTYwMXB4KVwiO1xuXG5AbWl4aW4gcGhvbmUyKCR3aWR0aCkge1xuICBAbWVkaWEgI3skcGhvbmV9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBwaG9uZSgkd2lkdGgpICB7XG4gIEBtZWRpYSAjeyRwaG9uZX0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuQG1peGluIHNtUGhvbmUoJHdpZHRoKSB7XG4gIEBtZWRpYSAjeyRzbVBob25lfSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0KCR3aWR0aCkge1xuICBAbWVkaWEgI3skdGFibGV0fSB7XG4gICAgQGNvbnRlbnQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCgkd2lkdGgpIHtcbiAgQG1lZGlhICN7JGRlc2t0b3B9IHtcbiAgICBAY29udGVudDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbkBtaXhpbiBtYXhEZXNrdG9wKCR3aWR0aCkge1xuICBAbWVkaWEgI3skbWF4RGVza3RvcH0ge1xuICAgIEBjb250ZW50O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cbiIsImZvb3RlciB7XG59XG4iLCJAaW1wb3J0IFwibW9kdWxlcy9fY29sb3JzXCI7XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICAvLyBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRtYXBPZkNvbG9ycywgZm9udEFkZGl0aW9uYWwpO1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuICBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbn1cblxuaDIge1xuICBjb2xvcjogbWFwLWdldCgkbWFwT2ZQcmltYXJDb2xvcnMsIGZvbnRNYWluKTtcbiAgZm9udC1rZXJuaW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogODAwO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCQSxBRVpBLE9GWU8sQ0FFTCxJQUFJLENBd0JGLEtBQUssQ0V0Q0Y7RUFFTCxPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsV0FBVyxFQUFFLE9BQU87RUFDcEIsU0FBUyxFQUFFLE1BQU07Q0FDbEI7O0FGTUQsQUVKQSxPRklPLENBRUwsSUFBSSxFQUZOLEFFSkEsT0ZJTyxDQStDTCxTQUFTLENFbkRMO0VBQ0osT0FBTyxFQUFFLE1BQU07RUFDZixNQUFNLEVBQUUsU0FBUztFQUNqQixhQUFhLEVBQUUsR0FBRztDQUNuQjs7QUkxQkQsQUFBQSxDQUFDLENBQUM7RUFDQSxVQUFVLEVBQUUsVUFBVTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0NBQ1g7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFFSCxXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLGNBQWMsRUFBRSxhQUFhO0VBQzdCLGVBQWUsRUFBRSxTQUFTO0NBQzNCOztBQUVELEFBQUEsRUFBRSxDQUFDO0VBQ0QsS0FBSyxFTE5HLE9BQU87RUtPZixZQUFZLEVBQUUsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRztDQUNqQjs7QU5TRCxBQUVFLE9BRkssQ0FFTCxJQUFJLENBQUM7RUFXSCxTQUFTLEVBQUUsSUFB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 */ diff --git a/dist/bundle.js b/dist/bundle.js index 52b70de..08d1652 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -94,7 +94,7 @@ eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.lo /*! all exports used */ /***/ (function(module, exports) { -eval("document.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\");\n\n var formattedBody = \"Witam, \\n\\n Tereść wiadomości...\";\n\n var gitHub = document.createElement('a');\n var portfolio = document.createElement('a');\n var contactToMail = document.createElement('a');\n\n document.getElementById(\"linkGitHubId\").appendChild(gitHub);\n document.getElementById(\"linkPortfolioId\").appendChild(portfolio);\n document.getElementById(\"contactMailId\").appendChild(contactToMail);\n\n var footerTextFirst = document.createTextNode(\"GitHub\");\n var footerTextSecond = document.createTextNode(\"Portfolio\");\n var emailText = document.createTextNode(\"Kontakt\");\n\n var footerLinkFirst = \"https://github.com/Vongriffe\";\n var footerLinkSecond = \"http://capalgerie.org/portfolio/\";\n var mailToLink = \"mailto:kamelboukoffa.mac@gmail.com?\";\n\n\n console.log();\n\n function mailConcat(link, tag) {\n var content = \"Subject=Zadanie rekrutacyjne frontend&\";\n link+= \"\";\n if (link.indexOf(\"@\") >=0 ) {\n content += \"body=\" + encodeURIComponent(formattedBody);\n tag.appendChild(emailText);\n tag.title = \"napisz maila\";\n tag.href = link + content;\n } else if (link.indexOf(\"github\") >=0 ) {\n tag.appendChild(footerTextFirst);\n tag.href = link;\n tag.target = '_blank';\n } else if (link.indexOf(\"portfolio\") >=0 ) {\n tag.appendChild(footerTextSecond);\n tag.href = link;\n tag.target = '_blank';\n }\n }\n mailConcat(mailToLink, contactToMail);\n mailConcat(footerLinkFirst, gitHub);\n mailConcat(footerLinkSecond, portfolio);\n\n\n\n\n\n\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2NvbXBvbmVudC5qcz9hMDZhIl0sInNvdXJjZXNDb250ZW50IjpbImRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJET01Db250ZW50TG9hZGVkXCIsIGZ1bmN0aW9uKCkge1xuICBjb25zb2xlLmxvZyhcIkRPTSBmdWxseSBsb2FkZWQgYW5kIHBhcnNlZFwiKTtcblxuICB2YXIgZm9ybWF0dGVkQm9keSA9IFwiV2l0YW0sIFxcblxcbiBUZXJlxZvEhyB3aWFkb21vxZtjaS4uLlwiO1xuXG4gIHZhciBnaXRIdWIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBwb3J0Zm9saW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBjb250YWN0VG9NYWlsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua0dpdEh1YklkXCIpLmFwcGVuZENoaWxkKGdpdEh1Yik7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua1BvcnRmb2xpb0lkXCIpLmFwcGVuZENoaWxkKHBvcnRmb2xpbyk7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiY29udGFjdE1haWxJZFwiKS5hcHBlbmRDaGlsZChjb250YWN0VG9NYWlsKTtcblxuICB2YXIgZm9vdGVyVGV4dEZpcnN0ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJHaXRIdWJcIik7XG4gIHZhciBmb290ZXJUZXh0U2Vjb25kID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJQb3J0Zm9saW9cIik7XG4gIHZhciBlbWFpbFRleHQgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShcIktvbnRha3RcIik7XG5cbiAgdmFyIGZvb3RlckxpbmtGaXJzdCA9IFwiaHR0cHM6Ly9naXRodWIuY29tL1ZvbmdyaWZmZVwiO1xuICB2YXIgZm9vdGVyTGlua1NlY29uZCA9IFwiaHR0cDovL2NhcGFsZ2VyaWUub3JnL3BvcnRmb2xpby9cIjtcbiAgdmFyIG1haWxUb0xpbmsgPSBcIm1haWx0bzprYW1lbGJvdWtvZmZhLm1hY0BnbWFpbC5jb20/XCI7XG5cblxuICBjb25zb2xlLmxvZygpO1xuXG4gIGZ1bmN0aW9uIG1haWxDb25jYXQobGluaywgdGFnKSB7XG4gICAgdmFyIGNvbnRlbnQgPSBcIlN1YmplY3Q9WmFkYW5pZSByZWtydXRhY3lqbmUgZnJvbnRlbmQmXCI7XG4gICAgbGluays9IFwiXCI7XG4gICAgaWYgKGxpbmsuaW5kZXhPZihcIkBcIikgPj0wICkge1xuICAgICAgY29udGVudCArPSBcImJvZHk9XCIgKyBlbmNvZGVVUklDb21wb25lbnQoZm9ybWF0dGVkQm9keSk7XG4gICAgICB0YWcuYXBwZW5kQ2hpbGQoZW1haWxUZXh0KTtcbiAgICAgIHRhZy50aXRsZSA9IFwibmFwaXN6IG1haWxhXCI7XG4gICAgICB0YWcuaHJlZiA9IGxpbmsgKyBjb250ZW50O1xuICAgIH0gZWxzZSBpZiAobGluay5pbmRleE9mKFwiZ2l0aHViXCIpID49MCApIHtcbiAgICAgIHRhZy5hcHBlbmRDaGlsZChmb290ZXJUZXh0Rmlyc3QpO1xuICAgICAgdGFnLmhyZWYgPSBsaW5rO1xuICAgICAgdGFnLnRhcmdldCA9ICdfYmxhbmsnO1xuICAgIH0gZWxzZSBpZiAobGluay5pbmRleE9mKFwicG9ydGZvbGlvXCIpID49MCApIHtcbiAgICAgIHRhZy5hcHBlbmRDaGlsZChmb290ZXJUZXh0U2Vjb25kKTtcbiAgICAgIHRhZy5ocmVmID0gbGluaztcbiAgICAgIHRhZy50YXJnZXQgPSAnX2JsYW5rJztcbiAgICB9XG4gIH1cbiAgbWFpbENvbmNhdChtYWlsVG9MaW5rLCBjb250YWN0VG9NYWlsKTtcbiAgbWFpbENvbmNhdChmb290ZXJMaW5rRmlyc3QsIGdpdEh1Yik7XG4gIG1haWxDb25jYXQoZm9vdGVyTGlua1NlY29uZCwgcG9ydGZvbGlvKTtcblxuXG5cblxuXG5cbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9jb21wb25lbnQuanNcbi8vIG1vZHVsZSBpZCA9IDJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///2\n"); +eval("console.log(' world!');\n\ndocument.addEventListener(\"DOMContentLoaded\", function() {\n console.log(\"DOM fully loaded and parsed\");\n\n var formattedBody = \"Witam, \\n\\n Tereść wiadomości...\";\n\n var gitHub = document.createElement('a');\n var portfolio = document.createElement('a');\n var contactToMail = document.createElement('a');\n\n document.getElementById(\"linkGitHubId\").appendChild(gitHub);\n document.getElementById(\"linkPortfolioId\").appendChild(portfolio);\n document.getElementById(\"contactMailId\").appendChild(contactToMail);\n\n var footerTextFirst = document.createTextNode(\"GitHub\");\n var footerTextSecond = document.createTextNode(\"Portfolio\");\n var emailText = document.createTextNode(\"Kontakt\");\n\n var footerLinkFirst = \"https://github.com/Vongriffe\";\n var footerLinkSecond = \"http://capalgerie.org/portfolio/\";\n var mailToLink = \"mailto:kamelboukoffa.mac@gmail.com?\";\n\n function mailConcat(link, tag) {\n\n var content = \"Subject=Zadanie rekrutacyjne frontend&\";\n\n link+= \"\";\n\n if (link.indexOf(\"@\") >=0 ) {\n content += \"body=\" + encodeURIComponent(formattedBody);\n tag.appendChild(emailText);\n tag.title = \"napisz maila\";\n tag.href = link + content;\n return tag;\n\n } else if (link.indexOf(\"github\") >=0 ) {\n tag.appendChild(footerTextFirst);\n tag.href = link;\n tag.target = '_blank';\n return tag;\n\n } else if (link.indexOf(\"portfolio\") >=0 ) {\n tag.appendChild(footerTextSecond);\n tag.href = link;\n tag.target = '_blank';\n return tag;\n }\n }\n mailConcat(mailToLink, contactToMail);\n mailConcat(footerLinkFirst, gitHub);\n mailConcat(footerLinkSecond, portfolio);\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2NvbXBvbmVudC5qcz9hMDZhIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnNvbGUubG9nKCcgd29ybGQhJyk7XG5cbmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJET01Db250ZW50TG9hZGVkXCIsIGZ1bmN0aW9uKCkge1xuICBjb25zb2xlLmxvZyhcIkRPTSBmdWxseSBsb2FkZWQgYW5kIHBhcnNlZFwiKTtcblxuICB2YXIgZm9ybWF0dGVkQm9keSA9IFwiV2l0YW0sIFxcblxcbiBUZXJlxZvEhyB3aWFkb21vxZtjaS4uLlwiO1xuXG4gIHZhciBnaXRIdWIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBwb3J0Zm9saW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gIHZhciBjb250YWN0VG9NYWlsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua0dpdEh1YklkXCIpLmFwcGVuZENoaWxkKGdpdEh1Yik7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibGlua1BvcnRmb2xpb0lkXCIpLmFwcGVuZENoaWxkKHBvcnRmb2xpbyk7XG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiY29udGFjdE1haWxJZFwiKS5hcHBlbmRDaGlsZChjb250YWN0VG9NYWlsKTtcblxuICB2YXIgZm9vdGVyVGV4dEZpcnN0ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJHaXRIdWJcIik7XG4gIHZhciBmb290ZXJUZXh0U2Vjb25kID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoXCJQb3J0Zm9saW9cIik7XG4gIHZhciBlbWFpbFRleHQgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShcIktvbnRha3RcIik7XG5cbiAgdmFyIGZvb3RlckxpbmtGaXJzdCA9IFwiaHR0cHM6Ly9naXRodWIuY29tL1ZvbmdyaWZmZVwiO1xuICB2YXIgZm9vdGVyTGlua1NlY29uZCA9IFwiaHR0cDovL2NhcGFsZ2VyaWUub3JnL3BvcnRmb2xpby9cIjtcbiAgdmFyIG1haWxUb0xpbmsgPSBcIm1haWx0bzprYW1lbGJvdWtvZmZhLm1hY0BnbWFpbC5jb20/XCI7XG5cbiAgZnVuY3Rpb24gbWFpbENvbmNhdChsaW5rLCB0YWcpIHtcblxuICAgIHZhciBjb250ZW50ID0gXCJTdWJqZWN0PVphZGFuaWUgcmVrcnV0YWN5am5lIGZyb250ZW5kJlwiO1xuXG4gICAgbGluays9IFwiXCI7XG5cbiAgICBpZiAobGluay5pbmRleE9mKFwiQFwiKSA+PTAgKSB7XG4gICAgICBjb250ZW50ICs9IFwiYm9keT1cIiArIGVuY29kZVVSSUNvbXBvbmVudChmb3JtYXR0ZWRCb2R5KTtcbiAgICAgIHRhZy5hcHBlbmRDaGlsZChlbWFpbFRleHQpO1xuICAgICAgdGFnLnRpdGxlID0gXCJuYXBpc3ogbWFpbGFcIjtcbiAgICAgIHRhZy5ocmVmID0gbGluayArIGNvbnRlbnQ7XG4gICAgICByZXR1cm4gdGFnO1xuXG4gICAgfSBlbHNlIGlmIChsaW5rLmluZGV4T2YoXCJnaXRodWJcIikgPj0wICkge1xuICAgICAgdGFnLmFwcGVuZENoaWxkKGZvb3RlclRleHRGaXJzdCk7XG4gICAgICB0YWcuaHJlZiA9IGxpbms7XG4gICAgICB0YWcudGFyZ2V0ID0gJ19ibGFuayc7XG4gICAgICByZXR1cm4gdGFnO1xuXG4gICAgfSBlbHNlIGlmIChsaW5rLmluZGV4T2YoXCJwb3J0Zm9saW9cIikgPj0wICkge1xuICAgICAgdGFnLmFwcGVuZENoaWxkKGZvb3RlclRleHRTZWNvbmQpO1xuICAgICAgdGFnLmhyZWYgPSBsaW5rO1xuICAgICAgdGFnLnRhcmdldCA9ICdfYmxhbmsnO1xuICAgICAgcmV0dXJuIHRhZztcbiAgICB9XG4gIH1cbiAgbWFpbENvbmNhdChtYWlsVG9MaW5rLCBjb250YWN0VG9NYWlsKTtcbiAgbWFpbENvbmNhdChmb290ZXJMaW5rRmlyc3QsIGdpdEh1Yik7XG4gIG1haWxDb25jYXQoZm9vdGVyTGlua1NlY29uZCwgcG9ydGZvbGlvKTtcbn0pO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9qcy9jb21wb25lbnQuanNcbi8vIG1vZHVsZSBpZCA9IDJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///2\n"); /***/ }) /******/ ]); \ No newline at end of file diff --git a/index.html b/index.html index 0253dcd..d6d668f 100644 --- a/index.html +++ b/index.html @@ -4,6 +4,7 @@ + Zadanie rekrutacyjne @@ -11,20 +12,27 @@
+
+
+ + +
@@ -32,22 +40,26 @@
+
+
+
+
+
+
+
+
-
- - -
- - + + diff --git a/js/component.js b/js/component.js index 4d35054..f3ce759 100644 --- a/js/component.js +++ b/js/component.js @@ -1,3 +1,5 @@ +console.log(' world!'); + document.addEventListener("DOMContentLoaded", function() { console.log("DOM fully loaded and parsed"); @@ -19,34 +21,33 @@ document.addEventListener("DOMContentLoaded", function() { var footerLinkSecond = "http://capalgerie.org/portfolio/"; var mailToLink = "mailto:kamelboukoffa.mac@gmail.com?"; - - console.log(); - function mailConcat(link, tag) { + var content = "Subject=Zadanie rekrutacyjne frontend&"; + link+= ""; + if (link.indexOf("@") >=0 ) { content += "body=" + encodeURIComponent(formattedBody); tag.appendChild(emailText); tag.title = "napisz maila"; tag.href = link + content; + return tag; + } else if (link.indexOf("github") >=0 ) { tag.appendChild(footerTextFirst); tag.href = link; tag.target = '_blank'; + return tag; + } else if (link.indexOf("portfolio") >=0 ) { tag.appendChild(footerTextSecond); tag.href = link; tag.target = '_blank'; + return tag; } } mailConcat(mailToLink, contactToMail); mailConcat(footerLinkFirst, gitHub); mailConcat(footerLinkSecond, portfolio); - - - - - - }); diff --git a/my-index.html b/my-index.html index 610a6ae..5b28448 100644 --- a/my-index.html +++ b/my-index.html @@ -4,6 +4,7 @@ + Zadanie rekrutacyjne diff --git a/npm-debug.log b/npm-debug.log deleted file mode 100644 index 41ba5e2..0000000 --- a/npm-debug.log +++ /dev/null @@ -1,28 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/usr/local/bin/npm', -1 verbose cli 'run', -1 verbose cli 'web', -1 verbose cli 'pack' ] -2 info using npm@3.10.10 -3 info using node@v6.11.0 -4 verbose stack Error: missing script: web -4 verbose stack at run (/usr/local/lib/node_modules/npm/lib/run-script.js:151:19) -4 verbose stack at /usr/local/lib/node_modules/npm/lib/run-script.js:61:5 -4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:356:5 -4 verbose stack at checkBinReferences_ (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:320:45) -4 verbose stack at final (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:354:3) -4 verbose stack at then (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:124:5) -4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:311:12 -4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:78:16 -4 verbose stack at tryToString (fs.js:456:3) -4 verbose stack at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:443:12) -5 verbose cwd /Users/VonGriff/Prework/frontend_recruitment -6 error Darwin 14.5.0 -7 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "web" "pack" -8 error node v6.11.0 -9 error npm v3.10.10 -10 error missing script: web -11 error If you need help, you may report this error at: -11 error -12 verbose exit [ 1, true ] diff --git a/sass/main.scss b/sass/main.scss index 20d4816..3d12438 100644 --- a/sass/main.scss +++ b/sass/main.scss @@ -130,6 +130,7 @@ section { list-style-type: none; :nth-of-type(1) { font-size: 25px; + font-weight: 800; color: map-get($mapOfPrimarColors, fontMain); } :nth-of-type(2) { @@ -150,12 +151,12 @@ section { .bookImage { width: 100%; padding: 1rem; - height: 16rem; + height: 15rem; background: map-get($mapOfPrimarColors, whiteGwo); img { - box-shadow: 0 2px 5px rgba(0,0,0,0.1); - height: 14rem; + // box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16), 0 0 0 1px rgba(0,0,0,0.08); + height: 13rem; } } } @@ -186,9 +187,9 @@ section { ///////////////////////////// footer { - div { + .full-of-color { @include flexbox(); - @include justify-content(space-between) + @include flex-direction(row); @include phone(95%); @include smPhone(95%); @@ -196,15 +197,38 @@ footer { @include desktop(80%); @include maxDesktop(80%); + @include fullOfMainColors; + margin: 0 auto; + + div { + padding: 0.2rem; + width: 30%; + } + } + .main-width { + @include flexbox(); + @include flex-direction(row-reverse ); + + // @include justify-content(space-between) + + @include phone(95%); + @include smPhone(95%); + @include tablet(95%); + @include desktop(80%); + @include maxDesktop(80%); color: map-get($mapOfPrimarColors, whiteGwo); background: map-get($mapOfPrimarColors, redGwo); - padding: 0.5rem; - margin: 1rem auto; + + margin: 0 auto; font-size: 10px; a { + @include flexbox(); + background: map-get($mapOfPrimarColors, redGwo); text-decoration: none; color: map-get($mapOfPrimarColors, whiteGwo); + padding: 2rem; + width: 100%; } } } diff --git a/sass/modules/_all.scss b/sass/modules/_all.scss index 463cf76..7a36d44 100644 --- a/sass/modules/_all.scss +++ b/sass/modules/_all.scss @@ -1,3 +1,5 @@ +@import "modules/_colors"; + %clearfix { &:after, &:before { @@ -34,13 +36,11 @@ cursor: pointer; :focus { - // outline: none; border: 0.1em solid darken(#ccc, 6%); } } } - @mixin button($colorBasic, $colorHover, $colorText, $colortextHover) { background: $colorBasic; @@ -55,7 +55,8 @@ outline: 0; } &:before{ - content: ''; + font-family: 'iconfont'; + content: "\ea2d"; display: block; position: absolute; height: 100%; @@ -129,7 +130,6 @@ $button-color: #2D3142; } } - @mixin bookHover($colorBasic, $colorHover, $colorText, $colortextHover) { -webkit-transition: all 0.3s; -moz-transition: all 0.3s; @@ -151,3 +151,26 @@ $button-color: #2D3142; &:active { } } + + +$total: 5; +$step: 90deg / $total; + +@mixin fullOfColors { + @for $i from 1 through $total { + :nth-child(#{$i}) { + background: adjust-hue(blue, $i * $step); + } + } +} + +@mixin fullOfMainColors { + + $primarColors: (#d5041f, #ea8300, #f5bf00, #FFF, #747a8a); + + @for $i from 1 through length($primarColors) { + :nth-child(#{length($primarColors)}n+#{$i}) { + background: nth($primarColors, $i) + } + } +} diff --git a/sass/modules/_icon.scss b/sass/modules/_icon.scss new file mode 100644 index 0000000..e69de29