vite_ruby 3.0.5 → 3.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +36 -0
- data/lib/tasks/vite.rake +1 -1
- data/lib/vite_ruby/cli/install.rb +2 -1
- data/lib/vite_ruby/config.rb +7 -1
- data/lib/vite_ruby/dev_server_proxy.rb +7 -3
- data/lib/vite_ruby/version.rb +3 -3
- data/lib/vite_ruby.rb +6 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 359e71c1ab4e22eb0b106b478e85687cc5ec5bdac963dcf070a54722957772bc
|
4
|
+
data.tar.gz: 0b636225fb843443d2007cd9616aa937952d79f6764c1bd5576908e959bcfae6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ed0d0628132fb27494d33e5fe6c6fcd472105c465b28b93cb356196e3d04440107a687663d432777c37ac930bace38afa3a9d2ff74495ab0342d39a7c4b33d33
|
7
|
+
data.tar.gz: 51d0256a85c7865249de78f71544564b96f17eff871819e37efde21fff136eb95e90bf66c1fcae7a0c96a6fbc74e7e6b238d30fe9a6b33a0373dbcf77eab8844
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,39 @@
|
|
1
|
+
## [3.0.9](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.8...vite_ruby@3.0.9) (2022-02-09)
|
2
|
+
|
3
|
+
|
4
|
+
### Bug Fixes
|
5
|
+
|
6
|
+
* support older versions of npm (v6) that ship with node 12 and 14 ([0accc36](https://github.com/ElMassimo/vite_ruby/commit/0accc36e9ef82fa0923af4f94253433433c0b074))
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
## [3.0.8](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.7...vite_ruby@3.0.8) (2022-01-18)
|
11
|
+
|
12
|
+
|
13
|
+
### Bug Fixes
|
14
|
+
|
15
|
+
* remove .DS_Store from installation .gitignore ([#178](https://github.com/ElMassimo/vite_ruby/issues/178)) ([5a0931d](https://github.com/ElMassimo/vite_ruby/commit/5a0931d63318ab5b1bf9ead680540c015afd471a))
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
## [3.0.7](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.6...vite_ruby@3.0.7) (2021-12-27)
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
## [3.0.6](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.5...vite_ruby@3.0.6) (2021-12-24)
|
24
|
+
|
25
|
+
|
26
|
+
### Bug Fixes
|
27
|
+
|
28
|
+
* allow providing an empty public output dir (close [#161](https://github.com/ElMassimo/vite_ruby/issues/161)) ([#164](https://github.com/ElMassimo/vite_ruby/issues/164)) ([ef48c9b](https://github.com/ElMassimo/vite_ruby/commit/ef48c9b39084a96364a783fa670bd6ec68dfa289))
|
29
|
+
|
30
|
+
|
31
|
+
### Features
|
32
|
+
|
33
|
+
* support ruby config file for advanced configuration (close [#162](https://github.com/ElMassimo/vite_ruby/issues/162)) ([34e63fd](https://github.com/ElMassimo/vite_ruby/commit/34e63fdd546078dfc94f2c546b096aa296a47d37))
|
34
|
+
|
35
|
+
|
36
|
+
|
1
37
|
## [3.0.5](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.4...vite_ruby@3.0.5) (2021-12-17)
|
2
38
|
|
3
39
|
|
data/lib/tasks/vite.rake
CHANGED
@@ -31,7 +31,7 @@ namespace :vite do
|
|
31
31
|
|
32
32
|
desc 'Ensures build dependencies like Vite are installed when compiling assets'
|
33
33
|
task :install_dependencies do
|
34
|
-
system({ 'NODE_ENV' => 'development' }, 'npx --yes
|
34
|
+
system({ 'NODE_ENV' => 'development' }, 'npx ci --yes')
|
35
35
|
end
|
36
36
|
|
37
37
|
desc "Provide information on ViteRuby's environment"
|
data/lib/vite_ruby/config.rb
CHANGED
@@ -43,6 +43,12 @@ class ViteRuby::Config
|
|
43
43
|
root.join(source_code_dir)
|
44
44
|
end
|
45
45
|
|
46
|
+
# Public: Loads an optional config/vite.rb file that can modify ViteRuby.env
|
47
|
+
def load_ruby_config
|
48
|
+
rb_config_path = File.expand_path(config_path.sub(/.json$/, '.rb'), root)
|
49
|
+
load rb_config_path if File.exist?(rb_config_path)
|
50
|
+
end
|
51
|
+
|
46
52
|
# Public: Sets additional environment variables for vite-plugin-ruby.
|
47
53
|
def to_env
|
48
54
|
CONFIGURABLE_WITH_ENV.each_with_object({}) do |option, env|
|
@@ -59,7 +65,7 @@ class ViteRuby::Config
|
|
59
65
|
dir.start_with?('~/') || dir.start_with?(source_code_dir)
|
60
66
|
},
|
61
67
|
"#{ source_code_dir }/**/*",
|
62
|
-
config_path,
|
68
|
+
config_path.sub(/.json$/, '.{rb,json}'),
|
63
69
|
*DEFAULT_WATCHED_PATHS,
|
64
70
|
].freeze
|
65
71
|
end
|
@@ -31,10 +31,14 @@ private
|
|
31
31
|
|
32
32
|
def rewrite_uri_for_vite(env)
|
33
33
|
uri = env.fetch('REQUEST_URI') { [env['PATH_INFO'], env['QUERY_STRING']].reject { |str| str.to_s.strip.empty? }.join('?') }
|
34
|
+
env['PATH_INFO'], env['QUERY_STRING'] = (env['REQUEST_URI'] = normalize_uri(uri)).split('?')
|
35
|
+
end
|
36
|
+
|
37
|
+
def normalize_uri(uri)
|
38
|
+
uri
|
34
39
|
.sub(HOST_WITH_PORT_REGEX, '/') # Hanami adds the host and port.
|
35
40
|
.sub('.ts.js', '.ts') # Hanami's javascript helper always adds the extension.
|
36
41
|
.sub(/(\.(?!min|module)\w+)\.css$/, '\1') # Rails' stylesheet_link_tag always adds the extension.
|
37
|
-
env['PATH_INFO'], env['QUERY_STRING'] = (env['REQUEST_URI'] = uri).split('?')
|
38
42
|
end
|
39
43
|
|
40
44
|
def forward_to_vite_dev_server(env)
|
@@ -49,7 +53,7 @@ private
|
|
49
53
|
end
|
50
54
|
|
51
55
|
def vite_should_handle?(env)
|
52
|
-
path = env['PATH_INFO']
|
56
|
+
path = normalize_uri(env['PATH_INFO'])
|
53
57
|
return true if path.start_with?(vite_asset_url_prefix) # Vite asset
|
54
58
|
return true if path.start_with?(VITE_DEPENDENCY_PREFIX) # Packages and imports
|
55
59
|
return true if file_in_vite_root?(path) # Fallback if Vite can serve the file
|
@@ -61,6 +65,6 @@ private
|
|
61
65
|
end
|
62
66
|
|
63
67
|
def vite_asset_url_prefix
|
64
|
-
@vite_asset_url_prefix ||= "/#{ config.public_output_dir }/"
|
68
|
+
@vite_asset_url_prefix ||= config.public_output_dir.empty? ? "\0" : "/#{ config.public_output_dir }/"
|
65
69
|
end
|
66
70
|
end
|
data/lib/vite_ruby/version.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
class ViteRuby
|
4
|
-
VERSION = '3.0.
|
4
|
+
VERSION = '3.0.9'
|
5
5
|
|
6
6
|
# Internal: Versions used by default when running `vite install`.
|
7
|
-
DEFAULT_VITE_VERSION = '^2.
|
8
|
-
DEFAULT_PLUGIN_VERSION = '^3.0.
|
7
|
+
DEFAULT_VITE_VERSION = '^2.7.7'
|
8
|
+
DEFAULT_PLUGIN_VERSION = '^3.0.5'
|
9
9
|
end
|
data/lib/vite_ruby.rb
CHANGED
@@ -122,7 +122,12 @@ class ViteRuby
|
|
122
122
|
|
123
123
|
# Public: Current instance configuration for Vite.
|
124
124
|
def config
|
125
|
-
@config
|
125
|
+
unless defined?(@config)
|
126
|
+
@config = ViteRuby::Config.resolve_config(**@config_options)
|
127
|
+
@config.load_ruby_config
|
128
|
+
end
|
129
|
+
|
130
|
+
@config
|
126
131
|
end
|
127
132
|
|
128
133
|
# Public: Enables looking up assets managed by Vite using name and type.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vite_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Máximo Mussini
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dry-cli
|
@@ -201,8 +201,8 @@ homepage: https://github.com/ElMassimo/vite_ruby
|
|
201
201
|
licenses:
|
202
202
|
- MIT
|
203
203
|
metadata:
|
204
|
-
source_code_uri: https://github.com/ElMassimo/vite_ruby/tree/vite_ruby@3.0.
|
205
|
-
changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.
|
204
|
+
source_code_uri: https://github.com/ElMassimo/vite_ruby/tree/vite_ruby@3.0.9/vite_ruby
|
205
|
+
changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.9/vite_ruby/CHANGELOG.md
|
206
206
|
post_install_message: "Thanks for installing Vite Ruby!\n\nIf you upgraded the gem
|
207
207
|
manually, please run:\n\tbundle exec vite upgrade"
|
208
208
|
rdoc_options: []
|
@@ -219,7 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
219
219
|
- !ruby/object:Gem::Version
|
220
220
|
version: '0'
|
221
221
|
requirements: []
|
222
|
-
rubygems_version: 3.
|
222
|
+
rubygems_version: 3.3.3
|
223
223
|
signing_key:
|
224
224
|
specification_version: 4
|
225
225
|
summary: Use Vite in Ruby and bring joy to your JavaScript experience
|