Class: ApiMaker::ModelClassesJavaScriptGeneratorService
- Inherits:
-
ApplicationService
- Object
- ServicePattern::Service
- ApplicationService
- ApiMaker::ModelClassesJavaScriptGeneratorService
- Defined in:
- app/services/api_maker/model_classes_java_script_generator_service.rb
Instance Method Summary collapse
- #ignore_model?(model) ⇒ Boolean
- #model_file(model) ⇒ Object
- #models ⇒ Object
- #perform ⇒ Object
- #resource_for_model(model) ⇒ Object
Methods inherited from ApplicationService
Instance Method Details
#ignore_model?(model) ⇒ Boolean
21 22 23 |
# File 'app/services/api_maker/model_classes_java_script_generator_service.rb', line 21 def ignore_model?(model) model.name.end_with?("::Translation", "::ApplicationRecord") end |
#model_file(model) ⇒ Object
29 30 31 32 |
# File 'app/services/api_maker/model_classes_java_script_generator_service.rb', line 29 def model_file(model) resource_class = ApiMaker::MemoryStorage.current.resource_for_model(model) api_maker_root_path.join("models", "#{resource_class.short_name.underscore.dasherize}.js") end |
#models ⇒ Object
25 26 27 |
# File 'app/services/api_maker/model_classes_java_script_generator_service.rb', line 25 def models @models ||= ApiMaker::ModelsFinderService.execute! end |
#perform ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/services/api_maker/model_classes_java_script_generator_service.rb', line 2 def perform javascript_code = "" resource_names = [] models.each do |model| next if ignore_model?(model) javascript_code << ApiMaker::ModelContentGeneratorService.execute!(model: model) javascript_code << "\n\n" resource = resource_for_model(model) resource_names << resource.short_name end javascript_code << "export {#{resource_names.sort.join(", ")}}\n" succeed! javascript_code end |
#resource_for_model(model) ⇒ Object
34 35 36 |
# File 'app/services/api_maker/model_classes_java_script_generator_service.rb', line 34 def resource_for_model(model) ApiMaker::MemoryStorage.current.resource_for_model(model) end |