@braze/web-sdk 4.0.1 → 4.0.4

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 (96) hide show
  1. package/index.d.ts +2 -4
  2. package/package.json +1 -1
  3. package/shared-lib/braze-shared-lib.js +1 -1
  4. package/shared-lib/encoding-utils.js +1 -1
  5. package/shared-lib/event-types.js +1 -1
  6. package/shared-lib/guid.js +1 -1
  7. package/shared-lib/indexed-db-adapter.js +1 -1
  8. package/shared-lib/logger.js +1 -1
  9. package/shared-lib/supported-options.js +1 -1
  10. package/src/Card/util/card-factory.js +1 -1
  11. package/src/ContentCards/log-content-cards-displayed.js +1 -1
  12. package/src/ContentCards/subscribe-to-content-cards-updates.js +1 -1
  13. package/src/ContentCards/ui/hide-content-cards.js +1 -1
  14. package/src/ContentCards/ui/show-content-cards.js +1 -1
  15. package/src/Core/add-sdk-metadata.js +1 -1
  16. package/src/Core/change-user.js +1 -1
  17. package/src/Core/disable-sdk.js +1 -1
  18. package/src/Core/enable-sdk.js +1 -1
  19. package/src/Core/get-user.js +1 -1
  20. package/src/Core/handle-braze-action.js +1 -1
  21. package/src/Core/is-disabled.js +1 -1
  22. package/src/Core/log-custom-event.js +1 -1
  23. package/src/Core/log-purchase.js +1 -1
  24. package/src/Core/open-session.js +1 -1
  25. package/src/Core/request-immediate-data-flush.js +1 -1
  26. package/src/Core/wipe-data.js +1 -1
  27. package/src/Feed/feed-provider-factory.js +1 -1
  28. package/src/Feed/feed-provider.js +1 -1
  29. package/src/Feed/get-cached-feed.js +1 -1
  30. package/src/Feed/log-feed-displayed.js +1 -1
  31. package/src/Feed/request-feed-refresh.js +1 -1
  32. package/src/Feed/subscribe-to-feed-updates.js +1 -1
  33. package/src/Feed/ui/hide-feed.js +1 -1
  34. package/src/Feed/ui/show-feed.js +1 -1
  35. package/src/InAppMessage/display/html-message-to-html.js +1 -1
  36. package/src/InAppMessage/display/in-app-message-to-html.js +1 -1
  37. package/src/InAppMessage/in-app-message-manager.js +1 -1
  38. package/src/InAppMessage/log-in-app-message-button-click.js +1 -1
  39. package/src/InAppMessage/log-in-app-message-click.js +1 -1
  40. package/src/InAppMessage/log-in-app-message-html-click.js +1 -1
  41. package/src/InAppMessage/log-in-app-message-impression.js +1 -1
  42. package/src/InAppMessage/models/full-screen-message.js +1 -1
  43. package/src/InAppMessage/models/in-app-message-button.js +1 -1
  44. package/src/InAppMessage/models/in-app-message.js +1 -1
  45. package/src/InAppMessage/models/modal-message.js +1 -1
  46. package/src/InAppMessage/models/slide-up-message.js +1 -1
  47. package/src/InAppMessage/models/templated-in-app-message.js +1 -1
  48. package/src/InAppMessage/subscribe-to-in-app-message.js +1 -1
  49. package/src/InAppMessage/ui/automatically-show-in-app-messages.js +1 -1
  50. package/src/InAppMessage/ui/show-in-app-message.js +1 -1
  51. package/src/Push/push-manager-factory.js +1 -1
  52. package/src/Push/push-manager.js +1 -1
  53. package/src/Push/request-push-permission.js +1 -1
  54. package/src/User/user-manager.js +1 -1
  55. package/src/User/user.js +1 -1
  56. package/src/common/base-feed.js +1 -1
  57. package/src/common/event-logger.js +1 -1
  58. package/src/common/feed-display.js +1 -1
  59. package/src/l10n/l10n-manager-factory.js +1 -1
  60. package/src/managers/auth-manager.js +1 -1
  61. package/src/managers/braze-instance.js +1 -1
  62. package/src/managers/device-manager.js +1 -1
  63. package/src/managers/network-manager.js +1 -1
  64. package/src/managers/server-config-manager.js +1 -1
  65. package/src/managers/session-manager.js +1 -1
  66. package/src/managers/storage-manager-factory.js +1 -1
  67. package/src/managers/storage-manager.js +1 -1
  68. package/src/managers/subscription-manager.js +1 -1
  69. package/src/models/backend-errors.js +1 -1
  70. package/src/models/braze-event.js +1 -1
  71. package/src/models/device.js +1 -1
  72. package/src/models/identifier.js +1 -1
  73. package/src/models/push-token.js +1 -1
  74. package/src/models/server-config.js +1 -1
  75. package/src/request-controller.js +1 -1
  76. package/src/triggers/models/filter-set.js +1 -1
  77. package/src/triggers/models/filter.js +1 -1
  78. package/src/triggers/models/trigger-condition.js +1 -1
  79. package/src/triggers/models/trigger-events.js +1 -1
  80. package/src/triggers/models/trigger.js +1 -1
  81. package/src/triggers/triggers-provider-factory.js +1 -1
  82. package/src/triggers/triggers-provider.js +1 -1
  83. package/src/ui/js/attach-css.js +1 -1
  84. package/src/ui/js/load-font-awesome.js +1 -1
  85. package/src/util/base-device-parser.js +1 -1
  86. package/src/util/browser-detector.js +1 -1
  87. package/src/util/client-hints-parser.js +1 -1
  88. package/src/util/color-utils.js +1 -1
  89. package/src/util/component-utils.js +1 -1
  90. package/src/util/device-constants.js +1 -1
  91. package/src/util/dom-utils.js +1 -1
  92. package/src/util/key-codes.js +1 -1
  93. package/src/util/net.js +1 -1
  94. package/src/util/user-agent-parser.js +1 -1
  95. package/src/util/validation-utils.js +1 -1
  96. package/src/util/window-utils.js +1 -1
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Type definitions for @braze/web-sdk v4.0.1
2
+ * Type definitions for @braze/web-sdk v4.0.4
3
3
  * Project: https://github.com/braze-inc/braze-web-sdk
4
4
  * (c) Braze, Inc. 2022 - http://braze.com
5
5
  * License available at https://github.com/braze-inc/braze-web-sdk/blob/master/LICENSE
@@ -1769,9 +1769,7 @@
1769
1769
  ): boolean;
1770
1770
 
1771
1771
  /**
1772
- * Logs that the content cards were displayed. This is done automatically when you use Braze's
1773
- * UI and should only be called if you're bypassing that and manually building
1774
- * the class for displaying the cards in your own code.
1772
+ * @deprecated This method has been deprecated and is currently a no-op.
1775
1773
  */
1776
1774
  export function logContentCardsDisplayed(): boolean;
1777
1775
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@braze/web-sdk",
3
- "version": "4.0.1",
3
+ "version": "4.0.4",
4
4
  "description": "Braze SDK for web sites and other JS platforms.",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -1 +1 @@
