spree_core 6.0.0.beta3 → 6.0.0.rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/app/helpers/spree/images_helper.rb +0 -57
- data/app/jobs/spree/base_job.rb +21 -0
- data/app/jobs/spree/carts/reap_expired_job.rb +2 -2
- data/app/jobs/spree/collections/regenerate_time_based_job.rb +6 -3
- data/app/jobs/spree/orders/finalize_stale_drafts_job.rb +8 -5
- data/app/jobs/spree/payments/cancel_unused_sessions_job.rb +61 -0
- data/app/jobs/spree/seller_payouts/sweep_seller_job.rb +2 -0
- data/app/mailers/spree/admin_user_mailer.rb +4 -19
- data/app/mailers/spree/base_mailer.rb +96 -13
- data/app/mailers/spree/email_template_mailer.rb +27 -0
- data/app/mailers/spree/export_mailer.rb +3 -4
- data/app/mailers/spree/import_mailer.rb +3 -4
- data/app/mailers/spree/invitation_mailer.rb +24 -7
- data/app/mailers/spree/seller_user_mailer.rb +4 -16
- data/app/mailers/spree/webhook_mailer.rb +2 -2
- data/app/models/concerns/spree/acted_by.rb +1 -1
- data/app/models/concerns/spree/admin_user_methods.rb +13 -1
- data/app/models/concerns/spree/api_typed.rb +91 -0
- data/app/models/concerns/spree/calculator/tiers.rb +76 -0
- data/app/models/concerns/spree/customer_methods.rb +15 -14
- data/app/models/concerns/spree/email_template_identity.rb +52 -0
- data/app/models/concerns/spree/parameterizable_name.rb +2 -0
- data/app/models/concerns/spree/payment_session_transitions.rb +8 -2
- data/app/models/concerns/spree/post_sale/taxation.rb +54 -0
- data/app/models/concerns/spree/post_sale/taxed_line.rb +51 -0
- data/app/models/concerns/spree/preference_schema.rb +4 -12
- data/app/models/concerns/spree/product_scopes.rb +11 -1
- data/app/models/concerns/spree/provider_listing.rb +41 -0
- data/app/models/concerns/spree/publishable.rb +82 -14
- data/app/models/concerns/spree/purchase/addresses.rb +23 -10
- data/app/models/concerns/spree/purchase/currency.rb +1 -1
- data/app/models/concerns/spree/purchase/deprecated_aliases.rb +87 -0
- data/app/models/concerns/spree/purchase/gift_cards.rb +10 -4
- data/app/models/concerns/spree/purchase/locale.rb +1 -1
- data/app/models/concerns/spree/purchase/payment_processing.rb +7 -3
- data/app/models/concerns/spree/purchase/purchase_order.rb +2 -2
- data/app/models/concerns/spree/purchase/totals.rb +49 -1
- data/app/models/concerns/spree/receivable.rb +1 -1
- data/app/models/concerns/spree/searchable.rb +0 -4
- data/app/models/concerns/spree/secret_preferences.rb +59 -0
- data/app/models/concerns/spree/single_store_resource.rb +1 -1
- data/app/models/concerns/spree/stores/email_branding.rb +31 -0
- data/app/models/concerns/spree/type_labels.rb +38 -0
- data/app/models/concerns/spree/typed_adjustment_line.rb +1 -1
- data/app/models/concerns/spree/typed_associations.rb +6 -0
- data/app/models/spree/address.rb +11 -1
- data/app/models/spree/adjusters/promotion.rb +1 -15
- data/app/models/spree/allowed_origin.rb +0 -1
- data/app/models/spree/api_key.rb +5 -6
- data/app/models/spree/authentication/strategies/oidc_strategy.rb +5 -5
- data/app/models/spree/base.rb +70 -22
- data/app/models/spree/calculator/flat_percent_item_total.rb +1 -3
- data/app/models/spree/calculator/flat_rate.rb +1 -3
- data/app/models/spree/calculator/flexi_rate.rb +1 -3
- data/app/models/spree/calculator/percent_on_line_item.rb +1 -1
- data/app/models/spree/calculator/price_sack.rb +1 -3
- data/app/models/spree/calculator/shipping/digital_delivery.rb +1 -3
- data/app/models/spree/calculator/shipping/flat_percent_item_total.rb +1 -3
- data/app/models/spree/calculator/shipping/flat_rate.rb +1 -3
- data/app/models/spree/calculator/shipping/flexi_rate.rb +1 -3
- data/app/models/spree/calculator/shipping/per_item.rb +1 -3
- data/app/models/spree/calculator/shipping/price_sack.rb +1 -3
- data/app/models/spree/calculator/tiered_flat_rate.rb +6 -23
- data/app/models/spree/calculator/tiered_percent.rb +7 -25
- data/app/models/spree/cart.rb +78 -18
- data/app/models/spree/channel/gating.rb +1 -1
- data/app/models/spree/channel.rb +4 -4
- data/app/models/spree/claim.rb +21 -1
- data/app/models/spree/claim_line_item.rb +41 -6
- data/app/models/spree/collection.rb +0 -1
- data/app/models/spree/collection_rule.rb +5 -21
- data/app/models/spree/commission_line.rb +1 -1
- data/app/models/spree/commission_rate.rb +2 -3
- data/app/models/spree/commission_rate_value.rb +1 -1
- data/app/models/spree/commission_rule.rb +4 -11
- data/app/models/spree/commission_rules/product_rule.rb +1 -1
- data/app/models/spree/company_invitation.rb +1 -0
- data/app/models/spree/consent_record.rb +0 -1
- data/app/models/spree/credit_card.rb +1 -1
- data/app/models/spree/current.rb +23 -0
- data/app/models/spree/custom_field.rb +2 -2
- data/app/models/spree/custom_field_definition.rb +9 -23
- data/app/models/spree/custom_fields/boolean.rb +1 -1
- data/app/models/spree/custom_fields/json.rb +1 -1
- data/app/models/spree/data_feed/google.rb +0 -2
- data/app/models/spree/data_request.rb +1 -1
- data/app/models/spree/delivery_method.rb +30 -13
- data/app/models/spree/delivery_method_rule.rb +4 -11
- data/app/models/spree/delivery_rate.rb +4 -5
- data/app/models/spree/delivery_rate_provider/base.rb +1 -0
- data/app/models/spree/delivery_zone.rb +0 -1
- data/app/models/spree/delivery_zone_member.rb +4 -4
- data/app/models/spree/digital_asset.rb +7 -0
- data/app/models/spree/digital_asset_provider/base.rb +2 -0
- data/app/models/spree/digital_link.rb +2 -5
- data/app/models/spree/discount.rb +1 -1
- data/app/models/spree/email_template.rb +25 -0
- data/app/models/spree/email_template_draft.rb +13 -0
- data/app/models/spree/email_template_revision.rb +17 -0
- data/app/models/spree/email_templates/entry.rb +118 -0
- data/app/models/spree/email_templates/sample_record.rb +16 -0
- data/app/models/spree/emails/branding.rb +80 -0
- data/app/models/spree/exchange.rb +15 -1
- data/app/models/spree/exchange_line_item.rb +121 -5
- data/app/models/spree/export.rb +0 -1
- data/app/models/spree/exports/products.rb +10 -1
- data/app/models/spree/exports/report.rb +1 -1
- data/app/models/spree/fee.rb +4 -2
- data/app/models/spree/fulfillment.rb +53 -27
- data/app/models/spree/fulfillment_changer.rb +2 -2
- data/app/models/spree/fulfillment_item.rb +0 -4
- data/app/models/spree/fulfillment_provider/base.rb +1 -0
- data/app/models/spree/gateway/bogus.rb +4 -0
- data/app/models/spree/gateway/custom_payment_source_method.rb +5 -0
- data/app/models/spree/gateway.rb +5 -1
- data/app/models/spree/gift_card.rb +12 -1
- data/app/models/spree/gift_card_batch.rb +0 -1
- data/app/models/spree/import.rb +2 -7
- data/app/models/spree/import_mapping.rb +1 -2
- data/app/models/spree/import_row.rb +2 -2
- data/app/models/spree/import_schemas/products.rb +1 -0
- data/app/models/spree/integration.rb +8 -18
- data/app/models/spree/invitation.rb +5 -5
- data/app/models/spree/line_item.rb +13 -2
- data/app/models/spree/locale.rb +11 -8
- data/app/models/spree/market.rb +1 -0
- data/app/models/spree/newsletter_subscriber.rb +3 -0
- data/app/models/spree/order.rb +56 -138
- data/app/models/spree/order_group.rb +11 -2
- data/app/models/spree/order_inventory.rb +10 -5
- data/app/models/spree/order_promotion.rb +1 -1
- data/app/models/spree/order_routing/has_strategy_preference.rb +1 -1
- data/app/models/spree/order_routing/strategy/base.rb +4 -2
- data/app/models/spree/order_routing/strategy/rules.rb +1 -1
- data/app/models/spree/order_routing_rule.rb +6 -22
- data/app/models/spree/package_type.rb +1 -2
- data/app/models/spree/payment/gateway_options.rb +14 -52
- data/app/models/spree/payment/processing.rb +2 -4
- data/app/models/spree/payment.rb +20 -5
- data/app/models/spree/payment_method/session_instrumentation.rb +1 -0
- data/app/models/spree/payment_method/store_credit.rb +4 -4
- data/app/models/spree/payment_method.rb +36 -4
- data/app/models/spree/payment_session.rb +5 -1
- data/app/models/spree/payment_setup_session.rb +1 -0
- data/app/models/spree/payout_provider/base.rb +3 -1
- data/app/models/spree/pickup_point_provider/base.rb +2 -0
- data/app/models/spree/price_list.rb +1 -2
- data/app/models/spree/price_rules/channel_rule.rb +1 -1
- data/app/models/spree/price_rules/customer_group_rule.rb +1 -1
- data/app/models/spree/product.rb +31 -7
- data/app/models/spree/product_submission.rb +0 -12
- data/app/models/spree/product_type.rb +0 -1
- data/app/models/spree/promotion/actions/create_line_items.rb +27 -17
- data/app/models/spree/promotion/rules/category.rb +0 -4
- data/app/models/spree/promotion/rules/channel.rb +0 -4
- data/app/models/spree/promotion/rules/country.rb +0 -4
- data/app/models/spree/promotion/rules/currency.rb +0 -4
- data/app/models/spree/promotion/rules/customer_group.rb +0 -4
- data/app/models/spree/promotion/rules/first_order.rb +0 -4
- data/app/models/spree/promotion/rules/item_total.rb +4 -8
- data/app/models/spree/promotion/rules/market.rb +0 -4
- data/app/models/spree/promotion/rules/one_use_per_user.rb +0 -4
- data/app/models/spree/promotion/rules/option_value.rb +0 -3
- data/app/models/spree/promotion/rules/product.rb +0 -4
- data/app/models/spree/promotion/rules/user.rb +0 -4
- data/app/models/spree/promotion/rules/user_logged_in.rb +0 -4
- data/app/models/spree/promotion.rb +35 -6
- data/app/models/spree/promotion_action.rb +7 -14
- data/app/models/spree/promotion_action_line_item.rb +1 -1
- data/app/models/spree/promotion_handler/coupon.rb +59 -27
- data/app/models/spree/promotion_rule.rb +7 -14
- data/app/models/spree/purchase_order.rb +1 -0
- data/app/models/spree/quantity_rule.rb +1 -1
- data/app/models/spree/refund.rb +28 -3
- data/app/models/spree/return.rb +30 -2
- data/app/models/spree/return_line_item.rb +65 -14
- data/app/models/spree/role.rb +7 -7
- data/app/models/spree/saved_report.rb +1 -1
- data/app/models/spree/seller.rb +2 -1
- data/app/models/spree/seller_payout.rb +7 -0
- data/app/models/spree/seller_requirement.rb +4 -12
- data/app/models/spree/seller_requirement_custom_field.rb +1 -2
- data/app/models/spree/seller_requirement_submission.rb +2 -2
- data/app/models/spree/seller_requirements/accept_terms.rb +2 -3
- data/app/models/spree/seller_transfer.rb +5 -0
- data/app/models/spree/shipping_label.rb +1 -0
- data/app/models/spree/stock/availability_validator.rb +2 -2
- data/app/models/spree/stock/inventory_unit_builder.rb +1 -1
- data/app/models/spree/stock/packer.rb +2 -2
- data/app/models/spree/stock/splitter/weight.rb +1 -1
- data/app/models/spree/stock_level/custom_events.rb +6 -0
- data/app/models/spree/stock_level.rb +1 -1
- data/app/models/spree/stock_movement.rb +1 -1
- data/app/models/spree/stock_receipt_item.rb +1 -1
- data/app/models/spree/stock_reservation.rb +2 -2
- data/app/models/spree/stock_transfer.rb +4 -2
- data/app/models/spree/store.rb +33 -7
- data/app/models/spree/store_credit.rb +8 -9
- data/app/models/spree/store_credit_event.rb +5 -5
- data/app/models/spree/tax_exemption_certificate.rb +2 -0
- data/app/models/spree/tax_identifier.rb +3 -1
- data/app/models/spree/tax_line.rb +53 -3
- data/app/models/spree/tax_provider/base.rb +71 -14
- data/app/models/spree/tax_provider/internal.rb +59 -33
- data/app/models/spree/tax_provider/recorded_share.rb +114 -0
- data/app/models/spree/tax_rate.rb +1 -2
- data/app/models/spree/taxonomy.rb +0 -1
- data/app/models/spree/variant.rb +4 -3
- data/app/models/spree/variant_media.rb +1 -1
- data/app/models/spree/webhook_endpoint.rb +10 -13
- data/app/models/spree/wishlist.rb +1 -6
- data/app/models/spree/wishlist_item/custom_events.rb +6 -0
- data/app/presenters/spree/csv/customer_presenter.rb +1 -1
- data/app/presenters/spree/csv/newsletter_subscriber_presenter.rb +1 -1
- data/app/presenters/spree/csv/order_line_item_presenter.rb +1 -1
- data/app/presenters/spree/csv/product_variant_presenter.rb +42 -12
- data/app/serializers/spree/emails/base_serializer.rb +14 -0
- data/app/serializers/spree/emails/export_serializer.rb +13 -0
- data/app/serializers/spree/emails/import_serializer.rb +19 -0
- data/app/serializers/spree/emails/invitation_serializer.rb +28 -0
- data/app/serializers/spree/emails/store_serializer.rb +31 -0
- data/app/serializers/spree/emails/user_serializer.rb +12 -0
- data/app/serializers/spree/emails/webhook_endpoint_serializer.rb +16 -0
- data/app/services/spree/carts/create.rb +8 -2
- data/app/services/spree/carts/destroy.rb +2 -2
- data/app/services/spree/carts/remove_out_of_stock_items.rb +2 -2
- data/app/services/spree/carts/split_by_seller.rb +1 -1
- data/app/services/spree/carts/update.rb +19 -5
- data/app/services/spree/catalogs/set_product_terms.rb +1 -1
- data/app/services/spree/categories/add_products.rb +13 -31
- data/app/services/spree/categories/remove_products.rb +12 -51
- data/app/services/spree/checkout/advance.rb +1 -4
- data/app/services/spree/collections/add_products.rb +10 -23
- data/app/services/spree/collections/remove_products.rb +7 -43
- data/app/services/spree/coupon_codes/bulk_generate.rb +8 -14
- data/app/services/spree/data_requests/create.rb +1 -1
- data/app/services/spree/deliveries/destroy.rb +2 -2
- data/app/services/spree/email_templates/check.rb +58 -0
- data/app/services/spree/email_templates/no_sample_record.rb +7 -0
- data/app/services/spree/email_templates/preview.rb +99 -0
- data/app/services/spree/emails/file_system.rb +23 -0
- data/app/services/spree/emails/filters.rb +84 -0
- data/app/services/spree/emails/liquid_context.rb +48 -0
- data/app/services/spree/emails/rendered_email.rb +14 -0
- data/app/services/spree/emails/renderer.rb +125 -0
- data/app/services/spree/emails/template.rb +51 -0
- data/app/services/spree/emails/template_data.rb +23 -0
- data/app/services/spree/emails/template_resolver.rb +109 -0
- data/app/services/spree/emails/text_converter.rb +72 -0
- data/app/services/spree/emails/translation_inliner.rb +134 -0
- data/app/services/spree/imports/row_processors/price_list_price.rb +10 -10
- data/app/services/spree/imports/row_processors/product_variant.rb +65 -34
- data/app/services/spree/imports/row_processors/purchase_order.rb +13 -13
- data/app/services/spree/locales.rb +4 -5
- data/app/services/spree/newsletter/subscribe.rb +8 -12
- data/app/services/spree/orders/build_fulfillments.rb +3 -2
- data/app/services/spree/orders/create.rb +2 -1
- data/app/services/spree/orders/discounts/create.rb +7 -4
- data/app/services/spree/orders/discounts/destroy.rb +1 -0
- data/app/services/spree/orders/discounts/update.rb +1 -0
- data/app/services/spree/orders/fees/create.rb +1 -0
- data/app/services/spree/orders/fees/destroy.rb +1 -0
- data/app/services/spree/orders/fees/update.rb +1 -0
- data/app/services/spree/orders/remove_line_item.rb +13 -3
- data/app/services/spree/orders/update.rb +10 -6
- data/app/services/spree/orders/update_item.rb +6 -3
- data/app/services/spree/orders/update_statuses.rb +3 -1
- data/app/services/spree/product_memberships.rb +61 -0
- data/app/services/spree/returns/eligibility_validator.rb +1 -1
- data/app/services/spree/search_provider/custom_field_schema.rb +2 -2
- data/app/services/spree/seeds/commission_rates.rb +1 -1
- data/app/services/spree/seeds/digital_delivery.rb +1 -1
- data/app/services/spree/seeds/payment_methods.rb +2 -2
- data/app/services/spree/seeds/saved_reports.rb +3 -3
- data/app/services/spree/sellers/requirements.rb +1 -2
- data/app/services/spree/shipping_labels/confirm_refund.rb +1 -1
- data/app/services/spree/shipping_labels/store_file.rb +3 -3
- data/app/services/spree/stock_levels/correct.rb +3 -3
- data/app/services/spree/stock_reservations/reserve.rb +2 -3
- data/app/services/spree/store_credits/apply.rb +15 -13
- data/app/services/spree/stores/provision_defaults.rb +15 -14
- data/app/subscribers/spree/seller_onboarding_subscriber.rb +1 -1
- data/app/views/layouts/spree/base_mailer.html.erb +2 -43
- data/app/views/layouts/spree/base_mailer.liquid +79 -0
- data/app/views/spree/admin_user_mailer/password_reset_email.liquid +14 -0
- data/app/views/spree/export_mailer/export_done.liquid +12 -0
- data/app/views/spree/import_mailer/import_done.liquid +15 -0
- data/app/views/spree/invitation_mailer/invitation_accepted.liquid +9 -0
- data/app/views/spree/invitation_mailer/invitation_email.liquid +13 -0
- data/app/views/spree/seller_user_mailer/password_reset_email.liquid +14 -0
- data/app/views/spree/shared/_mailer_button.html.erb +4 -5
- data/app/views/spree/shared/_mailer_hero.html.erb +6 -5
- data/app/views/spree/shared/_summary_row.liquid +8 -0
- data/app/views/spree/webhook_mailer/endpoint_disabled.liquid +21 -0
- data/app/workflows/spree/carts/add_item.rb +4 -4
- data/app/workflows/spree/carts/complete.rb +13 -3
- data/app/workflows/spree/carts/merge.rb +1 -1
- data/app/workflows/spree/carts/recalculate_totals.rb +5 -0
- data/app/workflows/spree/carts/upsert_items.rb +18 -9
- data/app/workflows/spree/claims/approve.rb +5 -22
- data/app/workflows/spree/claims/cancel.rb +5 -21
- data/app/workflows/spree/claims/create.rb +15 -0
- data/app/workflows/spree/claims/deny.rb +7 -0
- data/app/workflows/spree/claims/resolve.rb +34 -31
- data/app/workflows/spree/customers/anonymize.rb +3 -4
- data/app/workflows/spree/customers/create.rb +1 -1
- data/app/workflows/spree/data_requests/fulfill.rb +2 -2
- data/app/workflows/spree/deliveries/update_tracking.rb +1 -1
- data/app/workflows/spree/email_templates/discard_draft.rb +20 -0
- data/app/workflows/spree/email_templates/publish.rb +70 -0
- data/app/workflows/spree/email_templates/restore_revision.rb +33 -0
- data/app/workflows/spree/email_templates/revert.rb +29 -0
- data/app/workflows/spree/email_templates/save_draft.rb +85 -0
- data/app/workflows/spree/exchanges/approve.rb +5 -22
- data/app/workflows/spree/exchanges/cancel.rb +5 -21
- data/app/workflows/spree/exchanges/create.rb +6 -0
- data/app/workflows/spree/exchanges/fulfill.rb +75 -51
- data/app/workflows/spree/exchanges/receive.rb +6 -65
- data/app/workflows/spree/fulfillments/cancel.rb +1 -1
- data/app/workflows/spree/fulfillments/create.rb +51 -47
- data/app/workflows/spree/fulfillments/fulfill.rb +23 -27
- data/app/workflows/spree/fulfillments/mark_delivered.rb +1 -1
- data/app/workflows/spree/fulfillments/replacements.rb +59 -0
- data/app/workflows/spree/gift_cards/apply.rb +2 -2
- data/app/workflows/spree/orders/add_item.rb +5 -1
- data/app/workflows/spree/orders/cancel.rb +3 -3
- data/app/workflows/spree/orders/complete.rb +16 -8
- data/app/workflows/spree/payments/process.rb +2 -2
- data/app/workflows/spree/post_sale/approval.rb +35 -0
- data/app/workflows/spree/post_sale/cancellation.rb +44 -0
- data/app/workflows/spree/post_sale/receipt.rb +92 -0
- data/app/workflows/spree/products/nested_attributes.rb +1 -1
- data/app/workflows/spree/purchase_orders/cancel.rb +1 -1
- data/app/workflows/spree/purchase_orders/close.rb +3 -31
- data/app/workflows/spree/purchase_orders/mark_draft.rb +2 -2
- data/app/workflows/spree/purchase_orders/mark_ordered.rb +2 -2
- data/app/workflows/spree/purchase_orders/receive.rb +1 -1
- data/app/workflows/spree/purchase_orders/update.rb +5 -34
- data/app/workflows/spree/receivables/closing_short.rb +46 -0
- data/app/workflows/spree/receivables/draft_editing.rb +48 -0
- data/app/workflows/spree/refunds/create.rb +5 -2
- data/app/workflows/spree/refunds/order_payments.rb +14 -2
- data/app/workflows/spree/refunds/tax_credit.rb +67 -0
- data/app/workflows/spree/returns/approve.rb +5 -22
- data/app/workflows/spree/returns/cancel.rb +5 -22
- data/app/workflows/spree/returns/create.rb +8 -0
- data/app/workflows/spree/returns/receive.rb +5 -76
- data/app/workflows/spree/returns/refund.rb +31 -8
- data/app/workflows/spree/seller_requirement_submissions/create.rb +1 -2
- data/app/workflows/spree/seller_transfers/reverse.rb +28 -1
- data/app/workflows/spree/shipping_labels/purchase.rb +8 -8
- data/app/workflows/spree/shipping_labels/record.rb +5 -5
- data/app/workflows/spree/shipping_labels/refund.rb +2 -2
- data/app/workflows/spree/stock_receipts/recording.rb +4 -4
- data/app/workflows/spree/stock_transfers/cancel.rb +2 -2
- data/app/workflows/spree/stock_transfers/close.rb +3 -30
- data/app/workflows/spree/stock_transfers/mark_draft.rb +1 -1
- data/app/workflows/spree/stock_transfers/mark_in_transit.rb +3 -3
- data/app/workflows/spree/stock_transfers/mark_ready.rb +2 -2
- data/app/workflows/spree/stock_transfers/receive.rb +1 -1
- data/app/workflows/spree/stock_transfers/update.rb +5 -33
- data/config/i18n-tasks.yml +32 -18
- data/config/initializers/alba.rb +7 -0
- data/config/language_names.csv +264 -0
- data/config/locales/ar.yml +811 -0
- data/config/locales/be.yml +855 -0
- data/config/locales/bg.yml +723 -0
- data/config/locales/ca.yml +689 -0
- data/config/locales/cs.yml +855 -0
- data/config/locales/da.yml +771 -0
- data/config/locales/de-CH.yml +248 -0
- data/config/locales/de.yml +835 -0
- data/config/locales/el.yml +769 -0
- data/config/locales/en.yml +37 -503
- data/config/locales/es-CL.yml +301 -0
- data/config/locales/es-EC.yml +186 -0
- data/config/locales/es-MX.yml +334 -0
- data/config/locales/es.yml +831 -0
- data/config/locales/et.yml +644 -0
- data/config/locales/fa.yml +709 -0
- data/config/locales/fi.yml +771 -0
- data/config/locales/fr.yml +830 -0
- data/config/locales/hu.yml +751 -0
- data/config/locales/id.yml +756 -0
- data/config/locales/it.yml +833 -0
- data/config/locales/ja.yml +726 -0
- data/config/locales/km.yml +759 -0
- data/config/locales/ko.yml +575 -0
- data/config/locales/ku.yml +753 -0
- data/config/locales/lt.yml +821 -0
- data/config/locales/lv.yml +685 -0
- data/config/locales/nb.yml +824 -0
- data/config/locales/ne.yml +823 -0
- data/config/locales/nl.yml +826 -0
- data/config/locales/pl.yml +835 -0
- data/config/locales/pt-BR.yml +547 -0
- data/config/locales/pt.yml +636 -0
- data/config/locales/ro.yml +750 -0
- data/config/locales/ru.yml +834 -0
- data/config/locales/sk.yml +680 -0
- data/config/locales/sl-SI.yml +600 -0
- data/config/locales/sv.yml +827 -0
- data/config/locales/th.yml +745 -0
- data/config/locales/tr.yml +777 -0
- data/config/locales/uk.yml +836 -0
- data/config/locales/vi.yml +768 -0
- data/config/locales/zh-CN.yml +786 -0
- data/config/locales/zh-TW.yml +834 -0
- data/db/migrate/20260925000001_add_replacement_to_spree_fulfillment_items.rb +5 -0
- data/db/migrate/20261001000001_add_post_sale_tax.rb +30 -0
- data/db/migrate/20261001000001_convert_preferences_to_json.rb +166 -0
- data/db/migrate/20261001000001_create_spree_email_templates.rb +52 -0
- data/lib/generators/spree/dummy/dummy_generator.rb +0 -9
- data/lib/generators/spree/dummy/templates/rails/test.rb +7 -0
- data/lib/spree/checkout/default_requirements.rb +37 -13
- data/lib/spree/core/configuration.rb +1 -1
- data/lib/spree/core/controller_helpers/store.rb +1 -1
- data/lib/spree/core/dependencies.rb +5 -4
- data/lib/spree/core/emails/escaped_output.rb +60 -0
- data/lib/spree/core/engine.rb +48 -167
- data/lib/spree/core/permissions/default_catalog.rb +5 -0
- data/lib/spree/core/preferences/json_conversion.rb +182 -0
- data/lib/spree/core/preferences/masking.rb +4 -1
- data/lib/spree/core/preferences/preferable.rb +137 -83
- data/lib/spree/core/preferences/preferable_class_methods.rb +81 -146
- data/lib/spree/core/previews/import_preview.rb +10 -0
- data/lib/spree/core/tax/provider_error.rb +37 -0
- data/lib/spree/core/version.rb +1 -1
- data/lib/spree/core.rb +85 -370
- data/lib/spree/emails/editable_templates.rb +82 -0
- data/lib/spree/events/catalog.rb +189 -0
- data/lib/spree/events.rb +21 -1
- data/lib/spree/hooks.rb +0 -17
- data/lib/spree/i18n.rb +32 -15
- data/lib/spree/reporting/adapters/live.rb +6 -6
- data/lib/spree/reporting/default_vocabulary.rb +22 -10
- data/lib/spree/reporting/hydration.rb +1 -1
- data/lib/spree/reporting/query.rb +8 -0
- data/lib/spree/reporting/schema.rb +10 -10
- data/lib/spree/testing_support/editable_email_templates.rb +61 -0
- data/lib/spree/testing_support/emails.rb +22 -0
- data/lib/spree/testing_support/factories/cart_factory.rb +1 -1
- data/lib/spree/testing_support/factories/email_template_factory.rb +28 -0
- data/lib/spree/testing_support/factories/order_factory.rb +2 -2
- data/lib/spree/testing_support/factories/refund_factory.rb +1 -1
- data/lib/spree/testing_support/factories/stock_factory.rb +1 -1
- data/lib/spree/testing_support/factories/variant_factory.rb +1 -1
- data/lib/spree/testing_support/i18n.rb +3 -94
- data/lib/spree/testing_support/lifecycle_events.rb +1 -1
- data/lib/spree/testing_support/order_walkthrough.rb +1 -1
- data/lib/spree/testing_support/preferences.rb +0 -5
- data/lib/spree/testing_support/store.rb +9 -1
- data/lib/spree/upgrades/5_6_to_6_0/manifest.yml +45 -0
- data/lib/tasks/categories_and_collections.rake +3 -3
- data/lib/tasks/core.rake +6 -4
- data/lib/tasks/media.rake +3 -3
- data/lib/tasks/package_types.rake +1 -1
- data/lib/tasks/preferences_json.rake +101 -0
- data/spec/fixtures/mailer_views/custom_views_probe_mailer/welcome_email.html.erb +4 -0
- metadata +188 -44
- data/app/models/acts_as_taggable_on/tag_decorator.rb +0 -10
- data/app/models/concerns/spree/has_image_alt_text.rb +0 -18
- data/app/models/spree/base_analytics_event_handler.rb +0 -54
- data/app/models/spree/invitations/store.rb +0 -6
- data/app/models/spree/preference.rb +0 -14
- data/app/models/spree/promotion_handler/page.rb +0 -25
- data/app/models/spree/promotion_handler/promotion_duplicator.rb +0 -60
- data/app/models/spree/stock/differentiator.rb +0 -45
- data/app/presenters/spree/filters/options_presenter.rb +0 -47
- data/app/services/spree/carts/empty.rb +0 -42
- data/app/services/spree/country_to_timezone.rb +0 -273
- data/app/services/spree/payments/create.rb +0 -92
- data/app/validators/spree/url_validator.rb +0 -23
- data/app/views/active_storage/blobs/_blob.html.erb +0 -14
- data/app/views/spree/admin_user_mailer/password_reset_email.html.erb +0 -8
- data/app/views/spree/export_mailer/export_done.html.erb +0 -7
- data/app/views/spree/import_mailer/import_done.html.erb +0 -12
- data/app/views/spree/invitation_mailer/invitation_accepted.html.erb +0 -4
- data/app/views/spree/invitation_mailer/invitation_email.html.erb +0 -12
- data/app/views/spree/seller_user_mailer/password_reset_email.html.erb +0 -8
- data/app/views/spree/shared/_base_mailer_footer.html.erb +0 -19
- data/app/views/spree/shared/_base_mailer_header.html.erb +0 -8
- data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +0 -399
- data/app/views/spree/shared/_mailer_logo.html.erb +0 -41
- data/app/views/spree/shared/_purchased_items_styles.html.erb +0 -119
- data/app/views/spree/webhook_mailer/endpoint_disabled.html.erb +0 -51
- data/app/views/spree/webhook_mailer/endpoint_disabled.text.erb +0 -10
- data/app/workflows/spree/fulfillments/purchase_label.rb +0 -40
- data/app/workflows/spree/returns/purchase_label.rb +0 -32
- data/lib/spree/analytics.rb +0 -11
- data/lib/spree/core/preferences/scoped_store.rb +0 -34
- data/lib/spree/core/preferences/store.rb +0 -105
- data/lib/spree/translation_migrations.rb +0 -52
|
@@ -0,0 +1,786 @@
|
|
|
1
|
+
---
|
|
2
|
+
zh-CN:
|
|
3
|
+
activemodel:
|
|
4
|
+
errors:
|
|
5
|
+
messages:
|
|
6
|
+
blank: 不能为空
|
|
7
|
+
activerecord:
|
|
8
|
+
attributes:
|
|
9
|
+
spree/address:
|
|
10
|
+
address1: 地址1
|
|
11
|
+
address2: 地址2(非必填)
|
|
12
|
+
city: 城市
|
|
13
|
+
company: 公司
|
|
14
|
+
country: 国家
|
|
15
|
+
label: 地址名称
|
|
16
|
+
phone: 电话
|
|
17
|
+
state: 省份
|
|
18
|
+
spree/country:
|
|
19
|
+
iso: ISO
|
|
20
|
+
iso3: ISO3
|
|
21
|
+
iso_name: ISO名称
|
|
22
|
+
name: 名称
|
|
23
|
+
numcode: ISO编号
|
|
24
|
+
spree/credit_card:
|
|
25
|
+
cc_type: 信用卡类型
|
|
26
|
+
month: 月份
|
|
27
|
+
name: 持卡人姓名
|
|
28
|
+
number: 卡号
|
|
29
|
+
verification_value: 验证码
|
|
30
|
+
year: 年份
|
|
31
|
+
spree/customer_group:
|
|
32
|
+
description: 描述
|
|
33
|
+
name: 名称
|
|
34
|
+
spree/gift_card:
|
|
35
|
+
amount_used: 已使用金额
|
|
36
|
+
expires_at: 过期时间
|
|
37
|
+
spree/import:
|
|
38
|
+
preferred_delimiter: 分隔符
|
|
39
|
+
spree/import_mapping:
|
|
40
|
+
file_column: 文件列
|
|
41
|
+
schema_field: 架构字段
|
|
42
|
+
spree/import_row:
|
|
43
|
+
row_number: 编号
|
|
44
|
+
spree/inventory_unit:
|
|
45
|
+
state: 状态
|
|
46
|
+
spree/invitation:
|
|
47
|
+
inviter: 邀请人
|
|
48
|
+
spree/line_item:
|
|
49
|
+
price: 单价
|
|
50
|
+
quantity: 数量
|
|
51
|
+
spree/option_type:
|
|
52
|
+
filterable: 可筛选
|
|
53
|
+
kind: 类型
|
|
54
|
+
name: 名称
|
|
55
|
+
spree/option_value:
|
|
56
|
+
color_code: 颜色代码
|
|
57
|
+
image: 色卡图片
|
|
58
|
+
spree/order:
|
|
59
|
+
checkout_complete: 完成结账
|
|
60
|
+
completed_at: 结账日期
|
|
61
|
+
considered_risky: 风险
|
|
62
|
+
coupon_code: 优惠券号码
|
|
63
|
+
created_at: 下单日期
|
|
64
|
+
email: 电子邮件
|
|
65
|
+
internal_note: 内部备注
|
|
66
|
+
ip_address: IP地址
|
|
67
|
+
item_count: 商品数量
|
|
68
|
+
item_total: 小记
|
|
69
|
+
number: 订单号
|
|
70
|
+
payment_state: 支付状态
|
|
71
|
+
shipment_state: 物流状态
|
|
72
|
+
special_instructions: 特别说明
|
|
73
|
+
state: 状态
|
|
74
|
+
total: 总计
|
|
75
|
+
spree/order/bill_address:
|
|
76
|
+
address1: 地址
|
|
77
|
+
city: 城市
|
|
78
|
+
phone: 电话
|
|
79
|
+
state: 省份
|
|
80
|
+
spree/order/ship_address:
|
|
81
|
+
address1: 地址
|
|
82
|
+
city: 城市
|
|
83
|
+
phone: 电话
|
|
84
|
+
state: 省份
|
|
85
|
+
spree/payment:
|
|
86
|
+
amount: 金额
|
|
87
|
+
number: 编号
|
|
88
|
+
spree/payment_method:
|
|
89
|
+
name: 名称
|
|
90
|
+
spree/policy:
|
|
91
|
+
body: 正文
|
|
92
|
+
owner: 适用对象
|
|
93
|
+
spree/price_list:
|
|
94
|
+
description: 描述
|
|
95
|
+
ends_at: 结束时间
|
|
96
|
+
match_policy: 匹配策略
|
|
97
|
+
name: 名称
|
|
98
|
+
priority: 优先级
|
|
99
|
+
starts_at: 开始时间
|
|
100
|
+
status: 状态
|
|
101
|
+
spree/price_rule:
|
|
102
|
+
priority: 优先级
|
|
103
|
+
type: 类型
|
|
104
|
+
spree/product:
|
|
105
|
+
available_on: 上架日期
|
|
106
|
+
cost_currency: 成本币种
|
|
107
|
+
cost_price: 成本
|
|
108
|
+
description: 描述
|
|
109
|
+
discontinue_on: 停售日期
|
|
110
|
+
less_than: 小于
|
|
111
|
+
make_active_at: 上架时间
|
|
112
|
+
master_price: 默认价格
|
|
113
|
+
more_than: 大于
|
|
114
|
+
name: 名称
|
|
115
|
+
on_hand: 库存
|
|
116
|
+
tax_category: 缴税分类
|
|
117
|
+
spree/promotion:
|
|
118
|
+
advertise: 推广
|
|
119
|
+
code: 编号
|
|
120
|
+
description: 描述
|
|
121
|
+
event_name: 事件名称
|
|
122
|
+
expires_at: 过期日期
|
|
123
|
+
generate_code: 生成优惠码
|
|
124
|
+
name: 名称
|
|
125
|
+
path: 路径
|
|
126
|
+
promotion_category: 促销分类
|
|
127
|
+
starts_at: 开始日期
|
|
128
|
+
usage_limit: 使用次数限制
|
|
129
|
+
spree/promotion_category:
|
|
130
|
+
code: 编号
|
|
131
|
+
name: 名称
|
|
132
|
+
spree/property:
|
|
133
|
+
name: 名称
|
|
134
|
+
presentation: 描述
|
|
135
|
+
spree/role:
|
|
136
|
+
name: ming cheng
|
|
137
|
+
spree/shipment:
|
|
138
|
+
number: 编号
|
|
139
|
+
spree/state:
|
|
140
|
+
abbr: 缩写
|
|
141
|
+
name: 名称
|
|
142
|
+
spree/store:
|
|
143
|
+
address: 地址
|
|
144
|
+
contact_phone: 联系电话
|
|
145
|
+
meta_description: meta描述语
|
|
146
|
+
meta_keywords: meta关键词
|
|
147
|
+
name: 名称
|
|
148
|
+
preferred_digital_asset_authorized_clicks: 下载点击次数限制
|
|
149
|
+
preferred_digital_asset_authorized_days: 下载天数限制
|
|
150
|
+
preferred_limit_digital_download_count: 限制数字链接下载次数
|
|
151
|
+
preferred_limit_digital_download_days: 限制数字链接下载天数
|
|
152
|
+
seo_robots: SEO 爬虫指令
|
|
153
|
+
seo_title: SEO 标题
|
|
154
|
+
storefront_custom_code_body_end: body 结束标签前的自定义代码
|
|
155
|
+
storefront_custom_code_body_start: body 开始标签后的自定义代码
|
|
156
|
+
storefront_custom_code_head: 页面 head 中的自定义代码
|
|
157
|
+
url: URL地址
|
|
158
|
+
spree/store_credit:
|
|
159
|
+
amount_used: 已使用金额
|
|
160
|
+
spree/tax_category:
|
|
161
|
+
description: 描述
|
|
162
|
+
name: 名称
|
|
163
|
+
spree/tax_rate:
|
|
164
|
+
amount: 税率
|
|
165
|
+
included_in_price: 包含在售价中
|
|
166
|
+
show_rate_in_label: 在标签中显示比率
|
|
167
|
+
spree/taxon:
|
|
168
|
+
name: 名称
|
|
169
|
+
permalink: 永久链接
|
|
170
|
+
position: 位置
|
|
171
|
+
sort_order: 排序顺序
|
|
172
|
+
spree/taxonomy:
|
|
173
|
+
name: 名称
|
|
174
|
+
spree/user:
|
|
175
|
+
avatar: 头像
|
|
176
|
+
email: 电子邮箱
|
|
177
|
+
password: 密码
|
|
178
|
+
password_confirmation: 确认密码
|
|
179
|
+
spree/variant:
|
|
180
|
+
cost_currency: 成本币种
|
|
181
|
+
cost_price: 成本
|
|
182
|
+
depth: 长度/深度
|
|
183
|
+
height: 高度
|
|
184
|
+
price: 单价
|
|
185
|
+
sku: 条码
|
|
186
|
+
weight: 重量
|
|
187
|
+
width: 宽度
|
|
188
|
+
spree/zone:
|
|
189
|
+
description: 描述
|
|
190
|
+
name: 名称
|
|
191
|
+
user:
|
|
192
|
+
current_sign_in: 本次登录时间
|
|
193
|
+
last_sign_in: 上次登录时间
|
|
194
|
+
sign_in_count: 登录次数
|
|
195
|
+
errors:
|
|
196
|
+
messages:
|
|
197
|
+
blank: 不能为空
|
|
198
|
+
models:
|
|
199
|
+
spree/allowed_origin:
|
|
200
|
+
attributes:
|
|
201
|
+
origin:
|
|
202
|
+
must_be_origin_only: 必须是源(协议和主机),不能包含路径、查询或片段
|
|
203
|
+
spree/classification:
|
|
204
|
+
attributes:
|
|
205
|
+
taxon_id:
|
|
206
|
+
already_linked: 已经关联
|
|
207
|
+
spree/credit_card:
|
|
208
|
+
attributes:
|
|
209
|
+
base:
|
|
210
|
+
card_expired: 信用卡过期
|
|
211
|
+
expiry_invalid: 信用卡过期日不正确
|
|
212
|
+
spree/gift_card:
|
|
213
|
+
attributes:
|
|
214
|
+
base:
|
|
215
|
+
cannot_destroy_used_gift_card: 无法删除已使用的礼品卡
|
|
216
|
+
spree/import:
|
|
217
|
+
attributes:
|
|
218
|
+
attachment:
|
|
219
|
+
content_type: 的内容类型不被允许
|
|
220
|
+
type:
|
|
221
|
+
inclusion: 不在允许的类型列表中
|
|
222
|
+
spree/market:
|
|
223
|
+
attributes:
|
|
224
|
+
base:
|
|
225
|
+
cannot_destroy_default_market: 无法删除默认市场。
|
|
226
|
+
cannot_destroy_last_market: 无法删除唯一的市场。
|
|
227
|
+
spree/market_country:
|
|
228
|
+
attributes:
|
|
229
|
+
country:
|
|
230
|
+
already_in_market: 已被分配到本店铺的另一个市场
|
|
231
|
+
not_in_shipping_zone: 未被任何配送区域覆盖。请先设置配送区域。
|
|
232
|
+
spree/payment:
|
|
233
|
+
attributes:
|
|
234
|
+
amount:
|
|
235
|
+
greater_than_max_amount: 超过了允许的最大金额 %{max_amount}
|
|
236
|
+
spree/price_list:
|
|
237
|
+
attributes:
|
|
238
|
+
ends_at:
|
|
239
|
+
must_be_after_starts_at: 必须晚于开始时间
|
|
240
|
+
spree/product:
|
|
241
|
+
attributes:
|
|
242
|
+
base:
|
|
243
|
+
cannot_destroy_if_attached_to_line_items: 无法删除已添加到已下达订单中的商品。这种情况下,请将其停售。
|
|
244
|
+
discontinue_on:
|
|
245
|
+
invalid_date_range: 必须晚于上架日期
|
|
246
|
+
spree/product_publication:
|
|
247
|
+
attributes:
|
|
248
|
+
unpublished_at:
|
|
249
|
+
must_be_after_published_at: 必须晚于发布日期
|
|
250
|
+
spree/promotion:
|
|
251
|
+
attributes:
|
|
252
|
+
expires_at:
|
|
253
|
+
invalid_date_range: 必须晚于开始日期
|
|
254
|
+
spree/store:
|
|
255
|
+
attributes:
|
|
256
|
+
base:
|
|
257
|
+
cannot_destroy_only_store: 无法删除唯一的店铺。
|
|
258
|
+
spree/store_credit:
|
|
259
|
+
attributes:
|
|
260
|
+
amount_authorized:
|
|
261
|
+
exceeds_total_credits: 超过了总额度。
|
|
262
|
+
amount_used:
|
|
263
|
+
cannot_be_greater_than_amount: 不能大于总金额。
|
|
264
|
+
greater_than_zero_restrict_delete: 大于零,无法删除店铺积分。
|
|
265
|
+
spree/user:
|
|
266
|
+
attributes:
|
|
267
|
+
bill_address_id:
|
|
268
|
+
belongs_to_other_user: 属于其他用户
|
|
269
|
+
deprecated_in_completed_order: 在已完成订单中已弃用
|
|
270
|
+
ship_address_id:
|
|
271
|
+
belongs_to_other_user: 属于其他用户
|
|
272
|
+
deprecated_in_completed_order: 在已完成订单中已弃用
|
|
273
|
+
spree/variant:
|
|
274
|
+
attributes:
|
|
275
|
+
base:
|
|
276
|
+
cannot_destroy_if_attached_to_line_items: 无法删除已添加到已下达订单中的变体。这种情况下,请将其停售。
|
|
277
|
+
spree/webhook_endpoint:
|
|
278
|
+
attributes:
|
|
279
|
+
url:
|
|
280
|
+
internal_address_not_allowed: 不能指向内部或私有网络地址
|
|
281
|
+
models:
|
|
282
|
+
spree/address:
|
|
283
|
+
one: 地址
|
|
284
|
+
other: 地址
|
|
285
|
+
spree/classification:
|
|
286
|
+
one: 分类
|
|
287
|
+
other: 分类
|
|
288
|
+
spree/country:
|
|
289
|
+
one: 国家
|
|
290
|
+
other: 国家
|
|
291
|
+
spree/credit_card:
|
|
292
|
+
one: 信用卡
|
|
293
|
+
other: 信用卡
|
|
294
|
+
spree/customer_group:
|
|
295
|
+
one: 客户群组
|
|
296
|
+
other: 客户群组
|
|
297
|
+
spree/customer_group_user:
|
|
298
|
+
one: 客户群组成员
|
|
299
|
+
other: 客户群组成员
|
|
300
|
+
spree/export:
|
|
301
|
+
one: 导出
|
|
302
|
+
other: 导出
|
|
303
|
+
spree/integration:
|
|
304
|
+
one: 集成
|
|
305
|
+
other: 集成
|
|
306
|
+
spree/inventory_unit:
|
|
307
|
+
one: 库存单位
|
|
308
|
+
other: 库存单位
|
|
309
|
+
spree/line_item:
|
|
310
|
+
one: 单项
|
|
311
|
+
other: 单项
|
|
312
|
+
spree/option_type:
|
|
313
|
+
one: 选项类型
|
|
314
|
+
other: 选项类型
|
|
315
|
+
spree/option_value:
|
|
316
|
+
one: 选项值
|
|
317
|
+
other: 选项值
|
|
318
|
+
spree/order:
|
|
319
|
+
one: 订单
|
|
320
|
+
other: 订单
|
|
321
|
+
spree/payment:
|
|
322
|
+
one: 支付
|
|
323
|
+
other: 支付
|
|
324
|
+
spree/payment_method:
|
|
325
|
+
one: 支付方式
|
|
326
|
+
other: 支付方式
|
|
327
|
+
spree/price:
|
|
328
|
+
one: 价格
|
|
329
|
+
other: 价格
|
|
330
|
+
spree/price_list:
|
|
331
|
+
one: 价格表
|
|
332
|
+
other: 价格表
|
|
333
|
+
spree/price_rule:
|
|
334
|
+
one: 价格规则
|
|
335
|
+
other: 价格规则
|
|
336
|
+
spree/product:
|
|
337
|
+
one: 产品
|
|
338
|
+
other: 产品
|
|
339
|
+
spree/promotion:
|
|
340
|
+
one: 促销
|
|
341
|
+
other: 促销
|
|
342
|
+
spree/promotion_category:
|
|
343
|
+
one: 促销分类
|
|
344
|
+
other: 促销分类
|
|
345
|
+
spree/property:
|
|
346
|
+
one: 属性
|
|
347
|
+
other: 属性
|
|
348
|
+
spree/refund_reason:
|
|
349
|
+
one: 退款原因
|
|
350
|
+
other: 退款原因
|
|
351
|
+
spree/role:
|
|
352
|
+
one: 角色
|
|
353
|
+
other: 角色
|
|
354
|
+
spree/shipment:
|
|
355
|
+
one: 物流
|
|
356
|
+
other: 物流
|
|
357
|
+
spree/shipping_method:
|
|
358
|
+
one: 配送方式
|
|
359
|
+
other: 配送方式
|
|
360
|
+
spree/state:
|
|
361
|
+
one: 省份
|
|
362
|
+
other: 省份
|
|
363
|
+
spree/stock_location:
|
|
364
|
+
one: 库存地点
|
|
365
|
+
other: 库存地点
|
|
366
|
+
spree/stock_movement:
|
|
367
|
+
one: 库存变动
|
|
368
|
+
other: 库存变动
|
|
369
|
+
spree/stock_transfer:
|
|
370
|
+
one: 库存转移
|
|
371
|
+
other: 库存转移
|
|
372
|
+
spree/store:
|
|
373
|
+
one: 店铺
|
|
374
|
+
other: 店铺
|
|
375
|
+
spree/store_credit:
|
|
376
|
+
one: Store Credit
|
|
377
|
+
other: Store Credits
|
|
378
|
+
spree/tax_category:
|
|
379
|
+
one: 缴税分类
|
|
380
|
+
other: 缴税分类
|
|
381
|
+
spree/tax_rate:
|
|
382
|
+
one: 税率
|
|
383
|
+
other: 税率
|
|
384
|
+
spree/taxon:
|
|
385
|
+
one: 分类
|
|
386
|
+
other: 分类
|
|
387
|
+
spree/taxonomy:
|
|
388
|
+
one: 分类
|
|
389
|
+
other: 分类
|
|
390
|
+
spree/user:
|
|
391
|
+
one: 用户
|
|
392
|
+
other: 用户
|
|
393
|
+
spree/variant:
|
|
394
|
+
one: 具体型号
|
|
395
|
+
other: 具体型号
|
|
396
|
+
spree/zone:
|
|
397
|
+
one: 区域
|
|
398
|
+
other: 区域
|
|
399
|
+
errors:
|
|
400
|
+
messages:
|
|
401
|
+
already_confirmed: 已被确认
|
|
402
|
+
not_found: 无法找到
|
|
403
|
+
not_locked: 未冻结
|
|
404
|
+
not_saved:
|
|
405
|
+
one: 有 1 个错误导致此%{resource}无法保存:
|
|
406
|
+
other: 有 %{count} 个错误导致此%{resource}无法保存:
|
|
407
|
+
number:
|
|
408
|
+
percentage:
|
|
409
|
+
format:
|
|
410
|
+
precision: 1
|
|
411
|
+
spree:
|
|
412
|
+
accept: 接受
|
|
413
|
+
accepted: 已接收
|
|
414
|
+
accepts_email_marketing: 接受邮件营销
|
|
415
|
+
account: 帐户
|
|
416
|
+
active: 激活
|
|
417
|
+
address: 地址
|
|
418
|
+
address1: 地址
|
|
419
|
+
address2: 地址(继续)
|
|
420
|
+
adjustment: 调整
|
|
421
|
+
adjustment_labels:
|
|
422
|
+
tax_rates:
|
|
423
|
+
excluding_tax: "%{name}%{amount}"
|
|
424
|
+
including_tax: "%{name}%{amount} (Included in Price)"
|
|
425
|
+
adjustments_deleted: 调整项已删除
|
|
426
|
+
admin_user_mailer:
|
|
427
|
+
password_reset_email:
|
|
428
|
+
action: 重置密码
|
|
429
|
+
expiry_notice: 此密码重置链接即将过期。如果这不是您本人操作,则无需采取任何措施。
|
|
430
|
+
greeting: 您好,%{name}:
|
|
431
|
+
ignore_notice: 如果您没有请求重置密码,可以放心忽略此邮件。您的密码不会被更改。
|
|
432
|
+
instructions: 我们收到了重置您 %{store_name} 管理员账户密码的请求。请点击下方按钮设置新密码。
|
|
433
|
+
subject: 密码重置说明
|
|
434
|
+
all: 全部
|
|
435
|
+
amount: 金额
|
|
436
|
+
api_key_no_current_key: 没有 API 密钥对此请求进行身份验证
|
|
437
|
+
api_key_scopes_immutable: 在密钥创建后无法更改;请创建一个拥有所需权限范围的新密钥并吊销此密钥
|
|
438
|
+
approver: 核准者
|
|
439
|
+
authorized: 已经审批
|
|
440
|
+
availability: 可用性
|
|
441
|
+
backorderable: 可预订
|
|
442
|
+
backordered: 待补
|
|
443
|
+
bill_address: 账单地址
|
|
444
|
+
billing_address: 账单地址
|
|
445
|
+
calculator: 计算器
|
|
446
|
+
canceled: 已经取消
|
|
447
|
+
cannot_be_destroyed: 订单无法删除。
|
|
448
|
+
capture: 付款
|
|
449
|
+
cart: 购物车
|
|
450
|
+
cart_already_updated: 购物车已更新。
|
|
451
|
+
cart_line_item:
|
|
452
|
+
delivery_unavailable: "%{li_name} 无法配送至所选地址"
|
|
453
|
+
discontinued: "%{li_name} 因已停售而被移除"
|
|
454
|
+
out_of_stock: "%{li_name} 因已售罄而被移除"
|
|
455
|
+
categories: 分类
|
|
456
|
+
category: 分类
|
|
457
|
+
channel: 销售渠道
|
|
458
|
+
channels: 销售渠道
|
|
459
|
+
checkout: 结账
|
|
460
|
+
checkout_requirements:
|
|
461
|
+
email_required: 需要填写电子邮箱地址
|
|
462
|
+
line_items_required: 请至少向购物车中添加一件商品
|
|
463
|
+
payment_required: 请添加支付方式
|
|
464
|
+
ship_address_required: 需要填写收货地址
|
|
465
|
+
city: 城市
|
|
466
|
+
color_code: 颜色代码
|
|
467
|
+
company: 公司
|
|
468
|
+
compare_at_amount: 原价金额
|
|
469
|
+
compare_at_price: 原价
|
|
470
|
+
complete: 完成
|
|
471
|
+
confirm: 确认
|
|
472
|
+
cost_price: 进货价
|
|
473
|
+
count_on_hand: 库存数量
|
|
474
|
+
country: 国家
|
|
475
|
+
coupon_code: 优惠券号码
|
|
476
|
+
coupon_code_already_applied: 优惠券号码已在本订单中使用
|
|
477
|
+
coupon_code_applied: 优惠券号码已在订单中生效。
|
|
478
|
+
coupon_code_expired: 优惠券号码已过期
|
|
479
|
+
coupon_code_max_usage: 优惠券号码使用次数超出限制
|
|
480
|
+
coupon_code_not_eligible: 您的订单号码无法在您的订单上生效。
|
|
481
|
+
coupon_code_not_found: 您所输入的优惠券号码不存在。请重新输入。
|
|
482
|
+
coupon_code_used: 您输入的优惠码已被使用。请重试。
|
|
483
|
+
created_at: 创建日期
|
|
484
|
+
credit_card: 信用卡
|
|
485
|
+
currency: 币种
|
|
486
|
+
currency_not_supported_by_store: 不被本店铺支持
|
|
487
|
+
customer: 顾客
|
|
488
|
+
customers: 客户
|
|
489
|
+
default: 默认
|
|
490
|
+
default_stock_location_name: 店铺地点
|
|
491
|
+
default_wishlist_name: 心愿单
|
|
492
|
+
delivery: 配送
|
|
493
|
+
depth: 长
|
|
494
|
+
description: 描述
|
|
495
|
+
destination: 目的地
|
|
496
|
+
destroy: 删除
|
|
497
|
+
details: 详情
|
|
498
|
+
digital:
|
|
499
|
+
digital_delivery: 数字交付
|
|
500
|
+
digital_assets: 数字资产
|
|
501
|
+
discontinued: 已停售
|
|
502
|
+
discontinued_variants_present: 此订单中的部分商品已不再供应。
|
|
503
|
+
display_delivery_range: "%{delivery_range} 个工作日内送达"
|
|
504
|
+
draft: 草稿
|
|
505
|
+
eligibility_errors:
|
|
506
|
+
messages:
|
|
507
|
+
no_matching_channel: 此优惠码不适用于该销售渠道。
|
|
508
|
+
no_matching_market: 此优惠码在您所在的市场不可用。
|
|
509
|
+
wrong_country: 此优惠码不适用于您所在的国家/地区
|
|
510
|
+
email: 电子邮件
|
|
511
|
+
error: 错误
|
|
512
|
+
error_user_destroy_with_orders: 无法删除关联了订单的用户
|
|
513
|
+
error_user_does_not_have_any_store_credits: 用户没有任何可用的店铺积分
|
|
514
|
+
errors:
|
|
515
|
+
messages:
|
|
516
|
+
cannot_delete_default_channel: 无法删除默认渠道。请先将另一个渠道设为默认。
|
|
517
|
+
channel_store_mismatch: 必须属于同一店铺
|
|
518
|
+
invalid_order_routing_rule: 不是已注册的订单路由规则
|
|
519
|
+
invalid_order_routing_strategy: 不是已注册的订单路由策略
|
|
520
|
+
store_association_can_not_be_changed: 店铺关联无法更改
|
|
521
|
+
store_is_already_set: 店铺已设置
|
|
522
|
+
expired: 已过期
|
|
523
|
+
export_mailer:
|
|
524
|
+
export_done:
|
|
525
|
+
message: 干得好,您的导出已就绪!请使用下方链接下载。
|
|
526
|
+
subject: 您的导出 %{export_number} 已成功处理!
|
|
527
|
+
greeting: 您好,%{user_name}:
|
|
528
|
+
field: 字段
|
|
529
|
+
first_name: 名
|
|
530
|
+
flat_percent: 固定费率
|
|
531
|
+
flat_rate_per_order: 固定费率 (每订单)
|
|
532
|
+
flexible_rate: 灵活费率
|
|
533
|
+
free: 免费
|
|
534
|
+
gateway: 网关
|
|
535
|
+
gateway_error: 网关出错
|
|
536
|
+
gift_card: 礼品卡
|
|
537
|
+
gift_card_already_redeemed: 该礼品卡已被兑换。
|
|
538
|
+
gift_card_applied: 礼品卡已成功应用于您的订单!
|
|
539
|
+
gift_card_customer_not_logged_in: 礼品卡无法用于访客用户。
|
|
540
|
+
gift_card_expired: 该礼品卡已过期。
|
|
541
|
+
gift_card_mismatched_currency: 礼品卡无法用于当前货币。
|
|
542
|
+
gift_card_mismatched_customer: 此礼品卡与另一用户关联。
|
|
543
|
+
gift_card_not_found: 未找到该礼品卡。
|
|
544
|
+
gift_card_removed: 礼品卡已成功从您的订单中移除
|
|
545
|
+
gift_card_using_store_credit_error: 在使用店铺积分后,您无法再应用礼品卡。
|
|
546
|
+
height: 高度
|
|
547
|
+
i18n:
|
|
548
|
+
this_file_language: 中文 简体 (zh-CN)
|
|
549
|
+
idempotency_key_reused: 此 Idempotency-Key 已使用不同的请求参数被使用过。
|
|
550
|
+
image: 图片
|
|
551
|
+
import: 导入
|
|
552
|
+
in_stock: 有货
|
|
553
|
+
internal_note: 内部备注
|
|
554
|
+
inventory: 库存
|
|
555
|
+
invitation_mailer:
|
|
556
|
+
greeting: 您好,%{user_name}:
|
|
557
|
+
invitation_accepted:
|
|
558
|
+
body: "%{invitee_name} 已接受您加入 %{resource_name} 的邀请"
|
|
559
|
+
subject: "%{invitee_name} 已接受您加入 %{resource_name} 的邀请"
|
|
560
|
+
invitation_email:
|
|
561
|
+
body: "%{inviter_name} 邀请您加入 %{resource_name}"
|
|
562
|
+
link_description: 要接受此邀请,请点击下方链接:
|
|
563
|
+
subject: 加入 %{resource_name} 的邀请
|
|
564
|
+
iso: ISO Alpha-2
|
|
565
|
+
item: 商品项
|
|
566
|
+
items_cannot_be_shipped: 商品无法发货
|
|
567
|
+
key: 密钥
|
|
568
|
+
kind: 类型
|
|
569
|
+
label: 标签
|
|
570
|
+
last_name: 姓
|
|
571
|
+
line_item: 订单项
|
|
572
|
+
line_items: 订单项
|
|
573
|
+
link: 链接
|
|
574
|
+
locale: 语言区域
|
|
575
|
+
locale_not_supported_by_store: 不被本店铺支持
|
|
576
|
+
manual: 手动
|
|
577
|
+
market: 市场
|
|
578
|
+
me_no_current_user: 没有管理员用户对此请求进行身份验证
|
|
579
|
+
media: 媒体
|
|
580
|
+
meta_description: 元描述
|
|
581
|
+
meta_keywords: 关键字
|
|
582
|
+
meta_title: 元标题
|
|
583
|
+
metadata: 元数据
|
|
584
|
+
min_quantity: 最小数量
|
|
585
|
+
month: 月
|
|
586
|
+
name: 名称
|
|
587
|
+
new_variant: 新建具体型号
|
|
588
|
+
no_cc_type: 不适用
|
|
589
|
+
none: 没有
|
|
590
|
+
number: 订单号
|
|
591
|
+
on_hand: 库存
|
|
592
|
+
only_active_products_can_be_added_to_cart: 草稿和已归档的商品无法加入购物车,请先将商品标记为已上架。
|
|
593
|
+
open: 打开
|
|
594
|
+
option_name: 选项名称
|
|
595
|
+
option_type: 选项类型
|
|
596
|
+
option_value: 选项值
|
|
597
|
+
options: 选项
|
|
598
|
+
or: 或
|
|
599
|
+
order: 订单
|
|
600
|
+
order_canceled: 订单已取消
|
|
601
|
+
order_routing:
|
|
602
|
+
strategies:
|
|
603
|
+
legacy: 传统
|
|
604
|
+
rules: 规则(按顺序)
|
|
605
|
+
order_summary: 订单概述
|
|
606
|
+
orders: 订单
|
|
607
|
+
out_of_stock: 没有库存
|
|
608
|
+
password: 密码
|
|
609
|
+
path: 路径
|
|
610
|
+
payment: 支付
|
|
611
|
+
payment_method: 支付方式
|
|
612
|
+
payment_methods: 支付方式
|
|
613
|
+
payment_processing_failed: 无法处理支付信息,请检查您所输入的详细信息
|
|
614
|
+
payment_source: 支付来源
|
|
615
|
+
percent: 百分比
|
|
616
|
+
percent_per_item: 单件百分比
|
|
617
|
+
phone: 电话
|
|
618
|
+
price: 价格
|
|
619
|
+
price_range: 价格范围
|
|
620
|
+
price_rules:
|
|
621
|
+
channel_rule:
|
|
622
|
+
description: 根据销售渠道设定定价
|
|
623
|
+
customer_group_rule:
|
|
624
|
+
description: 对特定客户群组应用定价
|
|
625
|
+
price_sack: 袋价格
|
|
626
|
+
prices: 价格
|
|
627
|
+
privacy_policy: 隐私政策
|
|
628
|
+
processing: 处理中
|
|
629
|
+
product: 产品
|
|
630
|
+
product_translations: 商品翻译
|
|
631
|
+
products: 产品
|
|
632
|
+
products_cannot_be_shipped: 我们目前无法将 %{product_names} 配送至您当前的所在地。请更改您的收货地址,或从购物车中移除 %{product_names}。
|
|
633
|
+
promotion: 促销
|
|
634
|
+
promotion_action_types:
|
|
635
|
+
create_adjustment:
|
|
636
|
+
description: 为订单添加促销用的价格调整
|
|
637
|
+
name: 添加订单的价格调整
|
|
638
|
+
create_item_adjustments:
|
|
639
|
+
description: 为订单上的单项产品添加一笔促销用的价格调整
|
|
640
|
+
name: 添加单项的价格调整
|
|
641
|
+
create_line_items:
|
|
642
|
+
description: 增加特定商品到订单中
|
|
643
|
+
name: 赠送礼品
|
|
644
|
+
free_shipping:
|
|
645
|
+
description: 整张订单免费发货
|
|
646
|
+
name: 免运费
|
|
647
|
+
promotion_actions: 优惠方式
|
|
648
|
+
promotion_already_used: 您无法删除已被应用的促销
|
|
649
|
+
promotion_label: 促销(%{name})
|
|
650
|
+
promotion_rule_types:
|
|
651
|
+
category:
|
|
652
|
+
description: 订单包含指定分类中的商品
|
|
653
|
+
name: 分类
|
|
654
|
+
channel:
|
|
655
|
+
description: 限定为通过指定销售渠道下达的订单
|
|
656
|
+
name: 销售渠道
|
|
657
|
+
country:
|
|
658
|
+
description: 仅限收货地址在特定国家/地区的订单
|
|
659
|
+
name: 国家/地区
|
|
660
|
+
currency:
|
|
661
|
+
description: 仅限使用特定货币的订单
|
|
662
|
+
name: 货币
|
|
663
|
+
customer:
|
|
664
|
+
description: 仅限指定客户使用
|
|
665
|
+
name: 客户
|
|
666
|
+
customer_group:
|
|
667
|
+
description: 仅限指定客户群组中的客户使用
|
|
668
|
+
name: 客户群组
|
|
669
|
+
customer_logged_in:
|
|
670
|
+
description: 仅限已登录客户使用
|
|
671
|
+
name: 仅限已登录客户
|
|
672
|
+
first_order:
|
|
673
|
+
description: 必须是客户的第一笔订单
|
|
674
|
+
name: 第一笔订单
|
|
675
|
+
item_total:
|
|
676
|
+
description: 订单总额满足这些条件
|
|
677
|
+
name: 小记
|
|
678
|
+
market:
|
|
679
|
+
description: 限定为在指定市场下达的订单
|
|
680
|
+
name: 市场
|
|
681
|
+
one_use_per_user:
|
|
682
|
+
description: 每人只可使用一次
|
|
683
|
+
name: 每人一次
|
|
684
|
+
product:
|
|
685
|
+
description: 订单包含指定的产品
|
|
686
|
+
name: 产品
|
|
687
|
+
promotions: 促销
|
|
688
|
+
quantity: 数量
|
|
689
|
+
query: 查询
|
|
690
|
+
reason: 原因
|
|
691
|
+
received: 已收到
|
|
692
|
+
refund: 退款
|
|
693
|
+
refund_amount: 退款金额
|
|
694
|
+
registration: 注册
|
|
695
|
+
remove: 移出
|
|
696
|
+
remove_gift_card_on_completed_order_error: 订单下达后您无法移除礼品卡
|
|
697
|
+
resellable: 可转售
|
|
698
|
+
resend: 重新发送
|
|
699
|
+
response_code: 返回代码
|
|
700
|
+
return: 退货
|
|
701
|
+
returned: 已退回
|
|
702
|
+
returns_policy: 退货政策
|
|
703
|
+
row: 行
|
|
704
|
+
rules: Rules
|
|
705
|
+
say_no: 不
|
|
706
|
+
say_yes: 是的
|
|
707
|
+
scope: 范围
|
|
708
|
+
selected_quantity_not_available: 所选的 %{item} 数量不足。
|
|
709
|
+
ship: 发货
|
|
710
|
+
ship_address: 配送地址
|
|
711
|
+
shipment: 配送
|
|
712
|
+
shipped: 已发货
|
|
713
|
+
shipping: 配送中
|
|
714
|
+
shipping_address: 配送地址
|
|
715
|
+
shipping_flat_rate_per_item: 以单项计固定费率
|
|
716
|
+
shipping_flat_rate_per_order: 固定费率
|
|
717
|
+
shipping_flexible_rate: 以每项计弹性价格
|
|
718
|
+
shipping_policy: 配送政策
|
|
719
|
+
shipping_rates:
|
|
720
|
+
display_price:
|
|
721
|
+
excluding_tax: "%{price}(+ %{tax_amount} %{tax_rate_name})"
|
|
722
|
+
including_tax: "%{price}(含 %{tax_amount} %{tax_rate_name})"
|
|
723
|
+
sku: 条形码
|
|
724
|
+
source: 来源
|
|
725
|
+
status: 状态
|
|
726
|
+
stock_location: 库存区域
|
|
727
|
+
stock_locations: 库存区域
|
|
728
|
+
stock_transfer:
|
|
729
|
+
errors:
|
|
730
|
+
must_have_variant: 您必须至少添加一个变体
|
|
731
|
+
same_location: 不能与目标地点相同
|
|
732
|
+
variants_unavailable: 部分变体在 %{stock} 上不可用
|
|
733
|
+
store: 商城
|
|
734
|
+
store_credit:
|
|
735
|
+
allocated: 已添加
|
|
736
|
+
authorized: 已授权
|
|
737
|
+
captured: 已使用
|
|
738
|
+
credit: 积分
|
|
739
|
+
eligible: 符合条件
|
|
740
|
+
store_credit_name: 店铺积分
|
|
741
|
+
store_credit_payment_method:
|
|
742
|
+
currency_mismatch: 店铺积分货币与订单货币不匹配
|
|
743
|
+
insufficient_authorized_amount: 无法捕获超过已授权的金额
|
|
744
|
+
insufficient_funds: 剩余的店铺积分金额不足
|
|
745
|
+
successful_action: 店铺积分%{action}成功
|
|
746
|
+
unable_to_credit: 无法退款代码:%{auth_code}
|
|
747
|
+
unable_to_find: 未能找到店铺积分
|
|
748
|
+
unable_to_find_for_action: 未能找到授权码为 %{auth_code}、操作为 %{action} 的店铺积分
|
|
749
|
+
unable_to_void: 无法作废代码:%{auth_code}
|
|
750
|
+
success: 成功
|
|
751
|
+
tags: 标签
|
|
752
|
+
tax: 税
|
|
753
|
+
tax_category: 缴税分类
|
|
754
|
+
terms_of_service: 服务条款
|
|
755
|
+
total: 总计
|
|
756
|
+
track_inventory: 追踪库存
|
|
757
|
+
tracking: 追踪
|
|
758
|
+
tracking_number: 物流编号
|
|
759
|
+
tracking_url: 查询网站
|
|
760
|
+
type: 类型
|
|
761
|
+
unable_to_connect_to_gateway: 无法连接支付网关.
|
|
762
|
+
updated_at: 更新于
|
|
763
|
+
url: URL
|
|
764
|
+
user: 用户
|
|
765
|
+
validation:
|
|
766
|
+
must_be_int: 必须是整数
|
|
767
|
+
value: 值
|
|
768
|
+
variant: 具体型号
|
|
769
|
+
variants: 具体型号
|
|
770
|
+
verified: 已验证
|
|
771
|
+
void: 作废
|
|
772
|
+
webhook_mailer:
|
|
773
|
+
endpoint_disabled:
|
|
774
|
+
disabled_at_label: 禁用于
|
|
775
|
+
heading: Webhook 端点已禁用
|
|
776
|
+
instructions: 请检查端点 URL 和服务,然后在 设置 → 开发者 → Webhooks 中重新启用它。
|
|
777
|
+
message: Webhook 端点 "%{endpoint_name}" 在多次投递失败后已被自动禁用。
|
|
778
|
+
name_label: 名称
|
|
779
|
+
reason_label: 原因
|
|
780
|
+
subject: Webhook 端点已禁用:%{endpoint_name}
|
|
781
|
+
url_label: URL
|
|
782
|
+
weight: 重量
|
|
783
|
+
weight_unit: 重量单位
|
|
784
|
+
width: 宽度
|
|
785
|
+
year: 年
|
|
786
|
+
zip: 邮编
|