spree_cm_commissioner 1.8.6 → 1.8.7.pre.beta1

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: 8cd5a0a2e3fc958b2a2e6bf0fd4dcd5773be9b512038dd183613b9586162c725
4
- data.tar.gz: 3d37e405da973e87aa03bd9177dd3474d720106e8f44ac9524156623aa586d4a
3
+ metadata.gz: c5c82306658e75ae6622d3a57418ed2c33fa59431a139f6df65261ab4c66cc66
4
+ data.tar.gz: ad149426344cd2aed27ebbf8734e1200006db9cb849f2fb68e72ad3f5fb40afb
5
5
  SHA512:
6
- metadata.gz: f16265bfb68e1ed87973e1b5afc987d99362e627f7a0072f56e10445712c2516b841a3a8285ee8f20961cbcf3eddfcfbacbd7829156b834875126b16834684fe
7
- data.tar.gz: 7bde1b69e06d5e56ab2b505784f44e75ecf930ca381f19a758c851dfc7da721b9e24895da8b51553ff0ac613f5de1b0a6a24f27066917e768728bfdc062e27f1
6
+ metadata.gz: 601ff2d02e0a2054ec59ab126e4c9fc078f23f4e275e24bf9180ed5048d9a3bcbacd4b27a3f94a74e2efe69552fad35365bacacac050a9feeade522fd56eb50a
7
+ data.tar.gz: 23a7212be5f02cdfb1d9b9e5b3be810c2d37e8e3eb33ea98feb2b6a6ca537a2d8f5dd6157e7c8f7e54146f8234e9e7d58fea670d47dd6282a87f1d47b0f3adb5
data/Gemfile.lock CHANGED
@@ -34,12 +34,13 @@ GIT
34
34
  PATH
35
35
  remote: .
36
36
  specs:
37
- spree_cm_commissioner (1.8.6)
37
+ spree_cm_commissioner (1.8.7.pre.beta1)
38
38
  activerecord-multi-tenant
39
39
  activerecord_json_validator (~> 2.1, >= 2.1.3)
40
40
  aws-sdk-cloudfront
41
41
  aws-sdk-ecs
42
42
  aws-sdk-s3
43
+ blazer (~> 3.0.0)
43
44
  byebug
44
45
  counter_culture (~> 3.2)
45
46
  dry-validation (~> 1.10)
@@ -215,6 +216,12 @@ GEM
215
216
  base64 (0.1.1)
216
217
  bcrypt (3.1.19)
217
218
  bigdecimal (3.1.8)
219
+ blazer (3.0.4)
220
+ activerecord (>= 6.1)
221
+ chartkick (>= 5)
222
+ csv
223
+ railties (>= 6.1)
224
+ safely_block (>= 0.4)
218
225
  bootstrap (4.6.2)
219
226
  autoprefixer-rails (>= 9.1.0)
220
227
  popper_js (>= 1.16.1, < 2)
@@ -238,6 +245,7 @@ GEM
238
245
  capybara-select-2 (0.5.1)
239
246
  carmen (1.1.3)
240
247
  activesupport (>= 3.0.0)
248
+ chartkick (5.1.4)
241
249
  chunky_png (1.4.0)
242
250
  coderay (1.1.3)
243
251
  concurrent-ruby (1.2.2)
@@ -253,6 +261,7 @@ GEM
253
261
  crass (1.0.6)
254
262
  css_parser (1.16.0)
255
263
  addressable
264
+ csv (3.3.3)
256
265
  database_cleaner (2.0.2)
257
266
  database_cleaner-active_record (>= 2, < 3)
258
267
  database_cleaner-active_record (2.1.0)
@@ -698,6 +707,7 @@ GEM
698
707
  ffi (~> 1.12)
699
708
  ruby2_keywords (0.0.5)
700
709
  rubyzip (2.3.2)
710
+ safely_block (0.4.1)
701
711
  sass-rails (6.0.0)
