hs-cli 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|