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

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: edf70bf926665cd639fde327c74349c49ea85db20c607cc82c34129a37263262
4
- data.tar.gz: 22e4a0ac95c58f8ce6e5e08199f0be4e746397789462c411f3b8da7c66cf234f
3
+ metadata.gz: 8c50db1d900a00b8c85feb758fcbe99c2a189af4b1b21a1d0eb0ccf563f15463
4
+ data.tar.gz: 48ba1636e92291e37ff2cef6e1dd2f583de47b8f3b384e541e98fdbc6649b94b
5
5
  SHA512:
6
- metadata.gz: 6532d587e386f4f99ffc4fcc7f2873a9471694fbc0a90dc05e50ff1bdee053276852c69067375995015a29a6ffe4b6ecf329f78c158f99fcd997b19fb8afd386
7
- data.tar.gz: f98efacb7bb59d2f565284f5cde6e2acdabe773c5c4627f07d31ab228750d1fb39a73b717a0c1f24d88861fe0273f966f6390bdd0950f914ee0521a872294c2c
6
+ metadata.gz: 9847c5eaf5a274e5d2323930da9aea499c8e6361cf3aefb726eadfc10e9f711cd647f760354f756b85234cd121f5ccf921ddf2673bac7ea3878caddc30f86972
7
+ data.tar.gz: 2768f6e7ddddd38f20288522d3bcf1edee08e8e6f097d2c343d57d8eaee19c4977d5f14781c5e7d3e5de9d259f0ce0ecdc4e532e44e6cc3a15cf88e62c4aa889
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-linux
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