702
712
  sassc-rails (~> 2.1, >= 2.1.1)
703
713
  sassc (2.4.0)
@@ -1,10 +1,15 @@
1
+ # https://stackoverflow.com/questions/77318060/blazer-raised-activerecordconnectionnotestablished
1
2
  module Blazer
2
3
  module BaseControllerDecorator
3
4
  def self.prepended(base)
5
+ base.around_action :set_writing_role
4
6
  base.before_action :restrict_organizer_access
5
7
  end
6
8
 
7
- private
9
+ # Annonymous block: https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Naming/BlockForwarding
10
+ def set_writing_role(&block)
11
+ ActiveRecord::Base.connected_to(role: :writing, &block)
12
+ end
8
13
 
9
14
  def restrict_organizer_access
10
15
  return unless spree_current_user.organizer? && !spree_current_user.admin?
@@ -15,4 +20,4 @@ module Blazer
15
20
  end
16
21
  end
17
22
 
18
- Blazer::BaseController.prepend(Blazer::BaseControllerDecorator) if defined?(Blazer::BaseController)
23
+ Blazer::BaseController.prepend(Blazer::BaseControllerDecorator) unless Blazer::BaseController.ancestors.include?(Blazer::BaseControllerDecorator)
data/config/routes.rb CHANGED
@@ -1,5 +1,10 @@
1
1
  Spree::Core::Engine.add_routes do
2
2
  # Add your extension routes here
3
+
4
+ authenticate :spree_user, -> (user) { user.admin? || user.organizer? } do
5
+ mount Blazer::Engine, at: 'admin/bi_reports'
6
+ end
7
+
3
8
  namespace :admin do
4
9
  post '/invalidate_api_caches', to: 'base#invalidate_api_caches'
5
10
 
@@ -0,0 +1,47 @@
1
+ class InstallBlazer < ActiveRecord::Migration[7.0]
2
+ def change
3
+ create_table :blazer_queries do |t|
4
+ t.references :creator
5
+ t.string :name
6
+ t.text :description
7
+ t.text :statement
8
+ t.string :data_source
9
+ t.string :status
10
+ t.timestamps null: false
11
+ end
12
+
13
+ create_table :blazer_audits do |t|
14
+ t.references :user
15
+ t.references :query
16
+ t.text :statement
17
+ t.string :data_source
18
+ t.datetime :created_at
19
+ end
20
+
21
+ create_table :blazer_dashboards do |t|
22
+ t.references :creator
23
+ t.string :name
24
+ t.timestamps null: false
25
+ end
26
+
27
+ create_table :blazer_dashboard_queries do |t|
28
+ t.references :dashboard
29
+ t.references :query
30
+ t.integer :position
31
+ t.timestamps null: false
32
+ end
33
+
34
+ create_table :blazer_checks do |t|
35
+ t.references :creator
36
+ t.references :query
37
+ t.string :state
38
+ t.string :schedule
39
+ t.text :emails
40
+ t.text :slack_channels
41
+ t.string :check_type
42
+ t.text :message
43
+ t.datetime :last_run_at
44
+ t.timestamps null: false
45
+ end
46
+ end
47
+ end
@@ -7,4 +7,3 @@ class CreateSpreeCmCommissionerTaxonBlazerQuery < ActiveRecord::Migration[7.0]
7
7
  end
8
8
  end
9
9
  end
10
-
@@ -12,10 +12,10 @@ module SpreeCmCommissioner
12
12
 
13
13
  def add_migrations
14
14
  gems = %i[
15
+ blazer
15
16
  spree_multi_vendor
16
17
  spree_cm_commissioner
17
18
  ]
18
-
19
19
  gems.each do |gem|
20
20
  run "bundle exec rake railties:install:migrations FROM=#{gem}"
21
21
  end
@@ -1,5 +1,5 @@
1
1
  module SpreeCmCommissioner
