web47core 2.2.18 → 3.0.0

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: 2634a258267965ef476e8d35fa47a04ab43e0dcb0690d12496cdd1155b8c9c86
4
- data.tar.gz: a1f897abb8a68208537fd18d25f460ce2ec48156e05993d3b2627f46dcd462c7
3
+ metadata.gz: 566b3144e56826da109dad9c9aae596d8ae7f875d92d253f846dda027a44911b
4
+ data.tar.gz: 1e3688dcb0aea6d837b27a9417f085f6c0243577c2cc012cb65946ae22a3564f
5
5
  SHA512:
6
- metadata.gz: be313d46de430a646d0d0e847ab32a865a11b3c34455da3a6a327ee598680cde337e99e280506f507e07fe1a7a4cba57e9542d830107245ef5252643f1a411f0
7
- data.tar.gz: d024aafb910e644fffd3ac4615d30968703ad3d8a9b270f64f4e52f91f4dc6f0ebab9812781043dd346ae816035a7162764afa7478fb677469be1c663cf71b7e
6
+ metadata.gz: d355f655ffa529310e5b482b9cf24aec78dee43058214b48804f71db4aab8998bca051f5a6bff384dc5e3d4aa3f593b0ef65d6ff345598cb9dc2b03cdf556240
7
+ data.tar.gz: 2b57edd50900933a14f46bc39c8e382d5562cc422e542a5380b357544789972a2af1d3bbc636a5c118b17210086cc20fc1276613930d3b09dfacbe9a5adea7c9
data/README.md CHANGED
@@ -188,9 +188,7 @@ The following routes should be added to the correct namespace for your applicait
188
188
  #
189
189
  # System configuration
190
190
  #
191
- resource :system_configurations, only: %i[edit update show] do
192
- get :sync
193
- end
191
+ resource :system_configurations, only: %i[edit update show]
194
192
  #
195
193
  # Delayed jobs
196
194
  #
@@ -96,7 +96,13 @@ class StatusController < ActionController::Base
96
96
  #
97
97
  def delayed_jobs_status
98
98
  count = Delayed::Backend::Mongoid::Job.count
99
- report_success "#{count} Jobs", count: count
99
+ oldest = Delayed::Backend::Mongoid::Job.asc(:_id).limit(1).first
100
+ job_age = if oldest.present?
101
+ Time.now.utc.to_i - oldest.created_at.to_i
102
+ else
103
+ 0
104
+ end
105
+ report_success "#{count} Jobs", count: count, job_age: job_age
100
106
  rescue StandardError => error
101
107
  report_error(error)
102
108
  end
@@ -7,7 +7,6 @@
7
7
  .card-title=SystemConfiguration.environment.titleize
8
8
  .card-tray
9
9
  = edit_link_tag(SystemConfiguration, class_action_path(:edit))
10
- = replay_link_tag(SystemConfiguration, class_action_path(:sync))
11
10
  .card
12
11
  .card-content.section-data-tables
13
12
  %table.highlight.striped.data-table
@@ -16,7 +15,7 @@
16
15
  =table_header_tag :field
17
16
  =table_header_tag :value
18
17
  %tbody
19
- - SystemConfiguration.allowed_param_names.sort.each do |field|
18
+ - SystemConfiguration.allowed_param_names.each do |field|
20
19
  %tr
21
20
  %td=field
22
21
  %td=mask_system_configuration(field)
@@ -10,26 +10,15 @@ module CoreSystemConfigurationsController
10
10
  # Edit the system configuration
11
11
  #
12
12
  def edit
13
- system_configuration
14
- end
15
-
16
- # @abstract Cause the system configuration to be synced with the switchboard server
17
- def sync
18
- raise 'System Configuration not configured to sync' unless SystemConfiguration.switchboard_configured?
19
-
20
- Cron::SwitchboardSyncConfiguration.perform_later
21
- flash[:info] = 'System Configuration Refreshing in the Background'
22
- redirect_to index_path
23
- rescue StandardError => error
24
- log_controller_error error, true
25
- redirect_to index_path
13
+ load_configuration
26
14
  end
27
15
 
28
16
  #
29
17
  # Update and log the system configuration changes
30
18
  #
31
19
  def update
