spree_cm_commissioner 1.13.0 → 1.15.0.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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +12 -1
  3. data/README.md +43 -1
  4. data/app/assets/images/category_icons/art_icon.png +0 -0
  5. data/app/assets/images/category_icons/concert_icon.png +0 -0
  6. data/app/assets/images/category_icons/fundraising_icon.png +0 -0
  7. data/app/assets/images/category_icons/marathon_icon.png +0 -0
  8. data/app/assets/images/category_icons/online_icon.png +0 -0
  9. data/app/assets/images/category_icons/workshop_icon.png +0 -0
  10. data/app/controllers/spree/admin/users_controller_decorator.rb +13 -0
  11. data/app/controllers/spree/api/chatrace/guests_controller.rb +2 -1
  12. data/app/controllers/spree/api/v2/organizer/invite_guests_controller.rb +21 -0
  13. data/app/controllers/spree/api/v2/storefront/cart_payment_method_groups_controller.rb +12 -1
  14. data/app/controllers/spree/api/v2/storefront/guests_controller.rb +3 -1
  15. data/app/controllers/spree/api/v2/tenant/cart_controller.rb +11 -0
  16. data/app/controllers/spree/api/v2/tenant/checkout_controller.rb +1 -0
  17. data/app/controllers/spree/api/v2/tenant/order_histories_controller.rb +65 -0
  18. data/app/controllers/spree_cm_commissioner/admin/variants_controller_decorator.rb +1 -1
  19. data/app/controllers/spree_cm_commissioner/well_known_controller.rb +46 -0
  20. data/app/factory/spree_cm_commissioner/invite_guest_claimed_telegram_message_factory.rb +120 -0
  21. data/app/finders/spree_cm_commissioner/products/find_decorator.rb +16 -0
  22. data/app/helpers/spree_cm_commissioner/transit/order_query_helper.rb +17 -0
  23. data/app/helpers/spree_cm_commissioner/transit/trip_helper.rb +12 -0
  24. data/app/interactors/spree_cm_commissioner/create_event.rb +31 -6
  25. data/app/interactors/spree_cm_commissioner/create_ticket.rb +36 -1
  26. data/app/interactors/spree_cm_commissioner/host_matcher.rb +28 -0
  27. data/app/interactors/spree_cm_commissioner/place_decoder.rb +16 -0
  28. data/app/interactors/spree_cm_commissioner/place_service.rb +32 -0
  29. data/app/interactors/spree_cm_commissioner/user_pin_code_authenticator.rb +9 -0
  30. data/app/models/concerns/spree_cm_commissioner/json_preference_validator.rb +23 -0
  31. data/app/models/concerns/spree_cm_commissioner/kyc_bitwise.rb +3 -1
  32. data/app/models/concerns/spree_cm_commissioner/store_preference.rb +2 -0
  33. data/app/models/concerns/spree_cm_commissioner/tenant_preference.rb +11 -0
  34. data/app/models/spree_cm_commissioner/cms_page_decorator.rb +16 -1
  35. data/app/models/spree_cm_commissioner/guest.rb +11 -2
  36. data/app/models/spree_cm_commissioner/invite_guest.rb +8 -0
  37. data/app/models/spree_cm_commissioner/order_decorator.rb +5 -0
  38. data/app/models/spree_cm_commissioner/payment_method_decorator.rb +8 -1
  39. data/app/models/spree_cm_commissioner/place.rb +3 -0
  40. data/app/models/spree_cm_commissioner/store_decorator.rb +2 -1
  41. data/app/models/spree_cm_commissioner/taxon_decorator.rb +4 -0
  42. data/app/models/spree_cm_commissioner/taxon_place.rb +12 -0
  43. data/app/models/spree_cm_commissioner/tenant.rb +5 -0
  44. data/app/models/spree_cm_commissioner/user_decorator.rb +14 -3
  45. data/app/models/spree_cm_commissioner/vendor_decorator.rb +7 -3
  46. data/app/models/spree_cm_commissioner/vendor_place.rb +11 -3
  47. data/app/overrides/spree/admin/stores/_form/store_preferences.html.erb.deface +85 -12
  48. data/app/overrides/spree/admin/variants/_form/kyc_field.html.erb.deface +3 -4
  49. data/app/queries/spree_cm_commissioner/reservation_query.rb +12 -0
  50. data/app/queries/spree_cm_commissioner/trip_query.rb +35 -25
  51. data/app/serializers/spree/v2/organizer/invite_guest_serializer.rb +1 -1
  52. data/app/serializers/spree/v2/storefront/taxon_serializer_decorator.rb +1 -0
  53. data/app/serializers/spree/v2/tenant/cart_serializer.rb +8 -0
  54. data/app/serializers/spree_cm_commissioner/v2/storefront/guest_serializer.rb +1 -1
  55. data/app/services/spree_cm_commissioner/organizer/export_invite_guest_csv_service.rb +63 -0
  56. data/app/services/spree_cm_commissioner/payment_method_type_mapper.rb +11 -0
  57. data/app/views/spree/admin/tenants/_form.html.erb +68 -2
  58. data/config/initializers/spree_permitted_attributes.rb +3 -0
  59. data/config/routes.rb +7 -0
  60. data/db/migrate/20250127081646_add_preferences_to_cm_tenants.rb +7 -0
  61. data/db/migrate/20250527043231_create_spree_commissioner_taxon_places.rb +15 -0
  62. data/db/migrate/20250528073748_remove_unique_slug_index_on_spree_cms_pages.rb +12 -0
  63. data/db/migrate/20250528074043_add_unique_index_on_slug_tenant_id_deleted_at_to_spree_cms_pages.rb +13 -0
  64. data/db/migrate/20250528090330_add_place_type_to_cm_vendor_place.rb +6 -0
  65. data/db/migrate/20250602094751_add_host_to_cm_tenants.rb +6 -0
  66. data/db/migrate/20250609015216_remove_claimed_at_and_expires_at_from_cm_invite_guest.rb +6 -0
  67. data/db/migrate/20250610080108_add_contact_to_cm_guests.rb +5 -0
  68. data/db/migrate/20250611023548_add_country_code_to_guests.rb +5 -0
  69. data/db/migrate/20250612035937_add_intel_phone_number_to_guests.rb +5 -0
  70. data/lib/spree_cm_commissioner/test_helper/factories/cms_page_factory.rb +11 -0
  71. data/lib/spree_cm_commissioner/test_helper/factories/invite_guests_factory.rb +6 -0
  72. data/lib/spree_cm_commissioner/test_helper/factories/tenant_factory.rb +1 -0
  73. data/lib/spree_cm_commissioner/test_helper/factories/vendor_place_factory.rb +17 -4
  74. data/lib/spree_cm_commissioner/version.rb +1 -1
  75. data/lib/spree_cm_commissioner.rb +1 -0
  76. data/spree_cm_commissioner.gemspec +2 -0
  77. metadata +66 -4
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.13.0
4
+ version: 1.15.0.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-05-27 00:00:00.000000000 Z
11
+ date: 2025-06-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree
@@ -506,6 +506,34 @@ dependencies:
506
506
  - - "~>"
