nfg_ui 0.11.0 → 0.11.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 +4 -4
- data/README.md +40 -0
- data/Rakefile +28 -2
- data/lib/nfg_ui/components/elements/avatar.rb +1 -1
- data/lib/nfg_ui/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f0724b78919c0829c296004c09b2bae90a2b0492bc4d637c28a2a4dc5c5c4d7f
|
4
|
+
data.tar.gz: 9e8841a495673888802bb12df9bb9d3b92b32ad7042c6a2ee458f980c189c71b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 40b97acfd1869140887b904f0c6a275f96290f67b6dd9f0b1ddba242fc9947f429e3efdc3b5c70805e93fc5aef55d139e99cb53fc52a1981adca6f18719e5e8d
|
7
|
+
data.tar.gz: d4dafdd6a2f3a401266526259ddb12a773b927557f4d12c06547a034516c3cffa669b5545421227fe3dd2a6c23bd89a1579dfe657c4afd0793d2626bb329b557
|
data/README.md
CHANGED
@@ -88,6 +88,46 @@ Examples:
|
|
88
88
|
= ui.nfg :icon, 'trash', class: 'mr-1', text: 'Delete Row'
|
89
89
|
```
|
90
90
|
|
91
|
+
## Asset publishing
|
92
|
+
|
93
|
+
### Depedency Installation
|
94
|
+
|
95
|
+
NFG UI assets are published for cross-site usage to a publicly-accessible AWS S3 bucket (`s3://nfg-ui/v#.##.#/`) using the AWS command-line interface:
|
96
|
+
|
97
|
+
1. [Install the AWS command-line interface](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-mac.html#cliv2-mac-install-gui)
|
98
|
+
2. Install AWS credentials provided by anyone on the team who has permissions to mint IAM users (such as Mike or Timothy). The credentials are sensitive and should be stored at `~/.aws/credentials`. See example below.
|
99
|
+
3. (Optional but recommended) Install `~/.aws/config` per below to set a default region for S3 operations.
|
100
|
+
|
101
|
+
```
|
102
|
+
# Example ~/.aws/credentials file
|
103
|
+
|
104
|
+
[default]
|
105
|
+
aws_access_key_id = ####################
|
106
|
+
aws_secret_access_key = ########################################
|
107
|
+
|
108
|
+
# Example ~/.aws/config
|
109
|
+
[default]
|
110
|
+
region = us-east-1
|
111
|
+
```
|
112
|
+
|
113
|
+
4. Use the following command to confirm successful installation:
|
114
|
+
|
115
|
+
```
|
116
|
+
aws s3 ls --recursive s3://nfg-ui/
|
117
|
+
```
|
118
|
+
|
119
|
+
### Workflow
|
120
|
+
|
121
|
+
After `rake release` successfully completes, the `rake publish` task will run. This command wraps a separate `rake publish` task contained within the `/publisher` subdirectory.
|
122
|
+
`/publisher` contains a skeleton Rails app. The `rake publish` task contained within `/publisher` precompiles the assets that are part of the new `nfg_ui` release and uploads them to S3.
|
123
|
+
|
124
|
+
If necessary, `rake publish` can be invoked from within the `nfg_ui` parent directory, separately:
|
125
|
+
|
126
|
+
```
|
127
|
+
rake publish # upload assets to S3; fails if files are already exist for the release
|
128
|
+
rake publish[override] # uploads assets to S3 without checking for existing files
|
129
|
+
```
|
130
|
+
|
91
131
|
#### Trait details
|
92
132
|
Traits are designed to allow you to speedily build components, or pre-design complex components using meaningful symbols.
|
93
133
|
|
data/Rakefile
CHANGED
@@ -15,9 +15,35 @@ RDoc::Task.new(:rdoc) do |rdoc|
|
|
15
15
|
end
|
16
16
|
|
17
17
|
APP_RAKEFILE = File.expand_path("spec/test_app/Rakefile", __dir__)
|
18
|
-
load 'rails/tasks/engine.rake'
|
19
|
-
|
20
18
|
|
19
|
+
load 'rails/tasks/engine.rake'
|
21
20
|
load 'rails/tasks/statistics.rake'
|
22
21
|
|
23
22
|
require 'bundler/gem_tasks'
|
23
|
+
|
24
|
+
desc <<~DESC
|
25
|
+
Publish precompiled assets to s3://nfg-ui. This task is automatically invoked after successful "rake release" and normally it should not be called directly.
|
26
|
+
Requires installation of AWS CLI: https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html
|
27
|
+
Please see additional instructions in README.md.
|
28
|
+
DESC
|
29
|
+
task :publish, %i[override_flag] do |_, override_flag: nil|
|
30
|
+
require 'fileutils'
|
31
|
+
|
32
|
+
version = Bundler.load_gemspec("#{__dir__}/nfg_ui.gemspec").version
|
33
|
+
puts "Compiling and publishing NFG UI v#{version} assets"
|
34
|
+
|
35
|
+
subtask_args = version.to_s
|
36
|
+
subtask_args << ",#{override_flag}" if override_flag
|
37
|
+
|
38
|
+
Dir.chdir("#{__dir__}/publisher") do
|
39
|
+
Bundler.with_clean_env do
|
40
|
+
sh "RAILS_ENV=production bundle exec rake publish[#{subtask_args}]" do |ok, _|
|
41
|
+
puts 'unable to publish assets' unless ok
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
Rake::Task['release'].enhance do
|
48
|
+
Rake::Task['publish'].invoke # runs :publish task after successful release
|
49
|
+
end
|
@@ -21,7 +21,7 @@ module NfgUi
|
|
21
21
|
def render
|
22
22
|
content_tag(as, html_options) do
|
23
23
|
if image.present?
|
24
|
-
image_tag image, alt: alt.presence
|
24
|
+
image_tag view_context.image_path(image), alt: alt.presence
|
25
25
|
elsif body.present?
|
26
26
|
content_tag(:span, (block_given? ? yield : body), class: body_css_class)
|
27
27
|
end
|
data/lib/nfg_ui/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nfg_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Roehm
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-09-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bootstrap
|