32
- system_configuration.update! system_configuration_params
20
+ # @system_configuration.update_attributes_and_log! @current_admin_user, system_configuration_params
21
+ SystemConfiguration.configuration.update! system_configuration_params
33
22
  if SystemConfiguration.switchboard_configured?
34
23
  flash[:info] = 'System Configuration Updated, sync job running in the background'
35
24
  Cron::SwitchboardSyncConfiguration.perform_later
@@ -39,7 +28,7 @@ module CoreSystemConfigurationsController
39
28
  redirect_to index_path
40
29
  rescue StandardError => error
41
30
  log_controller_error error
42
- system_configuration
31
+ load_configuration
43
32
  render :edit
44
33
  end
45
34
 
@@ -55,7 +44,7 @@ module CoreSystemConfigurationsController
55
44
  #
56
45
  # Load the current system configuration
57
46
  #
58
- def system_configuration
47
+ def load_configuration
59
48
  @system_configuration = SystemConfiguration.configuration
60
49
  end
61
50
  end
@@ -13,7 +13,6 @@ class ApplicationJob < ActiveJob::Base
13
13
  # Standard approach to running jobs
14
14
  #
15
15
  def perform(payload = {})
16
- Rails.cache.reconnect
17
16
  @started_at = Time.now.utc
18
17
  @payload = payload
19
18
  parse_payload
@@ -18,7 +18,7 @@ module Cron
18
18
  # Fields
19
19
  #
20
20
  field :name, type: String
21
- field :enabled, type: Boolean, default: true
21
+ field :enabled, type: Mongoid::Boolean, default: true
22
22
  field :min, type: String, default: 0
23
23
  field :hour, type: String, default: 0
24
24
  field :wday, type: String, default: WILDCARD
@@ -11,7 +11,7 @@ module ApiTokenable
11
11
  # store api token
12
12
  field :api_token, type: String
13
13
  # if the api token should be reset
14
- field :reset_api_token, type: Boolean, default: true
14
+ field :reset_api_token, type: Mongoid::Boolean, default: true
15
15
  field :last_authenticated_at, type: Time
16
16
  field :last_authenticated_ip, type: String
17
17
  # call back to reset the api token.
@@ -15,7 +15,6 @@ module AwsConfiguration
15
15
  field :aws_access_key_id, type: String
16
16
  field :aws_secret_access_key, type: String
17
17
  field :aws_auto_scaling_group_name, type: String
18
- field :aws_bucket_name, type: String
19
18
  end
20
19
  end
21
20
 
@@ -23,7 +22,7 @@ module AwsConfiguration
23
22
  # Make sure the password doesn't get blanked out on an update
24
23
  #
25
24
  def secure_fields
26
- super + %i[aws_secret_access_key]
25
+ super + %i[aws_access_secret]
27
26
  end
28
27
 
29
28
  #
@@ -39,28 +38,4 @@ module AwsConfiguration
39
38
  def aws_auto_scaling_configured?
40
39
  aws_configured? && aws_auto_scaling_group_name.present?
41
40
  end
42
-
43
- #
44
- # AWS client.
45
- #
46
- def aws_ec2_client
47
- return nil unless aws_configured?
48
-
49
- @aws_ec2_client ||= Aws::EC2::Client.new(region: aws_region,
50
- credentials: Aws::Credentials.new(aws_access_key_id,
51
- aws_secret_access_key))
52
- end
53
-
54
- #
55
- # S3 Client
56
- #
57
- def aws_s3_client
58
- return nil unless aws_configured?
59
-
60
- # We want this to remake itself each time because it is possible that the
61
- # => user would change the access keys in between actions. Huh?
62
- @aws_s3_client ||= Aws::S3::Client.new(region: aws_region,
63
- access_key_id: aws_access_key_id,
64
- secret_access_key: aws_secret_access_key)
65
- end
66
41
  end
@@ -17,9 +17,14 @@
17
17
  #
18
18
  module CdnUrl
19
19
  extend ActiveSupport::Concern
20
+ #
21
+ # Constants
22
+ #
23
+ STYLE_S3_FILE_PATH = ':class/:attachment/:id/:style.:extension' unless defined? STYLE_S3_FILE_PATH
24
+ STYLE_FILE_PATH = 'public/system/:class/:attachment/:id/:style.:extension' unless defined? STYLE_FILE_PATH
25
+ STYLE_S3_FILE_URL = ':s3_domain_url' unless defined? STYLE_S3_FILE_URL
26
+ STYLE_FILE_URL = ':rails_root/public/system/:class/:attachment/:id/:style.:extension' unless defined? STYLE_FILE_URL
20
27
 
