UNPKG

@braze/web-sdk

Version:

Braze SDK for web sites and other JS platforms.

105 lines (104 loc) 2.23 kB
import { Card, CaptionedImage, ClassicCard, ControlCard, ImageOnly, } from "../index.js"; import { dateFromUnixTimestamp as O, rehydrateDateAfterJsonization as V, } from "../../util/date-utils.js"; import { logger as N } from "../../../shared-lib/index.js"; export function newCard(n, e, r, t, o, i, l, u, d, a, w, f, s, m, C, p, c, x) { let F; if (e === Card.ds.Ti || e === Card.ds.Ii) F = new ClassicCard(n, r, t, o, i, l, u, d, a, w, f, s, m, C, p, c); else if (e === Card.ds.cs) F = new CaptionedImage(n, r, t, o, i, l, u, d, a, w, f, s, m, C, p, c); else if (e === Card.ds.ai) F = new ImageOnly(n, r, o, l, u, d, a, w, f, s, m, C, p, c); else { if (e !== Card.ds.ci) return N.error("Ignoring card with unknown type " + e), null; F = new ControlCard(n, r, u, a, m, C); } return x && (F.test = x), F; } export function newCardFromContentCardsJson(n) { if (n[Card.ui.Ei]) return null; const e = n[Card.ui.ps], r = n[Card.ui.hs], t = n[Card.ui.us], o = n[Card.ui.ls], i = n[Card.ui.fs], l = n[Card.ui.xs], u = O(n[Card.ui.bs]), d = u; let a; a = n[Card.ui.zs] === Card.oi ? null : O(n[Card.ui.zs]); return newCard( e, r, t, o, i, l, d, u, null, a, n[Card.ui.URL], n[Card.ui.ks], n[Card.ui.qs], n[Card.ui.vs], n[Card.ui.ws], n[Card.ui.ys], n[Card.ui.As], n[Card.ui.Bs] || !1, ); } export function newCardFromFeedJson(n) { return newCard( n.id, n.type, n.viewed, n.title, n.image, n.description, O(n.created), O(n.updated), n.categories, O(n.expires_at), n.url, n.domain, n.aspect_ratio, n.extras, !1, !1, ); } export function newCardFromSerializedValue(n) { return ( newCard( n[Card.es.ps], n[Card.es.hs], n[Card.es.us], n[Card.es.ls], n[Card.es.fs], n[Card.es.xs], V(n[Card.es.gs]), V(n[Card.es.bs]), n[Card.es.js], V(n[Card.es.zs]), n[Card.es.URL], n[Card.es.ks], n[Card.es.qs], n[Card.es.vs], n[Card.es.ws], n[Card.es.ys], n[Card.es.As], n[Card.es.Bs] || !1, ) || void 0 ); }