frozen_rails 0.0.4 → 0.0.6

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.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -2
  3. data/LICENSE.txt +1 -1
  4. data/README.md +46 -82
  5. data/Rakefile +20 -0
  6. data/lib/frozen_rails/appendable.rb +9 -2
  7. data/lib/frozen_rails/copyable.rb +7 -2
  8. data/lib/frozen_rails/generator.rb +0 -2
  9. data/lib/frozen_rails/taggable.rb +3 -2
  10. data/lib/frozen_rails/version.rb +1 -3
  11. data/lib/frozen_rails.rb +0 -2
  12. data/lib/generators/frozen/db_generator.rb +2 -5
  13. data/lib/generators/frozen/md_generator.rb +6 -3
  14. data/lib/generators/frozen/rails_generator.rb +6 -14
  15. data/lib/generators/frozen/seo_generator.rb +5 -7
  16. data/lib/generators/frozen/ssg_generator.rb +0 -2
  17. data/lib/generators/frozen/templates/db/database.yml +15 -2
  18. data/lib/generators/frozen/templates/db/initializers/skip_controller_tests_and_helpers.rb +9 -0
  19. data/lib/generators/frozen/templates/db/lib/generators/avo/resource/resource_generator.rb +1 -1
  20. data/lib/generators/frozen/templates/db/lib/templates/active_record/model/model.rb.tt +12 -1
  21. data/lib/generators/frozen/templates/db/lib/templates/erb/scaffold/index.html.erb.tt +14 -8
  22. data/lib/generators/frozen/templates/db/lib/templates/erb/scaffold/partial.html.erb.tt +2 -2
  23. data/lib/generators/frozen/templates/db/lib/templates/erb/scaffold/show.html.erb.tt +8 -7
  24. data/lib/generators/frozen/templates/md/assets/application.css +13 -0
  25. data/lib/generators/frozen/templates/md/assets/rouge/README.md +7 -0
  26. data/lib/generators/frozen/templates/md/assets/rouge/revert.css +11 -0
  27. data/lib/generators/frozen/templates/md/views/categories/index.html.erb +5 -3
  28. data/lib/generators/frozen/templates/md/views/categories/show.html.erb +5 -9
  29. data/lib/generators/frozen/templates/md/views/pages/show.html.erb +6 -3
  30. data/lib/generators/frozen/templates/ssg/.gitlab-ci.yml +34 -0
  31. data/lib/generators/frozen/templates/ui/application.html.erb +27 -0
  32. data/lib/generators/frozen/templates/ui/application_component.rb +2 -0
  33. data/lib/generators/frozen/templates/ui/assets/application.js +4 -0
  34. data/lib/generators/frozen/templates/ui/assets/builds/.keep +0 -0
  35. data/lib/generators/frozen/templates/ui/assets/components/index.js +2 -0
  36. data/lib/generators/frozen/templates/ui/assets/fonts/.keep +0 -0
  37. data/lib/generators/frozen/templates/ui/assets/images/.keep +0 -0
  38. data/lib/generators/frozen/templates/ui/assets/images/pages/.keep +0 -0
  39. data/lib/generators/frozen/templates/ui/assets/jasmine/boot.js +6 -0
  40. data/lib/generators/frozen/templates/ui/assets/jasmine/support/fixtures.js +24 -0
  41. data/lib/generators/frozen/templates/ui/assets/jasmine/support/jasmine-dom.js +1 -0
  42. data/lib/generators/frozen/templates/ui/assets/jasmine/support/unpoly-test-config.js +7 -0
  43. data/lib/generators/frozen/templates/ui/assets/jasmine/support.js +1 -0
  44. data/lib/generators/frozen/templates/ui/assets/jasmine.js +5 -0
  45. data/lib/generators/frozen/templates/ui/assets/rouge/index.js +2 -0
  46. data/lib/generators/frozen/templates/ui/assets/static.js +5 -0
  47. data/lib/generators/frozen/templates/ui/assets/theme/README.md +11 -0
  48. data/lib/generators/frozen/templates/ui/assets/theme/base.css +27 -0
  49. data/lib/generators/frozen/templates/ui/assets/theme/code.css +29 -0
  50. data/lib/generators/frozen/templates/ui/assets/theme/forms.css +160 -0
  51. data/lib/generators/frozen/templates/ui/assets/theme/index.js +2 -0
  52. data/lib/generators/frozen/templates/ui/assets/theme/links.css +8 -0
  53. data/lib/generators/frozen/templates/ui/assets/theme/misc.css +150 -0
  54. data/lib/generators/frozen/templates/ui/assets/theme/parts.css +8 -0
  55. data/lib/generators/frozen/templates/ui/assets/theme/print.css +53 -0
  56. data/lib/generators/frozen/templates/ui/assets/theme/range.css +87 -0
  57. data/lib/generators/frozen/templates/ui/assets/theme/select-arrow.svg +4 -0
  58. data/lib/generators/frozen/templates/ui/assets/theme/typography.css +89 -0
  59. data/lib/generators/frozen/templates/ui/assets/theme/variables.css +49 -0
  60. data/lib/generators/frozen/templates/ui/assets/unpoly/index.js +7 -0
  61. data/lib/generators/frozen/templates/ui/demo_component/counter_component.css +18 -0
  62. data/lib/generators/frozen/templates/ui/demo_component/counter_component.html.erb +6 -0
  63. data/lib/generators/frozen/templates/ui/demo_component/counter_component.js +24 -0
  64. data/lib/generators/frozen/templates/ui/demo_component/counter_component.rb +6 -0
  65. data/lib/generators/frozen/templates/ui/demo_component/counter_component.yml +5 -0
  66. data/lib/generators/frozen/templates/ui/demo_component_tests/counter_component_preview.rb +54 -0
  67. data/lib/generators/frozen/templates/ui/demo_component_tests/counter_component_spec.js +25 -0
  68. data/lib/generators/frozen/templates/ui/demo_component_tests/counter_component_test.rb +40 -0
  69. data/lib/generators/frozen/templates/ui/demo_component_tests/docs/styleguide.md.erb +30 -0
  70. data/lib/generators/frozen/templates/ui/demo_component_tests/manual_test_component_spec.js +14 -0
  71. data/lib/generators/frozen/templates/ui/esbuild.config.js +79 -0
  72. data/lib/generators/frozen/templates/ui/jasmine/controllers/jasmine_controller.rb +12 -0
  73. data/lib/generators/frozen/templates/ui/jasmine/views/jasmine/index.html.erb +19 -0
  74. data/lib/generators/frozen/templates/ui/jasmine/views/layouts/jasmine.html.erb +17 -0
  75. data/lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb +72 -0
  76. data/lib/generators/frozen/templates/ui/lib/tasks/assets.rake +14 -0
  77. data/lib/generators/frozen/templates/ui/lib/templates/view_component/component/component.rb.tt +19 -0
  78. data/lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/bem_stylesheet.css.tt +3 -0
  79. data/lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/erb_template.html.erb.tt +5 -0
  80. data/lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/jasmine_spec.js.tt +15 -0
  81. data/lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/unpoly_compiler.js.tt +5 -0
  82. data/lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/view_spec.rb.tt +21 -0
  83. data/lib/generators/frozen/templates/ui/lib/templates/view_component/preview/component_preview.rb.tt +15 -0
  84. data/lib/generators/frozen/templates/ui/lookbook/lookbook_helper.rb +38 -0
  85. data/lib/generators/frozen/ui_generator.rb +135 -41
  86. metadata +68 -10
  87. data/lib/generators/frozen/templates/ui/cable.yml +0 -5
  88. data/lib/generators/frozen/templates/ui/hotkey_controller.js +0 -9
  89. /data/lib/generators/frozen/templates/db/initializers/{readonly_routes.rb → skip_writing_routes.rb} +0 -0