21
- # @abstract Catch methods started with `cdn_` and respond to those requests if there is a
22
- # matching method ending in `_url`
23
28
  def method_missing(method, *args)
24
29
  if method.to_s.start_with? 'cdn_'
25
30
  url = if args.blank?
@@ -19,7 +19,7 @@ module CoreSmtpConfiguration
19
19
  field :smtp_port, type: Integer, default: 587
20
20
  field :smtp_user_name, type: String
21
21
  field :smtp_password, type: String
22
- field :smtp_enable_starttls_auto, type: Boolean, default: false
22
+ field :smtp_enable_starttls_auto, type: Mongoid::Boolean, default: false
23
23
  field :mailgun_api_key, type: String
24
24
  field :email_notification_ttl, type: Integer, default: 180
25
25
  end
@@ -23,7 +23,7 @@ module CoreSystemConfiguration
23
23
  # Fields
24
24
  #
25
25
  field :environment, type: String, default: 'test'
26
- field :fips_mode, type: Boolean, default: false
26
+ field :fips_mode, type: Mongoid::Boolean, default: false
27
27
  field :fav_icon_path, { type: String, default: '/favicon.ico' }
28
28
  field :stack_logo_path, { type: String, default: 'ui-company-logo.png' }
29
29
  field :primary_stylesheet, { type: String, default: 'app47' }
@@ -58,9 +58,9 @@ module CoreSystemConfiguration
58
58
  #
59
59
  # NOTE: Currently ignored Codacy issue: When using 'method_missing', fall back on 'super'
60
60
  #
61
- def method_missing(method, *args, &block)
61
+ def method_missing(method, ...)
62
62
  if configuration.respond_to?(method)
63
- configuration.send(method, *args, &block)
63
+ configuration.send(method, ...)
64
64
  else
65
65
  super
66
66
  end
@@ -13,7 +13,7 @@ module DelayedJobConfiguration
13
13
  #
14
14
  field :delayed_job_max_allowed_method, type: String, default: 'max'
15
15
  field :delayed_job_max_allowed_factor, type: Integer, default: 5
16
- field :delayed_job_restart_orphaned, type: Boolean, default: false
16
+ field :delayed_job_restart_orphaned, type: Mongoid::Boolean, default: false
17
17
  #
18
18
  # Validations
19
19
  #
@@ -17,7 +17,7 @@ module EmailAble
17
17
  field :email_bounced_at, type: Time
18
18
  field :email_bounce_reason, type: String
19
19
  field :unconfirmed_email, type: String
20
- field :email_enabled, type: Boolean, default: true
20
+ field :email_enabled, type: Mongoid::Boolean, default: true
21
21
  #
22
22
  # Validations
23
23
  #
@@ -13,7 +13,7 @@ module ServerProcessAble
13
13
  #
14
14
  field :host_name, type: String
15
15
  field :pid, type: Integer
16
- field :running, type: Boolean, default: false
16
+ field :running, type: Mongoid::Boolean, default: false
17
17
  field :last_check_in_at, type: Time
18
18
  #
19
19
  # Validations
@@ -69,7 +69,7 @@ module StandardModel
69
69
  names = field_names(filter_names)
70
70
  names += associations if include_relationships
71
71
  names.delete_if { |name| filter_names.include?(name) }
72
- rescue StandardError
72
+ rescue StandardError => error
73
73
  attribute_names.delete_if { |name| filter_names.include?(name) }
74
74
  end
75
75
 
@@ -87,12 +87,8 @@ module StandardModel
87
87
  #
88
88
  def many_to_many_associations
89
89
  associations = []
90
- reflect_on_all_associations.each do |association|
91
- if Mongoid::Compatibility::Version.mongoid7_or_newer?
92
- next unless association.relation == Mongoid::Association::Referenced::HasAndBelongsToMany::Proxy
93
- else
94
- next unless association.macro == :has_and_belongs_to_many
95
- end
90
+ reflect_on_all_associations(:has_and_belongs_to_many).each do |association|
91
+ next unless association.relation == Mongoid::Association::Referenced::HasAndBelongsToMany::Proxy
96
92
 
