Petunia Disposable Paper Pulp Meal Sugarcane Pulp Rectangular Sushi Box Light Salad Pasta Packaging Lunch Box

$12.90
people are viewing this right now
Free worldwide shipping
Free returns
Sustainably made
Secure payments
Description
1
Select product
Selected 0 item(s)
0 # [pulp] 50 pieces with single bottom without lid
1 # [pulp] 50 pieces with single bottom without lid
2 # [pulp] 50 pieces with single bottom without lid
3 # [pulp] 50 pieces with single bottom without lid
5 # [pulp] 50 pieces with single bottom without lid
7 # [pulp] 50 pieces with single bottom without lid
9 # [pulp] 50 pieces with single bottom without lid
11 # [pulp] 50 pieces with single bottom without lid
0 # [pulp] 50 pieces with pet cover
1 # [pulp] 50 pieces with pet cover
2 # [pulp] 50 pieces with pet cover
3 # [pulp] 50 pieces with pet cover
5 # [pulp] 50 pieces with pet cover
7 # [pulp] 50 pieces with pet cover
9 # [pulp] 50 pieces with pet cover
11 # [pulp] 50 pieces with pet cover
0 # [pulp] plate single bottom without lid 800 pieces
1 # [pulp] plate single bottom without lid 600 pieces
2 # [pulp] plate single bottom without lid 600 pieces
3 # [pulp] plate single bottom without lid 600 pieces
5 # [pulp] plate single bottom without lid 600 pieces
7 # [pulp] plate single bottom without lid 600 pieces
9 # [pulp] plate single bottom without lid 300 pieces
11 # [pulp] plate single bottom without lid 300 pieces
0 # [pulp] 800 pieces with pet cover
1 # [pulp] 600 pieces with pet cover
2 # [pulp] 600 pieces with pet cover
3 # [pulp] 600 pieces with pet cover
5 # [pulp] 600 pieces with pet cover
7 # [pulp] 600 pieces with pet cover
9 # [pulp] 300 pieces with pet cover
11 # [pulp] 300 pieces with pet cover
class SpzCheckoutNotificationHandler extends SPZ.BaseElement { constructor(element) { super(element); this.timer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } sendVariantListUpdateEvent_(data) { const messageData = { type: "theme_variant_list_update", data: { orderToken: data.order_token || data.order_id } }; clearInterval(this.timer_); if(!window.CheckoutAPI) { this.timer_ = setInterval(() => { if(window.CheckoutAPI) { clearInterval(this.timer_); postMessage && postMessage(messageData); } }, 500); } else { postMessage && postMessage(messageData); } } buildCallback() { this.action_ = SPZServices.actionServiceForDoc(this.element); this.registerAction('sendVariantListUpdateEvent', (param) => { this.sendVariantListUpdateEvent_(param.args.data); }); } } SPZ.defineElement('spz-custom-checkout-notification-handler', SpzCheckoutNotificationHandler); function handleGetOrderInfo(data) { if (data.order_id) { let api = `/api/checkout/order/info?order_id=${data.order_id}`; return Promise.resolve(api); } return Promise.reject({}); } function addEventListenerKickItems(data) { if (data.type === 'checkout_kick_items') { return Promise.resolve(data); } return Promise.reject({}); } exportFunction('handleGetOrderInfo', handleGetOrderInfo) exportFunction('addEventListenerKickItems', addEventListenerKickItems)