@watermarkinsights/ripple 0.0.0 → 0.1.0-alpha.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 (580) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -1
  3. package/dist/cjs/app-globals-f836e216.js +103 -0
  4. package/dist/cjs/chartFunctions-608adb05.js +908 -0
  5. package/dist/cjs/{functions-f2333f02.js → functions-b188d5b3.js} +6137 -1590
  6. package/dist/cjs/index-786066a1.js +1880 -0
  7. package/dist/cjs/interfaces-8419be91.js +59 -0
  8. package/dist/cjs/intl-01531391.js +283 -0
  9. package/dist/cjs/loader.cjs.js +7 -14
  10. package/dist/cjs/priv-calendar.cjs.entry.js +608 -0
  11. package/dist/cjs/priv-chart-popover-old.cjs.entry.js +146 -0
  12. package/dist/cjs/priv-chart-popover_2.cjs.entry.js +194 -0
  13. package/dist/cjs/priv-navigator-button.cjs.entry.js +19 -19
  14. package/dist/cjs/priv-navigator-item.cjs.entry.js +24 -23
  15. package/dist/cjs/priv-option-list.cjs.entry.js +391 -0
  16. package/dist/cjs/ripple.cjs.js +25 -0
  17. package/dist/cjs/wm-action-menu_2.cjs.entry.js +471 -302
  18. package/dist/cjs/wm-button.cjs.entry.js +263 -142
  19. package/dist/cjs/wm-chart-bar.cjs.entry.js +441 -0
  20. package/dist/cjs/wm-chart-column.cjs.entry.js +544 -0
  21. package/dist/cjs/wm-chart-slice.cjs.entry.js +17 -12
  22. package/dist/cjs/wm-chart.cjs.entry.js +133 -478
  23. package/dist/cjs/wm-date-range.cjs.entry.js +526 -0
  24. package/dist/cjs/wm-datepicker.cjs.entry.js +285 -224
  25. package/dist/cjs/wm-file-list.cjs.entry.js +23 -0
  26. package/dist/cjs/wm-file.cjs.entry.js +210 -0
  27. package/dist/cjs/wm-flyout.cjs.entry.js +181 -0
  28. package/dist/cjs/wm-input.cjs.entry.js +121 -100
  29. package/dist/cjs/wm-line-chart.cjs.entry.js +541 -0
  30. package/dist/cjs/wm-modal-pss_3.cjs.entry.js +220 -0
  31. package/dist/cjs/wm-modal_3.cjs.entry.js +223 -0
  32. package/dist/cjs/wm-navigation_3.cjs.entry.js +188 -0
  33. package/dist/cjs/wm-navigator.cjs.entry.js +305 -250
  34. package/dist/cjs/wm-nested-select.cjs.entry.js +320 -0
  35. package/dist/cjs/wm-optgroup.cjs.entry.js +74 -0
  36. package/dist/cjs/wm-option_2.cjs.entry.js +517 -465
  37. package/dist/cjs/wm-pagination.cjs.entry.js +218 -165
  38. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +204 -0
  39. package/dist/cjs/wm-search.cjs.entry.js +182 -217
  40. package/dist/cjs/wm-snackbar.cjs.entry.js +158 -142
  41. package/dist/cjs/wm-tab-item_3.cjs.entry.js +317 -276
  42. package/dist/cjs/wm-tag-input.cjs.entry.js +940 -500
  43. package/dist/cjs/wm-tag-option.cjs.entry.js +43 -0
  44. package/dist/cjs/wm-textarea.cjs.entry.js +94 -0
  45. package/dist/cjs/wm-timepicker.cjs.entry.js +276 -349
  46. package/dist/cjs/wm-toggletip.cjs.entry.js +238 -114
  47. package/dist/cjs/wm-uploader.cjs.entry.js +322 -323
  48. package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
  49. package/dist/collection/collection-manifest.json +104 -34
  50. package/dist/collection/components/charts/chartFunctions.js +833 -0
  51. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.css +995 -0
  52. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +340 -0
  53. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.css +990 -0
  54. package/dist/collection/components/charts/priv-chart-popover-old/priv-chart-popover-old.js +263 -0
  55. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +125 -0
  56. package/dist/collection/components/charts/wm-chart/wm-chart.css +1326 -0
  57. package/dist/collection/components/charts/wm-chart/wm-chart.js +422 -0
  58. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.css +1116 -0
  59. package/dist/collection/components/charts/wm-chart-bar/wm-chart-bar.js +579 -0
  60. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.css +1169 -0
  61. package/dist/collection/components/charts/wm-chart-column/wm-chart-column.js +688 -0
  62. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.css +932 -0
  63. package/dist/collection/components/charts/wm-chart-legend/wm-chart-legend.js +194 -0
  64. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.css +1208 -0
  65. package/dist/collection/components/charts/wm-line-chart/wm-line-chart.js +862 -0
  66. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.css +1326 -0
  67. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +264 -0
  68. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.css +967 -0
  69. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +151 -0
  70. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +121 -0
  71. package/dist/collection/components/datepickers/datepicker.css +1137 -0
  72. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.css +1403 -0
  73. package/dist/collection/components/datepickers/priv-calendar/priv-calendar.js +881 -0
  74. package/dist/collection/components/datepickers/wm-date-range.js +870 -0
  75. package/dist/collection/components/datepickers/wm-datepicker.js +579 -0
  76. package/dist/collection/components/selects/priv-option-list/priv-option-list.css +999 -0
  77. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +778 -0
  78. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1259 -0
  79. package/dist/collection/components/selects/wm-nested-select/wm-nested-select.js +626 -0
  80. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.css +909 -0
  81. package/dist/collection/components/selects/wm-optgroup/wm-optgroup.js +258 -0
  82. package/dist/collection/components/selects/wm-option/wm-option.css +1033 -0
  83. package/dist/collection/components/selects/wm-option/wm-option.js +530 -0
  84. package/dist/collection/components/selects/wm-select/wm-select.css +1187 -0
  85. package/dist/collection/components/selects/wm-select/wm-select.js +705 -0
  86. package/dist/collection/components/wm-action-menu/wm-action-menu.css +1614 -50
  87. package/dist/collection/components/wm-action-menu/wm-action-menu.js +605 -387
  88. package/dist/collection/components/wm-button/wm-button.css +1440 -385
  89. package/dist/collection/components/wm-button/wm-button.js +538 -348
  90. package/dist/collection/components/wm-file/wm-file.css +1086 -0
  91. package/dist/collection/components/wm-file/wm-file.js +428 -0
  92. package/dist/collection/components/wm-file-list/wm-file-list.css +899 -0
  93. package/dist/collection/components/wm-file-list/wm-file-list.js +45 -0
  94. package/dist/collection/components/wm-flyout/wm-flyout.css +1117 -0
  95. package/dist/collection/components/wm-flyout/wm-flyout.js +449 -0
  96. package/dist/collection/components/wm-input/wm-input.css +965 -96
  97. package/dist/collection/components/wm-input/wm-input.js +466 -291
  98. package/dist/collection/components/wm-menuitem/wm-menuitem.css +919 -55
  99. package/dist/collection/components/wm-menuitem/wm-menuitem.js +402 -397
  100. package/dist/collection/components/wm-modal/wm-modal-footer.css +871 -28
  101. package/dist/collection/components/wm-modal/wm-modal-footer.js +139 -156
  102. package/dist/collection/components/wm-modal/wm-modal-header.css +864 -16
  103. package/dist/collection/components/wm-modal/wm-modal-header.js +76 -106
  104. package/dist/collection/components/wm-modal/wm-modal.css +921 -93
  105. package/dist/collection/components/wm-modal/wm-modal.js +337 -337
  106. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.css +931 -0
  107. package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +138 -0
  108. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.css +925 -0
  109. package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +82 -0
  110. package/dist/collection/components/wm-modal-pss/wm-modal-pss.css +1007 -0
  111. package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +365 -0
  112. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.css +926 -0
  113. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +119 -0
  114. package/dist/collection/components/wm-navigation/wm-navigation-item.css +935 -0
  115. package/dist/collection/components/wm-navigation/wm-navigation-item.js +98 -0
  116. package/dist/collection/components/wm-navigation/wm-navigation.css +977 -0
  117. package/dist/collection/components/wm-navigation/wm-navigation.js +190 -0
  118. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +868 -33
  119. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +83 -94
  120. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +876 -25
  121. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +120 -110
  122. package/dist/collection/components/wm-navigator/wm-navigator.css +891 -38
  123. package/dist/collection/components/wm-navigator/wm-navigator.js +491 -456
  124. package/dist/collection/components/wm-pagination/wm-pagination.css +895 -68
  125. package/dist/collection/components/wm-pagination/wm-pagination.js +374 -340
  126. package/dist/collection/components/wm-search/wm-search.css +895 -73
  127. package/dist/collection/components/wm-search/wm-search.js +411 -421
  128. package/dist/collection/components/wm-snackbar/wm-snackbar.css +979 -160
  129. package/dist/collection/components/wm-snackbar/wm-snackbar.js +258 -235
  130. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +904 -50
  131. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +162 -198
  132. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +922 -29
  133. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +334 -292
  134. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +862 -13
  135. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +83 -100
  136. package/dist/collection/components/wm-tag-input/wm-tag-input.css +1212 -200
  137. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1283 -702
  138. package/dist/collection/components/wm-tag-input/wm-tag-option/wm-tag-option.js +243 -0
  139. package/dist/collection/components/wm-textarea/wm-textarea.css +1065 -0
  140. package/dist/collection/components/wm-textarea/wm-textarea.js +319 -0
  141. package/dist/collection/components/wm-timepicker/wm-timepicker.css +962 -168
  142. package/dist/collection/components/wm-timepicker/wm-timepicker.js +539 -553
  143. package/dist/collection/components/wm-toggletip/wm-toggletip.css +1094 -148
  144. package/dist/collection/components/wm-toggletip/wm-toggletip.js +370 -211
  145. package/dist/collection/components/wm-uploader/wm-uploader.css +1756 -438
  146. package/dist/collection/components/wm-uploader/wm-uploader.js +607 -661
  147. package/dist/collection/components/wm-wrapper/wm-wrapper.js +26 -25
  148. package/dist/collection/dev/action-menu.js +18 -0
  149. package/dist/collection/dev/chart-bar.js +423 -0
  150. package/dist/collection/dev/chart-column.js +437 -0
  151. package/dist/collection/dev/chart-small.js +56 -0
  152. package/dist/collection/dev/chart.js +18 -0
  153. package/dist/collection/dev/date-range.js +6 -0
  154. package/dist/collection/dev/datepicker.js +46 -0
  155. package/dist/collection/dev/file-list.js +16 -0
  156. package/dist/collection/dev/file.js +0 -0
  157. package/dist/collection/dev/flyout.js +194 -0
  158. package/dist/collection/dev/input.js +6 -0
  159. package/dist/collection/dev/line-chart.js +45 -0
  160. package/dist/collection/dev/modal.js +48 -0
  161. package/dist/collection/dev/navigation.js +13 -0
  162. package/dist/collection/dev/navigator.js +34 -0
  163. package/dist/collection/dev/nested-select.js +36 -0
  164. package/dist/collection/dev/pagination.js +7 -0
  165. package/dist/collection/dev/progress-monitor.js +0 -0
  166. package/dist/collection/dev/pss-modal.js +8 -0
  167. package/dist/collection/dev/scripts.js +43 -14
  168. package/dist/collection/dev/search.js +72 -0
  169. package/dist/collection/dev/select.js +57 -0
  170. package/dist/collection/dev/snackbar.js +68 -0
  171. package/dist/collection/dev/tabs.js +44 -0
  172. package/dist/collection/dev/tag-input.js +32 -0
  173. package/dist/collection/dev/textarea.js +28 -0
  174. package/dist/collection/dev/timepicker.js +32 -0
  175. package/dist/collection/dev/toggletip.js +9 -0
  176. package/dist/collection/dev/uploader.js +139 -0
  177. package/dist/collection/global/__mocks__/functions.js +2 -1
  178. package/dist/collection/global/functions.js +853 -371
  179. package/dist/collection/global/global.js +88 -28
  180. package/dist/collection/global/interfaces.js +62 -39
  181. package/dist/collection/global/intl.js +274 -0
  182. package/dist/collection/global/services/__mocks__/http-service.js +112 -112
  183. package/dist/collection/global/services/http-service.js +41 -41
  184. package/dist/collection/lang/missing.js +43 -0
  185. package/dist/collection/lang/piglatin.js +11 -3
  186. package/dist/esm/app-globals-d0ca31a6.js +101 -0
  187. package/dist/esm/chartFunctions-4bc77b76.js +883 -0
  188. package/dist/esm/{functions-60034bf7.js → functions-de887809.js} +6110 -1584
  189. package/dist/esm/index-ef50bc01.js +1849 -0
  190. package/dist/esm/interfaces-7e50d034.js +55 -0
  191. package/dist/esm/intl-56b47a7b.js +277 -0
  192. package/dist/esm/loader.js +7 -14
  193. package/dist/esm/priv-calendar.entry.js +604 -0
  194. package/dist/esm/priv-chart-popover-old.entry.js +142 -0
  195. package/dist/esm/priv-chart-popover_2.entry.js +189 -0
  196. package/dist/esm/priv-navigator-button.entry.js +19 -19
  197. package/dist/esm/priv-navigator-item.entry.js +24 -23
  198. package/dist/esm/priv-option-list.entry.js +387 -0
  199. package/dist/esm/ripple.js +20 -0
  200. package/dist/esm/wm-action-menu_2.entry.js +471 -302
  201. package/dist/esm/wm-button.entry.js +263 -142
  202. package/dist/esm/wm-chart-bar.entry.js +437 -0
  203. package/dist/esm/wm-chart-column.entry.js +540 -0
  204. package/dist/esm/wm-chart-slice.entry.js +17 -12
  205. package/dist/esm/wm-chart.entry.js +133 -478
  206. package/dist/esm/wm-date-range.entry.js +522 -0
  207. package/dist/esm/wm-datepicker.entry.js +285 -224
  208. package/dist/esm/wm-file-list.entry.js +19 -0
  209. package/dist/esm/wm-file.entry.js +206 -0
  210. package/dist/esm/wm-flyout.entry.js +177 -0
  211. package/dist/esm/wm-input.entry.js +121 -100
  212. package/dist/esm/wm-line-chart.entry.js +537 -0
  213. package/dist/esm/wm-modal-pss_3.entry.js +214 -0
  214. package/dist/esm/wm-modal_3.entry.js +217 -0
  215. package/dist/esm/wm-navigation_3.entry.js +182 -0
  216. package/dist/esm/wm-navigator.entry.js +305 -250
  217. package/dist/esm/wm-nested-select.entry.js +316 -0
  218. package/dist/esm/wm-optgroup.entry.js +70 -0
  219. package/dist/esm/wm-option_2.entry.js +517 -465
  220. package/dist/esm/wm-pagination.entry.js +218 -165
  221. package/dist/esm/wm-progress-indicator_3.entry.js +198 -0
  222. package/dist/esm/wm-search.entry.js +182 -217
  223. package/dist/esm/wm-snackbar.entry.js +158 -142
  224. package/dist/esm/wm-tab-item_3.entry.js +317 -276
  225. package/dist/esm/wm-tag-input.entry.js +940 -500
  226. package/dist/esm/wm-tag-option.entry.js +39 -0
  227. package/dist/esm/wm-textarea.entry.js +90 -0
  228. package/dist/esm/wm-timepicker.entry.js +276 -349
  229. package/dist/esm/wm-toggletip.entry.js +238 -114
  230. package/dist/esm/wm-uploader.entry.js +322 -323
  231. package/dist/esm/wm-wrapper.entry.js +12 -12
  232. package/dist/esm-es5/app-globals-d0ca31a6.js +1 -0
  233. package/dist/esm-es5/chartFunctions-4bc77b76.js +1 -0
  234. package/dist/esm-es5/functions-de887809.js +1 -0
  235. package/dist/esm-es5/index-ef50bc01.js +1 -0
  236. package/dist/esm-es5/index.js +0 -0
  237. package/dist/esm-es5/interfaces-7e50d034.js +1 -0
  238. package/dist/esm-es5/intl-56b47a7b.js +1 -0
  239. package/dist/esm-es5/loader.js +1 -0
  240. package/dist/esm-es5/priv-calendar.entry.js +1 -0
  241. package/dist/esm-es5/priv-chart-popover-old.entry.js +1 -0
  242. package/dist/esm-es5/priv-chart-popover_2.entry.js +1 -0
  243. package/dist/esm-es5/priv-navigator-button.entry.js +1 -0
  244. package/dist/esm-es5/priv-navigator-item.entry.js +1 -0
  245. package/dist/esm-es5/priv-option-list.entry.js +1 -0
  246. package/dist/esm-es5/ripple.js +1 -0
  247. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -0
  248. package/dist/esm-es5/wm-button.entry.js +1 -0
  249. package/dist/esm-es5/wm-chart-bar.entry.js +1 -0
  250. package/dist/esm-es5/wm-chart-column.entry.js +1 -0
  251. package/dist/esm-es5/wm-chart-slice.entry.js +1 -0
  252. package/dist/esm-es5/wm-chart.entry.js +1 -0
  253. package/dist/esm-es5/wm-date-range.entry.js +1 -0
  254. package/dist/esm-es5/wm-datepicker.entry.js +1 -0
  255. package/dist/esm-es5/wm-file-list.entry.js +1 -0
  256. package/dist/esm-es5/wm-file.entry.js +1 -0
  257. package/dist/esm-es5/wm-flyout.entry.js +1 -0
  258. package/dist/esm-es5/wm-input.entry.js +1 -0
  259. package/dist/esm-es5/wm-line-chart.entry.js +1 -0
  260. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -0
  261. package/dist/esm-es5/wm-modal_3.entry.js +1 -0
  262. package/dist/esm-es5/wm-navigation_3.entry.js +1 -0
  263. package/dist/esm-es5/wm-navigator.entry.js +1 -0
  264. package/dist/esm-es5/wm-nested-select.entry.js +1 -0
  265. package/dist/esm-es5/wm-optgroup.entry.js +1 -0
  266. package/dist/esm-es5/wm-option_2.entry.js +1 -0
  267. package/dist/esm-es5/wm-pagination.entry.js +1 -0
  268. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -0
  269. package/dist/esm-es5/wm-search.entry.js +1 -0
  270. package/dist/esm-es5/wm-snackbar.entry.js +1 -0
  271. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -0
  272. package/dist/esm-es5/wm-tag-input.entry.js +1 -0
  273. package/dist/esm-es5/wm-tag-option.entry.js +1 -0
  274. package/dist/esm-es5/wm-textarea.entry.js +1 -0
  275. package/dist/esm-es5/wm-timepicker.entry.js +1 -0
  276. package/dist/esm-es5/wm-toggletip.entry.js +1 -0
  277. package/dist/esm-es5/wm-uploader.entry.js +1 -0
  278. package/dist/esm-es5/wm-wrapper.entry.js +1 -0
  279. package/dist/index.js +1 -1
  280. package/dist/loader/cdn.js +1 -2
  281. package/dist/loader/index.cjs.js +1 -2
  282. package/dist/loader/index.d.ts +13 -2
  283. package/dist/loader/index.es2017.js +1 -2
  284. package/dist/loader/index.js +1 -2
  285. package/dist/loader/package.json +2 -1
  286. package/dist/ripple/index.esm.js +0 -0
  287. package/dist/ripple/p-03a6850a.entry.js +1 -0
  288. package/dist/ripple/p-0c3162d5.system.entry.js +1 -0
  289. package/dist/ripple/p-0ec71f08.system.entry.js +1 -0
  290. package/dist/ripple/p-1032c0db.system.entry.js +1 -0
  291. package/dist/ripple/p-117c3d78.system.js +2 -0
  292. package/dist/ripple/p-12024d3b.system.entry.js +1 -0
  293. package/dist/ripple/p-13152ac1.system.entry.js +1 -0
  294. package/dist/ripple/p-1318ae67.entry.js +1 -0
  295. package/dist/ripple/p-137bf0c0.system.entry.js +1 -0
  296. package/dist/ripple/p-13bb6faf.entry.js +1 -0
  297. package/dist/ripple/p-16ff8110.entry.js +1 -0
  298. package/dist/ripple/p-1825d519.system.entry.js +1 -0
  299. package/dist/ripple/p-18417851.entry.js +1 -0
  300. package/dist/ripple/p-1c655f6b.entry.js +1 -0
  301. package/dist/ripple/p-1ce77857.system.entry.js +1 -0
  302. package/dist/ripple/p-1d76061a.entry.js +1 -0
  303. package/dist/ripple/p-22b57f73.system.entry.js +1 -0
  304. package/dist/ripple/p-24dfbf1d.system.entry.js +1 -0
  305. package/dist/ripple/p-28996d67.system.entry.js +1 -0
  306. package/dist/ripple/p-30118d12.system.entry.js +1 -0
  307. package/dist/ripple/p-32f3581a.entry.js +1 -0
  308. package/dist/ripple/p-334d8711.system.js +1 -0
  309. package/dist/ripple/p-3c8c5933.js +1 -0
  310. package/dist/ripple/p-436bf381.system.entry.js +1 -0
  311. package/dist/ripple/p-43843597.system.entry.js +1 -0
  312. package/dist/ripple/p-45999149.system.js +1 -0
  313. package/dist/ripple/p-48b596ae.entry.js +1 -0
  314. package/dist/ripple/p-4bab5360.system.js +1 -0
  315. package/dist/ripple/p-4ff0db4d.entry.js +1 -0
  316. package/dist/ripple/p-50ea2036.system.js +1 -0
  317. package/dist/ripple/p-57f1bafd.system.entry.js +1 -0
  318. package/dist/ripple/p-5b0e9165.entry.js +1 -0
  319. package/dist/ripple/p-6266fcbf.system.entry.js +1 -0
  320. package/dist/ripple/p-646e22d3.system.entry.js +1 -0
  321. package/dist/ripple/p-6950e8ed.system.js +1 -0
  322. package/dist/ripple/p-6c6da5db.entry.js +1 -0
  323. package/dist/ripple/p-6d2af8d9.system.entry.js +1 -0
  324. package/dist/ripple/p-6d46f775.system.entry.js +1 -0
  325. package/dist/ripple/p-6de0efee.entry.js +1 -0
  326. package/dist/ripple/p-7833db63.entry.js +1 -0
  327. package/dist/ripple/p-7b7c32af.entry.js +1 -0
  328. package/dist/ripple/p-817aa29c.entry.js +1 -0
  329. package/dist/ripple/p-82c9bd47.entry.js +1 -0
  330. package/dist/ripple/p-8480138d.entry.js +1 -0
  331. package/dist/ripple/p-85ef702d.entry.js +1 -0
  332. package/dist/ripple/p-86bcd942.system.entry.js +1 -0
  333. package/dist/ripple/p-8799bce9.entry.js +1 -0
  334. package/dist/ripple/p-8ac14bb1.system.js +1 -0
  335. package/dist/ripple/p-8dcc8c0c.entry.js +1 -0
  336. package/dist/ripple/p-8fa572a8.entry.js +1 -0
  337. package/dist/ripple/p-904545cc.js +1 -0
  338. package/dist/ripple/p-90cb5d27.system.entry.js +1 -0
  339. package/dist/ripple/p-9202ef69.system.entry.js +1 -0
  340. package/dist/ripple/p-9f971522.system.entry.js +1 -0
  341. package/dist/ripple/p-a5dc49c1.system.entry.js +1 -0
  342. package/dist/ripple/p-a73fb160.system.entry.js +1 -0
  343. package/dist/ripple/p-a9580e7a.system.entry.js +1 -0
  344. package/dist/ripple/p-b04a6351.entry.js +1 -0
  345. package/dist/ripple/p-b09998e1.entry.js +1 -0
  346. package/dist/ripple/p-b3a86ec4.system.entry.js +1 -0
  347. package/dist/ripple/p-b501f06c.entry.js +1 -0
  348. package/dist/ripple/p-b957033b.entry.js +1 -0
  349. package/dist/ripple/p-c2258438.entry.js +1 -0
  350. package/dist/ripple/p-ca3abcc0.system.entry.js +1 -0
  351. package/dist/ripple/p-cc455a6c.system.entry.js +1 -0
  352. package/dist/ripple/p-cda66d45.js +1 -0
  353. package/dist/ripple/p-cde2ca4d.system.entry.js +1 -0
  354. package/dist/ripple/p-cdf9c0e9.entry.js +1 -0
  355. package/dist/ripple/p-d0858afa.js +2 -0
  356. package/dist/ripple/p-d37f8f66.js +1 -0
  357. package/dist/ripple/p-d4ae193e.js +1 -0
  358. package/dist/ripple/p-d4d769a7.system.js +1 -0
  359. package/dist/ripple/p-d6a9000f.system.entry.js +1 -0
  360. package/dist/ripple/p-d6cd9f79.entry.js +1 -0
  361. package/dist/ripple/p-d9e4335e.entry.js +1 -0
  362. package/dist/ripple/p-dadf3ed3.entry.js +1 -0
  363. package/dist/ripple/p-dc3684b5.entry.js +1 -0
  364. package/dist/ripple/p-dca94e24.entry.js +1 -0
  365. package/dist/ripple/p-dcd6acc5.system.entry.js +1 -0
  366. package/dist/ripple/p-dd81e308.entry.js +1 -0
  367. package/dist/ripple/p-e11d9b06.system.entry.js +1 -0
  368. package/dist/ripple/p-e36e71dc.system.entry.js +1 -0
  369. package/dist/ripple/p-e6a81600.entry.js +1 -0
  370. package/dist/ripple/p-ef7d84da.system.entry.js +1 -0
  371. package/dist/ripple/p-f1de3153.entry.js +1 -0
  372. package/dist/ripple/p-f3e84476.system.entry.js +1 -0
  373. package/dist/ripple/p-f4d27fea.system.entry.js +1 -0
  374. package/dist/ripple/p-fcf4bd61.system.entry.js +1 -0
  375. package/dist/ripple/p-fd02c124.entry.js +1 -0
  376. package/dist/ripple/p-ffa20853.entry.js +1 -0
  377. package/dist/ripple/ripple.esm.js +1 -0
  378. package/dist/ripple/ripple.js +127 -0
  379. package/dist/types/components/charts/chartFunctions.d.ts +54 -0
  380. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +35 -0
  381. package/dist/types/components/charts/priv-chart-popover-old/priv-chart-popover-old.d.ts +26 -0
  382. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +11 -0
  383. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +44 -0
  384. package/dist/types/components/charts/wm-chart-bar/wm-chart-bar.d.ts +62 -0
  385. package/dist/types/components/charts/wm-chart-column/wm-chart-column.d.ts +73 -0
  386. package/dist/types/components/charts/wm-chart-legend/wm-chart-legend.d.ts +26 -0
  387. package/dist/types/components/charts/wm-line-chart/wm-line-chart.d.ts +87 -0
  388. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +34 -0
  389. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +22 -0
  390. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +10 -0
  391. package/dist/types/components/datepickers/priv-calendar/priv-calendar.d.ts +89 -0
  392. package/dist/types/components/datepickers/wm-date-range.d.ts +73 -0
  393. package/dist/types/components/datepickers/wm-datepicker.d.ts +54 -0
  394. package/dist/types/components/selects/priv-option-list/priv-option-list.d.ts +71 -0
  395. package/dist/types/components/selects/wm-nested-select/wm-nested-select.d.ts +62 -0
  396. package/dist/types/components/selects/wm-optgroup/wm-optgroup.d.ts +21 -0
  397. package/dist/types/components/selects/wm-option/wm-option.d.ts +40 -0
  398. package/dist/types/components/selects/wm-select/wm-select.d.ts +66 -0
  399. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +54 -40
  400. package/dist/types/components/wm-button/wm-button.d.ts +43 -34
  401. package/dist/types/components/wm-file/wm-file.d.ts +48 -0
  402. package/dist/types/components/wm-file-list/wm-file-list.d.ts +5 -0
  403. package/dist/types/components/wm-flyout/wm-flyout.d.ts +48 -0
  404. package/dist/types/components/wm-input/wm-input.d.ts +50 -28
  405. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +26 -27
  406. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +12 -13
  407. package/dist/types/components/wm-modal/wm-modal-header.d.ts +8 -10
  408. package/dist/types/components/wm-modal/wm-modal.d.ts +28 -31
  409. package/dist/types/components/wm-modal-pss/wm-modal-pss-footer.d.ts +14 -0
  410. package/dist/types/components/wm-modal-pss/wm-modal-pss-header.d.ts +10 -0
  411. package/dist/types/components/wm-modal-pss/wm-modal-pss.d.ts +35 -0
  412. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +16 -0
  413. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +9 -0
  414. package/dist/types/components/wm-navigation/wm-navigation.d.ts +24 -0
  415. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +6 -7
  416. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +10 -10
  417. package/dist/types/components/wm-navigator/wm-navigator.d.ts +55 -57
  418. package/dist/types/components/wm-pagination/wm-pagination.d.ts +31 -28
  419. package/dist/types/components/wm-search/wm-search.d.ts +71 -75
  420. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +27 -28
  421. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +30 -31
  422. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +32 -48
  423. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +14 -16
  424. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +121 -80
  425. package/dist/types/components/wm-tag-input/wm-tag-option/wm-tag-option.d.ts +18 -0
  426. package/dist/types/components/wm-textarea/wm-textarea.d.ts +31 -0
  427. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +49 -55
  428. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +36 -23
  429. package/dist/types/components/wm-uploader/wm-uploader.d.ts +64 -72
  430. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +4 -4
  431. package/dist/types/components.d.ts +1516 -211
  432. package/dist/types/global/__mocks__/functions.d.ts +2 -1
  433. package/dist/types/global/functions.d.ts +67 -11
  434. package/dist/types/global/interfaces.d.ts +152 -23
  435. package/dist/types/global/intl.d.ts +62 -0
  436. package/dist/types/global/services/__mocks__/http-service.d.ts +1 -1
  437. package/dist/types/stencil-public-runtime.d.ts +338 -219
  438. package/package.json +16 -22
  439. package/dist/cjs/app-globals-6b0c6e80.js +0 -110
  440. package/dist/cjs/app-globals-f1dd8fda.js +0 -47
  441. package/dist/cjs/componentlibrary.cjs.js +0 -20
  442. package/dist/cjs/css-shim-a7379e2b.js +0 -6
  443. package/dist/cjs/dom-3e7d9c3b.js +0 -75
  444. package/dist/cjs/functions-65513c61.js +0 -8360
  445. package/dist/cjs/global-6849642d.js +0 -38
  446. package/dist/cjs/http-service-494d81de.js +0 -57
  447. package/dist/cjs/http-service-9e8c4dd5.js +0 -57
  448. package/dist/cjs/index-298ebef1.js +0 -2976
  449. package/dist/cjs/interfaces-a3338581.js +0 -35
  450. package/dist/cjs/interfaces-b2beb752.js +0 -54
  451. package/dist/cjs/priv-chart-popover.cjs.entry.js +0 -89
  452. package/dist/cjs/priv-datepicker.cjs.entry.js +0 -672
  453. package/dist/cjs/shadow-css-09555044.js +0 -391
  454. package/dist/cjs/wm-action-menu.cjs.entry.js +0 -206
  455. package/dist/cjs/wm-menuitem.cjs.entry.js +0 -118
  456. package/dist/cjs/wm-modal-footer.cjs.entry.js +0 -43
  457. package/dist/cjs/wm-modal-header.cjs.entry.js +0 -45
  458. package/dist/cjs/wm-modal.cjs.entry.js +0 -149
  459. package/dist/cjs/wm-network-uploader.cjs.entry.js +0 -431
  460. package/dist/cjs/wm-option.cjs.entry.js +0 -123
  461. package/dist/cjs/wm-select.cjs.entry.js +0 -366
  462. package/dist/cjs/wm-tab-item.cjs.entry.js +0 -82
  463. package/dist/cjs/wm-tab-list.cjs.entry.js +0 -205
  464. package/dist/cjs/wm-tab-panel.cjs.entry.js +0 -42
  465. package/dist/collection/components/wm-chart/priv-chart-popover/priv-chart-popover.css +0 -132
  466. package/dist/collection/components/wm-chart/priv-chart-popover/priv-chart-popover.js +0 -232
  467. package/dist/collection/components/wm-chart/wm-chart-slice.js +0 -64
  468. package/dist/collection/components/wm-chart/wm-chart.css +0 -337
  469. package/dist/collection/components/wm-chart/wm-chart.js +0 -710
  470. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.css +0 -365
  471. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +0 -1003
  472. package/dist/collection/components/wm-datepicker/wm-datepicker.css +0 -211
  473. package/dist/collection/components/wm-datepicker/wm-datepicker.js +0 -445
  474. package/dist/collection/components/wm-option/wm-option.css +0 -162
  475. package/dist/collection/components/wm-option/wm-option.js +0 -394
  476. package/dist/collection/components/wm-select/wm-select.css +0 -315
  477. package/dist/collection/components/wm-select/wm-select.js +0 -676
  478. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.css +0 -642
  479. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js +0 -753
  480. package/dist/componentlibrary/app-globals-18876ad3.js +0 -45
  481. package/dist/componentlibrary/app-globals-307a1083.js +0 -108
  482. package/dist/componentlibrary/componentlibrary.css +0 -84
  483. package/dist/componentlibrary/componentlibrary.esm.js +0 -1
  484. package/dist/componentlibrary/css-shim-bbdf0cc6.js +0 -4
  485. package/dist/componentlibrary/dom-1f98a75f.js +0 -73
  486. package/dist/componentlibrary/functions-316c1b23.js +0 -8340
  487. package/dist/componentlibrary/http-service-5d037e16.js +0 -52
  488. package/dist/componentlibrary/index-d5997567.js +0 -2938
  489. package/dist/componentlibrary/interfaces-50753346.js +0 -51
  490. package/dist/componentlibrary/p-01bdfed8.js +0 -16
  491. package/dist/componentlibrary/p-0ca70ed4.entry.js +0 -1
  492. package/dist/componentlibrary/p-126bde92.entry.js +0 -1
  493. package/dist/componentlibrary/p-12a67d93.entry.js +0 -1
  494. package/dist/componentlibrary/p-188deaf5.entry.js +0 -1
  495. package/dist/componentlibrary/p-2514df6f.entry.js +0 -1
  496. package/dist/componentlibrary/p-269b8a5f.entry.js +0 -1
  497. package/dist/componentlibrary/p-35e57079.entry.js +0 -1
  498. package/dist/componentlibrary/p-414e20f7.entry.js +0 -1
  499. package/dist/componentlibrary/p-43f1298b.js +0 -1
  500. package/dist/componentlibrary/p-4d387ec6.entry.js +0 -1
  501. package/dist/componentlibrary/p-59ba81d6.entry.js +0 -1
  502. package/dist/componentlibrary/p-5e3cbec8.entry.js +0 -1
  503. package/dist/componentlibrary/p-5e81e830.entry.js +0 -1
  504. package/dist/componentlibrary/p-64ff5040.js +0 -1
  505. package/dist/componentlibrary/p-68a871d3.entry.js +0 -1
  506. package/dist/componentlibrary/p-996a7395.entry.js +0 -1
  507. package/dist/componentlibrary/p-9b460452.entry.js +0 -1
  508. package/dist/componentlibrary/p-a416e410.entry.js +0 -1
  509. package/dist/componentlibrary/p-d550a94f.entry.js +0 -1
  510. package/dist/componentlibrary/p-e4735c23.entry.js +0 -1
  511. package/dist/componentlibrary/p-e725f388.entry.js +0 -1
  512. package/dist/componentlibrary/p-e9532ae5.entry.js +0 -1
  513. package/dist/componentlibrary/p-edf6f848.entry.js +0 -1
  514. package/dist/componentlibrary/p-fd8070fb.js +0 -1
  515. package/dist/componentlibrary/priv-chart-popover.entry.js +0 -85
  516. package/dist/componentlibrary/priv-datepicker.entry.js +0 -668
  517. package/dist/componentlibrary/priv-navigator-button.entry.js +0 -25
  518. package/dist/componentlibrary/priv-navigator-item.entry.js +0 -30
  519. package/dist/componentlibrary/shadow-css-67b66845.js +0 -389
  520. package/dist/componentlibrary/wm-action-menu.entry.js +0 -202
  521. package/dist/componentlibrary/wm-button.entry.js +0 -148
  522. package/dist/componentlibrary/wm-chart-slice.entry.js +0 -18
  523. package/dist/componentlibrary/wm-chart.entry.js +0 -504
  524. package/dist/componentlibrary/wm-datepicker.entry.js +0 -258
  525. package/dist/componentlibrary/wm-input.entry.js +0 -106
  526. package/dist/componentlibrary/wm-menuitem.entry.js +0 -114
  527. package/dist/componentlibrary/wm-modal-footer.entry.js +0 -39
  528. package/dist/componentlibrary/wm-modal-header.entry.js +0 -41
  529. package/dist/componentlibrary/wm-modal.entry.js +0 -145
  530. package/dist/componentlibrary/wm-navigator.entry.js +0 -275
  531. package/dist/componentlibrary/wm-network-uploader.entry.js +0 -427
  532. package/dist/componentlibrary/wm-option.entry.js +0 -119
  533. package/dist/componentlibrary/wm-pagination.entry.js +0 -172
  534. package/dist/componentlibrary/wm-search.entry.js +0 -227
  535. package/dist/componentlibrary/wm-select.entry.js +0 -362
  536. package/dist/componentlibrary/wm-snackbar.entry.js +0 -156
  537. package/dist/componentlibrary/wm-tab-item.entry.js +0 -78
  538. package/dist/componentlibrary/wm-tab-list.entry.js +0 -201
  539. package/dist/componentlibrary/wm-tab-panel.entry.js +0 -38
  540. package/dist/componentlibrary/wm-tag-input.entry.js +0 -509
  541. package/dist/componentlibrary/wm-timepicker.entry.js +0 -382
  542. package/dist/componentlibrary/wm-toggletip.entry.js +0 -124
  543. package/dist/componentlibrary/wm-uploader.entry.js +0 -338
  544. package/dist/componentlibrary/wm-wrapper.entry.js +0 -17
  545. package/dist/esm/app-globals-18876ad3.js +0 -45
  546. package/dist/esm/app-globals-307a1083.js +0 -108
  547. package/dist/esm/componentlibrary.js +0 -18
  548. package/dist/esm/css-shim-bbdf0cc6.js +0 -4
  549. package/dist/esm/dom-1f98a75f.js +0 -73
  550. package/dist/esm/functions-316c1b23.js +0 -8340
  551. package/dist/esm/global-430cb201.js +0 -36
  552. package/dist/esm/http-service-3dc3b3e7.js +0 -52
  553. package/dist/esm/http-service-5d037e16.js +0 -52
  554. package/dist/esm/index-d5997567.js +0 -2938
  555. package/dist/esm/interfaces-2b97fab2.js +0 -32
  556. package/dist/esm/interfaces-50753346.js +0 -51
  557. package/dist/esm/polyfills/css-shim.js +0 -1
  558. package/dist/esm/priv-chart-popover.entry.js +0 -85
  559. package/dist/esm/priv-datepicker.entry.js +0 -668
  560. package/dist/esm/shadow-css-67b66845.js +0 -389
  561. package/dist/esm/wm-action-menu.entry.js +0 -202
  562. package/dist/esm/wm-menuitem.entry.js +0 -114
  563. package/dist/esm/wm-modal-footer.entry.js +0 -39
  564. package/dist/esm/wm-modal-header.entry.js +0 -41
  565. package/dist/esm/wm-modal.entry.js +0 -145
  566. package/dist/esm/wm-network-uploader.entry.js +0 -427
  567. package/dist/esm/wm-option.entry.js +0 -119
  568. package/dist/esm/wm-select.entry.js +0 -362
  569. package/dist/esm/wm-tab-item.entry.js +0 -78
  570. package/dist/esm/wm-tab-list.entry.js +0 -201
  571. package/dist/esm/wm-tab-panel.entry.js +0 -38
  572. package/dist/types/components/wm-chart/priv-chart-popover/priv-chart-popover.d.ts +0 -23
  573. package/dist/types/components/wm-chart/wm-chart-slice.d.ts +0 -8
  574. package/dist/types/components/wm-chart/wm-chart.d.ts +0 -77
  575. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +0 -75
  576. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +0 -39
  577. package/dist/types/components/wm-option/wm-option.d.ts +0 -28
  578. package/dist/types/components/wm-select/wm-select.d.ts +0 -63
  579. package/dist/types/components/wm-uploader/wm-network-uploader/wm-network-uploader.d.ts +0 -85
  580. /package/dist/{componentlibrary/index.esm.js → collection/dev/button.js} +0 -0