97
93
  associations << { association.key => [] }
98
94
  end
@@ -11,7 +11,7 @@ module Delayed
11
11
  #
12
12
  # Relationships
13
13
  #
14
- has_many :runs, class_name: 'Delayed::Jobs::Run', dependent: :restrict
14
+ has_many :runs, class_name: 'Delayed::Jobs::Run', dependent: :restrict_with_exception
15
15
 
16
16
  #
17
17
  # Record a job relative to the worker
@@ -7,7 +7,7 @@ class NotificationTemplate < Template
7
7
  #
8
8
  # Fields
9
9
  #
10
- field :draft, type: Boolean, default: true
10
+ field :draft, type: Mongoid::Boolean, default: true
11
11
  #
12
12
  # Relationships
13
13
  #
@@ -10,10 +10,10 @@ class SmtpConfiguration
10
10
  field :port, type: Integer, default: 587
11
11
  field :authentication_method, type: String
12
12
  field :confirmation_token, type: String
13
- field :confirmed, type: Boolean, default: false
13
+ field :confirmed, type: Mongoid::Boolean, default: false
14
14
  field :verification_message, type: String
15
- field :active, type: Boolean, default: false
16
- field :ssl, type: Boolean, default: false
15
+ field :active, type: Mongoid::Boolean, default: false
16
+ field :ssl, type: Mongoid::Boolean, default: false
17
17
  field :server_name, type: String
18
18
  field :username, type: String
19
19
  field :password, type: String
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Web47core
4
- VERSION = '2.2.18'
4
+ VERSION = '3.0.0'
5
5
  end
data/lib/web47core.rb CHANGED
@@ -9,7 +9,6 @@ require 'app/models/concerns/cdn_url'
9
9
  require 'app/models/concerns/delayed_job_configuration'
10
10
  require 'app/models/concerns/email_able'
11
11
  require 'app/models/concerns/encrypted_password'
12
- require 'app/models/concerns/google_sso_configuration'
13
12
  require 'app/models/concerns/search_able'
14
13
  require 'app/models/concerns/role_able'
15
14
  require 'app/models/concerns/time_zone_able'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web47core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.18
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Schroeder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-17 00:00:00.000000000 Z
11
+ date: 2022-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -44,100 +44,70 @@ dependencies:
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.52'
48
- - - "<"
49
- - !ruby/object:Gem::Version
50
- version: '2'
47
+ version: '0'
51
48
  type: :runtime
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
52
  - - ">="
56
53
  - !ruby/object:Gem::Version
57
- version: '1.52'
58
- - - "<"
59
- - !ruby/object:Gem::Version
60
- version: '2'
54
+ version: '0'
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: cancancan
63
57
  requirement: !ruby/object:Gem::Requirement
64
58
  requirements:
65
59
  - - ">="
66
60
  - !ruby/object:Gem::Version
67
- version: '3'
68
- - - "<"
69
- - !ruby/object:Gem::Version
70
- version: '4'
61
+ version: '0'
71
62
  type: :runtime
72
63
  prerelease: false
73
64
  version_requirements: !ruby/object:Gem::Requirement
74
65
  requirements:
75
66
  - - ">="
76
67
  - !ruby/object:Gem::Version
77
- version: '3'
78
- - - "<"
79
- - !ruby/object:Gem::Version
80
- version: '4'
68
+ version: '0'
81
69
  - !ruby/object:Gem::Dependency
82
70
  name: daemons
83
71
  requirement: !ruby/object:Gem::Requirement
84
72
  requirements:
85
73
  - - ">="
86
74
  - !ruby/object:Gem::Version
87
- version: 1.3.1
88
- - - "<"
89
- - !ruby/object:Gem::Version
90
- version: '2'
75
+ version: '0'
91
76
  type: :runtime
92
77
  prerelease: false
93
78
  version_requirements: !ruby/object:Gem::Requirement
94
79
  requirements:
95
80
  - - ">="
96
81
  - !ruby/object:Gem::Version
97
- version: 1.3.1
98
- - - "<"
99
- - !ruby/object:Gem::Version
100
- version: '2'
82
+ version: '0'
101
83
  - !ruby/object:Gem::Dependency
102
84
  name: delayed_job_mongoid
103
85
  requirement: !ruby/object:Gem::Requirement
104
86
  requirements:
105
87
  - - ">="
