UNPKG

@adapty/capacitor

Version:
75 lines 3.22 kB
var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; import { ProductReferenceCoder } from './product-reference'; import { ArrayCoder } from './array'; import { Coder } from './coder'; import { AdaptyRemoteConfigCoder } from './adapty-remote-config'; import { AdaptyPaywallBuilderCoder } from './adapty-paywall-builder'; import { AdaptyPlacementCoder } from './adapty-placement'; export class AdaptyPaywallCoder extends Coder { constructor() { super(...arguments); this.properties = { placement: { key: 'placement', required: true, type: 'object', converter: new AdaptyPlacementCoder(), }, id: { key: 'paywall_id', required: true, type: 'string' }, name: { key: 'paywall_name', required: true, type: 'string' }, products: { key: 'products', required: true, type: 'array', converter: new ArrayCoder(ProductReferenceCoder), }, remoteConfig: { key: 'remote_config', required: false, type: 'object', converter: new AdaptyRemoteConfigCoder(), }, variationId: { key: 'variation_id', required: true, type: 'string' }, version: { key: 'response_created_at', required: false, type: 'number' }, paywallBuilder: { key: 'paywall_builder', required: false, type: 'object', converter: new AdaptyPaywallBuilderCoder(), }, webPurchaseUrl: { key: 'web_purchase_url', required: false, type: 'string', }, payloadData: { key: 'payload_data', required: false, type: 'string' }, requestLocale: { key: 'request_locale', required: true, type: 'string' }, }; } decode(data) { const codablePart = super.decode(data); return Object.assign(Object.assign({}, codablePart), { hasViewConfiguration: codablePart.paywallBuilder !== undefined, productIdentifiers: codablePart.products.map(product => { var _a; return ({ vendorProductId: product.vendorId, adaptyProductId: product.adaptyId, basePlanId: (_a = product.android) === null || _a === void 0 ? void 0 : _a.basePlanId, }); }) }); } encode(data) { const { hasViewConfiguration, productIdentifiers } = data, codablePart = __rest(data, ["hasViewConfiguration", "productIdentifiers"]); return super.encode(codablePart); } } //# sourceMappingURL=adapty-paywall.js.map