hyde_admin 0.0.10 → 0.0.13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/README.md +18 -5
- data/bin/admin_views/admin_layout.html.erb +2 -15
- data/bin/admin_views/editor_html.erb +12 -1
- data/bin/admin_views/editor_js.erb +14 -4
- data/bin/hyde_admin +1 -1
- data/bin/hyde_admin.ru +7 -5
- data/bin/hyde_admin.yml +2 -1
- data/bin/hyde_assets/hyde_admin.css +23 -3
- data/bin/i18n/en.yml +5 -1
- data/bin/i18n/fr.yml +5 -1
- data/bin/img/logo.png +0 -0
- data/hyde_admin.gemspec +3 -0
- data/hyde_admin_for_jekyll.png +0 -0
- data/lib/hyde_admin/version.rb +1 -1
- metadata +47 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7dc5c1f3c3e06393c4c25ce2a7463e035c156e071a5263c9207b8a05df3d5b9b
|
4
|
+
data.tar.gz: bf460efdb34250deebffd318269cf82dd9cc61a1bd92812131dd9d8033f1e302
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec1cb2e4a56c723f3930999c68976a460dc0ed70e12417b5a9ee51c319f48246d2ab6de6801ccee9f3682aa17a0ec44ad8c2614d62d2806f70c3853afcbce19f
|
7
|
+
data.tar.gz: 7ad9661636366333ca352891047b189c851876c4dc4166c6cf7fe8319c5bf3fbbbb0b651ee413b8dd2aaab24c288933db0e09386d21180b7209f84030940fe9e
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
# 0.0.12
|
2
|
+
|
3
|
+
Add liquid code highlighter in wysiwyg editor
|
4
|
+
Add new option to maximize text editor
|
5
|
+
|
6
|
+
# 0.0.11
|
7
|
+
|
8
|
+
Add logo hyde admin
|
9
|
+
Increase image window size
|
10
|
+
Add dependency to avoid to set them in jekyll site gemfile
|
11
|
+
|
1
12
|
# 0.0.9
|
2
13
|
|
3
14
|
Hide deploy button if 'deploy_dest_address' is empty.
|
data/README.md
CHANGED
@@ -2,13 +2,24 @@
|
|
2
2
|
|
3
3
|
Hyde_admin is a administration frontend for Jekyll (static site generator in Ruby).
|
4
4
|
|
5
|
+