106
88
  - !ruby/object:Gem::Version
107
- version: '2.3'
108
- - - "<"
109
- - !ruby/object:Gem::Version
110
- version: '3'
89
+ version: '0'
111
90
  type: :runtime
112
91
  prerelease: false
113
92
  version_requirements: !ruby/object:Gem::Requirement
114
93
  requirements:
115
94
  - - ">="
116
95
  - !ruby/object:Gem::Version
117
- version: '2.3'
118
- - - "<"
119
- - !ruby/object:Gem::Version
120
- version: '3'
96
+ version: '0'
121
97
  - !ruby/object:Gem::Dependency
122
98
  name: email_format
123
99
  requirement: !ruby/object:Gem::Requirement
124
100
  requirements:
125
101
  - - ">="
126
102
  - !ruby/object:Gem::Version
127
- version: '1'
128
- - - "<"
129
- - !ruby/object:Gem::Version
130
- version: '2'
103
+ version: '0'
131
104
  type: :runtime
132
105
  prerelease: false
133
106
  version_requirements: !ruby/object:Gem::Requirement
134
107
  requirements:
135
108
  - - ">="
136
109
  - !ruby/object:Gem::Version
137
- version: '1'
138
- - - "<"
139
- - !ruby/object:Gem::Version
140
- version: '2'
110
+ version: '0'
141
111
  - !ruby/object:Gem::Dependency
142
112
  name: haml
143
113
  requirement: !ruby/object:Gem::Requirement
@@ -158,94 +128,70 @@ dependencies:
158
128
  requirements:
159
129
  - - ">="
160
130
  - !ruby/object:Gem::Version
161
- version: 2.2.0
162
- - - "<"
163
- - !ruby/object:Gem::Version
164
- version: '3'
131
+ version: '0'
165
132
  type: :runtime
166
133
  prerelease: false
167
134
  version_requirements: !ruby/object:Gem::Requirement
168
135
  requirements:
169
136
  - - ">="
170
137
  - !ruby/object:Gem::Version
171
- version: 2.2.0
172
- - - "<"
173
- - !ruby/object:Gem::Version
174
- version: '3'
138
+ version: '0'
175
139
  - !ruby/object:Gem::Dependency
176
140
  name: liquid
177
141
  requirement: !ruby/object:Gem::Requirement
178
142
  requirements:
179
143
  - - ">="
180
144
  - !ruby/object:Gem::Version
181
- version: '5'
182
- - - "<"
183
- - !ruby/object:Gem::Version
184
- version: '6'
145
+ version: '0'
185
146
  type: :runtime
186
147
  prerelease: false
187
148
  version_requirements: !ruby/object:Gem::Requirement
188
149
  requirements:
189
150
  - - ">="
190
151
  - !ruby/object:Gem::Version
191
- version: '5'
192
- - - "<"
193
- - !ruby/object:Gem::Version
194
- version: '6'
152
+ version: '0'
195
153
  - !ruby/object:Gem::Dependency
196
154
  name: materialize-sass
197
155
  requirement: !ruby/object:Gem::Requirement
198
156
  requirements:
199
157
  - - ">="
200
158
  - !ruby/object:Gem::Version
201
- version: 1.0.0
202
- - - "<"
203
- - !ruby/object:Gem::Version
204
- version: '2'
159
+ version: '0'
205
160
  type: :runtime
206
161
  prerelease: false
207
162
  version_requirements: !ruby/object:Gem::Requirement
208
163
  requirements:
209
164
  - - ">="
210
165
  - !ruby/object:Gem::Version
211
- version: 1.0.0
212
- - - "<"
213
- - !ruby/object:Gem::Version
214
- version: '2'
166
+ version: '0'
215
167
  - !ruby/object:Gem::Dependency
216
168
  name: mongoid
217
169
  requirement: !ruby/object:Gem::Requirement
218
170
  requirements:
219
- - - "<"
171
+ - - "~>"
220
172
  - !ruby/object:Gem::Version
221
- version: '7'
173
+ version: 7.5.2
222
174
  type: :runtime
223
175
  prerelease: false
224
176
  version_requirements: !ruby/object:Gem::Requirement
225
177
  requirements:
226
- - - "<"
178
+ - - "~>"
227
179
  - !ruby/object:Gem::Version
