spree_vpago 0.1.0.pre.beta

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 (262) hide show
  1. checksums.yaml +7 -0
  2. data/.env.example +3 -0
  3. data/.github/workflows/test_and_publish_gem.yml +96 -0
  4. data/.gitignore +24 -0
  5. data/.rspec +3 -0
  6. data/.rubocop.yml +56 -0
  7. data/.ruby-version +1 -0
  8. data/.tool-versions +1 -0
  9. data/.travis.yml +45 -0
  10. data/Appraisals +20 -0
  11. data/Gemfile +27 -0
  12. data/Gemfile.lock +656 -0
  13. data/LICENSE +26 -0
  14. data/README.md +151 -0
  15. data/Rakefile +21 -0
  16. data/app/.gitkeep +0 -0
  17. data/app/assets/config/spree_vpago_manifest.js +3 -0
  18. data/app/assets/images/backend-process.svg +3 -0
  19. data/app/assets/images/vpago/payway/abapay.png +0 -0
  20. data/app/assets/images/vpago/payway/cards.png +0 -0
  21. data/app/assets/javascripts/vpago/vpago_payments/request_process_payment.js +44 -0
  22. data/app/assets/javascripts/vpago/vpago_payments/user_informers/firebase.js +15802 -0
  23. data/app/controllers/.gitkeep +0 -0
  24. data/app/controllers/spree/acleda_redirects_controller.rb +22 -0
  25. data/app/controllers/spree/admin/payment_methods_controller_decorator.rb +65 -0
  26. data/app/controllers/spree/admin/payment_payway_base_controller.rb +25 -0
  27. data/app/controllers/spree/admin/payment_payway_checkers_controller.rb +34 -0
  28. data/app/controllers/spree/admin/payment_payway_markers_controller.rb +44 -0
  29. data/app/controllers/spree/admin/payment_payway_queriers_controller.rb +39 -0
  30. data/app/controllers/spree/admin/payment_wing_sdk_base_controller.rb +21 -0
  31. data/app/controllers/spree/admin/payment_wing_sdk_checkers_controller.rb +26 -0
  32. data/app/controllers/spree/admin/payment_wing_sdk_markers_controller.rb +36 -0
  33. data/app/controllers/spree/admin/payment_wing_sdk_queriers_controller.rb +20 -0
  34. data/app/controllers/spree/admin/payments_controller_decorator.rb +19 -0
  35. data/app/controllers/spree/admin/payout_profile_products_controller.rb +21 -0
  36. data/app/controllers/spree/admin/payout_profile_shipping_methods_controller.rb +21 -0
  37. data/app/controllers/spree/admin/payout_profiles_controller.rb +91 -0
  38. data/app/controllers/spree/admin/payouts_controller.rb +16 -0
  39. data/app/controllers/spree/api/v2/storefront/checkout_controller_decorator.rb +84 -0
  40. data/app/controllers/spree/payway_card_popups_controller.rb +20 -0
  41. data/app/controllers/spree/payway_results_controller.rb +11 -0
  42. data/app/controllers/spree/payway_v2_card_popups_controller.rb +20 -0
  43. data/app/controllers/spree/vpago_payments_controller.rb +71 -0
  44. data/app/controllers/spree/webhook/acleda_mobiles_controller.rb +88 -0
  45. data/app/controllers/spree/webhook/acledas_controller.rb +80 -0
  46. data/app/controllers/spree/webhook/base_controller.rb +6 -0
  47. data/app/controllers/spree/webhook/payways_controller.rb +77 -0
  48. data/app/controllers/spree/webhook/wings_controller.rb +63 -0
  49. data/app/controllers/spree/wing/base_controller.rb +29 -0
  50. data/app/controllers/spree/wing/transactions_controller.rb +27 -0
  51. data/app/controllers/spree/wing_redirects_controller.rb +20 -0
  52. data/app/helpers/vpago/admin/base_helper_decorator.rb +40 -0
  53. data/app/helpers/vpago/vpago_payments_helper.rb +12 -0
  54. data/app/javascripts/vpago/vpago_payments/user_informers/firebase.js +62 -0
  55. data/app/jobs/application_unique_job.rb +1 -0
  56. data/app/jobs/vpago/payment_processor_job.rb +8 -0
  57. data/app/models/.gitkeep +0 -0
  58. data/app/models/concerns/vpago/payoutable.rb +11 -0
  59. data/app/models/spree/gateway/acleda.rb +63 -0
  60. data/app/models/spree/gateway/acleda_mobile.rb +46 -0
  61. data/app/models/spree/gateway/payway.rb +66 -0
  62. data/app/models/spree/gateway/payway_v2.rb +174 -0
  63. data/app/models/spree/gateway/wing_sdk.rb +51 -0
  64. data/app/models/spree/payout.rb +23 -0
  65. data/app/models/spree/payout_profile.rb +107 -0
  66. data/app/models/spree/payout_profile_product.rb +14 -0
  67. data/app/models/spree/payout_profile_shipping_method.rb +14 -0
  68. data/app/models/spree/payout_profiles/payway_v2.rb +40 -0
  69. data/app/models/spree/vpago_payment_source.rb +21 -0
  70. data/app/models/vpago/adjustment_decorator.rb +28 -0
  71. data/app/models/vpago/line_item_decorator.rb +75 -0
  72. data/app/models/vpago/order_decorator.rb +78 -0
  73. data/app/models/vpago/payment_decorator.rb +44 -0
  74. data/app/models/vpago/payment_method_decorator.rb +91 -0
  75. data/app/models/vpago/payouts_generator.rb +125 -0
  76. data/app/models/vpago/product_decorator.rb +30 -0
  77. data/app/models/vpago/promotion_action_decorator.rb +9 -0
  78. data/app/models/vpago/shipment_decorator.rb +23 -0
  79. data/app/models/vpago/shipping_method_decorator.rb +33 -0
  80. data/app/models/vpago/shipping_rate_decorator.rb +25 -0
  81. data/app/models/vpago/store_decorator.rb +17 -0
  82. data/app/models/vpago/tax_category_decorator.rb +9 -0
  83. data/app/models/vpago/variant_decorator.rb +22 -0
  84. data/app/models/vpago/vendor_decorator.rb +10 -0
  85. data/app/overrides/spree/admin/adjustments/_adjustment/handle_by_table_body.html.erb.deface +11 -0
  86. data/app/overrides/spree/admin/adjustments/_adjustments_table/handle_by_table_header.html.erb.deface +3 -0
  87. data/app/overrides/spree/admin/adjustments/_form/handle_by_field.html.erb.deface +10 -0
  88. data/app/overrides/spree/admin/orders/_shipment/edit_method.html.erb.deface +26 -0
  89. data/app/overrides/spree/admin/orders/_shipment/show_method.html.erb.deface +27 -0
  90. data/app/overrides/spree/admin/payment_methods/_form/enable_pre_auth_field.html.erb.deface +17 -0
  91. data/app/overrides/spree/admin/payment_methods/_form/vendor_field.html.erb.deface +6 -0
  92. data/app/overrides/spree/admin/payment_methods/index/list.html.erb.deface +45 -0
  93. data/app/overrides/spree/admin/payment_methods/index/payment_methods_tabs.html.erb.deface +9 -0
  94. data/app/overrides/spree/admin/payment_methods/index/vendor_body.html.erb.deface +5 -0
  95. data/app/overrides/spree/admin/payment_methods/index/vendor_header.html.erb.deface +5 -0
  96. data/app/overrides/spree/admin/payments/_list/actions.html.erb.deface +13 -0
  97. data/app/overrides/spree/admin/promotions/_promotion_action/run_by_field.html.erb.deface +13 -0
  98. data/app/overrides/spree/admin/shared/_order_tabs/payouts.html.erb.deface +8 -0
  99. data/app/overrides/spree/admin/shared/_product_tabs/payout_profile_products.html.erb.deface +8 -0
  100. data/app/overrides/spree/admin/shared/sub_menu/_integrations/payout_profiles.html.erb.deface +3 -0
  101. data/app/overrides/spree/admin/shipping_methods/_form/handle_by.html.erb.deface +12 -0
  102. data/app/overrides/spree/admin/shipping_methods/edit/shipping_method_tabs.html.erb.deface +3 -0
  103. data/app/overrides/spree/admin/tax_categories/_form/collect_by_field.html.erb.deface +10 -0
  104. data/app/overrides/spree/admin/tax_categories/index/collect_by_table_body.html.erb.deface +4 -0
  105. data/app/overrides/spree/admin/tax_categories/index/collect_by_table_header.html.erb.deface +4 -0
  106. data/app/serializers/spree/api/v2/platform/vpago_payment_source_serializer.rb +11 -0
  107. data/app/serializers/spree/v2/storefront/payment_method_serializer_decorator.rb +23 -0
  108. data/app/serializers/spree/v2/storefront/payment_redirect_serializer.rb +13 -0
  109. data/app/serializers/spree/v2/storefront/payment_serializer_decorator.rb +13 -0
  110. data/app/serializers/spree/v2/storefront/vpago_payment_source_serializer.rb +9 -0
  111. data/app/services/.gitkeep +0 -0
  112. data/app/services/vpago/payment_finder.rb +27 -0
  113. data/app/services/vpago/payment_processor.rb +72 -0
  114. data/app/services/vpago/payment_redirect_handler.rb +194 -0
  115. data/app/services/vpago/payment_url_constructor.rb +32 -0
  116. data/app/services/vpago/payments/find_or_create.rb +51 -0
  117. data/app/services/vpago/payout_profiles/payway/base_payout_profile_request.rb +38 -0
  118. data/app/services/vpago/payout_profiles/payway/open_ssl_encrypter.rb +31 -0
  119. data/app/services/vpago/payout_profiles/payway/payout_profile_request_creator.rb +50 -0
  120. data/app/services/vpago/payout_profiles/payway/payout_profile_request_params_builder.rb +58 -0
  121. data/app/services/vpago/payout_profiles/payway/payout_profile_request_updater.rb +28 -0
  122. data/app/services/vpago/payway_return_options_builder.rb +39 -0
  123. data/app/services/vpago/user_informers/firebase.rb +52 -0
  124. data/app/views/.gitkeep +0 -0
  125. data/app/views/layouts/acleda.html.erb +18 -0
  126. data/app/views/layouts/payway.html.erb +24 -0
  127. data/app/views/layouts/payway_v2.html.erb +18 -0
  128. data/app/views/layouts/vpago_payments.html.erb +18 -0
  129. data/app/views/layouts/wing.html.erb +18 -0
  130. data/app/views/spree/_payment_icon.html.erb +25 -0
  131. data/app/views/spree/acleda_redirects/show.html.erb +3 -0
  132. data/app/views/spree/admin/payments/source_forms/_payment_payway.html.erb +4 -0
  133. data/app/views/spree/admin/payments/source_forms/_payway_v2.html.erb +7 -0
  134. data/app/views/spree/admin/payments/source_views/_acleda.html.erb +1 -0
  135. data/app/views/spree/admin/payments/source_views/_acleda_mobile.html.erb +1 -0
  136. data/app/views/spree/admin/payments/source_views/_payment_payway.html.erb +98 -0
  137. data/app/views/spree/admin/payments/source_views/_payway_v2.html.erb +5 -0
  138. data/app/views/spree/admin/payments/source_views/_vpago_payment_tmpl.html.erb +113 -0
  139. data/app/views/spree/admin/payments/source_views/_wingsdk.html.erb +5 -0
  140. data/app/views/spree/admin/payout_profile_products/_form.html.erb +28 -0
  141. data/app/views/spree/admin/payout_profile_products/edit.html.erb +18 -0
  142. data/app/views/spree/admin/payout_profile_products/index.html.erb +58 -0
  143. data/app/views/spree/admin/payout_profile_products/new.html.erb +22 -0
  144. data/app/views/spree/admin/payout_profile_shipping_methods/_form.html.erb +28 -0
  145. data/app/views/spree/admin/payout_profile_shipping_methods/edit.html.erb +22 -0
  146. data/app/views/spree/admin/payout_profile_shipping_methods/index.html.erb +6 -0
  147. data/app/views/spree/admin/payout_profile_shipping_methods/new.html.erb +27 -0
  148. data/app/views/spree/admin/payout_profiles/_filter.html.erb +19 -0
  149. data/app/views/spree/admin/payout_profiles/_form.html.erb +72 -0
  150. data/app/views/spree/admin/payout_profiles/edit.html.erb +33 -0
  151. data/app/views/spree/admin/payout_profiles/index.html.erb +63 -0
  152. data/app/views/spree/admin/payout_profiles/new.html.erb +13 -0
  153. data/app/views/spree/admin/payouts/_line_item_info_with_popover.html.erb +43 -0
  154. data/app/views/spree/admin/payouts/index.html.erb +46 -0
  155. data/app/views/spree/admin/shared/_payment_methods_tabs.html.erb +15 -0
  156. data/app/views/spree/admin/shared/_shipping_method_tabs.html.erb +19 -0
  157. data/app/views/spree/admin/shared/payout_profile/_info_card.html.erb +24 -0
  158. data/app/views/spree/admin/shared/payout_profile/_status.html.erb +11 -0
  159. data/app/views/spree/checkout/payment/_acleda.html.erb +1 -0
  160. data/app/views/spree/checkout/payment/_acleda_checkout_form.html.erb +14 -0
  161. data/app/views/spree/checkout/payment/_acleda_mobile.html.erb +0 -0
  162. data/app/views/spree/checkout/payment/_payment_payway.html.erb +21 -0
  163. data/app/views/spree/checkout/payment/_payway_loader.html.erb +2 -0
  164. data/app/views/spree/checkout/payment/_payway_root.html.erb +9 -0
  165. data/app/views/spree/checkout/payment/_payway_script.html.erb +77 -0
  166. data/app/views/spree/checkout/payment/_payway_v2.html.erb +1 -0
  167. data/app/views/spree/checkout/payment/_payway_v2_loader.html.erb +2 -0
  168. data/app/views/spree/checkout/payment/_payway_v2_root.html.erb +9 -0
  169. data/app/views/spree/checkout/payment/_payway_v2_script.html.erb +79 -0
  170. data/app/views/spree/checkout/payment/_wing_checkout_form.html.erb +18 -0
  171. data/app/views/spree/checkout/payment/_wingsdk.html.erb +1 -0
  172. data/app/views/spree/checkout/payment/acleda_form.html.erb +3 -0
  173. data/app/views/spree/checkout/payment/payway_form.html.erb +10 -0
  174. data/app/views/spree/checkout/payment/payway_v2_form.html.erb +10 -0
  175. data/app/views/spree/checkout/payment/wingsdk_form.html.erb +3 -0
  176. data/app/views/spree/payway_card_popups/_form.html.erb +10 -0
  177. data/app/views/spree/payway_card_popups/show.html.erb +5 -0
  178. data/app/views/spree/payway_results/failed.html.erb +1 -0
  179. data/app/views/spree/payway_results/success.html.erb +1 -0
  180. data/app/views/spree/payway_v2_card_popups/_form.html.erb +15 -0
  181. data/app/views/spree/payway_v2_card_popups/show.html.erb +3 -0
  182. data/app/views/spree/vpago_payments/checkout.html.erb +3 -0
  183. data/app/views/spree/vpago_payments/forms/spree/gateway/_payway_v2.html.erb +13 -0
  184. data/app/views/spree/vpago_payments/processing.html.erb +49 -0
  185. data/app/views/spree/vpago_payments/success.html.erb +3 -0
  186. data/app/views/spree/wing_redirects/show.html.erb +3 -0
  187. data/bin/rails +8 -0
  188. data/build.js +9 -0
  189. data/config/initializers/assets.rb +1 -0
  190. data/config/initializers/spree_permitted_attributes.rb +5 -0
  191. data/config/locales/en.yml +28 -0
  192. data/config/locales/km.yml +24 -0
  193. data/config/routes.rb +92 -0
  194. data/db/migrate/20210128040625_create_spree_vpago_payment_sources.rb +14 -0
  195. data/db/migrate/20210430052432_add_fields_to_payment_sources.rb +7 -0
  196. data/db/migrate/20210824044737_add_preference_to_spree_vpago_payment_source.rb +5 -0
  197. data/db/migrate/20240506095140_create_spree_payout_profiles.rb +22 -0
  198. data/db/migrate/20240506095148_create_spree_payout_profile_products.rb +10 -0
  199. data/db/migrate/20240523070757_add_optional_spere_payout_profile_products.rb +5 -0
  200. data/db/migrate/20240715091228_create_spree_payouts.rb +25 -0
  201. data/db/migrate/20240718195510_create_spree_payout_profile_shipping_methods.rb +15 -0
  202. data/db/migrate/20240718201453_add_handle_by_to_spree_adjustments.rb +5 -0
  203. data/db/migrate/20240718201509_add_run_by_to_spree_promotion_actions.rb +5 -0
  204. data/db/migrate/20240718201523_add_collect_by_to_spree_tax_categories.rb +5 -0
  205. data/db/migrate/20240718201538_add_handle_by_to_spree_shipping_method.rb +5 -0
  206. data/db/migrate/20240718201554_add_handle_by_to_spree_shipping_rates.rb +5 -0
  207. data/db/migrate/20240808102853_add_vendor_reference_to_spree_payment_methods.rb +7 -0
  208. data/db/migrate/20240904030132_add_gateway_status_to_spree_payments.rb +5 -0
  209. data/db/migrate/20241029071959_add_pre_auth_response_to_spree_payment.rb +5 -0
  210. data/db/migrate/20241202104014_add_enable_pre_auth_to_spree_payment_method.rb +5 -0
  211. data/db/migrate/20250121044614_add_transaction_response_to_spree_payments.rb +5 -0
  212. data/docs/acleda.md +65 -0
  213. data/gemfiles/spree_3_7.gemfile +9 -0
  214. data/gemfiles/spree_4_0.gemfile +8 -0
  215. data/gemfiles/spree_4_1.gemfile +9 -0
  216. data/gemfiles/spree_master.gemfile +8 -0
  217. data/lib/generators/spree_vpago/install/install_generator.rb +26 -0
  218. data/lib/generators/spree_vpago/install/templates/app/assets/images/vpago/payway/acleda_merchant_logo_300x300.png +0 -0
  219. data/lib/spree_vpago/engine.rb +36 -0
  220. data/lib/spree_vpago/factories.rb +6 -0
  221. data/lib/spree_vpago/version.rb +9 -0
  222. data/lib/spree_vpago.rb +5 -0
  223. data/lib/vpago/acleda/base.rb +111 -0
  224. data/lib/vpago/acleda/checkout.rb +105 -0
  225. data/lib/vpago/acleda/deeplink_checkout.rb +74 -0
  226. data/lib/vpago/acleda/payment_request_updater.rb +38 -0
  227. data/lib/vpago/acleda/transaction_status.rb +71 -0
  228. data/lib/vpago/acleda_mobile/base.rb +28 -0
  229. data/lib/vpago/acleda_mobile/callback_validator.php +35 -0
  230. data/lib/vpago/acleda_mobile/callback_validator.rb +38 -0
  231. data/lib/vpago/acleda_mobile/checkout.rb +78 -0
  232. data/lib/vpago/acleda_mobile/payment_request_updater.rb +34 -0
  233. data/lib/vpago/acleda_mobile/payment_retriever.rb +24 -0
  234. data/lib/vpago/acleda_mobile/transaction_status.rb +35 -0
  235. data/lib/vpago/payment_amount_calculator.rb +23 -0
  236. data/lib/vpago/payment_request_updater.rb +19 -0
  237. data/lib/vpago/payment_status_marker.rb +109 -0
  238. data/lib/vpago/payway/base.rb +112 -0
  239. data/lib/vpago/payway/checkout.rb +24 -0
  240. data/lib/vpago/payway/payment_request_updater.rb +31 -0
  241. data/lib/vpago/payway/payment_status_marker.rb +84 -0
  242. data/lib/vpago/payway/transaction_status.rb +74 -0
  243. data/lib/vpago/payway.rb +13 -0
  244. data/lib/vpago/payway_v2/base.rb +153 -0
  245. data/lib/vpago/payway_v2/checkout.rb +35 -0
  246. data/lib/vpago/payway_v2/payment_request_updater.rb +65 -0
  247. data/lib/vpago/payway_v2/payouts_params_constructor.rb +47 -0
  248. data/lib/vpago/payway_v2/pre_auth_canceler.rb +43 -0
  249. data/lib/vpago/payway_v2/pre_auth_completer.rb +76 -0
  250. data/lib/vpago/payway_v2/transaction_status.rb +85 -0
  251. data/lib/vpago/wing_sdk/base.rb +58 -0
  252. data/lib/vpago/wing_sdk/checkout.rb +20 -0
  253. data/lib/vpago/wing_sdk/payment_request_updater.rb +46 -0
  254. data/lib/vpago/wing_sdk/payment_retriever.rb +34 -0
  255. data/lib/vpago/wing_sdk/transaction_status_checker.rb +64 -0
  256. data/lib/vpago/wing_sdk/transaction_status_response.rb +33 -0
  257. data/node_modules/.yarn-integrity +147 -0
  258. data/package-lock.json +1491 -0
  259. data/package.json +10 -0
  260. data/spree_vpago.gemspec +33 -0
  261. data/yarn.lock +921 -0
  262. metadata +403 -0
