@watermarkinsights/ripple 3.36.0 → 3.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/dist/cjs/{chartFunctions-41c67866.js → chartFunctions-4d828b26.js} +2 -2
  2. package/dist/cjs/{functions-45f36418.js → functions-0c27162e.js} +38 -22
  3. package/dist/{esm/global-1dca883b.js → cjs/global-a2ca8069.js} +13 -3
  4. package/dist/cjs/{index-670c5d2a.js → index-fae02cd7.js} +386 -8
  5. package/dist/cjs/{intl-a84cd5ef.js → intl-022a42a1.js} +1 -1
  6. package/dist/cjs/loader.cjs.js +3 -3
  7. package/dist/cjs/priv-chart-popover.cjs.entry.js +2 -2
  8. package/dist/cjs/priv-datepicker.cjs.entry.js +2 -2
  9. package/dist/cjs/priv-navigator-button.cjs.entry.js +1 -1
  10. package/dist/cjs/priv-navigator-item.cjs.entry.js +1 -1
  11. package/dist/cjs/ripple.cjs.js +3 -3
  12. package/dist/cjs/wm-action-menu_2.cjs.entry.js +2 -2
  13. package/dist/cjs/wm-button.cjs.entry.js +2 -2
  14. package/dist/cjs/wm-chart-slice.cjs.entry.js +1 -1
  15. package/dist/cjs/wm-chart.cjs.entry.js +4 -4
  16. package/dist/cjs/wm-datepicker.cjs.entry.js +2 -2
  17. package/dist/cjs/wm-file-list.cjs.entry.js +1 -1
  18. package/dist/cjs/wm-file.cjs.entry.js +2 -2
  19. package/dist/cjs/wm-input.cjs.entry.js +3 -3
  20. package/dist/cjs/wm-line-chart.cjs.entry.js +4 -4
  21. package/dist/cjs/wm-modal-footer.cjs.entry.js +13 -16
  22. package/dist/cjs/wm-modal-header.cjs.entry.js +8 -18
  23. package/dist/cjs/wm-modal.cjs.entry.js +27 -58
  24. package/dist/cjs/wm-navigation_3.cjs.entry.js +3 -3
  25. package/dist/cjs/wm-navigator.cjs.entry.js +2 -2
  26. package/dist/cjs/wm-network-uploader.cjs.entry.js +3 -3
  27. package/dist/cjs/wm-option_2.cjs.entry.js +3 -3
  28. package/dist/cjs/wm-pagination.cjs.entry.js +2 -2
  29. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +3 -3
  30. package/dist/cjs/wm-search.cjs.entry.js +3 -3
  31. package/dist/cjs/wm-snackbar.cjs.entry.js +3 -3
  32. package/dist/cjs/wm-tab-item_3.cjs.entry.js +2 -2
  33. package/dist/cjs/wm-tag-input-row.cjs.entry.js +1 -1
  34. package/dist/cjs/wm-tag-input.cjs.entry.js +3 -3
  35. package/dist/cjs/wm-timepicker.cjs.entry.js +2 -2
  36. package/dist/cjs/wm-toggletip.cjs.entry.js +2 -2
  37. package/dist/cjs/wm-uploader.cjs.entry.js +3 -3
  38. package/dist/cjs/wm-wrapper.cjs.entry.js +1 -1
  39. package/dist/collection/components/wm-modal/wm-modal-footer.css +1 -1
  40. package/dist/collection/components/wm-modal/wm-modal-footer.js +11 -14
  41. package/dist/collection/components/wm-modal/wm-modal-header.css +1 -1
  42. package/dist/collection/components/wm-modal/wm-modal-header.js +4 -14
  43. package/dist/collection/components/wm-modal/wm-modal.css +27 -65
  44. package/dist/collection/components/wm-modal/wm-modal.js +24 -71
  45. package/dist/collection/components/wm-modal/wm-modal.spec.js +0 -28
  46. package/dist/collection/global/functions.js +38 -22
  47. package/dist/collection/global/global.js +10 -2
  48. package/dist/esm/{chartFunctions-e539d991.js → chartFunctions-f4f3252e.js} +2 -2
  49. package/dist/esm/{functions-7fc7cf30.js → functions-d52b728c.js} +39 -23
  50. package/dist/{cjs/global-c795cff3.js → esm/global-06801d00.js} +11 -5
  51. package/dist/esm/{index-294d486f.js → index-7e11ea42.js} +386 -8
  52. package/dist/esm/{intl-f0475a8e.js → intl-9809c77c.js} +1 -1
  53. package/dist/esm/loader.js +4 -4
  54. package/dist/esm/polyfills/core-js.js +0 -0
  55. package/dist/esm/polyfills/dom.js +0 -0
  56. package/dist/esm/polyfills/es5-html-element.js +0 -0
  57. package/dist/esm/polyfills/index.js +0 -0
  58. package/dist/esm/polyfills/system.js +0 -0
  59. package/dist/esm/priv-chart-popover.entry.js +2 -2
  60. package/dist/esm/priv-datepicker.entry.js +2 -2
  61. package/dist/esm/priv-navigator-button.entry.js +1 -1
  62. package/dist/esm/priv-navigator-item.entry.js +1 -1
  63. package/dist/esm/ripple.js +4 -4
  64. package/dist/esm/wm-action-menu_2.entry.js +2 -2
  65. package/dist/esm/wm-button.entry.js +2 -2
  66. package/dist/esm/wm-chart-slice.entry.js +1 -1
  67. package/dist/esm/wm-chart.entry.js +4 -4
  68. package/dist/esm/wm-datepicker.entry.js +2 -2
  69. package/dist/esm/wm-file-list.entry.js +1 -1
  70. package/dist/esm/wm-file.entry.js +2 -2
  71. package/dist/esm/wm-input.entry.js +3 -3
  72. package/dist/esm/wm-line-chart.entry.js +4 -4
  73. package/dist/esm/wm-modal-footer.entry.js +13 -16
  74. package/dist/esm/wm-modal-header.entry.js +8 -18
  75. package/dist/esm/wm-modal.entry.js +27 -58
  76. package/dist/esm/wm-navigation_3.entry.js +3 -3
  77. package/dist/esm/wm-navigator.entry.js +2 -2
  78. package/dist/esm/wm-network-uploader.entry.js +3 -3
  79. package/dist/esm/wm-option_2.entry.js +3 -3
  80. package/dist/esm/wm-pagination.entry.js +2 -2
  81. package/dist/esm/wm-progress-indicator_3.entry.js +3 -3
  82. package/dist/esm/wm-search.entry.js +3 -3
  83. package/dist/esm/wm-snackbar.entry.js +3 -3
  84. package/dist/esm/wm-tab-item_3.entry.js +2 -2
  85. package/dist/esm/wm-tag-input-row.entry.js +1 -1
  86. package/dist/esm/wm-tag-input.entry.js +3 -3
  87. package/dist/esm/wm-timepicker.entry.js +2 -2
  88. package/dist/esm/wm-toggletip.entry.js +2 -2
  89. package/dist/esm/wm-uploader.entry.js +3 -3
  90. package/dist/esm/wm-wrapper.entry.js +1 -1
  91. package/dist/esm-es5/{chartFunctions-e539d991.js → chartFunctions-f4f3252e.js} +1 -1
  92. package/dist/esm-es5/{functions-7fc7cf30.js → functions-d52b728c.js} +1 -1
  93. package/dist/esm-es5/{global-1dca883b.js → global-06801d00.js} +1 -1
  94. package/dist/esm-es5/index-7e11ea42.js +2 -0
  95. package/dist/esm-es5/{intl-f0475a8e.js → intl-9809c77c.js} +1 -1
  96. package/dist/esm-es5/loader.js +1 -1
  97. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  98. package/dist/esm-es5/priv-datepicker.entry.js +1 -1
  99. package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
  100. package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
  101. package/dist/esm-es5/ripple.js +1 -1
  102. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  103. package/dist/esm-es5/wm-button.entry.js +1 -1
  104. package/dist/esm-es5/wm-chart-slice.entry.js +1 -1
  105. package/dist/esm-es5/wm-chart.entry.js +1 -1
  106. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  107. package/dist/esm-es5/wm-file-list.entry.js +1 -1
  108. package/dist/esm-es5/wm-file.entry.js +1 -1
  109. package/dist/esm-es5/wm-input.entry.js +1 -1
  110. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  111. package/dist/esm-es5/wm-modal-footer.entry.js +1 -1
  112. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  113. package/dist/esm-es5/wm-modal.entry.js +1 -1
  114. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  115. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  116. package/dist/esm-es5/wm-network-uploader.entry.js +1 -1
  117. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  118. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  119. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  120. package/dist/esm-es5/wm-search.entry.js +1 -1
  121. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  122. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  123. package/dist/esm-es5/wm-tag-input-row.entry.js +1 -1
  124. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  125. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  126. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  127. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  128. package/dist/esm-es5/wm-wrapper.entry.js +1 -1
  129. package/dist/ripple/p-0631be01.system.entry.js +1 -0
  130. package/dist/ripple/{p-a6317ac6.entry.js → p-06871476.entry.js} +1 -1
  131. package/dist/ripple/{p-5e109597.entry.js → p-0d9f70ab.entry.js} +1 -1
  132. package/dist/ripple/{p-6639cf6c.entry.js → p-11763c02.entry.js} +1 -1
  133. package/dist/ripple/p-185c3645.entry.js +1 -0
  134. package/dist/ripple/{p-42cd9ae6.entry.js → p-19773c40.entry.js} +1 -1
  135. package/dist/ripple/{p-69c802aa.entry.js → p-198f596b.entry.js} +1 -1
  136. package/dist/ripple/{p-2bbf689a.system.entry.js → p-20df08be.system.entry.js} +1 -1
  137. package/dist/ripple/p-24d9f6fe.entry.js +1 -0
  138. package/dist/ripple/p-25c1bd67.system.entry.js +1 -0
  139. package/dist/ripple/{p-77ea81c7.system.entry.js → p-26031cd0.system.entry.js} +1 -1
  140. package/dist/ripple/{p-936e078c.system.js → p-27efb4d0.system.js} +1 -1
  141. package/dist/ripple/{p-766a4a70.system.entry.js → p-2acf8af1.system.entry.js} +1 -1
  142. package/dist/ripple/{p-1cb7bdc5.entry.js → p-2ebac749.entry.js} +1 -1
  143. package/dist/ripple/p-30bf24f8.system.js +2 -0
  144. package/dist/ripple/{p-bde26da9.system.entry.js → p-3248c0fa.system.entry.js} +1 -1
  145. package/dist/ripple/p-364753eb.js +1 -0
  146. package/dist/ripple/p-39e17683.system.js +1 -0
  147. package/dist/ripple/{p-935eafa7.system.entry.js → p-3b50511c.system.entry.js} +1 -1
  148. package/dist/ripple/p-3c80bf67.entry.js +1 -0
  149. package/dist/ripple/{p-6f36e973.entry.js → p-3ec4ae19.entry.js} +1 -1
  150. package/dist/ripple/p-42aeb9bb.js +1 -0
  151. package/dist/ripple/{p-5d78937a.entry.js → p-4b59b16a.entry.js} +1 -1
  152. package/dist/ripple/{p-770f02d4.entry.js → p-50623da2.entry.js} +1 -1
  153. package/dist/ripple/p-50be6128.system.entry.js +1 -0
  154. package/dist/ripple/{p-f3ff86da.entry.js → p-535e7286.entry.js} +1 -1
  155. package/dist/ripple/{p-cabf1867.system.entry.js → p-53f5e969.system.entry.js} +1 -1
  156. package/dist/ripple/{p-0412d22d.system.entry.js → p-56d64283.system.entry.js} +1 -1
  157. package/dist/ripple/{p-d9268ba1.system.entry.js → p-5c1b2132.system.entry.js} +1 -1
  158. package/dist/ripple/{p-29960160.system.entry.js → p-5d592297.system.entry.js} +1 -1
  159. package/dist/ripple/{p-d4ebbe84.system.js → p-5e55eb56.system.js} +1 -1
  160. package/dist/ripple/{p-0872dd92.entry.js → p-697ba13b.entry.js} +1 -1
  161. package/dist/ripple/{p-b22858cd.entry.js → p-725c757a.entry.js} +1 -1
  162. package/dist/ripple/{p-24ac418e.system.entry.js → p-74a92541.system.entry.js} +1 -1
  163. package/dist/ripple/{p-fcbd4194.entry.js → p-7962f562.entry.js} +1 -1
  164. package/dist/ripple/{p-cd67e184.entry.js → p-7f722888.entry.js} +1 -1
  165. package/dist/ripple/{p-08e0007e.system.entry.js → p-80ca72ff.system.entry.js} +1 -1
  166. package/dist/ripple/{p-53b84f6d.entry.js → p-84e55d9e.entry.js} +1 -1
  167. package/dist/ripple/{p-0730d70d.system.entry.js → p-89bf36c8.system.entry.js} +1 -1
  168. package/dist/ripple/p-8ea68cb3.system.entry.js +1 -0
  169. package/dist/ripple/{p-7b91eba4.system.entry.js → p-8f273c5b.system.entry.js} +1 -1
  170. package/dist/ripple/{p-a7a9c931.entry.js → p-9cb8f41b.entry.js} +1 -1
  171. package/dist/ripple/{p-23a5adae.entry.js → p-9e29176c.entry.js} +1 -1
  172. package/dist/ripple/{p-6cc52a23.system.entry.js → p-a1e95b05.system.entry.js} +1 -1
  173. package/dist/ripple/{p-38b67301.entry.js → p-a52c5a1c.entry.js} +1 -1
  174. package/dist/ripple/{p-71ecba7e.system.entry.js → p-aae11e37.system.entry.js} +1 -1
  175. package/dist/ripple/{p-b111bc7d.entry.js → p-adf76148.entry.js} +1 -1
  176. package/dist/ripple/{p-765b53d8.system.entry.js → p-ae97bf6c.system.entry.js} +1 -1
  177. package/dist/ripple/p-b5bedd63.js +2 -0
  178. package/dist/ripple/{p-00850d97.entry.js → p-b982a342.entry.js} +1 -1
  179. package/dist/ripple/{p-e4f352fe.system.js → p-ba31d982.system.js} +1 -1
  180. package/dist/ripple/p-c1857a16.entry.js +1 -0
  181. package/dist/ripple/{p-d601c5a1.entry.js → p-c32d10f7.entry.js} +1 -1
  182. package/dist/ripple/{p-a9012b82.system.entry.js → p-c3915cfe.system.entry.js} +1 -1
  183. package/dist/ripple/{p-4d5e075b.system.entry.js → p-cab12cec.system.entry.js} +1 -1
  184. package/dist/ripple/{p-2b378ac6.js → p-cd7cc5c6.js} +1 -1
  185. package/dist/ripple/{p-0a846e45.entry.js → p-d72b00a0.entry.js} +1 -1
  186. package/dist/ripple/{p-f1aed810.system.entry.js → p-d8de670a.system.entry.js} +1 -1
  187. package/dist/ripple/{p-68f11410.entry.js → p-da01c531.entry.js} +1 -1
  188. package/dist/ripple/{p-4a58b0ff.system.entry.js → p-dd01929e.system.entry.js} +1 -1
  189. package/dist/ripple/{p-5da6b9ff.system.entry.js → p-e0f270e2.system.entry.js} +1 -1
  190. package/dist/ripple/{p-64abb6d9.system.entry.js → p-e882a31f.system.entry.js} +1 -1
  191. package/dist/ripple/{p-c459ef8e.entry.js → p-ec13e325.entry.js} +1 -1
  192. package/dist/ripple/{p-dc069d46.entry.js → p-ed3e41ed.entry.js} +1 -1
  193. package/dist/ripple/{p-458c1c0b.system.entry.js → p-f635c1ec.system.entry.js} +1 -1
  194. package/dist/ripple/{p-eb0d569a.system.entry.js → p-f865899a.system.entry.js} +1 -1
  195. package/dist/ripple/{p-fd0fc5e1.system.entry.js → p-f9539737.system.entry.js} +1 -1
  196. package/dist/ripple/{p-6628e036.system.entry.js → p-fbb44f76.system.entry.js} +1 -1
  197. package/dist/ripple/{p-74880dac.system.entry.js → p-fcdd9e03.system.entry.js} +1 -1
  198. package/dist/ripple/{p-1a7b1578.system.js → p-fd354e00.system.js} +1 -1
  199. package/dist/ripple/{p-6546dda7.entry.js → p-fd91cd58.entry.js} +1 -1
  200. package/dist/ripple/{p-f9e942f6.entry.js → p-fea4bc00.entry.js} +1 -1
  201. package/dist/ripple/{p-20495238.js → p-ff888d78.js} +1 -1
  202. package/dist/ripple/ripple.esm.js +1 -1
  203. package/dist/ripple/ripple.js +1 -1
  204. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +0 -1
  205. package/dist/types/components/wm-modal/wm-modal-header.d.ts +0 -1
  206. package/dist/types/components/wm-modal/wm-modal.d.ts +4 -10
  207. package/package.json +1 -1
  208. package/dist/esm-es5/index-294d486f.js +0 -2
  209. package/dist/ripple/p-11b416c7.js +0 -2
  210. package/dist/ripple/p-16708229.js +0 -1
  211. package/dist/ripple/p-212d0c64.entry.js +0 -1
  212. package/dist/ripple/p-2b59a09f.entry.js +0 -1
  213. package/dist/ripple/p-4418858d.entry.js +0 -1
  214. package/dist/ripple/p-56747d40.system.entry.js +0 -1
  215. package/dist/ripple/p-5e005259.system.entry.js +0 -1
  216. package/dist/ripple/p-63466d04.entry.js +0 -1
  217. package/dist/ripple/p-89bc016a.js +0 -1
  218. package/dist/ripple/p-8a38e526.system.js +0 -1
  219. package/dist/ripple/p-8c6ffd70.system.entry.js +0 -1
  220. package/dist/ripple/p-c467a1e1.system.js +0 -2
  221. package/dist/ripple/p-c5942ad6.system.entry.js +0 -1