228
- version: '7'
180
+ version: 7.5.2
229
181
  - !ruby/object:Gem::Dependency
230
182
  name: rails
231
183
  requirement: !ruby/object:Gem::Requirement
232
184
  requirements:
233
- - - ">="
234
- - !ruby/object:Gem::Version
235
- version: '5'
236
- - - "<"
185
+ - - "~>"
237
186
  - !ruby/object:Gem::Version
238
- version: '6'
187
+ version: 6.1.7
239
188
  type: :runtime
240
189
  prerelease: false
241
190
  version_requirements: !ruby/object:Gem::Requirement
242
191
  requirements:
243
- - - ">="
244
- - !ruby/object:Gem::Version
245
- version: '5'
246
- - - "<"
192
+ - - "~>"
247
193
  - !ruby/object:Gem::Version
248
- version: '6'
194
+ version: 6.1.7
249
195
  - !ruby/object:Gem::Dependency
250
196
  name: railties
251
197
  requirement: !ruby/object:Gem::Requirement
@@ -266,60 +212,28 @@ dependencies:
266
212
  requirements:
267
213
  - - ">="
268
214
  - !ruby/object:Gem::Version
269
- version: '4.2'
270
- - - "<"
271
- - !ruby/object:Gem::Version
272
- version: '5'
273
- type: :runtime
274
- prerelease: false
275
- version_requirements: !ruby/object:Gem::Requirement
276
- requirements:
277
- - - ">="
278
- - !ruby/object:Gem::Version
279
- version: '4.2'
280
- - - "<"
281
- - !ruby/object:Gem::Version
282
- version: '5'
283
- - !ruby/object:Gem::Dependency
284
- name: redis-rails
285
- requirement: !ruby/object:Gem::Requirement
286
- requirements:
287
- - - ">="
288
- - !ruby/object:Gem::Version
289
- version: '5'
290
- - - "<"
291
- - !ruby/object:Gem::Version
292
- version: '6'
215
+ version: '0'
293
216
  type: :runtime
294
217
  prerelease: false
295
218
  version_requirements: !ruby/object:Gem::Requirement
296
219
  requirements:
297
220
  - - ">="
298
221
  - !ruby/object:Gem::Version
299
- version: '5'
300
- - - "<"
301
- - !ruby/object:Gem::Version
302
- version: '6'
222
+ version: '0'
303
223
  - !ruby/object:Gem::Dependency
304
224
  name: rest-client
305
225
  requirement: !ruby/object:Gem::Requirement
306
226
  requirements:
307
227
  - - ">="
308
228
  - !ruby/object:Gem::Version
309
- version: 2.1.0
310
- - - "<"
311
- - !ruby/object:Gem::Version
312
- version: '3'
229
+ version: '0'
313
230
  type: :runtime
314
231
  prerelease: false
315
232
  version_requirements: !ruby/object:Gem::Requirement
316
233
  requirements:
317
234
  - - ">="
318
235
  - !ruby/object:Gem::Version
319
- version: 2.1.0
320
- - - "<"
321
- - !ruby/object:Gem::Version
322
- version: '3'
236
+ version: '0'
323
237
  - !ruby/object:Gem::Dependency
324
238
  name: sass
325
239
  requirement: !ruby/object:Gem::Requirement
@@ -354,14 +268,14 @@ dependencies:
354
268
  requirements:
355
269
  - - ">="
356
270
  - !ruby/object:Gem::Version
357
- version: '5'
271
+ version: '0'
358
272
  type: :runtime
359
273
  prerelease: false
360
274
  version_requirements: !ruby/object:Gem::Requirement
361
275
  requirements:
362
276
  - - ">="
363
277
  - !ruby/object:Gem::Version
364
- version: '5'
278
+ version: '0'
365
279
  - !ruby/object:Gem::Dependency
366
280
  name: tzinfo
367
281
  requirement: !ruby/object:Gem::Requirement
@@ -382,20 +296,14 @@ dependencies:
382
296
  requirements:
383
297
  - - ">="
384
298
  - !ruby/object:Gem::Version
385
- version: '1'
386
- - - "<"
387
- - !ruby/object:Gem::Version
388
- version: '2'
299
+ version: '0'
389
300
  type: :runtime
390
301
  prerelease: false
391
302
  version_requirements: !ruby/object:Gem::Requirement
392
303
  requirements:
393
304
  - - ">="
