spree_core 6.0.0.beta4 → 6.0.0.rc2

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 (575) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -5
  3. data/app/helpers/spree/images_helper.rb +0 -57
  4. data/app/jobs/spree/base_job.rb +21 -0
  5. data/app/jobs/spree/carts/reap_expired_job.rb +2 -2
  6. data/app/jobs/spree/collections/regenerate_time_based_job.rb +6 -3
  7. data/app/jobs/spree/orders/finalize_stale_drafts_job.rb +8 -5
  8. data/app/jobs/spree/payments/cancel_unused_sessions_job.rb +61 -0
  9. data/app/jobs/spree/search_provider/index_job.rb +4 -0
  10. data/app/jobs/spree/seller_payouts/sweep_seller_job.rb +2 -0
  11. data/app/jobs/spree/uploads/purge_unattached_job.rb +49 -0
  12. data/app/mailers/spree/admin_user_mailer.rb +4 -19
  13. data/app/mailers/spree/base_mailer.rb +97 -13
  14. data/app/mailers/spree/email_template_mailer.rb +27 -0
  15. data/app/mailers/spree/export_mailer.rb +3 -4
  16. data/app/mailers/spree/import_mailer.rb +3 -4
  17. data/app/mailers/spree/invitation_mailer.rb +24 -7
  18. data/app/mailers/spree/seller_user_mailer.rb +4 -16
  19. data/app/mailers/spree/webhook_mailer.rb +2 -2
  20. data/app/models/concerns/spree/acted_by.rb +1 -1
  21. data/app/models/concerns/spree/admin_user_methods.rb +15 -1
  22. data/app/models/concerns/spree/api_typed.rb +91 -0
  23. data/app/models/concerns/spree/calculated_adjustments.rb +41 -13
  24. data/app/models/concerns/spree/calculator/currency_amounts.rb +1 -1
  25. data/app/models/concerns/spree/calculator/tiers.rb +63 -0
  26. data/app/models/concerns/spree/canonical_decimals.rb +61 -0
  27. data/app/models/concerns/spree/customer_methods.rb +23 -18
  28. data/app/models/concerns/spree/derived_number.rb +11 -13
  29. data/app/models/concerns/spree/email_template_identity.rb +52 -0
  30. data/app/models/concerns/spree/parameterizable_name.rb +2 -0
  31. data/app/models/concerns/spree/payment_session_transitions.rb +8 -2
  32. data/app/models/concerns/spree/post_sale/taxation.rb +54 -0
  33. data/app/models/concerns/spree/post_sale/taxed_line.rb +51 -0
  34. data/app/models/concerns/spree/preference_schema/json_schema.rb +139 -0
  35. data/app/models/concerns/spree/preference_schema.rb +62 -32
  36. data/app/models/concerns/spree/product_scopes.rb +16 -2
  37. data/app/models/concerns/spree/provider_listing.rb +41 -0
  38. data/app/models/concerns/spree/publishable.rb +82 -14
  39. data/app/models/concerns/spree/purchase/addresses.rb +23 -10
  40. data/app/models/concerns/spree/purchase/currency.rb +1 -1
  41. data/app/models/concerns/spree/purchase/deprecated_aliases.rb +87 -0
  42. data/app/models/concerns/spree/purchase/gift_cards.rb +10 -4
  43. data/app/models/concerns/spree/purchase/locale.rb +1 -1
  44. data/app/models/concerns/spree/purchase/payment_processing.rb +8 -4
  45. data/app/models/concerns/spree/purchase/purchase_order.rb +9 -4
  46. data/app/models/concerns/spree/purchase/store_credits.rb +36 -1
  47. data/app/models/concerns/spree/purchase/totals.rb +49 -8
  48. data/app/models/concerns/spree/ransackable_attributes.rb +46 -0
  49. data/app/models/concerns/spree/receivable.rb +1 -1
  50. data/app/models/concerns/spree/searchable.rb +0 -4
  51. data/app/models/concerns/spree/secret_preferences.rb +59 -0
  52. data/app/models/concerns/spree/signed_id_attachments.rb +54 -0
  53. data/app/models/concerns/spree/single_store_resource.rb +1 -1
  54. data/app/models/concerns/spree/stores/email_branding.rb +32 -0
  55. data/app/models/concerns/spree/stores/markets.rb +5 -2
  56. data/app/models/concerns/spree/type_labels.rb +38 -0
  57. data/app/models/concerns/spree/typed_adjustment_line.rb +5 -6
  58. data/app/models/concerns/spree/typed_associations.rb +12 -18
  59. data/app/models/concerns/spree/vat_price_calculation.rb +5 -6
  60. data/app/models/spree/address.rb +12 -2
  61. data/app/models/spree/adjusters/largest_remainder.rb +14 -1
  62. data/app/models/spree/adjusters/promotion.rb +4 -19
  63. data/app/models/spree/allowed_origin.rb +3 -1
  64. data/app/models/spree/api_key.rb +5 -6
  65. data/app/models/spree/authentication/strategies/oidc_strategy.rb +5 -5
  66. data/app/models/spree/base.rb +99 -22
  67. data/app/models/spree/calculator/flat_percent_item_total.rb +2 -4
  68. data/app/models/spree/calculator/flat_rate.rb +3 -5
  69. data/app/models/spree/calculator/flexi_rate.rb +4 -6
  70. data/app/models/spree/calculator/percent_on_line_item.rb +2 -2
  71. data/app/models/spree/calculator/price_sack.rb +5 -7
  72. data/app/models/spree/calculator/shipping/digital_delivery.rb +3 -5
  73. data/app/models/spree/calculator/shipping/flat_percent_item_total.rb +7 -7
  74. data/app/models/spree/calculator/shipping/flat_rate.rb +5 -7
  75. data/app/models/spree/calculator/shipping/flexi_rate.rb +4 -6
  76. data/app/models/spree/calculator/shipping/per_item.rb +3 -5
  77. data/app/models/spree/calculator/shipping/price_sack.rb +5 -7
  78. data/app/models/spree/calculator/tiered_flat_rate.rb +7 -24
  79. data/app/models/spree/calculator/tiered_percent.rb +7 -25
  80. data/app/models/spree/cart.rb +78 -18
  81. data/app/models/spree/catalog.rb +1 -0
  82. data/app/models/spree/catalog_price.rb +0 -7
  83. data/app/models/spree/catalog_price_tier.rb +0 -8
  84. data/app/models/spree/category.rb +3 -1
  85. data/app/models/spree/channel/gating.rb +3 -2
  86. data/app/models/spree/channel.rb +6 -4
  87. data/app/models/spree/claim.rb +22 -1
  88. data/app/models/spree/claim_line_item.rb +41 -6
  89. data/app/models/spree/collection.rb +2 -1
  90. data/app/models/spree/collection_rule.rb +5 -21
  91. data/app/models/spree/commission_line.rb +1 -1
  92. data/app/models/spree/commission_rate.rb +7 -4
  93. data/app/models/spree/commission_rate_value.rb +1 -1
  94. data/app/models/spree/commission_rule.rb +4 -11
  95. data/app/models/spree/commission_rules/category_rule.rb +2 -5
  96. data/app/models/spree/commission_rules/item_total_rule.rb +2 -2
  97. data/app/models/spree/commission_rules/product_rule.rb +1 -1
  98. data/app/models/spree/commission_rules/seller_rule.rb +2 -5
  99. data/app/models/spree/company.rb +1 -0
  100. data/app/models/spree/company_invitation.rb +1 -0
  101. data/app/models/spree/consent_record.rb +0 -1
  102. data/app/models/spree/credit_card.rb +1 -1
  103. data/app/models/spree/current.rb +23 -0
  104. data/app/models/spree/custom_field.rb +2 -2
  105. data/app/models/spree/custom_field_definition.rb +20 -35
  106. data/app/models/spree/custom_fields/boolean.rb +1 -1
  107. data/app/models/spree/custom_fields/json.rb +1 -1
  108. data/app/models/spree/customer_group.rb +1 -0
  109. data/app/models/spree/data_feed/google.rb +0 -2
  110. data/app/models/spree/data_request.rb +2 -1
  111. data/app/models/spree/delivery_method.rb +36 -14
  112. data/app/models/spree/delivery_method_rule.rb +4 -11
  113. data/app/models/spree/delivery_method_rules/channel_rule.rb +2 -5
  114. data/app/models/spree/delivery_method_rules/item_total_rule.rb +2 -2
  115. data/app/models/spree/delivery_profile.rb +1 -0
  116. data/app/models/spree/delivery_rate.rb +7 -8
  117. data/app/models/spree/delivery_rate_provider/base.rb +1 -0
  118. data/app/models/spree/delivery_zone.rb +1 -2
  119. data/app/models/spree/delivery_zone_member.rb +4 -4
  120. data/app/models/spree/digital_asset.rb +7 -0
  121. data/app/models/spree/digital_asset_provider/base.rb +2 -0
  122. data/app/models/spree/digital_link.rb +2 -5
  123. data/app/models/spree/discount.rb +1 -1
  124. data/app/models/spree/email_template.rb +25 -0
  125. data/app/models/spree/email_template_draft.rb +13 -0
  126. data/app/models/spree/email_template_revision.rb +17 -0
  127. data/app/models/spree/email_templates/entry.rb +118 -0
  128. data/app/models/spree/email_templates/sample_record.rb +16 -0
  129. data/app/models/spree/emails/branding.rb +80 -0
  130. data/app/models/spree/exchange.rb +16 -1
  131. data/app/models/spree/exchange_line_item.rb +121 -5
  132. data/app/models/spree/export.rb +0 -1
  133. data/app/models/spree/exports/products.rb +10 -1
  134. data/app/models/spree/exports/report.rb +3 -3
  135. data/app/models/spree/fee.rb +4 -2
  136. data/app/models/spree/file_upload.rb +155 -0
  137. data/app/models/spree/fulfillment.rb +66 -30
  138. data/app/models/spree/fulfillment_changer.rb +2 -2
  139. data/app/models/spree/fulfillment_group.rb +6 -1
  140. data/app/models/spree/fulfillment_item.rb +0 -4
  141. data/app/models/spree/fulfillment_provider/base.rb +1 -0
  142. data/app/models/spree/gateway/bogus.rb +6 -0
  143. data/app/models/spree/gateway/custom_payment_source_method.rb +5 -0
  144. data/app/models/spree/gateway.rb +6 -2
  145. data/app/models/spree/gift_card.rb +18 -8
  146. data/app/models/spree/gift_card_batch.rb +3 -5
  147. data/app/models/spree/import.rb +5 -7
  148. data/app/models/spree/import_mapping.rb +1 -2
  149. data/app/models/spree/import_row.rb +2 -2
  150. data/app/models/spree/import_schemas/products.rb +1 -0
  151. data/app/models/spree/integration.rb +9 -19
  152. data/app/models/spree/invitation.rb +5 -5
  153. data/app/models/spree/line_item.rb +15 -4
  154. data/app/models/spree/locale.rb +11 -8
  155. data/app/models/spree/market.rb +8 -2
  156. data/app/models/spree/media.rb +1 -9
  157. data/app/models/spree/newsletter_subscriber.rb +4 -0
  158. data/app/models/spree/option_type.rb +2 -1
  159. data/app/models/spree/option_value.rb +2 -1
  160. data/app/models/spree/order.rb +60 -142
  161. data/app/models/spree/order_group.rb +18 -4
  162. data/app/models/spree/order_inventory.rb +10 -5
  163. data/app/models/spree/order_promotion.rb +1 -1
  164. data/app/models/spree/order_routing/has_strategy_preference.rb +1 -1
  165. data/app/models/spree/order_routing/strategy/base.rb +4 -2
  166. data/app/models/spree/order_routing/strategy/rules.rb +1 -1
  167. data/app/models/spree/order_routing_rule.rb +6 -22
  168. data/app/models/spree/package_type.rb +2 -2
  169. data/app/models/spree/payment/gateway_options.rb +15 -53
  170. data/app/models/spree/payment/processing.rb +2 -4
  171. data/app/models/spree/payment.rb +21 -13
  172. data/app/models/spree/payment_method/check.rb +2 -0
  173. data/app/models/spree/payment_method/session_instrumentation.rb +1 -0
  174. data/app/models/spree/payment_method/store_credit.rb +15 -13
  175. data/app/models/spree/payment_method.rb +78 -6
  176. data/app/models/spree/payment_session.rb +5 -1
  177. data/app/models/spree/payment_setup_session.rb +1 -0
  178. data/app/models/spree/payout_provider/base.rb +3 -1
  179. data/app/models/spree/pickup_point_provider/base.rb +2 -0
  180. data/app/models/spree/policy.rb +1 -0
  181. data/app/models/spree/price.rb +17 -14
  182. data/app/models/spree/price_adjustment_tier.rb +4 -0
  183. data/app/models/spree/price_list.rb +14 -9
  184. data/app/models/spree/price_rules/channel_rule.rb +3 -6
  185. data/app/models/spree/price_rules/customer_group_rule.rb +3 -6
  186. data/app/models/spree/price_rules/market_rule.rb +2 -5
  187. data/app/models/spree/price_rules/user_rule.rb +1 -3
  188. data/app/models/spree/product/channels.rb +9 -2
  189. data/app/models/spree/product.rb +54 -30
  190. data/app/models/spree/product_submission.rb +0 -12
  191. data/app/models/spree/product_type.rb +1 -1
  192. data/app/models/spree/promotion/actions/create_line_items.rb +28 -18
  193. data/app/models/spree/promotion/rules/category.rb +1 -5
  194. data/app/models/spree/promotion/rules/channel.rb +2 -9
  195. data/app/models/spree/promotion/rules/country.rb +3 -8
  196. data/app/models/spree/promotion/rules/currency.rb +1 -5
  197. data/app/models/spree/promotion/rules/customer_group.rb +2 -9
  198. data/app/models/spree/promotion/rules/first_order.rb +0 -4
  199. data/app/models/spree/promotion/rules/item_total.rb +6 -10
  200. data/app/models/spree/promotion/rules/market.rb +2 -9
  201. data/app/models/spree/promotion/rules/one_use_per_user.rb +0 -4
  202. data/app/models/spree/promotion/rules/option_value.rb +2 -6
  203. data/app/models/spree/promotion/rules/product.rb +1 -5
  204. data/app/models/spree/promotion/rules/user.rb +0 -4
  205. data/app/models/spree/promotion/rules/user_logged_in.rb +0 -4
  206. data/app/models/spree/promotion.rb +36 -6
  207. data/app/models/spree/promotion_action.rb +7 -14
  208. data/app/models/spree/promotion_action_line_item.rb +1 -1
  209. data/app/models/spree/promotion_handler/coupon.rb +59 -27
  210. data/app/models/spree/promotion_rule.rb +7 -14
  211. data/app/models/spree/purchase_order.rb +3 -0
  212. data/app/models/spree/quantity_rule.rb +1 -1
  213. data/app/models/spree/refund.rb +41 -18
  214. data/app/models/spree/return.rb +31 -2
  215. data/app/models/spree/return_line_item.rb +65 -14
  216. data/app/models/spree/role.rb +7 -7
  217. data/app/models/spree/saved_report.rb +2 -1
  218. data/app/models/spree/search_provider/base.rb +4 -0
  219. data/app/models/spree/seller.rb +10 -2
  220. data/app/models/spree/seller_payout.rb +8 -0
  221. data/app/models/spree/seller_requirement.rb +5 -12
  222. data/app/models/spree/seller_requirement_custom_field.rb +1 -2
  223. data/app/models/spree/seller_requirement_submission.rb +3 -2
  224. data/app/models/spree/seller_requirements/accept_terms.rb +2 -3
  225. data/app/models/spree/seller_transfer.rb +6 -0
  226. data/app/models/spree/shipping_label.rb +2 -0
  227. data/app/models/spree/stock/availability_validator.rb +2 -2
  228. data/app/models/spree/stock/estimator.rb +1 -1
  229. data/app/models/spree/stock/inventory_unit_builder.rb +1 -1
  230. data/app/models/spree/stock/packer.rb +2 -2
  231. data/app/models/spree/stock/splitter/weight.rb +1 -1
  232. data/app/models/spree/stock_level/custom_events.rb +6 -0
  233. data/app/models/spree/stock_level.rb +3 -1
  234. data/app/models/spree/stock_location.rb +1 -0
  235. data/app/models/spree/stock_movement.rb +1 -1
  236. data/app/models/spree/stock_receipt_item.rb +1 -1
  237. data/app/models/spree/stock_reservation.rb +2 -2
  238. data/app/models/spree/stock_transfer.rb +6 -2
  239. data/app/models/spree/store.rb +70 -19
  240. data/app/models/spree/store_credit.rb +13 -13
  241. data/app/models/spree/store_credit_event.rb +5 -5
  242. data/app/models/spree/supplier.rb +1 -0
  243. data/app/models/spree/tax_category.rb +1 -0
  244. data/app/models/spree/tax_exemption_certificate.rb +3 -0
  245. data/app/models/spree/tax_identifier.rb +3 -1
  246. data/app/models/spree/tax_line.rb +53 -3
  247. data/app/models/spree/tax_provider/base.rb +71 -14
  248. data/app/models/spree/tax_provider/internal.rb +70 -41
  249. data/app/models/spree/tax_provider/recorded_share.rb +114 -0
  250. data/app/models/spree/tax_rate.rb +30 -8
  251. data/app/models/spree/taxon.rb +1 -1
  252. data/app/models/spree/taxonomy.rb +0 -1
  253. data/app/models/spree/update_status.rb +25 -0
  254. data/app/models/spree/variant.rb +10 -12
  255. data/app/models/spree/variant_media.rb +1 -1
  256. data/app/models/spree/webhook_delivery.rb +1 -0
  257. data/app/models/spree/webhook_endpoint.rb +46 -13
  258. data/app/models/spree/wishlist.rb +1 -6
  259. data/app/models/spree/wishlist_item/custom_events.rb +6 -0
  260. data/app/presenters/spree/csv/customer_presenter.rb +1 -1
  261. data/app/presenters/spree/csv/newsletter_subscriber_presenter.rb +1 -1
  262. data/app/presenters/spree/csv/order_line_item_presenter.rb +10 -6
  263. data/app/presenters/spree/csv/price_list_price_presenter.rb +3 -8
  264. data/app/presenters/spree/csv/product_variant_presenter.rb +59 -20
  265. data/app/presenters/spree/csv/purchase_order_item_presenter.rb +1 -3
  266. data/app/serializers/spree/emails/base_serializer.rb +14 -0
  267. data/app/serializers/spree/emails/export_serializer.rb +13 -0
  268. data/app/serializers/spree/emails/import_serializer.rb +19 -0
  269. data/app/serializers/spree/emails/invitation_serializer.rb +28 -0
  270. data/app/serializers/spree/emails/store_serializer.rb +31 -0
  271. data/app/serializers/spree/emails/user_serializer.rb +12 -0
  272. data/app/serializers/spree/emails/webhook_endpoint_serializer.rb +16 -0
  273. data/app/services/spree/carts/create.rb +8 -2
  274. data/app/services/spree/carts/destroy.rb +2 -2
  275. data/app/services/spree/carts/remove_out_of_stock_items.rb +2 -2
  276. data/app/services/spree/carts/split_by_seller.rb +1 -1
  277. data/app/services/spree/carts/update.rb +22 -8
  278. data/app/services/spree/catalogs/set_product_terms.rb +1 -1
  279. data/app/services/spree/categories/add_products.rb +13 -31
  280. data/app/services/spree/categories/remove_products.rb +12 -51
  281. data/app/services/spree/checkout/advance.rb +1 -4
  282. data/app/services/spree/collections/add_products.rb +10 -23
  283. data/app/services/spree/collections/remove_products.rb +7 -43
  284. data/app/services/spree/coupon_codes/bulk_generate.rb +8 -14
  285. data/app/services/spree/data_requests/create.rb +1 -1
  286. data/app/services/spree/deliveries/destroy.rb +2 -2
  287. data/app/services/spree/email_templates/check.rb +58 -0
  288. data/app/services/spree/email_templates/no_sample_record.rb +7 -0
  289. data/app/services/spree/email_templates/preview.rb +99 -0
  290. data/app/services/spree/emails/file_system.rb +23 -0
  291. data/app/services/spree/emails/filters.rb +84 -0
  292. data/app/services/spree/emails/liquid_context.rb +48 -0
  293. data/app/services/spree/emails/rendered_email.rb +14 -0
  294. data/app/services/spree/emails/renderer.rb +125 -0
  295. data/app/services/spree/emails/template.rb +51 -0
  296. data/app/services/spree/emails/template_data.rb +23 -0
  297. data/app/services/spree/emails/template_resolver.rb +109 -0
  298. data/app/services/spree/emails/text_converter.rb +72 -0
  299. data/app/services/spree/emails/translation_inliner.rb +134 -0
  300. data/app/services/spree/imports/row_processors/price_list_price.rb +10 -10
  301. data/app/services/spree/imports/row_processors/product_variant.rb +77 -34
  302. data/app/services/spree/imports/row_processors/purchase_order.rb +13 -13
  303. data/app/services/spree/locales.rb +43 -10
  304. data/app/services/spree/newsletter/subscribe.rb +8 -12
  305. data/app/services/spree/orders/build_fulfillments.rb +3 -2
  306. data/app/services/spree/orders/create.rb +5 -4
  307. data/app/services/spree/orders/discounts/create.rb +14 -11
  308. data/app/services/spree/orders/discounts/destroy.rb +1 -0
  309. data/app/services/spree/orders/discounts/update.rb +1 -0
  310. data/app/services/spree/orders/fees/create.rb +1 -0
  311. data/app/services/spree/orders/fees/destroy.rb +1 -0
  312. data/app/services/spree/orders/fees/update.rb +1 -0
  313. data/app/services/spree/orders/remove_line_item.rb +13 -3
  314. data/app/services/spree/orders/update.rb +10 -6
  315. data/app/services/spree/orders/update_item.rb +6 -3
  316. data/app/services/spree/orders/update_statuses.rb +3 -1
  317. data/app/services/spree/prices/bulk_upsert.rb +32 -25
  318. data/app/services/spree/product_memberships.rb +61 -0
  319. data/app/services/spree/returns/eligibility_validator.rb +1 -1
  320. data/app/services/spree/search_provider/custom_field_schema.rb +2 -2
  321. data/app/services/spree/seeds/commission_rates.rb +1 -1
  322. data/app/services/spree/seeds/digital_delivery.rb +1 -1
  323. data/app/services/spree/seeds/payment_methods.rb +2 -2
  324. data/app/services/spree/seeds/saved_reports.rb +3 -3
  325. data/app/services/spree/seeds/stores.rb +1 -1
  326. data/app/services/spree/sellers/requirements.rb +1 -2
  327. data/app/services/spree/shipping_labels/confirm_refund.rb +1 -1
  328. data/app/services/spree/shipping_labels/store_file.rb +3 -3
  329. data/app/services/spree/stock_levels/correct.rb +3 -3
  330. data/app/services/spree/stock_reservations/reserve.rb +2 -3
  331. data/app/services/spree/store_credits/apply.rb +15 -13
  332. data/app/services/spree/stores/provision_defaults.rb +23 -25
  333. data/app/services/spree/update_check.rb +160 -0
  334. data/app/services/spree/uploads/assign_stores.rb +92 -0
  335. data/app/subscribers/spree/seller_onboarding_subscriber.rb +1 -1
  336. data/app/validators/spree/attachment_content_type_validator.rb +19 -2
  337. data/app/validators/spree/locale_codes_validator.rb +22 -0
  338. data/app/views/layouts/spree/base_mailer.html.erb +2 -43
  339. data/app/views/layouts/spree/base_mailer.liquid +79 -0
  340. data/app/views/spree/admin_user_mailer/password_reset_email.liquid +14 -0
  341. data/app/views/spree/export_mailer/export_done.liquid +12 -0
  342. data/app/views/spree/import_mailer/import_done.liquid +15 -0
  343. data/app/views/spree/invitation_mailer/invitation_accepted.liquid +9 -0
  344. data/app/views/spree/invitation_mailer/invitation_email.liquid +13 -0
  345. data/app/views/spree/seller_user_mailer/password_reset_email.liquid +14 -0
  346. data/app/views/spree/shared/_mailer_button.html.erb +4 -5
  347. data/app/views/spree/shared/_mailer_hero.html.erb +6 -5
  348. data/app/views/spree/shared/_summary_row.liquid +8 -0
  349. data/app/views/spree/webhook_mailer/endpoint_disabled.liquid +21 -0
  350. data/app/workflows/spree/carts/add_item.rb +4 -4
  351. data/app/workflows/spree/carts/complete.rb +13 -3
  352. data/app/workflows/spree/carts/merge.rb +1 -1
  353. data/app/workflows/spree/carts/recalculate_totals.rb +5 -0
  354. data/app/workflows/spree/carts/upsert_items.rb +18 -9
  355. data/app/workflows/spree/claims/approve.rb +5 -22
  356. data/app/workflows/spree/claims/cancel.rb +5 -21
  357. data/app/workflows/spree/claims/create.rb +15 -0
  358. data/app/workflows/spree/claims/deny.rb +7 -0
  359. data/app/workflows/spree/claims/resolve.rb +34 -31
  360. data/app/workflows/spree/customers/anonymize.rb +3 -4
  361. data/app/workflows/spree/customers/create.rb +1 -1
  362. data/app/workflows/spree/data_requests/fulfill.rb +2 -2
  363. data/app/workflows/spree/deliveries/update_tracking.rb +1 -1
  364. data/app/workflows/spree/email_templates/discard_draft.rb +20 -0
  365. data/app/workflows/spree/email_templates/publish.rb +70 -0
  366. data/app/workflows/spree/email_templates/restore_revision.rb +33 -0
  367. data/app/workflows/spree/email_templates/revert.rb +29 -0
  368. data/app/workflows/spree/email_templates/save_draft.rb +85 -0
  369. data/app/workflows/spree/exchanges/approve.rb +5 -22
  370. data/app/workflows/spree/exchanges/cancel.rb +5 -21
  371. data/app/workflows/spree/exchanges/create.rb +6 -0
  372. data/app/workflows/spree/exchanges/fulfill.rb +75 -51
  373. data/app/workflows/spree/exchanges/receive.rb +6 -65
  374. data/app/workflows/spree/fulfillments/cancel.rb +1 -1
  375. data/app/workflows/spree/fulfillments/create.rb +53 -49
  376. data/app/workflows/spree/fulfillments/fulfill.rb +23 -27
  377. data/app/workflows/spree/fulfillments/mark_delivered.rb +1 -1
  378. data/app/workflows/spree/fulfillments/replacements.rb +59 -0
  379. data/app/workflows/spree/gift_cards/apply.rb +2 -2
  380. data/app/workflows/spree/orders/add_item.rb +5 -1
  381. data/app/workflows/spree/orders/cancel.rb +3 -3
  382. data/app/workflows/spree/orders/complete.rb +16 -8
  383. data/app/workflows/spree/payments/capture.rb +20 -5
  384. data/app/workflows/spree/payments/process.rb +5 -3
  385. data/app/workflows/spree/post_sale/approval.rb +35 -0
  386. data/app/workflows/spree/post_sale/cancellation.rb +44 -0
  387. data/app/workflows/spree/post_sale/receipt.rb +92 -0
  388. data/app/workflows/spree/price_lists/update.rb +4 -4
  389. data/app/workflows/spree/products/nested_attributes.rb +1 -1
  390. data/app/workflows/spree/purchase_orders/cancel.rb +1 -1
  391. data/app/workflows/spree/purchase_orders/close.rb +3 -31
  392. data/app/workflows/spree/purchase_orders/create.rb +3 -1
  393. data/app/workflows/spree/purchase_orders/mark_draft.rb +2 -2
  394. data/app/workflows/spree/purchase_orders/mark_ordered.rb +2 -2
  395. data/app/workflows/spree/purchase_orders/receive.rb +1 -1
  396. data/app/workflows/spree/purchase_orders/update.rb +5 -34
  397. data/app/workflows/spree/receivables/closing_short.rb +46 -0
  398. data/app/workflows/spree/receivables/draft_editing.rb +48 -0
  399. data/app/workflows/spree/refunds/create.rb +5 -2
  400. data/app/workflows/spree/refunds/order_payments.rb +14 -2
  401. data/app/workflows/spree/refunds/tax_credit.rb +67 -0
  402. data/app/workflows/spree/returns/approve.rb +5 -22
  403. data/app/workflows/spree/returns/cancel.rb +5 -22
  404. data/app/workflows/spree/returns/create.rb +8 -0
  405. data/app/workflows/spree/returns/receive.rb +5 -76
  406. data/app/workflows/spree/returns/refund.rb +31 -8
  407. data/app/workflows/spree/seller_requirement_submissions/create.rb +1 -2
  408. data/app/workflows/spree/seller_transfers/reverse.rb +28 -1
  409. data/app/workflows/spree/shipping_labels/purchase.rb +8 -8
  410. data/app/workflows/spree/shipping_labels/record.rb +7 -7
  411. data/app/workflows/spree/shipping_labels/refund.rb +2 -2
  412. data/app/workflows/spree/stock_receipts/recording.rb +4 -4
  413. data/app/workflows/spree/stock_transfers/cancel.rb +2 -2
  414. data/app/workflows/spree/stock_transfers/close.rb +3 -30
  415. data/app/workflows/spree/stock_transfers/create.rb +3 -1
  416. data/app/workflows/spree/stock_transfers/mark_draft.rb +1 -1
  417. data/app/workflows/spree/stock_transfers/mark_in_transit.rb +3 -3
  418. data/app/workflows/spree/stock_transfers/mark_ready.rb +2 -2
  419. data/app/workflows/spree/stock_transfers/receive.rb +1 -1
  420. data/app/workflows/spree/stock_transfers/update.rb +5 -33
  421. data/config/currency_exponents.json +180 -0
  422. data/config/i18n-tasks.yml +32 -18
  423. data/config/initializers/alba.rb +7 -0
  424. data/config/language_names.csv +264 -0
  425. data/config/locales/ar.yml +811 -0
  426. data/config/locales/be.yml +855 -0
  427. data/config/locales/bg.yml +723 -0
  428. data/config/locales/ca.yml +689 -0
  429. data/config/locales/content_locales.rb +9 -0
  430. data/config/locales/cs.yml +855 -0
  431. data/config/locales/da.yml +771 -0
  432. data/config/locales/de-CH.yml +248 -0
  433. data/config/locales/de.yml +835 -0
  434. data/config/locales/el.yml +769 -0
  435. data/config/locales/en.yml +47 -505
  436. data/config/locales/es-CL.yml +301 -0
  437. data/config/locales/es-EC.yml +186 -0
  438. data/config/locales/es-MX.yml +334 -0
  439. data/config/locales/es.yml +831 -0
  440. data/config/locales/et.yml +644 -0
  441. data/config/locales/fa.yml +709 -0
  442. data/config/locales/fi.yml +771 -0
  443. data/config/locales/fr.yml +830 -0
  444. data/config/locales/hu.yml +751 -0
  445. data/config/locales/id.yml +756 -0
  446. data/config/locales/it.yml +833 -0
  447. data/config/locales/ja.yml +726 -0
  448. data/config/locales/km.yml +759 -0
  449. data/config/locales/ko.yml +575 -0
  450. data/config/locales/ku.yml +753 -0
  451. data/config/locales/lt.yml +821 -0
  452. data/config/locales/lv.yml +685 -0
  453. data/config/locales/nb.yml +824 -0
  454. data/config/locales/ne.yml +823 -0
  455. data/config/locales/nl.yml +826 -0
  456. data/config/locales/pl.yml +835 -0
  457. data/config/locales/pt-BR.yml +547 -0
  458. data/config/locales/pt.yml +636 -0
  459. data/config/locales/ro.yml +750 -0
  460. data/config/locales/ru.yml +834 -0
  461. data/config/locales/sk.yml +680 -0
  462. data/config/locales/sl-SI.yml +600 -0
  463. data/config/locales/sv.yml +827 -0
  464. data/config/locales/th.yml +745 -0
  465. data/config/locales/tr.yml +777 -0
  466. data/config/locales/uk.yml +836 -0
  467. data/config/locales/vi.yml +768 -0
  468. data/config/locales/zh-CN.yml +786 -0
  469. data/config/locales/zh-TW.yml +834 -0
  470. data/db/migrate/20260925000001_add_replacement_to_spree_fulfillment_items.rb +5 -0
  471. data/db/migrate/20261001000001_add_post_sale_tax.rb +30 -0
  472. data/db/migrate/20261001000001_convert_preferences_to_json.rb +166 -0
  473. data/db/migrate/20261001000001_create_spree_email_templates.rb +52 -0
  474. data/db/migrate/20261009000001_change_money_columns_to_decimal_19_4.rb +116 -0
  475. data/db/migrate/20261010000001_add_store_id_to_active_storage_blobs.rb +12 -0
  476. data/lib/generators/spree/dummy/dummy_generator.rb +0 -9
  477. data/lib/generators/spree/dummy/templates/rails/test.rb +26 -0
  478. data/lib/spree/checkout/default_requirements.rb +37 -13
  479. data/lib/spree/core/configuration.rb +19 -1
  480. data/lib/spree/core/controller_helpers/store.rb +1 -1
  481. data/lib/spree/core/dependencies.rb +5 -4
  482. data/lib/spree/core/emails/escaped_output.rb +60 -0
  483. data/lib/spree/core/engine.rb +72 -165
  484. data/lib/spree/core/permissions/default_catalog.rb +5 -0
  485. data/lib/spree/core/preferences/invalid_preferences.rb +18 -0
  486. data/lib/spree/core/preferences/json_conversion.rb +186 -0
  487. data/lib/spree/core/preferences/masking.rb +55 -2
  488. data/lib/spree/core/preferences/preferable.rb +343 -103
  489. data/lib/spree/core/preferences/preferable_class_methods.rb +188 -136
  490. data/lib/spree/core/previews/import_preview.rb +10 -0
  491. data/lib/spree/core/ransack_configuration.rb +13 -2
  492. data/lib/spree/core/tax/provider_error.rb +37 -0
  493. data/lib/spree/core/version.rb +1 -1
  494. data/lib/spree/core.rb +91 -373
  495. data/lib/spree/emails/editable_templates.rb +82 -0
  496. data/lib/spree/events/catalog.rb +189 -0
  497. data/lib/spree/events.rb +21 -1
  498. data/lib/spree/hooks.rb +0 -17
  499. data/lib/spree/i18n.rb +32 -15
  500. data/lib/spree/iso_data.rb +7 -0
  501. data/lib/spree/localized_number.rb +6 -0
  502. data/lib/spree/migrations.rb +4 -1
  503. data/lib/spree/money.rb +196 -15
  504. data/lib/spree/reporting/adapters/base.rb +7 -6
  505. data/lib/spree/reporting/adapters/live.rb +6 -6
  506. data/lib/spree/reporting/default_vocabulary.rb +22 -10
  507. data/lib/spree/reporting/hydration.rb +1 -1
  508. data/lib/spree/reporting/query.rb +8 -0
  509. data/lib/spree/reporting/registry.rb +13 -0
  510. data/lib/spree/reporting/schema.rb +10 -10
  511. data/lib/spree/testing_support/editable_email_templates.rb +61 -0
  512. data/lib/spree/testing_support/emails.rb +22 -0
  513. data/lib/spree/testing_support/factories/cart_factory.rb +1 -1
  514. data/lib/spree/testing_support/factories/email_template_factory.rb +28 -0
  515. data/lib/spree/testing_support/factories/order_factory.rb +2 -2
  516. data/lib/spree/testing_support/factories/product_factory.rb +9 -0
  517. data/lib/spree/testing_support/factories/refund_factory.rb +1 -1
  518. data/lib/spree/testing_support/factories/stock_factory.rb +1 -1
  519. data/lib/spree/testing_support/factories/variant_factory.rb +1 -1
  520. data/lib/spree/testing_support/i18n.rb +3 -94
  521. data/lib/spree/testing_support/lifecycle_events.rb +1 -1
  522. data/lib/spree/testing_support/order_walkthrough.rb +1 -1
  523. data/lib/spree/testing_support/preferences.rb +0 -5
  524. data/lib/spree/testing_support/store.rb +9 -1
  525. data/lib/spree/upgrades/5_6_to_6_0/manifest.yml +67 -1
  526. data/lib/spree/uploads.rb +101 -0
  527. data/lib/tasks/categories_and_collections.rake +3 -3
  528. data/lib/tasks/core.rake +6 -4
  529. data/lib/tasks/markets.rake +2 -1
  530. data/lib/tasks/media.rake +3 -3
  531. data/lib/tasks/migrate_users_to_customers.rake +23 -18
  532. data/lib/tasks/money.rake +46 -0
  533. data/lib/tasks/package_types.rake +1 -1
  534. data/lib/tasks/preferences_json.rake +101 -0
  535. data/lib/tasks/seller_sample_data.rake +2 -2
  536. data/lib/tasks/store_settings.rake +13 -6
  537. data/lib/tasks/typed_adjustments_migration.rake +1 -1
  538. data/lib/tasks/uploads.rake +19 -0
  539. data/spec/fixtures/mailer_views/custom_views_probe_mailer/welcome_email.html.erb +4 -0
  540. metadata +219 -46
  541. data/app/jobs/spree/products/touch_categories_job.rb +0 -15
  542. data/app/jobs/spree/products/touch_taxons_job.rb +0 -13
  543. data/app/models/acts_as_taggable_on/tag_decorator.rb +0 -10
  544. data/app/models/concerns/spree/has_image_alt_text.rb +0 -18
  545. data/app/models/spree/base_analytics_event_handler.rb +0 -54
  546. data/app/models/spree/invitations/store.rb +0 -6
  547. data/app/models/spree/preference.rb +0 -14
  548. data/app/models/spree/promotion_handler/page.rb +0 -25
  549. data/app/models/spree/promotion_handler/promotion_duplicator.rb +0 -60
  550. data/app/models/spree/stock/differentiator.rb +0 -45
  551. data/app/presenters/spree/filters/options_presenter.rb +0 -47
  552. data/app/services/spree/carts/empty.rb +0 -42
  553. data/app/services/spree/country_to_timezone.rb +0 -273
  554. data/app/services/spree/payments/create.rb +0 -92
  555. data/app/validators/spree/url_validator.rb +0 -23
  556. data/app/views/active_storage/blobs/_blob.html.erb +0 -14
  557. data/app/views/spree/admin_user_mailer/password_reset_email.html.erb +0 -8
  558. data/app/views/spree/export_mailer/export_done.html.erb +0 -7
  559. data/app/views/spree/import_mailer/import_done.html.erb +0 -12
  560. data/app/views/spree/invitation_mailer/invitation_accepted.html.erb +0 -4
  561. data/app/views/spree/invitation_mailer/invitation_email.html.erb +0 -12
  562. data/app/views/spree/seller_user_mailer/password_reset_email.html.erb +0 -8
  563. data/app/views/spree/shared/_base_mailer_footer.html.erb +0 -19
  564. data/app/views/spree/shared/_base_mailer_header.html.erb +0 -8
  565. data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +0 -399
  566. data/app/views/spree/shared/_mailer_logo.html.erb +0 -41
  567. data/app/views/spree/shared/_purchased_items_styles.html.erb +0 -119
  568. data/app/views/spree/webhook_mailer/endpoint_disabled.html.erb +0 -51
  569. data/app/views/spree/webhook_mailer/endpoint_disabled.text.erb +0 -10
  570. data/app/workflows/spree/fulfillments/purchase_label.rb +0 -40
  571. data/app/workflows/spree/returns/purchase_label.rb +0 -32
  572. data/lib/spree/analytics.rb +0 -11
  573. data/lib/spree/core/preferences/scoped_store.rb +0 -34
  574. data/lib/spree/core/preferences/store.rb +0 -105
  575. data/lib/spree/translation_migrations.rb +0 -52