507
507
  - !ruby/object:Gem::Version
508
508
  version: 3.0.4
509
+ - !ruby/object:Gem::Dependency
510
+ name: strong_password
511
+ requirement: !ruby/object:Gem::Requirement
512
+ requirements:
513
+ - - "~>"
514
+ - !ruby/object:Gem::Version
515
+ version: 0.0.10
516
+ type: :runtime
517
+ prerelease: false
518
+ version_requirements: !ruby/object:Gem::Requirement
519
+ requirements:
520
+ - - "~>"
521
+ - !ruby/object:Gem::Version
522
+ version: 0.0.10
523
+ - !ruby/object:Gem::Dependency
524
+ name: spree_vpago
525
+ requirement: !ruby/object:Gem::Requirement
526
+ requirements:
527
+ - - ">="
528
+ - !ruby/object:Gem::Version
529
+ version: '0'
530
+ type: :runtime
531
+ prerelease: false
532
+ version_requirements: !ruby/object:Gem::Requirement
533
+ requirements:
534
+ - - ">="
535
+ - !ruby/object:Gem::Version
536
+ version: '0'
509
537
  description: Add (optional) extension description here
510
538
  email: you@example.com
511
539
  executables: []
@@ -537,6 +565,12 @@ files:
537
565
  - app/assets/images/backend-accept_all.svg
538
566
  - app/assets/images/backend-alert_request_to_vendor.svg
539
567
  - app/assets/images/backend-reject_all.svg
568
+ - app/assets/images/category_icons/art_icon.png
569
+ - app/assets/images/category_icons/concert_icon.png
570
+ - app/assets/images/category_icons/fundraising_icon.png
571
+ - app/assets/images/category_icons/marathon_icon.png
572
+ - app/assets/images/category_icons/online_icon.png
573
+ - app/assets/images/category_icons/workshop_icon.png
540
574
  - app/assets/images/cm-24-hour-hot-water-icon.svg
