spree_emails 6.0.0.rc1 → 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.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/app/mailers/spree/customer_mailer.rb +1 -1
- data/app/serializers/spree/emails/amount_line_serializer.rb +1 -5
- data/app/serializers/spree/emails/applied_promotion_serializer.rb +1 -0
- data/app/serializers/spree/emails/customer_group_serializer.rb +6 -0
- data/app/serializers/spree/emails/customer_serializer.rb +19 -0
- data/app/serializers/spree/emails/delivery_rate_serializer.rb +2 -0
- data/app/serializers/spree/emails/fee_serializer.rb +1 -0
- data/app/serializers/spree/emails/fulfillment_group_serializer.rb +5 -2
- data/app/serializers/spree/emails/fulfillment_serializer.rb +2 -0
- data/app/serializers/spree/emails/gift_card_serializer.rb +1 -0
- data/app/serializers/spree/emails/line_item_serializer.rb +5 -3
- data/app/serializers/spree/emails/newsletter_subscriber_serializer.rb +6 -0
- data/app/serializers/spree/emails/order_group_serializer.rb +8 -18
- data/app/serializers/spree/emails/order_serializer.rb +2 -0
- data/app/serializers/spree/emails/parcel_item_serializer.rb +4 -4
- data/app/serializers/spree/emails/payment_serializer.rb +2 -0
- data/app/serializers/spree/emails/purchase_summary_attributes.rb +3 -3
- data/app/serializers/spree/emails/return_serializer.rb +5 -3
- data/app/services/spree/emails/samples/password_reset.rb +1 -1
- data/app/views/spree/return_mailer/refunded_email.liquid +2 -1
- data/app/views/spree/shared/_fulfillment_group.liquid +6 -1
- data/app/views/spree/shared/_line_item.liquid +2 -2
- data/app/views/spree/shared/_purchase_totals.liquid +15 -8
- data/config/initializers/typelizer.rb +4 -3
- metadata +9 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ca967f077601b0dc275a08b7b82d8e4923d7665a5ca14c0ea29e2d45701442a7
|
|
4
|
+
data.tar.gz: ae2d21365de3492ee95c86efc7a35a37afa6a75677ab869ecf824b488f766ed6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 48a1f186023067c01b7b4d09b26ddd7d92a4fbc588fea2f2118759b28798ed9d78996c18cc26eab437847d17c42b0cc7a8c2aa79bcc32da70f9b4b8c417cafd6
|
|
7
|
+
data.tar.gz: d2da8ca96780a73991be4f0ec5a9657f484d07c6896217680e05a088f6ea2476323bb787356cd0db42746e517c2ab74888c74e1606ddf40d8d3fdf5b411cfb49
|
data/README.md
CHANGED
|
@@ -73,7 +73,7 @@ module Spree
|
|
|
73
73
|
@current_store = store
|
|
74
74
|
|
|
75
75
|
with_store_locale(@current_store) do
|
|
76
|
-
mail_template({ customer: email_data(customer, Spree
|
|
76
|
+
mail_template({ customer: email_data(customer, Spree::Emails::CustomerSerializer) }, to: customer.email)
|
|
77
77
|
end
|
|
78
78
|
end
|
|
79
79
|
end
|
|
@@ -11,7 +11,7 @@ module Spree
|
|
|
11
11
|
|
|
12
12
|
with_store_locale(store) do
|
|
13
13
|
mail_template(
|
|
14
|
-
{ customer: email_data(user, Spree
|
|
14
|
+
{ customer: email_data(user, Spree::Emails::CustomerSerializer), reset_url: @reset_url },
|
|
15
15
|
to: user.email, store_url: store.storefront_url
|
|
16
16
|
)
|
|
17
17
|
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
module Emails
|
|
3
|
+
class CustomerSerializer < Spree::Api::V3::CustomerSerializer
|
|
4
|
+
without_display_money
|
|
5
|
+
|
|
6
|
+
many :addresses, resource: Spree::Emails::AddressSerializer
|
|
7
|
+
one :bill_address, key: :default_billing_address, resource: Spree::Emails::AddressSerializer
|
|
8
|
+
one :ship_address, key: :default_shipping_address, resource: Spree::Emails::AddressSerializer
|
|
9
|
+
|
|
10
|
+
one :newsletter_subscriber, resource: Spree::Emails::NewsletterSubscriberSerializer do |user, params|
|
|
11
|
+
user.newsletter_subscriber(params&.dig(:store) || Spree::Current.store)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
many :customer_groups,
|
|
15
|
+
proc { |groups, params| groups.for_store(params&.dig(:store) || Spree::Current.store) },
|
|
16
|
+
resource: Spree::Emails::CustomerGroupSerializer
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
module Spree
|
|
2
2
|
module Emails
|
|
3
3
|
class DeliveryRateSerializer < Spree::Api::V3::DeliveryRateSerializer
|
|
4
|
+
without_display_money
|
|
5
|
+
|
|
4
6
|
typelize freight_summary: [:EmailFreightSummary, nullable: true]
|
|
5
7
|
|
|
6
8
|
one :freight_summary, resource: Spree::Emails::FreightSummarySerializer
|
|
@@ -7,8 +7,11 @@ module Spree
|
|
|
7
7
|
|
|
8
8
|
attributes :name
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
# A freight parcel awaiting its forwarder's quote has no cost yet.
|
|
11
|
+
attribute :unpriced, &:unpriced?
|
|
12
|
+
|
|
13
|
+
attribute :cost do |group|
|
|
14
|
+
Spree::Money::Rounding.format(group.cost, group.currency)
|
|
12
15
|
end
|
|
13
16
|
|
|
14
17
|
attribute :seller_names do |group|
|
|
@@ -3,16 +3,18 @@ module Spree
|
|
|
3
3
|
class LineItemSerializer < Spree::Api::V3::LineItemSerializer
|
|
4
4
|
include Spree::Emails::PurchasedItemAttributes
|
|
5
5
|
|
|
6
|
+
without_display_money
|
|
7
|
+
|
|
6
8
|
many :option_values, resource: Spree::Emails::OptionValueSerializer
|
|
7
9
|
|
|
8
|
-
typelize sku: [:string, nullable: true],
|
|
10
|
+
typelize sku: [:string, nullable: true], amount: :string,
|
|
9
11
|
url: [:string, nullable: true], image_url: [:string, nullable: true]
|
|
10
12
|
|
|
11
13
|
attributes :sku
|
|
12
14
|
|
|
13
15
|
# Price times quantity, before discounts — what the line cost.
|
|
14
|
-
attribute :
|
|
15
|
-
line_item.
|
|
16
|
+
attribute :amount do |line_item|
|
|
17
|
+
Spree::Money::Rounding.format(line_item.amount, line_item.currency)
|
|
16
18
|
end
|
|
17
19
|
|
|
18
20
|
# The full-size image; emails show the thumbnail in `image_url`.
|
|
@@ -5,10 +5,10 @@ module Spree
|
|
|
5
5
|
class OrderGroupSerializer < Spree::Api::V3::OrderGroupSerializer
|
|
6
6
|
include Spree::Emails::PurchaseSummaryAttributes
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
without_display_money
|
|
9
|
+
|
|
10
|
+
typelize po_number: [:string, nullable: true], order_count: :number, delivery_total: :string,
|
|
11
|
+
additional_tax_total: :string, gift_card_total: :string
|
|
12
12
|
|
|
13
13
|
attributes :po_number
|
|
14
14
|
|
|
@@ -16,29 +16,19 @@ module Spree
|
|
|
16
16
|
group.orders.size
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
attribute :display_delivery_total do |group|
|
|
20
|
-
group.display_delivery_total.to_s
|
|
21
|
-
end
|
|
22
|
-
|
|
23
19
|
attribute :delivery_total do |group|
|
|
24
|
-
group.delivery_total.
|
|
20
|
+
Spree::Money::Rounding.format(group.delivery_total, group.currency)
|
|
25
21
|
end
|
|
26
22
|
|
|
27
23
|
attribute :additional_tax_total do |group|
|
|
28
|
-
group.additional_tax_total.
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
attribute :display_additional_tax_total do |group|
|
|
32
|
-
group.display_additional_tax_total.to_s
|
|
24
|
+
Spree::Money::Rounding.format(group.additional_tax_total, group.currency)
|
|
33
25
|
end
|
|
34
26
|
|
|
35
27
|
attribute :gift_card_total do |group|
|
|
36
|
-
group.gift_card_total.
|
|
28
|
+
Spree::Money::Rounding.format(group.gift_card_total, group.currency)
|
|
37
29
|
end
|
|
38
30
|
|
|
39
|
-
|
|
40
|
-
group.display_gift_card_total.to_s
|
|
41
|
-
end
|
|
31
|
+
many :payments, resource: Spree::Emails::PaymentSerializer
|
|
42
32
|
|
|
43
33
|
# Every child order in full is what the webhook payload carries; the
|
|
44
34
|
# email reads the purchase-wide fields above instead.
|
|
@@ -5,6 +5,8 @@ module Spree
|
|
|
5
5
|
class OrderSerializer < Spree::Api::V3::OrderSerializer
|
|
6
6
|
include Spree::Emails::PurchaseSummaryAttributes
|
|
7
7
|
|
|
8
|
+
without_display_money
|
|
9
|
+
|
|
8
10
|
many :order_promotions, key: :discounts, resource: Spree::Emails::AppliedPromotionSerializer
|
|
9
11
|
many :fees, resource: Spree::Emails::FeeSerializer
|
|
10
12
|
many :fulfillments, resource: Spree::Emails::FulfillmentSerializer
|
|
@@ -24,12 +24,12 @@ module Spree
|
|
|
24
24
|
item.line_item.options_text
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
attribute :
|
|
28
|
-
item.line_item.
|
|
27
|
+
attribute :price do |item|
|
|
28
|
+
Spree::Money::Rounding.format(item.line_item.price, item.line_item.currency, unit_price: true)
|
|
29
29
|
end
|
|
30
30
|
|
|
31
|
-
attribute :
|
|
32
|
-
Spree::Money.
|
|
31
|
+
attribute :amount do |item|
|
|
32
|
+
Spree::Money::Rounding.format(item.line_item.price * item.quantity, item.line_item.currency)
|
|
33
33
|
end
|
|
34
34
|
end
|
|
35
35
|
end
|
|
@@ -7,14 +7,14 @@ module Spree
|
|
|
7
7
|
extend ActiveSupport::Concern
|
|
8
8
|
|
|
9
9
|
included do
|
|
10
|
-
typelize customer_name: :string,
|
|
10
|
+
typelize customer_name: :string, total_minus_store_credits: :string
|
|
11
11
|
|
|
12
12
|
attribute :customer_name do |purchase|
|
|
13
13
|
purchase.name.presence || I18n.t('spree.customer')
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
-
attribute :
|
|
17
|
-
purchase.
|
|
16
|
+
attribute :total_minus_store_credits do |purchase|
|
|
17
|
+
Spree::Money::Rounding.format(purchase.total_minus_store_credits, purchase.currency)
|
|
18
18
|
end
|
|
19
19
|
|
|
20
20
|
many :line_items, key: :items, resource: Spree::Emails::LineItemSerializer
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
module Spree
|
|
2
2
|
module Emails
|
|
3
3
|
class ReturnSerializer < Spree::Api::V3::ReturnSerializer
|
|
4
|
-
|
|
4
|
+
without_display_money
|
|
5
|
+
|
|
6
|
+
typelize refunded_total: :string
|
|
5
7
|
|
|
6
8
|
# What was actually paid back — not the Store API's refund_total, which
|
|
7
9
|
# is the figure the return was expected to refund.
|
|
8
|
-
attribute :
|
|
9
|
-
return_record.
|
|
10
|
+
attribute :refunded_total do |return_record|
|
|
11
|
+
Spree::Money::Rounding.format(return_record.refunded_total, return_record.currency)
|
|
10
12
|
end
|
|
11
13
|
|
|
12
14
|
many :returned_items,
|
|
@@ -5,7 +5,7 @@ module Spree
|
|
|
5
5
|
def variables
|
|
6
6
|
{
|
|
7
7
|
customer: data(Spree.customer_class.new(first_name: 'Jane', last_name: 'Doe', email: 'jane@example.com'),
|
|
8
|
-
Spree
|
|
8
|
+
Spree::Emails::CustomerSerializer),
|
|
9
9
|
reset_url: placeholder_url('account/reset-password')
|
|
10
10
|
}
|
|
11
11
|
end
|
|
@@ -12,7 +12,8 @@ subject: "{% if resend %}[{{ 'resend' | t }}] {% endif %}{{ store.name }} {{ 're
|
|
|
12
12
|
<mj-section padding="48px 0 0">
|
|
13
13
|
<mj-column>
|
|
14
14
|
<mj-text mj-class="section-heading" padding="0 0 16px">{{ 'return_mailer.refunded_email.refund_summary' | t }}</mj-text>
|
|
15
|
-
|
|
15
|
+
{%- assign refunded_total = return.refunded_total | money -%}
|
|
16
|
+
<mj-text mj-class="body" padding="0" font-weight="500" color="{{ store.branding.heading_color }}">{{ 'return_mailer.refunded_email.total_refunded' | t: total: refunded_total }}</mj-text>
|
|
16
17
|
</mj-column>
|
|
17
18
|
</mj-section>
|
|
18
19
|
{% render 'spree/shared/order_summary', heading: heading, purchase: order, items: return.returned_items, totals: false %}
|
|
@@ -14,7 +14,12 @@
|
|
|
14
14
|
{%- endif -%}
|
|
15
15
|
{% render 'spree/shared/line_item' for group.items as item %}
|
|
16
16
|
<mj-table css-class="summary" padding="16px 0 0">
|
|
17
|
-
{
|
|
17
|
+
{%- if group.unpriced -%}
|
|
18
|
+
{%- assign cost = 'delivery_rates.quoted_after_review' | t -%}
|
|
19
|
+
{%- else -%}
|
|
20
|
+
{%- assign cost = group.cost | money -%}
|
|
21
|
+
{%- endif -%}
|
|
22
|
+
{% render 'spree/shared/summary_row', label: 'shipping', translate: true, sub: group.name, value: cost %}
|
|
18
23
|
</mj-table>
|
|
19
24
|
</mj-column>
|
|
20
25
|
</mj-section>
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
{%- if item.options_text != blank -%}<p class="item_meta">{{ item.options_text }}</p>{%- endif -%}
|
|
20
20
|
</td>
|
|
21
21
|
<td class="item_amount" align="right" valign="middle">
|
|
22
|
-
<p class="item_qty">{{ item.quantity }} x {{ item.
|
|
23
|
-
<p class="item_price">{{ item.
|
|
22
|
+
<p class="item_qty">{{ item.quantity }} x {{ item.price | money }}</p>
|
|
23
|
+
<p class="item_price">{{ item.amount | money }}</p>
|
|
24
24
|
</td>
|
|
25
25
|
</tr>
|
|
26
26
|
</table>
|
|
@@ -4,25 +4,32 @@
|
|
|
4
4
|
{%- assign tax_total = purchase.additional_tax_total | plus: 0 -%}
|
|
5
5
|
{%- assign gift_card_total = purchase.gift_card_total | plus: 0 -%}
|
|
6
6
|
<mj-table css-class="summary" padding="16px 0 0">
|
|
7
|
-
{
|
|
7
|
+
{%- assign value = purchase.item_total | money -%}
|
|
8
|
+
{% render 'spree/shared/summary_row', label: 'order_mailer.subtotal', translate: true, value: value %}
|
|
8
9
|
{%- for line in purchase.promotion_discounts -%}
|
|
9
|
-
{
|
|
10
|
+
{%- assign value = line.amount | money -%}
|
|
11
|
+
{% render 'spree/shared/summary_row', label: 'promotion', translate: true, sub: line.label, value: value %}
|
|
10
12
|
{%- endfor -%}
|
|
11
13
|
{%- for line in purchase.delivery_lines -%}
|
|
12
|
-
{
|
|
14
|
+
{%- assign value = line.amount | money -%}
|
|
15
|
+
{% render 'spree/shared/summary_row', label: 'shipping', translate: true, sub: line.label, value: value %}
|
|
13
16
|
{%- endfor -%}
|
|
14
17
|
{%- if tax_total != 0 -%}
|
|
15
|
-
{
|
|
18
|
+
{%- assign value = purchase.additional_tax_total | money -%}
|
|
19
|
+
{% render 'spree/shared/summary_row', label: 'tax', translate: true, value: value %}
|
|
16
20
|
{%- endif -%}
|
|
17
21
|
{%- if gift_card_total > 0 -%}
|
|
18
|
-
{%- assign gift_card_value = purchase.
|
|
22
|
+
{%- assign gift_card_value = purchase.gift_card_total | money | prepend: '-' -%}
|
|
19
23
|
{% render 'spree/shared/summary_row', label: 'gift_card', translate: true, value: gift_card_value %}
|
|
20
24
|
{%- endif -%}
|
|
21
25
|
{%- for line in purchase.manual_discounts -%}
|
|
22
|
-
{
|
|
26
|
+
{%- assign value = line.amount | money -%}
|
|
27
|
+
{% render 'spree/shared/summary_row', label: line.label, value: value %}
|
|
23
28
|
{%- endfor -%}
|
|
24
29
|
{%- for line in purchase.fee_lines -%}
|
|
25
|
-
{
|
|
30
|
+
{%- assign value = line.amount | money -%}
|
|
31
|
+
{% render 'spree/shared/summary_row', label: line.label, value: value %}
|
|
26
32
|
{%- endfor -%}
|
|
27
|
-
{
|
|
33
|
+
{%- assign value = purchase.total_minus_store_credits | money -%}
|
|
34
|
+
{% render 'spree/shared/summary_row', label: 'order_mailer.total', translate: true, value: value, total: true %}
|
|
28
35
|
</mj-table>
|
|
@@ -12,15 +12,16 @@ Rails.application.config.after_initialize do
|
|
|
12
12
|
serializer.extend(Typelizer::DSL) unless serializer.respond_to?(:typelize)
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
Spree::Emails::AmountLineSerializer.typelize(label: [:string, nullable: true], amount: :string
|
|
16
|
-
Spree::Emails::FulfillmentGroupSerializer.typelize(name: [:string, nullable: true],
|
|
15
|
+
Spree::Emails::AmountLineSerializer.typelize(label: [:string, nullable: true], amount: :string)
|
|
16
|
+
Spree::Emails::FulfillmentGroupSerializer.typelize(name: [:string, nullable: true], unpriced: :boolean, cost: :string,
|
|
17
17
|
seller_names: [:string, multi: true],
|
|
18
18
|
# Declared before Typelizer's hooks were attached, so it
|
|
19
19
|
# cannot tell this association is a list.
|
|
20
20
|
items: [:EmailParcelItem, multi: true])
|
|
21
21
|
Spree::Emails::ParcelItemSerializer.typelize(
|
|
22
22
|
id: :string, name: :string, quantity: :number, sku: [:string, nullable: true], options_text: [:string, nullable: true],
|
|
23
|
-
|
|
23
|
+
price: :string, amount: :string, url: [:string, nullable: true],
|
|
24
|
+
image_url: [:string, nullable: true]
|
|
24
25
|
)
|
|
25
26
|
Spree::Emails::StoreSerializer.typelize(
|
|
26
27
|
id: :string, name: :string, address: [:string, nullable: true], mail_from_address: :string, default_currency: :string,
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: spree_emails
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.0.0.
|
|
4
|
+
version: 6.0.0.rc2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sean Schofield
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2026-10-
|
|
13
|
+
date: 2026-10-13 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: spree
|
|
@@ -18,14 +18,14 @@ dependencies:
|
|
|
18
18
|
requirements:
|
|
19
19
|
- - '='
|
|
20
20
|
- !ruby/object:Gem::Version
|
|
21
|
-
version: 6.0.0.
|
|
21
|
+
version: 6.0.0.rc2
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
|
25
25
|
requirements:
|
|
26
26
|
- - '='
|
|
27
27
|
- !ruby/object:Gem::Version
|
|
28
|
-
version: 6.0.0.
|
|
28
|
+
version: 6.0.0.rc2
|
|
29
29
|
- !ruby/object:Gem::Dependency
|
|
30
30
|
name: email_spec
|
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -64,6 +64,8 @@ files:
|
|
|
64
64
|
- app/serializers/spree/emails/address_serializer.rb
|
|
65
65
|
- app/serializers/spree/emails/amount_line_serializer.rb
|
|
66
66
|
- app/serializers/spree/emails/applied_promotion_serializer.rb
|
|
67
|
+
- app/serializers/spree/emails/customer_group_serializer.rb
|
|
68
|
+
- app/serializers/spree/emails/customer_serializer.rb
|
|
67
69
|
- app/serializers/spree/emails/delivery_method_serializer.rb
|
|
68
70
|
- app/serializers/spree/emails/delivery_rate_serializer.rb
|
|
69
71
|
- app/serializers/spree/emails/delivery_serializer.rb
|
|
@@ -74,6 +76,7 @@ files:
|
|
|
74
76
|
- app/serializers/spree/emails/gift_card_serializer.rb
|
|
75
77
|
- app/serializers/spree/emails/line_item_serializer.rb
|
|
76
78
|
- app/serializers/spree/emails/market_serializer.rb
|
|
79
|
+
- app/serializers/spree/emails/newsletter_subscriber_serializer.rb
|
|
77
80
|
- app/serializers/spree/emails/option_value_serializer.rb
|
|
78
81
|
- app/serializers/spree/emails/order_group_serializer.rb
|
|
79
82
|
- app/serializers/spree/emails/order_serializer.rb
|
|
@@ -187,9 +190,9 @@ licenses:
|
|
|
187
190
|
- BSD-3-Clause
|
|
188
191
|
metadata:
|
|
189
192
|
bug_tracker_uri: https://github.com/spree/spree/issues
|
|
190
|
-
changelog_uri: https://github.com/spree/spree/releases/tag/v6.0.0.
|
|
193
|
+
changelog_uri: https://github.com/spree/spree/releases/tag/v6.0.0.rc2
|
|
191
194
|
documentation_uri: https://docs.spreecommerce.org/
|
|
192
|
-
source_code_uri: https://github.com/spree/spree/tree/v6.0.0.
|
|
195
|
+
source_code_uri: https://github.com/spree/spree/tree/v6.0.0.rc2
|
|
193
196
|
post_install_message:
|
|
194
197
|
rdoc_options: []
|
|
195
198
|
require_paths:
|