openstax_kitchen 5.0.0 → 6.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/changelog.yml +27 -0
- data/.github/workflows/rubocop.yml +28 -0
- data/CHANGELOG.md +33 -0
- data/Gemfile.lock +8 -6
- data/docker/rubocop +22 -0
- data/lib/kitchen/directions/bake_appendix.rb +3 -1
- data/lib/kitchen/directions/bake_chapter_introductions.rb +22 -15
- data/lib/kitchen/directions/bake_chapter_introductions/chapter_introduction.xhtml.erb +0 -0
- data/lib/kitchen/directions/bake_chapter_section_exercises/main.rb +2 -2
- data/lib/kitchen/directions/bake_chapter_section_exercises/v1.rb +2 -1
- data/lib/kitchen/directions/bake_chapter_solutions/main.rb +11 -0
- data/lib/kitchen/directions/bake_chapter_solutions/v1.rb +37 -0
- data/lib/kitchen/directions/bake_chapter_summary.rb +13 -6
- data/lib/kitchen/directions/bake_example.rb +4 -1
- data/lib/kitchen/directions/bake_figure.rb +13 -0
- data/lib/kitchen/directions/bake_footnotes/main.rb +2 -2
- data/lib/kitchen/directions/bake_footnotes/v1.rb +11 -8
- data/lib/kitchen/directions/bake_further_research.rb +2 -0
- data/lib/kitchen/directions/bake_index/v1.rb +2 -2
- data/lib/kitchen/directions/bake_notes/bake_numbered_notes/main.rb +43 -0
- data/lib/kitchen/directions/bake_notes/bake_numbered_notes/v1.rb +37 -0
- data/lib/kitchen/directions/bake_notes/bake_numbered_notes/v2.rb +25 -0
- data/lib/kitchen/directions/bake_notes/bake_numbered_notes/v3.rb +32 -0
- data/lib/kitchen/directions/bake_numbered_exercise/main.rb +3 -2
- data/lib/kitchen/directions/bake_numbered_exercise/v1.rb +10 -1
- data/lib/kitchen/directions/bake_numbered_table/bake_table_body.rb +29 -0
- data/lib/kitchen/directions/bake_numbered_table/main.rb +4 -0
- data/lib/kitchen/directions/bake_numbered_table/v1.rb +1 -17
- data/lib/kitchen/directions/bake_numbered_table/v2.rb +31 -0
- data/lib/kitchen/directions/bake_preface/main.rb +2 -2
- data/lib/kitchen/directions/bake_preface/v1.rb +3 -2
- data/lib/kitchen/directions/book_answer_key_container/eob_answer_key_outer_container.xhtml.erb +9 -0
- data/lib/kitchen/directions/book_answer_key_container/main.rb +2 -2
- data/lib/kitchen/directions/book_answer_key_container/v1.rb +4 -3
- data/lib/kitchen/directions/chapter_review_container/chapter_review.xhtml.erb +3 -3
- data/lib/kitchen/directions/chapter_review_container/main.rb +2 -2
- data/lib/kitchen/directions/chapter_review_container/v1.rb +4 -2
- data/lib/kitchen/directions/eoc_section_title_link_snippet.rb +13 -0
- data/lib/kitchen/directions/move_exercises_to_eoc/main.rb +10 -0
- data/lib/kitchen/directions/move_exercises_to_eoc/v3.rb +49 -0
- data/lib/kitchen/directions/move_solutions_to_answer_key/main.rb +6 -2
- data/lib/kitchen/directions/move_solutions_to_answer_key/strategies/default.rb +27 -0
- data/lib/kitchen/directions/move_solutions_to_answer_key/strategies/precalculus.rb +84 -0
- data/lib/kitchen/directions/move_solutions_to_answer_key/v1.rb +11 -7
- data/lib/kitchen/element_base.rb +15 -0
- data/lib/kitchen/page_element.rb +2 -3
- data/lib/kitchen/patches/integer.rb +24 -0
- data/lib/kitchen/patches/nokogiri.rb +7 -0
- data/lib/kitchen/version.rb +1 -1
- data/lib/locales/en.yml +2 -1
- data/lib/locales/es.yml +2 -1
- data/lib/locales/pl.yml +3 -2
- metadata +19 -6
- data/.github/config.yml +0 -14
- data/lib/kitchen/directions/bake_notes/bake_numbered_notes.rb +0 -51
- data/lib/kitchen/directions/book_answer_key_container/eob_solutions_container.xhtml.erb +0 -9
- data/lib/kitchen/directions/move_solutions_to_answer_key/strategies/american_government.rb +0 -19
@@ -22,6 +22,16 @@ module Kitchen
|
|
22
22
|
uuid_prefix: uuid_prefix
|
23
23
|
)
|
24
24
|
end
|
25
|
+
|
26
|
+
def self.v3(chapter:, metadata_source:, klass:, append_to: nil, uuid_prefix: '.')
|
27
|
+
V3.new.bake(
|
28
|
+
chapter: chapter,
|
29
|
+
metadata_source: metadata_source,
|
30
|
+
append_to: append_to,
|
31
|
+
klass: klass,
|
32
|
+
uuid_prefix: uuid_prefix
|
33
|
+
)
|
34
|
+
end
|
25
35
|
end
|
26
36
|
end
|
27
37
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Kitchen::Directions::MoveExercisesToEOC
|
4
|
+
# The difference from v1 is the presence of a section title
|
5
|
+
# and from v2 the lack of additional "os-section-area" and os-#{@klass} wrappers
|
6
|
+
class V3
|
7
|
+
renderable
|
8
|
+
|
9
|
+
def bake(chapter:, metadata_source:, klass:, append_to: nil, uuid_prefix: '.')
|
10
|
+
@klass = klass
|
11
|
+
@metadata = metadata_source.children_to_keep.copy
|
12
|
+
@title = I18n.t(:"eoc.#{klass}")
|
13
|
+
@uuid_prefix = uuid_prefix
|
14
|
+
|
15
|
+
exercise_clipboard = Kitchen::Clipboard.new
|
16
|
+
|
17
|
+
chapter.non_introduction_pages.each do |page|
|
18
|
+
sections = page.search("section.#{@klass}")
|
19
|
+
|
20
|
+
sections.each do |exercise_section|
|
21
|
+
exercise_section.first("[data-type='title']")&.trash
|
22
|
+
|
23
|
+
section_title = Kitchen::Directions::EocSectionTitleLinkSnippet.v1(page: page)
|
24
|
+
|
25
|
+
exercise_section.exercises.each do |exercise|
|
26
|
+
exercise.document.pantry(name: :link_text).store(
|
27
|
+
"#{I18n.t(:exercise_label)} #{chapter.count_in(:book)}.#{exercise.count_in(:chapter)}",
|
28
|
+
label: exercise.id
|
29
|
+
)
|
30
|
+
end
|
31
|
+
|
32
|
+
# Configure section title
|
33
|
+
exercise_section.prepend(child: section_title)
|
34
|
+
exercise_section.cut(to: exercise_clipboard)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
return if exercise_clipboard.none?
|
39
|
+
|
40
|
+
@content = exercise_clipboard.paste
|
41
|
+
|
42
|
+
append_to_element = append_to || chapter
|
43
|
+
@in_composite_chapter = append_to_element.is?(:composite_chapter)
|
44
|
+
|
45
|
+
append_to_element.append(child: render(file:
|
46
|
+
'../../templates/eoc_section_title_template.xhtml.erb'))
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -3,11 +3,15 @@
|
|
3
3
|
module Kitchen
|
4
4
|
module Directions
|
5
5
|
module MoveSolutionsToAnswerKey
|
6
|
-
def self.v1(chapter:, metadata_source:, strategy:, append_to:)
|
6
|
+
def self.v1(chapter:, metadata_source:, strategy:, append_to:, strategy_options: {}, solutions_plural: true)
|
7
7
|
V1.new.bake(
|
8
8
|
chapter: chapter,
|
9
9
|
metadata_source: metadata_source,
|
10
|
-
strategy: strategy,
|
10
|
+
strategy: strategy,
|
11
|
+
append_to: append_to,
|
12
|
+
strategy_options: strategy_options,
|
13
|
+
solutions_plural: solutions_plural
|
14
|
+
)
|
11
15
|
end
|
12
16
|
end
|
13
17
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Kitchen::Directions::MoveSolutionsToAnswerKey
|
4
|
+
module Strategies
|
5
|
+
class Default
|
6
|
+
def bake(chapter:, append_to:)
|
7
|
+
bake_section(chapter: chapter, append_to: append_to)
|
8
|
+
end
|
9
|
+
|
10
|
+
protected
|
11
|
+
|
12
|
+
def bake_section(chapter:, append_to:)
|
13
|
+
@classes.each do |klass|
|
14
|
+
chapter.search(".#{klass} [data-type='solution']").each do |solution|
|
15
|
+
append_to.add_child(solution.cut.to_s)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
# This method helps to obtain more strategy-specific params through
|
21
|
+
# "strategy_options: {blah1: 1, blah2: 2}"
|
22
|
+
def initialize(strategy_options)
|
23
|
+
@classes = strategy_options[:classes] || (raise 'missing classes for strategy')
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Kitchen::Directions::MoveSolutionsToAnswerKey
|
4
|
+
module Strategies
|
5
|
+
class Precalculus
|
6
|
+
def bake(chapter:, append_to:)
|
7
|
+
try_note_solutions(chapter: chapter, append_to: append_to)
|
8
|
+
|
9
|
+
# Bake section exercises
|
10
|
+
chapter.non_introduction_pages.each do |page|
|
11
|
+
number = "#{chapter.count_in(:book)}.#{page.count_in(:chapter)}"
|
12
|
+
bake_section(chapter: page, append_to: append_to, klass: 'section-exercises',
|
13
|
+
number: number)
|
14
|
+
end
|
15
|
+
|
16
|
+
# Bake other types of exercises
|
17
|
+
classes = %w[review-exercises practice-test]
|
18
|
+
classes.each do |klass|
|
19
|
+
bake_section(chapter: chapter, append_to: append_to, klass: klass)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
protected
|
24
|
+
|
25
|
+
def bake_section(chapter:, append_to:, klass:, number: nil)
|
26
|
+
section_solutions_set = Kitchen::Clipboard.new
|
27
|
+
chapter.search(".#{klass}").each do |section|
|
28
|
+
section.search('[data-type="solution"]').each do |solution|
|
29
|
+
solution.cut(to: section_solutions_set)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
return if section_solutions_set.items.empty?
|
34
|
+
|
35
|
+
title = <<~HTML
|
36
|
+
<h3 data-type="title">
|
37
|
+
<span class="os-title-label">#{I18n.t(:"eoc.#{klass}", number: number)}</span>
|
38
|
+
</h3>
|
39
|
+
HTML
|
40
|
+
|
41
|
+
append_solution_area(title: title, solutions: section_solutions_set, append_to: append_to)
|
42
|
+
end
|
43
|
+
|
44
|
+
def try_note_solutions(chapter:, append_to:)
|
45
|
+
append_to.add_child(
|
46
|
+
<<~HTML
|
47
|
+
<div class="os-module-reset-solution-area os-try-solution-area">
|
48
|
+
<h3 data-type="title">
|
49
|
+
<span class="os-title-label">#{I18n.t(:"notes.try")}</span>
|
50
|
+
</h3>
|
51
|
+
</div>
|
52
|
+
HTML
|
53
|
+
)
|
54
|
+
chapter.non_introduction_pages.each do |page|
|
55
|
+
solutions = Kitchen::Clipboard.new
|
56
|
+
page.notes('$.try').each do |note|
|
57
|
+
note.exercises.each do |exercise|
|
58
|
+
solution = exercise.solution
|
59
|
+
solution&.cut(to: solutions) #if solution
|
60
|
+
end
|
61
|
+
end
|
62
|
+
next if solutions.items.empty?
|
63
|
+
|
64
|
+
title_snippet = Kitchen::Directions::EocSectionTitleLinkSnippet.v2(page: page)
|
65
|
+
|
66
|
+
append_solution_area(title: title_snippet, solutions: solutions,
|
67
|
+
append_to: append_to.search('.os-try-solution-area').first)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def append_solution_area(title:, solutions:, append_to:)
|
72
|
+
append_to = append_to.add_child(
|
73
|
+
<<~HTML
|
74
|
+
<div class="os-solution-area">
|
75
|
+
#{title}
|
76
|
+
</div>
|
77
|
+
HTML
|
78
|
+
).first
|
79
|
+
|
80
|
+
append_to.add_child(solutions.paste)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
@@ -2,22 +2,26 @@
|
|
2
2
|
|
3
3
|
module Kitchen::Directions::MoveSolutionsToAnswerKey
|
4
4
|
class V1
|
5
|
-
def bake(chapter:, metadata_source:, strategy:, append_to:)
|
5
|
+
def bake(chapter:, metadata_source:, strategy:, append_to:, strategy_options: {}, solutions_plural: true)
|
6
6
|
strategy =
|
7
7
|
case strategy
|
8
8
|
when :calculus
|
9
|
-
Strategies::Calculus
|
9
|
+
Strategies::Calculus.new
|
10
10
|
when :uphysics
|
11
|
-
Strategies::UPhysics
|
12
|
-
when :
|
13
|
-
Strategies::
|
11
|
+
Strategies::UPhysics.new
|
12
|
+
when :precalculus
|
13
|
+
Strategies::Precalculus.new
|
14
|
+
when :default
|
15
|
+
Strategies::Default.new(strategy_options)
|
14
16
|
else
|
15
17
|
raise 'No such strategy'
|
16
18
|
end
|
17
19
|
|
20
|
+
solutions_or_solution = solutions_plural ? 'solutions' : 'solution'
|
18
21
|
append_to.append(child:
|
19
22
|
<<~HTML
|
20
|
-
<div class="os-eob os-
|
23
|
+
<div class="os-eob os-#{solutions_or_solution}-container" data-type="composite-page" \
|
24
|
+
data-uuid-key=".#{solutions_or_solution}#{chapter.count_in(:book)}">
|
21
25
|
<h2 data-type="document-title">
|
22
26
|
<span class="os-text">#{I18n.t(:chapter)} #{chapter.count_in(:book)}</span>
|
23
27
|
</h2>
|
@@ -28,7 +32,7 @@ module Kitchen::Directions::MoveSolutionsToAnswerKey
|
|
28
32
|
</div>
|
29
33
|
HTML
|
30
34
|
)
|
31
|
-
strategy.
|
35
|
+
strategy.bake(chapter: chapter, append_to: append_to.last_element)
|
32
36
|
end
|
33
37
|
end
|
34
38
|
end
|
data/lib/kitchen/element_base.rb
CHANGED
@@ -508,6 +508,21 @@ module Kitchen
|
|
508
508
|
Element.new(node: raw.parent, document: document, short_type: "parent(#{short_type})")
|
509
509
|
end
|
510
510
|
|
511
|
+
# returns previous element
|
512
|
+
# skips double indentations that the nokigiri sometimes picks up
|
513
|
+
# nil if there's no previous sibling
|
514
|
+
#
|
515
|
+
def previous
|
516
|
+
prev = raw.previous
|
517
|
+
return prev if prev.nil?
|
518
|
+
|
519
|
+
Element.new(
|
520
|
+
node: prev,
|
521
|
+
document: document,
|
522
|
+
short_type: "previous(#{short_type})"
|
523
|
+
)
|
524
|
+
end
|
525
|
+
|
511
526
|
# TODO: make it clear if all of these methods take Element, Node, or String
|
512
527
|
|
513
528
|
# If child argument given, prepends it before the element's current children.
|
data/lib/kitchen/page_element.rb
CHANGED
@@ -88,11 +88,10 @@ module Kitchen
|
|
88
88
|
|
89
89
|
# Returns the summary element.
|
90
90
|
#
|
91
|
-
# @
|
92
|
-
# @return [Element]
|
91
|
+
# @return [Element, nil] the summary or nil if no summary found
|
93
92
|
#
|
94
93
|
def summary
|
95
|
-
first
|
94
|
+
first(selectors.page_summary)
|
96
95
|
end
|
97
96
|
|
98
97
|
# Returns the exercises element.
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Monkey patches for +Integer+
|
4
|
+
#
|
5
|
+
class Integer
|
6
|
+
ROMAN_NUMERALS = %w[0 i ii iii iv v vi vii viii ix x xi xii xiii xiv xv xvi xvii xviii xix xx].freeze
|
7
|
+
|
8
|
+
# Formats as different types of integers, including roman numerals.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
#
|
12
|
+
def to_format(format)
|
13
|
+
case format
|
14
|
+
when :arabic
|
15
|
+
to_s
|
16
|
+
when :roman
|
17
|
+
raise 'Unknown conversion to Roman numerals' if self >= ROMAN_NUMERALS.size
|
18
|
+
|
19
|
+
ROMAN_NUMERALS[self]
|
20
|
+
else
|
21
|
+
raise 'Unknown integer format'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -67,6 +67,13 @@ module Nokogiri
|
|
67
67
|
self[:class]&.split || []
|
68
68
|
end
|
69
69
|
|
70
|
+
def previous
|
71
|
+
prev = previous_element
|
72
|
+
return nil if prev.nil?
|
73
|
+
|
74
|
+
prev.text? ? prev.previous : prev
|
75
|
+
end
|
76
|
+
|
70
77
|
def self.selector_to_css_nodes(selector)
|
71
78
|
# No need to parse the same selector more than once.
|
72
79
|
@parsed_selectors ||= {}
|
data/lib/kitchen/version.rb
CHANGED
data/lib/locales/en.yml
CHANGED
@@ -16,12 +16,13 @@ en:
|
|
16
16
|
learning_objectives: Learning Objectives
|
17
17
|
stepwise_step_label: Step
|
18
18
|
references: References
|
19
|
+
answer_key_title: Answer Key
|
19
20
|
eoc_chapter_review: Chapter Review
|
20
21
|
eoc_key_terms_title: Key Terms
|
21
22
|
eoc_summary_title: Summary
|
22
23
|
eoc_exercises_title: Exercises
|
23
24
|
eoc_composite_metadata_title: Chapter Review
|
24
|
-
|
25
|
+
eoc_solutions_title: Solutions
|
25
26
|
eoc_key_concepts: Key Concepts
|
26
27
|
eoc_key_equations: Key Equations
|
27
28
|
eoc_suggested_reading: Suggestions for Further Study
|
data/lib/locales/es.yml
CHANGED
@@ -16,12 +16,13 @@ es:
|
|
16
16
|
learning_objectives: Objetivos De Aprendizaje
|
17
17
|
stepwise_step_label: Paso
|
18
18
|
references: Referencias
|
19
|
+
answer_key_title: Respuestas Clave
|
19
20
|
eoc_chapter_review: Revisión Del Capítulo
|
20
21
|
eoc_key_terms_title: Términos Clave
|
21
22
|
eoc_summary_title: Resumen
|
22
23
|
eoc_exercises_title: Ejercicios
|
23
24
|
eoc_composite_metadata_title: Revisión Del Capítulo
|
24
|
-
|
25
|
+
eoc_solutions_title: Soluciones
|
25
26
|
eoc_key_concepts: Conceptos Clave
|
26
27
|
eoc_key_equations: Ecuaciones Clave
|
27
28
|
eoc_suggested_reading: Sugerencias Para Estudios Adicionales
|
data/lib/locales/pl.yml
CHANGED
@@ -14,10 +14,11 @@ pl:
|
|
14
14
|
chapter_review: Podsumowanie rozdziału
|
15
15
|
learning_objectives: Cel dydaktyczny
|
16
16
|
stepwise_step_label: Krok
|
17
|
+
answer_key_title: Rozwiązania zadań
|
17
18
|
eoc_chapter_review: Podsumowanie rozdziału
|
18
|
-
|
19
|
+
key_terms_title: Kluczowe pojęcia
|
20
|
+
eoc_solutions_title: Rozwiązania
|
19
21
|
eoc_summary_title: Podsumowanie
|
20
|
-
eoc_answer_key_title: Rozwiązania zadań
|
21
22
|
eoc_key_equations: Najważniejsze wzory
|
22
23
|
eob_index_title: Skorowidz rzeczowy
|
23
24
|
eob_index_symbols_group: Symbole
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openstax_kitchen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 6.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- JP Slavinsky
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-06-
|
11
|
+
date: 2021-06-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -200,7 +200,8 @@ extensions: []
|
|
200
200
|
extra_rdoc_files: []
|
201
201
|
files:
|
202
202
|
- ".devcontainer/devcontainer.json"
|
203
|
-
- ".github/
|
203
|
+
- ".github/workflows/changelog.yml"
|
204
|
+
- ".github/workflows/rubocop.yml"
|
204
205
|
- ".github/workflows/tests.yml"
|
205
206
|
- ".gitignore"
|
206
207
|
- ".inch.yml"
|
@@ -222,6 +223,7 @@ files:
|
|
222
223
|
- docker/bash
|
223
224
|
- docker/build
|
224
225
|
- docker/ci
|
226
|
+
- docker/rubocop
|
225
227
|
- docker/run
|
226
228
|
- docker/tag_and_push_latest
|
227
229
|
- lefthook.yml
|
@@ -245,6 +247,7 @@ files:
|
|
245
247
|
- lib/kitchen/directions/bake_chapter_glossary/main.rb
|
246
248
|
- lib/kitchen/directions/bake_chapter_glossary/v1.rb
|
247
249
|
- lib/kitchen/directions/bake_chapter_introductions.rb
|
250
|
+
- lib/kitchen/directions/bake_chapter_introductions/chapter_introduction.xhtml.erb
|
248
251
|
- lib/kitchen/directions/bake_chapter_key_concepts/main.rb
|
249
252
|
- lib/kitchen/directions/bake_chapter_key_concepts/v1.rb
|
250
253
|
- lib/kitchen/directions/bake_chapter_key_equations.rb
|
@@ -252,6 +255,8 @@ files:
|
|
252
255
|
- lib/kitchen/directions/bake_chapter_references/v1.rb
|
253
256
|
- lib/kitchen/directions/bake_chapter_section_exercises/main.rb
|
254
257
|
- lib/kitchen/directions/bake_chapter_section_exercises/v1.rb
|
258
|
+
- lib/kitchen/directions/bake_chapter_solutions/main.rb
|
259
|
+
- lib/kitchen/directions/bake_chapter_solutions/v1.rb
|
255
260
|
- lib/kitchen/directions/bake_chapter_summary.rb
|
256
261
|
- lib/kitchen/directions/bake_chapter_title/main.rb
|
257
262
|
- lib/kitchen/directions/bake_chapter_title/v1.rb
|
@@ -276,12 +281,17 @@ files:
|
|
276
281
|
- lib/kitchen/directions/bake_non_introduction_pages.rb
|
277
282
|
- lib/kitchen/directions/bake_notes/bake_autotitled_notes.rb
|
278
283
|
- lib/kitchen/directions/bake_notes/bake_note_subtitle.rb
|
279
|
-
- lib/kitchen/directions/bake_notes/bake_numbered_notes.rb
|
284
|
+
- lib/kitchen/directions/bake_notes/bake_numbered_notes/main.rb
|
285
|
+
- lib/kitchen/directions/bake_notes/bake_numbered_notes/v1.rb
|
286
|
+
- lib/kitchen/directions/bake_notes/bake_numbered_notes/v2.rb
|
287
|
+
- lib/kitchen/directions/bake_notes/bake_numbered_notes/v3.rb
|
280
288
|
- lib/kitchen/directions/bake_notes/bake_unclassified_notes.rb
|
281
289
|
- lib/kitchen/directions/bake_numbered_exercise/main.rb
|
282
290
|
- lib/kitchen/directions/bake_numbered_exercise/v1.rb
|
291
|
+
- lib/kitchen/directions/bake_numbered_table/bake_table_body.rb
|
283
292
|
- lib/kitchen/directions/bake_numbered_table/main.rb
|
284
293
|
- lib/kitchen/directions/bake_numbered_table/v1.rb
|
294
|
+
- lib/kitchen/directions/bake_numbered_table/v2.rb
|
285
295
|
- lib/kitchen/directions/bake_page_abstracts.rb
|
286
296
|
- lib/kitchen/directions/bake_preface/main.rb
|
287
297
|
- lib/kitchen/directions/bake_preface/v1.rb
|
@@ -295,7 +305,7 @@ files:
|
|
295
305
|
- lib/kitchen/directions/bake_unit_title/main.rb
|
296
306
|
- lib/kitchen/directions/bake_unit_title/v1.rb
|
297
307
|
- lib/kitchen/directions/bake_unnumbered_tables.rb
|
298
|
-
- lib/kitchen/directions/book_answer_key_container/
|
308
|
+
- lib/kitchen/directions/book_answer_key_container/eob_answer_key_outer_container.xhtml.erb
|
299
309
|
- lib/kitchen/directions/book_answer_key_container/main.rb
|
300
310
|
- lib/kitchen/directions/book_answer_key_container/v1.rb
|
301
311
|
- lib/kitchen/directions/chapter_review_container/chapter_review.xhtml.erb
|
@@ -305,9 +315,11 @@ files:
|
|
305
315
|
- lib/kitchen/directions/move_exercises_to_eoc/main.rb
|
306
316
|
- lib/kitchen/directions/move_exercises_to_eoc/v1.rb
|
307
317
|
- lib/kitchen/directions/move_exercises_to_eoc/v2.rb
|
318
|
+
- lib/kitchen/directions/move_exercises_to_eoc/v3.rb
|
308
319
|
- lib/kitchen/directions/move_solutions_to_answer_key/main.rb
|
309
|
-
- lib/kitchen/directions/move_solutions_to_answer_key/strategies/american_government.rb
|
310
320
|
- lib/kitchen/directions/move_solutions_to_answer_key/strategies/calculus.rb
|
321
|
+
- lib/kitchen/directions/move_solutions_to_answer_key/strategies/default.rb
|
322
|
+
- lib/kitchen/directions/move_solutions_to_answer_key/strategies/precalculus.rb
|
311
323
|
- lib/kitchen/directions/move_solutions_to_answer_key/strategies/uphysics.rb
|
312
324
|
- lib/kitchen/directions/move_solutions_to_answer_key/v1.rb
|
313
325
|
- lib/kitchen/directions/move_title_text_into_span.rb
|
@@ -336,6 +348,7 @@ files:
|
|
336
348
|
- lib/kitchen/page_element_enumerator.rb
|
337
349
|
- lib/kitchen/pantry.rb
|
338
350
|
- lib/kitchen/patches/i18n.rb
|
351
|
+
- lib/kitchen/patches/integer.rb
|
339
352
|
- lib/kitchen/patches/nokogiri.rb
|
340
353
|
- lib/kitchen/patches/nokogiri_profiling.rb
|
341
354
|
- lib/kitchen/patches/renderable.rb
|