rackr 0.0.68 → 0.0.70

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: f73af417da9875005db2b3ee4f61d9c8a646721d97791b1737ec5e3868145cee
4
- data.tar.gz: 984c3a38fa157758f04414c4d963ee901771c535e5dd1e3047a403c649c13a3a
3
+ metadata.gz: c63a7bce25e1ebf0c639ed60beb294a3545e4fe289c9aa46c38ff58d6fabca55
4
+ data.tar.gz: ffd2d3e3d84dc64acd144d38d9ee2169442057b5488fe1268357470f2b3d9ab7
5
5
  SHA512:
6
- metadata.gz: 1f5c8dfaa7a2329474ac15f27a8ba4330f2b53df85b0ddf141e053dfa0b5efb14c6af7bee05c3f8fc70fae968563c33a2b08a7f693db4a3e7e769e9b51a17561
7
- data.tar.gz: 2455b933241dcbae25f6c4ad60ffbd3aab03a1121d16a57b681318461a5e08e9b3c70d54102a2a1869b7f20d041d9383c4f73e1988d7e4137afde586d7cf328d
6
+ metadata.gz: 0664f403387a53ba61fafac89074f0c3878182912ffb0598029c75b123a35c260b8f91fbb61cdfd5405edc13c23d62a6d8db94df1c6073d809e6899b6bf27e4d
7
+ data.tar.gz: 57399280df56f33c0a9be6481e3a0141df615a764bee35c2f2909a5ad65ec5b394f841d5f45c4c7762f99308e024b703439d1747df5eb0cfbdc7c9f0445a5d73
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ class Rackr
4
+ module Action
5
+ # Callbacks for actions
6
+ module Callbacks
7
+ include Rackr::Utils
8
+
9
+ def self.included(base)
10
+ base.extend(ClassMethods)
11
+ base.extend(Rackr::Utils)
12
+ end
13
+
14
+ # Class methods for callbacks
15
+ module ClassMethods
16
+ def before(callback)
17
+ @befores = ensure_array(callback)
18
+ end
19
+
20
+ def befores
21
+ @befores
22
+ end
23
+
24
+ def after(callback)
25
+ @afters = ensure_array(callback)
26
+ end
27
+
28
+ def afters
29
+ @afters
30
+ end
31
+ end
32
+
33
+ def before(callback)
34
+ @befores = ensure_array(callback)
35
+ end
36
+
37
+ def befores
38
+ @befores || self.class.befores || []
39
+ end
40
+
41
+ def after(callback)
42
+ @afters = ensure_array(callback)
43
+ end
44
+
45
+ def afters
46
+ @afters || self.class.afters || []
47
+ end
48
+ end
49
+ end
50
+ end
data/lib/rackr/action.rb CHANGED
@@ -143,16 +143,19 @@ class Rackr
143
143
 
144
144
  def self.included(base)
145
145
  base.class_eval do
146
- if self != Rackr
146
+ if self == Rackr
147
+ include HtmlSlice if Object.const_defined?('HtmlSlice')
148
+ include Stimulux if Object.const_defined?('Stimulux')
149
+ else
147
150
  attr_reader :routes, :config, :deps, :db, :log, :cache
148
151
 
149
- include Callbacks unless included_modules.include?(Rackr::Callback)
152
+ include Callbacks unless include?(Rackr::Callback)
150
153
  end
151
154
 
152
- include HtmlSlice if Object.const_defined?('HtmlSlice')
153
- include Stimulux if Object.const_defined?('Stimulux')
154
-
155
155
  def initialize(routes: nil, config: nil)
156
+ self.class.include(HtmlSlice) if Object.const_defined?('HtmlSlice')
157
+ self.class.include(Stimulux) if Object.const_defined?('Stimulux')
158
+
156
159
  @routes = routes
157
160
  @config = config
158
161
  @deps = config&.dig(:deps)
data/lib/rackr.rb CHANGED
@@ -7,7 +7,7 @@ require_relative 'rackr/router'
7
7
 
8
8
  # Rackr is a simple router for Rack.
9
9
  class Rackr
10
- VERSION = '0.0.68'
10
+ VERSION = '0.0.70'
11
11
 
12
12
  class NotFound < StandardError; end
13
13
 
@@ -31,7 +31,15 @@ class Rackr
31
31
  @router = Router.new(config, before: before, after: after)
32
32
  end
33
33
 
34
- def call(&)
34
+ def include(mod)
35
+ self.class.include(mod)
36
+ end
37
+
38
+ def extend(mod)
39
+ self.class.extend(mod)
40
+ end
41
+
42
+ def app(&)
35
43
  instance_eval(&)
36
44
 
37
45
  @router
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rackr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.68
4
+ version: 0.0.70
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henrique F. Teixeira
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-01-17 00:00:00.000000000 Z
10
+ date: 2026-02-23 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: erubi
@@ -57,7 +57,7 @@ dependencies:
57
57
  - - "<"
58
58
  - !ruby/object:Gem::Version
59
59
  version: '4.0'
60
- description: A friendly web micro-framework.
60
+ description: Rack first web framework.
61
61
  email: hriqueft@gmail.com
62
62
  executables: []
63
63
  extensions: []
@@ -65,6 +65,7 @@ extra_rdoc_files: []
65
65
  files:
66
66
  - lib/rackr.rb
67
67
  - lib/rackr/action.rb
68
+ - lib/rackr/action/callbacks.rb
68
69
  - lib/rackr/callback.rb
69
70
  - lib/rackr/router.rb
70
71
  - lib/rackr/router/build_request.rb
@@ -95,5 +96,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
96
  requirements: []
96
97
  rubygems_version: 3.6.6
97
98
  specification_version: 4
98
- summary: A friendly web micro-framework.
99
+ summary: Rack first web framework.
99
100
  test_files: []