spree_cm_commissioner 1.16.0 → 1.17.0.pre.pre1

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.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +8 -8
  3. data/app/assets/images/cm-hangmeas-checkout_image.svg +63 -0
  4. data/app/assets/images/cm-hangmeas-failed.svg +56 -0
  5. data/app/assets/images/cm-hangmeas-loader.svg +50 -0
  6. data/app/assets/images/cm-hangmeas-success.svg +51 -0
  7. data/app/controllers/spree/admin/tenants_controller.rb +8 -0
  8. data/app/controllers/spree/api/v2/storefront/dynamic_field_options_controller.rb +28 -0
  9. data/app/controllers/spree/api/v2/storefront/guests_controller.rb +2 -1
  10. data/app/interactors/spree_cm_commissioner/create_event.rb +2 -1
  11. data/app/mailers/spree_cm_commissioner/team_invite_mailer.rb +13 -0
  12. data/app/models/concerns/spree_cm_commissioner/participation_type_bitwise.rb +47 -0
  13. data/app/models/concerns/spree_cm_commissioner/tenant_preference.rb +4 -0
  14. data/app/models/spree_cm_commissioner/dynamic_field.rb +20 -0
  15. data/app/models/spree_cm_commissioner/dynamic_field_option.rb +18 -0
  16. data/app/models/spree_cm_commissioner/guest.rb +5 -3
  17. data/app/models/spree_cm_commissioner/guest_dynamic_field.rb +25 -0
  18. data/app/models/spree_cm_commissioner/invite_team.rb +44 -0
  19. data/app/models/spree_cm_commissioner/product_decorator.rb +2 -0
  20. data/app/models/spree_cm_commissioner/product_dynamic_field.rb +8 -0
  21. data/app/models/spree_cm_commissioner/taxon_decorator.rb +1 -0
  22. data/app/models/spree_cm_commissioner/user_decorator.rb +1 -0
  23. data/app/models/spree_cm_commissioner/user_taxon.rb +1 -0
  24. data/app/models/spree_cm_commissioner/vendor_decorator.rb +1 -0
  25. data/app/models/spree_cm_commissioner/vendor_place.rb +5 -7
  26. data/app/serializers/spree/v2/storefront/product_serializer_decorator.rb +1 -0
  27. data/app/serializers/spree/v2/storefront/taxon_serializer_decorator.rb +2 -0
  28. data/app/serializers/spree_cm_commissioner/v2/storefront/dynamic_field_option_serializer.rb +11 -0
  29. data/app/serializers/spree_cm_commissioner/v2/storefront/dynamic_field_serializer.rb +13 -0
  30. data/app/serializers/spree_cm_commissioner/v2/storefront/guest_dynamic_field_serializer.rb +13 -0
  31. data/app/serializers/spree_cm_commissioner/v2/storefront/guest_serializer.rb +3 -2
  32. data/app/serializers/spree_cm_commissioner/v2/storefront/product_dynamic_field_serializer.rb +13 -0
  33. data/app/services/spree_cm_commissioner/organizer/export_guest_csv_service.rb +23 -15
  34. data/app/services/spree_cm_commissioner/user_roles_assigner.rb +0 -6
  35. data/app/views/spree/admin/tenants/_form.html.erb +253 -0
  36. data/app/views/spree_cm_commissioner/layouts/team_invite_mailer.html.erb +15 -0
  37. data/app/views/spree_cm_commissioner/team_invite_mailer/_mailer_stylesheets.html.erb +79 -0
  38. data/app/views/spree_cm_commissioner/team_invite_mailer/send_team_invite_email.html.erb +42 -0
  39. data/config/routes.rb +1 -0
  40. data/db/migrate/20250512072817_create_spree_cm_commissioner_invite_team.rb +15 -0
  41. data/db/migrate/20250605024523_add_participation_type_to_spree_taxon.rb +5 -0
  42. data/db/migrate/20250606020914_create_cm_dynamic_fields.rb +11 -0
  43. data/db/migrate/20250606020958_create_cm_guest_dynamic_fields.rb +11 -0
  44. data/db/migrate/20250606021044_create_cm_dynamic_field_options.rb +10 -0
  45. data/db/migrate/20250606021045_create_cm_product_dynamic_fields.rb +10 -0
  46. data/lib/spree_cm_commissioner/test_helper/factories/vendor_place_factory.rb +2 -2
  47. data/lib/spree_cm_commissioner/version.rb +1 -1
  48. metadata +29 -4
