proscenium 0.11.0.pre.10-x86_64-darwin → 0.11.0.pre.12-x86_64-darwin

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: 2830fab8a04207b16ce26439994e8cb5ae6882a2f78e90f49faca58f1c3db2b4
4
- data.tar.gz: 87549366f8decdda2fdcb5e63461fac3cff46e75fa4f1bc00661cf5d24b4552c
3
+ metadata.gz: 97d3bb9554ee30ec6306490e81cbb59466dfefa91b807cda872ab5ef618bfbc2
4
+ data.tar.gz: e4c9e0e07e8f9c4f9c3fbc5922c145b3726e54db61143e57aa6f7a6aa9df0749
5
5
  SHA512:
6
- metadata.gz: f134a7364fdb029e1c5f2195934ee57fd2111eefd0d3dcebd84651ce593be69d40ca50a3feca9104a3540947eadf6648160c19bb0976e1d68847fd5e91d43a76
7
- data.tar.gz: fef4d6c37eefac4acc926793abb61ffff76936056ef8c9b619107b13034440900dceb5454bf59824886b5ee7988bfc2820d59023940f968d1cfb557699ad1a09
6
+ metadata.gz: d0304128e7b2ca2e02508f022beea6fb195cc4465bdd11c9145bee7a4243c28cd1da368a9fe7da78ad1bec9e98ad22201b283d4d8bacde63586d0c05b1d816e4
7
+ data.tar.gz: 47a4c3ba8d6db611f22d78e050b18c3d8845a36acbd865692e17d6da9f8b103ff28641fa16463ce8ad34aa51799de8222ae401439732342632c067c9002ee07d
Binary file
@@ -77,10 +77,14 @@ module Proscenium
77
77
 
78
78
  if extract_lazy_scripts
79
79
  content_for :proscenium_lazy_scripts do
80
- javascript_tag "window.prosceniumLazyScripts = #{scripts.to_json}"
80
+ tag.script type: 'application/json', id: 'prosceniumLazyScripts' do
81
+ raw scripts.to_json
82
+ end
81
83
  end
82
84
  else
83
- out << javascript_tag("window.prosceniumLazyScripts = #{scripts.to_json}")
85
+ out << tag.script(type: 'application/json', id: 'prosceniumLazyScripts') do
86
+ raw scripts.to_json
87
+ end
84
88
  end
85
89
  else
86
90
  Importer.each_javascript(delete: true) do |path, _|
@@ -1,7 +1,16 @@
1
- const elements = document.querySelectorAll("[data-proscenium-component-path]");
1
+ window.Proscenium = window.Proscenium || { lazyScripts: {} };
2
+
3
+ const element = document.querySelector("#prosceniumLazyScripts");
4
+ if (element) {
5
+ const scripts = JSON.parse(element.text);
6
+ window.Proscenium.lazyScripts = {
7
+ ...window.Proscenium.lazyScripts,
8
+ ...scripts,
9
+ };
10
+ }
2
11
 
3
- // Initialize only if there are components.
4
- elements.length > 0 && init();
12
+ const elements = document.querySelectorAll("[data-proscenium-component-path]");
13
+ elements.length > 0 && init(elements);
5
14
 
6
15
  function init() {
7
16
  /**
@@ -20,12 +29,12 @@ function init() {
20
29
  // For testing and simulation of slow connections.
21
30
  // const sim = new Promise((resolve) => setTimeout(resolve, 5000));
22
31
 
23
- if (!(path in window.prosceniumLazyScripts)) {
24
- throw `[proscenium/react/manager] Cannot load component ${path} (not found in prosceniumLazyScripts)`;
32
+ if (!window.Proscenium.lazyScripts[path]) {
33
+ throw `[proscenium/react/manager] Cannot load component ${path} (not found in Proscenium.lazyScripts)`;
25
34
  }
26
35
 
27
36
  const react = import("@proscenium/react-manager/react");
28
- const Component = import(window.prosceniumLazyScripts[path].outpath);
37
+ const Component = import(window.Proscenium.lazyScripts[path].outpath);
29
38
 
30
39
  const forwardChildren =
31
40
  "prosceniumComponentForwardChildren" in element.dataset &&
@@ -45,6 +45,11 @@ module Proscenium
45
45
  'Proscenium::Builder::BuildError' => 'build_error'
46
46
  }
47
47
 
48
+ initializer 'proscenium.debugging' do
49
+ ActionDispatch::DebugView::RESCUES_TEMPLATE_PATHS << root.join('lib', 'proscenium',
50
+ 'templates').to_s
51
+ end
52
+
48
53
  initializer 'proscenium.middleware' do |app|
49
54
  app.middleware.insert_after ActionDispatch::Static, Middleware
50
55
  # app.middleware.insert_after ActionDispatch::Static, Rack::ETag, 'no-cache'
@@ -69,13 +74,3 @@ module Proscenium
69
74
  end
70
75
  end
71
76
  end
72
-
73
- # Monkey path ActionDispatch::DebugView to use our custom error template on BuildError exceptions.
74
- class ActionDispatch::DebugView
75
- def initialize(assigns)
76
- paths = [RESCUES_TEMPLATE_PATH,
77
- Proscenium::Railtie.root.join('lib', 'proscenium', 'templates').to_s]
78
- lookup_context = ActionView::LookupContext.new(paths)
79
- super(lookup_context, assigns, nil)
80
- end
81
- end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Proscenium
4
- VERSION = '0.11.0.pre.10'
4
+ VERSION = '0.11.0.pre.12'
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.11.0.pre.10
4
+ version: 0.11.0.pre.12
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Joel Moss
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-05 00:00:00.000000000 Z
11
+ date: 2023-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport