nacelle 0.3.2 → 0.4.1

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: fddb49454b875b128c22c7a91263b9ef907d91d795dfba093dd21148d8db5ff7
4
- data.tar.gz: 6eb1b433fb3486b60b2a8f8064eb73fa8f6b5d8572363e46a0c6574232c84804
3
+ metadata.gz: a2aa341119fd0201b70a71abf8f366b608223fb74e2db9e9985f7aff735c8a6b
4
+ data.tar.gz: 02c91e3e00d8cf95c4ade75d2290aa65912f6d4d0cbe735a95216220dda95a55
5
5
  SHA512:
6
- metadata.gz: ebb593f685e118e2862f2b15d0c8094d4d6bc5458e9d0be8566a67cc2302950a155146d8e317d586f27b24ced5d23d1b0345bc9750738c5753695c5d12fae9b6
7
- data.tar.gz: e641fe10a84be8d951d78cda66b18ce9859d9c976a18d9f1f82c83eaa47888fe8287c316b2b153bda1e53b68ce8cfa76295c21988b6987441c9153208bc33394
6
+ metadata.gz: 43573106f5ccbe4c14ac8e28fff16d224ca9ed46fb7b237059299bec498a08dd19bcdfb3d4c78a23d3024ba496c9e9dca11414d9df7c8dedd995dc69522fac01
7
+ data.tar.gz: ba61e2ef31e91148fefd8dbea30852478e8c2dcad34a6563894465038a0b9ddd004d24b5fdd54a42b1488c7743a0d26aa9621e9df3eb3c08b147a5512aa57d0e
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- nacelle (0.3.2)
4
+ nacelle (0.4.1)
5
5
  cells (~> 3.0)
6
6
  rails
7
7
  sprockets-rails
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- nacelle (0.3.2)
4
+ nacelle (0.4.1)
5
5
  cells (~> 3.0)
6
6
  rails
7
7
  sprockets-rails
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- nacelle (0.3.2)
4
+ nacelle (0.4.1)
5
5
  cells (~> 3.0)
6
6
  rails
7
7
  sprockets-rails
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- nacelle (0.3.2)
4
+ nacelle (0.4.1)
5
5
  cells (~> 3.0)
6
6
  rails
7
7
  sprockets-rails
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- nacelle (0.3.2)
4
+ nacelle (0.4.1)
5
5
  cells (~> 3.0)
6
6
  rails
7
7
  sprockets-rails
data/lib/nacelle/cell.rb CHANGED
@@ -3,6 +3,14 @@ require "cells"
3
3
  module Nacelle
4
4
  class Cell < Cell::Base
5
5
  self.view_paths += %w[app/cells app/views]
6
+
7
+ def self.new_with_request request
8
+ new.tap { |cell| cell.instance_variable_set :@request, request }
9
+ end
10
+
11
+ private def request
12
+ @request
13
+ end
6
14
  end
7
15
  end
8
16
 
@@ -15,20 +15,20 @@ module Nacelle
15
15
 
16
16
  new_body = ""
17
17
  body.each { |part| new_body << part }
18
- process! new_body
19
- headers["Content-Length"] = new_body.length.to_s
18
+ process! new_body, env
19
+ headers.delete("Content-Length")
20
20
  [status, headers, [new_body]]
21
21
  end
22
22
 
23
23
  private
24
24
 
25
- def process! body
25
+ def process! body, env
26
26
  cells = cells body
27
27
 
28
28
  body.gsub!(/(#{cells.keys.join('|')})/) do |tag|
29
29
  name, state, attrs = cells[tag]
30
30
  attrs = HashWithIndifferentAccess.new(attrs)
31
- cell = "#{name.camelize}Cell".constantize.new
31
+ cell = "#{name.camelize}Cell".constantize.new_with_request(Rack::Request.new(env))
32
32
  args = [state]
33
33
  attrs.delete "class" # ignore styling class
34
34
  args << attrs unless attrs.empty?
@@ -1,3 +1,3 @@
1
1
  module Nacelle
2
- VERSION = "0.3.2"
2
+ VERSION = "0.4.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nacelle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Geisel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-23 00:00:00.000000000 Z
11
+ date: 2022-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -196,7 +196,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
196
196
  - !ruby/object:Gem::Version
197
197
  version: '0'
198
198
  requirements: []
199
- rubygems_version: 3.0.8
199
+ rubygems_version: 3.2.32
200
200
  signing_key:
201
201
  specification_version: 4
202
202
  summary: Embed cells in the markup of your CMS.