metadata ADDED
@@ -0,0 +1,403 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spree_vpago
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0.pre.beta
5
+ platform: ruby
6
+ authors:
7
+ - You
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-03-07 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: faraday
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: google-cloud-firestore
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: spree_api
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '4.5'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '4.5'
55
+ - !ruby/object:Gem::Dependency
56
+ name: spree_backend
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '4.5'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '4.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: spree_core
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '4.5'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '4.5'
83
+ - !ruby/object:Gem::Dependency
84
+ name: spree_extension
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: spree_multi_vendor
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 2.4.1
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: 2.4.1
111
+ description: This Spree Commerce extension integrates Cambodian payment gateways,
112
+ supporting ABA Bank, Acleda Bank, and Wing for secure and seamless transactions.
113
+ email: you@example.com
114
+ executables: []
115
+ extensions: []
116
+ extra_rdoc_files: []
117
+ files:
118
+ - ".env.example"
119
+ - ".github/workflows/test_and_publish_gem.yml"
120
+ - ".gitignore"
121
+ - ".rspec"
122
+ - ".rubocop.yml"
123
+ - ".ruby-version"
124
+ - ".tool-versions"
125
+ - ".travis.yml"
126
+ - Appraisals
127
+ - Gemfile
128
+ - Gemfile.lock
129
+ - LICENSE
130
+ - README.md
131
+ - Rakefile
132
+ - app/.gitkeep
133
+ - app/assets/config/spree_vpago_manifest.js
134
+ - app/assets/images/backend-process.svg
135
+ - app/assets/images/vpago/payway/abapay.png
136
+ - app/assets/images/vpago/payway/cards.png
137
+ - app/assets/javascripts/vpago/vpago_payments/request_process_payment.js
138
+ - app/assets/javascripts/vpago/vpago_payments/user_informers/firebase.js
139
+ - app/controllers/.gitkeep
140
+ - app/controllers/spree/acleda_redirects_controller.rb
141
+ - app/controllers/spree/admin/payment_methods_controller_decorator.rb
142
+ - app/controllers/spree/admin/payment_payway_base_controller.rb
143
+ - app/controllers/spree/admin/payment_payway_checkers_controller.rb
144
+ - app/controllers/spree/admin/payment_payway_markers_controller.rb
145
+ - app/controllers/spree/admin/payment_payway_queriers_controller.rb
146
+ - app/controllers/spree/admin/payment_wing_sdk_base_controller.rb
147
+ - app/controllers/spree/admin/payment_wing_sdk_checkers_controller.rb
148
+ - app/controllers/spree/admin/payment_wing_sdk_markers_controller.rb
149
+ - app/controllers/spree/admin/payment_wing_sdk_queriers_controller.rb
150
+ - app/controllers/spree/admin/payments_controller_decorator.rb
151
+ - app/controllers/spree/admin/payout_profile_products_controller.rb
152
+ - app/controllers/spree/admin/payout_profile_shipping_methods_controller.rb
153
+ - app/controllers/spree/admin/payout_profiles_controller.rb
154
+ - app/controllers/spree/admin/payouts_controller.rb
155
+ - app/controllers/spree/api/v2/storefront/checkout_controller_decorator.rb
156
+ - app/controllers/spree/payway_card_popups_controller.rb
157
+ - app/controllers/spree/payway_results_controller.rb
158
+ - app/controllers/spree/payway_v2_card_popups_controller.rb
159
+ - app/controllers/spree/vpago_payments_controller.rb
160
+ - app/controllers/spree/webhook/acleda_mobiles_controller.rb
161
+ - app/controllers/spree/webhook/acledas_controller.rb
162
+ - app/controllers/spree/webhook/base_controller.rb
163
+ - app/controllers/spree/webhook/payways_controller.rb
164
+ - app/controllers/spree/webhook/wings_controller.rb
165
+ - app/controllers/spree/wing/base_controller.rb
166
+ - app/controllers/spree/wing/transactions_controller.rb
167
+ - app/controllers/spree/wing_redirects_controller.rb
168
+ - app/helpers/vpago/admin/base_helper_decorator.rb
169
+ - app/helpers/vpago/vpago_payments_helper.rb
170
+ - app/javascripts/vpago/vpago_payments/user_informers/firebase.js
171
+ - app/jobs/application_unique_job.rb
172
+ - app/jobs/vpago/payment_processor_job.rb
173
+ - app/models/.gitkeep
174
+ - app/models/concerns/vpago/payoutable.rb
175
+ - app/models/spree/gateway/acleda.rb
176
+ - app/models/spree/gateway/acleda_mobile.rb
177
+ - app/models/spree/gateway/payway.rb
178
+ - app/models/spree/gateway/payway_v2.rb
179
+ - app/models/spree/gateway/wing_sdk.rb
180
+ - app/models/spree/payout.rb
181
+ - app/models/spree/payout_profile.rb
182
+ - app/models/spree/payout_profile_product.rb
183
+ - app/models/spree/payout_profile_shipping_method.rb
184
+ - app/models/spree/payout_profiles/payway_v2.rb
185
+ - app/models/spree/vpago_payment_source.rb
186
+ - app/models/vpago/adjustment_decorator.rb
187
+ - app/models/vpago/line_item_decorator.rb
188
+ - app/models/vpago/order_decorator.rb
189
+ - app/models/vpago/payment_decorator.rb
190
+ - app/models/vpago/payment_method_decorator.rb
191
+ - app/models/vpago/payouts_generator.rb
192
+ - app/models/vpago/product_decorator.rb
193
+ - app/models/vpago/promotion_action_decorator.rb
194
+ - app/models/vpago/shipment_decorator.rb
195
+ - app/models/vpago/shipping_method_decorator.rb
196
+ - app/models/vpago/shipping_rate_decorator.rb
197
+ - app/models/vpago/store_decorator.rb
198
+ - app/models/vpago/tax_category_decorator.rb
199
+ - app/models/vpago/variant_decorator.rb
200
+ - app/models/vpago/vendor_decorator.rb
201
+ - app/overrides/spree/admin/adjustments/_adjustment/handle_by_table_body.html.erb.deface
202
+ - app/overrides/spree/admin/adjustments/_adjustments_table/handle_by_table_header.html.erb.deface
203
+ - app/overrides/spree/admin/adjustments/_form/handle_by_field.html.erb.deface
204
+ - app/overrides/spree/admin/orders/_shipment/edit_method.html.erb.deface
205
+ - app/overrides/spree/admin/orders/_shipment/show_method.html.erb.deface
206
+ - app/overrides/spree/admin/payment_methods/_form/enable_pre_auth_field.html.erb.deface
207
+ - app/overrides/spree/admin/payment_methods/_form/vendor_field.html.erb.deface
208
+ - app/overrides/spree/admin/payment_methods/index/list.html.erb.deface
209
+ - app/overrides/spree/admin/payment_methods/index/payment_methods_tabs.html.erb.deface
210
+ - app/overrides/spree/admin/payment_methods/index/vendor_body.html.erb.deface
211
+ - app/overrides/spree/admin/payment_methods/index/vendor_header.html.erb.deface
212
+ - app/overrides/spree/admin/payments/_list/actions.html.erb.deface
213
+ - app/overrides/spree/admin/promotions/_promotion_action/run_by_field.html.erb.deface
214
+ - app/overrides/spree/admin/shared/_order_tabs/payouts.html.erb.deface
215
+ - app/overrides/spree/admin/shared/_product_tabs/payout_profile_products.html.erb.deface
216
+ - app/overrides/spree/admin/shared/sub_menu/_integrations/payout_profiles.html.erb.deface
217
+ - app/overrides/spree/admin/shipping_methods/_form/handle_by.html.erb.deface
218
+ - app/overrides/spree/admin/shipping_methods/edit/shipping_method_tabs.html.erb.deface
219
+ - app/overrides/spree/admin/tax_categories/_form/collect_by_field.html.erb.deface
220
+ - app/overrides/spree/admin/tax_categories/index/collect_by_table_body.html.erb.deface
221
+ - app/overrides/spree/admin/tax_categories/index/collect_by_table_header.html.erb.deface
222
+ - app/serializers/spree/api/v2/platform/vpago_payment_source_serializer.rb
223
+ - app/serializers/spree/v2/storefront/payment_method_serializer_decorator.rb
224
+ - app/serializers/spree/v2/storefront/payment_redirect_serializer.rb
225
+ - app/serializers/spree/v2/storefront/payment_serializer_decorator.rb
226
+ - app/serializers/spree/v2/storefront/vpago_payment_source_serializer.rb
227
+ - app/services/.gitkeep
228
+ - app/services/vpago/payment_finder.rb
229
+ - app/services/vpago/payment_processor.rb
230
+ - app/services/vpago/payment_redirect_handler.rb
231
+ - app/services/vpago/payment_url_constructor.rb
232
+ - app/services/vpago/payments/find_or_create.rb
233
+ - app/services/vpago/payout_profiles/payway/base_payout_profile_request.rb
234
+ - app/services/vpago/payout_profiles/payway/open_ssl_encrypter.rb
235
+ - app/services/vpago/payout_profiles/payway/payout_profile_request_creator.rb
236
+ - app/services/vpago/payout_profiles/payway/payout_profile_request_params_builder.rb
237
+ - app/services/vpago/payout_profiles/payway/payout_profile_request_updater.rb
238
+ - app/services/vpago/payway_return_options_builder.rb
239
+ - app/services/vpago/user_informers/firebase.rb
240
+ - app/views/.gitkeep
241
+ - app/views/layouts/acleda.html.erb
242
+ - app/views/layouts/payway.html.erb
243
+ - app/views/layouts/payway_v2.html.erb
244
+ - app/views/layouts/vpago_payments.html.erb
245
+ - app/views/layouts/wing.html.erb
246
+ - app/views/spree/_payment_icon.html.erb
247
+ - app/views/spree/acleda_redirects/show.html.erb
248
+ - app/views/spree/admin/payments/source_forms/_payment_payway.html.erb
249
+ - app/views/spree/admin/payments/source_forms/_payway_v2.html.erb
250
+ - app/views/spree/admin/payments/source_views/_acleda.html.erb
251
+ - app/views/spree/admin/payments/source_views/_acleda_mobile.html.erb
252
+ - app/views/spree/admin/payments/source_views/_payment_payway.html.erb
253
+ - app/views/spree/admin/payments/source_views/_payway_v2.html.erb
254
+ - app/views/spree/admin/payments/source_views/_vpago_payment_tmpl.html.erb
255
+ - app/views/spree/admin/payments/source_views/_wingsdk.html.erb
256
+ - app/views/spree/admin/payout_profile_products/_form.html.erb
257
+ - app/views/spree/admin/payout_profile_products/edit.html.erb
258
+ - app/views/spree/admin/payout_profile_products/index.html.erb
259
+ - app/views/spree/admin/payout_profile_products/new.html.erb
260
+ - app/views/spree/admin/payout_profile_shipping_methods/_form.html.erb
261
+ - app/views/spree/admin/payout_profile_shipping_methods/edit.html.erb
262
+ - app/views/spree/admin/payout_profile_shipping_methods/index.html.erb
263
+ - app/views/spree/admin/payout_profile_shipping_methods/new.html.erb
264
+ - app/views/spree/admin/payout_profiles/_filter.html.erb
265
+ - app/views/spree/admin/payout_profiles/_form.html.erb
266
+ - app/views/spree/admin/payout_profiles/edit.html.erb
267
+ - app/views/spree/admin/payout_profiles/index.html.erb
268
+ - app/views/spree/admin/payout_profiles/new.html.erb
269
+ - app/views/spree/admin/payouts/_line_item_info_with_popover.html.erb
270
+ - app/views/spree/admin/payouts/index.html.erb
271
+ - app/views/spree/admin/shared/_payment_methods_tabs.html.erb
272
+ - app/views/spree/admin/shared/_shipping_method_tabs.html.erb
273
+ - app/views/spree/admin/shared/payout_profile/_info_card.html.erb
274
+ - app/views/spree/admin/shared/payout_profile/_status.html.erb
275
+ - app/views/spree/checkout/payment/_acleda.html.erb
276
+ - app/views/spree/checkout/payment/_acleda_checkout_form.html.erb
277
+ - app/views/spree/checkout/payment/_acleda_mobile.html.erb
278
+ - app/views/spree/checkout/payment/_payment_payway.html.erb
279
+ - app/views/spree/checkout/payment/_payway_loader.html.erb
280
+ - app/views/spree/checkout/payment/_payway_root.html.erb
281
+ - app/views/spree/checkout/payment/_payway_script.html.erb
282
+ - app/views/spree/checkout/payment/_payway_v2.html.erb
283
+ - app/views/spree/checkout/payment/_payway_v2_loader.html.erb
284
+ - app/views/spree/checkout/payment/_payway_v2_root.html.erb
285
+ - app/views/spree/checkout/payment/_payway_v2_script.html.erb
286
+ - app/views/spree/checkout/payment/_wing_checkout_form.html.erb
287
+ - app/views/spree/checkout/payment/_wingsdk.html.erb
288
+ - app/views/spree/checkout/payment/acleda_form.html.erb
289
+ - app/views/spree/checkout/payment/payway_form.html.erb
290
+ - app/views/spree/checkout/payment/payway_v2_form.html.erb
291
+ - app/views/spree/checkout/payment/wingsdk_form.html.erb
292
+ - app/views/spree/payway_card_popups/_form.html.erb
293
+ - app/views/spree/payway_card_popups/show.html.erb
294
+ - app/views/spree/payway_results/failed.html.erb
295
+ - app/views/spree/payway_results/success.html.erb
296
+ - app/views/spree/payway_v2_card_popups/_form.html.erb
297
+ - app/views/spree/payway_v2_card_popups/show.html.erb
298
+ - app/views/spree/vpago_payments/checkout.html.erb
299
+ - app/views/spree/vpago_payments/forms/spree/gateway/_payway_v2.html.erb
300
+ - app/views/spree/vpago_payments/processing.html.erb
301
+ - app/views/spree/vpago_payments/success.html.erb
302
+ - app/views/spree/wing_redirects/show.html.erb
303
+ - bin/rails
304
+ - build.js
305
+ - config/initializers/assets.rb
306
+ - config/initializers/spree_permitted_attributes.rb
307
+ - config/locales/en.yml
308
+ - config/locales/km.yml
309
+ - config/routes.rb
310
+ - db/migrate/20210128040625_create_spree_vpago_payment_sources.rb
311
+ - db/migrate/20210430052432_add_fields_to_payment_sources.rb
312
+ - db/migrate/20210824044737_add_preference_to_spree_vpago_payment_source.rb
313
+ - db/migrate/20240506095140_create_spree_payout_profiles.rb
314
+ - db/migrate/20240506095148_create_spree_payout_profile_products.rb
315
+ - db/migrate/20240523070757_add_optional_spere_payout_profile_products.rb
316
+ - db/migrate/20240715091228_create_spree_payouts.rb
317
+ - db/migrate/20240718195510_create_spree_payout_profile_shipping_methods.rb
318
+ - db/migrate/20240718201453_add_handle_by_to_spree_adjustments.rb
319
+ - db/migrate/20240718201509_add_run_by_to_spree_promotion_actions.rb
320
+ - db/migrate/20240718201523_add_collect_by_to_spree_tax_categories.rb
321
+ - db/migrate/20240718201538_add_handle_by_to_spree_shipping_method.rb
322
+ - db/migrate/20240718201554_add_handle_by_to_spree_shipping_rates.rb
323
+ - db/migrate/20240808102853_add_vendor_reference_to_spree_payment_methods.rb
324
+ - db/migrate/20240904030132_add_gateway_status_to_spree_payments.rb
325
+ - db/migrate/20241029071959_add_pre_auth_response_to_spree_payment.rb
326
+ - db/migrate/20241202104014_add_enable_pre_auth_to_spree_payment_method.rb
327
+ - db/migrate/20250121044614_add_transaction_response_to_spree_payments.rb
328
+ - docs/acleda.md
329
+ - gemfiles/spree_3_7.gemfile
330
+ - gemfiles/spree_4_0.gemfile
331
+ - gemfiles/spree_4_1.gemfile
332
+ - gemfiles/spree_master.gemfile
333
+ - lib/generators/spree_vpago/install/install_generator.rb
334
+ - lib/generators/spree_vpago/install/templates/app/assets/images/vpago/payway/acleda_merchant_logo_300x300.png
335
+ - lib/spree_vpago.rb
336
+ - lib/spree_vpago/engine.rb
337
+ - lib/spree_vpago/factories.rb
338
+ - lib/spree_vpago/version.rb
339
+ - lib/vpago/acleda/base.rb
340
+ - lib/vpago/acleda/checkout.rb
341
+ - lib/vpago/acleda/deeplink_checkout.rb
342
+ - lib/vpago/acleda/payment_request_updater.rb
343
+ - lib/vpago/acleda/transaction_status.rb
344
+ - lib/vpago/acleda_mobile/base.rb
345
+ - lib/vpago/acleda_mobile/callback_validator.php
346
+ - lib/vpago/acleda_mobile/callback_validator.rb
347
+ - lib/vpago/acleda_mobile/checkout.rb
348
+ - lib/vpago/acleda_mobile/payment_request_updater.rb
349
+ - lib/vpago/acleda_mobile/payment_retriever.rb
350
+ - lib/vpago/acleda_mobile/transaction_status.rb
351
+ - lib/vpago/payment_amount_calculator.rb
352
+ - lib/vpago/payment_request_updater.rb
353
+ - lib/vpago/payment_status_marker.rb
354
+ - lib/vpago/payway.rb
355
+ - lib/vpago/payway/base.rb
356
+ - lib/vpago/payway/checkout.rb
357
+ - lib/vpago/payway/payment_request_updater.rb
358
+ - lib/vpago/payway/payment_status_marker.rb
359
+ - lib/vpago/payway/transaction_status.rb
360
+ - lib/vpago/payway_v2/base.rb
361
+ - lib/vpago/payway_v2/checkout.rb
362
+ - lib/vpago/payway_v2/payment_request_updater.rb
363
+ - lib/vpago/payway_v2/payouts_params_constructor.rb
364
+ - lib/vpago/payway_v2/pre_auth_canceler.rb
365
+ - lib/vpago/payway_v2/pre_auth_completer.rb
366
+ - lib/vpago/payway_v2/transaction_status.rb
367
+ - lib/vpago/wing_sdk/base.rb
368
+ - lib/vpago/wing_sdk/checkout.rb
369
+ - lib/vpago/wing_sdk/payment_request_updater.rb
370
+ - lib/vpago/wing_sdk/payment_retriever.rb
371
+ - lib/vpago/wing_sdk/transaction_status_checker.rb
372
+ - lib/vpago/wing_sdk/transaction_status_response.rb
373
+ - node_modules/.yarn-integrity
374
+ - package-lock.json
375
+ - package.json
376
+ - spree_vpago.gemspec
377
+ - yarn.lock
378
+ homepage: https://github.com/your-github-handle/spree_vpago
379
+ licenses:
380
+ - BSD-3-Clause
381
+ metadata:
382
+ rubygems_mfa_required: 'true'
383
+ post_install_message:
384
+ rdoc_options: []
385
+ require_paths:
386
+ - lib
387
+ required_ruby_version: !ruby/object:Gem::Requirement
388
+ requirements:
389
+ - - ">="
390
+ - !ruby/object:Gem::Version
391
+ version: 3.2.0
392
+ required_rubygems_version: !ruby/object:Gem::Requirement
393
+ requirements:
394
+ - - ">"
395
+ - !ruby/object:Gem::Version
396
+ version: 1.3.1
397
+ requirements:
398
+ - none
399
+ rubygems_version: 3.4.1
400
+ signing_key:
401
+ specification_version: 4
402
+ summary: Cambodian Payment Gateway Integration for Spree Commerce
403
+ test_files: []