souls 0.9.4 → 0.9.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d825fd34a0c8330fe7f2bb659061d47e5236f3026f3d48f2f47b53747dcecac2
4
- data.tar.gz: 2e54fe6eb846ac78d53dc1cb5e4549e3af3f41fb2e8674477ac947e4563f8f55
3
+ metadata.gz: 76d16e22f896d21fad8dee314b75ddc65e42507d8fdabd494ed8f250ec785457
4
+ data.tar.gz: 022b54f4f66325a19fb8877662411d6d4d00cf667bc2c04d83222dd77bffa1da
5
5
  SHA512:
6
- metadata.gz: a461d07f08c1c838ef6b532145e02bd1770fd689353a4e7ddb69ff176ee60573eca6079e8c1fa2831e19f393ed9c9451bf00db23b25629d5f31aa8222a0a1eb2
7
- data.tar.gz: 837cad066a089928ab0f2b86eb42249eac6bc580c6e01eb70fc288f33bb82828efb3be26193ce7a2e17355efe6b20b5a5ceffd3c0e2c3eaf500c73727730e0e1
6
+ metadata.gz: 9c3a5949f7b388f5bdd8863070e2704d25f4e94bc62f7434838b24b11c2cddacbe68d009ab6d089d518e5343e3f6c40d969333c926fc445df034435418ba450a
7
+ data.tar.gz: 0d0131a7ac137d5fb15f502b2b863e7d666e7aa71796981f93b0b5c60dd1738cf6e5a40bded2e33c9fd766b2458a3d1e501f9b94716206d37c21bf163dd9210d
@@ -133,7 +133,7 @@ Metrics/AbcSize:
133
133
  Enabled: false
134
134
 
135
135
  Metrics/CyclomaticComplexity:
136
- Max: 10
136
+ Max: 30
137
137
 
138
138
  Metrics/PerceivedComplexity:
