whoami7 - Manager
:
/
home
/
dataiclx
/
vielorbe.com
/
wp-content
/
plugins
/
surecart
/
dist
/
components
/
surecart
/
Upload File:
files >> //home/dataiclx/vielorbe.com/wp-content/plugins/surecart/dist/components/surecart/p-28d98d61.js.map
{"version":3,"names":["convertLineItemsToLineItemData","lineItems","data","map","item","id","price_id","price","quantity","variant_id","_a","variant","getLineItemPriceIds","line_items","getLineItemByPriceId","priceId","find","isPriceInOrder","order","priceIds","hasSubscription","_b","length","_c","some","recurring_interval_count"],"sources":["src/functions/line-items/index.ts"],"sourcesContent":["import { getQueryArg } from '@wordpress/url';\n\nimport { Bump, Checkout, ChoiceType, LineItemData, lineItems, Price, PriceChoice, Product, RecursivePartial } from '../../types';\n\n// Get only enabled price choices.\nexport const getEnabledPriceChoices = (choices: Array<PriceChoice>): Array<PriceChoice> => {\n return (choices || []).filter(choice => choice?.enabled !== false);\n};\n\n// convert price choice to line item data.\nexport const convertPriceChoiceToLineItemData = (choice: PriceChoice): LineItemData => {\n return {\n price_id: choice.id,\n quantity: choice.quantity,\n };\n};\n\nexport const convertLineItemsToLineItemData = (\n lineItems: RecursivePartial<lineItems>,\n): Array<{\n price_id: string;\n quantity: number;\n variant_id?: string;\n}> => {\n return (lineItems?.data || []).map(item => {\n return {\n ...(!!item?.id ? { id: item.id } : {}),\n price_id: item.price.id,\n quantity: item.quantity,\n variant_id: item.variant?.id,\n };\n });\n};\n\nexport const addLineItem = (lineItems: RecursivePartial<lineItems>, data: { price_id: string; quantity: number }) => {\n const lineItemData = convertLineItemsToLineItemData(lineItems);\n const index = lineItemData.findIndex(item => item.price_id === data.price_id);\n lineItemData[index] = data;\n return lineItemData;\n};\n/**\n * Calculates the initial line items for the session.\n */\nexport const calculateInitialLineItems = (choices: Array<PriceChoice>, choiceType: ChoiceType) => {\n // check the url query first.\n const prices = getQueryArg(window.location.href, 'prices') as unknown as Array<PriceChoice>;\n if (prices) {\n return prices.map(convertPriceChoiceToLineItemData);\n }\n\n // get prices from choices.\n return getInitialChoiceLineItems(choices, choiceType);\n};\n\n/**\n * Get the initial choice line items.\n */\nexport const getInitialChoiceLineItems = (choices: Array<PriceChoice>, choiceType: ChoiceType) => {\n if (choiceType === 'all') {\n return getEnabledPriceChoices(choices).map(convertPriceChoiceToLineItemData);\n } else {\n return [getEnabledPriceChoices(choices).map(convertPriceChoiceToLineItemData)?.[0]];\n }\n};\n\n/**\n * Get price ids from line items\n * @param order\n * @returns\n */\nexport const getLineItemPriceIds = (line_items: RecursivePartial<lineItems>) => {\n return (line_items?.data || []).map(item => item.price.id);\n};\n\nexport const getLineItemBumpIds = (line_items: RecursivePartial<lineItems>) => {\n return (line_items?.data || []).map(item => (item?.bump as Bump)?.id || (item?.bump as string));\n};\n\nexport const getLineItemPrices = (line_items: RecursivePartial<lineItems>) => {\n return (line_items?.data || []).map(item => item.price);\n};\n\nexport const getLineItemByPriceId = (line_items: RecursivePartial<lineItems>, priceId: string) => {\n return (line_items?.data || []).find(item => item.price.id === priceId);\n};\n\n/**\n * Is this product in the checkout session?\n */\nexport const isProductInOrder = (product: RecursivePartial<Product>, order: Checkout) => {\n const prices = getLineItemPrices(order?.line_items);\n if (!prices?.length) return false;\n return !!prices.find(price => (price?.product as Product)?.id === product.id);\n};\n\n/**\n * Is the price in a checkout session\n */\nexport const isPriceInOrder = (price: RecursivePartial<Price>, order: Checkout) => {\n const priceIds = getLineItemPriceIds(order?.line_items);\n return !!priceIds.find(id => price?.id === id);\n};\n\n/**\n * Is the price in a checkout session\n */\nexport const isBumpInOrder = (bump: RecursivePartial<Bump>, order: Checkout) => {\n const bumpIds = getLineItemBumpIds(order?.line_items);\n return !!bumpIds.find(id => bump?.id === id);\n};\n\n/**\n * Attempt to get the session id\n *\n * @param formId The form id.\n * @param order The order\n * @param refresh Should we refresh?\n *\n * @returns string\n */\nexport const getSessionId = (formId, order, refresh = false) => {\n // if we want to get a fresh session, skip\n if (refresh === true) {\n return false;\n }\n\n // if we already have an ID set, return that:\n if (order?.id) {\n return order.id;\n }\n\n // check the url query first\n const urlId = getQueryArg(window.location.href, 'order');\n if (urlId) {\n return urlId;\n }\n\n // check id in localstorage\n return window.localStorage.getItem(formId);\n};\n\n/** Check if the order has a subscription */\nexport const hasSubscription = (order: Checkout) => {\n // no line items.\n if (!order?.line_items?.data?.length) return false;\n // has subscription product.\n return order?.line_items.data?.some(item => item?.price?.recurring_interval_count);\n};\n\nexport const hasTrial = (order: Checkout) => {\n return order?.trial_amount;\n};\n\n/** Check if the order has a payment plan. */\nexport const hasPaymentPlan = (order: Checkout) => {\n return hasSubscription(order) && order?.line_items.data?.some(item => item?.price?.recurring_period_count);\n};\n"],"mappings":"MAiBaA,EACXC,KAMQA,IAAS,MAATA,SAAS,SAATA,EAAWC,OAAQ,IAAIC,KAAIC,I,MACjC,MAAO,OACCA,IAAI,MAAJA,SAAI,SAAJA,EAAMC,IAAK,CAAEA,GAAID,EAAKC,IAAO,GACnCC,SAAUF,EAAKG,MAAMF,GACrBG,SAAUJ,EAAKI,SACfC,YAAYC,EAAAN,EAAKO,WAAO,MAAAD,SAAA,SAAAA,EAAEL,GAC3B,IAwCE,MAAMO,EAAuBC,KAC1BA,IAAU,MAAVA,SAAU,SAAVA,EAAYX,OAAQ,IAAIC,KAAIC,GAAQA,EAAKG,MAAMF,K,MAW5CS,EAAuB,CAACD,EAAyCE,MACpEF,IAAU,MAAVA,SAAU,SAAVA,EAAYX,OAAQ,IAAIc,MAAKZ,GAAQA,EAAKG,MAAMF,KAAOU,I,MAepDE,EAAiB,CAACV,EAAgCW,KAC7D,MAAMC,EAAWP,EAAoBM,IAAK,MAALA,SAAK,SAALA,EAAOL,YAC5C,QAASM,EAASH,MAAKX,IAAME,IAAK,MAALA,SAAK,SAALA,EAAOF,MAAOA,GAAG,E,MA0CnCe,EAAmBF,I,UAE9B,MAAKG,GAAAX,EAAAQ,IAAK,MAALA,SAAK,SAALA,EAAOL,cAAU,MAAAH,SAAA,SAAAA,EAAER,QAAI,MAAAmB,SAAA,SAAAA,EAAEC,QAAQ,OAAO,MAE7C,OAAOC,EAAAL,IAAK,MAALA,SAAK,SAALA,EAAOL,WAAWX,QAAI,MAAAqB,SAAA,SAAAA,EAAEC,MAAKpB,IAAI,IAAAM,EAAI,OAAAA,EAAAN,IAAI,MAAJA,SAAI,SAAJA,EAAMG,SAAK,MAAAG,SAAA,SAAAA,EAAEe,wBAAwB,GAAC,S","ignoreList":[]}
Copyright ©2021 || Defacer Indonesia