394
305
  - !ruby/object:Gem::Version
395
- version: '1'
396
- - - "<"
397
- - !ruby/object:Gem::Version
398
- version: '2'
306
+ version: '0'
399
307
  - !ruby/object:Gem::Dependency
400
308
  name: valid_url
401
309
  requirement: !ruby/object:Gem::Requirement
@@ -428,36 +336,30 @@ dependencies:
428
336
  name: codacy-coverage
429
337
  requirement: !ruby/object:Gem::Requirement
430
338
  requirements:
431
- - - '='
339
+ - - ">="
432
340
  - !ruby/object:Gem::Version
433
- version: 2.2.1
341
+ version: '0'
434
342
  type: :development
435
343
  prerelease: false
436
344
  version_requirements: !ruby/object:Gem::Requirement
437
345
  requirements:
438
- - - '='
346
+ - - ">="
439
347
  - !ruby/object:Gem::Version
440
- version: 2.2.1
348
+ version: '0'
441
349
  - !ruby/object:Gem::Dependency
442
350
  name: database_cleaner-mongoid
443
351
  requirement: !ruby/object:Gem::Requirement
444
352
  requirements:
445
353
  - - ">="
446
354
  - !ruby/object:Gem::Version
447
- version: '2'
448
- - - "<"
449
- - !ruby/object:Gem::Version
450
- version: '3'
355
+ version: '0'
451
356
  type: :development
452
357
  prerelease: false
453
358
  version_requirements: !ruby/object:Gem::Requirement
454
359
  requirements:
455
360
  - - ">="
456
361
  - !ruby/object:Gem::Version
457
- version: '2'
458
- - - "<"
459
- - !ruby/object:Gem::Version
460
- version: '3'
362
+ version: '0'
461
363
  - !ruby/object:Gem::Dependency
462
364
  name: factory_bot
463
365
  requirement: !ruby/object:Gem::Requirement
@@ -492,20 +394,14 @@ dependencies:
492
394
  requirements:
493
395
  - - ">="
494
396
  - !ruby/object:Gem::Version
495
- version: '3'
496
- - - "<"
497
- - !ruby/object:Gem::Version
498
- version: '4'
397
+ version: '0'
499
398
  type: :development
500
399
  prerelease: false
501
400
  version_requirements: !ruby/object:Gem::Requirement
502
401
  requirements:
503
402
  - - ">="
504
403
  - !ruby/object:Gem::Version
505
- version: '3'
506
- - - "<"
507
- - !ruby/object:Gem::Version
508
- version: '4'
404
+ version: '0'
509
405
  - !ruby/object:Gem::Dependency
510
406
  name: minitest
511
407
  requirement: !ruby/object:Gem::Requirement
@@ -524,16 +420,16 @@ dependencies:
524
420
  name: minitest-rails
525
421
  requirement: !ruby/object:Gem::Requirement
526
422
  requirements:
527
- - - "~>"
423
+ - - ">="
528
424
  - !ruby/object:Gem::Version
529
- version: '3'
425
+ version: '0'
530
426
  type: :development
531
427
  prerelease: false
532
428
  version_requirements: !ruby/object:Gem::Requirement
533
429
  requirements:
534
- - - "~>"
430
+ - - ">="
535
431
  - !ruby/object:Gem::Version
536
- version: '3'
432
+ version: '0'
537
433
  - !ruby/object:Gem::Dependency
538
434
  name: minitest-reporters
539
435
  requirement: !ruby/object:Gem::Requirement
@@ -566,16 +462,16 @@ dependencies:
566
462
  name: shoulda
567
463
  requirement: !ruby/object:Gem::Requirement
568
464
  requirements:
569
- - - ">="
465
+ - - "~>"
570
466
  - !ruby/object:Gem::Version
571
- version: '0'
467
+ version: 4.0.0
572
468
  type: :development
573
469
  prerelease: false
574
470
  version_requirements: !ruby/object:Gem::Requirement
575
471
  requirements:
576
- - - ">="
472
+ - - "~>"
577
473
  - !ruby/object:Gem::Version
578
- version: '0'
474
+ version: 4.0.0
579
475
  - !ruby/object:Gem::Dependency
580
476
  name: shoulda-matchers
581
477
  requirement: !ruby/object:Gem::Requirement
