proscenium 0.1.0.alpha1-x86_64-darwin → 0.1.0.alpha2-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: 5418077346884009eb868eaf9ec3ddb396b16ef1884c831e3c857a8a23434b74
4
- data.tar.gz: e17d0f093d961a1a556e5cc3985f46ef6e0d7b4c6609f8b7ba1921deb108fa5e
3
+ metadata.gz: d33e162bf11cfad365e816b4dbb6b414af4e27554a9a241a68f0e511d3304120
4
+ data.tar.gz: a308f22364895470325ec64ef039ce57d635228c0c38af2b05f26905c23f5b10
5
5
  SHA512:
6
- metadata.gz: d3180b82d3e9fcf488c2992c13c0c8a6b26031bc801e241ea782589c78768806bae10f7336ecdcfa978af3afa26598bc84f529163beadbbcf300fc2297640a30
7
- data.tar.gz: e33148720f7990a003be14263f3a0a188dead68bdf638bde2b06d1c94cc12e1c0a2436df800bd6834a29b19f53d99ba286231cfd6e052736505502bc896d06f5
6
+ metadata.gz: c602130d2ceb6a3fb19f3eff6c90c433903f7727aca48d0f474c6ee0b8863a3f7ba355572a4f06fa2005b3f00d708a9c374f061c6314991630558ba177c6ec3d
7
+ data.tar.gz: 77205b53c2bbbf504724c82dc44f745f8268469f68b2f955d3a6a85bf9c45402cf1559054a4e23bae419d7b57340a07be5fa6db81b904d7b7bb133b282639b4c
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2021 Joel Moss
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,11 @@
1
+ module Proscenium
2
+ class Connection < ActionCable::Connection::Base
3
+ identified_by :uid
4
+
5
+ def connect
6
+ self.uid = request.params[:uid]
7
+ logger.add_tags(uid)
8
+ logger.info 'connected to Proscenium'
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ module Proscenium
2
+ class ReloadChannel < ActionCable::Channel::Base
3
+ def subscribed
4
+ stream_from 'reload'
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'view_component'
4
+
5
+ class ApplicationComponent < ViewComponent::Base
6
+ include Proscenium::ViewComponent
7
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ class ReactComponent < ApplicationComponent
4
+ attr_accessor :props
5
+
6
+ def initialize(props = {})
7
+ @props = props
8
+ super
9
+ end
10
+
11
+ def call
12
+ tag.div data: { component: { path: virtual_path, props: @props } }
13
+ end
14
+ end
data/bin/esbuild ADDED
Binary file
data/bin/parcel_css ADDED
Binary file
data/config/routes.rb ADDED
@@ -0,0 +1,5 @@
1
+ Proscenium::Railtie.routes.draw do
2
+ if Proscenium.config.auto_refresh
3
+ mount Proscenium::Railtie.websocket => Proscenium.config.cable_mount_path
4
+ end
5
+ end
@@ -93,6 +93,7 @@ module Proscenium
93
93
 
94
94
  class << self
95
95
  def websocket
96
+ return @websocket unless @websocket.nil?
96
97
  return unless config.proscenium.auto_refresh
97
98
 
98
99
  cable = ActionCable::Server::Configuration.new
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Proscenium
4
- VERSION = '0.1.0.alpha1'
4
+ VERSION = '0.1.0.alpha2'
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.1.0.alpha1
4
+ version: 0.1.0.alpha2
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: 2022-07-25 00:00:00.000000000 Z
11
+ date: 2022-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actioncable
@@ -98,15 +98,39 @@ dependencies:
98
98
  - - "<"
99
99
  - !ruby/object:Gem::Version
100
100
  version: '8.0'
101
+ - !ruby/object:Gem::Dependency
102
+ name: view_component
103
+ requirement: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - "~>"
106
+ - !ruby/object:Gem::Version
107
+ version: '2.0'
108
+ type: :runtime
109
+ prerelease: false
110
+ version_requirements: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - "~>"
113
+ - !ruby/object:Gem::Version
114
+ version: '2.0'
101
115
  description:
102
116
  email:
103
117
  - joel@developwithstyle.com
104
- executables: []
118
+ executables:
119
+ - esbuild
120
+ - parcel_css
105
121
  extensions: []
106
122
  extra_rdoc_files: []
107
123
  files:
108
124
  - CODE_OF_CONDUCT.md
125
+ - LICENSE.txt
109
126
  - README.md
127
+ - app/channels/proscenium/connection.rb
128
+ - app/channels/proscenium/reload_channel.rb
129
+ - app/components/application_component.rb
130
+ - app/components/react_component.rb
131
+ - bin/esbuild
132
+ - bin/parcel_css
133
+ - config/routes.rb
110
134
  - lib/proscenium.rb
111
135
  - lib/proscenium/cli/argument_error.js
112
136
  - lib/proscenium/cli/builders/index.js