vite_ruby 3.0.4 → 3.0.8

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: c544599e945ff20ce37f51b6c700190e703afa0e6e2af7114229a82385a53828
4
- data.tar.gz: 7aa9c7c08f3ad64349d50d9313bec729492aaa6be5f4d191aef05480510ff955
3
+ metadata.gz: 98e2415b05cc089e1237df13a3151a52a617eb49d0e7d9564694c51ac23682f0
4
+ data.tar.gz: ad96aa6343295e1a5c35ea9b76bd2bd3dc0db2a77c39107a7a4ef921e69381cf
5
5
  SHA512:
6
- metadata.gz: 70d9fc824969aaaad4b3cfcc644beb934de404dcce0fe1faa30d97d9377f757baae99aad77912db2e0f9dfee176685aaaa27f6828ce6bfbbeddf433131146c7a
7
- data.tar.gz: dcc84cacfad3542b7475f7dcd2a8fa801d4ded3bfe5f944f2ba6cd43bcb2acd3107caa45145d7e435c35bd85ef8bfcacb208c3155290f8c0b28a7ec30e88f1d1
6
+ metadata.gz: '069e27dad5668424f05677db87b052f55794b205e19fd8ea866e47d0c5f81ab971a532c28e16a5a1f2998338ca03c1c818ff691293a65d47efd5a45156e691cf'
7
+ data.tar.gz: d386f154d68dfa18616965e6aad2451e7d7e54e50b1964e675c58975900ae703fb95a55057ee7d237506c3e35ea34c290a96f1ef298f528f8beb9d9abfb8ad72
data/CHANGELOG.md CHANGED
@@ -1,12 +1,50 @@
1
+ ## [3.0.8](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.7...vite_ruby@3.0.8) (2022-01-18)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * remove .DS_Store from installation .gitignore ([#178](https://github.com/ElMassimo/vite_ruby/issues/178)) ([5a0931d](https://github.com/ElMassimo/vite_ruby/commit/5a0931d63318ab5b1bf9ead680540c015afd471a))
7
+
8
+
9
+
10
+ ## [3.0.7](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.6...vite_ruby@3.0.7) (2021-12-27)
11
+
12
+
13
+
14
+ ## [3.0.6](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.5...vite_ruby@3.0.6) (2021-12-24)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * 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))
20
+
21
+
22
+ ### Features
23
+
24
+ * 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))
25
+
26
+
27
+
28
+ ## [3.0.5](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.4...vite_ruby@3.0.5) (2021-12-17)
29
+
30
+
31
+ ### Bug Fixes
32
+
33
+ * ensure vite_plugin_legacy is upgraded by the upgrade command ([2f9437d](https://github.com/ElMassimo/vite_ruby/commit/2f9437d248e27aa03b5b8a1df3e3d6a52c791cd1))
34
+
35
+
36
+
1
37
  ## [3.0.4](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.3...vite_ruby@3.0.4) (2021-12-17)
2
38
 
39
+ ### BREAKING CHANGES
40
+
41
+ * if using `vite_plugin_legacy`, make sure to upgrade to 3.0.1
3
42
 
4
43
  ### Bug Fixes
5
44
 
6
45
  * handle new virtual legacy-polyfill name ([#157](https://github.com/ElMassimo/vite_ruby/issues/157)) ([a34e77f](https://github.com/ElMassimo/vite_ruby/commit/a34e77f3b342c9171adc50adfd5220b57bddb961))
7
46
 
8
47
 
9
-
10
48
  ## [3.0.3](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@3.0.2...vite_ruby@3.0.3) (2021-12-09)
11
49
 
12
50
 
@@ -95,8 +95,9 @@ private
95
95
  /public/vite-dev
96
96
  /public/vite-test
97
97
  node_modules
98
+ # Vite uses dotenv and suggests to ignore local-only env files. See
99
+ # https://vitejs.dev/guide/env-and-mode.html#env-files
98
100
  *.local
99
- .DS_Store
100
101
  GITIGNORE
101
102
  end
102
103
 
@@ -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,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class ViteRuby
4
- VERSION = '3.0.4'
4
+ VERSION = '3.0.8'
5
5
 
6
6
  # Internal: Versions used by default when running `vite install`.
7
- DEFAULT_VITE_VERSION = '^2.6.13'
8
- DEFAULT_PLUGIN_VERSION = '^3.0.2'
7
+ DEFAULT_VITE_VERSION = '^2.7.7'
8
+ DEFAULT_PLUGIN_VERSION = '^3.0.5'
9
9
  end
data/lib/vite_ruby.rb CHANGED
@@ -27,6 +27,7 @@ class ViteRuby
27
27
  'vite_padrino' => 'padrino',
28
28
  'jekyll-vite' => 'jekyll',
29
29
  'vite_rails_legacy' => 'rails',
30
+ 'vite_plugin_legacy' => 'rack',
30
31
  }
31
32
 
32
33
  class << self
@@ -121,7 +122,12 @@ class ViteRuby
121
122
 
122
123
  # Public: Current instance configuration for Vite.
123
124
  def config
124
- @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
125
131
  end
126
132
 
127
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
4
+ version: 3.0.8
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: 2022-01-18 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.4/vite_ruby
205
- changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.4/vite_ruby/CHANGELOG.md
204
+ source_code_uri: https://github.com/ElMassimo/vite_ruby/tree/vite_ruby@3.0.8/vite_ruby
205
+ changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@3.0.8/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.1.4
222
+ rubygems_version: 3.2.32
223
223
  signing_key:
224
224
  specification_version: 4
225
225
  summary: Use Vite in Ruby and bring joy to your JavaScript experience