@@ -591,7 +487,7 @@ dependencies:
591
487
  - !ruby/object:Gem::Version
592
488
  version: '0'
593
489
  - !ruby/object:Gem::Dependency
594
- name: simplecov
490
+ name: shoulda-context
595
491
  requirement: !ruby/object:Gem::Requirement
596
492
  requirements:
597
493
  - - ">="
@@ -605,7 +501,7 @@ dependencies:
605
501
  - !ruby/object:Gem::Version
606
502
  version: '0'
607
503
  - !ruby/object:Gem::Dependency
608
- name: test-unit
504
+ name: simplecov
609
505
  requirement: !ruby/object:Gem::Requirement
610
506
  requirements:
611
507
  - - ">="
@@ -619,45 +515,33 @@ dependencies:
619
515
  - !ruby/object:Gem::Version
620
516
  version: '0'
621
517
  - !ruby/object:Gem::Dependency
622
- name: vcr
518
+ name: test-unit
623
519
  requirement: !ruby/object:Gem::Requirement
624
520
  requirements:
625
521
  - - ">="
626
522
  - !ruby/object:Gem::Version
627
- version: '6'
628
- - - "<"
629
- - !ruby/object:Gem::Version
630
- version: '7'
523
+ version: '0'
631
524
  type: :development
632
525
  prerelease: false
633
526
  version_requirements: !ruby/object:Gem::Requirement
634
527
  requirements:
635
528
  - - ">="
636
529
  - !ruby/object:Gem::Version
637
- version: '6'
638
- - - "<"
639
- - !ruby/object:Gem::Version
640
- version: '7'
530
+ version: '0'
641
531
  - !ruby/object:Gem::Dependency
642
532
  name: webmock
643
533
  requirement: !ruby/object:Gem::Requirement
644
534
  requirements:
645
535
  - - ">="
646
536
  - !ruby/object:Gem::Version
647
- version: '3.11'
648
- - - "<"
649
- - !ruby/object:Gem::Version
650
- version: '4'
537
+ version: '0'
651
538
  type: :development
652
539
  prerelease: false
653
540
  version_requirements: !ruby/object:Gem::Requirement
654
541
  requirements:
655
542
  - - ">="
656
543
  - !ruby/object:Gem::Version
657
- version: '3.11'
658
- - - "<"
659
- - !ruby/object:Gem::Version
660
- version: '4'
544
+ version: '0'
661
545
  description: Core components used in all our web products.
662
546
  email:
663
547
  - chris@app47.com
@@ -762,7 +646,6 @@ files:
762
646
  - lib/app/models/concerns/delayed_job_configuration.rb
763
647
  - lib/app/models/concerns/email_able.rb
764
648
  - lib/app/models/concerns/encrypted_password.rb
765
- - lib/app/models/concerns/google_sso_configuration.rb
766
649
  - lib/app/models/concerns/role_able.rb
767
650
  - lib/app/models/concerns/search_able.rb
768
651
  - lib/app/models/concerns/secure_fields.rb
@@ -812,14 +695,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
812
695
  requirements:
813
696
  - - "~>"
814
697
  - !ruby/object:Gem::Version
815
- version: '2.7'
698
+ version: 3.0.2
816
699
  required_rubygems_version: !ruby/object:Gem::Requirement
817
700
  requirements:
818
701
  - - ">="
819
702
  - !ruby/object:Gem::Version
820
703
  version: '0'
821
704
  requirements: []
822
- rubygems_version: 3.1.2
705
+ rubygems_version: 3.2.22
823
706
  signing_key:
824
707
  specification_version: 4
825
708
  summary: App47 Web Core Library.
@@ -1,32 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- #
4
- # Google SSO Configuration
5
- #
6
- module GoogleSsoConfiguration
7
- extend ActiveSupport::Concern
8
-
9
- def self.included(base)
10
- base.class_eval do
11
- #
12
- # Fields
13
- #
14
- field :google_client_id, type: String
15
- field :google_client_secret, type: String
16
- end
17
- end
18
-
19
- #
20
- # Make sure the password doesn't get blanked out on an update
21
- #
22
- def secure_fields
23
- super + %i[google_client_secret]
24
- end
25
-
26
- #
27
- # Determine if AWS is configured
28
- #
29
- def google_sso_configured?
30
- google_client_id.present? && google_client_secret.present?
31
- end
32
- end