541
575
  - app/assets/images/cm-ac-icon.svg
542
576
  - app/assets/images/cm-alarm-clock-icon.svg
@@ -868,6 +902,7 @@ files:
868
902
  - app/controllers/spree/api/v2/tenant/id_cards_controller.rb
869
903
  - app/controllers/spree/api/v2/tenant/line_items_controller.rb
870
904
  - app/controllers/spree/api/v2/tenant/notifications_controller.rb
905
+ - app/controllers/spree/api/v2/tenant/order_histories_controller.rb
871
906
  - app/controllers/spree/api/v2/tenant/pin_code_checkers_controller.rb
872
907
  - app/controllers/spree/api/v2/tenant/pin_code_generators_controller.rb
873
908
  - app/controllers/spree/api/v2/tenant/products_controller.rb
@@ -952,6 +987,7 @@ files:
952
987
  - app/controllers/spree_cm_commissioner/line_item_qr_images_controller.rb
953
988
  - app/controllers/spree_cm_commissioner/orders_controller.rb
954
989
  - app/controllers/spree_cm_commissioner/qr_images_controller.rb
990
+ - app/controllers/spree_cm_commissioner/well_known_controller.rb
955
991
  - app/errors/spree_cm_commissioner/connection_error.rb
956
992
  - app/errors/spree_cm_commissioner/exceeding_range_error.rb
957
993
  - app/errors/spree_cm_commissioner/payment_creation_error.rb
@@ -961,12 +997,14 @@ files:
961
997
  - app/errors/spree_cm_commissioner/unauthorized_event_error.rb
962
998
  - app/errors/spree_cm_commissioner/unauthorized_vendor_error.rb
963
999
  - app/exception_notifier/spree_cm_commissioner/telegram_notifier.rb
1000
+ - app/factory/spree_cm_commissioner/invite_guest_claimed_telegram_message_factory.rb
964
1001
  - app/factory/spree_cm_commissioner/order_telegram_message_factory.rb
965
1002
  - app/factory/spree_cm_commissioner/telegram_message_factory.rb
966
1003
  - app/finders/spree_cm_commissioner/line_items/find_by_variant_decorator.rb
967
1004
  - app/finders/spree_cm_commissioner/orders/find.rb
968
1005
  - app/finders/spree_cm_commissioner/orders/find_by_state.rb
969
1006
  - app/finders/spree_cm_commissioner/payment_methods/group_by_bank.rb
1007
+ - app/finders/spree_cm_commissioner/products/find_decorator.rb
970
1008
  - app/helpers/spree/admin/base_helper_decorator.rb
971
1009
  - app/helpers/spree/admin/google_wallets_helper.rb
972
1010
  - app/helpers/spree/base_helper_decorator.rb
@@ -984,7 +1022,9 @@ files:
984
1022
  - app/helpers/spree_cm_commissioner/billing/qrcodes_helper.rb
985
1023
  - app/helpers/spree_cm_commissioner/pin_code_sender_helper.rb
986
1024
  - app/helpers/spree_cm_commissioner/telegram/base_helper.rb
1025
+ - app/helpers/spree_cm_commissioner/transit/order_query_helper.rb
987
1026
  - app/helpers/spree_cm_commissioner/transit/service_calendars_helper.rb
1027
+ - app/helpers/spree_cm_commissioner/transit/trip_helper.rb
988
1028
  - app/interactors/spree_cm_commissioner/accommodation_search_detail.rb
989
1029
  - app/interactors/spree_cm_commissioner/account_deletion.rb
990
1030
  - app/interactors/spree_cm_commissioner/account_deletion_cron_executor.rb
@@ -1016,6 +1056,7 @@ files:
1016
1056
  - app/interactors/spree_cm_commissioner/firebase_id_token_provider.rb
1017
1057
  - app/interactors/spree_cm_commissioner/google_places_fetcher.rb
1018
1058
  - app/interactors/spree_cm_commissioner/guest_id_card_manager.rb
1059
+ - app/interactors/spree_cm_commissioner/host_matcher.rb
1019
1060
  - app/interactors/spree_cm_commissioner/id_card_image_updater.rb
1020
1061
  - app/interactors/spree_cm_commissioner/image_saver.rb
1021
1062
  - app/interactors/spree_cm_commissioner/import_csv_template_downloader.rb
@@ -1047,6 +1088,8 @@ files:
1047
1088
  - app/interactors/spree_cm_commissioner/pin_code_creator.rb
