bridgetown-builder 1.0.0.alpha4 → 1.0.0.alpha8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 23d5a5f262d6f8aca6d45490367c468fe33cab06f6353321136418e7ab972730
4
- data.tar.gz: 25ac5f20a634df624e7e7de78668eed4505573a939f5ca2c21adee147783f96d
3
+ metadata.gz: f0af9a4478f4060d0a7857ebd9cc1a5af44d2c76a1d66fa1395128526e0c4ec7
4
+ data.tar.gz: 1028fb0f08360d97ac4bc936f586e657aca87a45e488dea41e716865cefb3721
5
5
  SHA512:
6
- metadata.gz: a11a81432d73c635e2344bcdf01553c979f67333704dc3280647f2b641dc97c16f03c4c1bc31853b26801bd650b78de993fffb50adc497b9ec5607830ed52732
7
- data.tar.gz: 9a9cb41f7c1a81eeaa807fdc3cdb356649cdb9a7900f8811e95c039911f4bdb390cfaed3eb180204dd8f37bf458331c58b9f452ac476b69c0083f1dcd3a7cf47
6
+ metadata.gz: 32568bfe3a6d2e713711354667d4e0efa938dd1e95a3c5821d017db9ca2a8352c1d263be4920ae52cd94a8cce200f3cf6c1cde45080d63094f84f2d7f593010b
7
+ data.tar.gz: b02d3c933c8b850af9fff8bd29728657d5d826c00e1b279b84827b033b93cd0aebbb8e4726bc7768e09b9ac39e27d1352ec959d33dac001d54601f4c25a3b8f1
@@ -15,16 +15,16 @@ module Bridgetown
15
15
  end
16
16
  end
17
17
 
18
- ruby2_keywords def before_build(*args, &block)
19
- set_callback :build, :before, *args, &block
18
+ def before_build(*args, **kwargs, &block)
19
+ set_callback :build, :before, *args, **kwargs, &block
20
20
  end
21
21
 
22
- ruby2_keywords def after_build(*args, &block)
23
- set_callback :build, :after, *args, &block
22
+ def after_build(*args, **kwargs, &block)
23
+ set_callback :build, :after, *args, **kwargs, &block
24
24
  end
25
25
 
26
- ruby2_keywords def around_build(*args, &block)
27
- set_callback :build, :around, *args, &block
26
+ def around_build(*args, **kwargs, &block)
27
+ set_callback :build, :around, *args, **kwargs, &block
28
28
  end
29
29
  end
30
30
 
@@ -8,13 +8,19 @@ module Bridgetown
8
8
  builder_self = self
9
9
  m = Module.new
10
10
 
11
- if block && !helpers_scope
12
- m.define_method helper_name do |*args|
13
- builder_self.instance_exec(*args, &block)
14
- end
15
- else
16
- block = method(method_name) if method_name
11
+ if block && helpers_scope
17
12
  m.define_method helper_name, &block
13
+ else
14
+ method_name ||= helper_name unless block
15
+ unless method_name
16
+ method_name = :"__helper_#{helper_name}"
17
+ builder_self.define_singleton_method(method_name) do |*args, **kwargs, &block2|
18
+ block.(*args, **kwargs, &block2)
19
+ end
20
+ end
21
+ m.define_method helper_name do |*args, **kwargs, &block2|
22
+ builder_self.send(method_name, *args, **kwargs, &block2)
23
+ end
18
24
  end
19
25
 
20
26
  Bridgetown::RubyTemplateView::Helpers.include(m)
@@ -8,13 +8,19 @@ module Bridgetown
8
8
  builder_self = self
9
9
  m = Module.new
10
10
 
11
- if block && !filters_scope
12
- m.define_method filter_name do |*args|
13
- builder_self.instance_exec(*args, &block)
14
- end
15
- else
16
- block = method(method_name) if method_name
11
+ if block && filters_scope
17
12
  m.define_method filter_name, &block
13
+ else
14
+ method_name ||= filter_name unless block
15
+ unless method_name
16
+ method_name = :"__filter_#{filter_name}"
17
+ builder_self.define_singleton_method(method_name) do |*args, **kwargs|
18
+ block.(*args, **kwargs) # rubocop:disable Performance/RedundantBlockCall
19
+ end
20
+ end
21
+ m.define_method filter_name do |*args, **kwargs|
22
+ builder_self.send(method_name, *args, **kwargs)
23
+ end
18
24
  end
19
25
 
20
26
  ::Liquid::Template.register_filter(m)
@@ -23,7 +29,8 @@ module Bridgetown
23
29
  end
24
30
 
25
31
  def liquid_tag(tag_name, method_name = nil, as_block: false, &block)
26
- block = method(method_name) if method_name.is_a?(Symbol)
32
+ method_name ||= tag_name unless block
33
+ block = method(method_name) if method_name
27
34
  local_name = name # pull the name method into a local variable
28
35
 
29
36
  tag_class = as_block ? ::Liquid::Block : ::Liquid::Tag
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bridgetown-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.alpha4
4
+ version: 1.0.0.alpha8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bridgetown Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-19 00:00:00.000000000 Z
11
+ date: 2021-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bridgetown-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0.alpha4
19
+ version: 1.0.0.alpha8
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: 1.0.0.alpha4
26
+ version: 1.0.0.alpha8
27
27
  description:
28
28
  email: maintainers@bridgetownrb.com
29
29
  executables: []