30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
# File 'lib/generators/fluxbit/scaffold_generator.rb', line 30
def generate_scaffold_files
if namespaced?
namespace_parts = namespace_path.split("/")
namespace_opens = namespace_parts.map.with_index do |part, idx|
" " * idx + "namespace :#{part} do"
end.join("\n")
namespace_closes = namespace_parts.size.times.map { |i| " " * (namespace_parts.size - 1 - i) + "end" }.join("\n")
indent = " " * namespace_parts.size
route %(#{namespace_opens}
#{indent}resources :#{file_name.pluralize} do
#{indent} collection do
#{indent} put "update_all"
#{indent} patch "update_all"
#{indent} delete "destroy_all"
#{indent} end
#{indent}end
#{namespace_closes})
else
route %(resources :#{file_name.pluralize} do
collection do
put "update_all"
patch "update_all"
delete "destroy_all"
end
end)
end
empty_directory controller_dir if namespaced?
template "controller.rb.tt", File.join(controller_dir, "#{file_name.pluralize}_controller.rb")
empty_directory view_dir
template "index.html.erb.tt", File.join(view_dir, "index.html.erb")
template "show.html.erb.tt", File.join(view_dir, "show.html.erb")
template "new.html.erb.tt", File.join(view_dir, "new.html.erb")
template "edit.html.erb.tt", File.join(view_dir, "edit.html.erb")
template "_form.html.erb.tt", File.join(view_dir, "_form.html.erb")
template "_metadata.html.erb.tt", File.join(view_dir, "_metadata.html.erb")
template "partial.html.erb.tt", File.join(view_dir, "_#{file_name.pluralize}.html.erb")
template "index.json.jbuilder.tt", File.join(view_dir, "index.json.jbuilder")
template "show.json.jbuilder.tt", File.join(view_dir, "show.json.jbuilder")
template "create.turbo_stream.erb.tt", File.join(view_dir, "create.turbo_stream.erb")
template "update.turbo_stream.erb.tt", File.join(view_dir, "update.turbo_stream.erb")
template "update_all.turbo_stream.erb.tt", File.join(view_dir, "update_all.turbo_stream.erb")
template "destroy.turbo_stream.erb.tt", File.join(view_dir, "destroy.turbo_stream.erb")
template "destroy_all.turbo_stream.erb.tt", File.join(view_dir, "destroy_all.turbo_stream.erb")
template "i18n.en.yml.tt", File.join("config", "locales", "#{file_name.pluralize}.en.yml")
template "i18n.pt-BR.yml.tt", File.join("config", "locales", "#{file_name.pluralize}.pt-BR.yml")
template "i18n.general.en.yml.tt", File.join("config", "locales", "general.en.yml")
template "i18n.general.pt-BR.yml.tt", File.join("config", "locales", "general.pt-BR.yml")
template "policy.rb.tt", File.join("app/policies", "#{file_name.singularize}_policy.rb")
template "_alert.html.erb.tt", File.join("app/views/shared", "_alert.html.erb")
template "send_alert_via_drawer.html.erb.tt", File.join("app/views/shared", "send_alert_via_drawer_alert.html.erb")
template "_flash.html.erb.tt", File.join("app/views/shared", "_flash.html.erb")
template "sortable.rb.tt", File.join("app/controllers/concerns", "sortable.rb")
end
|