lightrails 0.0.1
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 +7 -0
- data/README.md +48 -0
- metadata +87 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 2f18fc51e53860e4992fa32ffde3ff1448cb75c5c6835a4479766280a1e7e806
|
|
4
|
+
data.tar.gz: c92b74dfcb4f6b45071a3cd690cc2ab21e2e8a9b2a27134275a0c7411179bf01
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: ed096149fad68a184c6f714712f2a6217435d65d557a9bc9d69fc13216460db556a0bb467decdaa3d7f8ba14d455609b6b0b07c888e88449db9abcfc8f2c6559
|
|
7
|
+
data.tar.gz: decef47d75662222682dbb3ab903ab204c5ca319f593a16225077bcb24d06f598aced959f0bd1f2fbbf7c41c1bf522e037b48789b8262178a29da029fa37a680
|
data/README.md
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Lightrails
|
|
2
|
+
|
|
3
|
+
Utility library for Ruby on Rails
|
|
4
|
+
|
|
5
|
+
## Action Interactor
|
|
6
|
+
|
|
7
|
+
Add a standarized service layer to your Rails application.
|
|
8
|
+
|
|
9
|
+
```ruby
|
|
10
|
+
class User
|
|
11
|
+
attr_accessor :name
|
|
12
|
+
|
|
13
|
+
def initialize(params)
|
|
14
|
+
@name = params[:name]
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
class RegistrationInteractor < ActionInteractor::Base
|
|
19
|
+
def execute
|
|
20
|
+
return unless params[:name]
|
|
21
|
+
add_result(:user, User.new(name: params[:name]))
|
|
22
|
+
# complicated business logic
|
|
23
|
+
finish!
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
interactor = RegistrationInteractor.execute(params)
|
|
28
|
+
interactor.success? # => true
|
|
29
|
+
interactor.completed? # => true
|
|
30
|
+
user = interactor.result[:user]
|
|
31
|
+
user.name # => 'John'
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Active Representer
|
|
35
|
+
|
|
36
|
+
Add an API model layer to your Rails application.
|
|
37
|
+
|
|
38
|
+
```ruby
|
|
39
|
+
class UserRepresenter < ActiveRepresenter::Base
|
|
40
|
+
def full_name
|
|
41
|
+
"#{first_name} #{last_name}"
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
user = OpenStruct.new(first_name: 'John', last_name: 'Appleseed')
|
|
46
|
+
representer = UserRepresenter.new(user)
|
|
47
|
+
representer.full_name # => 'John Appleseed'
|
|
48
|
+
```
|
metadata
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: lightrails
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.0.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Ryo Hashimoto
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2018-10-03 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: actioninteractor
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - '='
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: 0.0.1
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - '='
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: 0.0.1
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: activerepresenter
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - '='
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 0.0.1
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - '='
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: 0.0.1
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: bundler
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: 1.3.0
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: 1.3.0
|
|
55
|
+
description: Lightrails is a utility library including ActionInteractor, ActiveRepresenter
|
|
56
|
+
etc. for Ruby on Rails.
|
|
57
|
+
email: ryohashimoto@gmail.com
|
|
58
|
+
executables: []
|
|
59
|
+
extensions: []
|
|
60
|
+
extra_rdoc_files: []
|
|
61
|
+
files:
|
|
62
|
+
- README.md
|
|
63
|
+
homepage: https://github.com/ryohashimoto/lightrails
|
|
64
|
+
licenses:
|
|
65
|
+
- MIT
|
|
66
|
+
metadata: {}
|
|
67
|
+
post_install_message:
|
|
68
|
+
rdoc_options: []
|
|
69
|
+
require_paths:
|
|
70
|
+
- lib
|
|
71
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - ">="
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: 2.2.2
|
|
76
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
77
|
+
requirements:
|
|
78
|
+
- - ">="
|
|
79
|
+
- !ruby/object:Gem::Version
|
|
80
|
+
version: 1.8.11
|
|
81
|
+
requirements: []
|
|
82
|
+
rubyforge_project:
|
|
83
|
+
rubygems_version: 2.7.6
|
|
84
|
+
signing_key:
|
|
85
|
+
specification_version: 4
|
|
86
|
+
summary: Utility library for Ruby on Rails
|
|
87
|
+
test_files: []
|