bridgetown-builder 2.0.0.beta2 → 2.0.0.beta4

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: 5988f5c80e105125c96f5fafb1a62e1b658271aaa1e5ae1f7a18699194213a76
4
- data.tar.gz: 5eb9cfed91973c392f207c36e89205b1545c34c817499f8ca98b6b57955c40bd
3
+ metadata.gz: 7e8d8bc4d32f6a07082eb2d7c6e6820e01739f21a5742a5abb4374f2bf13c020
4
+ data.tar.gz: 4752ab1d7c675a7e25c168cf5404cdf6a1c0cf50555169d8a6b5bed6cf0d719f
5
5
  SHA512:
6
- metadata.gz: 9d69e072c3b9ae899ccc16cd2836fc5a90677b4245e62e347a9921cd3a41dbbf009aae2a73dce3295ca6626f16204f64b337bd0d0d6608c97cb4d4ae9f67528d
7
- data.tar.gz: 8318fa593a7c4cc620e6a3a1d5b4df5fc21725fb5cffaf25f8e7aba155270be40ba3eead5ec17d8bfa41b7990a8112fba292aae399c06d80b4772fe9071d5aea
6
+ metadata.gz: 01a130851dae1ed4b8b844cbacf83617d7e9c6bb4894c6afb4ed9ac5fb0213800aef4483c2cb374917d0b955b842994530f9bb13bb4bfaac7a0a55dd7d9ea936
7
+ data.tar.gz: bbff78bed9825f28cadd3974496b74a64f6033e45c0e948d45196fa3667ed19dadd07fee3ccfd528a0e4d5764d7b86897a5aec19784ff677d8b7d4d195a6476c
@@ -4,6 +4,10 @@ module Bridgetown
4
4
  module Builders
5
5
  module DSL
6
6
  module Generators
7
+ # Set up a new generator based on the block or method provided which will run alongside
8
+ # other generators during the build process
9
+ #
10
+ # @param method_name [Symbol] use a Builder method rather than a block to run
7
11
  def generator(method_name = nil, &block)
8
12
  block = method(method_name) if method_name.is_a?(Symbol)
9
13
  local_name = name # pull the name method into a local variable
@@ -5,9 +5,15 @@ module Bridgetown
5
5
  module DSL
6
6
  module Helpers
7
7
  def helpers
8
- @helpers # could be nil
8
+ @helpers # could be nil. gets set once a helper method is actually called
9
9
  end
10
10
 
11
+ # Define a helper for use in view templates, alongside built-in helpers, using either a
12
+ # builder method or a block
13
+ #
14
+ # @param helper_name [Symbol] name of the helper
15
+ # @param method_name [Symbol] name of a Builder method to use, if block isn't provided
16
+ # and the method is named different from the helper
11
17
  def helper(helper_name, method_name = nil, &block)
12
18
  m = Module.new
13
19
 
@@ -4,6 +4,13 @@ module Bridgetown
4
4
  module Builders
5
5
  module DSL
6
6
  module Hooks
7
+ # Define a hook to run at some point during the build process
8
+ #
9
+ # @param owner [Symbol] name of the owner (`:site`, `:resource`, etc.)
10
+ # @param event [Symbol] name of the event (`:pre_read`, `:post_render`, etc.)
11
+ # @param method_name [Symbol] name of a Builder method to use, if block isn't provided
12
+ # @param priority [Integer, Symbol] either `:low`, `:normal`, or `:high`, or an integer.
13
+ # Default is normal (20)
7
14
  def hook(
8
15
  owner,
9
16
  event,
@@ -17,9 +24,13 @@ module Bridgetown
17
24
  functions << { name:, hook: [owner, event, priority, hook_block] }
18
25
  end
19
26
 
27
+ # Define a site post_read hook and add data returned by the block to the site data/signals
20
28
  def add_data(data_key)
21
29
  hook(:site, :post_read) do
22
- site.data[data_key] = yield
30
+ yield.tap do |value|
31
+ site.data[data_key] = value
32
+ site.signals[data_key] = value
33
+ end
23
34
  end
24
35
  end
25
36
  end
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: 2.0.0.beta2
4
+ version: 2.0.0.beta4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bridgetown Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-18 00:00:00.000000000 Z
11
+ date: 2025-01-16 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: 2.0.0.beta2
19
+ version: 2.0.0.beta4
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: 2.0.0.beta2
26
+ version: 2.0.0.beta4
27
27
  description:
28
28
  email: maintainers@bridgetownrb.com
29
29
  executables: []