Skip to content
This repository was archived by the owner on Mar 23, 2024. It is now read-only.

Commit 3c6d26e

Browse files
committed
Also fix run_config not being resolved and make it a more proper fix
1 parent 70a93e1 commit 3c6d26e

File tree

1 file changed

+20
-15
lines changed

1 file changed

+20
-15
lines changed

lib/requirejs/rails/config.rb

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -100,21 +100,23 @@ def loader=(sym)
100100
end
101101

102102
def build_config
103-
self[:build_config] = self.run_config.merge "baseUrl" => source_dir.to_s,
104-
"modules" => [{'name' => 'application'}]
105-
self[:build_config].merge!(self.user_config).slice!(*self.build_config_whitelist)
106-
case self.loader
107-
when :requirejs
108-
# nothing to do
109-
when :almond
110-
mods = self[:build_config]['modules']
111-
unless mods.length == 1
112-
raise Requirejs::ConfigError, "Almond build requires exactly one module, config has #{mods.length}."
113-
end
114-
mod = mods[0]
115-
name = mod['name']
116-
mod['name'] = 'almond'
117-
mod['include'] = name
103+
unless self.has_key?(:build_config)
104+
self[:build_config] = self.run_config.merge "baseUrl" => source_dir.to_s,
105+
"modules" => [{'name' => 'application'}]
106+
self[:build_config].merge!(self.user_config).slice!(*self.build_config_whitelist)
107+
case self.loader
108+
when :requirejs
109+
# nothing to do
110+
when :almond
111+
mods = self[:build_config]['modules']
112+
unless mods.length == 1
113+
raise Requirejs::ConfigError, "Almond build requires exactly one module, config has #{mods.length}."
114+
end
115+
mod = mods[0]
116+
name = mod['name']
117+
mod['name'] = 'almond'
118+
mod['include'] = name
119+
end
118120
end
119121
self[:build_config]
120122
end
@@ -131,6 +133,9 @@ def user_config=(cfg)
131133
if url = cfg.delete('baseUrl')
132134
raise Requirejs::ConfigError, "baseUrl is not needed or permitted in the configuration"
133135
end
136+
# delete any cached configs, will be lazily resolved
137+
self.delete(:build_config)
138+
self.delete(:run_config)
134139
self[:user_config] = cfg
135140
end
136141

0 commit comments

Comments
 (0)