INNER CODE UNIT · JavaScript
expiryTime
adeekshith/watomatic · functions/index.js:168
const expiryTime = lineItem.expiryTime; // ISO 8601 format
const expiryTimeMillis = expiryTime ? new Date(expiryTime).getTime() : 0;
const retrievedProductId = lineItem.productId;
const basePlanId = lineItem.offerDetails?.basePlanId;
const autoRenewing = subscription.subscriptionState === 'SUBSCRIPTION_STATE_ACTIVE' &&
lineItem.autoRenewingPlan?.autoRenewEnabled === true;
console.log(`Product ID: ${retrievedProductId}, Base Plan: ${basePlanId}`);
console.log(`Expiry: ${expiryTime} (${expiryTimeMillis}ms)`);
console.log(`Auto-renewing: ${autoRenewing}`);
// Check if subscription is valid (active, canceled but not expired, or in grace period)
const validStates = [
'SUBSCRIPTION_STATE_ACTIVE',
'SUBSCRIPTION_STATE_CANCELED', // still valid until expiry
'SUBSCRIPTION_STATE_IN_GRACE_PERIOD'
];