@@ -0,0 +1,680 @@
1
+ ---
2
+ sk:
3
+ activemodel:
4
+ errors:
5
+ messages:
6
+ blank: nemôže byť prázdne
7
+ activerecord:
8
+ attributes:
9
+ spree/address:
10
+ address1: Adresa
11
+ address2: Adresa (pokr.)
12
+ city: Mesto
13
+ company: Spoločnosť
14
+ country: Štát
15
+ label: Názov adresy
16
+ phone: Telefón
17
+ state: Kraj
18
+ spree/country:
19
+ iso: ISO
20
+ iso3: ISO3
21
+ iso_name: Názov ISO
22
+ name: Názov
23
+ numcode: ISO kód štátu
24
+ spree/credit_card:
25
+ cc_type: Typ
26
+ month: Mesiac
27
+ name: Meno
28
+ number: Číslo
29
+ verification_value: Overovací kód
30
+ year: Rok
31
+ spree/customer_group:
32
+ description: Popis
33
+ name: Názov
34
+ spree/gift_card:
35
+ amount_used: Použitá suma
36
+ expires_at: Platnosť do
37
+ spree/import:
38
+ preferred_delimiter: Oddeľovač
39
+ spree/import_mapping:
40
+ file_column: Stĺpec súboru
41
+ schema_field: Pole schémy
42
+ spree/import_row:
43
+ row_number: Číslo
44
+ spree/invitation:
45
+ inviter: Pozývajúci
46
+ spree/line_item:
47
+ price: Cena
48
+ quantity: Množstvo
49
+ spree/option_type:
50
+ filterable: Filtrovateľné
51
+ kind: Druh
52
+ name: Názov
53
+ spree/option_value:
54
+ color_code: Kód farby
55
+ image: Obrázok vzorky
56
+ spree/order:
57
+ checkout_complete: Dokončiť objednávku
58
+ completed_at: Dokončené
59
+ coupon_code: Kód kupónu
60
+ created_at: Dátum objednania
61
+ email: Email zákazníka
62
+ internal_note: Interná poznámka
63
+ ip_address: IP adresa
64
+ item_count: Položky
65
+ number: Počet
66
+ payment_state: Stav platby
67
+ shipment_state: Stav doručenia
68
+ special_instructions: Zvláštne pokyny
69
+ total: Celkom
70
+ spree/order/bill_address:
71
+ address1: Účtovná adresa - Ulica a č.d.
72
+ city: Účtovná adresa - Mesto/Obec
73
+ phone: Účtovná adresa - Telefón
74
+ state: Účtovná adresa - Kraj
75
+ spree/order/ship_address:
76
+ address1: Doručovacia adresa - Ulica a č.d.
77
+ city: Doručovacia adresa - Mesto/Obec
78
+ phone: Doručovacia adresa - Telefón
79
+ state: Doručovacia adresa - Kraj
80
+ spree/payment:
81
+ amount: Suma
82
+ number: Číslo
83
+ spree/payment_method:
84
+ name: Názov
85
+ spree/policy:
86
+ body: Obsah
87
+ owner: Zásady pre
88
+ spree/price_list:
89
+ description: Popis
90
+ ends_at: Končí
91
+ match_policy: Pravidlo zhody
92
+ name: Názov
93
+ priority: Priorita
94
+ starts_at: Začína
95
+ status: Stav
96
+ spree/price_rule:
97
+ priority: Priorita
98
+ type: Typ
99
+ spree/product:
100
+ description: Popis
101
+ discontinue_on: Ukončiť dňa
102
+ less_than: Menej ako
103
+ make_active_at: Aktivovať dňa
104
+ more_than: Viac ako
105
+ name: Názov
106
+ spree/promotion:
107
+ code: Kód
108
+ description: Popis
109
+ generate_code: Vygenerovať zľavový kód
110
+ name: Názov
111
+ path: Cesta
112
+ promotion_category: Kategória akcie
113
+ spree/promotion_category:
114
+ code: Kód
115
+ name: Názov
116
+ spree/property:
117
+ name: Názov
118
+ spree/role:
119
+ name: Názov
120
+ spree/shipment:
121
+ number: Číslo
122
+ spree/state:
123
+ abbr: Skratka
124
+ name: Názov
125
+ spree/store:
126
+ address: Adresa
127
+ contact_phone: Kontaktný telefón
128
+ name: Názov
129
+ preferred_digital_asset_authorized_clicks: Limit počtu stiahnutí
130
+ preferred_digital_asset_authorized_days: Limit počtu dní na stiahnutie
131
+ preferred_limit_digital_download_count: Obmedziť počet stiahnutí digitálnych odkazov
132
+ preferred_limit_digital_download_days: Obmedziť počet dní na stiahnutie digitálnych odkazov
133
+ seo_robots: SEO roboty
134
+ storefront_custom_code_body_end: Vlastný kód pred uzatváracou značkou body
135
+ storefront_custom_code_body_start: Vlastný kód po otváracej značke body
136
+ storefront_custom_code_head: Vlastný kód v hlavičke stránky
137
+ spree/store_credit:
138
+ amount_used: Použitá suma
139
+ spree/tax_category:
140
+ description: Popis
141
+ name: Názov
142
+ spree/tax_rate:
143
+ amount: Suma
144
+ included_in_price: Zahrnutá v cene
145
+ spree/taxon:
146
+ name: Názov
147
+ permalink: Permalink
148
+ position: Umiestnenie
149
+ sort_order: Poradie zoradenia
150
+ spree/taxonomy:
151
+ name: Názov
152
+ spree/user:
153
+ avatar: Avatar
154
+ email: E-mail
155
+ password: Heslo
156
+ password_confirmation: Potvrdenie hesla
157
+ spree/variant:
158
+ depth: Hĺbka
159
+ height: Výška
160
+ price: Cena
161
+ sku: SKU
162
+ weight: Hmotnosť
163
+ width: Šírka
164
+ spree/zone:
165
+ description: Popis
166
+ name: Názov
167
+ user:
168
+ current_sign_in: Aktuálne prihlásenie
169
+ last_sign_in: Posledné prihlásenie
170
+ sign_in_count: Počet prihlásení
171
+ errors:
172
+ messages:
173
+ blank: nemôže byť prázdne
174
+ models:
175
+ spree/allowed_origin:
176
+ attributes:
177
+ origin:
178
+ must_be_origin_only: musí byť pôvod (schéma a hostiteľ) bez cesty, dopytu alebo fragmentu
179
+ spree/gift_card:
180
+ attributes:
181
+ base:
182
+ cannot_destroy_used_gift_card: Nie je možné odstrániť použitú darčekovú kartu
183
+ spree/import:
184
+ attributes:
185
+ attachment:
186
+ content_type: má nepovolený typ obsahu
187
+ type:
188
+ inclusion: nie je uvedený v zozname povolených typov
189
+ spree/market:
190
+ attributes:
191
+ base:
192
+ cannot_destroy_default_market: Predvolený trh nie je možné odstrániť.
193
+ cannot_destroy_last_market: Jediný trh nie je možné odstrániť.
194
+ spree/market_country:
195
+ attributes:
196
+ country:
197
+ already_in_market: je už priradená inému trhu v tomto obchode
198
+ not_in_shipping_zone: nie je pokrytá žiadnou dopravnou zónou. Najprv nastavte dopravnú zónu.
199
+ spree/payment:
200
+ attributes:
201
+ amount:
202
+ greater_than_max_amount: je vyššia ako povolená maximálna suma %{max_amount}
203
+ spree/price_list:
204
+ attributes:
205
+ ends_at:
206
+ must_be_after_starts_at: musí byť po dátume začiatku
207
+ spree/product:
208
+ attributes:
209
+ base:
210
+ cannot_destroy_if_attached_to_line_items: Nie je možné odstrániť produkty, ktoré sú pridané k zadaným objednávkam. V takom prípade ich prosím ukončite.
211
+ discontinue_on:
212
+ invalid_date_range: musí byť neskôr ako dátum dostupnosti
213
+ spree/product_publication:
214
+ attributes:
215
+ unpublished_at:
216
+ must_be_after_published_at: musí byť po dátume publikovania
217
+ spree/promotion:
218
+ attributes:
219
+ expires_at:
220
+ invalid_date_range: musí byť neskôr ako dátum začiatku
221
+ spree/store:
222
+ attributes:
223
+ base:
224
+ cannot_destroy_only_store: Jediný obchod nie je možné odstrániť.
225
+ spree/store_credit:
226
+ attributes:
227
+ amount_authorized:
228
+ exceeds_total_credits: Prekračuje celkový kredit.
229
+ amount_used:
230
+ cannot_be_greater_than_amount: Nemôže byť vyššia ako suma.
231
+ greater_than_zero_restrict_delete: je väčšia ako nula. Kredit obchodu nie je možné odstrániť.
232
+ spree/user:
233
+ attributes:
234
+ bill_address_id:
235
+ belongs_to_other_user: patrí inému používateľovi
236
+ deprecated_in_completed_order: je zastaraná v dokončenej objednávke
237
+ ship_address_id:
238
+ belongs_to_other_user: patrí inému používateľovi
239
+ deprecated_in_completed_order: je zastaraná v dokončenej objednávke
240
+ spree/variant:
241
+ attributes:
242
+ base:
243
+ cannot_destroy_if_attached_to_line_items: Nie je možné odstrániť varianty, ktoré sú pridané k zadaným objednávkam. V takom prípade ich prosím ukončite.
244
+ spree/webhook_endpoint:
245
+ attributes:
246
+ url:
247
+ internal_address_not_allowed: nesmie smerovať na internú alebo súkromnú sieťovú adresu
248
+ models:
249
+ spree/address:
250
+ few: Adresy
251
+ one: Adresa
252
+ other: Adries
253
+ spree/classification:
254
+ one: Klasifikácia
255
+ other: Klasifikácie
256
+ spree/country:
257
+ few: Štáty
258
+ one: Štát
259
+ other: Štátov
260
+ spree/credit_card:
261
+ few: Kreditné karty
262
+ one: Kreditná karta
263
+ other: Kreditných kariet
264
+ spree/customer_group:
265
+ one: Skupina zákazníkov
266
+ other: Skupiny zákazníkov
267
+ spree/customer_group_user:
268
+ one: Používateľ skupiny zákazníkov
269
+ other: Používatelia skupiny zákazníkov
270
+ spree/export:
271
+ one: Export
272
+ other: Exporty
273
+ spree/integration:
274
+ one: Integrácia
275
+ other: Integrácie
276
+ spree/inventory_unit:
277
+ few: Skladové jednotky
278
+ one: Skladová jednotka
279
+ other: Skladových jednotiek
280
+ spree/line_item:
281
+ few: Riadkové položky
282
+ one: Riadková položka
283
+ other: Riadkových položiek
284
+ spree/option_type:
285
+ one: Typ možnosti
286
+ other: Typy možností
287
+ spree/option_value:
288
+ one: Hodnota možnosti
289
+ other: Hodnoty možností
290
+ spree/order:
291
+ few: Objednávky
292
+ one: Objednávka
293
+ other: Objednávok
294
+ spree/payment:
295
+ few: Platby
296
+ one: Platba
297
+ other: Platieb
298
+ spree/payment_method:
299
+ one: Spôsob platby
300
+ other: Spôsoby platby
301
+ spree/price:
302
+ one: Cena
303
+ other: Ceny
304
+ spree/price_list:
305
+ one: Cenník
306
+ other: Cenníky
307
+ spree/price_rule:
308
+ one: Cenové pravidlo
309
+ other: Cenové pravidlá
310
+ spree/product:
311
+ few: Produkty
312
+ one: Produkt
313
+ other: Produktov
314
+ spree/promotion:
315
+ one: Akcia
316
+ other: Akcie
317
+ spree/promotion_category:
318
+ one: Kategória akcie
319
+ other: Kategórie akcií
320
+ spree/property:
321
+ one: Vlastnosť
322
+ other: Vlastnosti
323
+ spree/refund_reason:
324
+ one: Dôvod vrátenia peňazí
325
+ other: Dôvody vrátenia peňazí
326
+ spree/shipment:
327
+ few: Doručenia
328
+ one: Doručenie
329
+ other: Doručení
330
+ spree/shipping_method:
331
+ few: Spôsoby doručenia
332
+ one: Spôsob doručenia
333
+ other: Spôsobov doručenia
334
+ spree/state:
335
+ few: Kraje
336
+ one: Kraj
337
+ other: Krajov
338
+ spree/stock_location:
339
+ one: Sklad
340
+ other: Sklady
341
+ spree/stock_movement:
342
+ one: Skladový pohyb
343
+ other: Skladové pohyby
344
+ spree/stock_transfer:
345
+ one: Skladový prevod
346
+ other: Skladové prevody
347
+ spree/store:
348
+ one: Obchod
349
+ other: Obchody
350
+ spree/store_credit:
351
+ one: Kredit obchodu
352
+ other: Kredity obchodu
353
+ spree/tax_category:
354
+ one: Daňová kategória
355
+ other: Daňové kategórie
356
+ spree/tax_rate:
357
+ few: Sadzby dane
358
+ one: Sadzba dane
359
+ other: Sadzieb dane
360
+ spree/taxon:
361
+ one: Kategória
362
+ other: Kategórie
363
+ spree/taxonomy:
364
+ few: Taxonómie
365
+ one: Taxonómia
366
+ other: Taxonómií
367
+ spree/user:
368
+ few: Používatelia
369
+ one: Používateľ
370
+ other: Používateľov
371
+ spree/variant:
372
+ one: Variant
373
+ other: Varianty
374
+ spree/zone:
375
+ few: Zóny
376
+ one: Zóna
377
+ other: Zón
378
+ errors:
379
+ messages:
380
+ not_saved:
381
+ one: '1 chyba zabránila uloženiu tohto %{resource}:'
382
+ other: "%{count} chýb zabránilo uloženiu tohto %{resource}:"
383
+ number:
384
+ percentage:
385
+ format:
386
+ precision: 1
387
+ spree:
388
+ accepts_email_marketing: Súhlasí s e-mailovým marketingom
389
+ account: Účet
390
+ active: Aktívny
391
+ address: Adresa
392
+ address1: Adresa
393
+ address2: Adresa (pokr.)
394
+ adjustment: Úprava
395
+ adjustment_labels:
396
+ tax_rates:
397
+ excluding_tax: "%{name}%{amount}"
398
+ including_tax: "%{name}%{amount} (zahrnuté v cene)"
399
+ adjustments_deleted: Úpravy odstránené
400
+ all: Všetky
401
+ amount: Suma
402
+ api_key_no_current_key: Túto požiadavku neautentifikoval žiadny API kľúč
403
+ api_key_scopes_immutable: nie je možné zmeniť po vytvorení kľúča; vytvorte nový kľúč s potrebnými rozsahmi a tento zrušte
404
+ approver: Schválil
405
+ availability: dostupnosť
406
+ bill_address: Účtovanie na adresu
407
+ billing_address: Účtovná adresa
408
+ calculator: Kalkulačka
409
+ canceled: Zrušené
410
+ canceler: Zrušil
411
+ cannot_be_destroyed: Objednávku nie je možné odstrániť.
412
+ capture: zachytiť
413
+ cart: Košík
414
+ cart_already_updated: Košík už bol aktualizovaný.
415
+ cart_line_item:
416
+ delivery_unavailable: Položku %{li_name} nie je možné doručiť na vybranú adresu
417
+ discontinued: "%{li_name} bol odstránený, pretože bol ukončený"
418
+ out_of_stock: "%{li_name} bol odstránený, pretože bol vypredaný"
419
+ categories: Kategórie
420
+ category: Kategória
421
+ channel: Predajný kanál
422
+ channels: Predajné kanály
423
+ checkout: Platba
424
+ checkout_requirements:
425
+ email_required: E-mailová adresa je povinná
426
+ line_items_required: Pridajte do košíka aspoň jednu položku
427
+ payment_required: Pridajte spôsob platby
428
+ ship_address_required: Dodacia adresa je povinná
429
+ city: Mesto/Obec
430
+ color_code: Kód farby
431
+ company: Spoločnosť
432
+ compare_at_amount: Porovnávacia suma
433
+ compare_at_price: Porovnávacia cena
434
+ complete: celkom
435
+ confirm: Potvrdiť
436
+ cost_price: Suma nákladov
437
+ country: Štát
438
+ coupon_code_used: Zadaný zľavový kód už bol použitý. Skúste to znova.
439
+ created_at: Vytvorené
440
+ credit_card: Kreditná karta
441
+ currency: Mena
442
+ currency_not_supported_by_store: nie je podporovaná týmto obchodom
443
+ customer: Zákazník
444
+ customers: Zákazníci
445
+ default_stock_location_name: Miesto obchodu
446
+ default_wishlist_name: Zoznam želaní
447
+ delivery: Doručenie
448
+ depth: Hĺbka
449
+ description: Popis
450
+ destination: Miesto doručenia
451
+ destroy: Zrušiť
452
+ details: podrobnosti
453
+ digital:
454
+ digital_delivery: Digitálne doručenie
455
+ digital_assets: Digitálne súbory
456
+ discontinued: Ukončené
457
+ discontinued_variants_present: Niektoré položky v tejto objednávke obsahujú produkty, ktoré už nie sú dostupné.
458
+ display_delivery_range: Doručenie do %{delivery_range} pracovných dní
459
+ draft: Koncept
460
+ eligibility_errors:
461
+ messages:
462
+ no_matching_channel: Tento zľavový kód nie je platný pre tento predajný kanál.
463
+ no_matching_market: Tento zľavový kód nie je platný vo vašom trhu.
464
+ wrong_country: Tento zľavový kód nie je platný vo vašej krajine
465
+ email: Email
466
+ error: chyba
467
+ error_user_destroy_with_orders: Používateľa spojeného s objednávkami nie je možné odstrániť
468
+ error_user_does_not_have_any_store_credits: Používateľ nemá k dispozícii žiadne kredity obchodu
469
+ errors:
470
+ messages:
471
+ cannot_delete_default_channel: Predvolený kanál nie je možné odstrániť. Najprv nastavte iný kanál ako predvolený.
472
+ channel_store_mismatch: musí patriť do rovnakého obchodu
473
+ invalid_order_routing_rule: nie je registrované pravidlo smerovania objednávok
474
+ invalid_order_routing_strategy: nie je registrovaná stratégia smerovania objednávok
475
+ store_association_can_not_be_changed: Priradenie obchodu nie je možné zmeniť
476
+ store_is_already_set: Obchod je už nastavený
477
+ expired: Vypršané
478
+ export_mailer:
479
+ export_done:
480
+ message: Dobrá práca, váš export je pripravený! Na stiahnutie použite odkaz nižšie.
481
+ subject: Váš export %{export_number} bol úspešne spracovaný!
482
+ greeting: Ahoj %{user_name},
483
+ field: Pole
484
+ first_name: Krstné meno
485
+ flat_percent: Pevné percento
486
+ flat_rate_per_order: Pevná sadzba (za objednávku)
487
+ flexible_rate: Pružná sadzba
488
+ free: Zadarmo
489
+ gateway: Platobná brána
490
+ gateway_error: Chyba brány
491
+ gift_card: Darčeková karta
492
+ gift_card_already_redeemed: Darčeková karta už bola uplatnená.
493
+ gift_card_applied: Darčeková karta bola úspešne použitá na vašu objednávku!
494
+ gift_card_customer_not_logged_in: Darčekovú kartu nie je možné použiť ako hosť.
495
+ gift_card_expired: Darčeková karta vypršala.
496
+ gift_card_mismatched_currency: Darčekovú kartu nie je možné použiť s aktuálnou menou.
497
+ gift_card_mismatched_customer: Táto darčeková karta je spojená s iným používateľom.
498
+ gift_card_not_found: Darčeková karta nebola nájdená.
499
+ gift_card_removed: Darčeková karta bola úspešne odstránená z vašej objednávky
500
+ gift_card_using_store_credit_error: Darčekovú kartu nie je možné použiť po použití kreditu obchodu.
501
+ height: Výška
502
+ i18n:
503
+ this_file_language: Slovenčina (SK)
504
+ idempotency_key_reused: Tento kľúč Idempotency-Key už bol použitý s inými parametrami požiadavky.
505
+ image: Obrázok
506
+ import: Import
507
+ in_stock: Na sklade
508
+ inactive: Neaktívny
509
+ internal_note: Interná poznámka
510
+ inventory: Sklad
511
+ invitation_mailer:
512
+ greeting: Ahoj %{user_name},
513
+ invitation_accepted:
514
+ body: "%{invitee_name} prijal vašu pozvánku pripojiť sa k %{resource_name}"
515
+ subject: "%{invitee_name} prijal vašu pozvánku pripojiť sa k %{resource_name}"
516
+ invitation_email:
517
+ body: "%{inviter_name} vás pozval pripojiť sa k %{resource_name}"
518
+ link_description: 'Ak chcete prijať túto pozvánku, kliknite na odkaz nižšie:'
519
+ subject: Pozvánka pripojiť sa k %{resource_name}
520
+ iso: ISO Alpha-2
521
+ item: Položka
522
+ key: Kľúč
523
+ kind: Druh
524
+ label: Štítok
525
+ last_name: Priezvisko
526
+ line_item: Položka objednávky
527
+ line_items: Položky objednávky
528
+ link: Odkaz
529
+ locale: Jazyk
530
+ locale_not_supported_by_store: nie je podporovaný týmto obchodom
531
+ manual: Manuálne
532
+ market: Trh
533
+ me_no_current_user: Túto požiadavku neautentifikoval žiadny administrátor
534
+ media: Médiá
535
+ meta_description: Meta-popis
536
+ meta_keywords: Meta-kľúčové slová
537
+ metadata: Metaúdaje
538
+ min_quantity: Minimálne množstvo
539
+ month: Mesiac
540
+ name: Meno
541
+ new_variant: Nový variant
542
+ no_cc_type: N/A
543
+ none: Žiadny
544
+ number: Číslo
545
+ on_hand: Na sklade
546
+ only_active_products_can_be_added_to_cart: Koncepty a archivované produkty nie je možné pridať do košíka, najprv produkt označte ako aktívny.
547
+ option_name: Názov možnosti
548
+ option_value: Option Value
549
+ options: Voľby
550
+ or: alebo
551
+ order: Objednávka
552
+ order_routing:
553
+ strategies:
554
+ legacy: Staršie
555
+ rules: Pravidlá (zoradené)
556
+ order_summary: Sumár objednávky
557
+ orders: Objednávky
558
+ out_of_stock: Nie je na sklade
559
+ password: Heslo
560
+ path: Cesta
561
+ payment: Platba
562
+ payment_source: Zdroj platby
563
+ phone: Telefón
564
+ price: Cena
565
+ price_range: Cenové rozpätie
566
+ price_rules:
567
+ channel_rule:
568
+ description: Použiť ceny na základe predajného kanála
569
+ customer_group_rule:
570
+ description: Uplatniť ceny na konkrétne skupiny zákazníkov
571
+ prices: Ceny
572
+ privacy_policy: Zásady ochrany osobných údajov
573
+ processing: Spracúva sa
574
+ product_translations: Preklady produktov
575
+ products_cannot_be_shipped: Momentálne nemôžeme doručiť %{product_names} na vašu aktuálnu adresu. Zmeňte prosím svoju dodaciu adresu alebo odstráňte %{product_names} z košíka.
576
+ promotion_already_used: Nie je možné odstrániť akciu, ktorá už bola použitá
577
+ promotion_label: Akcia (%{name})
578
+ promotion_rule_types:
579
+ category:
580
+ description: Objednávka obsahuje produkty v určených kategóriách
581
+ name: Kategórie
582
+ channel:
583
+ description: Obmedziť na objednávky uskutočnené cez určené kanály
584
+ name: Kanály
585
+ country:
586
+ description: Obmedziť na objednávky s dodacou adresou v konkrétnej krajine
587
+ name: Krajina
588
+ currency:
589
+ description: Obmedziť na objednávky v konkrétnej mene
590
+ name: Mena
591
+ customer:
592
+ description: Dostupné iba pre určených zákazníkov
593
+ name: Zákazníci
594
+ customer_group:
595
+ description: Dostupné iba pre zákazníkov v určených skupinách zákazníkov
596
+ name: Skupina(-y) zákazníkov
597
+ customer_logged_in:
598
+ description: Dostupné iba pre prihlásených zákazníkov
599
+ name: Iba prihlásení zákazníci
600
+ market:
601
+ description: Obmedziť na objednávky uskutočnené v určených trhoch
602
+ name: Trhy
603
+ query: Dopyt
604
+ refund_amount: Suma vrátenia
605
+ registration: Registrácia
606
+ remove: Odstráň
607
+ remove_gift_card_on_completed_order_error: Po zadaní objednávky nie je možné odstrániť darčekovú kartu
608
+ resellable: Opätovne predajné
609
+ resend: Pošli opäť
610
+ response_code: Kód odpovede
611
+ return: vrátiť sa
612
+ returned: Vrátené
613
+ returns_policy: Zásady vrátenia tovaru
614
+ row: Riadok
615
+ scope: Scope
616
+ selected_quantity_not_available: vybrané z %{item} nie je dostupné.
617
+ ship: zašli
618
+ ship_address: Adresa zásielky
619
+ shipment: Zásielka
620
+ shipped: Zaslané
621
+ shipping: Doručenie
622
+ shipping_address: Adresa doručenia
623
+ shipping_policy: Zásady dopravy
624
+ shipping_rates:
625
+ display_price:
626
+ excluding_tax: "%{price} (+ %{tax_amount} %{tax_rate_name})"
627
+ including_tax: "%{price} (vrát. %{tax_amount} %{tax_rate_name})"
628
+ status: Stavy
629
+ stock_transfer:
630
+ errors:
631
+ must_have_variant: Musíte pridať aspoň jeden variant
632
+ same_location: nemôže byť rovnaký ako cieľový sklad
633
+ variants_unavailable: Niektoré varianty nie sú dostupné v %{stock}
634
+ store: Obchod
635
+ store_credit:
636
+ allocated: Pridané
637
+ authorized: Autorizované
638
+ captured: Použité
639
+ credit: Kredit
640
+ eligible: Oprávnené
641
+ store_credit_name: Kredit obchodu
642
+ store_credit_payment_method:
643
+ currency_mismatch: Mena kreditu obchodu sa nezhoduje s menou objednávky
644
+ insufficient_authorized_amount: Nie je možné zachytiť viac, ako bola autorizovaná suma
645
+ insufficient_funds: Zostávajúca suma kreditu obchodu nie je dostatočná
646
+ successful_action: Úspešné %{action} kreditu obchodu
647
+ unable_to_credit: 'Nie je možné pripísať kód: %{auth_code}'
648
+ unable_to_find: Kredit obchodu sa nepodarilo nájsť
649
+ unable_to_find_for_action: 'Nepodarilo sa nájsť kredit obchodu pre autorizačný kód: %{auth_code} pre akciu: %{action}'
650
+ unable_to_void: 'Nie je možné zrušiť kód: %{auth_code}'
651
+ tags: Štítky
652
+ tax: Daň
653
+ tax_category: Kategória daní
654
+ terms_of_service: Obchodné podmienky
655
+ total: Celkom
656
+ tracking: Sledovanie
657
+ type: Typ
658
+ updated_at: Aktualizované
659
+ url: URL
660
+ user: Používateľ
661
+ value: Hodnota
662
+ variant: Variant
663
+ variants: Varianty
664
+ verified: Overené
665
+ void: Void
666
+ webhook_mailer:
667
+ endpoint_disabled:
668
+ disabled_at_label: Zakázané dňa
669
+ heading: Webhookový koncový bod zakázaný
670
+ instructions: Skontrolujte prosím URL koncového bodu a službu, potom ho znova povoľte v Nastavenia → Vývojári → Webhooky.
671
+ message: Webhookový koncový bod „%{endpoint_name}“ bol automaticky zakázaný po opakovaných zlyhaniach doručenia.
672
+ name_label: Názov
673
+ reason_label: Dôvod
674
+ subject: 'Webhookový koncový bod zakázaný: %{endpoint_name}'
675
+ url_label: URL
676
+ weight: Váha
677
+ weight_unit: Jednotka hmotnosti
678
+ width: Šírka
679
+ year: Rok
680
+ zip: PSČ