@@ -1,315 +1,357 @@
1
- import { forceUpdate, Component, Prop, Element, h, Watch, Listen, Host, Event } from "@stencil/core";
2
- import { debounce } from "../../../global/functions";
1
+ import { h, Host } from "@stencil/core";
2
+ import { debounce, intl } from "../../../global/functions";
3
3
  export class TabList {
4
- constructor() {
5
- /**
6
- * Delegates control to the component, which will listen for the tabSelected event, update the display of the tab panels, and update the selected tab on display. When set to false, the app must listen for the event and update the selectedTab attribute. Offers more control for devs, who may want to control when data loads or run other functions when tabs are switched.
7
- */
8
- this.controllerEnabled = false;
9
- this.getSelectedTabItem = () => this.tabItems.filter((t) => t.selected)[0];
10
- this.debouncedSetLayout = debounce(() => {
11
- if (!this.listWidth) {
12
- this.setListWidth();
13
- }
14
- forceUpdate(this.el);
15
- }, 250);
16
- }
17
- /**
18
- * Set to true when the tab list exceeds the parent width. Component will render the menu layout.
19
- */
20
- get menuLayout() {
21
- if (this.listWidth) {
22
- return this.el.offsetWidth < this.listWidth - 24; // to take into account the negative margin on the ul
4
+ constructor() {
5
+ this.debouncedUpdateContainerState = debounce(() => {
6
+ this.updateContainerFade();
7
+ this.updateArrowVisibility();
8
+ }, 16);
9
+ this.customBackground = undefined;
10
+ this.selectedTab = undefined;
11
+ this.announcement = "";
12
+ this.containerFadeLeft = false;
13
+ this.containerFadeRight = false;
14
+ this.scrollArrowsVisible = false;
23
15
  }
24
- else {
25
- return false; // in case listWidth couldn't get computed, we render regular tabs
16
+ get tabItems() {
17
+ return Array.from(this.el.querySelectorAll("wm-tab-item"));
26
18
  }
27
- }
28
- get tabItems() {
29
- return Array.from(this.el.querySelectorAll("wm-tab-item"));
30
- }
31
- getLinkEl(tab) {
32
- return tab.shadowRoot.querySelector("a");
33
- }
34
- get panels() {
35
- const allPanels = Array.from(document.querySelectorAll("wm-tab-panel"));
36
- const tabIds = this.tabItems.map((t) => t.tabId);
37
- return allPanels.filter((p) => tabIds.includes(p.tabId));
38
- }
39
- getPanel(tabId) {
40
- return this.panels.find((p) => p.tabId === tabId);
41
- }
42
- setListWidth() {
43
- let newCalc = this.tabItems.reduce((sum, tab) => sum + tab.offsetWidth, 0);
44
- this.listWidth = newCalc && newCalc > 0 ? newCalc : this.listWidth; // the function may return 0. In this case keep the previous value
45
- }
46
- setSelected(id) {
47
- this.tabItems.map((tab) => (tab.selected = tab.tabId === id));
48
- const singlePanel = this.panels.length === 1 && this.tabItems.length > 1;
49
- if (singlePanel) {
50
- /**
51
- * If the app conditionally renders content in one single tab panel rather than allocating the content to discrete panels, then the tab panels aria references needs to update whenever a new tab item is selected.
52
- */
53
- const selected = this.getSelectedTabItem();
54
- this.setAttributesOnPanel(this.panels[0], selected);
55
- this.panels[0].active = true;
19
+ get selectedTabItem() {
20
+ return this.tabItems.filter((t) => t.selected)[0];
56
21
  }
57
- else {
58
- this.panels.map((panel) => (panel.active = panel.tabId === id));
22
+ getLinkEl(tab) {
23
+ return tab.shadowRoot.querySelector("a");
59
24
  }
60
- }
61
- showItems() {
62
- this.tabItems.map((t) => (t.show = true));
63
- }
64
- hideItems() {
65
- this.tabItems.map((t) => (t.show = false));
66
- }
67
- componentWillLoad() {
68
- // @ts-ignore
69
- this.el.focus = function () {
70
- const items = Array.from(this.querySelectorAll("wm-tab-item"));
71
- const selectedItem = items.filter((t) => t.selected)[0];
72
- selectedItem && selectedItem.focus();
73
- };
74
- }
75
- componentDidLoad() {
76
- this.setLayout(); // this require measurements of DOM elements so can't be done before first paint
77
- const selectedTab = this.selectedTab || this.tabItems[0].tabId;
78
- this.setSelected(selectedTab);
79
- }
80
- tabItemLoaded(ev) {
81
- this.setAriaOnPanelAndTab(ev.target);
82
- }
83
- setAriaOnPanelAndTab(tab) {
84
- const panel = this.getPanel(tab.tabId);
85
- // If there's no panel, check for case where content is conditionally rendered in one panel, in which case attributes on all tabs should point to this single panel.
86
- if (!panel) {
87
- if (this.panels.length === 1) {
88
- this.setAttributesOnTab(tab, this.panels[0]);
89
- }
25
+ get panels() {
26
+ const allPanels = Array.from(document.querySelectorAll("wm-tab-panel"));
27
+ const tabIds = this.tabItems.map((t) => t.tabId);
28
+ return allPanels.filter((p) => tabIds.includes(p.tabId));
90
29
  }
91
- else {
92
- // Otherwise, set attributes on each tab item that loads and its associated panel
93
- this.setAttributesOnPanel(panel, tab);
94
- this.setAttributesOnTab(tab, panel);
30
+ setSelected(id) {
31
+ this.tabItems.map((tab) => (tab.selected = tab.tabId === id));
32
+ const singlePanel = this.panels.length === 1 && this.tabItems.length > 1;
33
+ if (singlePanel) {
34
+ /**
35
+ * If the app conditionally renders content in one single tab panel rather than allocating the content to discrete panels, then the tab panels aria references needs to update whenever a new tab item is selected.
36
+ */
37
+ this.setAttributesOnPanel(this.panels[0], this.selectedTabItem);
38
+ this.panels[0].active = true;
39
+ }
40
+ else {
41
+ this.panels.map((panel) => (panel.active = panel.tabId === id));
42
+ }
43
+ this.handleTabFocused(this.selectedTabItem);
95
44
  }
96
- }
97
- setAttributesOnTab(tab, panel) {
98
- const link = this.getLinkEl(tab);
99
- if (link) {
100
- link.setAttribute("aria-controls", panel.id);
101
- link.setAttribute("href", `#${panel.id}`);
45
+ componentWillLoad() {
46
+ this.el.focus = () => {
47
+ // in addition to delegatesFocus, we need to highjack the focus method to send focus to the selected tab-item
48
+ this.selectedTabItem && this.selectedTabItem.focus({ preventScroll: true });
49
+ };
102
50
  }
103
- }
104
- removeAttributesOnTab(tab) {
105
- const link = this.getLinkEl(tab);
106
- if (link) {
107
- link.removeAttribute("aria-controls");
108
- link.removeAttribute("href");
51
+ componentDidLoad() {
52
+ const selectedTab = this.selectedTab || this.tabItems[0].tabId;
53
+ this.setSelected(selectedTab);
54
+ this.updateArrowVisibility();
55
+ this.tabContainerEl.addEventListener("scroll", this.debouncedUpdateContainerState);
56
+ const resizeObserver = new ResizeObserver(() => this.debouncedUpdateContainerState());
57
+ resizeObserver.observe(this.el);
58
+ requestAnimationFrame(() => {
59
+ // Wait for layout to complete before measuring and scrolling initial tab into view
60
+ this.handleTabFocused(this.selectedTabItem);
61
+ });
109
62
  }
110
- }
111
- setAttributesOnPanel(panel, tab) {
112
- const link = this.getLinkEl(tab);
113
- if (link) {
114
- panel.setAttribute("aria-labelledby", link.id);
115
- panel.setAttribute("tab-id", tab.tabId);
63
+ tabItemLoaded(ev) {
64
+ this.setAriaOnPanelAndTab(ev.target);
116
65
  }
117
- }
118
- handleTabSelected(ev) {
119
- if (this.controllerEnabled) {
120
- this.setSelected(ev.detail.tabId);
66
+ wmTabFocused(ev) {
67
+ this.handleTabFocused(ev.detail.tabItem);
121
68
  }
122
- }
123
- handleKeydown(ev) {
124
- const tabItem = ev.detail.tabItem;
125
- const key = ev.detail.key;
126
- const index = this.tabItems.indexOf(tabItem);
127
- if (key === "ArrowLeft" || key === "ArrowRight") {
128
- this.handleLeftRightArrow(index, key);
69
+ setAriaOnPanelAndTab(tab) {
70
+ const panel = this.panels.find((p) => p.tabId === tab.tabId);
71
+ // If there's no panel, check for case where content is conditionally rendered in one panel, in which case attributes on all tabs should point to this single panel.
72
+ if (!panel) {
73
+ if (this.panels.length === 1) {
74
+ this.setAttributesOnTab(tab, this.panels[0]);
75
+ }
76
+ }
77
+ else {
78
+ // Otherwise, set attributes on each tab item that loads and its associated panel
79
+ this.setAttributesOnPanel(panel, tab);
80
+ this.setAttributesOnTab(tab, panel);
81
+ }
82
+ }
83
+ setAttributesOnTab(tab, panel) {
84
+ const link = this.getLinkEl(tab);
85
+ if (link) {
86
+ link.setAttribute("href", `#${panel.id}`);
87
+ }
88
+ }
89
+ removeAttributesOnTab(tab) {
90
+ const link = this.getLinkEl(tab);
91
+ if (link) {
92
+ link.removeAttribute("href");
93
+ }
94
+ }
95
+ setAttributesOnPanel(panel, tab) {
96
+ const link = this.getLinkEl(tab);
97
+ if (link) {
98
+ panel.setAttribute("aria-labelledby", link.id);
99
+ panel.setAttribute("tab-id", tab.tabId);
100
+ }
101
+ }
102
+ handleKeydown(ev) {
103
+ const key = ev.detail.key;
104
+ let index = this.tabItems.indexOf(ev.detail.tabItem);
105
+ // focusing panel on down arrow
106
+ if (key === "ArrowDown") {
107
+ const activePanel = this.panels.filter((p) => p.active)[0];
108
+ activePanel && activePanel.focus();
109
+ }
110
+ else if (key === "ArrowLeft" || key === "ArrowRight") {
111
+ // focusing prev/next tab item on right/left arrow
112
+ if (key) {
113
+ index = key === "ArrowLeft" ? index - 1 : index + 1;
114
+ }
115
+ if (index < 0) {
116
+ index = this.tabItems.length - 1;
117
+ }
118
+ else if (index === this.tabItems.length) {
119
+ index = 0;
120
+ }
121
+ const tabToFocus = this.tabItems[index];
122
+ this.getLinkEl(tabToFocus).focus({ preventScroll: true });
123
+ }
124
+ }
125
+ handleTabFocused(tabItem, alignment = "auto") {
126
+ // Calculate and apply scroll position
127
+ const targetScrollLeft = this.calculateScrollPositionForTab(tabItem, alignment);
128
+ this.tabContainerEl.scrollTo({ left: targetScrollLeft, behavior: "smooth" });
129
+ }
130
+ calculateScrollPositionForTab(tabItem, alignment = "auto") {
131
+ const containerRect = this.tabContainerEl.getBoundingClientRect();
132
+ const containerScrollLeft = this.tabContainerEl.scrollLeft;
133
+ const tabRect = tabItem.getBoundingClientRect();
134
+ const tabLeft = containerScrollLeft + (tabRect.left - containerRect.left);
135
+ const tabRight = tabLeft + tabRect.width;
136
+ // Explicit alignment
137
+ if (alignment === "left") {
138
+ return tabLeft; // Snap to left edge
139
+ }
140
+ if (alignment === "right") {
141
+ return Math.max(0, tabRight - containerRect.width); // Snap to right edge
142
+ }
143
+ // Auto alignment
144
+ const firstTab = this.tabItems[0];
145
+ const lastTab = this.tabItems[this.tabItems.length - 1];
146
+ if (tabItem === firstTab) {
147
+ return 0;
148
+ }
149
+ if (tabItem === lastTab) {
150
+ return Math.max(0, this.tabContainerEl.scrollWidth - containerRect.width);
151
+ }
152
+ if (tabLeft < containerScrollLeft) {
153
+ return tabLeft; // Left edge cut off, align left
154
+ }
155
+ if (tabRight > containerScrollLeft + containerRect.width) {
156
+ return tabRight - containerRect.width; // Right edge cut off, align right
157
+ }
158
+ return containerScrollLeft; // Fully visible, no scroll needed
129
159
  }
130
- if (key === "ArrowDown" || key === "ArrowUp") {
131
- this.handleUpDownArrow(key);
160
+ updateContainerFade() {
161
+ const tolerance = 1; // 1px tolerance for floating-point precision
162
+ // Check if there's content scrolled out of view on each side
163
+ let shouldFadeLeft = this.tabContainerEl.scrollLeft > tolerance;
164
+ let shouldFadeRight = this.tabContainerEl.scrollLeft + this.tabContainerEl.clientWidth < this.tabContainerEl.scrollWidth - tolerance;
165
+ const focusedTab = this.tabItems.find((tab) => tab.matches(":focus-within"));
166
+ if (focusedTab) {
167
+ const containerRect = this.tabContainerEl.getBoundingClientRect();
168
+ const tabRect = focusedTab.getBoundingClientRect();
169
+ const isAtOrOverlappingLeft = tabRect.left <= containerRect.left + tolerance;
170
+ const isAtOrOverlappingRight = tabRect.right >= containerRect.right - tolerance;
171
+ if (isAtOrOverlappingLeft) {
172
+ shouldFadeLeft = false; // Don't fade left if focused tab is at/beyond left edge
173
+ }
174
+ if (isAtOrOverlappingRight) {
175
+ shouldFadeRight = false; // Don't fade right if focused tab is at/beyond right edge
176
+ }
177
+ }
178
+ this.containerFadeLeft = shouldFadeLeft;
179
+ this.containerFadeRight = shouldFadeRight;
132
180
  }
133
- }
134
- handleLeftRightArrow(index, key) {
135
- if (key) {
136
- index = key === "ArrowLeft" ? index - 1 : index + 1;
181
+ updateArrowVisibility() {
182
+ const leftArrowEl = this.el.shadowRoot.querySelector(".left-arrow");
183
+ const rightArrowEl = this.el.shadowRoot.querySelector(".right-arrow");
184
+ const isScrollable = this.tabContainerEl.scrollWidth > this.tabContainerEl.clientWidth;
185
+ this.scrollArrowsVisible = isScrollable;
186
+ requestAnimationFrame(() => {
187
+ // Let arrows render before checking if they should be disabled
188
+ if (this.scrollArrowsVisible) {
189
+ const tolerance = 1; // 1px tolerance for floating-point precision
190
+ const canScrollLeft = this.tabContainerEl.scrollLeft > tolerance;
191
+ const canScrollRight = this.tabContainerEl.scrollLeft + this.tabContainerEl.clientWidth <
192
+ this.tabContainerEl.scrollWidth - tolerance;
193
+ leftArrowEl.classList.toggle("disabled", !canScrollLeft);
194
+ rightArrowEl.classList.toggle("disabled", !canScrollRight);
195
+ }
196
+ });
137
197
  }
138
- if (index < 0) {
139
- index = this.tabItems.length - 1;
198
+ handleLeftArrowClick(ev) {
199
+ const buttonEl = ev.target;
200
+ if (buttonEl.classList.contains("disabled")) {
201
+ // If the arrow is disabled, take no action and announce reason
202
+ this.announce(intl.formatMessage({
203
+ id: "tabs.cannotScrollLeft",
204
+ defaultMessage: "No more tabs to the left",
205
+ description: "Announcement for button scrolling tab group.",
206
+ }));
207
+ return;
208
+ }
209
+ // Find the first tab that's partially or completely obscured on the left
210
+ const containerRect = this.tabContainerEl.getBoundingClientRect();
211
+ const containerLeft = containerRect.left;
212
+ let tabToFocus = null;
213
+ const reversedTabItems = this.tabItems.reverse();
214
+ reversedTabItems.forEach((tab) => {
215
+ if (!tabToFocus) {
216
+ const tabRect = tab.getBoundingClientRect();
217
+ if (tabRect.left < containerLeft - 1) {
218
+ tabToFocus = tab;
219
+ }
220
+ }
221
+ });
222
+ if (tabToFocus) {
223
+ this.handleTabFocused(tabToFocus, "right"); // Snap to right edge for page-scroll behavior
224
+ }
140
225
  }
141
- else if (index === this.tabItems.length) {
142
- index = 0;
226
+ handleRightArrowClick(ev) {
227
+ const buttonEl = ev.target;
228
+ if (buttonEl.classList.contains("disabled")) {
229
+ this.announce(intl.formatMessage({
230
+ id: "tabs.cannotScrollRight",
231
+ defaultMessage: "No more tabs to the right",
232
+ description: "Announcement for button scrolling tab group.",
233
+ }));
234
+ return;
235
+ }
236
+ // Find the first tab that's partially or completely obscured on the right
237
+ const containerRect = this.tabContainerEl.getBoundingClientRect();
238
+ const containerRight = containerRect.right;
239
+ let tabToFocus = null;
240
+ this.tabItems.forEach((tab) => {
241
+ if (!tabToFocus) {
242
+ const tabRect = tab.getBoundingClientRect();
243
+ if (tabRect.right > containerRight + 1) {
244
+ tabToFocus = tab;
245
+ }
246
+ }
247
+ });
248
+ if (tabToFocus) {
249
+ this.handleTabFocused(tabToFocus, "left"); // Snap to left edge for page-scroll behavior
250
+ }
143
251
  }
144
- const tabToFocus = this.tabItems[index];
145
- this.getLinkEl(tabToFocus).focus();
146
- }
147
- handleUpDownArrow(key) {
148
- if (key === "ArrowDown") {
149
- // Focus panel when arrow down is pressed
150
- if (this.selectedTab) {
151
- const tabPanel = this.getPanel(this.selectedTab); //Find the currently displayed tab panel
152
- if (tabPanel) {
153
- tabPanel.focus();
252
+ announce(message) {
253
+ // \u00A0 is a non-breaking space character, which causes the message to be read as a new one
254
+ if (this.liveRegionEl.textContent === message) {
255
+ message += "\u00A0";
154
256
  }
155
- }
257
+ this.announcement = message;
258
+ }
259
+ render() {
260
+ return (h(Host, { key: 'b9ad28e5f95356c3563be850e2c138c9ef15785f' }, h("div", { key: 'cefebd37c1de1c70a6a8b458398ebde182800658', class: "component-wrapper" }, h("wm-button", { key: 'ba39a280147b31c044c587d4cc1e1459a6566ca8', class: `left-arrow ${this.scrollArrowsVisible ? "visible" : ""}`, "aria-controls": "tablist", customBackground: this.customBackground, buttonType: "navigational", icon: "#previous", tooltip: intl.formatMessage({
261
+ id: "tabs.showPreviousTabs",
262
+ defaultMessage: "Show previous tabs",
263
+ description: "Tooltip for button scrolling tab group.",
264
+ }), onClick: (ev) => this.handleLeftArrowClick(ev) }), h("ul", { key: '2718d4671d8f901415646d5d89476a5b0a2646d0', id: "tablist", ref: (el) => (this.tabContainerEl = el), class: `tabcontainer ${this.customBackground || ""} ${this.containerFadeLeft ? "fade-left" : ""} ${this.containerFadeRight ? "fade-right" : ""}`, role: "tablist", tabIndex: -1 }, h("slot", { key: '81a1dbdbb0c81c942c4e404e92c1dcf573a30067' })), h("wm-button", { key: '4f928cc980a030abf23fba8fa061bcf034350f1a', class: `right-arrow ${this.scrollArrowsVisible ? "visible" : ""}`, "aria-controls": "tablist", customBackground: this.customBackground, buttonType: "navigational", icon: "#next", tooltip: intl.formatMessage({
265
+ id: "tabs.showNextTabs",
266
+ defaultMessage: "Show next tabs",
267
+ description: "Tooltip for button scrolling tab group.",
268
+ }), onClick: (ev) => this.handleRightArrowClick(ev) }), h("span", { key: '374a648cc8e379ef70ac7d037ee17f2bae7dd685', "aria-live": "assertive", class: "sr-only", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
269
+ }
270
+ static get is() { return "wm-tab-list"; }
271
+ static get encapsulation() { return "shadow"; }
272
+ static get delegatesFocus() { return true; }
273
+ static get originalStyleUrls() {
274
+ return {
275
+ "$": ["wm-tab-list.scss"]
276
+ };
156
277
  }
157
- }
158
- /**
159
- * Change layout if parent size drops below tab list width
160
- */
161
- setLayout() {
162
- this.debouncedSetLayout();
163
- }
164
- renderMenuOrTabs() {
165
- if (this.menuLayout) {
166
- this.hideItems();
167
- return (h("wm-select", { label: "Tab Selection", "label-position": "none" }, this.renderOptions()));
278
+ static get styleUrls() {
279
+ return {
280
+ "$": ["wm-tab-list.css"]
281
+ };
282
+ }
283
+ static get properties() {
284
+ return {
285
+ "customBackground": {
286
+ "type": "string",
287
+ "mutable": false,
288
+ "complexType": {
289
+ "original": "\"dark\" | \"\"",
290
+ "resolved": "\"\" | \"dark\" | undefined",
291
+ "references": {}
292
+ },
293
+ "required": false,
294
+ "optional": true,
295
+ "docs": {
296
+ "tags": [],
297
+ "text": ""
298
+ },
299
+ "attribute": "custom-background",
300
+ "reflect": false
301
+ },
302
+ "selectedTab": {
303
+ "type": "string",
304
+ "mutable": false,
305
+ "complexType": {
306
+ "original": "string",
307
+ "resolved": "string | undefined",
308
+ "references": {}
309
+ },
310
+ "required": false,
311
+ "optional": true,
312
+ "docs": {
313
+ "tags": [],
314
+ "text": ""
315
+ },
316
+ "attribute": "selected-tab",
317
+ "reflect": false
318
+ }
319
+ };
168
320
  }
169
- else {
170
- this.showItems();
171
- let margins = {};
172
- if (this.customPadding) {
173
- margins = {
174
- "margin-left": "-" + this.customPadding,
321
+ static get states() {
322
+ return {
323
+ "announcement": {},
324
+ "containerFadeLeft": {},
325
+ "containerFadeRight": {},
326
+ "scrollArrowsVisible": {}
175
327
  };
176
- }
177
- return (h("ul", { class: `tabcontainer ${this.customBackground || ""}`, style: margins, role: "tablist" },
178
- h("slot", null)));
179
328
  }
180
- }
181
- renderOptions() {
182
- return this.tabItems.map((t) => (h("wm-option", { id: `tab-link-${t.tabId}`, selected: t.tabId === this.selectedTab, onClick: (ev) => {
183
- ev.preventDefault();
184
- this.tabSelected.emit({ tabId: t.tabId });
185
- } }, t.textContent)));
186
- }
187
- render() {
188
- return h(Host, { class: this.menuLayout ? "menu" : "" }, this.renderMenuOrTabs());
189
- }
190
- static get is() { return "wm-tab-list"; }
191
- static get encapsulation() { return "shadow"; }
192
- static get originalStyleUrls() { return {
193
- "$": ["wm-tab-list.scss"]
194
- }; }
195
- static get styleUrls() { return {
196
- "$": ["wm-tab-list.css"]
197
- }; }
198
- static get properties() { return {
199
- "customBackground": {
200
- "type": "string",
201
- "mutable": false,
202
- "complexType": {
203
- "original": "\"dark\" | \"\"",
204
- "resolved": "\"\" | \"dark\" | undefined",
205
- "references": {}
206
- },
207
- "required": false,
208
- "optional": true,
209
- "docs": {
210
- "tags": [],
211
- "text": ""
212
- },
213
- "attribute": "custom-background",
214
- "reflect": false
215
- },
216
- "customPadding": {
217
- "type": "string",
218
- "mutable": false,
219
- "complexType": {
220
- "original": "string",
221
- "resolved": "string | undefined",
222
- "references": {}
223
- },
224
- "required": false,
225
- "optional": true,
226
- "docs": {
227
- "tags": [],
228
- "text": ""
229
- },
230
- "attribute": "custom-padding",
231
- "reflect": false
232
- },
233
- "selectedTab": {
234
- "type": "string",
235
- "mutable": false,
236
- "complexType": {
237
- "original": "string",
238
- "resolved": "string | undefined",
239
- "references": {}
240
- },
241
- "required": false,
242
- "optional": true,
243
- "docs": {
244
- "tags": [],
245
- "text": ""
246
- },
247
- "attribute": "selected-tab",
248
- "reflect": false
249
- },
250
- "controllerEnabled": {
251
- "type": "boolean",
252
- "mutable": false,
253
- "complexType": {
254
- "original": "boolean",
255
- "resolved": "boolean",
256
- "references": {}
257
- },
258
- "required": false,
259
- "optional": false,
260
- "docs": {
261
- "tags": [],
262
- "text": "Delegates control to the component, which will listen for the tabSelected event, update the display of the tab panels, and update the selected tab on display. When set to false, the app must listen for the event and update the selectedTab attribute. Offers more control for devs, who may want to control when data loads or run other functions when tabs are switched."
263
- },
264
- "attribute": "controller-enabled",
265
- "reflect": false,
266
- "defaultValue": "false"
329
+ static get elementRef() { return "el"; }
330
+ static get watchers() {
331
+ return [{
332
+ "propName": "selectedTab",
333
+ "methodName": "setSelected"
334
+ }];
335
+ }
336
+ static get listeners() {
337
+ return [{
338
+ "name": "tabItemLoaded",
339
+ "method": "tabItemLoaded",
340
+ "target": undefined,
341
+ "capture": false,
342
+ "passive": false
343
+ }, {
344
+ "name": "wmIntTabFocused",
345
+ "method": "wmTabFocused",
346
+ "target": undefined,
347
+ "capture": false,
348
+ "passive": false
349
+ }, {
350
+ "name": "keydownOnTabItem",
351
+ "method": "handleKeydown",
352
+ "target": undefined,
353
+ "capture": false,
354
+ "passive": false
355
+ }];
267
356
  }
268
- }; }
269
- static get events() { return [{
270
- "method": "tabSelected",
271
- "name": "tabSelected",
272
- "bubbles": true,
273
- "cancelable": true,
274
- "composed": true,
275
- "docs": {
276
- "tags": [],
277
- "text": "Emitted by wm-select options when tabs have the menu format"
278
- },
279
- "complexType": {
280
- "original": "{ tabId: string }",
281
- "resolved": "{ tabId: string; }",
282
- "references": {}
283
- }
284
- }]; }
285
- static get elementRef() { return "el"; }
286
- static get watchers() { return [{
287
- "propName": "selectedTab",
288
- "methodName": "setSelected"
289
- }]; }
290
- static get listeners() { return [{
291
- "name": "tabItemLoaded",
292
- "method": "tabItemLoaded",
293
- "target": undefined,
294
- "capture": false,
295
- "passive": false
296
- }, {
297
- "name": "tabSelected",
298
- "method": "handleTabSelected",
299
- "target": undefined,
300
- "capture": false,
301
- "passive": false
302
- }, {
303
- "name": "keydownOnTabItem",
304
- "method": "handleKeydown",
305
- "target": undefined,
306
- "capture": false,
307
- "passive": false
308
- }, {
309
- "name": "resize",
310
- "method": "setLayout",
311
- "target": "window",
312
- "capture": false,
313
- "passive": true
314
- }]; }
315
357
  }