ibrain-core 0.3.2.pre.rc.3 → 0.3.2.pre.rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f2995126062624a882ac84d23bfa66ecc6a2ee79156f73ff43700077b1139948
4
- data.tar.gz: 21678de7589b37306026e39824cae8a926a48586847af5d3445504640ed38506
3
+ metadata.gz: 252b28b6eeabf6964e6c7f05005cfa4f6a4a95e4de1c57bbfa6aa48ce611b8d5
4
+ data.tar.gz: 78d8bb9abcc995ba030dd41a9e78953e6f1c565b46faee2d9f35f6dadcc9c110
5
5
  SHA512:
6
- metadata.gz: '08b3f507cc0691923e2d67997a9ad929c99f0824145ae9850dcb46bbf1dc4ff47975dcf7ee84064eee6ab702fb977ea868d4c34c485209b69382cb9cfc5891c5'
7
- data.tar.gz: 8493b0cfa3dd037018b27a64faf58030883df4c07bad132433e83894c719bdc0f9437eee1481c248e1ff243f425afdff7ab2ebe1140532457f7dca530eaaed1c
6
+ metadata.gz: e0d3b0387ec8bf25addffa1f3db712c53c9006f845fb09b6c9cc9747e138c6fa40771e8592a54951bda27243f9567396749622cc16fb845f056264f739b697ec
7
+ data.tar.gz: c3b3d713acf2f918a62555123b963ada19d9699b12d21eb9adc7240883416a3e5e5ff606c506255665f941dc1d72c995c6abfcf627385844e525bb1fcee33b4b
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails/generators'
4
+ require 'rails/generators/named_base'
5
+ require 'rails/generators/base'
6
+ require 'active_support'
7
+ require 'active_support/core_ext/string/inflections'
8
+
9
+ module Ibrain
10
+ module Core
11
+ class ModelGenerator < Rails::Generators::Base
12
+ desc "Create a model by name"
13
+ source_root File.expand_path('templates', __dir__)
14
+
15
+ argument :name, type: :string
16
+
17
+ def initialize(args, *options) # :nodoc:
18
+ # Unfreeze name in case it's given as a frozen string
19
+ args[0] = args[0].dup if args[0].is_a?(String) && args[0].frozen?
20
+ super
21
+
22
+ assign_names!(name)
23
+ end
24
+
25
+ attr_reader :file_name
26
+
27
+ def create_model_file
28
+ template "model.erb", "app/models/#{file_name}.rb"
29
+ end
30
+
31
+ private
32
+
33
+ def assign_names!(name)
34
+ @file_name = name.underscore
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ class <%= name %> < Ibrain::Base
4
+
5
+ end
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ibrain
4
- VERSION = "0.3.2-rc.3"
4
+ VERSION = "0.3.2-rc.4"
5
5
 
6
6
  def self.ibrain_version
7
7
  VERSION
8
8
  end
9
9
 
10
10
  def self.previous_ibrain_minor_version
11
- '0.3.2-rc.2'
11
+ '0.3.2-rc.3'
12
12
  end
13
13
 
14
14
  def self.ibrain_gem_version
@@ -10,7 +10,21 @@ namespace :ridgepole do
10
10
 
11
11
  desc 'Export database schema'
12
12
  task export: :environment do
13
- ridgepole('--export', "-E #{Rails.env}", '--split', "--output #{schema_file}")
13
+ ridgepole('--export', " #{Rails.env}", "--split", "--output #{schema_file}")
14
+
15
+ FileUtils.mkdir_p(schema_dir) unless File.directory?(schema_dir)
16
+
17
+ data = File.read(schema_file)
18
+ updated_data = data.gsub!("require '", "require 'schemas/")
19
+
20
+ File.open(schema_file, "w") { |file| file.puts updated_data }
21
+ system("cp #{db_dir}/*.schema #{schema_dir} && rm #{db_dir}/*.schema")
22
+
23
+ ActiveRecord::Base.connection.tables.each do |table_name|
24
+ system("bundle exec rails generate ibrain:core:model #{table_name.classify}")
25
+ end
26
+
27
+ system("bundle exec annotate --models --exclude fixtures")
14
28
  end
15
29
 
16
30
  desc 'import seed data'
@@ -23,8 +37,16 @@ namespace :ridgepole do
23
37
 
24
38
  private
25
39
 
40
+ def db_dir
41
+ Rails.root.join('db')
42
+ end
43
+
44
+ def schema_dir
45
+ "#{db_dir}/schemas"
46
+ end
47
+
26
48
  def schema_file
27
- Rails.root.join('db/Schemafile')
49
+ "#{db_dir}/Schemafile"
28
50
  end
29
51
 
30
52
  def config_file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ibrain-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2.pre.rc.3
4
+ version: 0.3.2.pre.rc.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tai Nguyen Van
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-20 00:00:00.000000000 Z
11
+ date: 2022-07-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord-session_store
@@ -229,6 +229,8 @@ files:
229
229
  - config/locales/jp.yml
230
230
  - config/locales/vi.yml
231
231
  - config/routes.rb
232
+ - lib/generators/ibrain/core/model_generator.rb
233
+ - lib/generators/ibrain/core/templates/model.erb
232
234
  - lib/generators/ibrain/graphql/core.rb
233
235
  - lib/generators/ibrain/graphql/mutation_generator.rb
234
236
  - lib/generators/ibrain/graphql/object_generator.rb
@@ -303,7 +305,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
303
305
  - !ruby/object:Gem::Version
304
306
  version: 1.3.1
305
307
  requirements: []
306
- rubygems_version: 3.2.22
308
+ rubygems_version: 3.3.7
307
309
  signing_key:
308
310
  specification_version: 4
309
311
  summary: Its Core is an sso authen gem for Ruby on Rails.