@@ -1 +1 @@
1
- import{r as t,c as r,h as i,H as s,g as a}from"./p-11b416c7.js";import{a as o}from"./p-888bec42.js";import{m as e,n,i as h}from"./p-20495238.js";import{g as c}from"./p-a6d6eae7.js";const l=class{constructor(i){t(this,i),this.wmNavigatorLogout=r(this,"wmNavigatorLogout",7),this.retrievedInfo=!this.loadFromUserinfo,this.parsedProducts=[],this.openRight=!1,this.userName=void 0,this.email=void 0,this.authType=1,this.connectionName=void 0,this.logoutUrl=void 0,this.products=void 0,this.loadFromUserinfo=!1,this.isOpen=!1,this.isTabbing=!1,this.itemIndexToFocus=0}async componentWillLoad(){this.userName||console.error("wm-navigator: user-name is a required property."),await this.parseData(),this.setFocusIndex()}async parseData(){this.loadFromUserinfo?await c("/platform/navigator/userinfo").then((t=>{this.email=t.email,this.currentProductId=t.current_product_id,this.parsedProducts=this.productKeysToCamelCase(t.products),this.logoutUrl=this.logoutUrl?this.logoutUrl:t.logout_url,this.connectionName=this.connectionName?this.connectionName:t.connection_name,this.email&&this.currentProductId&&(this.retrievedInfo=!0)})).catch((t=>{console.error(t)})):(this.currentProductId=o(this.el),this.products&&(this.parsedProducts="string"==typeof this.products?JSON.parse(this.products):this.products,this.parsedProducts=this.productKeysToCamelCase(this.parsedProducts))),this.parsedProducts.sort(((t,r)=>t.name<r.name?-1:1))}productKeysToCamelCase(t){return t.map((t=>{const r=Object.keys(t);let i={};return r.forEach((r=>{i[e(r)]=t[r]})),i}))}setFocusIndex(){if(this.parsedProducts.length>1){const t=this.getProduct(this.currentProductId);t&&(this.itemIndexToFocus=this.parsedProducts.indexOf(t))}}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}handleKeys(t){switch(t.key){case"Escape":t.preventDefault(),this.closeMenu();break;case"ArrowDown":case"ArrowUp":t.preventDefault(),this.isOpen||(this.itemIndexToFocus=n(this.itemIndexToFocus,t.key,this.navigatorItems.length),this.openMenu())}}handleKeydown(t){const r=t.detail.key,i=t.detail.navItem;switch(r){case"Tab":this.closeMenu();break;case"Enter":case" ":i.click();break;case"ArrowDown":case"ArrowUp":const t=this.itemIndexToFocus;this.itemIndexToFocus=n(this.itemIndexToFocus,r,this.navigatorItems.length),this.focusItem(),this.unfocusItem(t)}}handleClick(t){t.target!==this.el&&!this.el.contains(t.target)&&this.isOpen&&this.closeMenu()}handleButtonClick(){this.isOpen?this.closeMenu():this.openMenu()}openMenu(){if(this.wrapperEl){const t=this.wrapperEl.clientWidth,r=this.el.getBoundingClientRect().left,i=document.documentElement.clientWidth-this.el.getBoundingClientRect().right;this.openRight=t>r&&i>r}this.isOpen=!0,this.focusItem()}closeMenu(){this.isOpen=!1,this.buttonFocusHandler(),this.unfocusItem(this.itemIndexToFocus),this.setFocusIndex()}focusItem(){const t=this.navigatorItems[this.itemIndexToFocus];t.tabIndex=0,t.focused=!0,window.requestAnimationFrame((()=>t.focus()))}unfocusItem(t){const r=this.navigatorItems[t];r.tabIndex=-1,r.focused=!1}buttonFocusHandler(){const t=this.el.shadowRoot.querySelector("priv-navigator-button").shadowRoot.querySelector("button");window.requestAnimationFrame((()=>t.focus()))}renderUserInfo(){return i("div",{class:"user",id:"wm-nav-user","aria-label":h.formatMessage({id:"navigator.userinfoLabel",defaultMessage:"for {name}, email {email}"},{name:this.userName,email:this.email})},i("p",null,this.userName),i("p",null,this.email))}setAltText(){return h.formatMessage(this.parsedProducts.length>1?{id:"navigator.userinfoAndProductNavigator",defaultMessage:"User information and product navigator"}:{id:"navigator.userinfo",defaultMessage:"User information"})}renderHeading(){return i("h2",null,h.formatMessage({id:"navigator.watermarkApps",defaultMessage:"Watermark Apps",description:"Applications made by Watermark Insights"}))}renderList(){return i("ul",{role:"listbox","aria-label":`${h.formatMessage({id:"navigator.WatermarkAppNavigation",defaultMessage:"Watermark App Navigation",description:"list of applications by Watermark Insights"})}`,"aria-describedby":"wm-nav-user"},this.parsedProducts.length>1&&this.renderProductOptions(),this.renderLogoutOption())}renderProductOptions(){return this.parsedProducts.map((t=>{let r,s,a,o;if(r=t.name,s=t.iconUrl,o=this.setProductOnClick(t.id),r&&s)return a=this.currentProductId===t.id,i("priv-navigator-item",{selected:a,id:t.id,onClick:o,role:"option","aria-label":r},i("img",{src:s,alt:r}))}))}setProductOnClick(t){const r=this.getProduct(t);if(this.currentProductId===t)return()=>{};if(r){if(this.loadFromUserinfo||2===this.authType)return()=>window.location.href=r.linkUrl;if(3===this.authType){const t=this.connectionName?`/?connection_name=${this.connectionName}`:"";return()=>window.location.href=r.samlLinkUrl+t}}}renderLogoutOption(){return i("priv-navigator-item",{class:"logout",selected:!(this.parsedProducts.length>1),id:"nav-logout",onClick:this.setLogoutOnclick(),role:"option"},i("span",{class:"logout"},h.formatMessage({id:"navigator.logout",defaultMessage:"Log Out"})))}setLogoutOnclick(){return()=>{this.wmNavigatorLogout.emit(),this.logoutUrl&&(window.location.href=this.logoutUrl)}}get navigatorItems(){return Array.from(this.el.shadowRoot.querySelectorAll("priv-navigator-item"))}getProduct(t){return this.parsedProducts.find((r=>r.id===t))}render(){return this.retrievedInfo?i(s,{class:this.isTabbing?"user-is-tabbing":""},i("priv-navigator-button",{expanded:this.isOpen,altText:this.setAltText(),isTabbing:this.isTabbing}),i("div",{class:`wrapper ${this.isOpen?"":"hide"} ${this.openRight?"right":""}`,ref:t=>this.wrapperEl=t},this.renderUserInfo(),this.parsedProducts.length>1&&this.renderHeading(),this.renderList())):""}static get delegatesFocus(){return!0}get el(){return a(this)}static get watchers(){return{products:["parseData"]}}};l.style=":host{--wmcolor-navigator-background:var(--wmcolor-background);--wmcolor-navigator-header-background:var(--wmcolor-brand-dark);--wmcolor-navigator-header-text:var(--wmcolor-text-ondark);--wmcolor-navigator-item-background-focus:var(--wmcolor-interactive-background-focus);--wmcolor-navigator-item-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-navigator-item-background:var(--wmcolor-background);--wmcolor-navigator-item-border:var(--wmcolor-border);--wmcolor-navigator-item-text:var(--wmcolor-text);--wmcolor-navigator-user-background:var(--wmcolor-background-readonly);min-width:0;position:relative;display:inline-block}:host .wrapper{overflow:auto;font-size:1.125rem;min-width:13.125rem;width:auto;max-height:80vh;text-align:left;position:absolute;z-index:50;top:100%;right:20px;left:auto;background:var(--wmcolor-navigator-background);letter-spacing:normal;-webkit-box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);-ms-transition:transform 0.25s ease;-webkit-transition:transform 0.25s ease;-moz-transition:transform 0.25s ease;-webkit-transition:-webkit-transform 0.25s ease;transition:-webkit-transform 0.25s ease;transition:transform 0.25s ease;transition:transform 0.25s ease, -webkit-transform 0.25s ease;-ms-transform-origin:center top;-webkit-transform-origin:center top;-moz-transform-origin:center top;transform-origin:center top;-ms-transform:scale(1, 1);-webkit-transform:scale(1, 1);-moz-transform:scale(1, 1);transform:scale(1, 1)}:host .wrapper .user{background:var(--wmcolor-navigator-user-background);padding:0.625rem 1.25rem;font-size:0.875rem}:host .wrapper .user p{margin:0}:host .wrapper .user p:first-child{font-weight:700;text-transform:capitalize}:host .wrapper h2{background:var(--wmcolor-navigator-header-background);color:var(--wmcolor-navigator-header-text);font-weight:700;margin:0;padding:0.625rem 1.25rem;font-size:0.875rem}:host .wrapper [role=listbox]{list-style:none;margin:0;padding-left:0}:host .wrapper.hide{-ms-transform:scale(1, 0);-webkit-transform:scale(1, 0);-moz-transform:scale(1, 0);transform:scale(1, 0)}:host .wrapper.right{right:auto;left:20px}:host img{-webkit-transform:scale(0.8);transform:scale(0.8);-webkit-transform-origin:left center;transform-origin:left center;display:block}:host .logout{text-align:center;text-transform:capitalize}priv-navigator-item:focus{outline:none}";export{l as wm_navigator}
1
+ import{r as t,c as r,h as i,H as s,g as a}from"./p-b5bedd63.js";import{a as o}from"./p-888bec42.js";import{m as e,n,i as h}from"./p-ff888d78.js";import{g as c}from"./p-a6d6eae7.js";const l=class{constructor(i){t(this,i),this.wmNavigatorLogout=r(this,"wmNavigatorLogout",7),this.retrievedInfo=!this.loadFromUserinfo,this.parsedProducts=[],this.openRight=!1,this.userName=void 0,this.email=void 0,this.authType=1,this.connectionName=void 0,this.logoutUrl=void 0,this.products=void 0,this.loadFromUserinfo=!1,this.isOpen=!1,this.isTabbing=!1,this.itemIndexToFocus=0}async componentWillLoad(){this.userName||console.error("wm-navigator: user-name is a required property."),await this.parseData(),this.setFocusIndex()}async parseData(){this.loadFromUserinfo?await c("/platform/navigator/userinfo").then((t=>{this.email=t.email,this.currentProductId=t.current_product_id,this.parsedProducts=this.productKeysToCamelCase(t.products),this.logoutUrl=this.logoutUrl?this.logoutUrl:t.logout_url,this.connectionName=this.connectionName?this.connectionName:t.connection_name,this.email&&this.currentProductId&&(this.retrievedInfo=!0)})).catch((t=>{console.error(t)})):(this.currentProductId=o(this.el),this.products&&(this.parsedProducts="string"==typeof this.products?JSON.parse(this.products):this.products,this.parsedProducts=this.productKeysToCamelCase(this.parsedProducts))),this.parsedProducts.sort(((t,r)=>t.name<r.name?-1:1))}productKeysToCamelCase(t){return t.map((t=>{const r=Object.keys(t);let i={};return r.forEach((r=>{i[e(r)]=t[r]})),i}))}setFocusIndex(){if(this.parsedProducts.length>1){const t=this.getProduct(this.currentProductId);t&&(this.itemIndexToFocus=this.parsedProducts.indexOf(t))}}toggleTabbingOn(){this.isTabbing=!0}toggleTabbingOff(){this.isTabbing=!1}handleKeys(t){switch(t.key){case"Escape":t.preventDefault(),this.closeMenu();break;case"ArrowDown":case"ArrowUp":t.preventDefault(),this.isOpen||(this.itemIndexToFocus=n(this.itemIndexToFocus,t.key,this.navigatorItems.length),this.openMenu())}}handleKeydown(t){const r=t.detail.key,i=t.detail.navItem;switch(r){case"Tab":this.closeMenu();break;case"Enter":case" ":i.click();break;case"ArrowDown":case"ArrowUp":const t=this.itemIndexToFocus;this.itemIndexToFocus=n(this.itemIndexToFocus,r,this.navigatorItems.length),this.focusItem(),this.unfocusItem(t)}}handleClick(t){t.target!==this.el&&!this.el.contains(t.target)&&this.isOpen&&this.closeMenu()}handleButtonClick(){this.isOpen?this.closeMenu():this.openMenu()}openMenu(){if(this.wrapperEl){const t=this.wrapperEl.clientWidth,r=this.el.getBoundingClientRect().left,i=document.documentElement.clientWidth-this.el.getBoundingClientRect().right;this.openRight=t>r&&i>r}this.isOpen=!0,this.focusItem()}closeMenu(){this.isOpen=!1,this.buttonFocusHandler(),this.unfocusItem(this.itemIndexToFocus),this.setFocusIndex()}focusItem(){const t=this.navigatorItems[this.itemIndexToFocus];t.tabIndex=0,t.focused=!0,window.requestAnimationFrame((()=>t.focus()))}unfocusItem(t){const r=this.navigatorItems[t];r.tabIndex=-1,r.focused=!1}buttonFocusHandler(){const t=this.el.shadowRoot.querySelector("priv-navigator-button").shadowRoot.querySelector("button");window.requestAnimationFrame((()=>t.focus()))}renderUserInfo(){return i("div",{class:"user",id:"wm-nav-user","aria-label":h.formatMessage({id:"navigator.userinfoLabel",defaultMessage:"for {name}, email {email}"},{name:this.userName,email:this.email})},i("p",null,this.userName),i("p",null,this.email))}setAltText(){return h.formatMessage(this.parsedProducts.length>1?{id:"navigator.userinfoAndProductNavigator",defaultMessage:"User information and product navigator"}:{id:"navigator.userinfo",defaultMessage:"User information"})}renderHeading(){return i("h2",null,h.formatMessage({id:"navigator.watermarkApps",defaultMessage:"Watermark Apps",description:"Applications made by Watermark Insights"}))}renderList(){return i("ul",{role:"listbox","aria-label":`${h.formatMessage({id:"navigator.WatermarkAppNavigation",defaultMessage:"Watermark App Navigation",description:"list of applications by Watermark Insights"})}`,"aria-describedby":"wm-nav-user"},this.parsedProducts.length>1&&this.renderProductOptions(),this.renderLogoutOption())}renderProductOptions(){return this.parsedProducts.map((t=>{let r,s,a,o;if(r=t.name,s=t.iconUrl,o=this.setProductOnClick(t.id),r&&s)return a=this.currentProductId===t.id,i("priv-navigator-item",{selected:a,id:t.id,onClick:o,role:"option","aria-label":r},i("img",{src:s,alt:r}))}))}setProductOnClick(t){const r=this.getProduct(t);if(this.currentProductId===t)return()=>{};if(r){if(this.loadFromUserinfo||2===this.authType)return()=>window.location.href=r.linkUrl;if(3===this.authType){const t=this.connectionName?`/?connection_name=${this.connectionName}`:"";return()=>window.location.href=r.samlLinkUrl+t}}}renderLogoutOption(){return i("priv-navigator-item",{class:"logout",selected:!(this.parsedProducts.length>1),id:"nav-logout",onClick:this.setLogoutOnclick(),role:"option"},i("span",{class:"logout"},h.formatMessage({id:"navigator.logout",defaultMessage:"Log Out"})))}setLogoutOnclick(){return()=>{this.wmNavigatorLogout.emit(),this.logoutUrl&&(window.location.href=this.logoutUrl)}}get navigatorItems(){return Array.from(this.el.shadowRoot.querySelectorAll("priv-navigator-item"))}getProduct(t){return this.parsedProducts.find((r=>r.id===t))}render(){return this.retrievedInfo?i(s,{class:this.isTabbing?"user-is-tabbing":""},i("priv-navigator-button",{expanded:this.isOpen,altText:this.setAltText(),isTabbing:this.isTabbing}),i("div",{class:`wrapper ${this.isOpen?"":"hide"} ${this.openRight?"right":""}`,ref:t=>this.wrapperEl=t},this.renderUserInfo(),this.parsedProducts.length>1&&this.renderHeading(),this.renderList())):""}static get delegatesFocus(){return!0}get el(){return a(this)}static get watchers(){return{products:["parseData"]}}};l.style=":host{--wmcolor-navigator-background:var(--wmcolor-background);--wmcolor-navigator-header-background:var(--wmcolor-brand-dark);--wmcolor-navigator-header-text:var(--wmcolor-text-ondark);--wmcolor-navigator-item-background-focus:var(--wmcolor-interactive-background-focus);--wmcolor-navigator-item-background-hover:var(--wmcolor-interactive-background-hover);--wmcolor-navigator-item-background:var(--wmcolor-background);--wmcolor-navigator-item-border:var(--wmcolor-border);--wmcolor-navigator-item-text:var(--wmcolor-text);--wmcolor-navigator-user-background:var(--wmcolor-background-readonly);min-width:0;position:relative;display:inline-block}:host .wrapper{overflow:auto;font-size:1.125rem;min-width:13.125rem;width:auto;max-height:80vh;text-align:left;position:absolute;z-index:50;top:100%;right:20px;left:auto;background:var(--wmcolor-navigator-background);letter-spacing:normal;-webkit-box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);-moz-box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);box-shadow:0 4px 15px 0 rgba(0, 0, 0, 0.2);-ms-transition:transform 0.25s ease;-webkit-transition:transform 0.25s ease;-moz-transition:transform 0.25s ease;-webkit-transition:-webkit-transform 0.25s ease;transition:-webkit-transform 0.25s ease;transition:transform 0.25s ease;transition:transform 0.25s ease, -webkit-transform 0.25s ease;-ms-transform-origin:center top;-webkit-transform-origin:center top;-moz-transform-origin:center top;transform-origin:center top;-ms-transform:scale(1, 1);-webkit-transform:scale(1, 1);-moz-transform:scale(1, 1);transform:scale(1, 1)}:host .wrapper .user{background:var(--wmcolor-navigator-user-background);padding:0.625rem 1.25rem;font-size:0.875rem}:host .wrapper .user p{margin:0}:host .wrapper .user p:first-child{font-weight:700;text-transform:capitalize}:host .wrapper h2{background:var(--wmcolor-navigator-header-background);color:var(--wmcolor-navigator-header-text);font-weight:700;margin:0;padding:0.625rem 1.25rem;font-size:0.875rem}:host .wrapper [role=listbox]{list-style:none;margin:0;padding-left:0}:host .wrapper.hide{-ms-transform:scale(1, 0);-webkit-transform:scale(1, 0);-moz-transform:scale(1, 0);transform:scale(1, 0)}:host .wrapper.right{right:auto;left:20px}:host img{-webkit-transform:scale(0.8);transform:scale(0.8);-webkit-transform-origin:left center;transform-origin:left center;display:block}:host .logout{text-align:center;text-transform:capitalize}priv-navigator-item:focus{outline:none}";export{l as wm_navigator}