2
- VERSION = '1.8.6'.freeze
2
+ VERSION = '1.8.7-beta1'.freeze
3
3
 
4
4
  module_function
5
5
 
@@ -3,6 +3,7 @@ require 'spree_api_v1'
3
3
  require 'spree_backend'
4
4
  require 'spree_auth_devise'
5
5
  require 'spree_multi_vendor'
6
+ require 'blazer'
6
7
  require 'spree_extension'
7
8
 
8
9
  require 'spree_cm_commissioner/engine'
@@ -28,7 +28,6 @@ Gem::Specification.new do |s|
28
28
  s.add_dependency 'spree_backend', spree_opts
29
29
  s.add_dependency 'spree_multi_vendor', '>= 2.4.1'
30
30
  s.add_dependency 'spree_extension'
31
-
32
31
  s.add_dependency 'activerecord-multi-tenant'
33
32
  s.add_dependency 'phonelib'
34
33
  s.add_dependency 'aws-sdk-ecs'
@@ -56,5 +55,6 @@ Gem::Specification.new do |s|
56
55
  s.add_dependency 'counter_culture', '~> 3.2'
57
56
  s.add_development_dependency 'pg'
58
57
  s.add_development_dependency 'spree_dev_tools'
58
+ s.add_dependency 'blazer', '~> 3.0.0'
59
59
  s.metadata['rubygems_mfa_required'] = 'true'
60
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_cm_commissioner
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.6
4
+ version: 1.8.7.pre.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - You
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-04-01 00:00:00.000000000 Z
11
+ date: 2025-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree
@@ -478,6 +478,20 @@ dependencies:
478
478
  - - ">="
479
479
  - !ruby/object:Gem::Version
480
480
  version: '0'
481
+ - !ruby/object:Gem::Dependency
482
+ name: blazer
483
+ requirement: !ruby/object:Gem::Requirement
484
+ requirements:
485
+ - - "~>"
486
+ - !ruby/object:Gem::Version
487
+ version: 3.0.0
488
+ type: :runtime
489
+ prerelease: false
490
+ version_requirements: !ruby/object:Gem::Requirement
491
+ requirements:
492
+ - - "~>"
493
+ - !ruby/object:Gem::Version
494
+ version: 3.0.0
481
495
  description: Add (optional) extension description here
482
496
  email: you@example.com
483
497
  executables: []
@@ -2296,10 +2310,11 @@ files:
2296
2310
  - db/migrate/20250314013434_add_available_on_to_spree_taxons.rb
2297
2311
  - db/migrate/20250321041406_create_trip_connections.rb
2298
2312
  - db/migrate/20250327074327_add_hide_video_banner_to_spree_taxon.rb
2299
- - db/migrate/20250327094626_create_spree_cm_commissioner_taxon_blazer_query.rb
2300
2313
  - db/migrate/20250328072717_add_description_to_spree_roles.rb
2301
2314
  - db/migrate/20250328072841_add_vendor_id_to_spree_roles.rb
2302
2315
  - db/migrate/20250328072947_remove_unique_constraint_from_name_in_spree_roles.rb
2316
+ - db/migrate/20250403040036_install_blazer.rb
2317
+ - db/migrate/20250403083001_create_spree_cm_commissioner_taxon_blazer_query.rb
2303
2318
  - docker-compose.yml
2304
2319
  - docs/option_types/attr_types.md
2305
2320
  - docs/private_key.pem
@@ -2438,9 +2453,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
2438
2453
  version: '2.7'
2439
2454
  required_rubygems_version: !ruby/object:Gem::Requirement
2440
2455
  requirements:
2441
- - - ">="
2456
+ - - ">"
2442
2457
  - !ruby/object:Gem::Version
2443
- version: '0'
2458
+ version: 1.3.1
2444
2459
  requirements:
2445
2460
  - none
2446
2461
  rubygems_version: 3.4.1