muwu 2.5.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 +7 -0
- data/bin/muwu +5 -0
- data/lib/muwu.rb +38 -0
- data/lib/muwu/cli/cli.rb +143 -0
- data/lib/muwu/cli/cli_help.rb +28 -0
- data/lib/muwu/cli/help/compile +22 -0
- data/lib/muwu/cli/help/concat +8 -0
- data/lib/muwu/cli/help/heading +2 -0
- data/lib/muwu/cli/help/inspect +7 -0
- data/lib/muwu/cli/help/new +8 -0
- data/lib/muwu/cli/help/reset +14 -0
- data/lib/muwu/cli/help/summary +14 -0
- data/lib/muwu/controller/controller.rb +120 -0
- data/lib/muwu/controller/controller_interaction.rb +146 -0
- data/lib/muwu/default/default.rb +51 -0
- data/lib/muwu/destination/destination.rb +212 -0
- data/lib/muwu/destination_builder/destination_builder.rb +127 -0
- data/lib/muwu/helper/hash_helper.rb +37 -0
- data/lib/muwu/helper/html_href_helper.rb +101 -0
- data/lib/muwu/helper/outline_helper.rb +160 -0
- data/lib/muwu/helper/regexp_lib.rb +101 -0
- data/lib/muwu/helper/sanitizer_helper.rb +50 -0
- data/lib/muwu/manifest/manifest.rb +158 -0
- data/lib/muwu/manifest_builder/manifest_builder.rb +102 -0
- data/lib/muwu/manifest_task/contents.rb +42 -0
- data/lib/muwu/manifest_task/document_css.rb +25 -0
- data/lib/muwu/manifest_task/document_html.rb +69 -0
- data/lib/muwu/manifest_task/document_js.rb +25 -0
- data/lib/muwu/manifest_task/metadata.rb +35 -0
- data/lib/muwu/manifest_task/navigator.rb +29 -0
- data/lib/muwu/manifest_task/subcontents.rb +48 -0
- data/lib/muwu/manifest_task/text.rb +51 -0
- data/lib/muwu/manifest_task/text_item.rb +124 -0
- data/lib/muwu/manifest_task/title.rb +34 -0
- data/lib/muwu/manifest_task_builder/contents_builder.rb +88 -0
- data/lib/muwu/manifest_task_builder/document_css_builder.rb +63 -0
- data/lib/muwu/manifest_task_builder/document_html_builder.rb +210 -0
- data/lib/muwu/manifest_task_builder/document_js_builder.rb +69 -0
- data/lib/muwu/manifest_task_builder/metadata_builder.rb +118 -0
- data/lib/muwu/manifest_task_builder/navigator_builder.rb +78 -0
- data/lib/muwu/manifest_task_builder/subcontents_builder.rb +90 -0
- data/lib/muwu/manifest_task_builder/text_builder.rb +125 -0
- data/lib/muwu/manifest_task_builder/text_item_builder.rb +314 -0
- data/lib/muwu/manifest_task_builder/title_builder.rb +122 -0
- data/lib/muwu/project/project.rb +430 -0
- data/lib/muwu/project_builder/assets/config/css/base/html_elements.scss +138 -0
- data/lib/muwu/project_builder/assets/config/css/base/index.scss +11 -0
- data/lib/muwu/project_builder/assets/config/css/base/mixin_text_section_heading.scss +23 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_contents.scss +58 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_metadata.scss +17 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_navigator.scss +13 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_subcontents.scss +58 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_text.scss +48 -0
- data/lib/muwu/project_builder/assets/config/css/base/section_muwu_title.scss +22 -0
- data/lib/muwu/project_builder/assets/config/css/colors/dark.scss +32 -0
- data/lib/muwu/project_builder/assets/config/css/colors/index.scss +1 -0
- data/lib/muwu/project_builder/assets/config/css/colors/light.scss +34 -0
- data/lib/muwu/project_builder/assets/config/css/extensions/index.scss +1 -0
- data/lib/muwu/project_builder/assets/config/css/index.scss +19 -0
- data/lib/muwu/project_builder/assets/config/css_debugger/debug_section_text.scss +27 -0
- data/lib/muwu/project_builder/project_reader.rb +144 -0
- data/lib/muwu/project_builder/project_reset_css.rb +95 -0
- data/lib/muwu/project_builder/project_starter.rb +27 -0
- data/lib/muwu/project_builder/project_validator.rb +157 -0
- data/lib/muwu/project_builder/project_writer.rb +127 -0
- data/lib/muwu/project_exception/css_manifest_file_not_found.rb +23 -0
- data/lib/muwu/project_exception/dry_output_recommended_with_multiple_documents.rb +19 -0
- data/lib/muwu/project_exception/metadata_file_not_found.rb +24 -0
- data/lib/muwu/project_exception/metadata_value_not_given.rb +42 -0
- data/lib/muwu/project_exception/multiple_documents_outlined_with_stdout.rb +18 -0
- data/lib/muwu/project_exception/multiple_formats_requested_with_stdout.rb +18 -0
- data/lib/muwu/project_exception/navigator_not_recommended_with_stdout.rb +23 -0
- data/lib/muwu/project_exception/navigators_will_be_generated_automatically.rb +23 -0
- data/lib/muwu/project_exception/option_key_not_understood.rb +23 -0
- data/lib/muwu/project_exception/option_not_validatable.rb +23 -0
- data/lib/muwu/project_exception/option_value_not_understood.rb +24 -0
- data/lib/muwu/project_exception/options_file_not_found.rb +24 -0
- data/lib/muwu/project_exception/outline_file_not_found.rb +24 -0
- data/lib/muwu/project_exception/outline_step_not_understood.rb +23 -0
- data/lib/muwu/project_exception/output_already_open.rb +18 -0
- data/lib/muwu/project_exception/output_not_open.rb +18 -0
- data/lib/muwu/project_exception/subcontents_will_be_generated_automatically copy.rb +23 -0
- data/lib/muwu/project_exception/target_project_folder_already_exists.rb +24 -0
- data/lib/muwu/project_exception/text_source_file_not_found.rb +26 -0
- data/lib/muwu/project_exception_handler/fatal.rb +39 -0
- data/lib/muwu/project_options/project_options.rb +54 -0
- data/lib/muwu/project_options_builder/project_option_validator.rb +37 -0
- data/lib/muwu/project_options_builder/project_option_validator_key.rb +56 -0
- data/lib/muwu/project_options_builder/project_option_validator_value.rb +300 -0
- data/lib/muwu/project_options_builder/project_options_reader.rb +80 -0
- data/lib/muwu/render_concat/render_concat.rb +80 -0
- data/lib/muwu/render_html/render_html.rb +101 -0
- data/lib/muwu/render_html/render_markup_to_html.rb +87 -0
- data/lib/muwu/render_html_builder/render_css_builder.rb +34 -0
- data/lib/muwu/render_html_builder/render_html_builder.rb +34 -0
- data/lib/muwu/render_html_builder/render_js_builder.rb +34 -0
- data/lib/muwu/render_html_partial/js_library/_init_bare.js +7 -0
- data/lib/muwu/render_html_partial/js_library/_zepto.min.js +2 -0
- data/lib/muwu/render_html_partial/js_library/init.js +10 -0
- data/lib/muwu/render_html_partial/js_library/navigation.js +140 -0
- data/lib/muwu/render_html_partial/render_contents.rb +369 -0
- data/lib/muwu/render_html_partial/render_document_css.rb +45 -0
- data/lib/muwu/render_html_partial/render_document_html.rb +397 -0
- data/lib/muwu/render_html_partial/render_document_js.rb +37 -0
- data/lib/muwu/render_html_partial/render_js_library.rb +54 -0
- data/lib/muwu/render_html_partial/render_metadata.rb +120 -0
- data/lib/muwu/render_html_partial/render_navigator.rb +136 -0
- data/lib/muwu/render_html_partial/render_subcontents.rb +374 -0
- data/lib/muwu/render_html_partial/render_text.rb +74 -0
- data/lib/muwu/render_html_partial/render_text_item.rb +230 -0
- data/lib/muwu/render_html_partial/render_title.rb +71 -0
- data/lib/muwu/render_html_partial_builder/render_contents_builder.rb +100 -0
- data/lib/muwu/render_html_partial_builder/render_document_css_builder.rb +46 -0
- data/lib/muwu/render_html_partial_builder/render_document_html_builder.rb +211 -0
- data/lib/muwu/render_html_partial_builder/render_document_js_builder.rb +52 -0
- data/lib/muwu/render_html_partial_builder/render_metadata_builder.rb +47 -0
- data/lib/muwu/render_html_partial_builder/render_navigator_builder.rb +74 -0
- data/lib/muwu/render_html_partial_builder/render_subcontents_builder.rb +85 -0
- data/lib/muwu/render_html_partial_builder/render_text_builder.rb +86 -0
- data/lib/muwu/render_html_partial_builder/render_text_item_builder.rb +274 -0
- data/lib/muwu/render_html_partial_builder/render_title_builder.rb +47 -0
- data/lib/muwu/render_inspector/render_inspector.rb +224 -0
- data/lib/muwu/var/deflistdiv.rb +239 -0
- data/lib/muwu_loader.rb +35 -0
- data/test/what_no_tests.md +5 -0
- metadata +251 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module Muwu
|
|
2
|
+
module RenderHtmlPartial
|
|
3
|
+
class DocumentCss
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
include Muwu
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
require 'sassc'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
attr_accessor(
|
|
13
|
+
:destination,
|
|
14
|
+
:project,
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def render
|
|
19
|
+
@destination.output_stream do
|
|
20
|
+
if @project.exceptions_include?(ProjectException::CssManifestFileNotFound)
|
|
21
|
+
write_css_missing_comment
|
|
22
|
+
else
|
|
23
|
+
write_css
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def write_css_missing_comment
|
|
30
|
+
@destination.write_line "/*"
|
|
31
|
+
@destination.write_line "#{ProjectException::CssManifestFileNotFound}"
|
|
32
|
+
@destination.write_line " - CSS manifest file could not be found."
|
|
33
|
+
@destination.write_line " - Expecting `#{project.css_manifest_filename}`"
|
|
34
|
+
@destination.write_line "*/"
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def write_css
|
|
39
|
+
@destination.write_inline SassC::Engine.new(File.read(@project.css_manifest_filename), syntax: :scss, load_paths: ['config/css']).render
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
module Muwu
|
|
2
|
+
module RenderHtmlPartial
|
|
3
|
+
class DocumentHtml
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
include Muwu
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
require 'sassc'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
attr_accessor(
|
|
13
|
+
:destination,
|
|
14
|
+
:head_css_filename,
|
|
15
|
+
:head_css_method,
|
|
16
|
+
:head_js_filename,
|
|
17
|
+
:head_js_libraries,
|
|
18
|
+
:head_js_method,
|
|
19
|
+
:head_includes_metadata_tags,
|
|
20
|
+
:head_metadata,
|
|
21
|
+
:html_lang,
|
|
22
|
+
:html_title,
|
|
23
|
+
:project,
|
|
24
|
+
:tasks
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def initialize
|
|
29
|
+
@head_metadata = {}
|
|
30
|
+
@tasks = []
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
public
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def render
|
|
40
|
+
@destination.output_stream do
|
|
41
|
+
render_tag_html_open
|
|
42
|
+
@destination.padding_vertical(1) do
|
|
43
|
+
render_head
|
|
44
|
+
render_body
|
|
45
|
+
end
|
|
46
|
+
write_tag_html_close
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def options
|
|
52
|
+
@project.options
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
def render_body
|
|
57
|
+
@destination.padding_vertical(1) do
|
|
58
|
+
write_tag_body_open
|
|
59
|
+
render_body_manifest_tasks
|
|
60
|
+
write_tag_body_close
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def render_body_manifest_tasks
|
|
66
|
+
@destination.padding_vertical(1) do
|
|
67
|
+
@tasks.each do |task|
|
|
68
|
+
task.render
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def render_head
|
|
75
|
+
@destination.padding_vertical(1) do
|
|
76
|
+
write_tag_head_open
|
|
77
|
+
@destination.margin_indent do
|
|
78
|
+
write_tag_title
|
|
79
|
+
render_head_meta_tags
|
|
80
|
+
render_head_css
|
|
81
|
+
render_head_js
|
|
82
|
+
end
|
|
83
|
+
write_tag_head_close
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def render_head_css
|
|
89
|
+
case @head_css_method
|
|
90
|
+
when :embed
|
|
91
|
+
render_head_css_embed
|
|
92
|
+
when :link
|
|
93
|
+
render_head_css_link
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
def render_head_css_embed
|
|
99
|
+
write_tag_style_open
|
|
100
|
+
write_css_if_manifest_exists
|
|
101
|
+
write_tag_style_close
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
def render_head_css_link
|
|
106
|
+
write_tag_link_stylesheet
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
def render_head_js
|
|
111
|
+
case @head_js_method
|
|
112
|
+
when :embed
|
|
113
|
+
render_head_js_embed
|
|
114
|
+
when :link
|
|
115
|
+
render_head_js_link
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
def render_head_js_embed
|
|
121
|
+
write_tag_script_open
|
|
122
|
+
@head_js_libraries.each do |library|
|
|
123
|
+
write_js_library(library)
|
|
124
|
+
end
|
|
125
|
+
write_tag_script_close
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
def render_head_js_lib_navigation
|
|
130
|
+
if @project.options.html_uses_javascript_navigation
|
|
131
|
+
write_js_lib_navigation
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
def render_head_js_link
|
|
137
|
+
write_tag_script_src
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
def render_head_meta_tags
|
|
142
|
+
write_tag_meta_charset_utf8
|
|
143
|
+
if @head_includes_metadata_tags
|
|
144
|
+
@head_metadata.each_pair do |key, value|
|
|
145
|
+
write_tag_meta(key, value)
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
write_tag_meta_generator
|
|
149
|
+
write_tag_meta_viewport
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
def render_tag_html_open
|
|
154
|
+
write_tag_doctype
|
|
155
|
+
if @html_lang
|
|
156
|
+
write_tag_html_open_lang
|
|
157
|
+
else
|
|
158
|
+
write_tag_html_open
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
def write_css_if_manifest_exists
|
|
164
|
+
if @project.exceptions_include?(ProjectException::CssManifestFileNotFound)
|
|
165
|
+
write_css_missing_comment
|
|
166
|
+
else
|
|
167
|
+
write_css
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
def write_css
|
|
173
|
+
@destination.write_inline sassc::Engine.new(File.read(@project.css_manifest_filename), syntax: :scss, load_paths: ['config/css']).render
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
def write_css_missing_comment
|
|
178
|
+
@destination.write_line "/*"
|
|
179
|
+
@destination.write_line "#{ProjectException::CssManifestFileNotFound}"
|
|
180
|
+
@destination.write_line " - CSS manifest file could not be found."
|
|
181
|
+
@destination.write_line " - Expecting `#{project.css_manifest_filename}`"
|
|
182
|
+
@destination.write_line "*/"
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
def write_js_library(library)
|
|
187
|
+
@destination.write_inline RenderHtmlPartial::JsLibrary.new.find(library)
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
def write_tag_body_close
|
|
192
|
+
@destination.write_line tag_body_close
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
def write_tag_body_open
|
|
197
|
+
@destination.write_line tag_body_open
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
def write_tag_doctype
|
|
202
|
+
@destination.write_line tag_doctype
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
def write_tag_head_close
|
|
207
|
+
@destination.write_line tag_head_close
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
def write_tag_head_open
|
|
212
|
+
@destination.write_line tag_head_open
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
def write_tag_html_close
|
|
217
|
+
@destination.write_line tag_html_close
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
def write_tag_html_open
|
|
222
|
+
@destination.write_line tag_html_open
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
def write_tag_html_open_lang
|
|
227
|
+
@destination.write_line tag_html_open_lang
|
|
228
|
+
end
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
def write_tag_link_stylesheet
|
|
232
|
+
@destination.write_line tag_link_stylesheet
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
def write_tag_meta(key, value)
|
|
237
|
+
@destination.write_line tag_meta(key, value)
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
def write_tag_meta_charset_utf8
|
|
242
|
+
@destination.write_line tag_meta_charset_utf8
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
def write_tag_meta_generator
|
|
247
|
+
@destination.write_line tag_meta_generator
|
|
248
|
+
end
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
def write_tag_meta_viewport
|
|
252
|
+
@destination.write_line tag_meta_viewport
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
def write_tag_meta_instance_date
|
|
257
|
+
@destination.write_line tag_meta_instance_date
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
def write_tag_script_close
|
|
262
|
+
@destination.write_line tag_script_close
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
def write_tag_script_open
|
|
267
|
+
@destination.write_line tag_script_open
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
|
|
271
|
+
def write_tag_script_src
|
|
272
|
+
@destination.write_line tag_script_src
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
def write_tag_style_close
|
|
277
|
+
@destination.write_line tag_style_close
|
|
278
|
+
end
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
def write_tag_style_open
|
|
282
|
+
@destination.write_line tag_style_open
|
|
283
|
+
end
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
def write_tag_title
|
|
287
|
+
@destination.write_line tag_title
|
|
288
|
+
end
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
private
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
def tag_body_close
|
|
296
|
+
"</body>"
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
def tag_body_open
|
|
301
|
+
"<body>"
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
def tag_doctype
|
|
306
|
+
"<!DOCTYPE html>"
|
|
307
|
+
end
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
def tag_head_close
|
|
311
|
+
"</head>"
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
def tag_head_open
|
|
316
|
+
"<head>"
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
def tag_html_close
|
|
321
|
+
"</html>"
|
|
322
|
+
end
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
def tag_html_open
|
|
326
|
+
"<html>"
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
def tag_html_open_lang
|
|
331
|
+
"<html lang='#{@html_lang}'>"
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
def tag_link_stylesheet
|
|
336
|
+
"<link rel='stylesheet' href='#{@head_css_filename}' type='text/css'>"
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
def tag_meta(key, value)
|
|
341
|
+
"<meta name='#{key}' value='#{value}'>"
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
def tag_meta_charset_utf8
|
|
346
|
+
"<meta charset='UTF-8'>"
|
|
347
|
+
end
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
def tag_meta_generator
|
|
351
|
+
"<meta name='generator' content='Muwu #{Muwu::VERSION}'>"
|
|
352
|
+
end
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
def tag_meta_instance_date
|
|
356
|
+
"<meta name='date_of_this_edition' value='#{@project.instance_date}'>\n"
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
def tag_meta_viewport
|
|
361
|
+
"<meta name='viewport' content='width=device-width, initial-scale=1, user-scalable=yes'>"
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
def tag_script_close
|
|
366
|
+
"</script>"
|
|
367
|
+
end
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
def tag_script_open
|
|
371
|
+
"<script>"
|
|
372
|
+
end
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
def tag_script_src
|
|
376
|
+
"<script src='#{@head_js_filename}'></script>"
|
|
377
|
+
end
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
def tag_style_close
|
|
381
|
+
"</style>"
|
|
382
|
+
end
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
def tag_style_open
|
|
386
|
+
"<style>"
|
|
387
|
+
end
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
def tag_title
|
|
391
|
+
"<title>#{@html_title}</title>"
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
end
|
|
396
|
+
end
|
|
397
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
module Muwu
|
|
2
|
+
module RenderHtmlPartial
|
|
3
|
+
class DocumentJs
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
include Muwu
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
attr_accessor(
|
|
10
|
+
:destination,
|
|
11
|
+
:libraries,
|
|
12
|
+
:project
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def render
|
|
17
|
+
@destination.output_stream do
|
|
18
|
+
libraries.each do |library|
|
|
19
|
+
write_library(library)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def options
|
|
26
|
+
@project.options
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def write_library(library)
|
|
31
|
+
@destination.write_inline RenderHtmlPartial::JsLibrary.new.find(library)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|