|
6
|
+
|
5
7
|
## Getting Started with Hyde Admin
|
6
8
|
|
9
|
+
# Prerequisite
|
10
|
+
|
11
|
+
Install ImageMagick (required by mini_magick)
|
12
|
+
|
13
|
+
```
|
14
|
+
apt install imagemagick
|
15
|
+
```
|
16
|
+
|
17
|
+
# Install
|
18
|
+
|
7
19
|
Add
|
8
20
|
|
9
21
|
```
|
10
22
|
gem 'hyde_admin'
|
11
|
-
gem 'puma'
|
12
23
|
```
|
13
24
|
|
14
25
|
In the Gemfile of your jekyll site.
|
@@ -17,17 +28,19 @@ Run
|
|
17
28
|
|
18
29
|
`bundle update`
|
19
30
|
|
20
|
-
|
31
|
+
# Run hyde_admin
|
32
|
+
|
33
|
+
Run
|
21
34
|
|
22
35
|
`hyde_admin`
|
23
36
|
|
24
37
|
in your jekyll directory.
|
25
|
-
You can visit localhost:9292 !
|
38
|
+
You can visit http://localhost:9292/ !
|
26
39
|
|
27
40
|
hyde_admin.yml is automatically generated in your jekyll directory.
|
28
|
-
(you can change settings with hyde_admin
|
41
|
+
(you can change settings with hyde_admin at http://localhost:9292/configuration or directly with text editor)
|
29
42
|
|
30
|
-
Hyde_admin allow ssh deployment.
|
43
|
+
Hyde_admin allow ssh deployment with rsync.
|
31
44
|
|
32
45
|
## New version of hyde_admin ?
|
33
46
|
|
@@ -31,6 +31,7 @@
|
|
31
31
|
<div class="row">
|
32
32
|
<nav id="sidebarMenu" class="col-md-3 col-lg-2 d-md-block bg-light sidebar collapse">
|
33
33
|
<div class="position-sticky pt-3">
|
34
|
+
<a href="/"><img src="/img/logo.png" alt="Hyde Admin" title="Logo hyde admin" class="sidebarMenu-logo" /></a>
|
34
35
|
<ul class="nav flex-column">
|
35
36
|
<li class="nav-item">
|
36
37
|
</li>
|
@@ -97,21 +98,6 @@
|
|
97
98
|
</div>
|
98
99
|
</nav>
|
99
100
|
<main class="col-md-9 ms-sm-auto col-lg-10 px-md-4">
|
100
|
-
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
|
101
|
-
<h1 class="h2">Hyde Admin for Jekyll</h1>
|
102
|
-
<!--
|
103
|
-
<div class="btn-toolbar mb-2 mb-md-0">
|
104
|
-
<div class="btn-group me-2">
|
105
|
-
<button type="button" class="btn btn-sm btn-outline-secondary"><%= t.backup_zip %></button>
|
106
|
-
<button type="button" class="btn btn-sm btn-outline-secondary">Export</button>
|
107
|
-
</div>
|
108
|
-
<button type="button" class="btn btn-sm btn-outline-secondary dropdown-toggle">
|
109
|
-
<span data-feather="calendar"></span>
|
110
|
-
This week
|
111
|
-
</button>
|
112
|
-
</div>
|
113
|
-
-->
|
114
|
-
</div>
|
115
101
|
<%= yield %>
|
116
102
|
</main>
|
117
103
|
</div>
|
@@ -180,6 +166,7 @@
|
|
180
166
|
lineNumbers: true,
|
181
167
|
tabSize: 2,
|
182
168
|
indentWithTabs: false,
|
169
|
+
viewportMargin: Infinity,
|
183
170
|
mode: "<%= {'.js' => 'javascript', '.json' => 'javascript', '.xml' => 'xml', '.svg' => 'xml', '.css' => 'css', '.yml' => 'yaml', '.sass' => 'sass', '.rb' => 'ruby', '.md' => 'markdown'}[File.extname(@file)] || 'markdown' %>"
|
184
171
|
});
|
185
172
|
}
|
@@ -21,4 +21,15 @@
|
|
21
21
|
<button type="button" class="btn btn-light"><i class="fas fa-italic cmt-replace" title="<%= EscapeUtils.escape_html t.editor_italic %>"></i></button>
|
22
22
|
<button type="button" class="btn btn-light"><i class="fas fa-strikethrough cmt-replace" title="<%= EscapeUtils.escape_html t.editor_strikethrough %>"></i></button>
|
23
23
|
</div>
|
24
|
-
|
24
|
+
<div class="btn-group mr-2" role="group" aria-label="Liquid tags">
|
25
|
+
<button type="button" class="btn btn-light"><i class="fas fa-code cmt-replace" title="<%= EscapeUtils.escape_html t.editor_liquid_code %>"></i></button>
|
26
|
+
<button type="button" class="btn btn-light"><i class="fas fa-terminal cmt-replace" title="<%= EscapeUtils.escape_html t.editor_pre_code %>"></i></button>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
<% if @hyde_parameters['text_editor_maximized'].to_s == 'true' %>
|
30
|
+
<style>
|
31
|
+
.CodeMirror{
|
32
|
+
height: auto;
|
33
|
+
}
|
34
|
+
</style>
|
35
|
+
<% end %>
|
@@ -101,11 +101,21 @@ $(document).on('click', '.codemirror-toolbar .cmt-replace', function(){
|
|
101
101
|
end_str = '';
|
102
102
|
}
|
103
103
|
}else if($(this).hasClass('fa-list-ol')){
|
104
|
-
|
105
|
-
|
104
|
+
begin_str = '<ol>\n <li>';
|
105
|
+
end_str = '</li>\n</ol>';
|
106
|
+
if(window.mode_markdown){
|
107
|
+
begin_str = '1. ';
|
108
|
+
end_str = '';
|
109
|
+
}
|
110
|
+
}else if($(this).hasClass('fa-code')){
|
111
|
+
begin_str = '{% highlight ruby linenos %}\n';
|
112
|
+
end_str = '{% endhighlight %}\n';
|
113
|
+
}else if($(this).hasClass('fa-terminal')){
|
114
|
+
begin_str = '<pre>\n';
|
115
|
+
end_str = '\n</pre>';
|
106
116
|
if(window.mode_markdown){
|
107
|
-
begin_str = '
|
108
|
-
end_str = '';
|
117
|
+
begin_str = '```';
|
118
|
+
end_str = '```';
|
109
119
|
}
|
110
120
|
}
|
111
121
|
|
data/bin/hyde_admin
CHANGED
data/bin/hyde_admin.ru
CHANGED
@@ -25,7 +25,7 @@ class Mid < Roda
|
|
25
25
|
plugin :i18n, translations: File.join(File.expand_path(File.dirname(__FILE__)), 'i18n') # gem 'roda-i18n'
|
26
26
|
opts[:root] = Dir.pwd
|
27
27
|
plugin :public, root: File.join(Dir.pwd, '_site') # simulate jekyll site
|
28
|
-
plugin :static, ['/mode', '/lib', '/fslightbox', '/hyde_assets'], :root => File.join(File.expand_path(File.dirname(__FILE__)))
|
28
|
+
plugin :static, ['/mode', '/lib', '/fslightbox', '/hyde_assets', '/img'], :root => File.join(File.expand_path(File.dirname(__FILE__)))
|
29
29
|
plugin :http_auth
|
30
30
|
plugin :common_logger
|
31
31
|
|
@@ -38,6 +38,7 @@ class Mid < Roda
|
|
38
38
|
FileUtils.cp(yml_in_gem, yml_in_current_dir)
|
39
39
|
end
|
40
40
|
@hyde_parameters ||= YAML.load(File.read(yml_in_current_dir))
|
41
|
+
|
41
42
|
super(param)
|
42
43
|
end
|
43
44
|
|
@@ -132,8 +133,8 @@ class Mid < Roda
|
|
132
133
|
|
133
134
|
# Rebuild static files
|
134
135
|
r.on "rebuild" do
|
135
|
-
puts Dir.pwd
|
136
|
-
`cd #{Dir.pwd} && jekyll b`
|
136
|
+
$stderr.puts Dir.pwd
|
137
|
+
$stderr.puts `cd #{Dir.pwd} && jekyll b`
|
137
138
|
r.redirect "/dashboard"
|
138
139
|
end
|
139
140
|
|
@@ -411,7 +412,8 @@ end
|
|
411
412
|
class App < Roda
|
412
413
|
use Mid
|
413
414
|
use Rack::Static, :urls => [''], root: Dir.pwd # allow to match all files in Dir.pwd
|
414
|
-
end
|
415
415
|
|
416
|
-
|
416
|
+
$stderr.puts "===> Starting hyde_admin : open http://127.0.0.1:9292/"
|
417
|
+
end
|
417
418
|
|
419
|
+
run App.freeze.app
|
data/bin/hyde_admin.yml
CHANGED
@@ -20,18 +20,38 @@
|
|
20
20
|
|
21
21
|
.image-element{
|
22
22
|
position: relative;
|
23
|
+
margin-left: auto;
|
24
|
+
margin-right: auto;
|
25
|
+
margin-bottom: 20px;
|
23
26
|
}
|
24
27
|
|
25
28
|
.image-element span{
|
26
|
-
position: absolute;
|
27
29
|
bottom:0px;
|
28
|
-
left:5px;
|
29
30
|
z-index: 10;
|
30
31
|
font-weight: bold;
|
31
32
|
margin-bottom: -20px;
|
33
|
+
|
34
|
+
text-shadow: 0px 0px 3px white;
|
35
|
+
margin-left: -100%;
|
36
|
+
margin-right: -100%;
|
37
|
+
text-align: center;
|
38
|
+
display: block;
|
39
|
+
}
|
40
|
+
.modal-dialog {
|
41
|
+
max-width: 90vw;
|
32
42
|
}
|
33
43
|
|
34
44
|
.CodeMirror{
|
35
45
|
border: 1px solid #ced4da;
|
36
46
|
border-radius: 4px;
|
37
|
-
}
|
47
|
+
}
|
48
|
+
|
49
|
+
/* hyde admin style */
|
50
|
+
.sidebarMenu-logo{
|
51
|
+
width: 144px;
|
52
|
+
margin-left: auto;
|
53
|
+
margin-right: auto;
|
54
|
+
display: block;
|
55
|
+
margin-bottom: 30px;
|
56
|
+
margin-top: 10px;
|
57
|
+
}
|
data/bin/i18n/en.yml
CHANGED
@@ -83,6 +83,8 @@ editor_underline: Underline
|
|
83
83
|
editor_bold: Bold
|
84
84
|
editor_italic: Italic
|
85
85
|
editor_strikethrough: Strikethrough
|
86
|
+
editor_pre_code: Code
|
87
|
+
editor_liquid_code: Liquid code
|
86
88
|
default_alt_img: Alt text
|
87
89
|
default_title_img: Title text
|
88
90
|
parent_dir: parent directory
|
@@ -106,4 +108,6 @@ help_resize_format: jpg or png
|
|
106
108
|
resize_size: "size to fit, example : 1500x1000"
|
107
109
|
help_resize_size: Downsize to fit to the specified size (resize preserve ratio), example 1500x1000
|
108
110
|
resize_enable: Enable resizing for images
|
109
|
-
help_resize_enable: enable feature resize image at upload
|
111
|
+
help_resize_enable: enable feature resize image at upload
|
112
|
+
text_editor_maximized: enable maximised editor
|
113
|
+
help_text_editor_maximized: permet d'agrandir l'éditeur au maximum du contenu
|
data/bin/i18n/fr.yml
CHANGED
@@ -83,6 +83,8 @@ editor_underline: Souligner
|
|
83
83
|
editor_bold: Gras
|
84
84
|
editor_italic: Italique
|
85
85
|
editor_strikethrough: Barré
|
86
|
+
editor_pre_code: Code
|
87
|
+
editor_liquid_code: Liquid code
|
86
88
|
default_alt_img: Texte alternatif
|
87
89
|
default_title_img: Titre image
|
88
90
|
parent_dir: dossier parent
|
@@ -106,4 +108,6 @@ help_resize_format: jpg ou png
|
|
106
108
|
resize_size: "Recadrer en (example : 1500x1000)"
|
107
109
|
help_resize_size: Réduit les image pour coller à la taille spécifiée (le redimensionnement préserve le ratio), exemple 1500x1000
|
108
110
|
resize_enable: activer redimensionnement
|
109
|
-
help_resize_enable: active la fonctionnalité de redimensionnement d'image à l'upload
|
111
|
+
help_resize_enable: active la fonctionnalité de redimensionnement d'image à l'upload
|
112
|
+
text_editor_maximized: activer l'editeur maximisé
|
113
|
+
help_text_editor_maximized: permet d'agrandir l'éditeur au maximum du contenu
|
data/bin/img/logo.png
ADDED
Binary file
|
data/hyde_admin.gemspec
CHANGED
@@ -32,4 +32,7 @@ Gem::Specification.new do |s|
|
|
32
32
|
#s.add_runtime_dependency("i18n", "~> 0.4.0") # I18n.transliterate (already required by jekyll)
|
33
33
|
s.add_runtime_dependency('jekyll') # Because we call jekyll binary
|
34
34
|
s.add_runtime_dependency('image_processing') # JPEG quality
|
35
|
+
s.add_runtime_dependency('mini_magick')
|
36
|
+
s.add_runtime_dependency('rack', '2.2.4')
|
37
|
+
s.add_runtime_dependency('puma')
|
35
38
|
end
|
Binary file
|
data/lib/hyde_admin/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hyde_admin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sylvain Claudel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-11-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: roda
|
@@ -94,6 +94,48 @@ dependencies:
|
|
94
94
|
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: mini_magick
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rack
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 2.2.4
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 2.2.4
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: puma
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
97
139
|
description: A Jekyll admin interface
|
98
140
|
email: claudel.sylvain@gmail.com
|
99
141
|
executables:
|
@@ -133,6 +175,7 @@ files:
|
|
133
175
|
- bin/hyde_assets/hyde_admin.js
|
134
176
|
- bin/i18n/en.yml
|
135
177
|
- bin/i18n/fr.yml
|
178
|
+
- bin/img/logo.png
|
136
179
|
- bin/lib/codemirror.css
|
137
180
|
- bin/lib/codemirror.js
|
138
181
|
- bin/mode/css/css.js
|
@@ -172,6 +215,7 @@ files:
|
|
172
215
|
- bin/mode/yaml/index.html
|
173
216
|
- bin/mode/yaml/yaml.js
|
174
217
|
- hyde_admin.gemspec
|
218
|
+
- hyde_admin_for_jekyll.png
|
175
219
|
- lib/hyde_admin/version.rb
|
176
220
|
homepage: https://rubygems.org/gems/hyde_admin
|
177
221
|
licenses:
|
@@ -196,7 +240,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
196
240
|
- !ruby/object:Gem::Version
|
197
241
|
version: '0'
|
198
242
|
requirements: []
|
199
|
-
rubygems_version: 3.
|
243
|
+
rubygems_version: 3.2.22
|
200
244
|
signing_key:
|
201
245
|
specification_version: 4
|
202
246
|
summary: Hyde for Jekyll site
|