molecule 0.3.0 → 1.2.3

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: 880dd96fcd18724b9aeee6af621dcd630bd2d4c6aba57b226cc9fb2fedafbce6
4
- data.tar.gz: 11ce6b4b128b418bb8f890bf7b168dd750f1f7f205470e9baf9997034508b9a0
3
+ metadata.gz: 89f39d6db182600e792cf8c05fdc74461997e63c7e42b8b7790944815d92eee1
4
+ data.tar.gz: 0c57c03f0caf64bdd4394fbd2a94c4cdd2cb7f64391eb92e4cf427f7afea82ba
5
5
  SHA512:
6
- metadata.gz: accb019319bf639930bcd5d7fb62efa506cb21aaad457151af46c94202b323de4eb4df55a2a02e6c6dfe5a884c994ad713c08734130344daf0bfa584f1dca15e
7
- data.tar.gz: 19ebeb0970d2aa1f315f02482729b54c974d5f521f38b29a1dd8bd75eef56f11bacab36ed8cdb896bf08107e6ba576bf5c26b83598918022e88f8a277245cb7d
6
+ metadata.gz: '00978af2e916b035d816782ea5ca1e078fc611f138c0f303ab9196b96e1fbe4adcbbd8197fd3f764bb5c0093508453f1df3946f1ef2a28fb3c4864f184bbc5c0'
7
+ data.tar.gz: 1e1008d2fd584c0dca2b41ceb8ac22094c8b9f92e553a11a45b0fb91ec85a00033aa3e4b6abb862a6543b53bf7cbabd01352b300e9344cfbc761f24767950989
@@ -2,30 +2,30 @@ module Molecule
2
2
 
3
3
  module Helper
4
4
 
5
- def molecule_inline_style molecule_name
5
+ def molecule_inline_style molecule_name = default_molecule_name
6
6
  content_tag(:style, molecule_asset_contents(molecule_name, 'inline', 'styles')).html_safe
7
7
  end
8
8
 
9
- def molecule_inline_script molecule_name
9
+ def molecule_inline_script molecule_name = default_molecule_name
10
10
  content_tag(:script, molecule_asset_contents(molecule_name, 'inline', 'scripts')).html_safe
11
11
  rescue
12
12
  Rails.logger.warn "no inline script for '#{molecule_name}'"
13
13
  ''
14
14
  end
15
15
 
16
- def molecule_defer_style molecule_name
16
+ def molecule_defer_style molecule_name = default_molecule_name
17
17
  relative_link = molecule_relative_path(molecule_name, 'defer', 'styles')
18
18
  content_tag(:noscript, class: 'defered-style') do
19
19
  content_tag(:link, '', {rel: :stylesheet, type: 'text/css', href: relative_link}).html_safe
20
20
  end.html_safe
21
21
  end
22
22
 
23
- def molecule_defer_script molecule_name
23
+ def molecule_defer_script molecule_name = default_molecule_name
24
24
  relative_link = molecule_relative_path(molecule_name, 'defer', 'scripts')
25
25
  content_tag(:script, '', {defer: :defer, src: relative_link}).html_safe
26
26
  end
27
27
 
28
- def molecule_inject_script_name molecule_name
28
+ def molecule_inject_script_name molecule_name = default_molecule_name
29
29
  relative_link = molecule_relative_path(molecule_name, 'defer', 'scripts')
30
30
  content_tag(:script, "window.script_name='#{relative_link}';".html_safe).html_safe
31
31
  rescue
@@ -60,10 +60,14 @@ module Molecule
60
60
  private
61
61
 
62
62
 
63
+ def default_molecule_name
64
+ "#{controller_name}_#{action_name}"
65
+ end
66
+
63
67
  def find_asset molecule_name, asset_group, asset_type
64
68
  config = load_manifest(molecule_name, asset_group, asset_type)
65
69
  suffix = suffix_for_type(asset_type)
66
- asset_slug = "#{molecule_name}-#{asset_group}.#{suffix}"
70
+ asset_slug = "#{molecule_name}-#{asset_type}-#{asset_group}.#{suffix}"
67
71
  asset = config[asset_slug]
68
72
  return suffix, asset
69
73
  end
@@ -90,7 +94,7 @@ module Molecule
90
94
  end
91
95
 
92
96
  def manifest_path molecule_name, asset_group, asset_type
93
- Rails.root.join('public', 'manifests', "#{molecule_name}/#{asset_group}-#{asset_type}.json")
97
+ Rails.root.join('public', 'manifests', "#{molecule_name}/#{asset_type}-#{asset_group}.json")
94
98
  end
95
99
  end
96
100
 
@@ -6,13 +6,13 @@ module Molecule
6
6
  class Renderer < ::ActionView::PartialRenderer
7
7
 
8
8
  # narrow template lookup path to the provided molecule
9
- def render context, options, &block
9
+ def render context, &block
10
10
  @@stack ||= ::Molecule::Stack.new
11
- with_member_override(:view_paths, molecule_view_paths(options)) do
12
- with_member_override(:prefixes, [molecule_prefix(options)]) do
13
- with_dependency_check(options[:molecule]) do
14
- with_new_molecule(options[:molecule]) do
15
- result = super(context, options, block).body
11
+ with_member_override(:view_paths, molecule_view_paths) do
12
+ with_member_override(:prefixes, [molecule_prefix]) do
13
+ with_dependency_check(@options[:molecule]) do
14
+ with_new_molecule(@options[:molecule]) do
15
+ result = super(@options[:molecule], context, block).body
16
16
  end
17
17
  end
18
18
  end
@@ -58,18 +58,18 @@ module Molecule
58
58
  @lookup_context.find_template(path, prefixes, false, locals, @details)
59
59
  end
60
60
 
61
- def molecule_view_paths options
62
- ::ActionView::PathSet.new([molecule_template_path(options)])
61
+ def molecule_view_paths
62
+ ::ActionView::PathSet.new([molecule_template_path])
63
63
  end
64
64
 
65
65
  # molecules path
66
- def molecule_template_path options
66
+ def molecule_template_path
67
67
  Rails.root.join('app', 'molecules')
68
68
  end
69
69
 
70
70
  # path for current molecule
71
- def molecule_prefix options
72
- "#{options[:molecule].to_s}/views"
71
+ def molecule_prefix
72
+ "#{@options[:molecule].to_s}/views"
73
73
  end
74
74
 
75
75
  # default template entrypoint
@@ -80,3 +80,4 @@ module Molecule
80
80
  end
81
81
 
82
82
  end
83
+
@@ -6,7 +6,7 @@ module Molecule
6
6
 
7
7
  def render(context, options)
8
8
  if options.key?(:molecule)
9
- ::Molecule::Renderer.new(@lookup_context).render(context, options)
9
+ ::Molecule::Renderer.new(@lookup_context, options).render(context)
10
10
  else
11
11
  super
12
12
  end
@@ -1,3 +1,3 @@
1
1
  module Molecule
2
- VERSION = '0.3.0'
2
+ VERSION = '1.2.3'
3
3
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: molecule
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dirk Gustke
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-22 00:00:00.000000000 Z
11
+ date: 2021-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '6'
19
+ version: '6.1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '6'
26
+ version: '6.1'
27
27
  description: provide and use template and assets in a self-contained way
28
28
  email:
29
29
  - code+molecule@asm68k.org
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.0.3
78
+ rubygems_version: 3.1.2
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: provide and use template and assets in a self-contained way