@@ -0,0 +1,21 @@
1
+ require "test_helper"
2
+ require "view_component/test_helpers"
3
+
4
+ class <%= namespaced? ? "#{namespace.name}::" : '' %><%= class_name %>ComponentTest < ActionView::TestCase
5
+ include ViewComponent::TestHelpers
6
+
7
+ def test_manually_rendered_component
8
+ render_inline(<%= class_name %>Component.new<%= attrs.blank? ? nil : "(#{attrs.map { |attr| %(#{attr}: "#{attr}") }.join(", ")})" %>)
9
+
10
+ assert_selector ".<%= file_path.gsub('/', '---').dasherize %>"
11
+ # TODO: better assertions
12
+ end
13
+
14
+ # https://viewcomponent.org/guide/previews.html#previews-as-test-cases
15
+ def test_component_from_view_component_preview
16
+ render_preview(:default)
17
+
18
+ assert_selector ".<%= file_path.gsub('/', '---').dasherize %>"
19
+ # TODO: better assertions
20
+ end
21
+ end
@@ -0,0 +1,15 @@
1
+ <% module_namespacing do -%>
2
+ class <%= class_name %>ComponentPreview < ViewComponent::Preview
3
+ # <%= class_name %>
4
+ # ---
5
+ # What does it do?
6
+ # You should add a [type] to the params below!
7
+ #
8
+ <% attributes.each do |attribute| -%>
9
+ # @param <%= attribute.name %>
10
+ <% end -%>
11
+ def default<%= "(#{render_signature})" if render_signature %>
12
+ render(<%= class_name %>Component.new<%= "(#{render_signature.gsub('"', '')})" if render_signature %>)
13
+ end
14
+ end
15
+ <% end -%>
@@ -0,0 +1,38 @@
1
+ module LookbookHelper
2
+ def render_preview_scenario(preview_entity_or_name, scenario_entity_or_name, params: {})
3
+ preview = case preview_entity_or_name
4
+ when Lookbook::PreviewEntity
5
+ preview_entity_or_name
6
+ when String, Symbol
7
+ Lookbook.previews.find { |p| p.lookup_path == preview_entity_or_name.to_s }
8
+ else
9
+ raise ArgumentError, "Expected a Lookbook::PreviewEntity or a String/Symbol lookup path"
10
+ end
11
+
12
+ scenario_name = case scenario_entity_or_name
13
+ when Lookbook::ScenarioEntity
14
+ scenario_entity_or_name.name
15
+ when String, Symbol
16
+ scenario_entity_or_name.to_s
17
+ else
18
+ raise ArgumentError, "Expected a Lookbook::ScenarioEntity or a String/Symbol scenario name"
19
+ end
20
+
21
+ render_args = preview.render_args(scenario_name, params: params)
22
+
23
+ # https://github.com/lookbook-hq/lookbook/blob/main/app/views/lookbook/previews/preview.html.erb
24
+ if render_args[:component]
25
+ if defined?(Phlex::SGML) && render_args[:component].is_a?(Phlex::SGML)
26
+ if defined?(Phlex::VERSION) && Gem::Version.new(Phlex::VERSION) < Gem::Version.new("2.0.0")
27
+ raw(render_args[:component].call(view_context: self, &render_args[:block]))
28
+ else
29
+ render(render_args[:component], render_args[:args], &render_args[:block])
30
+ end
31
+ else
32
+ render(render_args[:component], render_args[:args], &render_args[:block])
33
+ end
34
+ else
35
+ render(render_args[:template], **render_args[:locals], &render_args[:block])
36
+ end
37
+ end
38
+ end
@@ -1,18 +1,30 @@
1
- # frozen_string_literal: true
2
-
3
1
  require "frozen_rails/generator"
4
2
 
5
3
  module Frozen
6
4
  module Generators
7
5
  class UiGenerator < FrozenRails::Generator
8
- source_root File.expand_path("templates", __dir__)
6
+ source_root File.expand_path("templates/ui", __dir__)
9
7
 
10
8
  desc "Wire up UI helpers: classless CSS, importmap example, Hotwire Spark, Stimulus controller, and related configuration"
11
9
 
12
10
  def add_gems
11
+ add_frozen_gems <<~RUBY
12
+ # frozen:ui
13
+ gem "view_component"
14
+ gem "precompiled_assets"
15
+ RUBY
16
+
17
+ comment_lines "Gemfile", /propshaft/
18
+ comment_lines "Gemfile", /jsbundling-rails/
13
19
  add_frozen_gems <<~RUBY, env: "development"
14
20
  # frozen:ui
15
- gem "hotwire-spark"
21
+ gem "listen"
22
+ gem "propshaft"
23
+ RUBY
24
+
25
+ add_frozen_gems <<~RUBY, env: "local"
26
+ # frozen:ui
27
+ gem "lookbook"
16
28
  RUBY
17
29
  end
18
30
 
@@ -20,61 +32,143 @@ module Frozen
20
32
  bundle!
21
33
  end
22
34
 
23
- def add_water_css
24
- return unless File.exist?("app/views/layouts/application.html.erb")
35
+ def prepare_js_environment
36
+ in_root do
37
+ run "mv .node-version .nvmrc"
38
+ run "nvm use"
39
+ run "nvm install"
40
+ run "npm install -g yarn"
41
+ end
42
+ end
25
43
 
26
- inject_into_file "app/views/layouts/application.html.erb",
27
- after: "<head>\n" do
28
- <<~ERB
29
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/water.css@2/out/water.css">
44
+ def configure_esbuild
45
+ in_root do
46
+ run "yarn add --dev esbuild-plugin-import-glob esbuild-plugin-text-replace esbuild-manifest-plugin"
47
+ copy_file "esbuild.config.js"
48
+ run 'npm pkg set type="module"'
49
+ run 'npm pkg set scripts.build="node esbuild.config.js"'
50
+ end
51
+ end
30
52
 
31
- ERB
53
+ def add_js_dependencies
54
+ in_root do
55
+ run "yarn add unpoly"
56
+ run "yarn add --dev jasmine jasmine_dom_matchers"
32
57
  end
33
58
  end
34
59
 
35
- def ensure_importmap_rb
36
- if File.exist?("config/importmap.rb")
37
- append_to_file "config/importmap.rb" do
38
- <<~RUBY
60
+ def replace_assets
61
+ # Remove everything from app/assets except app/assets/rouge
62
+ in_root do
63
+ assets_path = Pathname.new("app/assets")
64
+ FileUtils.mkdir_p(assets_path) unless assets_path.exist?
39
65
 
40
- # example pin added by frozen:ui
41
- pin "canvas-confetti", to: "https://cdn.jsdelivr.net/npm/canvas-confetti@1/dist/confetti.module.mjs"
42
- RUBY
66
+ assets_path.children.each do |entry|
67
+ next if entry.basename.to_s == "rouge"
68
+
69
+ FileUtils.rm_rf(entry)
43
70
  end
44
- else
45
- create_file "config/importmap.rb", <<~RUBY
46
- # Pin additional scripts to the importmap here.
47
- # pin "canvas-confetti", to: "https://cdn.jsdelivr.net/npm/canvas-confetti@1/dist/confetti.module.mjs"
48
- RUBY
49
71
  end
72
+ remove_dir "app/javascript"
73
+ copy_directory "assets", "app/assets"
74
+ copy_file "application.html.erb", "app/views/layouts/application.html.erb", force: true
50
75
  end
51
76
 
52
- def add_stimulus_controller
53
- template "ui/hotkey_controller.js", "app/javascript/controllers/hotkey_controller.js"
77
+ def switch_to_precompiled_assets
78
+ in_root do
79
+ # CAUTION: Very brittle!
80
+ FileUtils.move("content/pages/rails-static", "app/assets/images/pages/rails-static")
81
+ end
82
+ comment_lines "config/application.rb", /config\.assets\.paths/
83
+ prepend_to_file "config/initializers/assets.rb", "return unless Rails.env.development?\n"
84
+
85
+ insert_into_file ".github/workflows/ci.yml", <<YAML1, before: "\n - name: Run tests", force: true
86
+
87
+ - uses: actions/setup-node@v6
88
+ with:
89
+ node-version-file: '.nvmrc'
90
+ cache: 'yarn'
91
+ - run: npm install -g yarn
92
+ - run: yarn install --frozen-lockfile
93
+ YAML1
94
+
95
+ insert_into_file ".github/workflows/ci.yml", <<YAML2, before: "\n - name: Run System Tests", force: true
96
+
97
+ - uses: actions/setup-node@v6
98
+ with:
99
+ node-version-file: '.nvmrc'
100
+ cache: 'yarn'
101
+ - run: npm install -g yarn
102
+ - run: yarn install --frozen-lockfile
103
+ YAML2
104
+
105
+ insert_into_file ".github/workflows/parklife.yml", <<YAML3, after: "bundler-cache: true\n"
106
+
107
+ - uses: actions/setup-node@v6
108
+ with:
109
+ node-version-file: '.nvmrc'
110
+ cache: 'yarn'
111
+ - run: npm install -g yarn
112
+ - run: yarn install --frozen-lockfile
113
+
114
+ YAML3
115
+
116
+ insert_into_file ".gitlab-ci.yml", <<YAML4, after: " - bundle install\n"
117
+ - npm install -g yarn
118
+ - yarn install --frozen-lockfile
119
+ YAML4
54
120
  end
55
121
 
56
- def configure_spark
57
- return unless File.exist?("config/environments/development.rb")
122
+ def setup_view_component
123
+ copy_file "application_component.rb", "app/components/application_component.rb"
124
+ copy_directory "lib", "lib"
58
125
 
59
- inject_into_file "config/environments/development.rb",
60
- after: "Rails.application.configure do\n" do
61
- <<~RUBY
62
- config.hotwire.spark.html_paths += %w[ content ]
63
- config.hotwire.spark.html_extensions += %w[ md ]
126
+ append_to_application_config <<~RUBY
127
+ # frozen:ui
128
+ config.i18n.available_locales = [ :en, :de ]
129
+ config.view_component.parent_class = "ApplicationComponent"
130
+ config.view_component.generate.preview = true
131
+ config.view_component.generate.preview_path = "test/components"
132
+ config.view_component.generate.locale = true
133
+ config.asset_path = "/assets"
134
+ RUBY
135
+ end
64
136
 
65
- RUBY
66
- end
137
+ def setup_lookbook
138
+ copy_file "lookbook/lookbook_helper.rb", "app/helpers/lookbook_helper.rb"
139
+
140
+ config = <<~RUBY
141
+ # frozen:ui
142
+ config.lookbook.preview_paths = [ "test/components" ]
143
+ config.lookbook.preview_collection_label = "Components"
144
+ config.lookbook.page_collection_label = "Documentation"
145
+ config.lookbook.page_route = "docs"
146
+ config.lookbook.page_paths = [ "test/components/docs" ]
147
+ config.lookbook.ui_theme = "zinc"
148
+ RUBY
149
+
150
+ append_to_application_config config, env: "development"
151
+ append_to_application_config config, env: "test"
67
152
  end
68
153
 
69
- def enable_action_cable
70
- if File.exist?("config/application.rb")
71
- inject_into_file "config/application.rb",
72
- before: "module" do
73
- "require \"action_cable/engine\"\n"
154
+ def setup_jasmine
155
+ copy_directory "jasmine/views", "app/views"
156
+ copy_file "jasmine/controllers/jasmine_controller.rb", "app/controllers/jasmine_controller.rb"
157
+ end
158
+
159
+ def add_routes
160
+ append_to_routes <<~RUBY
161
+ # frozen:ui
162
+ if Rails.env.local?
163
+ mount Lookbook::Engine, at: "/lookbook"
164
+ resources :jasmine, only: [ :index ]
74
165
  end
75
- end
166
+ RUBY
167
+ end
76
168
 
77
- template "ui/cable.yml", "config/cable.yml" unless File.exist?("config/cable.yml")
169
+ def copy_demo_component
170
+ copy_directory "demo_component", "app/components"
171
+ copy_directory "demo_component_test", "tests/components"
78
172
  end
79
173
  end
80
174
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: frozen_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Klaus Weidinger
8
- bindir: bin
8
+ bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
@@ -15,17 +15,17 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '7.2'
18
+ version: '8.1'
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: '7.2'
25
+ version: '8.1'
26
26
  description: Generators for turning Rails into an SSG
27
27
  email:
28
- - Klaus Weidinger
28
+ - weidkl@gmx.de
29
29
  executables: []
30
30
  extensions: []
31
31
  extra_rdoc_files: []
@@ -33,6 +33,7 @@ files:
33
33
  - CHANGELOG.md
34
34
  - LICENSE.txt
35
35
  - README.md
36
+ - Rakefile
36
37
  - lib/frozen_rails.rb
37
38
  - lib/frozen_rails/appendable.rb
38
39
  - lib/frozen_rails/bundleable.rb
@@ -47,7 +48,8 @@ files:
47
48
  - lib/generators/frozen/ssg_generator.rb
48
49
  - lib/generators/frozen/templates/db/database.yml
49
50
  - lib/generators/frozen/templates/db/initializers/friendly_id.rb
50
- - lib/generators/frozen/templates/db/initializers/readonly_routes.rb
51
+ - lib/generators/frozen/templates/db/initializers/skip_controller_tests_and_helpers.rb
52
+ - lib/generators/frozen/templates/db/initializers/skip_writing_routes.rb
51
53
  - lib/generators/frozen/templates/db/initializers/sqlite_uuid.rb
52
54
  - lib/generators/frozen/templates/db/initializers/static_db.rb
53
55
  - lib/generators/frozen/templates/db/lib/generators/avo/controller/controller_generator.rb
@@ -58,6 +60,9 @@ files:
58
60
  - lib/generators/frozen/templates/db/lib/templates/erb/scaffold/partial.html.erb.tt
59
61
  - lib/generators/frozen/templates/db/lib/templates/erb/scaffold/show.html.erb.tt
60
62
  - lib/generators/frozen/templates/db/lib/templates/rails/scaffold_controller/controller.rb.tt
63
+ - lib/generators/frozen/templates/md/assets/application.css
64
+ - lib/generators/frozen/templates/md/assets/rouge/README.md
65
+ - lib/generators/frozen/templates/md/assets/rouge/revert.css
61
66
  - lib/generators/frozen/templates/md/controllers/categories_controller.rb
62
67
  - lib/generators/frozen/templates/md/controllers/pages_controller.rb
63
68
  - lib/generators/frozen/templates/md/helpers/markdown_helper.rb
@@ -75,20 +80,73 @@ files:
75
80
  - lib/generators/frozen/templates/seo/robots_generatable.rb
76
81
  - lib/generators/frozen/templates/seo/sitemap.rb
77
82
  - lib/generators/frozen/templates/seo/sitemap_entry.rb
83
+ - lib/generators/frozen/templates/ssg/.gitlab-ci.yml
78
84
  - lib/generators/frozen/templates/ssg/storage.yml
79
- - lib/generators/frozen/templates/ui/cable.yml
80
- - lib/generators/frozen/templates/ui/hotkey_controller.js
85
+ - lib/generators/frozen/templates/ui/application.html.erb
86
+ - lib/generators/frozen/templates/ui/application_component.rb
87
+ - lib/generators/frozen/templates/ui/assets/application.js
88
+ - lib/generators/frozen/templates/ui/assets/builds/.keep
89
+ - lib/generators/frozen/templates/ui/assets/components/index.js
90
+ - lib/generators/frozen/templates/ui/assets/fonts/.keep
91
+ - lib/generators/frozen/templates/ui/assets/images/.keep
92
+ - lib/generators/frozen/templates/ui/assets/images/pages/.keep
93
+ - lib/generators/frozen/templates/ui/assets/jasmine.js
94
+ - lib/generators/frozen/templates/ui/assets/jasmine/boot.js
95
+ - lib/generators/frozen/templates/ui/assets/jasmine/support.js
96
+ - lib/generators/frozen/templates/ui/assets/jasmine/support/fixtures.js
97
+ - lib/generators/frozen/templates/ui/assets/jasmine/support/jasmine-dom.js
98
+ - lib/generators/frozen/templates/ui/assets/jasmine/support/unpoly-test-config.js
99
+ - lib/generators/frozen/templates/ui/assets/rouge/index.js
100
+ - lib/generators/frozen/templates/ui/assets/static.js
101
+ - lib/generators/frozen/templates/ui/assets/theme/README.md
102
+ - lib/generators/frozen/templates/ui/assets/theme/base.css
103
+ - lib/generators/frozen/templates/ui/assets/theme/code.css
104
+ - lib/generators/frozen/templates/ui/assets/theme/forms.css
105
+ - lib/generators/frozen/templates/ui/assets/theme/index.js
106
+ - lib/generators/frozen/templates/ui/assets/theme/links.css
107
+ - lib/generators/frozen/templates/ui/assets/theme/misc.css
108
+ - lib/generators/frozen/templates/ui/assets/theme/parts.css
109
+ - lib/generators/frozen/templates/ui/assets/theme/print.css
110
+ - lib/generators/frozen/templates/ui/assets/theme/range.css
111
+ - lib/generators/frozen/templates/ui/assets/theme/select-arrow.svg
112
+ - lib/generators/frozen/templates/ui/assets/theme/typography.css
113
+ - lib/generators/frozen/templates/ui/assets/theme/variables.css
114
+ - lib/generators/frozen/templates/ui/assets/unpoly/index.js
115
+ - lib/generators/frozen/templates/ui/demo_component/counter_component.css
116
+ - lib/generators/frozen/templates/ui/demo_component/counter_component.html.erb
117
+ - lib/generators/frozen/templates/ui/demo_component/counter_component.js
118
+ - lib/generators/frozen/templates/ui/demo_component/counter_component.rb
119
+ - lib/generators/frozen/templates/ui/demo_component/counter_component.yml
120
+ - lib/generators/frozen/templates/ui/demo_component_tests/counter_component_preview.rb
121
+ - lib/generators/frozen/templates/ui/demo_component_tests/counter_component_spec.js
122
+ - lib/generators/frozen/templates/ui/demo_component_tests/counter_component_test.rb
123
+ - lib/generators/frozen/templates/ui/demo_component_tests/docs/styleguide.md.erb
124
+ - lib/generators/frozen/templates/ui/demo_component_tests/manual_test_component_spec.js
125
+ - lib/generators/frozen/templates/ui/esbuild.config.js
126
+ - lib/generators/frozen/templates/ui/jasmine/controllers/jasmine_controller.rb
127
+ - lib/generators/frozen/templates/ui/jasmine/views/jasmine/index.html.erb
128
+ - lib/generators/frozen/templates/ui/jasmine/views/layouts/jasmine.html.erb
129
+ - lib/generators/frozen/templates/ui/lib/generators/component/component_generator.rb
130
+ - lib/generators/frozen/templates/ui/lib/tasks/assets.rake
131
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/component/component.rb.tt
132
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/bem_stylesheet.css.tt
133
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/erb_template.html.erb.tt
134
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/jasmine_spec.js.tt
135
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/unpoly_compiler.js.tt
136
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/frozen_extensions/view_spec.rb.tt
137
+ - lib/generators/frozen/templates/ui/lib/templates/view_component/preview/component_preview.rb.tt
138
+ - lib/generators/frozen/templates/ui/lookbook/lookbook_helper.rb
81
139
  - lib/generators/frozen/ui_generator.rb
82
140
  homepage: https://github.com/dunkelziffer/frozen_rails
83
141
  licenses:
84
142
  - MIT
85
143
  metadata:
144
+ source_code_uri: https://github.com/dunkelziffer/frozen_rails
86
145
  homepage_uri: https://github.com/dunkelziffer/frozen_rails
87
146
  changelog_uri: https://github.com/dunkelziffer/frozen_rails/blob/main/CHANGELOG.md
88
147
  bug_tracker_uri: https://github.com/dunkelziffer/frozen_rails/issues
89
148
  documentation_uri: https://github.com/dunkelziffer/frozen_rails/blob/main/README.md
90
- source_code_uri: https://github.com/dunkelziffer/frozen_rails
91
- custom_attribute: a, b, c
149
+ rubygems_mfa_required: 'true'
92
150
  rdoc_options: []
93
151
  require_paths:
94
152
  - lib
@@ -1,5 +0,0 @@
1
- # generated by frozen:ui
2
- # Action Cable configuration used for development and spark
3
-
4
- development:
5
- adapter: async
@@ -1,9 +0,0 @@
1
- // generated by frozen:ui
2
- import { Controller } from "@hotwired/stimulus"
3
-
4
- export default class extends Controller {
5
- click(event) {
6
- event.preventDefault()
7
- this.element.click()
8
- }
9
- }