1048
1089
  - app/interactors/spree_cm_commissioner/pin_code_generator.rb
1049
1090
  - app/interactors/spree_cm_commissioner/pin_code_sender.rb
1091
+ - app/interactors/spree_cm_commissioner/place_decoder.rb
1092
+ - app/interactors/spree_cm_commissioner/place_service.rb
1050
1093
  - app/interactors/spree_cm_commissioner/product_event_id_to_children_syncer.rb
1051
1094
  - app/interactors/spree_cm_commissioner/profile_image_destroyer.rb
1052
1095
  - app/interactors/spree_cm_commissioner/profile_image_updater.rb
@@ -1135,6 +1178,7 @@ files:
1135
1178
  - app/mailers/spree_cm_commissioner/pin_code_mailer.rb
1136
1179
  - app/models/.gitkeep
1137
1180
  - app/models/concerns/spree_cm_commissioner/homepage_section_bitwise.rb
1181
+ - app/models/concerns/spree_cm_commissioner/json_preference_validator.rb
1138
1182
  - app/models/concerns/spree_cm_commissioner/kyc_bitwise.rb
1139
1183
  - app/models/concerns/spree_cm_commissioner/line_item_durationable.rb
1140
1184
  - app/models/concerns/spree_cm_commissioner/line_item_guests_concern.rb
@@ -1151,6 +1195,7 @@ files:
1151
1195
  - app/models/concerns/spree_cm_commissioner/service_calendar_type.rb
1152
1196
  - app/models/concerns/spree_cm_commissioner/store_preference.rb
1153
1197
  - app/models/concerns/spree_cm_commissioner/taxon_kind.rb
1198
+ - app/models/concerns/spree_cm_commissioner/tenant_preference.rb
1154
1199
  - app/models/concerns/spree_cm_commissioner/tenant_updatable.rb
1155
1200
  - app/models/concerns/spree_cm_commissioner/user_identity.rb
1156
1201
  - app/models/concerns/spree_cm_commissioner/user_notification.rb
@@ -1287,6 +1332,7 @@ files:
1287
1332
  - app/models/spree_cm_commissioner/taxon_home_banner.rb
1288
1333
  - app/models/spree_cm_commissioner/taxon_option_type.rb
1289
1334
  - app/models/spree_cm_commissioner/taxon_option_value.rb
1335
+ - app/models/spree_cm_commissioner/taxon_place.rb
1290
1336
  - app/models/spree_cm_commissioner/taxon_vendor.rb
1291
1337
  - app/models/spree_cm_commissioner/taxon_video_banner.rb
1292
1338
  - app/models/spree_cm_commissioner/taxon_web_banner.rb
@@ -1477,6 +1523,7 @@ files:
1477
1523
  - app/queries/spree_cm_commissioner/line_item_searcher_query.rb
1478
1524
  - app/queries/spree_cm_commissioner/organizer_profile_event_query.rb
1479
1525
  - app/queries/spree_cm_commissioner/pie_chart_event_aggregator_queries.rb
1526
+ - app/queries/spree_cm_commissioner/reservation_query.rb
1480
1527
  - app/queries/spree_cm_commissioner/subscription_orders_query.rb
1481
1528
  - app/queries/spree_cm_commissioner/subscription_revenue_overview_query.rb
1482
1529
  - app/queries/spree_cm_commissioner/tickets_searcher_query.rb
@@ -1540,6 +1587,7 @@ files:
1540
1587
  - app/serializers/spree/v2/tenant/asset_serializer.rb
1541
1588
  - app/serializers/spree/v2/tenant/base_serializer.rb
1542
1589
  - app/serializers/spree/v2/tenant/booking_card_class_serializer.rb
1590
+ - app/serializers/spree/v2/tenant/cart_serializer.rb
1543
1591
  - app/serializers/spree/v2/tenant/customer_notification_serializer.rb
1544
1592
  - app/serializers/spree/v2/tenant/digital_link_serializer.rb
1545
1593
  - app/serializers/spree/v2/tenant/guest_card_class_serializer.rb
@@ -1661,6 +1709,8 @@ files:
1661
1709
  - app/services/spree_cm_commissioner/order_params_checker.rb
1662
1710
  - app/services/spree_cm_commissioner/orders/generate_commissions_decorator.rb
1663
1711
  - app/services/spree_cm_commissioner/organizer/export_guest_csv_service.rb