139
139
  Enabled: false
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- souls (0.9.3)
4
+ souls (0.9.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/exe/souls CHANGED
@@ -58,11 +58,9 @@ begin
58
58
  when "type"
59
59
  Souls::Init.type class_name: ARGV[2]
60
60
  when "migrate"
61
- Souls::Init.migration class_name: ARGV[2]
61
+ Souls::Init.migrate class_name: ARGV[2]
62
62
  when "migrate_all"
63
- Souls::Init.get_tables.each do |class_name|
64
- Souls::Init.migration class_name: class_name
65
- end
63
+ Souls::Init.migrate_all
66
64
  when "migration"
67
65
  `rake db:create_migration NAME=#{ARGV[3]}`
68
66
  when "rspec_factory"
@@ -115,11 +115,11 @@ module Souls
115
115
  system "cp -r #{repository_name}-#{folder}/ #{app_name}/"
116
116
  system "rm -rf #{version}.tar.gz && rm -rf #{repository_name}-#{folder}"
117
117
  txt = <<~TEXT
118
- _____ ____ __ ____
118
+ _____ ____ __ ____#{' '}
119
119
  / ___// __ \\/ / / / / _____
120
120
  \\__ \\/ / / / / / / / / ___/
121
- ___/ / /_/ / /_/ / /___(__ )
122
- /____/\\____/\\____/_____/____/
121
+ ___/ / /_/ / /_/ / /___(__ )#{' '}
122
+ /____/\\____/\\____/_____/____/#{' '}
123
123
  TEXT
124
124
  puts txt
125
125
  puts "=============================="
@@ -251,13 +251,14 @@ module Souls
251
251
  end
252
252
  EOS
253
253
  end
254
- puts "Model #{class_name}.rb Auto Generated from schema.rb!: `#{file_path}`"
254
+ [file_path]
255
255
  end
256
256
 
257
257
  def type_check type
258
258
  {
259
259
  bigint: "Integer",
260
260
  string: "String",
261
+ float: "Float",
261
262
  text: "String",
262
263
  datetime: "GraphQL::Types::ISO8601DateTime",
263
264
  boolean: "Boolean",
@@ -277,8 +278,8 @@ module Souls
277
278
  end
278
279
 
279
280
  def table_check line: "", class_name: ""
280
- if line.include?("create_table")
281
- return true if line.split(" ")[1].gsub("\"", "").gsub(",", "") == "#{class_name.pluralize}"
281
+ if line.include?("create_table") && (line.split(" ")[1].gsub("\"", "").gsub(",", "") == class_name.pluralize.to_s)
282
+ return true
282
283
  end
283
284
  false
284
285
  end
@@ -341,7 +342,7 @@ module Souls
341
342
  end
342
343
  EOS
343
344
  end
344
- puts "Mutation create_#{class_name}.rb Auto Generated from schema.rb!: `#{file_path}`"
345
+ file_path
345
346
  end
346
347
 
347
348
  def update_mutation_head class_name: "souls"
@@ -398,7 +399,7 @@ module Souls
398
399
  end
399
400
  EOS
400
401
  end
401
- puts "Mutation update_#{class_name}.rb Auto Generated from schema.rb!: `#{file_path}`"
402
+ file_path
402
403
  end
403
404
 
404
405
  def update_mutation class_name: "souls"
@@ -429,7 +430,7 @@ module Souls
429
430
  end
430
431
  EOS
431
432
  end
432
- puts "Mutation create_#{class_name}.rb Auto Generated from schema.rb!: `#{file_path}`"
433
+ file_path
433
434
  end
434
435
 
435
436
  def create_confirm
@@ -442,22 +443,17 @@ module Souls
442
443
  def mutation class_name: "souls"
443
444
  singularized_class_name = class_name.singularize
444
445
  if Dir.exist? "./app/graphql/mutations/#{singularized_class_name}"
445
- create_confirm
446
+ # create_confirm
446
447
  FileUtils.rm_r("./app/graphql/mutations/#{singularized_class_name}")
447
448
  end
448
449
  Dir.mkdir "./app/graphql/mutations/#{singularized_class_name}"
449
450
  create_mutation_head class_name: singularized_class_name
450
451
  create_mutation_params class_name: singularized_class_name
451
- create_mutation_end class_name: singularized_class_name
452
- update_mutation class_name: singularized_class_name
453
- delete_mutation class_name: singularized_class_name
454
- puts "\n#############################################################################################################"
455
- puts "\nAdd these lines at `./app/graphql/types/mutation_type.rb`"
456
- puts "\n\n"
457
- puts "field :create_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Create#{singularized_class_name.camelize}"
458
- puts "field :update_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Update#{singularized_class_name.camelize}"
459
- puts "field :delete_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Delete#{singularized_class_name.camelize}"
460
- puts "\n\n#############################################################################################################"
452
+ [
453
+ create_mutation_end(class_name: singularized_class_name),
454
+ update_mutation(class_name: singularized_class_name),
455
+ delete_mutation(class_name: singularized_class_name)
456
+ ]
461
457
  end
462
458
 
463
459
  def create_query class_name: "souls"
@@ -477,7 +473,7 @@ module Souls
477
473
  end
478
474
  EOS
479
475
  end
480
- puts "Query #{class_name}.rb Auto Generated from schema.rb!: `#{file_path}`"
476
+ file_path
481
477
  end
482
478
 
483
479
  def create_queries class_name: "souls"
@@ -497,20 +493,13 @@ module Souls
497
493
  end
498
494
  end
499
495
  EOS
500
- puts "Query #{class_name.pluralize}.rb Auto Generated from schema.rb!: `#{file_path}`"
496
+ file_path
501
497
  end
502
498
  end
503
499
 
504
500
  def query class_name: "souls"
505
501
  singularized_class_name = class_name.singularize
506
- create_query class_name: singularized_class_name
507
- create_queries class_name: singularized_class_name
508
- puts "\n#############################################################################################################"
509
- puts "\nAdd these lines at `./app/graphql/types/query_type.rb`"
510
- puts "\n\n"
511
- puts "field :#{singularized_class_name}, resolber: Queries::#{singularized_class_name.camelize}"
512
- puts "field :#{singularized_class_name.pluralize}, Types::#{singularized_class_name.camelize}Type.connection_type, null: true"
513
- puts "\n\n#############################################################################################################"
502
+ [create_query(class_name: singularized_class_name), create_queries(class_name: singularized_class_name)]
514
503
  end
515
504
 
516
505
  def create_type_head class_name: "souls"
@@ -555,7 +544,7 @@ module Souls
555
544
  end
556
545
  EOS
557
546
  end
558
- puts "Type #{class_name}_type.rb Auto Generated from schema.rb!: `#{file_path}`"
547
+ [file_path]
559
548
  end
560
549
 
561
550
  def type class_name: "souls"
@@ -604,7 +593,7 @@ module Souls
604
593
  end
605
594
  EOS
606
595
  end
607
- puts "FactoryBot #{class_name.pluralize}.rb Auto Generated from schema.rb!: `#{file_path}`"
596
+ [file_path]
608
597
  end
609
598
 
610
599
  def rspec_factory class_name: "souls"
@@ -630,7 +619,7 @@ module Souls
630
619
  end
631
620
  EOS
632
621
  end
633
- puts "Rspec #{class_name}_spec.rb Auto Generated from schema.rb!: `#{file_path}`"
622
+ [file_path]
634
623
  end
635
624
 
636
625
  def rspec_mutation class_name: "souls"
@@ -673,15 +662,98 @@ module Souls
673
662
  # let's do this later
674
663
  end
675
664
 
676
- def migration class_name: "souls"
665
+ def migrate class_name: "souls"
677
666
  # `rake db:migrate`
678
- model class_name: class_name
679
- type class_name: class_name
680
- rspec_factory class_name: class_name
681
- rspec_model class_name: class_name
682
- query class_name: class_name
683
- mutation class_name: class_name
667
+ singularized_class_name = class_name.singularize
668
+ model_paths = model class_name: singularized_class_name
669
+ type_paths = type class_name: singularized_class_name
670
+ rspec_factory_paths = rspec_factory class_name: singularized_class_name
671
+ rspec_model_paths = rspec_model class_name: singularized_class_name
672
+ query_path = query class_name: singularized_class_name
673
+ mutation_path = mutation class_name: singularized_class_name
674
+ [
675
+ model: model_paths,
676
+ type: type_paths,
677
+ rspec_factory: rspec_factory_paths,
678
+ rspec_model: rspec_model_paths,
679
+ query: query_path,
680
+ mutation: mutation_path,
681
+ add_query_type: [
682
+ "field :#{singularized_class_name}, resolver: Queries::#{singularized_class_name.camelize}",
683
+ "field :#{singularized_class_name.pluralize}, Types::#{singularized_class_name.camelize}Type.connection_type, null: true"
684
+ ],
685
+ add_mutation_type: [
686
+ "field :create_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Create#{singularized_class_name.camelize}",
687
+ "field :update_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Update#{singularized_class_name.camelize}",
688
+ "field :delete_#{singularized_class_name}, mutation: Mutations::#{singularized_class_name.camelize}::Delete#{singularized_class_name.camelize}"
689
+ ]
690
+ ]
691
+ end
692
+
693
+ def migrate_all
694
+ puts "◆◆◆ Let's Auto Generate CRUD API ◆◆◆\n"
695
+ paths = get_tables.map do |class_name|
696
+ migrate class_name: class_name
697
+ end
698
+ puts "\n============== Model ======================\n\n"
699
+ paths.each do |class_name|
700
+ class_name.each do |path|
701
+ path[:model].each { |line| puts line }
702
+ end
703
+ end
704
+ puts "\n============== Type =======================\n\n"
705
+ paths.each do |class_name|
706
+ class_name.each do |path|
707
+ path[:type].each { |line| puts line }
708
+ end
709
+ end
710
+ puts "\n============== FactoryBot =================\n\n"
711
+ paths.each do |class_name|
712
+ class_name.each do |path|
713
+ path[:rspec_factory].each { |line| puts line }
714
+ end
715
+ end
716
+ puts "\n============== RspecModel =================\n\n"
717
+ paths.each do |class_name|
718
+ class_name.each do |path|
719
+ path[:rspec_model].each { |line| puts line }
720
+ end
721
+ end
722
+ puts "\n============== Query ======================\n\n"
723
+ paths.each do |class_name|
724
+ class_name.each do |path|
725
+ path[:query].each { |line| puts line }
726
+ end
727
+ end
728
+ puts "\n============== Mutation ===================\n\n"
729
+ paths.each do |class_name|
730
+ class_name.each do |path|
731
+ path[:mutation].each { |line| puts line }
732
+ end
733
+ end
734
+ puts "\nAll files created from ./db/schema.rb"
735
+ puts "\n\n"
736
+ puts "\n##########################################################\n"
737
+ puts "# #\n"
738
+ puts "# Add These Lines at ./app/graphql/types/query_type.rb #\n"
739
+ puts "# #\n"
740
+ puts "##########################################################\n\n\n"
741
+ paths.each do |class_name|
742
+ class_name.each do |path|
743
+ path[:add_query_type].each { |line| puts line }
744
+ end
745
+ end
746
+ puts "\n#############################################################\n"
747
+ puts "# #\n"
748
+ puts "# Add These Lines at ./app/graphql/types/mutation_type.rb #\n"
749
+ puts "# #\n"
750
+ puts "#############################################################\n\n\n"
751
+ paths.each do |class_name|
752
+ class_name.each do |path|
753
+ path[:add_mutation_type].each { |line| puts line }
754
+ end
755
+ end
684
756
  end
685
757
  end
686
758
  end
687
- end
759
+ end
@@ -1,3 +1,3 @@
1
1
  module Souls
2
- VERSION = "0.9.4"
2
+ VERSION = "0.9.6"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: souls
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.4
4
+ version: 0.9.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - POPPIN-FUMI