flit_view_components 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: eb21db1b9403b11c21de3d01c03f7a884bcc7d713ae3af9df6148a54b0387d6b
4
+ data.tar.gz: 06e73252bd8a2c99c9cd313cb67dbb30ca8b88151453a04978250bf6d861cbc4
5
+ SHA512:
6
+ metadata.gz: 0cc102d740063b79f8ce13898d0b0fe549af32f5021ecd42ca5bde327b0fd7b595996b397292f0816e63227b5d9edaa00b736f5a44c028678aca829f500674da
7
+ data.tar.gz: eaca50b7fdcc22d200663ccb9331adec72e7e10973e34a40fd283b4efc6aa10e8c739d48294a788a5e2a07cb7eea60a82777af4cdb0dc38833c568d543c4b843
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2023 Aaron F Stanton
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,38 @@
1
+ # FlitViewComponents
2
+ This is a set of Rails View Components aimed at mimicking Flutter's Widgets. I'm new to Flutter, and not much of a designer, so I'm attempting to do this via tools I am familiar with.
3
+
4
+ I need a flexible design tool, and I plan on using [json_dynamic_widget](https://pub.dev/packages/json_dynamic_widget) once I know what I'm doing with Flutter. First, though, I need static widgets.
5
+
6
+ Styling of widgets will be handled with a Theme. I'm going to try to give it some sane defaults so that it doesn't look horrible, but again, I'm not a designer. It will try to be as CSS framework agnostic as possible - you should be able to pass in classes to style widgets as you wish.
7
+
8
+ I plan on building sample themes, using popular frameworks such as Tailwind CSS and Bootstrap.
9
+
10
+ At first, this will use as little JavaScript as possible, and then when it becomes necessary, I'll bring in Stimulus.
11
+
12
+ Eventually I hope to incorporate Hotwire into this as an optional piece. The plan being that you should be able to pass in the name of a channel, and it should render appropriately. With no channel passed in, it should render as a normal view component.
13
+
14
+ ## Usage
15
+ How to use my plugin.
16
+
17
+ ## Installation
18
+ Add this line to your application's Gemfile:
19
+
20
+ ```ruby
21
+ gem "flit_view_components"
22
+ ```
23
+
24
+ And then execute:
25
+ ```bash
26
+ $ bundle
27
+ ```
28
+
29
+ Or install it yourself as:
30
+ ```bash
31
+ $ gem install flit_view_components
32
+ ```
33
+
34
+ ## Contributing
35
+ Contribution directions go here.
36
+
37
+ ## License
38
+ The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/Rakefile ADDED
@@ -0,0 +1,14 @@
1
+ require "bundler/setup"
2
+
3
+ load "rails/tasks/statistics.rake"
4
+
5
+ require "bundler/gem_tasks"
6
+ require "rspec/core/rake_task"
7
+
8
+ RSpec::Core::RakeTask.new(:spec)
9
+
10
+ require "rubocop/rake_task"
11
+
12
+ RuboCop::RakeTask.new
13
+
14
+ task default: %i[spec rubocop]
@@ -0,0 +1 @@
1
+ //= link_directory ../stylesheets/flit_view_components .css
@@ -0,0 +1,15 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9
+ * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
10
+ * files in this directory. Styles in this file should be added after the last require_* statement.
11
+ * It is generally better to create a new file per style scope.
12
+ *
13
+ *= require_tree .
14
+ *= require_self
15
+ */
@@ -0,0 +1,4 @@
1
+ module FlitViewComponents
2
+ class ApplicationController < ActionController::Base
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module FlitViewComponents
2
+ module ApplicationHelper
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module FlitViewComponents
2
+ class ApplicationJob < ActiveJob::Base
3
+ end
4
+ end
@@ -0,0 +1,6 @@
1
+ module FlitViewComponents
2
+ class ApplicationMailer < ActionMailer::Base
3
+ default from: "from@example.com"
4
+ layout "mailer"
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ module FlitViewComponents
2
+ class ApplicationRecord < ActiveRecord::Base
3
+ self.abstract_class = true
4
+ end
5
+ end
@@ -0,0 +1,15 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Flit view components</title>
5
+ <%= csrf_meta_tags %>
6
+ <%= csp_meta_tag %>
7
+
8
+ <%= stylesheet_link_tag "flit_view_components/application", media: "all" %>
9
+ </head>
10
+ <body>
11
+
12
+ <%= yield %>
13
+
14
+ </body>
15
+ </html>
data/config/routes.rb ADDED
@@ -0,0 +1,2 @@
1
+ FlitViewComponents::Engine.routes.draw do
2
+ end
data/docs/CHANGELOG.md ADDED
File without changes
@@ -0,0 +1,5 @@
1
+ module FlitViewComponents
2
+ class Engine < ::Rails::Engine
3
+ isolate_namespace FlitViewComponents
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ module FlitViewComponents
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,6 @@
1
+ require "flit_view_components/version"
2
+ require "flit_view_components/engine"
3
+
4
+ module FlitViewComponents
5
+ # Your code goes here...
6
+ end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :flit_view_components do
3
+ # # Task goes here
4
+ # end
metadata ADDED
@@ -0,0 +1,78 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: flit_view_components
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Aaron F Stanton
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-03-05 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 7.0.4.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 7.0.4.2
27
+ description:
28
+ email:
29
+ - afstanton@gmail.com
30
+ executables: []
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - MIT-LICENSE
35
+ - README.md
36
+ - Rakefile
37
+ - app/assets/config/flit_view_components_manifest.js
38
+ - app/assets/stylesheets/flit_view_components/application.css
39
+ - app/controllers/flit_view_components/application_controller.rb
40
+ - app/helpers/flit_view_components/application_helper.rb
41
+ - app/jobs/flit_view_components/application_job.rb
42
+ - app/mailers/flit_view_components/application_mailer.rb
43
+ - app/models/flit_view_components/application_record.rb
44
+ - app/views/layouts/flit_view_components/application.html.erb
45
+ - config/routes.rb
46
+ - docs/CHANGELOG.md
47
+ - lib/flit_view_components.rb
48
+ - lib/flit_view_components/engine.rb
49
+ - lib/flit_view_components/version.rb
50
+ - lib/tasks/flit_view_components_tasks.rake
51
+ homepage: https://github.com/afstanton/flit_view_components
52
+ licenses:
53
+ - MIT
54
+ metadata:
55
+ allowed_push_host: https://rubygems.org
56
+ homepage_uri: https://github.com/afstanton/flit_view_components
57
+ source_code_uri: https://github.com/afstanton/flit_view_components
58
+ changelog_uri: https://github.com/afstanton/flit_view_components/blob/main/docs/CHANGELOG.md
59
+ post_install_message:
60
+ rdoc_options: []
61
+ require_paths:
62
+ - lib
63
+ required_ruby_version: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ required_rubygems_version: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: '0'
73
+ requirements: []
74
+ rubygems_version: 3.4.7
75
+ signing_key:
76
+ specification_version: 4
77
+ summary: View Components based on Flutter widgets.
78
+ test_files: []