1712
+ - app/services/spree_cm_commissioner/organizer/export_invite_guest_csv_service.rb
1713
+ - app/services/spree_cm_commissioner/payment_method_type_mapper.rb
1664
1714
  - app/services/spree_cm_commissioner/penalty_calculator.rb
1665
1715
  - app/services/spree_cm_commissioner/role_permissions_constructor.rb
1666
1716
  - app/services/spree_cm_commissioner/role_permissions_loader.rb
@@ -2384,6 +2434,7 @@ files:
2384
2434
  - db/migrate/20250124034128_add_tenant_id_to_spree_orders.rb
2385
2435
  - db/migrate/20250124034153_add_tenant_id_to_spree_products.rb
2386
2436
  - db/migrate/20250127081645_add_fields_to_cm_tenants.rb
2437
+ - db/migrate/20250127081646_add_preferences_to_cm_tenants.rb
2387
2438
  - db/migrate/20250131024730_add_tenant_id_to_cm_homepage_section.rb
2388
2439
  - db/migrate/20250212100328_add_foreign_key_to_spree_user_tenant_id.rb
2389
2440
  - db/migrate/20250214025007_add_required_self_check_in_location_to_spree_products.rb
@@ -2423,6 +2474,15 @@ files:
2423
2474
  - db/migrate/20250520044533_add_event_to_spree_line_items.rb
2424
2475
  - db/migrate/20250521024345_add_tenant_id_to_cm_waiting_room_sessions.rb
2425
2476
  - db/migrate/20250521095539_add_kyc_to_spree_variants.rb
2477
+ - db/migrate/20250527043231_create_spree_commissioner_taxon_places.rb
2478
+ - db/migrate/20250528073748_remove_unique_slug_index_on_spree_cms_pages.rb
2479
+ - db/migrate/20250528074043_add_unique_index_on_slug_tenant_id_deleted_at_to_spree_cms_pages.rb
2480
+ - db/migrate/20250528090330_add_place_type_to_cm_vendor_place.rb
2481
+ - db/migrate/20250602094751_add_host_to_cm_tenants.rb
2482
+ - db/migrate/20250609015216_remove_claimed_at_and_expires_at_from_cm_invite_guest.rb
2483
+ - db/migrate/20250610080108_add_contact_to_cm_guests.rb
2484
+ - db/migrate/20250611023548_add_country_code_to_guests.rb
2485
+ - db/migrate/20250612035937_add_intel_phone_number_to_guests.rb
2426
2486
  - docker-compose.yml
2427
2487
  - docs/option_types/attr_types.md
2428
2488
  - docs/private_key.pem
@@ -2456,6 +2516,7 @@ files:
2456
2516
  - lib/spree_cm_commissioner/test_helper/factories/back_image_factory.rb
2457
2517
  - lib/spree_cm_commissioner/test_helper/factories/branch_factory.rb
2458
2518
  - lib/spree_cm_commissioner/test_helper/factories/check_in_factory.rb
2519
+ - lib/spree_cm_commissioner/test_helper/factories/cms_page_factory.rb
2459
2520
  - lib/spree_cm_commissioner/test_helper/factories/country_factory.rb
2460
2521
  - lib/spree_cm_commissioner/test_helper/factories/customer_factory.rb
2461
2522
  - lib/spree_cm_commissioner/test_helper/factories/customer_notification_factory.rb
@@ -2477,6 +2538,7 @@ files:
2477
2538
  - lib/spree_cm_commissioner/test_helper/factories/id_card_factory.rb
2478
2539
  - lib/spree_cm_commissioner/test_helper/factories/image_factory.rb
2479
2540
  - lib/spree_cm_commissioner/test_helper/factories/invite_factory.rb
2541
+ - lib/spree_cm_commissioner/test_helper/factories/invite_guests_factory.rb
2480
2542
  - lib/spree_cm_commissioner/test_helper/factories/invite_user_event_factory.rb
2481
2543
  - lib/spree_cm_commissioner/test_helper/factories/line_item_factory.rb
2482
2544
  - lib/spree_cm_commissioner/test_helper/factories/line_item_seat_factory.rb
@@ -2573,9 +2635,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
2573
2635
  version: '2.7'
2574
2636
  required_rubygems_version: !ruby/object:Gem::Requirement
2575
2637
  requirements:
2576
- - - ">="
2638
+ - - ">"
2577
2639
  - !ruby/object:Gem::Version
2578
- version: '0'
2640
+ version: 1.3.1
2579
2641
  requirements:
2580
2642
  - none
2581
2643
  rubygems_version: 3.4.1