lookbook 0.7.2.beta.3 → 0.7.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 852092ae163c9f99f18df3ac6ccd9c54fa41050d9eab7c6ce193404af3a73978
4
- data.tar.gz: 47b59f02f782fc536e68cb016ab9d8effe26c58957a6e273568deebdd00217cb
3
+ metadata.gz: 6df32e43d6fbb0a7b88e0db9bbb4bd9562f3528f3a7160463d078daf262954f3
4
+ data.tar.gz: cfbd08c5a4d06a56ef8bd9016139e3d04a4195e2590d5be741e1c238ce390744
5
5
  SHA512:
6
- metadata.gz: e1e15295d9ee395d05b2971f4441387219d99b358020ff4a83816229ce2ca63ac3c30f5d2c74938c37bcff579abc34105caa37ed38183f7e3888b176c62f0fb9
7
- data.tar.gz: 8ac54bd1cf4d4044c9ff037cc1ccf44fd6d674fbb643e35aa1b98e729eaa5dbc8636233bc7461ab0670ecdfc1cfd5ed9251dd03d86ede5595a0274f3db01581a
6
+ metadata.gz: bd42877713e33dc0ad3d1bf4fddc1ab561171d01417f6b415ceda15abeeba45996c9e0478afb02117363a1686b063daf1e283ff0f84c6d0b591c59c50e0ba744
7
+ data.tar.gz: e12acc1799810736e3f5bad6e3d096f7c1f68ddb0de5b0d1aa0324f1b7b0bd707d733750c5ed8a56cb3ab87d921036cd7b340927971186f98bbf5a402d41acf0
@@ -66,7 +66,7 @@ module Lookbook
66
66
  {
67
67
  label: example.label,
68
68
  notes: example.notes,
69
- html: preview_controller.render_example_to_string(@preview, example.name),
69
+ html: preview_controller.process(:render_example_to_string, @preview, example.name),
70
70
  source: has_template ? example.template_source(render_args[:template]) : example.method_source,
71
71
  source_lang: has_template ? example.template_lang(render_args[:template]) : example.source_lang,
72
72
  params: example.params
@@ -74,7 +74,7 @@ module Lookbook
74
74
  end
75
75
 
76
76
  def render_examples(examples)
77
- preview_controller.render_in_layout_to_string("layouts/lookbook/preview", {examples: examples}, @preview.layout)
77
+ preview_controller.process(:render_in_layout_to_string, "layouts/lookbook/preview", {examples: examples}, @preview.layout)
78
78
  end
79
79
 
80
80
  def set_params
@@ -167,7 +167,6 @@ module Lookbook
167
167
  message_parts = exception.message.split("\n").first.split
168
168
  component_class = message_parts.first.constantize
169
169
  naughty_method = message_parts.last.delete("#").delete("`").delete(".")
170
- p naughty_method
171
170
  method = component_class.instance_method(naughty_method.to_sym)
172
171
  if method
173
172
  {
@@ -87,29 +87,22 @@ module Lookbook
87
87
  parser.parse
88
88
  rescue
89
89
  end
90
- if Lookbook::Engine.websocket
91
- if modified.any? || removed.any? || added.none?
92
- Lookbook::Engine.websocket.broadcast("reload", {
93
- modified: modified,
94
- removed: removed,
95
- added: added
96
- })
97
- end
98
- end
90
+ Lookbook::Preview.clear_cache
91
+ Lookbook::Engine.websocket&.broadcast("reload", {
92
+ modified: modified,
93
+ removed: removed,
94
+ added: added
95
+ })
99
96
  end
100
97
  @preview_listener.start
101
98
 
102
99
  if Lookbook::Features.enabled?(:pages)
103
100
  @page_listener = Listen.to(*config.lookbook.page_paths.filter { |dir| Dir.exist? dir }, only: /\.(html.*|md.*)$/) do |modified, added, removed|
104
- if Lookbook::Engine.websocket
105
- if modified.any? || removed.any? || added.any?
106
- Lookbook::Engine.websocket.broadcast("reload", {
107
- modified: modified,
108
- removed: removed,
109
- added: added
110
- })
111
- end
112
- end
101
+ Lookbook::Engine.websocket&.broadcast("reload", {
102
+ modified: modified,
103
+ removed: removed,
104
+ added: added
105
+ })
113
106
  end
114
107
  @page_listener.start
115
108
  end
@@ -96,9 +96,15 @@ module Lookbook
96
96
  !!find(path)
97
97
  end
98
98
 
99
+ def clear_cache
100
+ @previews = nil
101
+ end
102
+
99
103
  def all
100
104
  load_previews if preview_files.size > ViewComponent::Preview.descendants.size
101
105
 
106
+ return @previews if @previews.present?
107
+
102
108
  previews = ViewComponent::Preview.descendants.map do |p|
103
109
  new(p)
104
110
  rescue
@@ -112,7 +118,7 @@ module Lookbook
112
118
  end
113
119
 
114
120
  sorted_previews = previews.compact.sort_by { |preview| [preview.position, preview.label] }
115
- PreviewCollection.new(sorted_previews)
121
+ @previews ||= PreviewCollection.new(sorted_previews)
116
122
  end
117
123
 
118
124
  def errors
@@ -125,7 +131,7 @@ module Lookbook
125
131
  @errors = []
126
132
  preview_files.each do |file|
127
133
  require_dependency file[:path]
128
- rescue => exception
134
+ rescue SyntaxError, StandardError => exception
129
135
  @errors.push(
130
136
  Lookbook::Error.new(exception,
131
137
  title: "Preview #{exception.class}",
@@ -11,12 +11,12 @@ module Lookbook
11
11
  opts = {}
12
12
  opts[:layout] = nil
13
13
  opts[:locals] = locals if locals.present?
14
- render_to_string template, opts
14
+ render html: render_to_string(template, **opts)
15
15
  end
16
16
 
17
17
  def render_in_layout_to_string(template, locals, layout = nil)
18
18
  append_view_path Lookbook::Engine.root.join("app/views")
19
- render_to_string template, locals: locals, **determine_layout(layout)
19
+ render html: render_to_string(template, locals: locals, **determine_layout(layout))
20
20
  end
21
21
  end
22
22
  end
@@ -31,7 +31,11 @@ module Lookbook
31
31
  end
32
32
 
33
33
  def display_params
34
- {}
34
+ merged = {}
35
+ examples.reverse.map do |example|
36
+ merged.merge! example.display_params
37
+ end
38
+ merged
35
39
  end
36
40
 
37
41
  def hidden?
@@ -1,3 +1,3 @@
1
1
  module Lookbook
2
- VERSION = "0.7.2.beta.3"
2
+ VERSION = "0.7.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lookbook
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2.beta.3
4
+ version: 0.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Perkins
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-02 00:00:00.000000000 Z
11
+ date: 2022-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actioncable
@@ -325,9 +325,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
325
325
  version: '0'
326
326
  required_rubygems_version: !ruby/object:Gem::Requirement
327
327
  requirements:
328
- - - ">"
328
+ - - ">="
329
329
  - !ruby/object:Gem::Version
330
- version: 1.3.1
330
+ version: '0'
331
331
  requirements: []
332
332
  rubygems_version: 3.2.22
333
333
  signing_key: