vite_ruby 3.0.5 → 3.0.6

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: 6279172f955f9ca8f6a545a9c48835978d6b3329d9a19cbfe58333d8938a49aa
4
- data.tar.gz: 866f2cb6d3525a5e0f2b96e302d21919c5d32938e03bf8e03de9cdfe9126603b
3
+ metadata.gz: a205056fa6566aba9f30cd801ae38e347ea60a962ca4bf02ea8302153362e0fc
4
+ data.tar.gz: 84637ce863e221000cecd5ae4a524a5a54196f8feee6ced7a9cf4f34a00604b4
5
5
  SHA512:
6
- metadata.gz: e281804897b5a583ee7f3b3e76d3ac4c36df10de19c5d14fc56bf09bd12537704acf50bd95f937e4f0fe17c10c78e1c5d131112e29ba1d5e45a0dfbb32d7f3bd
7
- data.tar.gz: a7c8e59b77ce3ce3b1de7e98198da7a367140f8844411dcb1048faeaa3dd680f32c7fda1b5d60e4c2c0c637a9a196b36ce9528ef4f0108e6683fc1b2b0bcb007
6
+ metadata.gz: 2056cdd9c5663e9353a7fc5377227723ea7d1b00a78c27856ea434ca116c4e4274a912e449c782d13cdc063ef3e72148ba7af2eaddb2d5d893b5ec8e2029908c
7
+ data.tar.gz: c6add178ee83b16a6bcb0c72cf9935be58eb79290a36ab692b5f4a481d1232afb258f7bf84506795e37f098fcec9c54f4cfb279940312387e4330f02224492e6
data/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [3.0.6](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.5...vite_ruby@3.0.6) (2021-12-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * 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))
7
+
8
+
9
+ ### Features
10
+
11
+ * 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))
12
+
13
+
14
+
1
15
  ## [3.0.5](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.4...vite_ruby@3.0.5) (2021-12-17)
2
16
 
3
17
 
@@ -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
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class ViteRuby
4
- VERSION = '3.0.5'
4
+ VERSION = '3.0.6'
5
5
 
6
6
  # Internal: Versions used by default when running `vite install`.
7
7
  DEFAULT_VITE_VERSION = '^2.6.13'
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 ||= ViteRuby::Config.resolve_config(**@config_options)
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.5
4
+ version: 3.0.6
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: 2021-12-17 00:00:00.000000000 Z
11
+ date: 2021-12-24 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.5/vite_ruby
205
- changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.5/vite_ruby/CHANGELOG.md
204
+ source_code_uri: https://github.com/ElMassimo/vite_ruby/tree/vite_ruby@3.0.6/vite_ruby
205
+ changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.6/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: []