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 P, 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.cs.Ti || e === Card.cs.Ii) F = new ClassicCard(n, r, t, o, i, l, u, d, a, w, f, s, m, C, p, c); else if (e === Card.cs.os) F = new CaptionedImage(n, r, t, o, i, l, u, d, a, w, f, s, m, C, p, c); else if (e === Card.cs.ai) F = new ImageOnly(n, r, o, l, u, d, a, w, f, s, m, C, p, c); else { if (e !== Card.cs.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.ds], r = n[Card.ui.hs], t = n[Card.ui.ps], o = n[Card.ui.us], i = n[Card.ui.ls], l = n[Card.ui.fs], u = P(n[Card.ui.xs]), d = u; let a; a = n[Card.ui.js] === Card.oi ? null : P(n[Card.ui.js]); return newCard( e, r, t, o, i, l, d, u, null, a, n[Card.ui.URL], n[Card.ui.zs], n[Card.ui.ks], n[Card.ui.qs], n[Card.ui.vs], n[Card.ui.ws], n[Card.ui.ys], n[Card.ui.As] || !1, ); } export function newCardFromFeedJson(n) { return newCard( n.id, n.type, n.viewed, n.title, n.image, n.description, P(n.created), P(n.updated), n.categories, P(n.expires_at), n.url, n.domain, n.aspect_ratio, n.extras, !1, !1, ); } export function newCardFromSerializedValue(n) { return ( newCard( n[Card.es.ds], n[Card.es.hs], n[Card.es.ps], n[Card.es.us], n[Card.es.ls], n[Card.es.fs], V(n[Card.es.bs]), V(n[Card.es.xs]), n[Card.es.gs], V(n[Card.es.js]), n[Card.es.URL], n[Card.es.zs], n[Card.es.ks], n[Card.es.qs], n[Card.es.vs], n[Card.es.ws], n[Card.es.ys], n[Card.es.As] || !1, ) || void 0 ); }