1
- import je from"./encoding-utils.js";import{EventTypes as ve,InternalEventTypes as De}from"./event-types.js";import Ee from"./guid.js";import Be from"./indexed-db-adapter.js";import Ae from"./logger.js";import Ge from"./supported-options.js";const r={Nn:je,A:ve,lr:De,nt:Ee,qt:Be,Ft:Be.ep,D:Ae,Ro:Ge};export default r;
1
+ import je from"./encoding-utils.js";import{EventTypes as ve,InternalEventTypes as De}from"./event-types.js";import Be from"./guid.js";import Ae from"./indexed-db-adapter.js";import Ge from"./logger.js";import Oe from"./supported-options.js";const r={Un:je,A:ve,qr:De,nt:Be,qt:Ae,Ft:Ae.ep,D:Ge,jo:Oe};export default r;
@@ -1 +1 @@
1
- const je={_n:function(t){const r=(t+"=".repeat((4-t.length%4)%4)).replace(/\-/g,"+").replace(/_/g,"/"),n=atob(r),o=new Uint8Array(n.length);for(let t=0;t<n.length;++t)o[t]=n.charCodeAt(t);return o}};export default je;
1
+ const je={jn:function(t){const r=(t+"=".repeat((4-t.length%4)%4)).replace(/\-/g,"+").replace(/_/g,"/"),n=atob(r),o=new Uint8Array(n.length);for(let t=0;t<n.length;++t)o[t]=n.charCodeAt(t);return o}};export default je;
@@ -1 +1 @@
1
- const ve={CustomEvent:"ce",Pr:"p",Sl:"pc",ec:"ca",la:"i",Vo:"ie",T:"cci",W:"ccic",_:"ccc",L:"ccd",Wh:"ss",bh:"se",Ke:"si",He:"sc",Je:"sbc",Re:"sfe",nc:"iec",vl:"lr",yl:"uae",U:"ci",F:"cc",Al:"lcaa",$l:"lcar",Xr:"inc",Yr:"add",Qr:"rem",Wr:"set",Cl:"sgu"},De={qr:"feed_displayed",br:"content_cards_displayed"};export{ve as EventTypes,De as InternalEventTypes};
1
+ const ve={CustomEvent:"ce",Pr:"p",Sl:"pc",nc:"ca",pa:"i",ia:"ie",T:"cci",W:"ccic",_:"ccc",L:"ccd",Wh:"ss",bh:"se",gi:"si",mi:"sc",fi:"sbc",ci:"sfe",Ir:"iec",vl:"lr",yl:"uae",U:"ci",F:"cc",Al:"lcaa",$l:"lcar",Xr:"inc",Yr:"add",Qr:"rem",Wr:"set",Cl:"sgu"},De={Fr:"feed_displayed",oc:"content_cards_displayed"};export{ve as EventTypes,De as InternalEventTypes};
@@ -1 +1 @@
1
- const Ee={et:()=>{const t=t=>{const e=(Math.random().toString(16)+"000000000").substr(2,8);return t?"-"+e.substr(0,4)+"-"+e.substr(4,4):e};return t()+t(!0)+t(!0)+t()}};export default Ee;
1
+ const Be={et:()=>{const t=t=>{const e=(Math.random().toString(16)+"000000000").substr(2,8);return t?"-"+e.substr(0,4)+"-"+e.substr(4,4):e};return t()+t(!0)+t(!0)+t()}};export default Be;
@@ -1 +1 @@
1
- export default class Be{constructor(t,e){this.td="undefined"==typeof window?self:window,this.ed=t,this.nd=e}od(){if("indexedDB"in this.td)return this.td.indexedDB}rd(){try{if(null==this.od())return!1;if(this.od().open("Braze IndexedDB Support Test"),"undefined"!=typeof window){const t=window.chrome||window.browser||window.msBrowser;if(t&&t.runtime&&t.runtime.id)return this.nd.info("Not using IndexedDB for storage because we are running inside an extension"),!1}return!0}catch(t){return this.nd.info("Not using IndexedDB for storage due to following error: "+t),!1}}dd(t,e){const n=this.od().open(this.ed.sd,this.ed.VERSION);if(null==n)return"function"==typeof e&&e(),!1;const o=this;return n.onupgradeneeded=t=>{o.nd.info("Upgrading indexedDB "+o.ed.sd+" to v"+o.ed.VERSION+"...");const e=t.target.result;for(const t in o.ed.Pt)o.ed.Pt.hasOwnProperty(t)&&!e.objectStoreNames.contains(o.ed.Pt[t])&&e.createObjectStore(o.ed.Pt[t])},n.onsuccess=n=>{const i=n.target.result;i.onversionchange=()=>{i.close(),"function"==typeof e&&e(),o.nd.error("Needed to close the database unexpectedly because of an upgrade in another tab")},t(i)},n.onerror=t=>(o.nd.info("Could not open indexedDB "+o.ed.sd+" v"+o.ed.VERSION+": "+t.target.errorCode),"function"==typeof e&&e(),!0),!0}setItem(t,e,n,o,i){if(!this.rd())return"function"==typeof i&&i(),!1;const r=this;return this.dd((d=>{if(!d.objectStoreNames.contains(t))return r.nd.error("Could not store object "+e+" in "+t+" on indexedDB "+r.ed.sd+" - "+t+" is not a valid objectStore"),void("function"==typeof i&&i());const s=d.transaction([t],"readwrite").objectStore(t).put(n,e);s.onerror=()=>{r.nd.error("Could not store object "+e+" in "+t+" on indexedDB "+r.ed.sd),"function"==typeof i&&i()},s.onsuccess=()=>{"function"==typeof o&&o()}}),i)}getItem(t,e,n){if(!this.rd())return!1;const o=this;return this.dd((i=>{if(!i.objectStoreNames.contains(t))return void o.nd.error("Could not retrieve object "+e+" in "+t+" on indexedDB "+o.ed.sd+" - "+t+" is not a valid objectStore");const r=i.transaction([t],"readonly").objectStore(t).get(e);r.onerror=()=>{o.nd.error("Could not retrieve object "+e+" in "+t+" on indexedDB "+o.ed.sd)},r.onsuccess=t=>{const e=t.target.result;null!=e&&n(e)}}))}hr(t,e,n){if(!this.rd())return"function"==typeof n&&n(),!1;const o=this;return this.dd((i=>{if(!i.objectStoreNames.contains(t))return o.nd.error("Could not retrieve last record from "+t+" on indexedDB "+o.ed.sd+" - "+t+" is not a valid objectStore"),void("function"==typeof n&&n());const r=i.transaction([t],"readonly").objectStore(t).openCursor(null,"prev");r.onerror=()=>{o.nd.error("Could not open cursor for "+t+" on indexedDB "+o.ed.sd),"function"==typeof n&&n()},r.onsuccess=t=>{const o=t.target.result;null!=o&&null!=o.value&&null!=o.key?e(o.key,o.value):"function"==typeof n&&n()}}),n)}gr(t,e){if(!this.rd())return!1;const n=this;return this.dd((o=>{if(!o.objectStoreNames.contains(t))return void n.nd.error("Could not delete record "+e+" from "+t+" on indexedDB "+n.ed.sd+" - "+t+" is not a valid objectStore");o.transaction([t],"readwrite").objectStore(t).delete(e).onerror=()=>{n.nd.error("Could not delete record "+e+" from "+t+" on indexedDB "+n.ed.sd)}}))}Jt(t,e){if(!this.rd())return!1;const n=this;return this.dd((o=>{if(!o.objectStoreNames.contains(t))return void n.nd.error("Could not retrieve objects from "+t+" on indexedDB "+n.ed.sd+" - "+t+" is not a valid objectStore");const i=o.transaction([t],"readwrite").objectStore(t),r=i.openCursor(),d=[];r.onerror=()=>{d.length>0?(n.nd.info("Cursor closed midway through for "+t+" on indexedDB "+n.ed.sd),e(d)):n.nd.error("Could not open cursor for "+t+" on indexedDB "+n.ed.sd)},r.onsuccess=t=>{const n=t.target.result;if(null!=n){if(null!=n.value&&null!=n.key){i.delete(n.key).onsuccess=()=>{d.push(n.value)}}n.continue()}else d.length>0&&e(d)}}))}clearData(){if(!this.rd())return!1;const t=[];for(const e in this.ed.Pt)this.ed.Pt.hasOwnProperty(e)&&this.ed.Pt[e]!==this.ed.Pt.oe&&t.push(this.ed.Pt[e]);const e=this;return this.dd((function(n){const o=n.transaction(t,"readwrite");for(let n=0;n<t.length;n++){const i=t[n];o.objectStore(i).clear().onerror=function(){e.nd.error("Could not clear "+this.source.name+" on indexedDB "+e.ed.sd)}}o.onerror=function(){e.nd.error("Could not clear object stores on indexedDB "+e.ed.sd)}}))}}Be.ep={xt:{sd:"AppboyServiceWorkerAsyncStorage",VERSION:6,Pt:{jl:"data",kr:"pushClicks",Nr:"pushSubscribed",ud:"fallbackDevice",Mt:"cardUpdates",oe:"optOut",yr:"pendingData",Ln:"sdkAuthenticationSignature"},se:1}};
1
+ export default class Ae{constructor(t,e){this.td="undefined"==typeof window?self:window,this.ed=t,this.nd=e}od(){if("indexedDB"in this.td)return this.td.indexedDB}rd(){try{if(null==this.od())return!1;if(this.od().open("Braze IndexedDB Support Test"),"undefined"!=typeof window){const t=window.chrome||window.browser||window.msBrowser;if(t&&t.runtime&&t.runtime.id)return this.nd.info("Not using IndexedDB for storage because we are running inside an extension"),!1}return!0}catch(t){return this.nd.info("Not using IndexedDB for storage due to following error: "+t),!1}}dd(t,e){const n=this.od().open(this.ed.sd,this.ed.VERSION);if(null==n)return"function"==typeof e&&e(),!1;const o=this;return n.onupgradeneeded=t=>{o.nd.info("Upgrading indexedDB "+o.ed.sd+" to v"+o.ed.VERSION+"...");const e=t.target.result;for(const t in o.ed.Pt)o.ed.Pt.hasOwnProperty(t)&&!e.objectStoreNames.contains(o.ed.Pt[t])&&e.createObjectStore(o.ed.Pt[t])},n.onsuccess=n=>{const i=n.target.result;i.onversionchange=()=>{i.close(),"function"==typeof e&&e(),o.nd.error("Needed to close the database unexpectedly because of an upgrade in another tab")},t(i)},n.onerror=t=>(o.nd.info("Could not open indexedDB "+o.ed.sd+" v"+o.ed.VERSION+": "+t.target.errorCode),"function"==typeof e&&e(),!0),!0}setItem(t,e,n,o,i){if(!this.rd())return"function"==typeof i&&i(),!1;const r=this;return this.dd((d=>{if(!d.objectStoreNames.contains(t))return r.nd.error("Could not store object "+e+" in "+t+" on indexedDB "+r.ed.sd+" - "+t+" is not a valid objectStore"),void("function"==typeof i&&i());const s=d.transaction([t],"readwrite").objectStore(t).put(n,e);s.onerror=()=>{r.nd.error("Could not store object "+e+" in "+t+" on indexedDB "+r.ed.sd),"function"==typeof i&&i()},s.onsuccess=()=>{"function"==typeof o&&o()}}),i)}getItem(t,e,n){if(!this.rd())return!1;const o=this;return this.dd((i=>{if(!i.objectStoreNames.contains(t))return void o.nd.error("Could not retrieve object "+e+" in "+t+" on indexedDB "+o.ed.sd+" - "+t+" is not a valid objectStore");const r=i.transaction([t],"readonly").objectStore(t).get(e);r.onerror=()=>{o.nd.error("Could not retrieve object "+e+" in "+t+" on indexedDB "+o.ed.sd)},r.onsuccess=t=>{const e=t.target.result;null!=e&&n(e)}}))}hr(t,e,n){if(!this.rd())return"function"==typeof n&&n(),!1;const o=this;return this.dd((i=>{if(!i.objectStoreNames.contains(t))return o.nd.error("Could not retrieve last record from "+t+" on indexedDB "+o.ed.sd+" - "+t+" is not a valid objectStore"),void("function"==typeof n&&n());const r=i.transaction([t],"readonly").objectStore(t).openCursor(null,"prev");r.onerror=()=>{o.nd.error("Could not open cursor for "+t+" on indexedDB "+o.ed.sd),"function"==typeof n&&n()},r.onsuccess=t=>{const o=t.target.result;null!=o&&null!=o.value&&null!=o.key?e(o.key,o.value):"function"==typeof n&&n()}}),n)}br(t,e){if(!this.rd())return!1;const n=this;return this.dd((o=>{if(!o.objectStoreNames.contains(t))return void n.nd.error("Could not delete record "+e+" from "+t+" on indexedDB "+n.ed.sd+" - "+t+" is not a valid objectStore");o.transaction([t],"readwrite").objectStore(t).delete(e).onerror=()=>{n.nd.error("Could not delete record "+e+" from "+t+" on indexedDB "+n.ed.sd)}}))}Jt(t,e){if(!this.rd())return!1;const n=this;return this.dd((o=>{if(!o.objectStoreNames.contains(t))return void n.nd.error("Could not retrieve objects from "+t+" on indexedDB "+n.ed.sd+" - "+t+" is not a valid objectStore");const i=o.transaction([t],"readwrite").objectStore(t),r=i.openCursor(),d=[];r.onerror=()=>{d.length>0?(n.nd.info("Cursor closed midway through for "+t+" on indexedDB "+n.ed.sd),e(d)):n.nd.error("Could not open cursor for "+t+" on indexedDB "+n.ed.sd)},r.onsuccess=t=>{const n=t.target.result;if(null!=n){if(null!=n.value&&null!=n.key){i.delete(n.key).onsuccess=()=>{d.push(n.value)}}n.continue()}else d.length>0&&e(d)}}))}clearData(){if(!this.rd())return!1;const t=[];for(const e in this.ed.Pt)this.ed.Pt.hasOwnProperty(e)&&this.ed.Pt[e]!==this.ed.Pt.oe&&t.push(this.ed.Pt[e]);const e=this;return this.dd((function(n){const o=n.transaction(t,"readwrite");for(let n=0;n<t.length;n++){const i=t[n];o.objectStore(i).clear().onerror=function(){e.nd.error("Could not clear "+this.source.name+" on indexedDB "+e.ed.sd)}}o.onerror=function(){e.nd.error("Could not clear object stores on indexedDB "+e.ed.sd)}}))}}Ae.ep={xt:{sd:"AppboyServiceWorkerAsyncStorage",VERSION:6,Pt:{jl:"data",jr:"pushClicks",Nr:"pushSubscribed",ud:"fallbackDevice",Mt:"cardUpdates",oe:"optOut",$r:"pendingData",Qn:"sdkAuthenticationSignature"},se:1}};
@@ -1 +1 @@
1
- const Ae={init:function(n){void 0===n&&void 0!==Ae.zg||(Ae.zg=!!n),Ae.Dg||(Ae.Dg=!0)},destroy:function(){Ae.Dg=!1,Ae.zg=void 0,Ae.nd=void 0},setLogger:function(n){"function"==typeof n?(Ae.init(),Ae.nd=n):Ae.info("Ignoring setLogger call since logger is not a function")},toggleLogging:function(){Ae.init(),Ae.zg?(console.log("Disabling Braze logging"),Ae.zg=!1):(console.log("Enabled Braze logging"),Ae.zg=!0)},info:function(n){if(Ae.zg){const o="Braze: "+n;null!=Ae.nd?Ae.nd(o):console.log(o)}},warn:function(n){if(Ae.zg){const o="Braze SDK Warning: "+n+" (v4.0.1)";null!=Ae.nd?Ae.nd(o):console.warn(o)}},error:function(n){if(Ae.zg){const o="Braze SDK Error: "+n+" (v4.0.1)";null!=Ae.nd?Ae.nd(o):console.error(o)}}};export default Ae;
1
+ const Ge={init:function(n){void 0===n&&void 0!==Ge.zg||(Ge.zg=!!n),Ge.Dg||(Ge.Dg=!0)},destroy:function(){Ge.Dg=!1,Ge.zg=void 0,Ge.nd=void 0},setLogger:function(n){"function"==typeof n?(Ge.init(),Ge.nd=n):Ge.info("Ignoring setLogger call since logger is not a function")},toggleLogging:function(){Ge.init(),Ge.zg?(console.log("Disabling Braze logging"),Ge.zg=!1):(console.log("Enabled Braze logging"),Ge.zg=!0)},info:function(n){if(Ge.zg){const o="Braze: "+n;null!=Ge.nd?Ge.nd(o):console.log(o)}},warn:function(n){if(Ge.zg){const o="Braze SDK Warning: "+n+" (v4.0.4)";null!=Ge.nd?Ge.nd(o):console.warn(o)}},error:function(n){if(Ge.zg){const o="Braze SDK Error: "+n+" (v4.0.4)";null!=Ge.nd?Ge.nd(o):console.error(o)}}};export default Ge;
@@ -1 +1 @@
1
- export default{$n:"allowCrawlerActivity",ea:"baseUrl",Yn:"noCookies",Xn:"devicePropertyAllowlist",ta:"disablePushTokenMaintenance",Zn:"enableLogging",ho:"enableSdkAuthentication",ia:"manageServiceWorkerExternally",lo:"minimumIntervalBetweenTriggerActionsInSeconds",uo:"sessionTimeoutInSeconds",po:"appVersion",na:"serviceWorkerLocation",ra:"safariWebsitePushId",zn:"localization",yi:"contentSecurityNonce",co:"enableHtmlInAppMessages",mo:"allowUserSuppliedJavascript",vi:"inAppMessageZIndex",zi:"openInAppMessagesInNewTab",en:"openNewsFeedCardsInNewTab",Oi:"requireExplicitInAppMessageDismissal",Eo:"doNotLoadFontAwesome",_o:"sdkFlavor",tn:"openCardsInNewTab"};
1
+ export default{ho:"allowCrawlerActivity",lo:"baseUrl",uo:"noCookies",po:"devicePropertyAllowlist",ra:"disablePushTokenMaintenance",co:"enableLogging",mo:"enableSdkAuthentication",ta:"manageServiceWorkerExternally",Eo:"minimumIntervalBetweenTriggerActionsInSeconds",_o:"sessionTimeoutInSeconds",fo:"appVersion",ea:"serviceWorkerLocation",na:"safariWebsitePushId",Mn:"localization",Fe:"contentSecurityNonce",Io:"enableHtmlInAppMessages",Ao:"allowUserSuppliedJavascript",Be:"inAppMessageZIndex",Ge:"openInAppMessagesInNewTab",en:"openNewsFeedCardsInNewTab",Ki:"requireExplicitInAppMessageDismissal",So:"doNotLoadFontAwesome",do:"sdkFlavor",tn:"openCardsInNewTab"};
@@ -1 +1 @@
1
- import{Card,Banner,CaptionedImage,ClassicCard,ControlCard}from"../index.js";import{dateFromUnixTimestamp as h,rehydrateDateAfterJsonization as w}from"../../util/date-utils.js";import r from"../../../shared-lib/braze-shared-lib.js";export function newCard(e,n,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x,F){let b;if(n===Card.es.Ct||n===Card.es.dt)b=new ClassicCard(e,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x);else if(n===Card.es.st)b=new CaptionedImage(e,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x);else if(n===Card.es.rs)b=new Banner(e,t,i,u,d,a,s,w,f,m,C,p,c,x);else{if(n!==Card.es.Rt)return r.D.error("Ignoring card with unknown type "+n),null;b=new ControlCard(e,t,d,s,C,p)}return F&&(b.test=F),b}export function newCardFromContentCardsJson(e){if(e[Card.ct.At])return null;const n=e[Card.ct.ns],r=e[Card.ct.ts],t=e[Card.ct.ls],o=e[Card.ct.it],i=e[Card.ct.os],l=e[Card.ct.ht],u=h(e[Card.ct.us]),d=u;let a;a=e[Card.ct.ps]===Card.Dt?null:h(e[Card.ct.ps]);return newCard(n,r,t,o,i,l,d,u,null,a,e[Card.ct.URL],e[Card.ct.bs],e[Card.ct.fs],e[Card.ct.xs],e[Card.ct.js],e[Card.ct.zs],e[Card.ct.gs],e[Card.ct.ks]||!1)}export function newCardFromFeedJson(e){return newCard(e.id,e.type,e.viewed,e.title,e.image,e.description,h(e.created),h(e.updated),e.categories,h(e.expires_at),e.url,e.domain,e.aspect_ratio,e.extras,!1,!1)}export function newCardFromSerializedValue(e){return newCard(e[Card.hs.ns],e[Card.hs.ts],e[Card.hs.ls],e[Card.hs.it],e[Card.hs.os],e[Card.hs.ht],w(e[Card.hs.cs]),w(e[Card.hs.us]),e[Card.hs.ds],w(e[Card.hs.ps]),e[Card.hs.URL],e[Card.hs.bs],e[Card.hs.fs],e[Card.hs.xs],e[Card.hs.js],e[Card.hs.zs],e[Card.hs.gs],e[Card.hs.ks]||!1)??void 0}
1
+ import{Card,Banner,CaptionedImage,ClassicCard,ControlCard}from"../index.js";import{dateFromUnixTimestamp as h,rehydrateDateAfterJsonization as w}from"../../util/date-utils.js";import r from"../../../shared-lib/braze-shared-lib.js";export function newCard(e,n,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x,F){let b;if(n===Card.es.Ct||n===Card.es.dt)b=new ClassicCard(e,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x);else if(n===Card.es.st)b=new CaptionedImage(e,t,o,i,l,u,d,a,s,w,f,m,C,p,c,x);else if(n===Card.es.rs)b=new Banner(e,t,i,u,d,a,s,w,f,m,C,p,c,x);else{if(n!==Card.es.Rt)return r.D.error("Ignoring card with unknown type "+n),null;b=new ControlCard(e,t,d,s,C,p)}return F&&(b.test=F),b}export function newCardFromContentCardsJson(e){if(e[Card.ct.At])return null;const n=e[Card.ct.ns],r=e[Card.ct.ts],t=e[Card.ct.ls],o=e[Card.ct.it],i=e[Card.ct.os],l=e[Card.ct.ht],u=h(e[Card.ct.us]),d=u;let a;a=e[Card.ct.ps]===Card.Dt?null:h(e[Card.ct.ps]);return newCard(n,r,t,o,i,l,d,u,null,a,e[Card.ct.URL],e[Card.ct.bs],e[Card.ct.fs],e[Card.ct.xs],e[Card.ct.js],e[Card.ct.zs],e[Card.ct.gs],e[Card.ct.ks]||!1)}export function newCardFromFeedJson(e){return newCard(e.id,e.type,e.viewed,e.title,e.image,e.description,h(e.created),h(e.updated),e.categories,h(e.expires_at),e.url,e.domain,e.aspect_ratio,e.extras,!1,!1)}export function newCardFromSerializedValue(e){return newCard(e[Card.hs.ns],e[Card.hs.ts],e[Card.hs.ls],e[Card.hs.it],e[Card.hs.os],e[Card.hs.ht],w(e[Card.hs.cs]),w(e[Card.hs.us]),e[Card.hs.ds],w(e[Card.hs.ps]),e[Card.hs.URL],e[Card.hs.bs],e[Card.hs.fs],e[Card.hs.xs],e[Card.hs.js],e[Card.hs.zs],e[Card.hs.gs],e[Card.hs.ks]||!1)||void 0}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";export function logContentCardsDisplayed(){if(e.rr())return e.nr().mr(r.lr.br).S}
1
+ import e from"../managers/braze-instance.js";import{logDeprecationWarning as y}from"../util/deprecation-utils.js";export function logContentCardsDisplayed(){if(e.rr())return y("logContentCardsDisplayed","method"),!0}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import g from"./content-cards-provider-factory.js";export function subscribeToContentCardsUpdates(r){if(!e.rr())return;const t=g.er(),n=t.Ps(r);if(!t.Kt()){const r=e.pr().cr((()=>{t.Ts()}));t.Vt(r)}return n}
1
+ import e from"../managers/braze-instance.js";import g from"./content-cards-provider-factory.js";export function subscribeToContentCardsUpdates(r){if(!e.rr())return;const t=g.er(),n=t.Ps(r);if(!t.Kt()){const r=e.mr().cr((()=>{t.Ts()}));t.Vt(r)}return n}
@@ -1 +1 @@
1
- import e from"../../managers/braze-instance.js";import{destroyFeedHtml as y}from"../../common/feed-display.js";export function hideContentCards(n){if(!e.rr())return;const o=document.querySelectorAll(".ab-feed");for(let e=0;e<o.length;e++)(null==n||null!=n&&o[e].parentNode===n)&&y(o[e])}
1
+ import e from"../../managers/braze-instance.js";import{destroyFeedHtml as z}from"../../common/feed-display.js";export function hideContentCards(n){if(!e.rr())return;const o=document.querySelectorAll(".ab-feed");for(let e=0;e<o.length;e++)(null==n||null!=n&&o[e].parentNode===n)&&z(o[e])}
@@ -1 +1 @@
1
- import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{ContentCards,logContentCardsDisplayed,subscribeToContentCardsUpdates}from"../index.js";import g from"../content-cards-provider-factory.js";import{destroyFeedHtml as y,detectFeedImpressions as T,feedToHtml as z,LAST_REQUESTED_REFRESH_DATA_ATTRIBUTE as N,refreshFeed as q,registerFeedSubscriptionId as I,updateFeedCards as L}from"../../common/feed-display.js";import{setCardHeight as M}from"../../Card/display/card-display.js";import{setupFeedUI as $}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";export function showContentCards(n,t){if(!e.rr())return;$();let o=!1;null==n&&(n=document.body,o=!0);const a=e.nn(D.tn)||e.nn(D.en)||!1;let i=g.er().ys(!1);"function"==typeof t&&L(i,t(i.cards.slice()),i.lastUpdated,null,a);const s=z(i,a),f=g.er();(null==i.lastUpdated||(new Date).valueOf()-i.lastUpdated.valueOf()>ContentCards.ur)&&(null==f.Bt()||(new Date).valueOf()-f.Bt()>ContentCards.ur)&&(r.D.info(`Cached content cards were older than max TTL of ${ContentCards.ur} ms, requesting an update from the server.`),q(i,s),f.Ht((new Date).valueOf()));const l=(new Date).valueOf(),c=subscribeToContentCardsUpdates((function(n){const e=s.querySelectorAll(".ab-refresh-button")[0];if(null!=e){let n=500;const t=parseInt(s.getAttribute(N));isNaN(t)?n-=(new Date).valueOf()-l:n-=(new Date).valueOf()-t,setTimeout((function(){e.className=e.className.replace(/fa-spin/g,"")}),Math.max(n,0))}let o=n.cards;"function"==typeof t&&(o=t(o.slice())),L(i,o,n.lastUpdated,s,a)}));I(c,s);const u=function(n){const t=n.querySelectorAll(".ab-feed");let e=null;for(let o=0;o<t.length;o++)t[o].parentNode===n&&(e=t[o]);null!=e?(y(e),e.parentNode.replaceChild(s,e)):n.appendChild(s),setTimeout((function(){s.className=s.className.replace("ab-hide","ab-show")}),0),o&&s.focus(),logContentCardsDisplayed(),T(i,s),M(i.cards,n)};var m;null!=n?u(n):window.onload=(m=window.onload,function(){"function"==typeof m&&m(),u(document.body)})}
1
+ import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{ContentCards,subscribeToContentCardsUpdates}from"../index.js";import g from"../content-cards-provider-factory.js";import{destroyFeedHtml as z,detectFeedImpressions as T,feedToHtml as N,LAST_REQUESTED_REFRESH_DATA_ATTRIBUTE as q,refreshFeed as I,registerFeedSubscriptionId as L,updateFeedCards as M}from"../../common/feed-display.js";import{setCardHeight as $}from"../../Card/display/card-display.js";import{setupFeedUI as k}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";export function showContentCards(n,t){if(!e.rr())return;k();let o=!1;null==n&&(n=document.body,o=!0);const a=e.nn(D.tn)||e.nn(D.en)||!1;let i=g.er().ys(!1);"function"==typeof t&&M(i,t(i.cards.slice()),i.lastUpdated,null,a);const s=N(i,a),f=g.er();(null==i.lastUpdated||(new Date).valueOf()-i.lastUpdated.valueOf()>ContentCards.ur)&&(null==f.Bt()||(new Date).valueOf()-f.Bt()>ContentCards.ur)&&(r.D.info(`Cached content cards were older than max TTL of ${ContentCards.ur} ms, requesting an update from the server.`),I(i,s),f.Ht((new Date).valueOf()));const l=(new Date).valueOf(),c=subscribeToContentCardsUpdates((function(n){const e=s.querySelectorAll(".ab-refresh-button")[0];if(null!=e){let n=500;const t=parseInt(s.getAttribute(q));isNaN(t)?n-=(new Date).valueOf()-l:n-=(new Date).valueOf()-t,setTimeout((function(){e.className=e.className.replace(/fa-spin/g,"")}),Math.max(n,0))}let o=n.cards;"function"==typeof t&&(o=t(o.slice())),M(i,o,n.lastUpdated,s,a)}));L(c,s);const u=function(n){const t=n.querySelectorAll(".ab-feed");let e=null;for(let o=0;o<t.length;o++)t[o].parentNode===n&&(e=t[o]);null!=e?(z(e),e.parentNode.replaceChild(s,e)):n.appendChild(s),setTimeout((function(){s.className=s.className.replace("ab-hide","ab-show")}),0),o&&s.focus(),T(i,s),$(i.cards,n)};var m;null!=n?u(n):window.onload=(m=window.onload,function(){"function"==typeof m&&m(),u(document.body)})}
@@ -1 +1 @@
1
- import k from"../managers/braze-instance.js";import BrazeSdkMetadata from"./braze-sdk-metadata.js";import{isArray as p,validateValueIsFromEnum as B}from"../util/code-utils.js";import r from"../../shared-lib/braze-shared-lib.js";export function addSdkMetadata(a){if(k.rr()){if(!p(a))return r.D.error("Cannot set SDK metadata because metadata is not an array."),!1;for(const t of a)if(!B(BrazeSdkMetadata,t,"sdkMetadata contained an invalid value.","BrazeSdkMetadata"))return!1;return k.nr().addSdkMetadata(a),!0}}
1
+ import B from"../managers/braze-instance.js";import BrazeSdkMetadata from"./braze-sdk-metadata.js";import{isArray as p,validateValueIsFromEnum as K}from"../util/code-utils.js";import r from"../../shared-lib/braze-shared-lib.js";export function addSdkMetadata(a){if(B.rr()){if(!p(a))return r.D.error("Cannot set SDK metadata because metadata is not an array."),!1;for(const t of a)if(!K(BrazeSdkMetadata,t,"sdkMetadata contained an invalid value.","BrazeSdkMetadata"))return!1;return B.nr().addSdkMetadata(a),!0}}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{getByteLength as U}from"../util/string-utils.js";import r from"../../shared-lib/braze-shared-lib.js";import{User}from"../User/index.js";import{validateStandardString as R}from"../util/validation-utils.js";export function changeUser(s,i){return!!e.rr()&&(null==s||0===s.length||s!=s?(r.D.error("changeUser requires a non-empty userId."),!1):U(s)>User.ee?(r.D.error(`Rejected user id "${s}" because it is longer than ${User.ee} bytes.`),!1):!(null!=i&&!R(i,"set signature for new user","signature"))&&void e.pr().changeUser(s.toString(),e.re(),i))}
1
+ import e from"../managers/braze-instance.js";import{getByteLength as U}from"../util/string-utils.js";import r from"../../shared-lib/braze-shared-lib.js";import{User}from"../User/index.js";import{validateStandardString as R}from"../util/validation-utils.js";export function changeUser(s,i){return!!e.rr()&&(null==s||0===s.length||s!=s?(r.D.error("changeUser requires a non-empty userId."),!1):U(s)>User.ee?(r.D.error(`Rejected user id "${s}" because it is longer than ${User.ee} bytes.`),!1):!(null!=i&&!R(i,"set signature for new user","signature"))&&void e.mr().changeUser(s.toString(),e.re(),i))}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import K,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function disableSDK(){null!=e.pr()&&e.pr().requestImmediateDataFlush();const n=new K.ne(null,!0);n.store(o.ae,"This-cookie-will-expire-in-"+n.ie());const a=r.Ft.xt;new r.qt(a,r.D).setItem(a.Pt.oe,a.se,!0),e.destroy(!1),e.le(!0)}
1
+ import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import A,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function disableSDK(){null!=e.mr()&&e.mr().requestImmediateDataFlush();const n=new A.ne(null,!0);n.store(o.ae,"This-cookie-will-expire-in-"+n.ie());const a=r.Ft.xt;new r.qt(a,r.D).setItem(a.Pt.oe,a.se,!0),e.destroy(!1),e.le(!0)}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import K,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function enableSDK(){new K.ne(null,!0).remove(o.ae);const a=r.Ft.xt;new r.qt(a,r.D).gr(a.Pt.oe,a.se),e.destroy(!1),e.le(!1)}
1
+ import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import A,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function enableSDK(){new A.ne(null,!0).remove(o.ae);const a=r.Ft.xt;new r.qt(a,r.D).br(a.Pt.oe,a.se),e.destroy(!1),e.le(!1)}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";export function getUser(){if(e.rr())return e.jr()}
1
+ import e from"../managers/braze-instance.js";export function getUser(){if(e.rr())return e.gr()}
@@ -1 +1 @@
1
- import r from"../../shared-lib/braze-shared-lib.js";import e from"../managers/braze-instance.js";import A from"../util/braze-actions.js";import{decodeBrazeActions as F}from"../util/string-utils.js";import{BRAZE_ACTION_URI_REGEX as J,isValidBrazeActionJson as O}from"../util/validation-utils.js";import{WindowUtils as P}from"../util/window-utils.js";import{getUser as G}from"./get-user.js";export function _handleBrazeAction(o,i,t){if(e.rr())if(J.test(o))try{let e=o.match(J)[0].length;const i=o.substring(e);if(e>o.length-1||!i)return void r.D.error(`Did not find base64 encoded brazeAction in url to process : ${o}`);const t=F(i);if(!t)return void r.D.error(`Failed to decode base64 encoded brazeAction: ${i}`);const s=async e=>{if(!O(e))return void r.D.error(`Decoded Braze Action json is invalid: ${JSON.stringify(e,null,2)}`);const o=e[A.properties.type];if(o===A.types.de)for(const r of e[A.properties.ue])s(r);else{const i=e[A.properties.fe];let t,s;switch(o){case A.types.logCustomEvent:t=await import("./log-custom-event.js"),t.logCustomEvent.apply(null,Array.prototype.slice.call(i));break;case A.types.requestPushPermission:t=await import("../Push/request-push-permission.js"),t.requestPushPermission();break;case A.types.setEmailNotificationSubscriptionType:case A.types.setPushNotificationSubscriptionType:case A.types.setCustomUserAttribute:case A.types.addToSubscriptionGroup:case A.types.removeFromSubscriptionGroup:case A.types.addToCustomAttributeArray:case A.types.removeFromCustomAttributeArray:s=G(),s[o].apply(s,Array.prototype.slice.call(i));break;case A.types.me:case A.types.pe:P.openUri.apply(null,Array.prototype.slice.call(i));break;default:r.D.info(`Ignoring unknown Braze Action: ${o}`)}}};s(JSON.parse(t))}catch(e){return void r.D.error(`Failed to process brazeAction URL ${o} : ${e.message}`)}else P.openUri(o,t,i)}export function handleBrazeAction(e,r){_handleBrazeAction(e,r)}
1
+ import r from"../../shared-lib/braze-shared-lib.js";import e from"../managers/braze-instance.js";import F from"../util/braze-actions.js";import{decodeBrazeActions as J}from"../util/string-utils.js";import{BRAZE_ACTION_URI_REGEX as O,isValidBrazeActionJson as P}from"../util/validation-utils.js";import{WindowUtils as G}from"../util/window-utils.js";import{getUser as H}from"./get-user.js";export function _getDecodedBrazeAction(e){try{let o=e.match(O)[0].length;const t=e.substring(o);if(o>e.length-1||!t)return void r.D.error(`Did not find base64 encoded brazeAction in url to process : ${e}`);const i=J(t);return i?JSON.parse(i):void r.D.error(`Failed to decode base64 encoded brazeAction: ${t}`)}catch(o){return void r.D.error(`Failed to process brazeAction URL ${e} : ${o.message}`)}}export function _handleBrazeAction(o,t,i){if(e.rr())if(O.test(o)){const e=_getDecodedBrazeAction(o);if(!e)return;const t=async e=>{if(!P(e))return void r.D.error(`Decoded Braze Action json is invalid: ${JSON.stringify(e,null,2)}`);const o=e[F.properties.type];if(o===F.types.de)for(const o of e[F.properties.ue])t(o);else{const t=e[F.properties.fe];let i,n;switch(o){case F.types.logCustomEvent:i=await import("./log-custom-event.js"),i.logCustomEvent.apply(null,Array.prototype.slice.call(t));break;case F.types.requestPushPermission:i=await import("../Push/request-push-permission.js"),i.requestPushPermission();break;case F.types.setEmailNotificationSubscriptionType:case F.types.setPushNotificationSubscriptionType:case F.types.setCustomUserAttribute:case F.types.addToSubscriptionGroup:case F.types.removeFromSubscriptionGroup:case F.types.addToCustomAttributeArray:case F.types.removeFromCustomAttributeArray:n=H(),n[o].apply(n,Array.prototype.slice.call(t));break;case F.types.me:case F.types.pe:G.openUri.apply(null,Array.prototype.slice.call(t));break;default:r.D.info(`Ignoring unknown Braze Action: ${o}`)}}};t(e)}else G.openUri(o,i,t)}export function handleBrazeAction(e,o){_handleBrazeAction(e,o)}
@@ -1 +1 @@
1
- import K,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function isDisabled(){return!!new K.ne(null,!0).wr(o.ae)}
1
+ import A,{STORAGE_KEYS as o}from"../managers/storage-manager.js";export function isDisabled(){return!!new A.ne(null,!0).lr(o.ae)}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import s from"../common/event-logger.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";import{validateCustomProperties as V,validateCustomString as W}from"../util/validation-utils.js";export function logCustomEvent(t,o){if(!e.rr())return!1;if(null==t||t.length<=0)return r.D.error(`logCustomEvent requires a non-empty eventName, got "${t}". Ignoring event.`),!1;if(!W(t,"log custom event","the event name"))return!1;const[n,i]=V(o,"logCustomEvent","eventProperties",`log custom event "${t}"`,"event");if(!n)return!1;if(e.ir().ge(t))return r.D.info(`Custom Event "${t}" is blocklisted, ignoring.`),!1;const m=s.G(r.A.CustomEvent,{n:t,p:i});if(m.S){r.D.info(`Logged custom event "${t}".`);for(const e of m.ve)Q.er().je(H.be,[t,o],e)}return m.S}
1
+ import e from"../managers/braze-instance.js";import s from"../common/event-logger.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";import{validateCustomProperties as W,validateCustomString as X}from"../util/validation-utils.js";export function logCustomEvent(t,o){if(!e.rr())return!1;if(null==t||t.length<=0)return r.D.error(`logCustomEvent requires a non-empty eventName, got "${t}". Ignoring event.`),!1;if(!X(t,"log custom event","the event name"))return!1;const[n,i]=W(o,"logCustomEvent","eventProperties",`log custom event "${t}"`,"event");if(!n)return!1;if(e.ir().ge(t))return r.D.info(`Custom Event "${t}" is blocklisted, ignoring.`),!1;const m=s.G(r.A.CustomEvent,{n:t,p:i});if(m.S){r.D.info(`Logged custom event "${t}".`);for(const e of m.ve)V.er().je(Q.be,[t,o],e)}return m.S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{MAX_PURCHASE_QUANTITY as Z}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";import{validateCustomProperties as V,validateCustomString as W}from"../util/validation-utils.js";import s from"../common/event-logger.js";export function logPurchase(o,i,t,n,D){if(!e.rr())return!1;if(null==t&&(t="USD"),null==n&&(n=1),null==o||o.length<=0)return r.D.error(`logPurchase requires a non-empty productId, got "${o}", ignoring.`),!1;if(!W(o,"log purchase","the purchase name"))return!1;let a=parseFloat(i);if(isNaN(a))return r.D.error(`logPurchase requires a numeric price, got ${i}, ignoring.`),!1;a=a.toFixed(2);const g=parseInt(n);if(isNaN(g))return r.D.error(`logPurchase requires an integer quantity, got ${n}, ignoring.`),!1;if(g<1||g>Z)return r.D.error(`logPurchase requires a quantity >1 and <${Z}, got ${g}, ignoring.`),!1;t=t.toUpperCase();if(-1===["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTC","BTN","BWP","BYR","BZD","CAD","CDF","CHF","CLF","CLP","CNY","COP","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EEK","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GGP","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HRK","HTG","HUF","IDR","ILS","IMP","INR","IQD","IRR","ISK","JEP","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LTL","LVL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRO","MTL","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLL","SOS","SRD","STD","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VEF","VND","VUV","WST","XAF","XAG","XAU","XCD","XDR","XOF","XPD","XPF","XPT","YER","ZAR","ZMK","ZMW","ZWL"].indexOf(t))return r.D.error(`logPurchase requires a valid currencyCode, got ${t}, ignoring.`),!1;const[u,P]=V(D,"logPurchase","purchaseProperties",`log purchase "${o}"`,"purchase");if(!u)return!1;if(e.ir().Dr(o))return r.D.info(`Purchase "${o}" is blocklisted, ignoring.`),!1;const R=s.G(r.A.Pr,{pid:o,c:t,p:a,q:g,pr:P});if(R.S){r.D.info(`Logged ${g} purchase${g>1?"s":""} of "${o}" for ${t} ${a}.`);for(const r of R.ve)Q.er().je(H.Rr,[o,D],r)}return R.S}
1
+ import e from"../managers/braze-instance.js";import{MAX_PURCHASE_QUANTITY as Z}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";import{validateCustomProperties as W,validateCustomString as X}from"../util/validation-utils.js";import s from"../common/event-logger.js";export function logPurchase(o,i,t,n,D){if(!e.rr())return!1;if(null==t&&(t="USD"),null==n&&(n=1),null==o||o.length<=0)return r.D.error(`logPurchase requires a non-empty productId, got "${o}", ignoring.`),!1;if(!X(o,"log purchase","the purchase name"))return!1;let a=parseFloat(i);if(isNaN(a))return r.D.error(`logPurchase requires a numeric price, got ${i}, ignoring.`),!1;a=a.toFixed(2);const g=parseInt(n);if(isNaN(g))return r.D.error(`logPurchase requires an integer quantity, got ${n}, ignoring.`),!1;if(g<1||g>Z)return r.D.error(`logPurchase requires a quantity >1 and <${Z}, got ${g}, ignoring.`),!1;t=t.toUpperCase();if(-1===["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTC","BTN","BWP","BYR","BZD","CAD","CDF","CHF","CLF","CLP","CNY","COP","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EEK","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GGP","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HRK","HTG","HUF","IDR","ILS","IMP","INR","IQD","IRR","ISK","JEP","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LTL","LVL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRO","MTL","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLL","SOS","SRD","STD","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VEF","VND","VUV","WST","XAF","XAG","XAU","XCD","XDR","XOF","XPD","XPF","XPT","YER","ZAR","ZMK","ZMW","ZWL"].indexOf(t))return r.D.error(`logPurchase requires a valid currencyCode, got ${t}, ignoring.`),!1;const[u,P]=W(D,"logPurchase","purchaseProperties",`log purchase "${o}"`,"purchase");if(!u)return!1;if(e.ir().Dr(o))return r.D.info(`Purchase "${o}" is blocklisted, ignoring.`),!1;const R=s.G(r.A.Pr,{pid:o,c:t,p:a,q:g,pr:P});if(R.S){r.D.info(`Logged ${g} purchase${g>1?"s":""} of "${o}" for ${t} ${a}.`);for(const r of R.ve)V.er().je(Q.Rr,[o,D],r)}return R.S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";export function openSession(){if(!e.rr())return;e.pr().openSession();const i=r.Ft.xt,o=new r.qt(i,r.D);o.hr(i.Pt.kr,(function(t,n){const s=n.lastClick,c=n.trackingString;r.D.info(`Firing push click trigger from ${c} push click at ${s}`);const g=e.pr().vr(s,c),f=function(){Q.er().je(H.zr,[c],g)};e.pr().$r(f,f),o.gr(i.Pt.kr,t)})),o.Jt(i.Pt.yr,(function(r){e.pr().Fr(r)}))}
1
+ import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";export function openSession(){if(!e.rr())return;e.mr().openSession();const i=r.Ft.xt,o=new r.qt(i,r.D);o.hr(i.Pt.jr,(function(t,n){const s=n.lastClick,c=n.trackingString;r.D.info(`Firing push click trigger from ${c} push click at ${s}`);const g=e.mr().kr(s,c),f=function(){V.er().je(Q.vr,[c],g)};e.mr().zr(f,f),o.br(i.Pt.jr,t)})),o.Jt(i.Pt.$r,(function(r){e.mr().wr(r)}))}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";export function requestImmediateDataFlush(a){e.rr()&&e.pr().requestImmediateDataFlush(a)}
1
+ import e from"../managers/braze-instance.js";export function requestImmediateDataFlush(a){e.rr()&&e.mr().requestImmediateDataFlush(a)}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{keys as X}from"../util/code-utils.js";import r from"../../shared-lib/braze-shared-lib.js";export function wipeData(){if(null==e.l())throw new Error("Braze must be initialized before calling methods.");e.l().clearData();const o=X(r.Ft);for(let e=0;e<o.length;e++){const i=o[e],t=r.Ft[i];new r.qt(t,r.D).clearData()}if(e.rr())for(const r of e.re())r.clearData(!0)}
1
+ import e from"../managers/braze-instance.js";import{keys as Y}from"../util/code-utils.js";import r from"../../shared-lib/braze-shared-lib.js";export function wipeData(){if(null==e.l())throw new Error("Braze must be initialized before calling methods.");e.l().clearData();const o=Y(r.Ft);for(let e=0;e<o.length;e++){const i=o[e],t=r.Ft[i];new r.qt(t,r.D).clearData()}if(e.rr())for(const r of e.re())r.clearData(!0)}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import Y from"./feed-provider.js";const ee={t:!1,provider:null,er:()=>(ee.o(),ee.provider||(ee.provider=new Y(e.l(),e.pr()),e.ar(ee.provider)),ee.provider),o:()=>{ee.t||(e.u(ee),ee.t=!0)},destroy:()=>{ee.provider=null,ee.t=!1}};export default ee;
1
+ import e from"../managers/braze-instance.js";import ee from"./feed-provider.js";const re={t:!1,provider:null,er:()=>(re.o(),re.provider||(re.provider=new ee(e.l(),e.mr()),e.ar(re.provider)),re.provider),o:()=>{re.t||(e.u(re),re.t=!0)},destroy:()=>{re.provider=null,re.t=!1}};export default re;
@@ -1 +1 @@
1
- import C from"../common/base-provider.js";import e from"../managers/braze-instance.js";import Feed from"./feed.js";import{newCardFromFeedJson as tt,newCardFromSerializedValue as _}from"../Card/util/card-factory.js";import{rehydrateDateAfterJsonization as w}from"../util/date-utils.js";import{STORAGE_KEYS as o}from"../managers/storage-manager.js";import u from"../managers/subscription-manager.js";export default class Y extends C{constructor(t,s){super(),this.h=t,this.Is=s,this.vt=new u,e.Ut(this.vt),this.zt()}zt(){const t=this.h.I(o.q.Ks)||[],s=[];for(let i=0;i<t.length;i++){const e=_(t[i]);null!=e&&s.push(e)}this.Xt=s,this.Os=w(this.h.I(o.q.Qs))}Vs(t){const s=[];let i=null;const e=this.h.I(o.q.P)||{},r={};for(let h=0;h<t.length;h++){i=t[h];const o=tt(i);null!=o&&(e[o.id]&&(o.viewed=!0,r[o.id]=!0),s.push(o))}this.h.B(o.q.P,r),this.Xt=s,this.Ss(),this.Os=new Date,this.h.B(o.q.Qs,this.Os)}Ss(){const t=[];for(let s=0;s<this.Xt.length;s++)t.push(this.Xt[s].ss());this.h.B(o.q.Ks,t)}_s(t){null!=t&&t.feed&&(this.zt(),this.Vs(t.feed),this.vt.Nt(new Feed(this.Xt.slice(),this.Os)))}Ws(){this.zt();const t=[],s=new Date;for(let i=0;i<this.Xt.length;i++)(null==this.Xt[i].expiresAt||this.Xt[i].expiresAt>=s)&&t.push(this.Xt[i]);return new Feed(t,this.Os)}Ts(){this.Is.requestFeedRefresh()}Ps(t){return this.vt.Et(t)}clearData(t){null==t&&(t=!1),this.Xt=[],this.Os=null,t&&(this.h.$s(o.q.Ks),this.h.$s(o.q.Qs)),this.vt.Nt(new Feed(this.Xt.slice(),this.Os))}}
1
+ import C from"../common/base-provider.js";import e from"../managers/braze-instance.js";import Feed from"./feed.js";import{newCardFromFeedJson as tt,newCardFromSerializedValue as _}from"../Card/util/card-factory.js";import{rehydrateDateAfterJsonization as w}from"../util/date-utils.js";import{STORAGE_KEYS as o}from"../managers/storage-manager.js";import u from"../managers/subscription-manager.js";export default class ee extends C{constructor(t,s){super(),this.h=t,this.Is=s,this.vt=new u,e.Ut(this.vt),this.zt()}zt(){const t=this.h.I(o.q.Ks)||[],s=[];for(let i=0;i<t.length;i++){const e=_(t[i]);null!=e&&s.push(e)}this.Xt=s,this.Os=w(this.h.I(o.q.Qs))}Vs(t){const s=[];let i=null;const e=this.h.I(o.q.P)||{},r={};for(let h=0;h<t.length;h++){i=t[h];const o=tt(i);null!=o&&(e[o.id]&&(o.viewed=!0,r[o.id]=!0),s.push(o))}this.h.B(o.q.P,r),this.Xt=s,this.Ss(),this.Os=new Date,this.h.B(o.q.Qs,this.Os)}Ss(){const t=[];for(let s=0;s<this.Xt.length;s++)t.push(this.Xt[s].ss());this.h.B(o.q.Ks,t)}_s(t){null!=t&&t.feed&&(this.zt(),this.Vs(t.feed),this.vt.Nt(new Feed(this.Xt.slice(),this.Os)))}Ws(){this.zt();const t=[],s=new Date;for(let i=0;i<this.Xt.length;i++)(null==this.Xt[i].expiresAt||this.Xt[i].expiresAt>=s)&&t.push(this.Xt[i]);return new Feed(t,this.Os)}Ts(){this.Is.requestFeedRefresh()}Ps(t){return this.vt.Et(t)}clearData(t){null==t&&(t=!1),this.Xt=[],this.Os=null,t&&(this.h.$s(o.q.Ks),this.h.$s(o.q.Qs)),this.vt.Nt(new Feed(this.Xt.slice(),this.Os))}}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import ee from"./feed-provider-factory.js";export function getCachedFeed(){if(e.rr())return ee.er().Ws()}
1
+ import e from"../managers/braze-instance.js";import re from"./feed-provider-factory.js";export function getCachedFeed(){if(e.rr())return re.er().Ws()}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";export function logFeedDisplayed(){if(e.rr())return e.nr().mr(r.lr.qr).S}
1
+ import e from"../managers/braze-instance.js";import r from"../../shared-lib/braze-shared-lib.js";export function logFeedDisplayed(){if(e.rr())return e.nr().yr(r.qr.Fr).S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import ee from"./feed-provider-factory.js";export function requestFeedRefresh(){if(e.rr())return ee.er().Ts()}
1
+ import e from"../managers/braze-instance.js";import re from"./feed-provider-factory.js";export function requestFeedRefresh(){if(e.rr())return re.er().Ts()}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import ee from"./feed-provider-factory.js";export function subscribeToFeedUpdates(r){if(e.rr())return ee.er().Ps(r)}
1
+ import e from"../managers/braze-instance.js";import re from"./feed-provider-factory.js";export function subscribeToFeedUpdates(r){if(e.rr())return re.er().Ps(r)}
@@ -1 +1 @@
1
- import e from"../../managers/braze-instance.js";import{destroyFeedHtml as y}from"../../common/feed-display.js";export function destroyFeed(){if(!e.rr())return;const o=document.querySelectorAll(".ab-feed");for(let e=0;e<o.length;e++)y(o[e])}
1
+ import e from"../../managers/braze-instance.js";import{destroyFeedHtml as z}from"../../common/feed-display.js";export function destroyFeed(){if(!e.rr())return;const o=document.querySelectorAll(".ab-feed");for(let e=0;e<o.length;e++)z(o[e])}
@@ -1 +1 @@
1
- import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{destroyFeedHtml as y,detectFeedImpressions as T,feedToHtml as z,LAST_REQUESTED_REFRESH_DATA_ATTRIBUTE as N,refreshFeed as q,registerFeedSubscriptionId as I,updateFeedCards as L}from"../../common/feed-display.js";import{Feed,logFeedDisplayed,subscribeToFeedUpdates}from"../index.js";import ee from"../feed-provider-factory.js";import{intersection as te}from"../../util/code-utils.js";import{setCardHeight as M}from"../../Card/display/card-display.js";import{setupFeedUI as $}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";export function showFeed(t,n,o){if(!e.rr())return;$();const s=(e,t)=>{if(null==t)return e;const n=[];for(let e=0;e<t.length;e++)n.push(t[e].toLowerCase());const o=[];for(let t=0;t<e.length;t++){const r=[];for(let n=0;n<e[t].categories.length;n++)r.push(e[t].categories[n].toLowerCase());te(r,n).length>0&&o.push(e[t])}return o},i=e.nn(D.tn)||e.nn(D.en)||!1;let l=!1;null==t&&(t=document.body,l=!0);let a=!1,f=null;null==n?(f=ee.er().Ws(),L(f,s(f.cards,o),f.lastUpdated,null,i),a=!0):f=new Feed(s(n,o),new Date);const u=z(f,i);if(a){(null==f.lastUpdated||(new Date).valueOf()-f.lastUpdated.valueOf()>Feed.ur)&&(r.D.info(`Cached feed was older than max TTL of ${Feed.ur} ms, requesting an update from the server.`),q(f,u));const e=(new Date).valueOf(),t=subscribeToFeedUpdates((function(t){const n=u.querySelectorAll(".ab-refresh-button")[0];if(null!=n){let t=500;const o=parseInt(u.getAttribute(N));isNaN(o)?t-=(new Date).valueOf()-e:t-=(new Date).valueOf()-o,setTimeout((function(){n.className=n.className.replace(/fa-spin/g,"")}),Math.max(t,0))}L(f,s(t.cards,o),t.lastUpdated,u,i)}));I(t,u)}const m=e=>{const t=e.querySelectorAll(".ab-feed");let n=null;for(let o=0;o<t.length;o++)t[o].parentNode===e&&(n=t[o]);null!=n?(y(n),n.parentNode.replaceChild(u,n)):e.appendChild(u),setTimeout((function(){u.className=u.className.replace("ab-hide","ab-show")}),0),l&&u.focus(),logFeedDisplayed(),T(f,u),M(f.cards,e)};var c;null!=t?m(t):window.onload=(c=window.onload,function(){"function"==typeof c&&c(),m(document.body)})}
1
+ import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{destroyFeedHtml as z,detectFeedImpressions as T,feedToHtml as N,LAST_REQUESTED_REFRESH_DATA_ATTRIBUTE as q,refreshFeed as I,registerFeedSubscriptionId as L,updateFeedCards as M}from"../../common/feed-display.js";import{Feed,logFeedDisplayed,subscribeToFeedUpdates}from"../index.js";import re from"../feed-provider-factory.js";import{intersection as te}from"../../util/code-utils.js";import{setCardHeight as $}from"../../Card/display/card-display.js";import{setupFeedUI as k}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";export function showFeed(t,n,o){if(!e.rr())return;k();const s=(e,t)=>{if(null==t)return e;const n=[];for(let e=0;e<t.length;e++)n.push(t[e].toLowerCase());const o=[];for(let t=0;t<e.length;t++){const r=[];for(let n=0;n<e[t].categories.length;n++)r.push(e[t].categories[n].toLowerCase());te(r,n).length>0&&o.push(e[t])}return o},i=e.nn(D.tn)||e.nn(D.en)||!1;let l=!1;null==t&&(t=document.body,l=!0);let a=!1,f=null;null==n?(f=re.er().Ws(),M(f,s(f.cards,o),f.lastUpdated,null,i),a=!0):f=new Feed(s(n,o),new Date);const u=N(f,i);if(a){(null==f.lastUpdated||(new Date).valueOf()-f.lastUpdated.valueOf()>Feed.ur)&&(r.D.info(`Cached feed was older than max TTL of ${Feed.ur} ms, requesting an update from the server.`),I(f,u));const e=(new Date).valueOf(),t=subscribeToFeedUpdates((function(t){const n=u.querySelectorAll(".ab-refresh-button")[0];if(null!=n){let t=500;const o=parseInt(u.getAttribute(q));isNaN(o)?t-=(new Date).valueOf()-e:t-=(new Date).valueOf()-o,setTimeout((function(){n.className=n.className.replace(/fa-spin/g,"")}),Math.max(t,0))}M(f,s(t.cards,o),t.lastUpdated,u,i)}));L(t,u)}const m=e=>{const t=e.querySelectorAll(".ab-feed");let n=null;for(let o=0;o<t.length;o++)t[o].parentNode===e&&(n=t[o]);null!=n?(z(n),n.parentNode.replaceChild(u,n)):e.appendChild(u),setTimeout((function(){u.className=u.className.replace("ab-hide","ab-show")}),0),l&&u.focus(),logFeedDisplayed(),T(f,u),$(f.cards,e)};var c;null!=t?m(t):window.onload=(c=window.onload,function(){"function"==typeof c&&c(),m(document.body)})}
@@ -1 +1 @@
1
- import{attachInAppMessageCSS as nt}from"../../ui/js/iam-css.js";import et from"../../util/browser-detector.js";import{logInAppMessageHtmlClick}from"../index.js";import{getUser as G}from"../../Core/get-user.js";import{InAppMessage}from"../index.js";import{keys as X}from"../../util/code-utils.js";import{OperatingSystems as ot}from"../../util/device-constants.js";import{parseQueryStringKeyValues as st}from"../../util/url-utils.js";import{WindowUtils as P}from"../../util/window-utils.js";export default function rt(t,n,e,o,s,r){const i=document.createElement("iframe");i.setAttribute("title","Modal Message"),s&&(i.style.zIndex=s+1);const u=n=>{const e=n.getAttribute("href"),s=n.onclick;return r=>{if(null!=s&&"function"==typeof s&&!1===s())return;let u=st(e).abButtonId;if(null!=u&&""!==u||(u=n.getAttribute("id")),null!=e&&""!==e&&0!==e.indexOf("#")){const s="blank"===(n.getAttribute("target")||"").toLowerCase().replace("_",""),c=o||t.openTarget===InAppMessage.OpenTarget.BLANK||s,a=()=>{logInAppMessageHtmlClick(t,u,e),P.openUri(e,c,r)};c?a():t.on(i,a)}else logInAppMessageHtmlClick(t,u,e);return r.stopPropagation(),!1}},c=(t,n,e)=>{const o=`([\\w]+)\\s*=\\s*document.createElement\\(['"]${e}['"]\\)`,s=t.match(new RegExp(o));if(s){const e=`${s[1]}.setAttribute("nonce", "${n}")`;return`${t.slice(0,s.index+s[0].length)};${e};${t.slice(s.index+s[0].length)}`}return null};if(i.onload=()=>{let o=null;if(null!=r){o=document.createElement("html"),o.innerHTML=t.message;const n=o.getElementsByTagName("style");for(let t=0;t<n.length;t++)n[t].setAttribute("nonce",r);const e=o.getElementsByTagName("script");for(let t=0;t<e.length;t++){e[t].setAttribute("nonce",r),e[t].innerHTML=e[t].innerHTML.replace(/<style>/g,`<style nonce='${r}'>`);const n=c(e[t].innerHTML,r,"script");n&&(e[t].innerHTML=n);const o=c(e[t].innerHTML,r,"style");o&&(e[t].innerHTML=o)}}i.contentWindow.focus(),i.contentWindow.document.write(o?o.innerHTML:t.message);const s=i.contentWindow.document.getElementsByTagName("head")[0];if(null!=s){if(nt(s),t.sn()){const n=document.createElement("style");n.innerHTML=t.css,n.id=t.rn(),null!=r&&n.setAttribute("nonce",r),s.appendChild(n)}const n=i.contentWindow.document.createElement("base");n.setAttribute("target","_parent"),s.appendChild(n)}const a=i.contentWindow.document.getElementsByTagName("title");a.length>0&&i.setAttribute("title",a[0].textContent);const l={closeMessage:function(){t.on(i)},logClick:function(){const n=[t,...arguments];logInAppMessageHtmlClick.apply(t,Array.prototype.slice.call(n))},display:{},web:{}},requestPushPermission=function(){return function(){const t=arguments;import("../../Push/request-push-permission.js").then((n=>{n.requestPushPermission.apply(null,Array.prototype.slice.call(t))}))}},m={requestImmediateDataFlush:async function(){const t=arguments,n=await import("../../Core/request-immediate-data-flush.js");n.requestImmediateDataFlush.apply(null,Array.prototype.slice.call(t))},logCustomEvent:async function(){const t=arguments,n=await import("../../Core/log-custom-event.js");n.logCustomEvent.apply(null,Array.prototype.slice.call(t))},logPurchase:async function(){const t=arguments,n=await import("../../Core/log-purchase.js");n.logPurchase.apply(null,Array.prototype.slice.call(t))},unregisterPush:async function(){const t=arguments,n=await import("../../Push/unregister-push.js");n.unregisterPush.apply(null,Array.prototype.slice.call(t))},requestPushPermission:requestPushPermission()},f=function(t){return function(){m[t].apply(null,Array.prototype.slice.call(arguments))}};for(const t of X(m))l[t]=f(t);const d=["setFirstName","setLastName","setEmail","setGender","setDateOfBirth","setCountry","setHomeCity","setEmailNotificationSubscriptionType","setLanguage","addAlias","setPushNotificationSubscriptionType","setPhoneNumber","setCustomUserAttribute","addToCustomAttributeArray","removeFromCustomAttributeArray","incrementCustomUserAttribute","setCustomLocationAttribute","addToSubscriptionGroup","removeFromSubscriptionGroup"],p=function(t){return function(){const n=G();n[t].apply(n,Array.prototype.slice.call(arguments))}},y={};for(let t=0;t<d.length;t++)y[d[t]]=p(d[t]);l.getUser=function(){return y};const b={showFeed:n},h=function(n){return function(){const e=arguments;t.on(i,(function(){b[n].apply(null,Array.prototype.slice.call(e))}))}};for(const t of X(b))l.display[t]=h(t);const g={registerAppboyPushMessages:requestPushPermission()},A=function(t){return function(){g[t].apply(null,Array.prototype.slice.call(arguments))}};for(const t of X(g))l.web[t]=A(t);if(i.contentWindow.appboyBridge=l,i.contentWindow.brazeBridge=l,t.un!==InAppMessage.es.cn){const t=i.contentWindow.document.getElementsByTagName("a");for(let n=0;n<t.length;n++)t[n].onclick=u(t[n]);const n=i.contentWindow.document.getElementsByTagName("button");for(let t=0;t<n.length;t++)n[t].onclick=u(n[t])}const j=i.contentWindow.document.body;if(null!=j){t.an()&&(j.id=t.htmlId);const n=document.createElement("hidden");n.onclick=l.closeMessage,n.className="ab-programmatic-close-button",j.appendChild(n)}i.contentWindow.dispatchEvent(new CustomEvent("ab.BridgeReady")),-1!==i.className.indexOf("ab-start-hidden")&&(i.className=i.className.replace("ab-start-hidden",""),e(i)),document.activeElement!==i&&i.focus()},i.className="ab-in-app-message ab-start-hidden ab-html-message ab-modal-interactions",et.OS===ot.ln){const n=document.createElement("div");return n.className="ab-ios-scroll-wrapper",n.appendChild(i),t.mn=n,n}return t.mn=i,i}
1
+ import{attachInAppMessageCSS as nt}from"../../ui/js/iam-css.js";import et from"../../util/browser-detector.js";import{logInAppMessageHtmlClick}from"../index.js";import{getUser as H}from"../../Core/get-user.js";import{InAppMessage}from"../index.js";import{keys as Y}from"../../util/code-utils.js";import{OperatingSystems as ot}from"../../util/device-constants.js";import{parseQueryStringKeyValues as st}from"../../util/url-utils.js";import{WindowUtils as G}from"../../util/window-utils.js";export default function rt(t,n,e,o,s,r){const i=document.createElement("iframe");i.setAttribute("title","Modal Message"),s&&(i.style.zIndex=s+1);const u=n=>{const e=n.getAttribute("href"),s=n.onclick;return r=>{if(null!=s&&"function"==typeof s&&!1===s())return;let u=st(e).abButtonId;if(null!=u&&""!==u||(u=n.getAttribute("id")),null!=e&&""!==e&&0!==e.indexOf("#")){const s="blank"===(n.getAttribute("target")||"").toLowerCase().replace("_",""),c=o||t.openTarget===InAppMessage.OpenTarget.BLANK||s,a=()=>{logInAppMessageHtmlClick(t,u,e),G.openUri(e,c,r)};c?a():t.on(i,a)}else logInAppMessageHtmlClick(t,u,e);return r.stopPropagation(),!1}},c=(t,n,e)=>{const o=`([\\w]+)\\s*=\\s*document.createElement\\(['"]${e}['"]\\)`,s=t.match(new RegExp(o));if(s){const e=`${s[1]}.setAttribute("nonce", "${n}")`;return`${t.slice(0,s.index+s[0].length)};${e};${t.slice(s.index+s[0].length)}`}return null};if(i.onload=()=>{let o=null;if(null!=r){o=document.createElement("html"),o.innerHTML=t.message;const n=o.getElementsByTagName("style");for(let t=0;t<n.length;t++)n[t].setAttribute("nonce",r);const e=o.getElementsByTagName("script");for(let t=0;t<e.length;t++){e[t].setAttribute("nonce",r),e[t].innerHTML=e[t].innerHTML.replace(/<style>/g,`<style nonce='${r}'>`);const n=c(e[t].innerHTML,r,"script");n&&(e[t].innerHTML=n);const o=c(e[t].innerHTML,r,"style");o&&(e[t].innerHTML=o)}}i.contentWindow.focus(),i.contentWindow.document.write(o?o.innerHTML:t.message);const s=i.contentWindow.document.getElementsByTagName("head")[0];if(null!=s){if(nt(s),t.sn()){const n=document.createElement("style");n.innerHTML=t.css,n.id=t.rn(),null!=r&&n.setAttribute("nonce",r),s.appendChild(n)}const n=i.contentWindow.document.createElement("base");n.setAttribute("target","_parent"),s.appendChild(n)}const a=i.contentWindow.document.getElementsByTagName("title");a.length>0&&i.setAttribute("title",a[0].textContent);const l={closeMessage:function(){t.on(i)},logClick:function(){const n=[t,...arguments];logInAppMessageHtmlClick.apply(t,Array.prototype.slice.call(n))},display:{},web:{}},requestPushPermission=function(){return function(){const t=arguments;import("../../Push/request-push-permission.js").then((n=>{n.requestPushPermission.apply(null,Array.prototype.slice.call(t))}))}},m={requestImmediateDataFlush:async function(){const t=arguments,n=await import("../../Core/request-immediate-data-flush.js");n.requestImmediateDataFlush.apply(null,Array.prototype.slice.call(t))},logCustomEvent:async function(){const t=arguments,n=await import("../../Core/log-custom-event.js");n.logCustomEvent.apply(null,Array.prototype.slice.call(t))},logPurchase:async function(){const t=arguments,n=await import("../../Core/log-purchase.js");n.logPurchase.apply(null,Array.prototype.slice.call(t))},unregisterPush:async function(){const t=arguments,n=await import("../../Push/unregister-push.js");n.unregisterPush.apply(null,Array.prototype.slice.call(t))},requestPushPermission:requestPushPermission()},f=function(t){return function(){m[t].apply(null,Array.prototype.slice.call(arguments))}};for(const t of Y(m))l[t]=f(t);const d=["setFirstName","setLastName","setEmail","setGender","setDateOfBirth","setCountry","setHomeCity","setEmailNotificationSubscriptionType","setLanguage","addAlias","setPushNotificationSubscriptionType","setPhoneNumber","setCustomUserAttribute","addToCustomAttributeArray","removeFromCustomAttributeArray","incrementCustomUserAttribute","setCustomLocationAttribute","addToSubscriptionGroup","removeFromSubscriptionGroup"],p=function(t){return function(){const n=H();n[t].apply(n,Array.prototype.slice.call(arguments))}},y={};for(let t=0;t<d.length;t++)y[d[t]]=p(d[t]);l.getUser=function(){return y};const b={showFeed:n},h=function(n){return function(){const e=arguments;t.on(i,(function(){b[n].apply(null,Array.prototype.slice.call(e))}))}};for(const t of Y(b))l.display[t]=h(t);const g={registerAppboyPushMessages:requestPushPermission()},A=function(t){return function(){g[t].apply(null,Array.prototype.slice.call(arguments))}};for(const t of Y(g))l.web[t]=A(t);if(i.contentWindow.appboyBridge=l,i.contentWindow.brazeBridge=l,t.un!==InAppMessage.es.cn){const t=i.contentWindow.document.getElementsByTagName("a");for(let n=0;n<t.length;n++)t[n].onclick=u(t[n]);const n=i.contentWindow.document.getElementsByTagName("button");for(let t=0;t<n.length;t++)n[t].onclick=u(n[t])}const j=i.contentWindow.document.body;if(null!=j){t.an()&&(j.id=t.htmlId);const n=document.createElement("hidden");n.onclick=l.closeMessage,n.className="ab-programmatic-close-button",j.appendChild(n)}i.contentWindow.dispatchEvent(new CustomEvent("ab.BridgeReady")),-1!==i.className.indexOf("ab-start-hidden")&&(i.className=i.className.replace("ab-start-hidden",""),e(i)),document.activeElement!==i&&i.focus()},i.className="ab-in-app-message ab-start-hidden ab-html-message ab-modal-interactions",et.OS===ot.ln){const n=document.createElement("div");return n.className="ab-ios-scroll-wrapper",n.appendChild(i),t.mn=n,n}return t.mn=i,i}
@@ -1 +1 @@
1
- import{addPassiveEventListener as oe,buildSvg as ne,detectSwipe as d,DIRECTIONS as c}from"../../util/dom-utils.js";import{createCloseButton as i}from"../../util/component-utils.js";import{isTransparent as ie,toRgba as se}from"../../util/color-utils.js";import{FullScreenMessage,HtmlMessage,InAppMessage,logInAppMessageClick,ModalMessage,SlideUpMessage}from"../index.js";import{_handleBrazeAction as m}from"../../Core/handle-braze-action.js";import rt from"./html-message-to-html.js";import ce from"./modal-utils.js";import r from"../../../shared-lib/braze-shared-lib.js";export default function re(e,t,o,a,n,s){if(e.he=document.activeElement,e instanceof HtmlMessage)return rt(e,t,o,a,n,s);const l=function(e,t,o,a,n){const s=document.createElement("div");s.className="ab-in-app-message ab-start-hidden ab-background",n&&(s.style.zIndex=n+1),e.we()&&(s.className+=" ab-modal-interactions",s.setAttribute("tabindex","-1")),e.sn()||(s.style.color=se(e.textColor),s.style.backgroundColor=se(e.backgroundColor),ie(e.backgroundColor)&&(s.className+=" ab-no-shadow"));const c=()=>{-1!==s.className.indexOf("ab-start-hidden")&&(s.className=s.className.replace("ab-start-hidden",""),o(s))};e.imageStyle===InAppMessage.ImageStyle.GRAPHIC&&(s.className+=" graphic"),e.orientation===InAppMessage.Orientation.LANDSCAPE&&(s.className+=" landscape"),0===e.buttons.length&&(e.clickAction!==InAppMessage.ClickAction.NONE&&(s.className+=" ab-clickable"),s.onclick=o=>(e.on(s,(()=>{logInAppMessageClick(e),e.clickAction===InAppMessage.ClickAction.URI?m(e.uri,o,a||e.openTarget===InAppMessage.OpenTarget.BLANK):e.clickAction===InAppMessage.ClickAction.NEWS_FEED&&t()})),o.stopPropagation(),!1));const d=i("Close Message",e.sn()?void 0:se(e.closeButtonColor),(()=>{e.on(s)}));s.appendChild(d),n&&(d.style.zIndex=n+2);const l=document.createElement("div");l.className="ab-message-text";const b=(e.messageAlignment||e.xe).toLowerCase();l.className+=" "+b+"-aligned";let u=!1;const f=document.createElement("div");if(f.className="ab-image-area",e.imageUrl){if(e.cropType===InAppMessage.CropType.CENTER_CROP){const t=document.createElement("span");t.className="ab-center-cropped-img",t.style.backgroundImage="url("+e.imageUrl+")",t.setAttribute("role","img"),t.setAttribute("aria-label","Modal Image"),e.ze(t),f.appendChild(t)}else{const t=document.createElement("img");t.setAttribute("src",e.imageUrl),e.ze(t),u=!0,t.onload=c,setTimeout(c,1e3),f.appendChild(t)}s.appendChild(f),l.className+=" ab-with-image"}else if(e.icon){f.className+=" ab-icon-area";const t=document.createElement("span");t.className="ab-icon",e.sn()||(t.style.backgroundColor=se(e.iconBackgroundColor),t.style.color=se(e.iconColor));const o=document.createElement("i");o.className="fa",o.appendChild(document.createTextNode(e.icon)),o.setAttribute("aria-hidden",!0),t.appendChild(o),f.appendChild(t),s.appendChild(f),l.className+=" ab-with-icon"}if(oe(l,"touchstart",(function(){})),e.header&&e.header.length>0){const t=document.createElement("h1");t.className="ab-message-header",e.Me=r.nt.et(),t.id=e.Me;const o=(e.headerAlignment||InAppMessage.TextAlignment.CENTER).toLowerCase();t.className+=" "+o+"-aligned",e.sn()||(t.style.color=se(e.headerTextColor)),t.appendChild(document.createTextNode(e.header)),l.appendChild(t)}return l.appendChild(e.ke()),s.appendChild(l),u||c(),e.mn=s,s}(e,t,o,a,n);if(e instanceof FullScreenMessage||e instanceof ModalMessage){const o=e instanceof FullScreenMessage?"ab-fullscreen":"ab-modal";l.className+=` ${o} ab-centered`,ce.Ce(e,t,l,a),ce.Le(l),ce.Ie(e.Me,l)}else if(e instanceof SlideUpMessage){l.className+=" ab-slideup";const t=l.getElementsByClassName("ab-close-button")[0];if(null!=t){const o=ne("0 0 11.38 19.44","M11.38 9.72l-9.33 9.72L0 17.3l7.27-7.58L0 2.14 2.05 0l9.33 9.72z",e.sn()?void 0:se(e.closeButtonColor));o.setAttribute("class","ab-chevron"),t.appendChild(o)}let o,a;d(l,c.ot,(e=>{l.className+=" ab-swiped-left",t.onclick(e)})),d(l,c.at,(e=>{l.className+=" ab-swiped-right",t.onclick(e)})),e.slideFrom===InAppMessage.SlideFrom.TOP?(o=c.Te,a=" ab-swiped-up"):(o=c.$e,a=" ab-swiped-down"),d(l,o,(e=>{l.className+=a,t.onclick(e)}))}return l}
1
+ import{addPassiveEventListener as oe,buildSvg as ne,detectSwipe as d,DIRECTIONS as c}from"../../util/dom-utils.js";import{createCloseButton as i}from"../../util/component-utils.js";import{isTransparent as ie,toRgba as se}from"../../util/color-utils.js";import{FullScreenMessage,HtmlMessage,InAppMessage,logInAppMessageClick,ModalMessage,SlideUpMessage}from"../index.js";import{_handleBrazeAction as m}from"../../Core/handle-braze-action.js";import rt from"./html-message-to-html.js";import ce from"./modal-utils.js";import r from"../../../shared-lib/braze-shared-lib.js";export default function de(e,t,o,a,n,s){if(e.he=document.activeElement,e instanceof HtmlMessage)return rt(e,t,o,a,n,s);const l=function(e,t,o,a,n){const s=document.createElement("div");s.className="ab-in-app-message ab-start-hidden ab-background",n&&(s.style.zIndex=n+1),e.we()&&(s.className+=" ab-modal-interactions",s.setAttribute("tabindex","-1")),e.sn()||(s.style.color=se(e.textColor),s.style.backgroundColor=se(e.backgroundColor),ie(e.backgroundColor)&&(s.className+=" ab-no-shadow"));const c=()=>{-1!==s.className.indexOf("ab-start-hidden")&&(s.className=s.className.replace("ab-start-hidden",""),o(s))};e.imageStyle===InAppMessage.ImageStyle.GRAPHIC&&(s.className+=" graphic"),e.orientation===InAppMessage.Orientation.LANDSCAPE&&(s.className+=" landscape"),0===e.buttons.length&&(e.clickAction!==InAppMessage.ClickAction.NONE&&(s.className+=" ab-clickable"),s.onclick=o=>(e.on(s,(()=>{logInAppMessageClick(e),e.clickAction===InAppMessage.ClickAction.URI?m(e.uri,o,a||e.openTarget===InAppMessage.OpenTarget.BLANK):e.clickAction===InAppMessage.ClickAction.NEWS_FEED&&t()})),o.stopPropagation(),!1));const d=i("Close Message",e.sn()?void 0:se(e.closeButtonColor),(()=>{e.on(s)}));s.appendChild(d),n&&(d.style.zIndex=n+2);const l=document.createElement("div");l.className="ab-message-text";const b=(e.messageAlignment||e.xe).toLowerCase();l.className+=" "+b+"-aligned";let u=!1;const f=document.createElement("div");if(f.className="ab-image-area",e.imageUrl){if(e.cropType===InAppMessage.CropType.CENTER_CROP){const t=document.createElement("span");t.className="ab-center-cropped-img",t.style.backgroundImage="url("+e.imageUrl+")",t.setAttribute("role","img"),t.setAttribute("aria-label","Modal Image"),e.ze(t),f.appendChild(t)}else{const t=document.createElement("img");t.setAttribute("src",e.imageUrl),e.ze(t),u=!0,t.onload=c,setTimeout(c,1e3),f.appendChild(t)}s.appendChild(f),l.className+=" ab-with-image"}else if(e.icon){f.className+=" ab-icon-area";const t=document.createElement("span");t.className="ab-icon",e.sn()||(t.style.backgroundColor=se(e.iconBackgroundColor),t.style.color=se(e.iconColor));const o=document.createElement("i");o.className="fa",o.appendChild(document.createTextNode(e.icon)),o.setAttribute("aria-hidden",!0),t.appendChild(o),f.appendChild(t),s.appendChild(f),l.className+=" ab-with-icon"}if(oe(l,"touchstart",(function(){})),e.header&&e.header.length>0){const t=document.createElement("h1");t.className="ab-message-header",e.Me=r.nt.et(),t.id=e.Me;const o=(e.headerAlignment||InAppMessage.TextAlignment.CENTER).toLowerCase();t.className+=" "+o+"-aligned",e.sn()||(t.style.color=se(e.headerTextColor)),t.appendChild(document.createTextNode(e.header)),l.appendChild(t)}return l.appendChild(e.ke()),s.appendChild(l),u||c(),e.mn=s,s}(e,t,o,a,n);if(e instanceof FullScreenMessage||e instanceof ModalMessage){const o=e instanceof FullScreenMessage?"ab-fullscreen":"ab-modal";l.className+=` ${o} ab-centered`,ce.Ce(e,t,l,a),ce.Le(l),ce.Ie(e.Me,l)}else if(e instanceof SlideUpMessage){l.className+=" ab-slideup";const t=l.getElementsByClassName("ab-close-button")[0];if(null!=t){const o=ne("0 0 11.38 19.44","M11.38 9.72l-9.33 9.72L0 17.3l7.27-7.58L0 2.14 2.05 0l9.33 9.72z",e.sn()?void 0:se(e.closeButtonColor));o.setAttribute("class","ab-chevron"),t.appendChild(o)}let o,a;d(l,c.ot,(e=>{l.className+=" ab-swiped-left",t.onclick(e)})),d(l,c.at,(e=>{l.className+=" ab-swiped-right",t.onclick(e)})),e.slideFrom===InAppMessage.SlideFrom.TOP?(o=c.Te,a=" ab-swiped-up"):(o=c.$e,a=" ab-swiped-down"),d(l,o,(e=>{l.className+=a,t.onclick(e)}))}return l}
@@ -1 +1 @@
1
- import b from"../util/net.js";import e from"../managers/braze-instance.js";import{ControlMessage,HtmlMessage,InAppMessage,InAppMessageButton}from"./index.js";import s from"../common/event-logger.js";import{newInAppMessageFromJson as it}from"./in-app-message-factory.js";import{randomInclusive as lt}from"../util/math.js";import t from"../models/request-result.js";import r from"../../shared-lib/braze-shared-lib.js";import u from"../managers/subscription-manager.js";import ut from"../triggers/models/trigger.js";import{validateValueIsFromEnum as B}from"../util/code-utils.js";export default class ge{constructor(t,i,s,r){this.jt=t,this.j=i,this.h=s,this.v=r,this.De=new u,e.Ut(this.De),this._e=1e3,this.Se=6e4}Be(){return this.De}Ee(t){return this.De.Et(t)}Fe(){return this.Ge}Ne(t){this.Ge=t}qe(e,i){if(!B(InAppMessage.Oe,i,`${i} is not a valid in-app message display failure`,"InAppMessage.DisplayFailures"))return new t;const n={trigger_ids:[e],error_code:i};return s.G(r.A.Re,n)}G(e,i,n,a){const o=new t;let l;if(e instanceof ControlMessage)l={trigger_ids:[e.triggerId]};else{if(i===r.A.He||e instanceof HtmlMessage&&i===r.A.Je){if(!e.k(a))return r.D.info("This in-app message has already received a click. Ignoring analytics event."),o}else if(i===r.A.Ke){if(!e.R())return r.D.info("This in-app message has already received an impression. Ignoring analytics event."),o}l=this.Pe(e)}return null==l?o:(null!=n&&(l.bid=n),s.G(i,l))}Qe(e,i){const n=new t;if(!e.k())return r.D.info("This in-app message button has already received a click. Ignoring analytics event."),n;const a=this.Pe(i);return null==a?n:e.id===InAppMessageButton.Ue?(r.D.info("This in-app message button does not have a tracking id. Not logging event to Braze servers."),n):(null!=e.id&&(a.bid=e.id),s.G(r.A.Je,a))}Ve(t,e,i,s){let r=this.jt.We(!1,!1);r=this.jt.Ls(r),r.template={trigger_id:t.triggerId,trigger_event_type:e},null!=i&&(r.template.data=i.Xe());const n=this.jt.Ns(r);this.jt.As(r,(()=>{b.Fs({url:`${this.jt.Js()}/template/`,data:r,headers:n,S:e=>{if(!this.jt.qs(r,e,n))return this.qe(t.triggerId,InAppMessage.Oe.Ye),void("function"==typeof t.Ze&&t.Ze());if(this.jt.Es(),null==e||null==e.templated_message)return void this.qe(t.triggerId,InAppMessage.Oe.Ye);const i=e.templated_message;if(i.type!==ut.ii.ei)return void this.qe(t.triggerId,InAppMessage.Oe.si);const s=it(i.data);null!=s?"function"==typeof t.ri?t.ri(s):this.qe(t.triggerId,InAppMessage.Oe.Ye):this.qe(t.triggerId,InAppMessage.Oe.si)},error:r=>{let n=`getting user personalization for message ${t.triggerId}`;if((new Date).valueOf()-t.ni>t.ai)this.qe(t.triggerId,InAppMessage.Oe.Ye);else{const r=Math.min(t.ai,this.Se),a=this._e;null==s&&(s=a);const o=Math.min(r,lt(a,3*s));n+=`. Retrying in ${o} ms`,setTimeout((()=>{this.Ve(t,e,i,o)}),o)}this.jt.Ms(r,n)}})}))}Pe(t){if(null==t.triggerId)return r.D.info("The in-app message has no analytics id. Not logging event to Braze servers."),null;const e={};return null!=t.triggerId&&(e.trigger_ids=[t.triggerId]),e}}
1
+ import b from"../util/net.js";import e from"../managers/braze-instance.js";import{ControlMessage,HtmlMessage,InAppMessage,InAppMessageButton}from"./index.js";import s from"../common/event-logger.js";import{newInAppMessageFromJson as it}from"./in-app-message-factory.js";import{randomInclusive as lt}from"../util/math.js";import t from"../models/request-result.js";import r from"../../shared-lib/braze-shared-lib.js";import u from"../managers/subscription-manager.js";import ut from"../triggers/models/trigger.js";import{validateValueIsFromEnum as K}from"../util/code-utils.js";import{BRAZE_ACTION_URI_REGEX as O,isValidBrazeActionJson as P}from"../util/validation-utils.js";import F from"../util/braze-actions.js";import{_getDecodedBrazeAction as pt}from"../Core/handle-braze-action.js";export default class ge{constructor(t,i,s,r){this.jt=t,this.j=i,this.h=s,this.v=r,this.ii=new u,e.Ut(this.ii),this.ei=1e3,this.si=6e4}ri(){return this.ii}ni(t){return this.ii.Et(t)}oi(){return this.ai}li(t){this.ai=t}ui(i,e){if(!K(InAppMessage.pi,e,`${e} is not a valid in-app message display failure`,"InAppMessage.DisplayFailures"))return new t;const n={trigger_ids:[i],error_code:e};return s.G(r.A.ci,n)}G(i,e,n,o){const a=new t;let l;if(i instanceof ControlMessage)l={trigger_ids:[i.triggerId]};else{if(e===r.A.mi||i instanceof HtmlMessage&&e===r.A.fi){if(!i.k(o))return r.D.info("This in-app message has already received a click. Ignoring analytics event."),a}else if(e===r.A.gi){if(!i.R())return r.D.info("This in-app message has already received an impression. Ignoring analytics event."),a}l=this.hi(i)}return null==l?a:(null!=n&&(l.bid=n),s.G(e,l))}di(i,e){const n=new t;if(!i.k())return r.D.info("This in-app message button has already received a click. Ignoring analytics event."),n;const o=this.hi(e);return null==o?n:i.id===InAppMessageButton.yi?(r.D.info("This in-app message button does not have a tracking id. Not logging event to Braze servers."),n):(null!=i.id&&(o.bid=i.id),s.G(r.A.fi,o))}vi(t){const i=t=>{if(!P(t))return!1;const e=t[F.properties.type];if(e===F.types.de){let e=!1;for(const s of t[F.properties.ue])if(e=e||i(s),e)return!0;return!1}return e===F.types.requestPushPermission};if(!(t instanceof InAppMessage))return!1;const e=t.buttons;for(const t of e)if(t.clickAction===InAppMessage.ClickAction.URI&&O.test(t.uri)){const e=pt(t.uri);if(i(e))return!0}if(t.clickAction===InAppMessage.ClickAction.URI&&O.test(t.uri)){const e=pt(t.uri);return i(e)}return!1}bi(t,i,e,s){let n=this.jt.ji(!1,!1);n=this.jt.Ls(n),n.template={trigger_id:t.triggerId,trigger_event_type:i},null!=e&&(n.template.data=e.zi());const o=this.jt.Ns(n);this.jt.As(n,(()=>{b.Fs({url:`${this.jt.Js()}/template/`,data:n,headers:o,S:async i=>{if(!this.jt.qs(n,i,o))return this.ui(t.triggerId,InAppMessage.pi.Ii),void("function"==typeof t.Ai&&t.Ai());if(this.jt.Es(),null==i||null==i.templated_message)return void this.ui(t.triggerId,InAppMessage.pi.Ii);const e=i.templated_message;if(e.type!==ut.wi.Mi)return void this.ui(t.triggerId,InAppMessage.pi.Di);const s=it(e.data);if(null!=s){if(this.vi(s)){const i=(await import("../Push/push-manager-factory.js")).default.getPushManager();if(null!=i&&!i.Ti())return r.D.error("In-App Message contains a push prompt braze action, but is not eligible for a push prompt. Ignoring."),void("function"==typeof t.Ai&&t.Ai())}"function"==typeof t._i?t._i(s):this.ui(t.triggerId,InAppMessage.pi.Ii)}else this.ui(t.triggerId,InAppMessage.pi.Di)},error:r=>{let n=`getting user personalization for message ${t.triggerId}`;if((new Date).valueOf()-t.ki>t.Bi)this.ui(t.triggerId,InAppMessage.pi.Ii);else{const r=Math.min(t.Bi,this.si),o=this.ei;null==s&&(s=o);const a=Math.min(r,lt(o,3*s));n+=`. Retrying in ${a} ms`,setTimeout((()=>{this.bi(t,i,e,a)}),a)}this.jt.Ms(r,n)}})}))}hi(t){if(null==t.triggerId)return r.D.info("The in-app message has no analytics id. Not logging event to Braze servers."),null;const i={};return null!=t.triggerId&&(i.trigger_ids=[t.triggerId]),i}}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import{InAppMessage,InAppMessageButton}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";export function logInAppMessageButtonClick(t,o){if(!e.rr())return!1;if(!(t instanceof InAppMessageButton))return r.D.error("button must be an InAppMessageButton object"),!1;if(!(o instanceof InAppMessage))return r.D.error(rr),!1;const s=me.m().Qe(t,o);if(s.S)for(let r=0;r<s.ve.length;r++)Q.er().je(H.Ar,[o.triggerId,t.id],s.ve[r]);return s.S}
1
+ import e from"../managers/braze-instance.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import{InAppMessage,InAppMessageButton}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";export function logInAppMessageButtonClick(t,o){if(!e.rr())return!1;if(!(t instanceof InAppMessageButton))return r.D.error("button must be an InAppMessageButton object"),!1;if(!(o instanceof InAppMessage))return r.D.error(rr),!1;const s=me.m().di(t,o);if(s.S)for(let r=0;r<s.ve.length;r++)V.er().je(Q.Ar,[o.triggerId,t.id],s.ve[r]);return s.S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{InAppMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";export function logInAppMessageClick(o){if(!e.rr())return!1;if(!(o instanceof InAppMessage))return r.D.error(rr),!1;const s=me.m().G(o,r.A.He);if(s)for(let r=0;r<s.ve.length;r++)Q.er().je(H.Ar,[o.triggerId],s.ve[r]);return s.S}
1
+ import e from"../managers/braze-instance.js";import{InAppMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";export function logInAppMessageClick(o){if(!e.rr())return!1;if(!(o instanceof InAppMessage))return r.D.error(rr),!1;const s=me.m().G(o,r.A.mi);if(s)for(let r=0;r<s.ve.length;r++)V.er().je(Q.Ar,[o.triggerId],s.ve[r]);return s.S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{HtmlMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import r from"../../shared-lib/braze-shared-lib.js";import H from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as Q}from"../triggers/triggers-provider-factory.js";export function logInAppMessageHtmlClick(s,t,o){if(!e.rr())return!1;if(!(s instanceof HtmlMessage))return r.D.error("inAppMessage argument to logInAppMessageHtmlClick must be an HtmlMessage object."),!1;let i=r.A.He;null!=t&&(i=r.A.Je);const n=me.m().G(s,i,t,o);if(n.S)for(let r=0;r<n.ve.length;r++)Q.er().je(H.Ar,[s.triggerId,t],n.ve[r]);return n.S}
1
+ import e from"../managers/braze-instance.js";import{HtmlMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import r from"../../shared-lib/braze-shared-lib.js";import Q from"../triggers/models/trigger-events.js";import{TriggersProviderFactory as V}from"../triggers/triggers-provider-factory.js";export function logInAppMessageHtmlClick(s,t,o){if(!e.rr())return!1;if(!(s instanceof HtmlMessage))return r.D.error("inAppMessage argument to logInAppMessageHtmlClick must be an HtmlMessage object."),!1;let i=r.A.mi;null!=t&&(i=r.A.fi);const n=me.m().G(s,i,t,o);if(n.S)for(let r=0;r<n.ve.length;r++)V.er().je(Q.Ar,[s.triggerId,t],n.ve[r]);return n.S}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import{ControlMessage,InAppMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";export function logInAppMessageImpression(n){if(!e.rr())return!1;if(!(n instanceof InAppMessage||n instanceof ControlMessage))return r.D.error(rr),!1;const s=n instanceof ControlMessage?r.A.W:r.A.Ke;return me.m().G(n,s).S}
1
+ import e from"../managers/braze-instance.js";import{ControlMessage,InAppMessage}from"../InAppMessage/index.js";import me from"./in-app-message-manager-factory.js";import{MUST_BE_IN_APP_MESSAGE_WARNING as rr}from"../common/constants.js";import r from"../../shared-lib/braze-shared-lib.js";export function logInAppMessageImpression(n){if(!e.rr())return!1;if(!(n instanceof InAppMessage||n instanceof ControlMessage))return r.D.error(rr),!1;const s=n instanceof ControlMessage?r.A.Ir:r.A.gi;return me.m().G(n,s).S}
@@ -1 +1 @@
1
- import{InAppMessage}from"../index.js";export default class FullScreenMessage extends InAppMessage{constructor(e,t,r,n,l,s,u,o,d,x,a,c,f,i,m,p,g,j,A,T,b,h,k,q,v,w,y,z){o=o||InAppMessage.DismissType.MANUAL,w=w||InAppMessage.Orientation.PORTRAIT,super(e,t,null,r,n,l,s,u,o,d,x,a,c,f,i,m,p,g,j,A,T,b,h,k,q,v=v||InAppMessage.CropType.CENTER_CROP,w,y,z)}get xe(){return InAppMessage.TextAlignment.CENTER}}FullScreenMessage.es=InAppMessage.es.Tr;
1
+ import{InAppMessage}from"../index.js";export default class FullScreenMessage extends InAppMessage{constructor(e,t,r,n,l,s,u,o,d,x,a,c,f,i,m,p,g,j,A,T,b,h,k,q,v,w,y,z){o=o||InAppMessage.DismissType.MANUAL,w=w||InAppMessage.Orientation.PORTRAIT,super(e,t,null,r,n,l,s,u,o,d,x,a,c,f,i,m,p,g,j,A,T,b,h,k,q,v=v||InAppMessage.CropType.CENTER_CROP,w,y,z)}get xe(){return InAppMessage.TextAlignment.CENTER}}FullScreenMessage.es=InAppMessage.es.qe;
@@ -1 +1 @@
1
- import{InAppMessage}from"../index.js";import u from"../../managers/subscription-manager.js";export default class InAppMessageButton{constructor(s,t,i,r,e,h,n){this.text=s||"",this.backgroundColor=t||InAppMessage.Ys.Xs,this.textColor=i||InAppMessage.Ys.Zs,this.borderColor=r||this.backgroundColor,this.clickAction=e||InAppMessage.ClickAction.NONE,this.uri=h,null==n&&(n=InAppMessageButton.Ue),this.id=n,this.ul=!1,this.lt=new u}subscribeToClickedEvent(s){return this.lt.Et(s)}removeSubscription(s){this.lt.removeSubscription(s)}removeAllSubscriptions(){this.lt.removeAllSubscriptions()}k(){return!this.ul&&(this.ul=!0,this.lt.Nt(),!0)}static fromJson(s){return new InAppMessageButton(s.text,s.bg_color,s.text_color,s.border_color,s.click_action,s.uri,s.id)}}InAppMessageButton.Ue=-1;
1
+ import{InAppMessage}from"../index.js";import u from"../../managers/subscription-manager.js";export default class InAppMessageButton{constructor(s,t,i,r,e,h,n){this.text=s||"",this.backgroundColor=t||InAppMessage.Ys.Xs,this.textColor=i||InAppMessage.Ys.Zs,this.borderColor=r||this.backgroundColor,this.clickAction=e||InAppMessage.ClickAction.NONE,this.uri=h,null==n&&(n=InAppMessageButton.yi),this.id=n,this.ul=!1,this.lt=new u}subscribeToClickedEvent(s){return this.lt.Et(s)}removeSubscription(s){this.lt.removeSubscription(s)}removeAllSubscriptions(){this.lt.removeAllSubscriptions()}k(){return!this.ul&&(this.ul=!0,this.lt.Nt(),!0)}static fromJson(s){return new InAppMessageButton(s.text,s.bg_color,s.text_color,s.border_color,s.click_action,s.uri,s.id)}}InAppMessageButton.yi=-1;
@@ -1 +1 @@
1
- import e,{OPTIONS as D}from"../../managers/braze-instance.js";import et from"../../util/browser-detector.js";import{clickElement as ht,supportsPassive as Et}from"../../util/dom-utils.js";import{KeyCodes as at}from"../../util/key-codes.js";import u from"../../managers/subscription-manager.js";export default class InAppMessage{constructor(t,s,i,e,h,n,r,o,l,E,T,a,m,c,I,A,N,_,L,d,O,S,D,M,R,b,P,C,U){this.message=t,this.messageAlignment=s||InAppMessage.TextAlignment.CENTER,this.duration=E||5e3,this.slideFrom=i||InAppMessage.SlideFrom.BOTTOM,this.extras=e||{},this.triggerId=h,this.clickAction=n||InAppMessage.ClickAction.NONE,this.uri=r,this.openTarget=o||InAppMessage.OpenTarget.NONE,this.dismissType=l||InAppMessage.DismissType.AUTO_DISMISS,this.icon=T,this.imageUrl=a,this.imageStyle=m||InAppMessage.ImageStyle.TOP,this.iconColor=c||InAppMessage.Ys.Zs,this.iconBackgroundColor=I||InAppMessage.Ys.Xs,this.backgroundColor=A||InAppMessage.Ys.Zs,this.textColor=N||InAppMessage.Ys.hi,this.closeButtonColor=_||InAppMessage.Ys.oi,this.animateIn=L,null==this.animateIn&&(this.animateIn=!0),this.animateOut=d,null==this.animateOut&&(this.animateOut=!0),this.header=O,this.headerAlignment=S||InAppMessage.TextAlignment.CENTER,this.headerTextColor=D||InAppMessage.Ys.hi,this.frameColor=M||InAppMessage.Ys.li,this.buttons=R||[],this.cropType=b||InAppMessage.CropType.FIT_CENTER,this.orientation=P,this.htmlId=C,this.css=U,this.Ei=!1,this.ul=!1,this.ui=!1,this.lt=new u,this.Ti=new u}subscribeToClickedEvent(t){return this.lt.Et(t)}subscribeToDismissedEvent(t){return this.Ti.Et(t)}removeSubscription(t){this.lt.removeSubscription(t),this.Ti.removeSubscription(t)}removeAllSubscriptions(){this.lt.removeAllSubscriptions(),this.Ti.removeAllSubscriptions()}closeMessage(){this.on(this.mn)}we(){return!0}ll(){return this.we()}an(){return null!=this.htmlId&&this.htmlId.length>4}sn(){return this.an()&&null!=this.css&&this.css.length>0}rn(){if(this.an()&&this.sn())return this.htmlId+"-css"}R(){return!this.Ei&&(this.Ei=!0,!0)}k(){return!this.ul&&(this.ul=!0,this.lt.Nt(),!0)}J(){return!this.ui&&(this.ui=!0,this.Ti.Nt(),!0)}mi(t){if(t&&t.parentNode){let s=t.closest(".ab-iam-root");if(null==s&&(s=t),this.we()&&null!=s.parentNode){const t=s.parentNode.classList;t&&t.contains(InAppMessage.ci)&&t.remove(InAppMessage.ci),document.body.removeEventListener("touchmove",InAppMessage.Ii)}s.className=s.className.replace(InAppMessage.Ai,InAppMessage._)}return this.animateOut}on(t,s){if(null==t)return;let i;this.mn=null,i=-1===t.className.indexOf("ab-in-app-message")?t.getElementsByClassName("ab-in-app-message")[0]:t;let e=!1;i&&(e=this.mi(i));const h=document.body;if(null!=h)var n=h.scrollTop;const r=()=>{if(t&&t.parentNode){let s=t.closest(".ab-iam-root");null==s&&(s=t),s.parentNode&&s.parentNode.removeChild(s)}if(null!=this.rn()){const t=document.getElementById(this.rn());t&&t.parentNode&&t.parentNode.removeChild(t)}null!=h&&"Safari"===et.browser&&(h.scrollTop=n),s?s():this.J()};e?setTimeout(r,InAppMessage.Ni):r(),this.he&&this.he.focus()}ke(){return document.createTextNode(this.message)}ze(t){let s="";this.message||this.header||!this.we()||(s="Modal Image"),t.setAttribute("alt",s)}static Ii(t){t.targetTouches&&t.targetTouches.length>1||t.target.classList&&t.target.classList.contains("ab-message-text")&&t.target.scrollHeight>t.target.clientHeight||document.querySelector(`.${InAppMessage.ci}`)&&t.preventDefault()}_i(t){this.we()&&null!=t.parentNode&&this.orientation!==InAppMessage.Orientation.LANDSCAPE&&(null!=t.parentNode.classList&&t.parentNode.classList.add(InAppMessage.ci),document.body.addEventListener("touchmove",InAppMessage.Ii,!!Et()&&{passive:!1})),t.className+=" "+InAppMessage.Ai}static Li(t){if(t.keyCode===at.di&&!e.nn(D.Oi)&&document.querySelectorAll(".ab-modal-interactions").length>0){const t=document.getElementsByClassName("ab-html-message");let s=!1;for(let i=0;i<t.length;i++){const e=t[i].contentWindow.document.getElementsByClassName("ab-programmatic-close-button")[0];null!=e&&(ht(e),s=!0)}if(!s){const t=document.querySelectorAll(".ab-modal-interactions > .ab-close-button")[0];null!=t&&ht(t)}}}Si(){this.Di||e.nn(D.Oi)||(document.addEventListener("keydown",InAppMessage.Li,!1),e.Mi((()=>{document.removeEventListener("keydown",InAppMessage.Li)})),this.Di=!0)}}InAppMessage.Ys={hi:4281545523,Zs:4294967295,Xs:4278219733,Ri:4293914607,bi:4283782485,li:3224580915,oi:4288387995},InAppMessage.Oe={Pi:"hd",Ci:"ias",Ui:"of",pi:"do",si:"umt",Ye:"tf",fi:"te"},InAppMessage.SlideFrom={TOP:"TOP",BOTTOM:"BOTTOM"},InAppMessage.ClickAction={NEWS_FEED:"NEWS_FEED",URI:"URI",NONE:"NONE"},InAppMessage.DismissType={AUTO_DISMISS:"AUTO_DISMISS",MANUAL:"SWIPE"},InAppMessage.OpenTarget={NONE:"NONE",BLANK:"BLANK"},InAppMessage.ImageStyle={TOP:"TOP",GRAPHIC:"GRAPHIC"},InAppMessage.Orientation={PORTRAIT:"PORTRAIT",LANDSCAPE:"LANDSCAPE"},InAppMessage.TextAlignment={START:"START",CENTER:"CENTER",END:"END"},InAppMessage.CropType={CENTER_CROP:"CENTER_CROP",FIT_CENTER:"FIT_CENTER"},InAppMessage.es={gi:"SLIDEUP",Hi:"MODAL",ye:"MODAL_STYLED",Tr:"FULL",nl:"WEB_HTML",cn:"HTML"},InAppMessage.Ni=500,InAppMessage.Fi=200,InAppMessage.Ai="ab-show",InAppMessage.Bi="ab-hide",InAppMessage.ci="ab-pause-scrolling";
1
+ import e,{OPTIONS as D}from"../../managers/braze-instance.js";import et from"../../util/browser-detector.js";import{clickElement as ht,supportsPassive as Et}from"../../util/dom-utils.js";import{KeyCodes as at}from"../../util/key-codes.js";import u from"../../managers/subscription-manager.js";export default class InAppMessage{constructor(t,s,i,e,h,n,r,o,l,E,T,a,m,c,I,A,N,_,L,d,O,S,D,M,R,b,P,C,U){this.message=t,this.messageAlignment=s||InAppMessage.TextAlignment.CENTER,this.duration=E||5e3,this.slideFrom=i||InAppMessage.SlideFrom.BOTTOM,this.extras=e||{},this.triggerId=h,this.clickAction=n||InAppMessage.ClickAction.NONE,this.uri=r,this.openTarget=o||InAppMessage.OpenTarget.NONE,this.dismissType=l||InAppMessage.DismissType.AUTO_DISMISS,this.icon=T,this.imageUrl=a,this.imageStyle=m||InAppMessage.ImageStyle.TOP,this.iconColor=c||InAppMessage.Ys.Zs,this.iconBackgroundColor=I||InAppMessage.Ys.Xs,this.backgroundColor=A||InAppMessage.Ys.Zs,this.textColor=N||InAppMessage.Ys.Ei,this.closeButtonColor=_||InAppMessage.Ys.Ni,this.animateIn=L,null==this.animateIn&&(this.animateIn=!0),this.animateOut=d,null==this.animateOut&&(this.animateOut=!0),this.header=O,this.headerAlignment=S||InAppMessage.TextAlignment.CENTER,this.headerTextColor=D||InAppMessage.Ys.Ei,this.frameColor=M||InAppMessage.Ys.Li,this.buttons=R||[],this.cropType=b||InAppMessage.CropType.FIT_CENTER,this.orientation=P,this.htmlId=C,this.css=U,this.Oi=!1,this.ul=!1,this.Si=!1,this.lt=new u,this.Ri=new u}subscribeToClickedEvent(t){return this.lt.Et(t)}subscribeToDismissedEvent(t){return this.Ri.Et(t)}removeSubscription(t){this.lt.removeSubscription(t),this.Ri.removeSubscription(t)}removeAllSubscriptions(){this.lt.removeAllSubscriptions(),this.Ri.removeAllSubscriptions()}closeMessage(){this.on(this.mn)}we(){return!0}ll(){return this.we()}an(){return null!=this.htmlId&&this.htmlId.length>4}sn(){return this.an()&&null!=this.css&&this.css.length>0}rn(){if(this.an()&&this.sn())return this.htmlId+"-css"}R(){return!this.Oi&&(this.Oi=!0,!0)}k(){return!this.ul&&(this.ul=!0,this.lt.Nt(),!0)}J(){return!this.Si&&(this.Si=!0,this.Ri.Nt(),!0)}Pi(t){if(t&&t.parentNode){let s=t.closest(".ab-iam-root");if(null==s&&(s=t),this.we()&&null!=s.parentNode){const t=s.parentNode.classList;t&&t.contains(InAppMessage.Ci)&&t.remove(InAppMessage.Ci),document.body.removeEventListener("touchmove",InAppMessage.Ui)}s.className=s.className.replace(InAppMessage.Hi,InAppMessage._)}return this.animateOut}on(t,s){if(null==t)return;let i;this.mn=null,i=-1===t.className.indexOf("ab-in-app-message")?t.getElementsByClassName("ab-in-app-message")[0]:t;let e=!1;i&&(e=this.Pi(i));const h=document.body;if(null!=h)var n=h.scrollTop;const r=()=>{if(t&&t.parentNode){let s=t.closest(".ab-iam-root");null==s&&(s=t),s.parentNode&&s.parentNode.removeChild(s)}if(null!=this.rn()){const t=document.getElementById(this.rn());t&&t.parentNode&&t.parentNode.removeChild(t)}null!=h&&"Safari"===et.browser&&(h.scrollTop=n),s?s():this.J()};e?setTimeout(r,InAppMessage.Fi):r(),this.he&&this.he.focus()}ke(){return document.createTextNode(this.message)}ze(t){let s="";this.message||this.header||!this.we()||(s="Modal Image"),t.setAttribute("alt",s)}static Ui(t){t.targetTouches&&t.targetTouches.length>1||t.target.classList&&t.target.classList.contains("ab-message-text")&&t.target.scrollHeight>t.target.clientHeight||document.querySelector(`.${InAppMessage.Ci}`)&&t.preventDefault()}Gi(t){this.we()&&null!=t.parentNode&&this.orientation!==InAppMessage.Orientation.LANDSCAPE&&(null!=t.parentNode.classList&&t.parentNode.classList.add(InAppMessage.Ci),document.body.addEventListener("touchmove",InAppMessage.Ui,!!Et()&&{passive:!1})),t.className+=" "+InAppMessage.Hi}static Wi(t){if(t.keyCode===at.xi&&!e.nn(D.Ki)&&document.querySelectorAll(".ab-modal-interactions").length>0){const t=document.getElementsByClassName("ab-html-message");let s=!1;for(let i=0;i<t.length;i++){const e=t[i].contentWindow.document.getElementsByClassName("ab-programmatic-close-button")[0];null!=e&&(ht(e),s=!0)}if(!s){const t=document.querySelectorAll(".ab-modal-interactions > .ab-close-button")[0];null!=t&&ht(t)}}}Yi(){this.Xi||e.nn(D.Ki)||(document.addEventListener("keydown",InAppMessage.Wi,!1),e.Vi((()=>{document.removeEventListener("keydown",InAppMessage.Wi)})),this.Xi=!0)}}InAppMessage.Ys={Ei:4281545523,Zs:4294967295,Xs:4278219733,$i:4293914607,qi:4283782485,Li:3224580915,Ni:4288387995},InAppMessage.pi={Ji:"hd",Qi:"ias",Zi:"of",Ee:"do",Di:"umt",Ii:"tf",Ne:"te"},InAppMessage.SlideFrom={TOP:"TOP",BOTTOM:"BOTTOM"},InAppMessage.ClickAction={NEWS_FEED:"NEWS_FEED",URI:"URI",NONE:"NONE"},InAppMessage.DismissType={AUTO_DISMISS:"AUTO_DISMISS",MANUAL:"SWIPE"},InAppMessage.OpenTarget={NONE:"NONE",BLANK:"BLANK"},InAppMessage.ImageStyle={TOP:"TOP",GRAPHIC:"GRAPHIC"},InAppMessage.Orientation={PORTRAIT:"PORTRAIT",LANDSCAPE:"LANDSCAPE"},InAppMessage.TextAlignment={START:"START",CENTER:"CENTER",END:"END"},InAppMessage.CropType={CENTER_CROP:"CENTER_CROP",FIT_CENTER:"FIT_CENTER"},InAppMessage.es={_e:"SLIDEUP",Oe:"MODAL",ye:"MODAL_STYLED",qe:"FULL",nl:"WEB_HTML",cn:"HTML"},InAppMessage.Fi=500,InAppMessage.Se=200,InAppMessage.Hi="ab-show",InAppMessage.De="ab-hide",InAppMessage.Ci="ab-pause-scrolling";
@@ -1 +1 @@
1
- import{InAppMessage}from"../index.js";export default class ModalMessage extends InAppMessage{constructor(e,t,r,n,l,o,s,u,d,i,x,a,c,f,m,p,g,j,v,A,T,b,h,k,q,w,y){super(e,t,null,r,n,l,o,s,u=u||InAppMessage.DismissType.MANUAL,d,i,x,a,c,f,m,p,g,j,v,A,T,b,h,k,q=q||InAppMessage.CropType.FIT_CENTER,void 0,w,y)}get xe(){return InAppMessage.TextAlignment.CENTER}}ModalMessage.es=InAppMessage.es.Hi;
1
+ import{InAppMessage}from"../index.js";export default class ModalMessage extends InAppMessage{constructor(e,t,r,n,l,o,s,u,d,i,x,a,c,f,m,p,g,j,v,A,T,b,h,k,q,w,y){super(e,t,null,r,n,l,o,s,u=u||InAppMessage.DismissType.MANUAL,d,i,x,a,c,f,m,p,g,j,v,A,T,b,h,k,q=q||InAppMessage.CropType.FIT_CENTER,void 0,w,y)}get xe(){return InAppMessage.TextAlignment.CENTER}}ModalMessage.es=InAppMessage.es.Oe;
@@ -1 +1 @@
1
- import{InAppMessage}from"../index.js";import{DOMUtils as dt}from"../../util/dom-utils.js";export default class SlideUpMessage extends InAppMessage{constructor(t,e,o,s,n,i,d,r,u,a,l,m,p,c,v,x,f,g,h,I,M){x=x||InAppMessage.Ys.bi,v=v||InAppMessage.Ys.Ri,super(t,e=e||InAppMessage.TextAlignment.START,o,s,n,i,d,r,u,a,l,m,null,p,c,v,x,f,g,h,void 0,void 0,void 0,void 0,void 0,void 0,void 0,I,M)}we(){return!1}get xe(){return InAppMessage.TextAlignment.START}ke(){const t=document.createElement("span");return t.appendChild(document.createTextNode(this.message)),t}_i(t){const e=t.getElementsByClassName("ab-in-app-message")[0];dt.eo(e,!0,!0)||(this.slideFrom===InAppMessage.SlideFrom.TOP?e.style.top="0px":e.style.bottom="0px"),super._i(t)}}SlideUpMessage.es=InAppMessage.es.gi;
1
+ import{InAppMessage}from"../index.js";import{DOMUtils as dt}from"../../util/dom-utils.js";export default class SlideUpMessage extends InAppMessage{constructor(t,e,o,s,n,i,d,r,u,a,l,m,p,c,v,x,f,g,h,I,M){x=x||InAppMessage.Ys.qi,v=v||InAppMessage.Ys.$i,super(t,e=e||InAppMessage.TextAlignment.START,o,s,n,i,d,r,u,a,l,m,null,p,c,v,x,f,g,h,void 0,void 0,void 0,void 0,void 0,void 0,void 0,I,M)}we(){return!1}get xe(){return InAppMessage.TextAlignment.START}ke(){const t=document.createElement("span");return t.appendChild(document.createTextNode(this.message)),t}Gi(t){const e=t.getElementsByClassName("ab-in-app-message")[0];dt.He(e,!0,!0)||(this.slideFrom===InAppMessage.SlideFrom.TOP?e.style.top="0px":e.style.bottom="0px"),super.Gi(t)}}SlideUpMessage.es=InAppMessage.es._e;
@@ -1 +1 @@
1
- export default class ct{constructor(t,s,l,n,i){this.triggerId=t,this.ri=s,this.Ze=l,this.ni=n,this.ai=i}static fromJson(t,s,l,n,i){return null==t||null==t.trigger_id?null:new ct(t.trigger_id,s,l,n,i)}}
1
+ export default class ct{constructor(t,s,l,n,i){this.triggerId=t,this._i=s,this.Ai=l,this.ki=n,this.Bi=i}static fromJson(t,s,l,n,i){return null==t||null==t.trigger_id?null:new ct(t.trigger_id,s,l,n,i)}}
@@ -1 +1 @@
1
- import e from"../managers/braze-instance.js";import me from"./in-app-message-manager-factory.js";export function subscribeToInAppMessage(n){if(e.rr())return"function"!=typeof n?null:me.m().Ee((function(r){return n(r[0]),r.slice(1)}))}
1
+ import e from"../managers/braze-instance.js";import me from"./in-app-message-manager-factory.js";export function subscribeToInAppMessage(n){if(e.rr())return"function"!=typeof n?null:me.m().ni((function(r){return n(r[0]),r.slice(1)}))}
@@ -1 +1 @@
1
- import me from"../in-app-message-manager-factory.js";import e from"../../managers/braze-instance.js";import{setupInAppMessageUI as nr}from"../../ui/js/index.js";import{showInAppMessage,subscribeToInAppMessage}from"../index.js";export function automaticallyShowInAppMessages(){if(!e.rr())return;nr();const r=me.m();if(null==r.Fe()){const n=subscribeToInAppMessage((r=>showInAppMessage(r)));r.Ne(n)}return r.Fe()}
1
+ import me from"../in-app-message-manager-factory.js";import e from"../../managers/braze-instance.js";import{setupInAppMessageUI as nr}from"../../ui/js/index.js";import{showInAppMessage,subscribeToInAppMessage}from"../index.js";export function automaticallyShowInAppMessages(){if(!e.rr())return;nr();const r=me.m();if(null==r.oi()){const n=subscribeToInAppMessage((r=>showInAppMessage(r)));r.li(n)}return r.oi()}
@@ -1 +1 @@
1
- import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{ControlMessage,HtmlMessage,InAppMessage,SlideUpMessage}from"../index.js";import me from"../in-app-message-manager-factory.js";import ae from"../display/get-animation-effect.js";import re from"../display/in-app-message-to-html.js";import{logInAppMessageImpression}from"../log-in-app-message-impression.js";import{ORIENTATION as le,WindowUtils as P}from"../../util/window-utils.js";import{isURIJavascriptOrData as j}from"../../util/url-utils.js";import{KeyCodes as at}from"../../util/key-codes.js";import{setupInAppMessageUI as nr}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";import{toRgba as se}from"../../util/color-utils.js";export function showInAppMessage(t,i,o){if(!e.rr())return;if(nr(),null==t)return!1;if(t instanceof ControlMessage)return r.D.info("User received control for a multivariate test, logging to Braze servers."),logInAppMessageImpression(t),!0;if(!(t instanceof InAppMessage))return!1;const s=me.m();t.Si();const n=t instanceof HtmlMessage;if(n&&!t.trusted&&!e.tr())return r.D.error('HTML in-app messages are disabled. Use the "allowUserSuppliedJavascript" option for braze.initialize to enable these messages.'),s.qe(t.triggerId,InAppMessage.Oe.Pi),!1;if(null==i&&(i=document.body),t.we()){if(i.querySelectorAll(".ab-modal-interactions").length>0)return r.D.info(`Cannot show in-app message ${t.message} because another message is being shown.`),s.qe(t.triggerId,InAppMessage.Oe.Ci),!1}if(P.ji()){const e=P.wi();if(e===le.PORTRAIT&&t.orientation===InAppMessage.Orientation.LANDSCAPE||e===le.LANDSCAPE&&t.orientation===InAppMessage.Orientation.PORTRAIT){const i=e===le.PORTRAIT?"portrait":"landscape",o=t.orientation===InAppMessage.Orientation.PORTRAIT?"portrait":"landscape";return r.D.info(`Not showing ${o} in-app message ${t.message} because the screen is currently ${i}`),s.qe(t.triggerId,InAppMessage.Oe.Ui),!1}}if(!e.tr()){let e=!1;if(t.buttons&&t.buttons.length>0){const i=t.buttons;for(let t=0;t<i.length;t++)if(i[t].clickAction===InAppMessage.ClickAction.URI){const o=i[t].uri;e=j(o)}}else t.clickAction===InAppMessage.ClickAction.URI&&(e=j(t.uri));if(e)return r.D.error('Javascript click actions are disabled. Use the "allowUserSuppliedJavascript" option for braze.initialize to enable these actions.'),s.qe(t.triggerId,InAppMessage.Oe.Pi),!1}const a=document.createElement("div");if(a.className="ab-iam-root v3",a.className+=ae(t),a.setAttribute("role","complementary"),t.an()&&(a.id=t.htmlId),e.nn(D.vi)&&(a.style.zIndex=e.nn(D.vi)+1),i.appendChild(a),t.sn()){const i=document.createElement("style");i.innerHTML=t.css,i.id=t.rn(),null!=e.nn(D.yi)&&i.setAttribute("nonce",e.nn(D.yi)),document.getElementsByTagName("head")[0].appendChild(i)}const l=t instanceof SlideUpMessage,c=re(t,(()=>{import("../../Feed/ui/show-feed.js").then((e=>e.showFeed()))}),(i=>{if(t.we()&&t.ll()){const o=document.createElement("div");if(o.className="ab-page-blocker",t.sn()||(o.style.backgroundColor=se(t.frameColor)),e.nn(D.vi)&&(o.style.zIndex=e.nn(D.vi)),a.appendChild(o),!e.nn(D.Oi)){const e=(new Date).valueOf();o.onclick=o=>{(new Date).valueOf()-e>InAppMessage.Fi&&(t.on(i),o.stopPropagation())}}a.appendChild(i),i.focus(),t._i(a)}else if(l){const e=document.querySelectorAll(".ab-slideup");let o=null;for(let t=e.length-1;t>=0;t--)if(e[t]!==i){o=e[t];break}if(t.slideFrom===InAppMessage.SlideFrom.TOP){let e=0;null!=o&&(e=o.offsetTop+o.offsetHeight),i.style.top=Math.max(e,0)+"px"}else{let e=0;null!=o&&(e=(window.innerHeight||document.documentElement.clientHeight)-o.offsetTop),i.style.bottom=Math.max(e,0)+"px"}}else if(n&&!e.nn(D.Oi)){const e=t;i.contentWindow.addEventListener("keydown",(function(t){t.keyCode===at.di&&e.closeMessage()}))}logInAppMessageImpression(t),t.dismissType===InAppMessage.DismissType.AUTO_DISMISS&&setTimeout((()=>{a.contains(i)&&t.on(i)}),t.duration),"function"==typeof o&&o()}),e.nn(D.zi),e.nn(D.vi),e.nn(D.yi));return(n||l)&&(a.appendChild(c),t._i(a)),!0}
1
+ import e,{OPTIONS as D}from"../../managers/braze-instance.js";import{ControlMessage,HtmlMessage,InAppMessage,SlideUpMessage}from"../index.js";import me from"../in-app-message-manager-factory.js";import ae from"../display/get-animation-effect.js";import de from"../display/in-app-message-to-html.js";import{logInAppMessageImpression}from"../log-in-app-message-impression.js";import{ORIENTATION as le,WindowUtils as G}from"../../util/window-utils.js";import{isURIJavascriptOrData as j}from"../../util/url-utils.js";import{KeyCodes as at}from"../../util/key-codes.js";import{setupInAppMessageUI as nr}from"../../ui/js/index.js";import r from"../../../shared-lib/braze-shared-lib.js";import{toRgba as se}from"../../util/color-utils.js";export function showInAppMessage(t,i,o){if(!e.rr())return;if(nr(),null==t)return!1;if(t instanceof ControlMessage)return r.D.info("User received control for a multivariate test, logging to Braze servers."),logInAppMessageImpression(t),!0;if(!(t instanceof InAppMessage))return!1;const s=me.m();t.Yi();const n=t instanceof HtmlMessage;if(n&&!t.trusted&&!e.tr())return r.D.error('HTML in-app messages are disabled. Use the "allowUserSuppliedJavascript" option for braze.initialize to enable these messages.'),s.ui(t.triggerId,InAppMessage.pi.Ji),!1;if(null==i&&(i=document.body),t.we()){if(i.querySelectorAll(".ab-modal-interactions").length>0)return r.D.info(`Cannot show in-app message ${t.message} because another message is being shown.`),s.ui(t.triggerId,InAppMessage.pi.Qi),!1}if(G.Ue()){const e=G.Je();if(e===le.PORTRAIT&&t.orientation===InAppMessage.Orientation.LANDSCAPE||e===le.LANDSCAPE&&t.orientation===InAppMessage.Orientation.PORTRAIT){const i=e===le.PORTRAIT?"portrait":"landscape",o=t.orientation===InAppMessage.Orientation.PORTRAIT?"portrait":"landscape";return r.D.info(`Not showing ${o} in-app message ${t.message} because the screen is currently ${i}`),s.ui(t.triggerId,InAppMessage.pi.Zi),!1}}if(!e.tr()){let e=!1;if(t.buttons&&t.buttons.length>0){const i=t.buttons;for(let t=0;t<i.length;t++)if(i[t].clickAction===InAppMessage.ClickAction.URI){const o=i[t].uri;e=j(o)}}else t.clickAction===InAppMessage.ClickAction.URI&&(e=j(t.uri));if(e)return r.D.error('Javascript click actions are disabled. Use the "allowUserSuppliedJavascript" option for braze.initialize to enable these actions.'),s.ui(t.triggerId,InAppMessage.pi.Ji),!1}const a=document.createElement("div");if(a.className="ab-iam-root v3",a.className+=ae(t),a.setAttribute("role","complementary"),t.an()&&(a.id=t.htmlId),e.nn(D.Be)&&(a.style.zIndex=e.nn(D.Be)+1),i.appendChild(a),t.sn()){const i=document.createElement("style");i.innerHTML=t.css,i.id=t.rn(),null!=e.nn(D.Fe)&&i.setAttribute("nonce",e.nn(D.Fe)),document.getElementsByTagName("head")[0].appendChild(i)}const l=t instanceof SlideUpMessage,c=de(t,(()=>{import("../../Feed/ui/show-feed.js").then((e=>e.showFeed()))}),(i=>{if(t.we()&&t.ll()){const o=document.createElement("div");if(o.className="ab-page-blocker",t.sn()||(o.style.backgroundColor=se(t.frameColor)),e.nn(D.Be)&&(o.style.zIndex=e.nn(D.Be)),a.appendChild(o),!e.nn(D.Ki)){const e=(new Date).valueOf();o.onclick=o=>{(new Date).valueOf()-e>InAppMessage.Se&&(t.on(i),o.stopPropagation())}}a.appendChild(i),i.focus(),t.Gi(a)}else if(l){const e=document.querySelectorAll(".ab-slideup");let o=null;for(let t=e.length-1;t>=0;t--)if(e[t]!==i){o=e[t];break}if(t.slideFrom===InAppMessage.SlideFrom.TOP){let e=0;null!=o&&(e=o.offsetTop+o.offsetHeight),i.style.top=Math.max(e,0)+"px"}else{let e=0;null!=o&&(e=(window.innerHeight||document.documentElement.clientHeight)-o.offsetTop),i.style.bottom=Math.max(e,0)+"px"}}else if(n&&!e.nn(D.Ki)){const e=t;i.contentWindow.addEventListener("keydown",(function(t){t.keyCode===at.xi&&e.closeMessage()}))}logInAppMessageImpression(t),t.dismissType===InAppMessage.DismissType.AUTO_DISMISS&&setTimeout((()=>{a.contains(i)&&t.on(i)}),t.duration),"function"==typeof o&&o()}),e.nn(D.Ge),e.nn(D.Be),e.nn(D.Fe));return(n||l)&&(a.appendChild(c),t.Gi(a)),!0}
@@ -1 +1 @@
1
- import e,{OPTIONS as D}from"../managers/braze-instance.js";import aa from"./push-manager.js";const or={t:!1,pushManager:null,Br:()=>(or.o(),or.pushManager||(or.pushManager=new aa(e.jr(),e.aa(),e.ce(),e.nn(D.ea),e.nn(D.na),e.nn(D.ra),e.ir(),e.nn(D.ta),e.nn(D.ia),e.l())),or.pushManager),o:()=>{or.t||(e.u(or),or.t=!0)},destroy:()=>{or.pushManager=null,or.t=!1}};export default or;
1
+ import e,{OPTIONS as D}from"../managers/braze-instance.js";import aa from"./push-manager.js";const or={t:!1,pushManager:null,Br:()=>(or.o(),or.pushManager||(or.pushManager=new aa(e.gr(),e.aa(),e.ce(),e.Js(),e.nn(D.ea),e.nn(D.na),e.ir(),e.nn(D.ra),e.nn(D.ta),e.l())),or.pushManager),o:()=>{or.t||(e.u(or),or.t=!0)},destroy:()=>{or.pushManager=null,or.t=!1}};export default or;