bridgetown-builder 1.0.0.alpha7 → 1.0.0.alpha11

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: cbe353b4c0d8d4b7777c00132529c1666c75e265fad46ac95ae656b1b9eb99c2
4
- data.tar.gz: 15ffffb1c35938d6104925d06507982de473e879e25575f7846348f0713ea0bd
3
+ metadata.gz: 07531111dde6e954929b95bbface302ab23bb8447b7ab11059f75119982f295a
4
+ data.tar.gz: e571f7c404fc5ce4ac6edbc25c34e01af537662463b2f2b7e290161a477971ea
5
5
  SHA512:
6
- metadata.gz: 274b7e14da077be9b652e2f080bf939e34bcf0a72d759d9405d80ae0d67fe28b9b4eacd4088b5297945345a8701b3779d48394920edc94deef13ba7c70d0dcf4
7
- data.tar.gz: 8296330ca5e566c76ec7fb62e0301d00aad8ad91d634481cda9a4f1952177dfaeae694abe540350a5ad0509be65592c40d4cc96406c893e4d76e7ca99f759638
6
+ metadata.gz: 969d8ab776e8d08b3acd2268be938c4aeee848f02b6d6e11085ee3980bf0fbad77e8891038dbe64f5b55ea020ec7fe3b9ec21b2a1c7deb9712a2c862c506e7f9
7
+ data.tar.gz: f3bde3e6fb89a7168544a5b613e093172361351ca46f610d7b29038b9efaa034787a2636c549374f98906062d6a6ed7ac09967fda01150332dfd2cb8995c95c9
@@ -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.alpha7
4
+ version: 1.0.0.alpha11
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-11-05 00:00:00.000000000 Z
11
+ date: 2021-11-29 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.alpha7
19
+ version: 1.0.0.alpha11
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.alpha7
26
+ version: 1.0.0.alpha11
27
27
  description:
28
28
  email: maintainers@bridgetownrb.com
29
29
  executables: []