@@ -0,0 +1,11 @@
1
+ class CreateCmGuestDynamicFields < ActiveRecord::Migration[7.0]
2
+ def change
3
+ create_table :cm_guest_dynamic_fields, if_not_exists: true do |t|
4
+ t.references :guest, null: false, foreign_key: { to_table: :cm_guests }
5
+ t.references :dynamic_field, null: false, foreign_key: { to_table: :cm_dynamic_fields }
6
+ t.jsonb :value, default: [], null: false
7
+
8
+ t.timestamps
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,10 @@
1
+ class CreateCmDynamicFieldOptions < ActiveRecord::Migration[7.0]
2
+ def change
3
+ create_table :cm_dynamic_field_options, if_not_exists: true do |t|
4
+ t.references :dynamic_field, null: false, foreign_key: { to_table: :cm_dynamic_fields }
5
+ t.string :value, null: false
6
+
7
+ t.timestamps
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ class CreateCmProductDynamicFields < ActiveRecord::Migration[7.0]
2
+ def change
3
+ create_table :cm_product_dynamic_fields, if_not_exists: true do |t|
4
+ t.references :product, null: false, foreign_key: { to_table: :spree_products }
5
+ t.references :dynamic_field, null: false, foreign_key: { to_table: :cm_dynamic_fields }
6
+
7
+ t.timestamps
8
+ end
9
+ end
10
+ end
@@ -14,8 +14,8 @@ FactoryBot.define do
14
14
  place_type { :stop }
15
15
  end
16
16
 
17
- trait :locations do
18
- place_type { :locations }
17
+ trait :location do
18
+ place_type { :location }
19
19
  end
20
20
  end
21
21
  end
@@ -1,5 +1,5 @@
1
1
  module SpreeCmCommissioner
2
- VERSION = '1.16.0'.freeze
2
+ VERSION = '1.17.0-pre1'.freeze
3
3
 
4
4
  module_function
5
5
 
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.16.0
4
+ version: 1.17.0.pre.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - You
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-06-20 00:00:00.000000000 Z
11
+ date: 2025-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree
@@ -600,6 +600,10 @@ files:
600
600
  - app/assets/images/cm-fitness-room-icon.svg
601
601
  - app/assets/images/cm-front-desk-icon.svg
602
602
  - app/assets/images/cm-hair-dryer-icon.svg
603
+ - app/assets/images/cm-hangmeas-checkout_image.svg
604
+ - app/assets/images/cm-hangmeas-failed.svg
605
+ - app/assets/images/cm-hangmeas-loader.svg
606
+ - app/assets/images/cm-hangmeas-success.svg
603
607
  - app/assets/images/cm-hiking-icon.svg
604
608
  - app/assets/images/cm-iron-icon.svg
605
609
  - app/assets/images/cm-lcd-tv-icon.svg
@@ -839,6 +843,7 @@ files:
839
843
  - app/controllers/spree/api/v2/storefront/check_ins_controller.rb
840
844
  - app/controllers/spree/api/v2/storefront/confirm_pin_code_checkers_controller.rb
841
845
  - app/controllers/spree/api/v2/storefront/customer_notifications_controller.rb
846
+ - app/controllers/spree/api/v2/storefront/dynamic_field_options_controller.rb
842
847
  - app/controllers/spree/api/v2/storefront/events_controller.rb
843
848
  - app/controllers/spree/api/v2/storefront/google_wallet_object_tokens_controller.rb
844
849
  - app/controllers/spree/api/v2/storefront/guest_card_classes_controller.rb
@@ -1176,6 +1181,7 @@ files:
1176
1181
  - app/mailers/spree_cm_commissioner/crew_invite_mailer.rb
1177
1182
  - app/mailers/spree_cm_commissioner/event_transactional_mailer.rb
1178
1183
  - app/mailers/spree_cm_commissioner/pin_code_mailer.rb
1184
+ - app/mailers/spree_cm_commissioner/team_invite_mailer.rb
1179
1185
  - app/models/.gitkeep
1180
1186
  - app/models/concerns/spree_cm_commissioner/homepage_section_bitwise.rb
1181
1187
  - app/models/concerns/spree_cm_commissioner/json_preference_validator.rb
@@ -1188,6 +1194,7 @@ files:
1188
1194
  - app/models/concerns/spree_cm_commissioner/option_value_attr_type.rb
1189
1195
  - app/models/concerns/spree_cm_commissioner/order_state_machine.rb
1190
1196
  - app/models/concerns/spree_cm_commissioner/parameterize_name.rb
1197
+ - app/models/concerns/spree_cm_commissioner/participation_type_bitwise.rb
1191
1198
  - app/models/concerns/spree_cm_commissioner/phone_number_sanitizer.rb
