class Slickr::Generators::InstallGenerator
Public Instance Methods
admin_user_ability()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 238 def admin_user_ability template "ability.rb", "app/models/ability.rb" puts "Slickr yml for webpacker" end
alter_webpack_module_exports()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 111 def alter_webpack_module_exports replace_line = "module.exports = environment.toWebpackConfig()" dev_dest_file = "config/webpack/development.js" pro_dest_file = "config/webpack/production.js" test_dest_file = "config/webpack/test.js" dev_existing_content = File.read(dev_dest_file) pro_existing_content = File.read(pro_dest_file) test_existing_content = File.read(test_dest_file) new_content = "module.exports = merge(environment.toWebpackConfigForRailsEngine(), customConfig)" unless dev_existing_content.include? new_content gsub_file(dev_dest_file, replace_line) do |match| "#{new_content}" end puts "Altered webpack development.js" else puts "development.js already altered" end unless pro_existing_content.include? new_content gsub_file(pro_dest_file, replace_line) do |match| "#{new_content}" end puts "Altered webpack development.js" else puts "development.js already altered" end unless test_existing_content.include? new_content gsub_file(test_dest_file, replace_line) do |match| "#{new_content}" end puts "Altered webpack development.js" else puts "development.js already altered" end end
alter_webpack_requires()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 70 def alter_webpack_requires starting_line = "const environment = require('./environment')" dev_dest_file = "config/webpack/development.js" pro_dest_file = "config/webpack/production.js" test_dest_file = "config/webpack/test.js" dev_existing_content = File.read(dev_dest_file) pro_existing_content = File.read(pro_dest_file) test_existing_content = File.read(test_dest_file) new_content = "const merge = require('webpack-merge')\nconst customConfig = require('./custom_webpack')" unless dev_existing_content.include? new_content gsub_file(dev_dest_file, starting_line) do |match| "#{match}\n#{new_content}" end puts "Altered webpack development.js" else puts "development.js already altered" end unless pro_existing_content.include? new_content gsub_file(pro_dest_file, starting_line) do |match| "#{match}\n#{new_content}" end puts "Altered webpack production.js" else puts "production.js already altered" end unless test_existing_content.include? new_content gsub_file(test_dest_file, starting_line) do |match| "#{match}\n#{new_content}" end puts "Altered webpack test.js" else puts "test.js already altered" end end
custom_webpack()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 64 def custom_webpack template "custom_webpack.js", "config/webpack/custom_webpack.js" puts "Custom webpack js for webpacker" end
db_migrations()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 22 def db_migrations migration_template "migrations/create_slickr_pages.rb", "db/migrate/create_slickr_pages.rb" migration_template "migrations/change_page_tree_structure.rb", "db/migrate/change_page_tree_structure.rb" migration_template "migrations/create_versions.rb", "db/migrate/create_versions.rb" migration_template "migrations/add_object_changes_to_versions.rb", "db/migrate/add_object_changes_to_versions.rb" migration_template "migrations/change_slickr_pages_page_id_attribute.rb", "db/migrate/change_slickr_pages_page_id_attribute.rb" migration_template "migrations/create_slickr_images.rb", "db/migrate/create_slickr_images.rb" migration_template "migrations/add_meta_data_to_versions.rb", "db/migrate/add_meta_data_to_versions.rb" migration_template "migrations/create_slickr_event_logs.rb", "db/migrate/create_slickr_event_logs.rb" migration_template "migrations/add_roles_names_and_avatars_to_admin_users.rb", "db/migrate/add_roles_names_and_avatars_to_admin_users.rb" migration_template "migrations/add_subheader_to_slickr_pages.rb", "db/migrate/add_subheader_to_slickr_pages.rb" migration_template "migrations/add_header_image_to_slickr_pages.rb", "db/migrate/add_header_image_to_slickr_pages.rb" migration_template "migrations/rename_slickr_pages_og_title_2_and_og_description_2.rb", "db/migrate/rename_slickr_pages_og_title_2_and_og_description_2.rb" migration_template "migrations/create_slickr_settings.rb", "db/migrate/create_slickr_settings.rb" migration_template "migrations/rename_slickr_pages_meta_title.rb", "db/migrate/rename_slickr_pages_meta_title.rb" puts "Database migrations added" end
extend_active_admin_initializer()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 256 def extend_active_admin_initializer dest_file = "config/initializers/active_admin.rb" existing_content = File.read(dest_file) new_content = " config.authorization_adapter = ActiveAdmin::CanCanAdapter" unless existing_content.include? new_content gsub_file(dest_file, "# CanCanAdapter or make your own. Please refer to documentation.") do |match| "#{match}\n#{new_content}" end puts "AdminUser authorization with CanCan" else puts "AdminUser already authorized with CanCan" end end
extend_admin_user_class()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 222 def extend_admin_user_class dest_file = "app/models/admin_user.rb" existing_content = File.read(dest_file) new_content = " include Slickr::SlickrAdminUser\n ROLES = [:admin, :editor, :author, :contributor]" unless existing_content.include? new_content gsub_file(dest_file, "class AdminUser < ApplicationRecord") do |match| "#{match}\n#{new_content}" end puts "AdminUser extended by Slickr class and roles added" else puts "AdminUser already extended by Slickr" end end
extend_babel_to_ignore_node_modules()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 168 def extend_babel_to_ignore_node_modules dest_file = ".babelrc" existing_content = File.read(dest_file) new_content = '"ignore": "node_modules",' unless existing_content.include? new_content gsub_file(dest_file, '"presets": [') do |match| "#{new_content}\n #{match}" end puts "Babel extended to ignore node modules" else puts "Babel already ignoring node modules" end end
extend_babel_to_use_stage_1()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 152 def extend_babel_to_use_stage_1 dest_file = ".babelrc" existing_content = File.read(dest_file) new_content = '"stage-1"' unless existing_content.include? new_content gsub_file(dest_file, '"react"') do |match| "#{match},\n #{new_content}" end puts "Babel extended to use stage-1" else puts "Babel already using stage-1" end end
extend_package_json()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 184 def extend_package_json dest_file = "package.json" existing_content = File.read(dest_file) new_content_1 = '"slickr": "git+https://github.com/primate-inc/slickr#master"' new_content_2 = '"babel-preset-stage-1": "^6.24.1"' new_content_3 = '"ignore-loader": "^0.1.2"' unless existing_content.include? new_content_1 gsub_file(dest_file, '"dependencies": {') do |match| "#{match}\n #{new_content_1}," end puts "Package.json extended to Slickr" else puts "Package.json already using Slickr" end unless existing_content.include? new_content_2 gsub_file(dest_file, '"devDependencies": {') do |match| "#{match}\n #{new_content_2}," end puts "Babel extended to use stage-1" else puts "Babel already using stage-1" end unless existing_content.include? new_content_3 gsub_file(dest_file, '"devDependencies": {') do |match| "#{match}\n #{new_content_3}," end puts "Package.json extended to use ignore-loader" else puts "Package.json already using ignore-loader" end end
extend_slickr_page()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 250 def extend_slickr_page template "page.rb", "app/models/slickr/page.rb" puts "Slickr Page extended" end
extend_webpack_environment()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 47 def extend_webpack_environment insert_after_line = "const { environment } = require('@rails/webpacker')" dest_file = "config/webpack/environment.js" existing_content = File.read(dest_file) new_content = File.read(File.join(File.dirname(__FILE__), '/templates/environment.js')) unless existing_content.include? new_content gsub_file(dest_file, insert_after_line) do |match| "#{match}\n#{new_content}" end puts "Extended webpacker environment to get packs from Slickr engine" else puts "Webpacker environment already extended" end end
no_blank_slate()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 10 def no_blank_slate template "active_admin_no_blank_slate.rb", "config/initializers/active_admin_no_blank_slate.rb" puts "No blank slate for Slickr images" end
page_edit_megadraft_extensions()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 272 def page_edit_megadraft_extensions template "javascript_extensions/page_edit/additional_megadraft_actions.js", "app/javascript/slickr_extensions/page_edit/additional_megadraft_actions.js" template "javascript_extensions/page_edit/additional_megadraft_decorators.js", "app/javascript/slickr_extensions/page_edit/additional_megadraft_decorators.js" template "javascript_extensions/page_edit/actions/additional_actions.js", "app/javascript/slickr_extensions/page_edit/actions/additional_actions.js" template "javascript_extensions/page_edit/components/content/additional_entity_inputs.js", "app/javascript/slickr_extensions/page_edit/components/content/additional_entity_inputs.js" template "javascript_extensions/page_edit/components/content/editor_state_change.js", "app/javascript/slickr_extensions/page_edit/components/content/editor_state_change.js" template "javascript_extensions/page_edit/containers/additional_prop_types.js", "app/javascript/slickr_extensions/page_edit/containers/additional_prop_types.js" template "javascript_extensions/page_edit/decorators/pdf_link_component.jsx", "app/javascript/slickr_extensions/page_edit/decorators/pdf_link_component.jsx" template "javascript_extensions/page_edit/entity_inputs/pdf_link_input.jsx", "app/javascript/slickr_extensions/page_edit/entity_inputs/pdf_link_input.jsx" template "javascript_extensions/page_edit/plugins/plugin_list.js", "app/javascript/slickr_extensions/page_edit/plugins/plugin_list.js" template "javascript_extensions/page_edit/reducers/additional_reducers.js", "app/javascript/slickr_extensions/page_edit/reducers/additional_reducers.js" template "javascript_extensions/page_edit/reducers/loaded_pdfs.js", "app/javascript/slickr_extensions/page_edit/reducers/loaded_pdfs.js" puts "Sample megadraft extensions added" end
scg_map()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 16 def scg_map template "active_admin_svg_map.rb", "config/initializers/active_admin_svg_map.rb" puts "SVG map added for Slickr" end
slickr_page_templates()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 288 def slickr_page_templates template "slickr_page_template.html.erb", "app/views/slickr_page_templates/home.html.erb" template "slickr_page_template.html.erb", "app/views/slickr_page_templates/contact.html.erb" template "slickr_page_template.html.erb", "app/views/slickr_page_templates/landing.html.erb" template "slickr_page_template.html.erb", "app/views/slickr_page_templates/standard.html.erb" puts "Sample page templates added" end
slickr_setting_yml()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 244 def slickr_setting_yml template "setting.yml", "config/setting.yml" puts "Slickr Setting yml" end
slickr_yml()
click to toggle source
# File lib/generators/slickr/install_generator.rb, line 41 def slickr_yml template "slickr.yml", "config/slickr.yml" puts "Slickr yml for webpacker" end