@braze/web-sdk 4.3.0 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/index.d.ts +68 -6
  2. package/package.json +1 -1
  3. package/shared-lib/braze-shared-lib.js +8 -1
  4. package/shared-lib/encoding-utils.js +12 -1
  5. package/shared-lib/event-types.js +32 -1
  6. package/shared-lib/guid.js +10 -1
  7. package/shared-lib/indexed-db-adapter.js +315 -1
  8. package/shared-lib/logger.js +38 -1
  9. package/shared-lib/supported-options.js +26 -1
  10. package/src/Card/card-manager-factory.js +14 -1
  11. package/src/Card/card-manager.js +72 -1
  12. package/src/Card/display/card-display.js +134 -1
  13. package/src/Card/index.js +5 -1
  14. package/src/Card/log-card-click.js +11 -1
  15. package/src/Card/log-card-dismissal.js +11 -1
  16. package/src/Card/log-card-impressions.js +13 -1
  17. package/src/Card/log-content-card-impressions.js +4 -1
  18. package/src/Card/models/banner.js +30 -1
  19. package/src/Card/models/captioned-image.js +32 -1
  20. package/src/Card/models/card.js +175 -1
  21. package/src/Card/models/classic-card.js +32 -1
  22. package/src/Card/models/control-card.js +39 -1
  23. package/src/Card/models/index.js +5 -1
  24. package/src/Card/util/card-factory.js +104 -1
  25. package/src/ContentCards/content-cards-provider-factory.js +20 -1
  26. package/src/ContentCards/content-cards-provider.js +283 -1
  27. package/src/ContentCards/content-cards.js +24 -1
  28. package/src/ContentCards/get-cached-content-cards.js +5 -1
  29. package/src/ContentCards/index.js +8 -1
  30. package/src/ContentCards/log-content-cards-displayed.js +5 -1
  31. package/src/ContentCards/request-content-cards-refresh.js +5 -1
  32. package/src/ContentCards/subscribe-to-content-cards-updates.js +14 -1
  33. package/src/ContentCards/ui/hide-content-cards.js +8 -1
  34. package/src/ContentCards/ui/show-content-cards.js +72 -1
  35. package/src/ContentCards/ui/toggle-content-cards.js +8 -1
  36. package/src/Core/add-sdk-metadata.js +27 -1
  37. package/src/Core/braze-sdk-metadata.js +10 -1
  38. package/src/Core/change-user.js +19 -1
  39. package/src/Core/destroy.js +5 -1
  40. package/src/Core/device-properties.js +9 -1
  41. package/src/Core/disable-sdk.js +10 -1
  42. package/src/Core/enable-sdk.js +8 -1
  43. package/src/Core/get-device-id.js +10 -1
  44. package/src/Core/get-user.js +4 -1
  45. package/src/Core/handle-braze-action.js +64 -1
  46. package/src/Core/index.js +23 -1
  47. package/src/Core/initialize.js +4 -1
  48. package/src/Core/is-disabled.js +4 -1
  49. package/src/Core/log-custom-event.js +36 -1
  50. package/src/Core/log-purchase.js +245 -1
  51. package/src/Core/open-session.js +23 -1
  52. package/src/Core/remove-all-subscriptions.js +4 -1
  53. package/src/Core/remove-subscription.js +4 -1
  54. package/src/Core/request-immediate-data-flush.js +4 -1
  55. package/src/Core/set-logger.js +4 -1
  56. package/src/Core/set-sdk-authentication-signature.js +9 -1
  57. package/src/Core/subscribe-to-sdk-authentication-failures.js +4 -1
  58. package/src/Core/toggle-logging.js +4 -1
  59. package/src/Core/wipe-data.js +15 -1
  60. package/src/FeatureFlags/feature-flag-factory.js +14 -0
  61. package/src/FeatureFlags/feature-flag.js +16 -0
  62. package/src/FeatureFlags/feature-flags-provider-factory.js +19 -0
  63. package/src/FeatureFlags/feature-flags-provider.js +94 -0
  64. package/src/FeatureFlags/get-all-feature-flags.js +12 -0
  65. package/src/FeatureFlags/get-feature-flag.js +12 -0
  66. package/src/FeatureFlags/index.js +4 -0
  67. package/src/FeatureFlags/refresh-feature-flags.js +9 -0
  68. package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +6 -0
  69. package/src/Feed/feed-provider-factory.js +18 -1
  70. package/src/Feed/feed-provider.js +79 -1
  71. package/src/Feed/feed.js +20 -1
  72. package/src/Feed/get-cached-feed.js +5 -1
  73. package/src/Feed/index.js +8 -1
  74. package/src/Feed/log-feed-displayed.js +5 -1
  75. package/src/Feed/request-feed-refresh.js +5 -1
  76. package/src/Feed/subscribe-to-feed-updates.js +5 -1
  77. package/src/Feed/ui/hide-feed.js +7 -1
  78. package/src/Feed/ui/show-feed.js +89 -1
  79. package/src/Feed/ui/toggle-feed.js +8 -1
  80. package/src/InAppMessage/display/get-animation-effect.js +19 -1
  81. package/src/InAppMessage/display/html-message-to-html.js +223 -1
  82. package/src/InAppMessage/display/in-app-message-to-html.js +152 -1
  83. package/src/InAppMessage/display/modal-utils.js +68 -1
  84. package/src/InAppMessage/in-app-message-factory.js +145 -1
  85. package/src/InAppMessage/in-app-message-manager-factory.js +16 -1
  86. package/src/InAppMessage/in-app-message-manager.js +189 -1
  87. package/src/InAppMessage/index.js +14 -1
  88. package/src/InAppMessage/log-in-app-message-button-click.js +19 -1
  89. package/src/InAppMessage/log-in-app-message-click.js +19 -1
  90. package/src/InAppMessage/log-in-app-message-html-click.js +23 -1
  91. package/src/InAppMessage/log-in-app-message-impression.js +13 -1
  92. package/src/InAppMessage/models/control-message.js +8 -1
  93. package/src/InAppMessage/models/full-screen-message.js +71 -1
  94. package/src/InAppMessage/models/html-message.js +54 -1
  95. package/src/InAppMessage/models/in-app-message-button.js +40 -1
  96. package/src/InAppMessage/models/in-app-message.js +271 -1
  97. package/src/InAppMessage/models/modal-message.js +68 -1
  98. package/src/InAppMessage/models/slide-up-message.js +58 -1
  99. package/src/InAppMessage/models/templated-in-app-message.js +14 -1
  100. package/src/InAppMessage/subscribe-to-in-app-message.js +10 -1
  101. package/src/InAppMessage/ui/automatically-show-in-app-messages.js +15 -1
  102. package/src/InAppMessage/ui/show-in-app-message.js +170 -1
  103. package/src/Push/index.js +5 -1
  104. package/src/Push/is-push-blocked.js +5 -1
  105. package/src/Push/is-push-permission-granted.js +5 -1
  106. package/src/Push/is-push-supported.js +5 -1
  107. package/src/Push/push-manager-factory.js +30 -1
  108. package/src/Push/push-manager.js +360 -1
  109. package/src/Push/request-push-permission.js +8 -1
  110. package/src/Push/unregister-push.js +5 -1
  111. package/src/Push/utils/push-utils.js +34 -1
  112. package/src/User/index.js +1 -1
  113. package/src/User/user-manager.js +70 -1
  114. package/src/User/user.js +278 -1
  115. package/src/common/base-feed.js +25 -1
  116. package/src/common/base-provider.js +6 -1
  117. package/src/common/constants.js +5 -1
  118. package/src/common/event-logger.js +24 -1
  119. package/src/common/feed-display.js +200 -1
  120. package/src/common/translations.js +148 -1
  121. package/src/index.js +9 -1
  122. package/src/l10n/l10n-manager-factory.js +22 -1
  123. package/src/l10n/l10n-manager.js +21 -1
  124. package/src/managers/auth-manager.js +48 -1
  125. package/src/managers/braze-instance.js +307 -1
  126. package/src/managers/device-manager.js +80 -1
  127. package/src/managers/network-manager.js +219 -1
  128. package/src/managers/server-config-manager.js +88 -1
  129. package/src/managers/session-manager.js +68 -1
  130. package/src/managers/storage-manager-factory.js +35 -1
  131. package/src/managers/storage-manager.js +394 -1
  132. package/src/managers/subscription-manager.js +25 -1
  133. package/src/models/backend-errors.js +8 -1
  134. package/src/models/braze-event.js +41 -1
  135. package/src/models/braze-sdk-metadata.js +10 -1
  136. package/src/models/device.js +26 -1
  137. package/src/models/identifier.js +20 -1
  138. package/src/models/push-token.js +22 -1
  139. package/src/models/request-result.js +8 -1
  140. package/src/models/server-config.js +32 -1
  141. package/src/request-controller.js +288 -1
  142. package/src/triggers/models/custom-event-data.js +14 -1
  143. package/src/triggers/models/custom-event-property-data.js +21 -1
  144. package/src/triggers/models/filter-set.js +55 -1
  145. package/src/triggers/models/filter.js +98 -1
  146. package/src/triggers/models/in-app-message-click-data.js +25 -1
  147. package/src/triggers/models/purchase-data.js +14 -1
  148. package/src/triggers/models/purchase-property-data.js +21 -1
  149. package/src/triggers/models/push-click-data.js +15 -1
  150. package/src/triggers/models/trigger-condition.js +109 -1
  151. package/src/triggers/models/trigger-events.js +8 -1
  152. package/src/triggers/models/trigger.js +110 -1
  153. package/src/triggers/triggers-provider-factory.js +30 -1
  154. package/src/triggers/triggers-provider.js +307 -1
  155. package/src/ui/js/attach-css.js +12 -1
  156. package/src/ui/js/feed-css.js +12 -1
  157. package/src/ui/js/iam-css.js +12 -1
  158. package/src/ui/js/index.js +3 -1
  159. package/src/ui/js/load-font-awesome.js +13 -1
  160. package/src/util/base-device-parser.js +14 -1
  161. package/src/util/braze-actions.js +79 -1
  162. package/src/util/browser-detector.js +85 -1
  163. package/src/util/client-hints-parser.js +60 -1
  164. package/src/util/code-utils.js +92 -1
  165. package/src/util/color-utils.js +23 -1
  166. package/src/util/component-utils.js +26 -1
  167. package/src/util/date-utils.js +27 -1
  168. package/src/util/deprecation-utils.js +5 -1
  169. package/src/util/device-constants.js +14 -1
  170. package/src/util/dom-utils.js +87 -1
  171. package/src/util/key-codes.js +1 -1
  172. package/src/util/math.js +5 -1
  173. package/src/util/net.js +75 -1
  174. package/src/util/string-utils.js +22 -1
  175. package/src/util/url-utils.js +23 -1
  176. package/src/util/user-agent-parser.js +85 -1
  177. package/src/util/validation-utils.js +136 -1
  178. package/src/util/window-utils.js +35 -1
