whiteblog-theme 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/footer.html +1 -1
- data/_includes/head.html +3 -2
- data/_includes/header.html +20 -33
- data/_layouts/default.html +1 -1
- data/_layouts/home.html +1 -5
- data/_pages/search.md +24 -0
- data/_sass/whiteblog-theme/_layout.scss +27 -8
- data/assets/jekyll-search.min.js +1 -0
- metadata +4 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0a38122074dc60b20a7effc0e77d6921c01ba13be20b2d024358c4b394f07c66
|
4
|
+
data.tar.gz: '09d9eac37500b4b98833eecf9cb1e506ccfbf9192d3ece841ac91a2e97488589'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e9ab52bb67559ad6facb06e854e143d95d001fc4a44bdbdf25d000474a96e90060be7e85e5a80696aa1edd252b257956192026735f16c4b54c360881b4cf69eb
|
7
|
+
data.tar.gz: e3afc8ce5dcb5bb52e5e985df952904cef96ba3f4b1894f3655024024e0195288a432547056801c4c19d36f711af124f09259a92b78c3b89027fb03fab0b9e20
|
data/_includes/footer.html
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
<div class="container">
|
3
3
|
<div class="row">
|
4
4
|
<div class="col-12 col-lg">
|
5
|
-
<p class="text-justify">Made with <i class="
|
5
|
+
<p class="text-justify">Made with <i class="fa-solid fa-heart"></i> and <i class="fa-solid fa-mug-saucer"></i>. Powered by <a href="https://jekyllrb.com/">Jekyll</a> and <a href="https://github.com/vmsilvamolina/whiteblog-theme">whiteblog-theme</a>.</p>
|
6
6
|
</div>
|
7
7
|
</div>
|
8
8
|
</div>
|
data/_includes/head.html
CHANGED
@@ -5,10 +5,11 @@
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
6
6
|
|
7
7
|
<!-- Bootstrap CSS -->
|
8
|
-
<link
|
8
|
+
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
|
9
9
|
|
10
10
|
<!-- FontAwesome-->
|
11
|
-
<
|
11
|
+
<script src="https://kit.fontawesome.com/3726080491.js" crossorigin="anonymous"></script>
|
12
|
+
|
12
13
|
|
13
14
|
<link rel="stylesheet" href="{{ "/assets/main.css" | relative_url }}">
|
14
15
|
<link rel="alternate" type="application/rss+xml" title="{{ site.title | escape }}" href="{{ "/feed.xml" | relative_url }}">
|
data/_includes/header.html
CHANGED
@@ -1,37 +1,24 @@
|
|
1
|
-
<
|
2
|
-
<div class="container">
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
<
|
7
|
-
</
|
8
|
-
<div class="
|
9
|
-
<
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
{%
|
19
|
-
{%
|
20
|
-
{% endif %}
|
1
|
+
<nav class="navbar navbar-expand-lg bg-body-tertiary">
|
2
|
+
<div class="container-fluid container">
|
3
|
+
<a class="navbar-brand" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
|
4
|
+
<div class="justify-content-end">
|
5
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
6
|
+
<span class="navbar-toggler-icon"></span>
|
7
|
+
</button>
|
8
|
+
<div class="collapse navbar-collapse justify-content-end" id="navbarNav">
|
9
|
+
<ul class="navbar-nav">
|
10
|
+
{% assign default_paths = site.pages | map: "path" %}
|
11
|
+
{% assign page_paths = site.header_pages | default: default_paths %}
|
12
|
+
{% if page_paths %}
|
13
|
+
{% for path in page_paths %}
|
14
|
+
{% assign my_page = site.pages | where: "path", path | first %}
|
15
|
+
{% if my_page.title %}
|
16
|
+
<li class="nav-item"><a class="nav-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a></li>
|
17
|
+
{% endif %}
|
18
|
+
{% endfor %}
|
19
|
+
{% endif %}
|
21
20
|
</ul>
|
22
21
|
</div>
|
23
22
|
</div>
|
24
23
|
</div>
|
25
|
-
</
|
26
|
-
<div class="navbar navbar-dark box-shadow">
|
27
|
-
<div class="container d-flex justify-content-between">
|
28
|
-
<a class="navbar-brand d-flex align-items-center" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
|
29
|
-
<div data-toggle="collapse" data-target="#navbarHeader" class="navbar-toggler-icon" id="nav-icon">
|
30
|
-
<span></span>
|
31
|
-
<span></span>
|
32
|
-
<span></span>
|
33
|
-
<span></span>
|
34
|
-
</div>
|
35
|
-
|
36
|
-
</div>
|
37
|
-
</div>
|
24
|
+
</nav>
|
data/_layouts/default.html
CHANGED
@@ -20,7 +20,7 @@
|
|
20
20
|
<!-- jQuery, Popper.js, Bootstrap JS -->
|
21
21
|
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
|
22
22
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
|
23
|
-
<script src="https://
|
23
|
+
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script>
|
24
24
|
|
25
25
|
</body>
|
26
26
|
|
data/_layouts/home.html
CHANGED
@@ -2,10 +2,6 @@
|
|
2
2
|
layout: default
|
3
3
|
---
|
4
4
|
|
5
|
-
<header>
|
6
|
-
{{ content }}
|
7
|
-
</header>
|
8
|
-
|
9
5
|
<div id="content">
|
10
6
|
|
11
7
|
{% assign posts = site.posts %}
|
@@ -16,7 +12,7 @@ layout: default
|
|
16
12
|
<li class="py-2">
|
17
13
|
|
18
14
|
<h1 class="mt-1 mb-3 h3 title-post-resume underline">
|
19
|
-
<a href="{{ post.url | relative_url }}">{{ post.title | escape }}</a>
|
15
|
+
<a class="title-link" href="{{ post.url | relative_url }}">{{ post.title | escape }}</a>
|
20
16
|
</h1>
|
21
17
|
|
22
18
|
<span class="text-secondary">{{ post.date | date: date_format }}</span>
|
data/_pages/search.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
---
|
2
|
+
title: Search
|
3
|
+
author: Victor Silva
|
4
|
+
layout: default
|
5
|
+
permalink: /search/
|
6
|
+
---
|
7
|
+
<article class="post">
|
8
|
+
<h1 class="underline">Search</h1>
|
9
|
+
<div id="search-container">
|
10
|
+
<input type="text" id="search-input" placeholder="search...">
|
11
|
+
<ul id="results-container"></ul>
|
12
|
+
</div>
|
13
|
+
</article>
|
14
|
+
|
15
|
+
<script src="/assets/jekyll-search.min.js" type="text/javascript"></script>
|
16
|
+
<script type="text/javascript">
|
17
|
+
SimpleJekyllSearch({
|
18
|
+
searchInput: document.getElementById('search-input'),
|
19
|
+
resultsContainer: document.getElementById('results-container'),
|
20
|
+
json: '/search.json',
|
21
|
+
searchResultTemplate: '<li><a href="{url}" title="{desc}">{title}</a></li>',
|
22
|
+
limit: 50,
|
23
|
+
})
|
24
|
+
</script>
|
@@ -1,12 +1,13 @@
|
|
1
1
|
@import url('https://fonts.googleapis.com/css2?family=Nunito&Fira+Sans&family=Montserrat&display=swap');
|
2
2
|
|
3
3
|
//Color palette variables:
|
4
|
-
$
|
5
|
-
$
|
6
|
-
$
|
4
|
+
$firstColor: #F5F5F5;
|
5
|
+
$secondColor: #364F6B;
|
6
|
+
$thirdColor: #3FC1C9;
|
7
|
+
$fourthColor: #FC5185;
|
7
8
|
|
8
9
|
body {
|
9
|
-
background-color: $
|
10
|
+
background-color: $firstColor;
|
10
11
|
font-family: "Montserrat";
|
11
12
|
overflow-y: scroll;
|
12
13
|
position: relative;
|
@@ -22,10 +23,11 @@ main {
|
|
22
23
|
}
|
23
24
|
|
24
25
|
.navbar {
|
25
|
-
background-color: $
|
26
|
+
background-color: $secondColor !important;
|
26
27
|
padding: 10px 16px !important;
|
27
28
|
a {
|
28
29
|
font-weight: 600;
|
30
|
+
color: $firstColor !important;
|
29
31
|
}
|
30
32
|
}
|
31
33
|
|
@@ -77,6 +79,10 @@ main {
|
|
77
79
|
height: 3.5rem;
|
78
80
|
}
|
79
81
|
|
82
|
+
.title-link {
|
83
|
+
text-decoration: none !important;
|
84
|
+
}
|
85
|
+
|
80
86
|
.title-post-resume a {
|
81
87
|
color: #2F343D !important;
|
82
88
|
}
|
@@ -121,8 +127,17 @@ blockquote {
|
|
121
127
|
.underline {
|
122
128
|
font-family: "Nunito";
|
123
129
|
display: table;
|
124
|
-
background: linear-gradient(180deg,rgba(255,255,255,0) 65%, $
|
125
|
-
}
|
130
|
+
background: linear-gradient(180deg,rgba(255,255,255,0) 65%, $thirdColor 8px);
|
131
|
+
}
|
132
|
+
|
133
|
+
#search-input {
|
134
|
+
margin: 2em 0em;
|
135
|
+
width: 100%;
|
136
|
+
}
|
137
|
+
|
138
|
+
input {
|
139
|
+
font-family: "Montserrat" !important;
|
140
|
+
}
|
126
141
|
|
127
142
|
.post .text-secondary {
|
128
143
|
margin-bottom: 8px !important;
|
@@ -136,6 +151,10 @@ blockquote {
|
|
136
151
|
}
|
137
152
|
}
|
138
153
|
|
154
|
+
.previous {
|
155
|
+
text-align: left !important;
|
156
|
+
}
|
157
|
+
|
139
158
|
#post {
|
140
159
|
flex-grow: 1;
|
141
160
|
position: relative;
|
@@ -156,7 +175,7 @@ blockquote {
|
|
156
175
|
|
157
176
|
a.badge {
|
158
177
|
color: #fff;
|
159
|
-
background-color:
|
178
|
+
background-color: $fourthColor;
|
160
179
|
}
|
161
180
|
|
162
181
|
/* Categories: Effect */
|
@@ -0,0 +1 @@
|
|
1
|
+
!function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){"use strict";function load(location,callback){var xhr;xhr=window.XMLHttpRequest?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP"),xhr.open("GET",location,!0),xhr.onreadystatechange=function(){if(4===xhr.readyState&&200===xhr.status)try{callback(null,JSON.parse(xhr.responseText))}catch(err){callback(err,null)}},xhr.send()}module.exports={load:load}},{}],2:[function(require,module,exports){"use strict";module.exports=function OptionsValidator(params){function validateParams(params){return params?void 0!==params.required&¶ms.required instanceof Array:!1}if(!validateParams(params))throw new Error("-- OptionsValidator: required options missing");if(!(this instanceof OptionsValidator))return new OptionsValidator(params);var requiredOptions=params.required;this.getRequiredOptions=function(){return requiredOptions},this.validate=function(parameters){var errors=[];return requiredOptions.forEach(function(requiredOptionName){void 0===parameters[requiredOptionName]&&errors.push(requiredOptionName)}),errors}}},{}],3:[function(require,module,exports){"use strict";function put(data){return isObject(data)?addObject(data):isArray(data)?addArray(data):void 0}function clear(){return data.length=0,data}function get(){return data}function isObject(obj){return!!obj&&"[object Object]"===Object.prototype.toString.call(obj)}function isArray(obj){return!!obj&&"[object Array]"===Object.prototype.toString.call(obj)}function addObject(_data){return data.push(_data),data}function addArray(_data){for(var added=[],i=0;i<_data.length;i++)isObject(_data[i])&&added.push(addObject(_data[i]));return added}function search(crit){return crit?findMatches(data,crit,opt.searchStrategy,opt):[]}function setOptions(_opt){opt=_opt||{},opt.fuzzy=_opt.fuzzy||!1,opt.limit=_opt.limit||10,opt.searchStrategy=_opt.fuzzy?FuzzySearchStrategy:LiteralSearchStrategy}function findMatches(data,crit,strategy,opt){for(var matches=[],i=0;i<data.length&&matches.length<opt.limit;i++){var match=findMatchesInObject(data[i],crit,strategy,opt);match&&matches.push(match)}return matches}function findMatchesInObject(obj,crit,strategy,opt){for(var key in obj)if(!isExcluded(obj[key],opt.exclude)&&strategy.matches(obj[key],crit))return obj}function isExcluded(term,excludedTerms){var excluded=!1;excludedTerms=excludedTerms||[];for(var i=0;i<excludedTerms.length;i++){var excludedTerm=excludedTerms[i];!excluded&&new RegExp(term).test(excludedTerm)&&(excluded=!0)}return excluded}module.exports={put:put,clear:clear,get:get,search:search,setOptions:setOptions};var FuzzySearchStrategy=require("./SearchStrategies/FuzzySearchStrategy"),LiteralSearchStrategy=require("./SearchStrategies/LiteralSearchStrategy"),data=[],opt={};opt.fuzzy=!1,opt.limit=10,opt.searchStrategy=opt.fuzzy?FuzzySearchStrategy:LiteralSearchStrategy},{"./SearchStrategies/FuzzySearchStrategy":4,"./SearchStrategies/LiteralSearchStrategy":5}],4:[function(require,module,exports){"use strict";function FuzzySearchStrategy(){function makeFuzzy(string){return string=string.split("").join(".*?"),string=string.replace("??","?"),new RegExp(string,"gi")}this.matches=function(string,crit){return"string"!=typeof string||"string"!=typeof crit?!1:(string=string.trim(),!!makeFuzzy(crit).test(string))}}module.exports=new FuzzySearchStrategy},{}],5:[function(require,module,exports){"use strict";function LiteralSearchStrategy(){function matchesString(string,crit){return string.toLowerCase().indexOf(crit.toLowerCase())>=0}this.matches=function(string,crit){return"string"!=typeof string?!1:(string=string.trim(),matchesString(string,crit))}}module.exports=new LiteralSearchStrategy},{}],6:[function(require,module,exports){"use strict";function setOptions(_options){options.pattern=_options.pattern||options.pattern,options.template=_options.template||options.template,"function"==typeof _options.middleware&&(options.middleware=_options.middleware)}function compile(data){return options.template.replace(options.pattern,function(match,prop){var value=options.middleware(prop,data[prop],options.template);return void 0!==value?value:data[prop]||match})}module.exports={compile:compile,setOptions:setOptions};var options={};options.pattern=/\{(.*?)\}/g,options.template="",options.middleware=function(){}},{}],7:[function(require,module,exports){!function(window,document,undefined){"use strict";function initWithJSON(json){repository.put(json),registerInput()}function initWithURL(url){jsonLoader.load(url,function(err,json){err&&throwError("failed to get JSON ("+url+")"),initWithJSON(json)})}function emptyResultsContainer(){options.resultsContainer.innerHTML=""}function appendToResultsContainer(text){options.resultsContainer.innerHTML+=text}function registerInput(){options.searchInput.addEventListener("keyup",function(e){var key=e.which,query=e.target.value;isWhitelistedKey(key)&&isValidQuery(query)&&(emptyResultsContainer(),render(repository.search(query)))})}function render(results){if(0===results.length)return appendToResultsContainer(options.noResultsText);for(var i=0;i<results.length;i++)appendToResultsContainer(templater.compile(results[i]))}function isValidQuery(query){return query&&query.length>0}function isWhitelistedKey(key){return-1===[13,16,20,37,38,39,40,91].indexOf(key)}function throwError(message){throw new Error("SimpleJekyllSearch --- "+message)}var options={searchInput:null,resultsContainer:null,json:[],searchResultTemplate:'<li><a href="{url}" title="{desc}">{title}</a></li>',templateMiddleware:function(){},noResultsText:"No results found",limit:10,fuzzy:!1,exclude:[]},requiredOptions=["searchInput","resultsContainer","json"],templater=require("./Templater"),repository=require("./Repository"),jsonLoader=require("./JSONLoader"),optionsValidator=require("./OptionsValidator")({required:requiredOptions}),utils=require("./utils");window.SimpleJekyllSearch=function(_options){var errors=optionsValidator.validate(_options);errors.length>0&&throwError("You must specify the following required options: "+requiredOptions),options=utils.merge(options,_options),templater.setOptions({template:options.searchResultTemplate,middleware:options.templateMiddleware}),repository.setOptions({fuzzy:options.fuzzy,limit:options.limit}),utils.isJSON(options.json)?initWithJSON(options.json):initWithURL(options.json)},window.SimpleJekyllSearch.init=window.SimpleJekyllSearch}(window,document)},{"./JSONLoader":1,"./OptionsValidator":2,"./Repository":3,"./Templater":6,"./utils":8}],8:[function(require,module,exports){"use strict";function merge(defaultParams,mergeParams){var mergedOptions={};for(var option in defaultParams)mergedOptions[option]=defaultParams[option],void 0!==mergeParams[option]&&(mergedOptions[option]=mergeParams[option]);return mergedOptions}function isJSON(json){try{return json instanceof Object&&JSON.parse(JSON.stringify(json))?!0:!1}catch(e){return!1}}module.exports={merge:merge,isJSON:isJSON}},{}]},{},[7]);
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: whiteblog-theme
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Silva
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -66,20 +66,6 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0.16'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: jekyll-sitemap
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 1.5.1
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 1.5.1
|
83
69
|
description:
|
84
70
|
email:
|
85
71
|
- vmsilvamolina@gmail.com
|
@@ -101,9 +87,11 @@ files:
|
|
101
87
|
- _layouts/post.html
|
102
88
|
- _pages/categories.md
|
103
89
|
- _pages/github.md
|
90
|
+
- _pages/search.md
|
104
91
|
- _sass/whiteblog-theme.scss
|
105
92
|
- _sass/whiteblog-theme/_layout.scss
|
106
93
|
- _sass/whiteblog-theme/_syntax-highlighting.scss
|
94
|
+
- assets/jekyll-search.min.js
|
107
95
|
- assets/main.scss
|
108
96
|
homepage: https://github.com/vmsilvamolina/whiteblog-theme
|
109
97
|
licenses:
|