proscenium 0.19.0.beta5 → 0.19.0.beta6

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: b35cb661836d73f90d13eb90f2d0c53bf1912af87cdd645b236f428a7da409da
4
- data.tar.gz: 4086421d606fd099cbc425e38722a99ad04da40663e6734d869f16bfb4a59360
3
+ metadata.gz: 8ca20bfda08fd5e1d90c583a57907aa50e218027dc49b5ad7c26cf2a688d69dd
4
+ data.tar.gz: 0e261b5d63adb2bbf0cb74059e45a29d1b5650a7b4febac561a16f67cc872f45
5
5
  SHA512:
6
- metadata.gz: bcab9de130f077f0126e7ed6190af59acd8583c6d1efeae241ebe2a3a0ad6577cc45a4a3f27baf6bf5d0924ed93bf8713263e54c2377bf851ac179836405866a
7
- data.tar.gz: a97a68eb3f975e2c7389196b0b37da3d88b9746a5cb362542842a3a91bc0285f8615d8d924c77fb713ffca40d4230876c7dbcb70c17b51812b2ba79bf6cb2025
6
+ metadata.gz: 3687fac51a5d0960c8e663efabdba3f15a49a77a95be9e13958de9919f63958ca54358a26c9952fe04840b7959355436ca3cf030e9dfcd4da861f0e138382016
7
+ data.tar.gz: 2d44a7e5b0240cce9107449f86c8ce0ab2bcebe64825001984024135d9f4c88b184b35d3f5abcadce67bc2f7037d05044bc7146c2454b76fb653a8e4493860a9
Binary file
@@ -88,6 +88,11 @@ module Proscenium
88
88
  response.cache! Proscenium.config.cache_max_age
89
89
  end
90
90
 
91
+ cache_proc = Proscenium.config.cache_middleware_response
92
+ if cache_proc.is_a?(Proc) && cache_proc.call(path_to_build)
93
+ response.cache! Proscenium.config.cache_max_age
94
+ end
95
+
91
96
  yield response if block_given?
92
97
 
93
98
  response.finish
@@ -24,6 +24,13 @@ module Proscenium
24
24
  config.proscenium.cache_query_string = Rails.env.production? && ENV.fetch('REVISION', nil)
25
25
  config.proscenium.cache_max_age = 2_592_000 # 30 days
26
26
 
27
+ # A proc that will be given the path to build, and should return a boolean indicating whether to
28
+ # cache the response.
29
+ #
30
+ # Example:
31
+ # cache_middleware_response = ->(path) { path.start_with?('node_modules/') }
32
+ config.proscenium.cache_middleware_response = nil
33
+
27
34
  # List of environment variable names that should be passed to the builder, which will then be
28
35
  # passed to esbuild's `Define` option. Being explicit about which environment variables are
29
36
  # defined means a faster build, as esbuild will have less to do.
@@ -68,8 +75,8 @@ module Proscenium
68
75
 
69
76
  initializer 'proscenium.middleware' do |app|
70
77
  app.middleware.insert_after ActionDispatch::Static, Proscenium::Middleware
71
- app.middleware.insert_after ActionDispatch::Static, Rack::ETag, 'no-cache'
72
- app.middleware.insert_after ActionDispatch::Static, Rack::ConditionalGet
78
+ # app.middleware.insert_after ActionDispatch::Static, Rack::ETag, 'no-cache'
79
+ # app.middleware.insert_after ActionDispatch::Static, Rack::ConditionalGet
73
80
  end
74
81
 
75
82
  initializer 'proscenium.sideloading' do
@@ -84,7 +84,7 @@ module Proscenium::UI
84
84
  def label(**kwargs, &block)
85
85
  content = attributes.delete(:label)
86
86
 
87
- super(**kwargs) do
87
+ super do
88
88
  captured = capture do
89
89
  div do
90
90
  span { content || translate_label } if content != false
@@ -115,7 +115,7 @@ module Proscenium::UI::Form::Fields
115
115
  return value
116
116
  end
117
117
 
118
- options.filter { |k, _v| value.include?(k) }.values
118
+ options.slice(*value).values
119
119
  end
120
120
 
121
121
  def options
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Proscenium
4
- VERSION = '0.19.0.beta5'
4
+ VERSION = '0.19.0.beta6'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: proscenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0.beta5
4
+ version: 0.19.0.beta6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Moss
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-12 00:00:00.000000000 Z
11
+ date: 2025-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport