app_manager 2.4.7 → 2.4.8

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: 410b7937f58ca8c80532884007e4486636b9a2d19cfc98f1543095e5ebe37f13
4
- data.tar.gz: 90ed938887337e72497631c07836646fb041c2b502b93de786045ed82d1d9c05
3
+ metadata.gz: 5922fc15adc9d5ba7aa9003998579e33ba6a0456fecf2946f107a52d2482a42f
4
+ data.tar.gz: 7362ae33050bfa6a14abf27c5aa0f4a7b6984f73fe409dfb541c7f3d9c0a8746
5
5
  SHA512:
6
- metadata.gz: 6c75a3fb2d45bc182fb9a6fa2eb03e2a2a7df651dcb93b824421af62bc947cc0e1b8b7ed6035351217ab2d8677e0e9ab39f5cc84f5aedd2db619ae1d1e6062c0
7
- data.tar.gz: 686aa113cd468da8dbd0fd22edeab3df1746dda622580cd371397a2257c325ae1749142d97d70ebe2d950f7c15caa90ae477942c2b3b161681d6b894fbef5056
6
+ metadata.gz: 86e9fa4bdf259ef2cefd304bde4f21d1f5d8822b7c30701bf2b6c8c86869c5d6101065fc75967a636a7960d680baa12ad7eaf4642cf3051e57f1179825fb60ee
7
+ data.tar.gz: 4bcf0930779073f2d4d890ff761a908d18a2a50c87ab553884ef0b2115c4bddb9a2b86f782200669a33295530432fea0b81fcd79f9ec7141104f5b8c63b5009f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- app_manager (2.4.7)
4
+ app_manager (2.4.8)
5
5
  activerecord-import (~> 1.4)
6
6
  httparty
7
7
  kaminari (>= 0.16.3)
@@ -10,31 +10,31 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- action_text-trix (2.1.17)
13
+ action_text-trix (2.1.18)
14
14
  railties
15
- actioncable (8.1.2)
16
- actionpack (= 8.1.2)
17
- activesupport (= 8.1.2)
15
+ actioncable (8.1.3)
16
+ actionpack (= 8.1.3)
17
+ activesupport (= 8.1.3)
18
18
  nio4r (~> 2.0)
19
19
  websocket-driver (>= 0.6.1)
20
20
  zeitwerk (~> 2.6)
21
- actionmailbox (8.1.2)
22
- actionpack (= 8.1.2)
23
- activejob (= 8.1.2)
24
- activerecord (= 8.1.2)
25
- activestorage (= 8.1.2)
26
- activesupport (= 8.1.2)
21
+ actionmailbox (8.1.3)
22
+ actionpack (= 8.1.3)
23
+ activejob (= 8.1.3)
24
+ activerecord (= 8.1.3)
25
+ activestorage (= 8.1.3)
26
+ activesupport (= 8.1.3)
27
27
  mail (>= 2.8.0)
28
- actionmailer (8.1.2)
29
- actionpack (= 8.1.2)
30
- actionview (= 8.1.2)
31
- activejob (= 8.1.2)
32
- activesupport (= 8.1.2)
28
+ actionmailer (8.1.3)
29
+ actionpack (= 8.1.3)
30
+ actionview (= 8.1.3)
31
+ activejob (= 8.1.3)
32
+ activesupport (= 8.1.3)
33
33
  mail (>= 2.8.0)
34
34
  rails-dom-testing (~> 2.2)
35
- actionpack (8.1.2)
36
- actionview (= 8.1.2)
37
- activesupport (= 8.1.2)
35
+ actionpack (8.1.3)
36
+ actionview (= 8.1.3)
37
+ activesupport (= 8.1.3)
38
38
  nokogiri (>= 1.8.5)
39
39
  rack (>= 2.2.4)
40
40
  rack-session (>= 1.0.1)
@@ -42,38 +42,38 @@ GEM
42
42
  rails-dom-testing (~> 2.2)
43
43
  rails-html-sanitizer (~> 1.6)
44
44
  useragent (~> 0.16)
45
- actiontext (8.1.2)
45
+ actiontext (8.1.3)
46
46
  action_text-trix (~> 2.1.15)
47
- actionpack (= 8.1.2)
48
- activerecord (= 8.1.2)
49
- activestorage (= 8.1.2)
50
- activesupport (= 8.1.2)
47
+ actionpack (= 8.1.3)
48
+ activerecord (= 8.1.3)
49
+ activestorage (= 8.1.3)
50
+ activesupport (= 8.1.3)
51
51
  globalid (>= 0.6.0)
52
52
  nokogiri (>= 1.8.5)
53
- actionview (8.1.2)
54
- activesupport (= 8.1.2)
53
+ actionview (8.1.3)
54
+ activesupport (= 8.1.3)
55
55
  builder (~> 3.1)
56
56
  erubi (~> 1.11)
57
57
  rails-dom-testing (~> 2.2)
58
58
  rails-html-sanitizer (~> 1.6)
59
- activejob (8.1.2)
60
- activesupport (= 8.1.2)
59
+ activejob (8.1.3)
60
+ activesupport (= 8.1.3)
61
61
  globalid (>= 0.3.6)
62
- activemodel (8.1.2)
63
- activesupport (= 8.1.2)
64
- activerecord (8.1.2)
65
- activemodel (= 8.1.2)
66
- activesupport (= 8.1.2)
62
+ activemodel (8.1.3)
63
+ activesupport (= 8.1.3)
64
+ activerecord (8.1.3)
65
+ activemodel (= 8.1.3)
66
+ activesupport (= 8.1.3)
67
67
  timeout (>= 0.4.0)
68
68
  activerecord-import (1.8.1)
69
69
  activerecord (>= 4.2)
70
- activestorage (8.1.2)
71
- actionpack (= 8.1.2)
72
- activejob (= 8.1.2)
73
- activerecord (= 8.1.2)
74
- activesupport (= 8.1.2)
70
+ activestorage (8.1.3)
71
+ actionpack (= 8.1.3)
72
+ activejob (= 8.1.3)
73
+ activerecord (= 8.1.3)
74
+ activesupport (= 8.1.3)
75
75
  marcel (~> 1.0)
76
- activesupport (8.1.2)
76
+ activesupport (8.1.3)
77
77
  base64
78
78
  bigdecimal
79
79
  concurrent-ruby (~> 1.0, >= 1.3.1)
@@ -103,7 +103,7 @@ GEM
103
103
  diff-lcs (1.6.2)
104
104
  dotenv (2.1.2)
105
105
  drb (2.2.3)
106
- erb (6.0.2)
106
+ erb (6.0.4)
107
107
  erubi (1.13.1)
108
108
  globalid (1.3.0)
109
109
  activesupport (>= 6.1)
@@ -115,12 +115,12 @@ GEM
115
115
  i18n (1.14.8)
116
116
  concurrent-ruby (~> 1.0)
117
117
  io-console (0.8.2)
118
- irb (1.17.0)
118
+ irb (1.18.0)
119
119
  pp (>= 0.6.0)
120
120
  prism (>= 1.3.0)
121
121
  rdoc (>= 4.0.0)
122
122
  reline (>= 0.4.2)
123
- json (2.19.2)
123
+ json (2.19.5)
124
124
  kaminari (1.2.2)
125
125
  activesupport (>= 4.1.0)
126
126
  kaminari-actionview (= 1.2.2)
@@ -146,12 +146,12 @@ GEM
146
146
  marcel (1.1.0)
147
147
  method_source (1.1.0)
148
148
  mini_mime (1.1.5)
149
- minitest (6.0.2)
149
+ minitest (6.0.6)
150
150
  drb (~> 2.0)
151
151
  prism (~> 1.5)
152
- multi_xml (0.8.1)
152
+ multi_xml (0.9.1)
153
153
  bigdecimal (>= 3.1, < 5)
154
- net-imap (0.6.3)
154
+ net-imap (0.6.4)
155
155
  date
156
156
  net-protocol
157
157
  net-pop (0.1.2)
@@ -161,7 +161,7 @@ GEM
161
161
  net-smtp (0.5.1)
162
162
  net-protocol
163
163
  nio4r (2.7.5)
164
- nokogiri (1.19.1-x86_64-linux-gnu)
164
+ nokogiri (1.19.3-x86_64-linux-gnu)
165
165
  racc (~> 1.4)
166
166
  pp (0.6.3)
167
167
  prettyprint
@@ -176,28 +176,28 @@ GEM
176
176
  stringio
177
177
  public_suffix (7.0.2)
178
178
  racc (1.8.1)
179
- rack (3.2.5)
180
- rack-session (2.1.1)
179
+ rack (3.2.6)
180
+ rack-session (2.1.2)
181
181
  base64 (>= 0.1.0)
182
182
  rack (>= 3.0.0)
183
183
  rack-test (2.2.0)
184
184
  rack (>= 1.3)
185
185
  rackup (2.3.1)
186
186
  rack (>= 3)
187
- rails (8.1.2)
188
- actioncable (= 8.1.2)
189
- actionmailbox (= 8.1.2)
190
- actionmailer (= 8.1.2)
191
- actionpack (= 8.1.2)
192
- actiontext (= 8.1.2)
193
- actionview (= 8.1.2)
194
- activejob (= 8.1.2)
195
- activemodel (= 8.1.2)
196
- activerecord (= 8.1.2)
197
- activestorage (= 8.1.2)
198
- activesupport (= 8.1.2)
187
+ rails (8.1.3)
188
+ actioncable (= 8.1.3)
189
+ actionmailbox (= 8.1.3)
190
+ actionmailer (= 8.1.3)
191
+ actionpack (= 8.1.3)
192
+ actiontext (= 8.1.3)
193
+ actionview (= 8.1.3)
194
+ activejob (= 8.1.3)
195
+ activemodel (= 8.1.3)
196
+ activerecord (= 8.1.3)
197
+ activestorage (= 8.1.3)
198
+ activesupport (= 8.1.3)
199
199
  bundler (>= 1.15.0)
200
- railties (= 8.1.2)
200
+ railties (= 8.1.3)
201
201
  rails-dom-testing (2.3.0)
202
202
  activesupport (>= 5.0.0)
203
203
  minitest
@@ -205,9 +205,9 @@ GEM
205
205
  rails-html-sanitizer (1.7.0)
206
206
  loofah (~> 2.25)
207
207
  nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
208
- railties (8.1.2)
209
- actionpack (= 8.1.2)
210
- activesupport (= 8.1.2)
208
+ railties (8.1.3)
209
+ actionpack (= 8.1.3)
210
+ activesupport (= 8.1.3)
211
211
  irb (~> 1.13)
212
212
  rackup (>= 1.0.0)
213
213
  rake (>= 12.2)
@@ -105,6 +105,8 @@ module AppManager
105
105
  interval = plan["interval"].each { |e| e } if plan["interval"] rescue {}
106
106
  shopify_plans = plan["shopify_plans"].map { |e| e.to_h } if plan["shopify_plans"] rescue []
107
107
  affiliate = plan["affiliate"].map { |e| e.to_h } if plan["affiliate"] rescue []
108
+ highlights = plan["highlights"].map { |e| e.to_h } if plan["highlights"] rescue []
109
+ note = plan["note"] if plan["note"] rescue nil
108
110
  features = plan["features"].map { |e| e.to_h } rescue []
109
111
  plan_test = plan['test'].nil? ? 0 : plan['test']
110
112
  is_custom = plan['is_custom'] ? 1 : 0
@@ -113,7 +115,7 @@ module AppManager
113
115
  choose_later_plan = plan['choose_later_plan'] ? 1 : 0
114
116
  is_external_charge = plan['is_external_charge'] ? 1 : 0
115
117
  if !plan["id"].nil?
116
- plan_data << AppManager::Plan.new(plan_id: plan["id"], type: plan["type"], name: plan["name"], price: plan["price"], offer_text: plan["offer_text"], description: plan["description"], interval: interval, shopify_plans: shopify_plans, trial_days: plan["trial_days"], test: plan_test, on_install: plan["on_install"], is_custom: is_custom, app_id: plan["app_id"], base_plan: plan["base_plan"], created_at: plan["created_at"], updated_at: plan["updated_at"], public: public_val, discount: plan["discount"], cycle_count: plan["cycle_count"], store_base_plan: store_base_plan, choose_later_plan: choose_later_plan, discount_type: plan["discount_type"], affiliate: affiliate, features: features, deleted_at: plan["deleted_at"],is_external_charge: plan["is_external_charge"],external_charge_limit: plan["external_charge_limit"],terms: plan["terms"])
118
+ plan_data << AppManager::Plan.new(plan_id: plan["id"], type: plan["type"], name: plan["name"], price: plan["price"], offer_text: plan["offer_text"], description: plan["description"], interval: interval, shopify_plans: shopify_plans, trial_days: plan["trial_days"], test: plan_test, on_install: plan["on_install"], is_custom: is_custom, app_id: plan["app_id"], base_plan: plan["base_plan"], created_at: plan["created_at"], updated_at: plan["updated_at"], public: public_val, discount: plan["discount"], cycle_count: plan["cycle_count"], store_base_plan: store_base_plan, choose_later_plan: choose_later_plan, discount_type: plan["discount_type"], affiliate: affiliate, features: features, deleted_at: plan["deleted_at"],is_external_charge: plan["is_external_charge"],external_charge_limit: plan["external_charge_limit"],terms: plan["terms"], highlights: highlights, note: note)
117
119
  end
118
120
  end
119
121
  AppManager::Plan.bulk_import plan_data
@@ -392,12 +394,17 @@ module AppManager
392
394
  value = safe_parse_json(value)
393
395
  value = value.each { |e| e.delete("id") }.each { |e| e.delete("created_at") }.each { |e| e.delete("updated_at") }
394
396
  new_plan[key] = value
397
+ elsif ['highlights'].include?(key)
398
+ value = safe_parse_json(value)
399
+ value = value.each { |e| e.delete("id") }.each { |e| e.delete("created_at") }.each { |e| e.delete("updated_at") }
400
+ new_plan[key] = value
395
401
  elsif ['plan_id'].include?(key)
396
402
  # puts value.inspect
397
403
  new_plan["id"] = value if value rescue {}
398
404
  else
399
405
  new_plan[key] = value unless key.class == Integer
400
406
  end
407
+ new_plan["failsafe"] = true
401
408
  end
402
409
  plans_data.push(new_plan)
403
410
  end
@@ -477,7 +484,7 @@ module AppManager
477
484
  if ['interval'].include?(key)
478
485
  val = safe_parse_json(value)
479
486
  new_plan[key] = val
480
- elsif ['shopify_plans', 'affiliate', 'features'].include?(key)
487
+ elsif ['shopify_plans', 'affiliate', 'features', 'note', 'highlights'].include?(key)
481
488
  new_plan[key] = safe_parse_json(value)
482
489
  elsif ['is_custom', 'public', 'store_base_plan', 'choose_later_plan'].include?(key)
483
490
  new_plan[key] = (value == 0 || value == false ? false : true)
@@ -514,7 +521,6 @@ module AppManager
514
521
  end
515
522
 
516
523
  end
517
-
518
524
  return plan_data
519
525
  end
520
526
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AppManager
4
- VERSION = "2.4.7"
4
+ VERSION = "2.4.8"
5
5
  end
@@ -55,6 +55,14 @@ module AppManager
55
55
  end
56
56
  end
57
57
 
58
+ def create_note_and_highlights_to_plans_migration
59
+ if self.class.migration_exists?("db/app_manager", "add_note_and_highlights_to_plans")
60
+ say_status("skipped", "Migration add_note_and_highlights_to_plans.rb already exists")
61
+ else
62
+ migration_template("add_note_and_highlights_to_plans.erb", "db/app_manager/add_note_and_highlights_to_plans.rb")
63
+ end
64
+ end
65
+
58
66
 
59
67
  private
60
68
 
@@ -0,0 +1,6 @@
1
+ class AddNoteAndHighlightsToPlans < ActiveRecord::Migration[<%= rails_migration_version %>]
2
+ def change
3
+ add_column :plans, :note, :string unless column_exists?(:plans, :note)
4
+ add_column :plans, :highlights, :text unless column_exists?(:plans, :highlights)
5
+ end
6
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.7
4
+ version: 2.4.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rahul Tiwari @ Hulkapps
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-05-01 00:00:00.000000000 Z
11
+ date: 2026-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -127,6 +127,7 @@ files:
127
127
  - lib/generators/app_manager/install/templates/add_discount_tables.erb
128
128
  - lib/generators/app_manager/install/templates/add_external_charge_field.erb
129
129
  - lib/generators/app_manager/install/templates/add_is_global_to_plans.erb
130
+ - lib/generators/app_manager/install/templates/add_note_and_highlights_to_plans.erb
130
131
  - lib/generators/app_manager/install/templates/add_plan_trial_grandfathered_to_shops.erb
131
132
  - lib/generators/app_manager/install/templates/app_manager.rb.tt
132
133
  - lib/generators/app_manager/install/templates/failsafe_tables.erb