@@ -1 +1,72 @@
1
- import{ControlCard}from"./models/index.js";import s from"../common/event-logger.js";import t from"../models/request-result.js";import r from"../../shared-lib/braze-shared-lib.js";import{STORAGE_KEYS as o}from"../managers/storage-manager.js";export default class a{constructor(s,t,r){this.h=s,this.j=t,this.v=r}C(n,i){const e=new t;if(n.k(),null==n.url||""===n.url)return r.D.info(`Card ${n.id} has no url. Not logging click to Braze servers.`),e;if(i){const s=this.h.I(o.q.$)||{};s[n.id]=!0,this.h.B(o.q.$,s)}const l=this.N([n]);if(null==l)return e;const u=i?r.A._:r.A.F;return s.G(u,l)}H(n){const i=new t;if(!n.J())return r.D.info(`Card ${n.id} refused this dismissal. Ignoring analytics event.`),i;const e=this.h.I(o.q.K)||{};e[n.id]=!0,this.h.B(o.q.K,e);const l=this.N([n]);return null==l?i:s.G(r.A.L,l)}M(n,i){const e=new t(!0),l=[],u=[];let a;a=i?this.h.I(o.q.O)||{}:this.h.I(o.q.P)||{};for(const s of n)s.R(),s instanceof ControlCard?u.push(s):l.push(s),a[s.id]=!0;const c=this.N(l),h=this.N(u);if(null==c&&null==h)return e.S=!1,e;if(i?this.h.B(o.q.O,a):this.h.B(o.q.P,a),null!=c){const t=i?r.A.T:r.A.U,n=s.G(t,c);e.V(n)}if(null!=h&&i){const t=s.G(r.A.W,h);e.V(t)}return e}N(s){let t=null;for(let r=0;r<s.length;r++)null!=s[r].id&&""!==s[r].id&&(t=t||{},t.ids=t.ids||[],t.ids.push(s[r].id));return t}}
1
+ import { ControlCard } from "./models/index.js";
2
+ import s from "../common/event-logger.js";
3
+ import t from "../models/request-result.js";
4
+ import r from "../../shared-lib/braze-shared-lib.js";
5
+ import { STORAGE_KEYS as o } from "../managers/storage-manager.js";
6
+ export default class a {
7
+ constructor(s, t, r) {
8
+ (this.h = s), (this.j = t), (this.v = r);
9
+ }
10
+ C(n, i) {
11
+ const e = new t();
12
+ if ((n.k(), null == n.url || "" === n.url))
13
+ return (
14
+ r.D.info(
15
+ `Card ${n.id} has no url. Not logging click to Braze servers.`
16
+ ),
17
+ e
18
+ );
19
+ if (i) {
20
+ const s = this.h.I(o.q.$) || {};
21
+ (s[n.id] = !0), this.h.B(o.q.$, s);
22
+ }
23
+ const l = this.N([n]);
24
+ if (null == l) return e;
25
+ const u = i ? r.A._ : r.A.F;
26
+ return s.G(u, l);
27
+ }
28
+ H(n) {
29
+ const i = new t();
30
+ if (!n.J())
31
+ return (
32
+ r.D.info(
33
+ `Card ${n.id} refused this dismissal. Ignoring analytics event.`
34
+ ),
35
+ i
36
+ );
37
+ const e = this.h.I(o.q.K) || {};
38
+ (e[n.id] = !0), this.h.B(o.q.K, e);
39
+ const l = this.N([n]);
40
+ return null == l ? i : s.G(r.A.L, l);
41
+ }
42
+ M(n, i) {
43
+ const e = new t(!0),
44
+ l = [],
45
+ u = [];
46
+ let a;
47
+ a = i ? this.h.I(o.q.O) || {} : this.h.I(o.q.P) || {};
48
+ for (const s of n)
49
+ s.R(), s instanceof ControlCard ? u.push(s) : l.push(s), (a[s.id] = !0);
50
+ const c = this.N(l),
51
+ h = this.N(u);
52
+ if (null == c && null == h) return (e.S = !1), e;
53
+ if ((i ? this.h.B(o.q.O, a) : this.h.B(o.q.P, a), null != c)) {
54
+ const t = i ? r.A.T : r.A.U,
55
+ n = s.G(t, c);
56
+ e.V(n);
57
+ }
58
+ if (null != h && i) {
59
+ const t = s.G(r.A.W, h);
60
+ e.V(t);
61
+ }
62
+ return e;
63
+ }
64
+ N(s) {
65
+ let t = null;
66
+ for (let r = 0; r < s.length; r++)
67
+ null != s[r].id &&
68
+ "" !== s[r].id &&
69
+ ((t = t || {}), (t.ids = t.ids || []), t.ids.push(s[r].id));
70
+ return t;
71
+ }
72
+ }
@@ -1 +1,134 @@
1
- import{createCloseButton as i}from"../../util/component-utils.js";import{detectSwipe as d,DIRECTIONS as c}from"../../util/dom-utils.js";import{_handleBrazeAction as m}from"../../Core/handle-braze-action.js";import{logCardDismissal}from"../index.js";import r from"../../../shared-lib/braze-shared-lib.js";export const TOP_IMPRESSION_DATA_ATTRIBUTE="data-ab-had-top-impression";export const BOTTOM_IMPRESSION_DATA_ATTRIBUTE="data-ab-had-bottom-impression";export function topHadImpression(t){return null!=t&&!!t.getAttribute("data-ab-had-top-impression")}export function impressOnTop(t){null!=t&&t.setAttribute("data-ab-had-top-impression",!0)}export function bottomHadImpression(t){return null!=t&&!!t.getAttribute("data-ab-had-bottom-impression")}export function impressOnBottom(t){null!=t&&t.setAttribute("data-ab-had-bottom-impression",!0)}export function markCardAsRead(t){if(null!=t){const o=t.querySelectorAll(".ab-unread-indicator")[0];null!=o&&(o.className+=" read")}}export function getCardId(t){return t.getAttribute("data-ab-card-id")}export function _setImageAltText(t,o){let a="";t.title||t.description||(a="Feed Image"),o.setAttribute("alt",a)}export function setCardHeight(t,o){const a=o.querySelectorAll(".ab-image-area");let e,n=0;a.length>0&&(n=a[0].offsetWidth);for(const o of t)if(e=o.X,e&&o.imageUrl&&!isNaN(o.aspectRatio)){const t=n/o.aspectRatio;t&&(e.style.height=`${t}px`)}}export function cardToHtml(t,logCardClick,o){const a=document.createElement("div");a.className="ab-card ab-effect-card "+t.Y,a.setAttribute("data-ab-card-id",t.id),a.setAttribute("role","article"),a.setAttribute("tabindex","0");const e=t.url&&""!==t.url,n=n=>(markCardAsRead(a),e&&(logCardClick(t),m(t.url,n,o)),!1);if(t.pinned){const t=document.createElement("div");t.className="ab-pinned-indicator";const o=document.createElement("i");o.className="fa fa-star",t.appendChild(o),a.appendChild(t)}if(t.imageUrl&&""!==t.imageUrl){const o=document.createElement("div");o.className="ab-image-area";const i=document.createElement("img");if(i.setAttribute("src",t.imageUrl),i.onload=()=>{a.style.height="auto"},_setImageAltText(t,i),o.appendChild(i),a.className+=" with-image",e&&!t.Z){const e=document.createElement("a");e.setAttribute("href",t.url),e.onclick=n,e.appendChild(o),a.appendChild(e)}else a.appendChild(o)}const s=document.createElement("div");if(s.className="ab-card-body",t.dismissible){t.tt=()=>logCardDismissal(t);const o=i("Dismiss Card",void 0,t.dismissCard.bind(t));a.appendChild(o),d(s,c.ot,(t=>{a.className+=" ab-swiped-left",o.onclick(t)})),d(s,c.et,(t=>{a.className+=" ab-swiped-right",o.onclick(t)}))}const u=t.title&&""!==t.title;if(u){const o=document.createElement("h1");if(o.className="ab-title",o.id=r.it.nt(),a.setAttribute("aria-labelledby",o.id),e){const a=document.createElement("a");a.setAttribute("href",t.url),a.onclick=n,a.appendChild(document.createTextNode(t.title)),o.appendChild(a)}else o.appendChild(document.createTextNode(t.title));s.appendChild(o)}const p=document.createElement("div");if(p.className=u?"ab-description":"ab-description ab-no-title",p.id=r.it.nt(),a.setAttribute("aria-describedby",p.id),p.appendChild(document.createTextNode(t.description)),e){const o=document.createElement("div");o.className="ab-url-area";const a=document.createElement("a");a.setAttribute("href",t.url),a.appendChild(document.createTextNode(t.linkText)),a.onclick=n,o.appendChild(a),p.appendChild(o)}s.appendChild(p),a.appendChild(s);const b=document.createElement("div");return b.className="ab-unread-indicator",t.viewed&&(b.className+=" read"),a.appendChild(b),t.X=a,a}
1
+ import { createCloseButton as i } from "../../util/component-utils.js";
2
+ import { detectSwipe as d, DIRECTIONS as c } from "../../util/dom-utils.js";
3
+ import { _handleBrazeAction as m } from "../../Core/handle-braze-action.js";
4
+ import { logCardDismissal } from "../index.js";
5
+ import r from "../../../shared-lib/braze-shared-lib.js";
6
+ export const TOP_IMPRESSION_DATA_ATTRIBUTE = "data-ab-had-top-impression";
7
+ export const BOTTOM_IMPRESSION_DATA_ATTRIBUTE = "data-ab-had-bottom-impression";
8
+ export function topHadImpression(t) {
9
+ return null != t && !!t.getAttribute("data-ab-had-top-impression");
10
+ }
11
+ export function impressOnTop(t) {
12
+ null != t && t.setAttribute("data-ab-had-top-impression", !0);
13
+ }
14
+ export function bottomHadImpression(t) {
15
+ return null != t && !!t.getAttribute("data-ab-had-bottom-impression");
16
+ }
17
+ export function impressOnBottom(t) {
18
+ null != t && t.setAttribute("data-ab-had-bottom-impression", !0);
19
+ }
20
+ export function markCardAsRead(t) {
21
+ if (null != t) {
22
+ const o = t.querySelectorAll(".ab-unread-indicator")[0];
23
+ null != o && (o.className += " read");
24
+ }
25
+ }
26
+ export function getCardId(t) {
27
+ return t.getAttribute("data-ab-card-id");
28
+ }
29
+ export function _setImageAltText(t, o) {
30
+ let a = "";
31
+ t.title || t.description || (a = "Feed Image"), o.setAttribute("alt", a);
32
+ }
33
+ export function setCardHeight(t, o) {
34
+ const a = o.querySelectorAll(".ab-image-area");
35
+ let e,
36
+ n = 0;
37
+ a.length > 0 && (n = a[0].offsetWidth);
38
+ for (const o of t)
39
+ if (((e = o.X), e && o.imageUrl && !isNaN(o.aspectRatio))) {
40
+ const t = n / o.aspectRatio;
41
+ t && (e.style.height = `${t}px`);
42
+ }
43
+ }
44
+ export function cardToHtml(t, logCardClick, o) {
45
+ const a = document.createElement("div");
46
+ (a.className = "ab-card ab-effect-card " + t.Y),
47
+ a.setAttribute("data-ab-card-id", t.id),
48
+ a.setAttribute("role", "article"),
49
+ a.setAttribute("tabindex", "0");
50
+ const e = t.url && "" !== t.url,
51
+ n = n => (markCardAsRead(a), e && (logCardClick(t), m(t.url, n, o)), !1);
52
+ if (t.pinned) {
53
+ const t = document.createElement("div");
54
+ t.className = "ab-pinned-indicator";
55
+ const o = document.createElement("i");
56
+ (o.className = "fa fa-star"), t.appendChild(o), a.appendChild(t);
57
+ }
58
+ if (t.imageUrl && "" !== t.imageUrl) {
59
+ const o = document.createElement("div");
60
+ o.className = "ab-image-area";
61
+ const i = document.createElement("img");
62
+ if (
63
+ (i.setAttribute("src", t.imageUrl),
64
+ (i.onload = () => {
65
+ a.style.height = "auto";
66
+ }),
67
+ _setImageAltText(t, i),
68
+ o.appendChild(i),
69
+ (a.className += " with-image"),
70
+ e && !t.Z)
71
+ ) {
72
+ const e = document.createElement("a");
73
+ e.setAttribute("href", t.url),
74
+ (e.onclick = n),
75
+ e.appendChild(o),
76
+ a.appendChild(e);
77
+ } else a.appendChild(o);
78
+ }
79
+ const s = document.createElement("div");
80
+ if (((s.className = "ab-card-body"), t.dismissible)) {
81
+ t.tt = () => logCardDismissal(t);
82
+ const o = i("Dismiss Card", void 0, t.dismissCard.bind(t));
83
+ a.appendChild(o),
84
+ d(s, c.ot, t => {
85
+ (a.className += " ab-swiped-left"), o.onclick(t);
86
+ }),
87
+ d(s, c.et, t => {
88
+ (a.className += " ab-swiped-right"), o.onclick(t);
89
+ });
90
+ }
91
+ const u = t.title && "" !== t.title;
92
+ if (u) {
93
+ const o = document.createElement("h1");
94
+ if (
95
+ ((o.className = "ab-title"),
96
+ (o.id = r.it.nt()),
97
+ a.setAttribute("aria-labelledby", o.id),
98
+ e)
99
+ ) {
100
+ const a = document.createElement("a");
101
+ a.setAttribute("href", t.url),
102
+ (a.onclick = n),
103
+ a.appendChild(document.createTextNode(t.title)),
104
+ o.appendChild(a);
105
+ } else o.appendChild(document.createTextNode(t.title));
106
+ s.appendChild(o);
107
+ }
108
+ const p = document.createElement("div");
109
+ if (
110
+ ((p.className = u ? "ab-description" : "ab-description ab-no-title"),
111
+ (p.id = r.it.nt()),
112
+ a.setAttribute("aria-describedby", p.id),
113
+ p.appendChild(document.createTextNode(t.description)),
114
+ e)
115
+ ) {
116
+ const o = document.createElement("div");
117
+ o.className = "ab-url-area";
118
+ const a = document.createElement("a");
119
+ a.setAttribute("href", t.url),
120
+ a.appendChild(document.createTextNode(t.linkText)),
121
+ (a.onclick = n),
122
+ o.appendChild(a),
123
+ p.appendChild(o);
124
+ }
125
+ s.appendChild(p), a.appendChild(s);
126
+ const b = document.createElement("div");
127
+ return (
128
+ (b.className = "ab-unread-indicator"),
129
+ t.viewed && (b.className += " read"),
130
+ a.appendChild(b),
131
+ (t.X = a),
132
+ a
133
+ );
134
+ }
package/src/Card/index.js CHANGED
@@ -1 +1,5 @@
1
- export*from"./models/index.js";export{logCardClick}from"./log-card-click.js";export{logCardDismissal}from"./log-card-dismissal.js";export{logCardImpressions}from"./log-card-impressions.js";export{logContentCardImpressions}from"./log-content-card-impressions.js";
1
+ export * from "./models/index.js";
2
+ export { logCardClick } from "./log-card-click.js";
3
+ export { logCardDismissal } from "./log-card-dismissal.js";
4
+ export { logCardImpressions } from "./log-card-impressions.js";
5
+ export { logContentCardImpressions } from "./log-content-card-impressions.js";
@@ -1 +1,11 @@
1
- import{Card}from"./models/index.js";import n from"./card-manager-factory.js";import{MUST_BE_CARD_WARNING_SUFFIX as f}from"../common/constants.js";import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";export function logCardClick(o,a){return!!e.rr()&&(o instanceof Card?n.m().C(o,a).S:(r.D.error("card "+f),!1))}
1
+ import { Card } from "./models/index.js";
2
+ import n from "./card-manager-factory.js";
3
+ import { MUST_BE_CARD_WARNING_SUFFIX as f } from "../common/constants.js";
4
+ import e from "../managers/braze-instance.js";
5
+ import r from "../../shared-lib/braze-shared-lib.js";
6
+ export function logCardClick(o, a) {
7
+ return (
8
+ !!e.rr() &&
9
+ (o instanceof Card ? n.m().C(o, a).S : (r.D.error("card " + f), !1))
10
+ );
11
+ }
@@ -1 +1,11 @@
1
- import{Card}from"./models/index.js";import n from"./card-manager-factory.js";import{MUST_BE_CARD_WARNING_SUFFIX as f}from"../common/constants.js";import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";export function logCardDismissal(o){return!!e.rr()&&(o instanceof Card?n.m().H(o).S:(r.D.error("card "+f),!1))}
1
+ import { Card } from "./models/index.js";
2
+ import n from "./card-manager-factory.js";
3
+ import { MUST_BE_CARD_WARNING_SUFFIX as f } from "../common/constants.js";
4
+ import e from "../managers/braze-instance.js";
5
+ import r from "../../shared-lib/braze-shared-lib.js";
6
+ export function logCardDismissal(o) {
7
+ return (
8
+ !!e.rr() &&
9
+ (o instanceof Card ? n.m().H(o).S : (r.D.error("card " + f), !1))
10
+ );
11
+ }
@@ -1 +1,13 @@
1
- import{Card}from"./models/index.js";import n from"./card-manager-factory.js";import e from"../managers/braze-instance.js";import{isArray as p}from"../util/code-utils.js";import{MUST_BE_CARD_WARNING_SUFFIX as f}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";export function logCardImpressions(o,s){if(!e.rr())return!1;if(!p(o))return r.D.error("cards must be an array"),!1;for(const s of o)if(!(s instanceof Card))return r.D.error(`Each card in cards ${f}`),!1;return n.m().M(o,s).S}
1
+ import { Card } from "./models/index.js";
2
+ import n from "./card-manager-factory.js";
3
+ import e from "../managers/braze-instance.js";
4
+ import { isArray as p } from "../util/code-utils.js";
5
+ import { MUST_BE_CARD_WARNING_SUFFIX as f } from "../common/constants.js";
6
+ import r from "../../shared-lib/braze-shared-lib.js";
7
+ export function logCardImpressions(o, s) {
8
+ if (!e.rr()) return !1;
9
+ if (!p(o)) return r.D.error("cards must be an array"), !1;
10
+ for (const s of o)
11
+ if (!(s instanceof Card)) return r.D.error(`Each card in cards ${f}`), !1;
12
+ return n.m().M(o, s).S;
13
+ }
@@ -1 +1,4 @@
1
- import{logCardImpressions}from"./log-card-impressions.js";export function logContentCardImpressions(o){return logCardImpressions(o,!0)}
1
+ import { logCardImpressions } from "./log-card-impressions.js";
2
+ export function logContentCardImpressions(o) {
3
+ return logCardImpressions(o, !0);
4
+ }
@@ -1 +1,30 @@
1
- import Card from"./card.js";export default class Banner extends Card{constructor(s,t,i,h,r,e,n,l,a,o,u,c,d,p){super(s,t,null,i,null,h,r,e,n,l,a,o,u,c,d,p),this.Y="ab-banner",this.Z=!1}ss(){const s={};return s[Card.hs.ts]=Card.es.rs,s[Card.hs.ns]=this.id,s[Card.hs.ls]=this.viewed,s[Card.hs.os]=this.imageUrl,s[Card.hs.us]=this.updated,s[Card.hs.cs]=this.created,s[Card.hs.ds]=this.categories,s[Card.hs.ps]=this.expiresAt,s[Card.hs.URL]=this.url,s[Card.hs.bs]=this.linkText,s[Card.hs.fs]=this.aspectRatio,s[Card.hs.xs]=this.extras,s[Card.hs.js]=this.pinned,s[Card.hs.zs]=this.dismissible,s[Card.hs.gs]=this.clicked,s[Card.hs.ks]=this.test,s}}
1
+ import Card from "./card.js";
2
+ export default class Banner extends Card {
3
+ constructor(s, t, i, h, r, e, n, l, a, o, u, c, d, p) {
4
+ super(s, t, null, i, null, h, r, e, n, l, a, o, u, c, d, p),
5
+ (this.Y = "ab-banner"),
6
+ (this.Z = !1);
7
+ }
8
+ ss() {
9
+ const s = {};
10
+ return (
11
+ (s[Card.hs.ts] = Card.es.rs),
12
+ (s[Card.hs.ns] = this.id),
13
+ (s[Card.hs.ls] = this.viewed),
14
+ (s[Card.hs.os] = this.imageUrl),
15
+ (s[Card.hs.us] = this.updated),
16
+ (s[Card.hs.cs] = this.created),
17
+ (s[Card.hs.ds] = this.categories),
18
+ (s[Card.hs.ps] = this.expiresAt),
19
+ (s[Card.hs.URL] = this.url),
20
+ (s[Card.hs.bs] = this.linkText),
21
+ (s[Card.hs.fs] = this.aspectRatio),
22
+ (s[Card.hs.xs] = this.extras),
23
+ (s[Card.hs.js] = this.pinned),
24
+ (s[Card.hs.zs] = this.dismissible),
25
+ (s[Card.hs.gs] = this.clicked),
26
+ (s[Card.hs.ks] = this.test),
27
+ s
28
+ );
29
+ }
30
+ }
@@ -1 +1,32 @@
1
- import Card from"./card.js";export default class CaptionedImage extends Card{constructor(t,s,i,h,e,r,a,o,c,n,d,p,u,l,m,f){super(t,s,i,h,e,r,a,o,c,n,d,p,u,l,m,f),this.Y="ab-captioned-image",this.Z=!0}ss(){const t={};return t[Card.hs.ts]=Card.es.st,t[Card.hs.ns]=this.id,t[Card.hs.ls]=this.viewed,t[Card.hs.ht]=this.title,t[Card.hs.os]=this.imageUrl,t[Card.hs.rt]=this.description,t[Card.hs.us]=this.updated,t[Card.hs.cs]=this.created,t[Card.hs.ds]=this.categories,t[Card.hs.ps]=this.expiresAt,t[Card.hs.URL]=this.url,t[Card.hs.bs]=this.linkText,t[Card.hs.fs]=this.aspectRatio,t[Card.hs.xs]=this.extras,t[Card.hs.js]=this.pinned,t[Card.hs.zs]=this.dismissible,t[Card.hs.gs]=this.clicked,t[Card.hs.ks]=this.test,t}}
1
+ import Card from "./card.js";
2
+ export default class CaptionedImage extends Card {
3
+ constructor(t, s, i, h, e, r, a, o, c, n, d, p, u, l, m, f) {
4
+ super(t, s, i, h, e, r, a, o, c, n, d, p, u, l, m, f),
5
+ (this.Y = "ab-captioned-image"),
6
+ (this.Z = !0);
7
+ }
8
+ ss() {
9
+ const t = {};
10
+ return (
11
+ (t[Card.hs.ts] = Card.es.st),
12
+ (t[Card.hs.ns] = this.id),
13
+ (t[Card.hs.ls] = this.viewed),
14
+ (t[Card.hs.ht] = this.title),
15
+ (t[Card.hs.os] = this.imageUrl),
16
+ (t[Card.hs.rt] = this.description),
17
+ (t[Card.hs.us] = this.updated),
18
+ (t[Card.hs.cs] = this.created),
19
+ (t[Card.hs.ds] = this.categories),
20
+ (t[Card.hs.ps] = this.expiresAt),
21
+ (t[Card.hs.URL] = this.url),
22
+ (t[Card.hs.bs] = this.linkText),
23
+ (t[Card.hs.fs] = this.aspectRatio),
24
+ (t[Card.hs.xs] = this.extras),
25
+ (t[Card.hs.js] = this.pinned),
26
+ (t[Card.hs.zs] = this.dismissible),
27
+ (t[Card.hs.gs] = this.clicked),
28
+ (t[Card.hs.ks] = this.test),
29
+ t
30
+ );
31
+ }
32
+ }
@@ -1 +1,175 @@
1
- import{convertMsToSeconds as l,dateFromUnixTimestamp as h}from"../../util/date-utils.js";import{FEED_ANIMATION_DURATION as E}from"../../common/constants.js";import u from"../../managers/subscription-manager.js";export default class Card{constructor(t,i,s,n,l,h,e,r,E,u,T,o,I,a,N,S){this.id=t,this.viewed=i||!1,this.title=s||"",this.imageUrl=n,this.description=l||"",this.created=h||null,this.updated=e||null,this.categories=r||[],this.expiresAt=E||null,this.url=u,this.linkText=T,o=parseFloat(o),this.aspectRatio=isNaN(o)?null:o,this.extras=I,this.pinned=a||!1,this.dismissible=N||!1,this.dismissed=!1,this.clicked=S||!1,this.test=!1,this.lt=null,this.Et=null}subscribeToClickedEvent(t){return this.Tt().ut(t)}subscribeToDismissedEvent(t){return this.It().ut(t)}removeSubscription(t){this.Tt().removeSubscription(t),this.It().removeSubscription(t)}removeAllSubscriptions(){this.Tt().removeAllSubscriptions(),this.It().removeAllSubscriptions()}dismissCard(){if(this.dismissible&&!this.dismissed){this.tt&&this.tt(this);var t=this.X;t&&(t.style.height=t.offsetHeight+"px",t.className=t.className+" ab-hide",setTimeout((function(){t&&t.parentNode&&(t.style.height="0",t.style.margin="0",setTimeout((function(){t&&t.parentNode&&t.parentNode.removeChild(t)}),Card.Nt))}),E))}}Tt(){return null==this.lt&&(this.lt=new u),this.lt}It(){return null==this.Et&&(this.Et=new u),this.Et}R(){this.viewed=!0}k(){this.viewed=!0,this.clicked=!0,this.Tt().St()}J(){return!(!this.dismissible||this.dismissed)&&(this.dismissed=!0,this.It().St(),!0)}ct(t){if(null==t||t[Card.At.ns]!==this.id)return!0;if(t[Card.At.Dt])return!1;if(null!=t[Card.At.us]&&null!=this.updated&&t[Card.At.us]<l(this.updated.valueOf()))return!0;if(t[Card.At.ls]&&!this.viewed&&(this.viewed=!0),t[Card.At.gs]&&!this.clicked&&(this.clicked=t[Card.At.gs]),null!=t[Card.At.ht]&&(this.title=t[Card.At.ht]),null!=t[Card.At.os]&&(this.imageUrl=t[Card.At.os]),null!=t[Card.At.rt]&&(this.description=t[Card.At.rt]),null!=t[Card.At.us]){const i=h(t[Card.At.us]);null!=i&&(this.updated=i)}if(null!=t[Card.At.ps]){let i;i=t[Card.At.ps]===Card.Ct?null:h(t[Card.At.ps]),this.expiresAt=i}if(null!=t[Card.At.URL]&&(this.url=t[Card.At.URL]),null!=t[Card.At.bs]&&(this.linkText=t[Card.At.bs]),null!=t[Card.At.fs]){const i=parseFloat(t[Card.At.fs]);this.aspectRatio=isNaN(i)?null:i}return null!=t[Card.At.xs]&&(this.extras=t[Card.At.xs]),null!=t[Card.At.js]&&(this.pinned=t[Card.At.js]),null!=t[Card.At.zs]&&(this.dismissible=t[Card.At.zs]),null!=t[Card.At.ks]&&(this.test=t[Card.At.ks]),!0}}Card.Ct=-1,Card.es={st:"captioned_image",dt:"text_announcement",Rt:"short_news",rs:"banner_image",_t:"control"},Card.At={ns:"id",ls:"v",zs:"db",Dt:"r",us:"ca",js:"p",ps:"ea",xs:"e",ts:"tp",os:"i",ht:"tt",rt:"ds",URL:"u",bs:"dm",fs:"ar",gs:"cl",ks:"t"},Card.hs={ns:"id",ls:"v",zs:"db",cs:"cr",us:"ca",js:"p",ds:"t",ps:"ea",xs:"e",ts:"tp",os:"i",ht:"tt",rt:"ds",URL:"u",bs:"dm",fs:"ar",gs:"cl",ks:"s"},Card.Lt={Ot:"ADVERTISING",bt:"ANNOUNCEMENTS",ft:"NEWS",Pt:"SOCIAL"},Card.Nt=400;
1
+ import {
2
+ convertMsToSeconds as l,
3
+ dateFromUnixTimestamp as h
4
+ } from "../../util/date-utils.js";
5
+ import { FEED_ANIMATION_DURATION as E } from "../../common/constants.js";
6
+ import u from "../../managers/subscription-manager.js";
7
+ export default class Card {
8
+ constructor(t, i, s, n, l, h, e, r, E, u, T, o, I, a, N, S) {
9
+ (this.id = t),
10
+ (this.viewed = i || !1),
11
+ (this.title = s || ""),
12
+ (this.imageUrl = n),
13
+ (this.description = l || ""),
14
+ (this.created = h || null),
15
+ (this.updated = e || null),
16
+ (this.categories = r || []),
17
+ (this.expiresAt = E || null),
18
+ (this.url = u),
19
+ (this.linkText = T),
20
+ (o = parseFloat(o)),
21
+ (this.aspectRatio = isNaN(o) ? null : o),
22
+ (this.extras = I),
23
+ (this.pinned = a || !1),
24
+ (this.dismissible = N || !1),
25
+ (this.dismissed = !1),
26
+ (this.clicked = S || !1),
27
+ (this.isControl = !1),
28
+ (this.test = !1),
29
+ (this.lt = null),
30
+ (this.Et = null);
31
+ }
32
+ subscribeToClickedEvent(t) {
33
+ return this.Tt().ut(t);
34
+ }
35
+ subscribeToDismissedEvent(t) {
36
+ return this.It().ut(t);
37
+ }
38
+ removeSubscription(t) {
39
+ this.Tt().removeSubscription(t), this.It().removeSubscription(t);
40
+ }
41
+ removeAllSubscriptions() {
42
+ this.Tt().removeAllSubscriptions(), this.It().removeAllSubscriptions();
43
+ }
44
+ dismissCard() {
45
+ if (this.dismissible && !this.dismissed) {
46
+ this.tt && this.tt(this);
47
+ var t = this.X;
48
+ t &&
49
+ ((t.style.height = t.offsetHeight + "px"),
50
+ (t.className = t.className + " ab-hide"),
51
+ setTimeout(function() {
52
+ t &&
53
+ t.parentNode &&
54
+ ((t.style.height = "0"),
55
+ (t.style.margin = "0"),
56
+ setTimeout(function() {
57
+ t && t.parentNode && t.parentNode.removeChild(t);
58
+ }, Card.Nt));
59
+ }, E));
60
+ }
61
+ }
62
+ Tt() {
63
+ return null == this.lt && (this.lt = new u()), this.lt;
64
+ }
65
+ It() {
66
+ return null == this.Et && (this.Et = new u()), this.Et;
67
+ }
68
+ R() {
69
+ this.viewed = !0;
70
+ }
71
+ k() {
72
+ (this.viewed = !0), (this.clicked = !0), this.Tt().St();
73
+ }
74
+ J() {
75
+ return (
76
+ !(!this.dismissible || this.dismissed) &&
77
+ ((this.dismissed = !0), this.It().St(), !0)
78
+ );
79
+ }
80
+ ct(t) {
81
+ if (null == t || t[Card.At.ns] !== this.id) return !0;
82
+ if (t[Card.At.Dt]) return !1;
83
+ if (
84
+ null != t[Card.At.us] &&
85
+ null != this.updated &&
86
+ t[Card.At.us] < l(this.updated.valueOf())
87
+ )
88
+ return !0;
89
+ if (
90
+ (t[Card.At.ls] && !this.viewed && (this.viewed = !0),
91
+ t[Card.At.gs] && !this.clicked && (this.clicked = t[Card.At.gs]),
92
+ null != t[Card.At.ht] && (this.title = t[Card.At.ht]),
93
+ null != t[Card.At.os] && (this.imageUrl = t[Card.At.os]),
94
+ null != t[Card.At.rt] && (this.description = t[Card.At.rt]),
95
+ null != t[Card.At.us])
96
+ ) {
97
+ const i = h(t[Card.At.us]);
98
+ null != i && (this.updated = i);
99
+ }
100
+ if (null != t[Card.At.ps]) {
101
+ let i;
102
+ (i = t[Card.At.ps] === Card.Ct ? null : h(t[Card.At.ps])),
103
+ (this.expiresAt = i);
104
+ }
105
+ if (
106
+ (null != t[Card.At.URL] && (this.url = t[Card.At.URL]),
107
+ null != t[Card.At.bs] && (this.linkText = t[Card.At.bs]),
108
+ null != t[Card.At.fs])
109
+ ) {
110
+ const i = parseFloat(t[Card.At.fs]);
111
+ this.aspectRatio = isNaN(i) ? null : i;
112
+ }
113
+ return (
114
+ null != t[Card.At.xs] && (this.extras = t[Card.At.xs]),
115
+ null != t[Card.At.js] && (this.pinned = t[Card.At.js]),
116
+ null != t[Card.At.zs] && (this.dismissible = t[Card.At.zs]),
117
+ null != t[Card.At.ks] && (this.test = t[Card.At.ks]),
118
+ !0
119
+ );
120
+ }
121
+ }
122
+ (Card.Ct = -1),
123
+ (Card.es = {
124
+ st: "captioned_image",
125
+ dt: "text_announcement",
126
+ Rt: "short_news",
127
+ rs: "banner_image",
128
+ _t: "control"
129
+ }),
130
+ (Card.At = {
131
+ ns: "id",
132
+ ls: "v",
133
+ zs: "db",
134
+ Dt: "r",
135
+ us: "ca",
136
+ js: "p",
137
+ ps: "ea",
138
+ xs: "e",
139
+ ts: "tp",
140
+ os: "i",
141
+ ht: "tt",
142
+ rt: "ds",
143
+ URL: "u",
144
+ bs: "dm",
145
+ fs: "ar",
146
+ gs: "cl",
147
+ ks: "t"
148
+ }),
149
+ (Card.hs = {
150
+ ns: "id",
151
+ ls: "v",
152
+ zs: "db",
153
+ cs: "cr",
154
+ us: "ca",
155
+ js: "p",
156
+ ds: "t",
157
+ ps: "ea",
158
+ xs: "e",
159
+ ts: "tp",
160
+ os: "i",
161
+ ht: "tt",
162
+ rt: "ds",
163
+ URL: "u",
164
+ bs: "dm",
165
+ fs: "ar",
166
+ gs: "cl",
167
+ ks: "s"
168
+ }),
169
+ (Card.Lt = {
170
+ Ot: "ADVERTISING",
171
+ bt: "ANNOUNCEMENTS",
172
+ ft: "NEWS",
173
+ Pt: "SOCIAL"
174
+ }),
175
+ (Card.Nt = 400);
@@ -1 +1,32 @@
1
- import Card from"./card.js";export default class ClassicCard extends Card{constructor(s,t,i,h,r,c,e,a,o,d,l,n,u,p,f,m){super(s,t,i,h,r,c,e,a,o,d,l,n,u,p,f,m),this.Y="ab-classic-card",this.Z=!0}ss(){const s={};return s[Card.hs.ts]=Card.es.Rt,s[Card.hs.ns]=this.id,s[Card.hs.ls]=this.viewed,s[Card.hs.ht]=this.title,s[Card.hs.os]=this.imageUrl,s[Card.hs.rt]=this.description,s[Card.hs.us]=this.updated,s[Card.hs.cs]=this.created,s[Card.hs.ds]=this.categories,s[Card.hs.ps]=this.expiresAt,s[Card.hs.URL]=this.url,s[Card.hs.bs]=this.linkText,s[Card.hs.fs]=this.aspectRatio,s[Card.hs.xs]=this.extras,s[Card.hs.js]=this.pinned,s[Card.hs.zs]=this.dismissible,s[Card.hs.gs]=this.clicked,s[Card.hs.ks]=this.test,s}}
1
+ import Card from "./card.js";
2
+ export default class ClassicCard extends Card {
3
+ constructor(s, t, i, h, r, c, e, a, o, d, l, n, u, p, f, m) {
4
+ super(s, t, i, h, r, c, e, a, o, d, l, n, u, p, f, m),
5
+ (this.Y = "ab-classic-card"),
6
+ (this.Z = !0);
7
+ }
8
+ ss() {
9
+ const s = {};
10
+ return (
11
+ (s[Card.hs.ts] = Card.es.Rt),
12
+ (s[Card.hs.ns] = this.id),
13
+ (s[Card.hs.ls] = this.viewed),
14
+ (s[Card.hs.ht] = this.title),
15
+ (s[Card.hs.os] = this.imageUrl),
16
+ (s[Card.hs.rt] = this.description),
17
+ (s[Card.hs.us] = this.updated),
18
+ (s[Card.hs.cs] = this.created),
19
+ (s[Card.hs.ds] = this.categories),
20
+ (s[Card.hs.ps] = this.expiresAt),
21
+ (s[Card.hs.URL] = this.url),
22
+ (s[Card.hs.bs] = this.linkText),
23
+ (s[Card.hs.fs] = this.aspectRatio),
24
+ (s[Card.hs.xs] = this.extras),
25
+ (s[Card.hs.js] = this.pinned),
26
+ (s[Card.hs.zs] = this.dismissible),
27
+ (s[Card.hs.gs] = this.clicked),
28
+ (s[Card.hs.ks] = this.test),
29
+ s
30
+ );
31
+ }
32
+ }
@@ -1 +1,39 @@
1
- import Card from"./card.js";export default class ControlCard extends Card{constructor(l,t,s,n,u,i){super(l,t,null,null,null,null,s,null,n,null,null,null,u,i,null),this.Y="ab-control-card",this.Z=!1}ss(){const l={};return l[Card.hs.ts]=Card.es._t,l[Card.hs.ns]=this.id,l[Card.hs.ls]=this.viewed,l[Card.hs.us]=this.updated,l[Card.hs.ps]=this.expiresAt,l[Card.hs.xs]=this.extras,l[Card.hs.js]=this.pinned,l[Card.hs.ks]=this.test,l}}
1
+ import Card from "./card.js";
2
+ export default class ControlCard extends Card {
3
+ constructor(l, t, s, n, i, u) {
4
+ super(
5
+ l,
6
+ t,
7
+ null,
8
+ null,
9
+ null,
10
+ null,
11
+ s,
12
+ null,
13
+ n,
14
+ null,
15
+ null,
16
+ null,
17
+ i,
18
+ u,
19
+ null
20
+ ),
21
+ (this.isControl = !0),
22
+ (this.Y = "ab-control-card"),
23
+ (this.Z = !1);
24
+ }
25
+ ss() {
26
+ const l = {};
27
+ return (
28
+ (l[Card.hs.ts] = Card.es._t),
29
+ (l[Card.hs.ns] = this.id),
30
+ (l[Card.hs.ls] = this.viewed),
31
+ (l[Card.hs.us] = this.updated),
32
+ (l[Card.hs.ps] = this.expiresAt),
33
+ (l[Card.hs.xs] = this.extras),
34
+ (l[Card.hs.js] = this.pinned),
35
+ (l[Card.hs.ks] = this.test),
36
+ l
37
+ );
38
+ }
39
+ }
@@ -1 +1,5 @@
1
- export{default as Card}from"./card.js";export{default as Banner}from"./banner.js";export{default as CaptionedImage}from"./captioned-image.js";export{default as ClassicCard}from"./classic-card.js";export{default as ControlCard}from"./control-card.js";
1
+ export { default as Card } from "./card.js";
2
+ export { default as Banner } from "./banner.js";
3
+ export { default as CaptionedImage } from "./captioned-image.js";
4
+ export { default as ClassicCard } from "./classic-card.js";
5
+ export { default as ControlCard } from "./control-card.js";