class Vue::Generators::ApiFileGenerator
Public Instance Methods
copy_api_file()
click to toggle source
def the_api_init
unless File.exist?(Rails.root.join("app/javascript/packs/api", "index.js")) create_file "app/javascript/packs/api/index.js", 'export default {}' end unless File.exist?(Rails.root.join("app/javascript/packs/api", "methods.js")) copy_file 'methods.js', "app/javascript/packs/api/methods.js" end
end
# File lib/generators/vue/api_file_generator.rb, line 16 def copy_api_file log :copy_api, controller_file_path template "javascript/api.js", "app/javascript/packs/api/res/#{controller_file_path}.js" end
write_components()
click to toggle source
# File lib/generators/vue/api_file_generator.rb, line 33 def write_components sentinel = /<template>\s*\n*<ul>\s*\n*/m content = "<li><router-link to='/#{controller_file_path}'>#{controller_file_path.capitalize}</router-link></li>\n" log :add_components, controller_file_path inject_into_file "app/javascript/packs/components/SideBar.vue", content, after: sentinel, verbose: false, force: false end
write_export_api()
click to toggle source
# File lib/generators/vue/api_file_generator.rb, line 27 def write_export_api sentinel = /export default\s*{\n*/m content = "#{controller_file_path},\n" log :export_api, controller_file_path inject_into_file "app/javascript/packs/api/index.js", content, after: sentinel, verbose: false, force: false end
write_import_api_form_index()
click to toggle source
# File lib/generators/vue/api_file_generator.rb, line 21 def write_import_api_form_index sentinel = /export default\s*{\s*/m content = "import #{controller_file_path} from './res/#{controller_file_path}' \n" log :import_api, content inject_into_file "app/javascript/packs/api/index.js", content, before: sentinel, verbose: false, force: false end