1192
1199
  - app/models/concerns/spree_cm_commissioner/product_delegation.rb
1193
1200
  - app/models/concerns/spree_cm_commissioner/product_type.rb
@@ -1226,6 +1233,8 @@ files:
1226
1233
  - app/models/spree_cm_commissioner/customer_taxon.rb
1227
1234
  - app/models/spree_cm_commissioner/device_token.rb
1228
1235
  - app/models/spree_cm_commissioner/digital_decorator.rb
1236
+ - app/models/spree_cm_commissioner/dynamic_field.rb
1237
+ - app/models/spree_cm_commissioner/dynamic_field_option.rb
1229
1238
  - app/models/spree_cm_commissioner/event_ticket_google_wallet.rb
1230
1239
  - app/models/spree_cm_commissioner/export.rb
1231
1240
  - app/models/spree_cm_commissioner/exports/export_guest_csv.rb
@@ -1240,6 +1249,7 @@ files:
1240
1249
  - app/models/spree_cm_commissioner/guest_card_classes/bib_card_class.rb
1241
1250
  - app/models/spree_cm_commissioner/guest_card_classes/booking_card_background_image.rb
1242
1251
  - app/models/spree_cm_commissioner/guest_card_classes/booking_card_class.rb
1252
+ - app/models/spree_cm_commissioner/guest_dynamic_field.rb
1243
1253
  - app/models/spree_cm_commissioner/guest_occupation_promotion_rule.rb
1244
1254
  - app/models/spree_cm_commissioner/homepage_background.rb
1245
1255
  - app/models/spree_cm_commissioner/homepage_background_app_image.rb
@@ -1259,6 +1269,7 @@ files:
1259
1269
  - app/models/spree_cm_commissioner/imports/import_order.rb
1260
1270
  - app/models/spree_cm_commissioner/invite.rb
1261
1271
  - app/models/spree_cm_commissioner/invite_guest.rb
1272
+ - app/models/spree_cm_commissioner/invite_team.rb
1262
1273
  - app/models/spree_cm_commissioner/invite_user_event.rb
1263
1274
  - app/models/spree_cm_commissioner/invite_user_taxon.rb
1264
1275
  - app/models/spree_cm_commissioner/invoice.rb
@@ -1292,6 +1303,7 @@ files:
1292
1303
  - app/models/spree_cm_commissioner/product_completion_step.rb
1293
1304
  - app/models/spree_cm_commissioner/product_completion_steps/chatrace_telegram.rb
1294
1305
  - app/models/spree_cm_commissioner/product_decorator.rb
1306
+ - app/models/spree_cm_commissioner/product_dynamic_field.rb
1295
1307
  - app/models/spree_cm_commissioner/product_google_wallet.rb
1296
1308
  - app/models/spree_cm_commissioner/product_place.rb
1297
1309
  - app/models/spree_cm_commissioner/promotion/actions/create_date_specific_item_adjustments.rb
@@ -1649,10 +1661,13 @@ files:
1649
1661
  - app/serializers/spree_cm_commissioner/v2/storefront/calculator_serializer.rb
1650
1662
  - app/serializers/spree_cm_commissioner/v2/storefront/category_taxon_serializer.rb
1651
1663
  - app/serializers/spree_cm_commissioner/v2/storefront/check_in_serializer.rb
1664
+ - app/serializers/spree_cm_commissioner/v2/storefront/dynamic_field_option_serializer.rb
1665
+ - app/serializers/spree_cm_commissioner/v2/storefront/dynamic_field_serializer.rb
1652
1666
  - app/serializers/spree_cm_commissioner/v2/storefront/event_option_value_serializer.rb
1653
1667
  - app/serializers/spree_cm_commissioner/v2/storefront/event_variant_serializer.rb
1654
1668
  - app/serializers/spree_cm_commissioner/v2/storefront/google_wallet_serializer.rb
1655
1669
  - app/serializers/spree_cm_commissioner/v2/storefront/guest_card_class_serializer.rb
1670
+ - app/serializers/spree_cm_commissioner/v2/storefront/guest_dynamic_field_serializer.rb
1656
1671
  - app/serializers/spree_cm_commissioner/v2/storefront/guest_serializer.rb
1657
1672
  - app/serializers/spree_cm_commissioner/v2/storefront/homepage_background_serializer.rb
1658
1673
  - app/serializers/spree_cm_commissioner/v2/storefront/homepage_banner_serializer.rb
@@ -1661,6 +1676,7 @@ files:
1661
1676
  - app/serializers/spree_cm_commissioner/v2/storefront/menu_item_serializer_decorator.rb
