proscenium 0.1.0.alpha1-x86_64-linux → 0.1.0.alpha2-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: 3e3e07ba3e379ca73169149eecf63a25c49a6a8410200bd6d552fdff4d8e58f8
4
- data.tar.gz: 51abd6eecf71b9a1a1c74b6b6576765710ab6d3b273daee8e3a1f02ba9e7ecbf
3
+ metadata.gz: e687ad48beef06e775e2516ab56a83f19a1203c7c052345df19dd05593cad455
4
+ data.tar.gz: a215cfcd0a15d404825d534ec6b188cd27f1064c9be629a85f7805636afac71b
5
5
  SHA512:
6
- metadata.gz: c05bc284df4b0ae4a84eef3a93dfdb83dbdaed624ae699fdff54cfae02d9be1d1aeb01ed4879e5b80b83ac794968fda301e83848929cfc9bdb18c880080e41be
7
- data.tar.gz: 635bb7478afa4a130266ca7e1abfed8c3faa2da07b96cdb4a28bcaab6819d53a095b468b26d4a75ec9034bcf9943692359263a8239a4a4cc7209c3aa7be7fed2
6
+ metadata.gz: 7487dbd4425911a92375f1b0309b763a24f809ec652b60542d9726f257ab1ec104901d919dc3e381e90f2ac7e678b43606a816685d9c80cd69b238001f206778
7
+ data.tar.gz: a222034708320b223532e71cfc6766253a976ca034b8abb5f5ddad47a6b78c1dc11ecabd414a67e5cf5f5e68876afbc9e21f6ec06ba01ab06c19c31a62e3eab5
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-linux
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