hs-cli 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/app/public/default.css +38 -0
- data/lib/hs/elements/initial_code.rb +13 -0
- data/lib/hs/elements/live_code.rb +9 -0
- data/lib/hs/elements/solution.rb +13 -0
- data/lib/hs/loaders/element_loader.rb +12 -96
- data/lib/hs/loaders/initializers/code_initializers.rb +23 -0
- data/lib/hs/loaders/initializers/list_initializers.rb +31 -0
- data/lib/hs/loaders/initializers/other_initializers.rb +27 -0
- data/lib/hs/loaders/initializers/table_initializers.rb +31 -0
- data/lib/hs/loaders/initializers/text_initializers.rb +31 -0
- data/lib/hs/version.rb +1 -1
- data/lib/hs.rb +3 -0
- metadata +9 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ad6b106d62bb63e4670c02c361196a951278d216ea7e88d116d555a2eeaa50e7
|
4
|
+
data.tar.gz: 8796ab10636cee75f6f7afa11c16726599a1f5c8b766ebbb4218ca31b898a093
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 277980da3de39d556216621d8953e7f461c6c7da3d43b69bbe2d7abaad3104b44b2ff2f35f9826c95be52dae430d2e26ef928723cb5a5cfc50d8cc2e30ebe7a7
|
7
|
+
data.tar.gz: 9106fbd2b3f52df9a8350ba8b6c07ffd93b922e1ec52ea912e17a91e63b72fdfc06c7ab6c8c68fd68fa55705cec88eb2c9ae8010e9598a33c446b9fffa9a1541
|
data/Gemfile.lock
CHANGED
data/app/public/default.css
CHANGED
@@ -19,3 +19,41 @@ pre {
|
|
19
19
|
border-left: 3px solid rgba(255, 0, 0, 0.75) !important;
|
20
20
|
background-color: rgba(255, 0, 0, 0.05);
|
21
21
|
}
|
22
|
+
|
23
|
+
|
24
|
+
/* Live code styling */
|
25
|
+
|
26
|
+
.live-code {
|
27
|
+
padding: 2em;
|
28
|
+
background: rgba(0, 0, 255, 0.1);
|
29
|
+
border: 5px dotted blue;
|
30
|
+
}
|
31
|
+
|
32
|
+
.initial-code,
|
33
|
+
.solution {
|
34
|
+
position: relative;
|
35
|
+
padding-top: 24px;
|
36
|
+
}
|
37
|
+
|
38
|
+
.initial-code::before,
|
39
|
+
.solution::before {
|
40
|
+
position: absolute;
|
41
|
+
top: 0;
|
42
|
+
left: 0;
|
43
|
+
font-size: 10px;
|
44
|
+
padding: 4px 16px;
|
45
|
+
background-color: rgba(0, 0, 255, 0.75);
|
46
|
+
color: white;
|
47
|
+
}
|
48
|
+
|
49
|
+
.initial-code::before {
|
50
|
+
content: "საწყისი მაგალითი";
|
51
|
+
}
|
52
|
+
|
53
|
+
.solution::before {
|
54
|
+
content: "ამონახსნი";
|
55
|
+
}
|
56
|
+
|
57
|
+
.live-code::after {
|
58
|
+
content: "აღდგენა /// ამოხსნის ნახვა"
|
59
|
+
}
|
@@ -1,7 +1,19 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'hs/loaders/initializers/code_initializers'
|
4
|
+
require 'hs/loaders/initializers/list_initializers'
|
5
|
+
require 'hs/loaders/initializers/other_initializers'
|
6
|
+
require 'hs/loaders/initializers/table_initializers'
|
7
|
+
require 'hs/loaders/initializers/text_initializers'
|
8
|
+
|
3
9
|
module HS
|
4
10
|
module ElementLoader
|
11
|
+
include HS::CodeInitializers
|
12
|
+
include HS::ListInitializers
|
13
|
+
include HS::OtherInitializers
|
14
|
+
include HS::TableInitializers
|
15
|
+
include HS::TextInitializers
|
16
|
+
|
5
17
|
def load_element(data)
|
6
18
|
name = data[:_name]
|
7
19
|
element = initialize_element(name, data)
|
@@ -24,104 +36,8 @@ module HS
|
|
24
36
|
end.compact.to_h
|
25
37
|
end
|
26
38
|
|
27
|
-
def initialize_header(data)
|
28
|
-
HS::Header.new(get_params(data, %i[level class_name style]))
|
29
|
-
end
|
30
|
-
|
31
39
|
def initialize_element(name, data)
|
32
40
|
send("initialize_#{name}", data)
|
33
41
|
end
|
34
|
-
|
35
|
-
def initialize_text(data)
|
36
|
-
HS::Text.new(text: data[:text])
|
37
|
-
end
|
38
|
-
|
39
|
-
def initialize_p(data)
|
40
|
-
HS::Paragraph.new(get_params(data))
|
41
|
-
end
|
42
|
-
|
43
|
-
def initialize_note(data)
|
44
|
-
HS::Note.new(get_params(data))
|
45
|
-
end
|
46
|
-
|
47
|
-
def initialize_intro(data)
|
48
|
-
HS::Intro.new(get_params(data))
|
49
|
-
end
|
50
|
-
|
51
|
-
def initialize_em(data)
|
52
|
-
HS::Emphasize.new(get_params(data))
|
53
|
-
end
|
54
|
-
|
55
|
-
def initialize_link(data)
|
56
|
-
HS::Link.new(get_params(data, %i[to class_name style]))
|
57
|
-
end
|
58
|
-
|
59
|
-
def initialize_original(data)
|
60
|
-
HS::Original.new(get_params(data))
|
61
|
-
end
|
62
|
-
|
63
|
-
def initialize_strong(data)
|
64
|
-
HS::Strong.new(get_params(data))
|
65
|
-
end
|
66
|
-
|
67
|
-
def initialize_ul(data)
|
68
|
-
HS::Ul.new(get_params(data))
|
69
|
-
end
|
70
|
-
|
71
|
-
def initialize_ol(data)
|
72
|
-
HS::Ol.new(get_params(data))
|
73
|
-
end
|
74
|
-
|
75
|
-
def initialize_li(data)
|
76
|
-
HS::Li.new(get_params(data))
|
77
|
-
end
|
78
|
-
|
79
|
-
def initialize_image(data)
|
80
|
-
HS::Image.new(get_params(data, %i[src class_name style]))
|
81
|
-
end
|
82
|
-
|
83
|
-
def initialize_code(data)
|
84
|
-
HS::Code.new(get_params(data, %i[lang class_name style]))
|
85
|
-
end
|
86
|
-
|
87
|
-
def initialize_dd(data)
|
88
|
-
HS::Dd.new(get_params(data))
|
89
|
-
end
|
90
|
-
|
91
|
-
def initialize_dl(data)
|
92
|
-
HS::Dl.new(get_params(data))
|
93
|
-
end
|
94
|
-
|
95
|
-
def initialize_dt(data)
|
96
|
-
HS::Dt.new(get_params(data))
|
97
|
-
end
|
98
|
-
|
99
|
-
def initialize_table(data)
|
100
|
-
HS::Table.new(get_params(data))
|
101
|
-
end
|
102
|
-
|
103
|
-
def initialize_thead(data)
|
104
|
-
HS::Thead.new(get_params(data))
|
105
|
-
end
|
106
|
-
|
107
|
-
def initialize_tbody(data)
|
108
|
-
HS::Tbody.new(get_params(data))
|
109
|
-
end
|
110
|
-
|
111
|
-
def initialize_tr(data)
|
112
|
-
HS::Tr.new(get_params(data))
|
113
|
-
end
|
114
|
-
|
115
|
-
def initialize_th(data)
|
116
|
-
HS::Th.new(get_params(data))
|
117
|
-
end
|
118
|
-
|
119
|
-
def initialize_td(data)
|
120
|
-
HS::Td.new(get_params(data))
|
121
|
-
end
|
122
|
-
|
123
|
-
def initialize_br(_data)
|
124
|
-
HS::Br.new # no params!
|
125
|
-
end
|
126
42
|
end
|
127
43
|
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module HS
|
4
|
+
module CodeInitializers
|
5
|
+
private
|
6
|
+
|
7
|
+
def initialize_code(data)
|
8
|
+
HS::Code.new(get_params(data, %i[lang class_name style]))
|
9
|
+
end
|
10
|
+
|
11
|
+
def initialize_live_code(data)
|
12
|
+
HS::LiveCode.new(get_params(data, %i[lang]))
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize_initial_code(data)
|
16
|
+
HS::InitialCode.new(get_params(data))
|
17
|
+
end
|
18
|
+
|
19
|
+
def initialize_solution(data)
|
20
|
+
HS::Solution.new(get_params(data))
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module HS
|
4
|
+
module ListInitializers
|
5
|
+
private
|
6
|
+
|
7
|
+
def initialize_ul(data)
|
8
|
+
HS::Ul.new(get_params(data))
|
9
|
+
end
|
10
|
+
|
11
|
+
def initialize_ol(data)
|
12
|
+
HS::Ol.new(get_params(data))
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize_li(data)
|
16
|
+
HS::Li.new(get_params(data))
|
17
|
+
end
|
18
|
+
|
19
|
+
def initialize_dd(data)
|
20
|
+
HS::Dd.new(get_params(data))
|
21
|
+
end
|
22
|
+
|
23
|
+
def initialize_dl(data)
|
24
|
+
HS::Dl.new(get_params(data))
|
25
|
+
end
|
26
|
+
|
27
|
+
def initialize_dt(data)
|
28
|
+
HS::Dt.new(get_params(data))
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module HS
|
4
|
+
module OtherInitializers
|
5
|
+
private
|
6
|
+
|
7
|
+
def initialize_note(data)
|
8
|
+
HS::Note.new(get_params(data))
|
9
|
+
end
|
10
|
+
|
11
|
+
def initialize_intro(data)
|
12
|
+
HS::Intro.new(get_params(data))
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize_link(data)
|
16
|
+
HS::Link.new(get_params(data, %i[to class_name style]))
|
17
|
+
end
|
18
|
+
|
19
|
+
def initialize_original(data)
|
20
|
+
HS::Original.new(get_params(data))
|
21
|
+
end
|
22
|
+
|
23
|
+
def initialize_image(data)
|
24
|
+
HS::Image.new(get_params(data, %i[src class_name style]))
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module HS
|
4
|
+
module TableInitializers
|
5
|
+
private
|
6
|
+
|
7
|
+
def initialize_table(data)
|
8
|
+
HS::Table.new(get_params(data))
|
9
|
+
end
|
10
|
+
|
11
|
+
def initialize_thead(data)
|
12
|
+
HS::Thead.new(get_params(data))
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize_tbody(data)
|
16
|
+
HS::Tbody.new(get_params(data))
|
17
|
+
end
|
18
|
+
|
19
|
+
def initialize_tr(data)
|
20
|
+
HS::Tr.new(get_params(data))
|
21
|
+
end
|
22
|
+
|
23
|
+
def initialize_th(data)
|
24
|
+
HS::Th.new(get_params(data))
|
25
|
+
end
|
26
|
+
|
27
|
+
def initialize_td(data)
|
28
|
+
HS::Td.new(get_params(data))
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module HS
|
4
|
+
module TextInitializers
|
5
|
+
private
|
6
|
+
|
7
|
+
def initialize_header(data)
|
8
|
+
HS::Header.new(get_params(data, %i[level class_name style]))
|
9
|
+
end
|
10
|
+
|
11
|
+
def initialize_text(data)
|
12
|
+
HS::Text.new(text: data[:text])
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize_p(data)
|
16
|
+
HS::Paragraph.new(get_params(data))
|
17
|
+
end
|
18
|
+
|
19
|
+
def initialize_em(data)
|
20
|
+
HS::Emphasize.new(get_params(data))
|
21
|
+
end
|
22
|
+
|
23
|
+
def initialize_strong(data)
|
24
|
+
HS::Strong.new(get_params(data))
|
25
|
+
end
|
26
|
+
|
27
|
+
def initialize_br(_data)
|
28
|
+
HS::Br.new # no params!
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/lib/hs/version.rb
CHANGED
data/lib/hs.rb
CHANGED
@@ -16,13 +16,16 @@ require 'hs/elements/dt'
|
|
16
16
|
require 'hs/elements/emphasize'
|
17
17
|
require 'hs/elements/header'
|
18
18
|
require 'hs/elements/image'
|
19
|
+
require 'hs/elements/initial_code'
|
19
20
|
require 'hs/elements/intro'
|
20
21
|
require 'hs/elements/li'
|
21
22
|
require 'hs/elements/link'
|
23
|
+
require 'hs/elements/live_code'
|
22
24
|
require 'hs/elements/note'
|
23
25
|
require 'hs/elements/ol'
|
24
26
|
require 'hs/elements/original'
|
25
27
|
require 'hs/elements/paragraph'
|
28
|
+
require 'hs/elements/solution'
|
26
29
|
require 'hs/elements/strong'
|
27
30
|
require 'hs/elements/table'
|
28
31
|
require 'hs/elements/text'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hs-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dimitri Kurashvili
|
@@ -235,13 +235,16 @@ files:
|
|
235
235
|
- lib/hs/elements/emphasize.rb
|
236
236
|
- lib/hs/elements/header.rb
|
237
237
|
- lib/hs/elements/image.rb
|
238
|
+
- lib/hs/elements/initial_code.rb
|
238
239
|
- lib/hs/elements/intro.rb
|
239
240
|
- lib/hs/elements/li.rb
|
240
241
|
- lib/hs/elements/link.rb
|
242
|
+
- lib/hs/elements/live_code.rb
|
241
243
|
- lib/hs/elements/note.rb
|
242
244
|
- lib/hs/elements/ol.rb
|
243
245
|
- lib/hs/elements/original.rb
|
244
246
|
- lib/hs/elements/paragraph.rb
|
247
|
+
- lib/hs/elements/solution.rb
|
245
248
|
- lib/hs/elements/strong.rb
|
246
249
|
- lib/hs/elements/table.rb
|
247
250
|
- lib/hs/elements/text.rb
|
@@ -249,6 +252,11 @@ files:
|
|
249
252
|
- lib/hs/loaders/chapter_loader.rb
|
250
253
|
- lib/hs/loaders/course_loader.rb
|
251
254
|
- lib/hs/loaders/element_loader.rb
|
255
|
+
- lib/hs/loaders/initializers/code_initializers.rb
|
256
|
+
- lib/hs/loaders/initializers/list_initializers.rb
|
257
|
+
- lib/hs/loaders/initializers/other_initializers.rb
|
258
|
+
- lib/hs/loaders/initializers/table_initializers.rb
|
259
|
+
- lib/hs/loaders/initializers/text_initializers.rb
|
252
260
|
- lib/hs/loaders/module_loader.rb
|
253
261
|
- lib/hs/loaders/xml_parser.rb
|
254
262
|
- lib/hs/models/chapter.rb
|