1662
1677
  - app/serializers/spree_cm_commissioner/v2/storefront/payment_method_group_serializer.rb
1663
1678
  - app/serializers/spree_cm_commissioner/v2/storefront/pin_code_serializer.rb
1679
+ - app/serializers/spree_cm_commissioner/v2/storefront/product_dynamic_field_serializer.rb
1664
1680
  - app/serializers/spree_cm_commissioner/v2/storefront/product_place_serializer.rb
1665
1681
  - app/serializers/spree_cm_commissioner/v2/storefront/promotion_action_serializer.rb
1666
1682
  - app/serializers/spree_cm_commissioner/v2/storefront/promotion_rule_serializer.rb
@@ -2140,6 +2156,7 @@ files:
2140
2156
  - app/views/spree_cm_commissioner/layouts/event_transactional_mailer.html.erb
2141
2157
  - app/views/spree_cm_commissioner/layouts/line_item_mailer.html.erb
2142
2158
  - app/views/spree_cm_commissioner/layouts/order_mailer.html.erb
2159
+ - app/views/spree_cm_commissioner/layouts/team_invite_mailer.html.erb
2143
2160
  - app/views/spree_cm_commissioner/layouts/telegram.html.erb
2144
2161
  - app/views/spree_cm_commissioner/line_item_mailer/_greeting.html.erb
2145
2162
  - app/views/spree_cm_commissioner/line_item_mailer/_mailer_stylesheets.html.erb
@@ -2156,6 +2173,8 @@ files:
2156
2173
  - app/views/spree_cm_commissioner/order_mailer/purchased_items/_items.html.erb
2157
2174
  - app/views/spree_cm_commissioner/order_mailer/purchased_items/_summary.html.erb
2158
2175
  - app/views/spree_cm_commissioner/pin_code_mailer/send_pin_code.html.erb
2176
+ - app/views/spree_cm_commissioner/team_invite_mailer/_mailer_stylesheets.html.erb
2177
+ - app/views/spree_cm_commissioner/team_invite_mailer/send_team_invite_email.html.erb
2159
2178
  - bin/rails
2160
2179
  - config/brakeman.yml
2161
2180
  - config/initializers/assets.rb
@@ -2471,6 +2490,7 @@ files:
2471
2490
  - db/migrate/20250506092929_add_trip_count_to_cm_vendor_stops.rb
2472
2491
  - db/migrate/20250509033437_create_spree_cm_commissioner_transactional_emails.rb
2473
2492
  - db/migrate/20250509075429_add_max_order_quantity_to_spree_product.rb
2493
+ - db/migrate/20250512072817_create_spree_cm_commissioner_invite_team.rb
2474
2494
  - db/migrate/20250512075319_add_tenant_id_to_spree_cms_pages.rb
2475
2495
  - db/migrate/20250520042602_add_event_to_spree_products.rb
2476
2496
  - db/migrate/20250520044533_add_event_to_spree_line_items.rb
@@ -2483,6 +2503,11 @@ files:
2483
2503
  - db/migrate/20250531074036_create_spree_cm_commissioner_option_value_vehicle.rb
2484
2504
  - db/migrate/20250531074258_create_spree_cm_commissioner_vehicle_option_types.rb
2485
2505
  - db/migrate/20250602094751_add_host_to_cm_tenants.rb
2506
+ - db/migrate/20250605024523_add_participation_type_to_spree_taxon.rb
2507
+ - db/migrate/20250606020914_create_cm_dynamic_fields.rb
2508
+ - db/migrate/20250606020958_create_cm_guest_dynamic_fields.rb
2509
+ - db/migrate/20250606021044_create_cm_dynamic_field_options.rb
2510
+ - db/migrate/20250606021045_create_cm_product_dynamic_fields.rb
2486
2511
  - db/migrate/20250609015216_remove_claimed_at_and_expires_at_from_cm_invite_guest.rb
2487
2512
  - db/migrate/20250610080108_add_contact_to_cm_guests.rb
2488
2513
  - db/migrate/20250611023548_add_country_code_to_guests.rb
@@ -2639,9 +2664,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
2639
2664
  version: '2.7'
2640
2665
  required_rubygems_version: !ruby/object:Gem::Requirement
2641
2666
  requirements:
2642
- - - ">="
2667
+ - - ">"
2643
2668
  - !ruby/object:Gem::Version
2644
- version: '0'
2669
+ version: 1.3.1
2645
2670
  requirements:
2646
2671
  - none
2647
2672
  rubygems_version: 3.4.1