@watermarkinsights/ripple 3.27.0 → 3.27.1

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 (277) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/{chartFunctions-b2e0cb4e.js → chartFunctions-42cfb4d3.js} +596 -596
  3. package/dist/cjs/{functions-9807717e.js → functions-85c3c557.js} +498 -498
  4. package/dist/cjs/{global-42a24725.js → global-9982752f.js} +72 -72
  5. package/dist/cjs/{http-service-9e8c4dd5.js → http-service-494d81de.js} +49 -49
  6. package/dist/cjs/{interfaces-30a74c1f.js → interfaces-a3338581.js} +29 -29
  7. package/dist/cjs/{intl-526c75ec.js → intl-1c36fe38.js} +131 -131
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/priv-chart-popover.cjs.entry.js +91 -91
  10. package/dist/cjs/priv-datepicker.cjs.entry.js +657 -657
  11. package/dist/cjs/priv-navigator-button.cjs.entry.js +19 -19
  12. package/dist/cjs/priv-navigator-item.cjs.entry.js +23 -23
  13. package/dist/cjs/ripple.cjs.js +1 -1
  14. package/dist/cjs/wm-action-menu_2.cjs.entry.js +334 -334
  15. package/dist/cjs/wm-button.cjs.entry.js +189 -189
  16. package/dist/cjs/wm-chart-slice.cjs.entry.js +18 -18
  17. package/dist/cjs/wm-chart.cjs.entry.js +183 -183
  18. package/dist/cjs/wm-datepicker.cjs.entry.js +263 -263
  19. package/dist/cjs/wm-file-list.cjs.entry.js +35 -35
  20. package/dist/cjs/wm-file.cjs.entry.js +181 -181
  21. package/dist/cjs/wm-input.cjs.entry.js +136 -136
  22. package/dist/cjs/wm-modal-footer.cjs.entry.js +33 -33
  23. package/dist/cjs/wm-modal-header.cjs.entry.js +32 -32
  24. package/dist/cjs/wm-modal.cjs.entry.js +152 -152
  25. package/dist/cjs/wm-navigation_3.cjs.entry.js +186 -186
  26. package/dist/cjs/wm-navigator.cjs.entry.js +264 -264
  27. package/dist/cjs/wm-network-uploader.cjs.entry.js +465 -465
  28. package/dist/cjs/wm-option_2.cjs.entry.js +768 -768
  29. package/dist/cjs/wm-pagination.cjs.entry.js +179 -179
  30. package/dist/cjs/wm-progress-indicator_3.cjs.entry.js +155 -155
  31. package/dist/cjs/wm-search.cjs.entry.js +184 -184
  32. package/dist/cjs/wm-snackbar.cjs.entry.js +134 -134
  33. package/dist/cjs/wm-tab-item_3.cjs.entry.js +264 -264
  34. package/dist/cjs/wm-tag-input-row.cjs.entry.js +14 -14
  35. package/dist/cjs/wm-tag-input.cjs.entry.js +948 -941
  36. package/dist/cjs/wm-timepicker.cjs.entry.js +385 -385
  37. package/dist/cjs/wm-toggletip.cjs.entry.js +120 -120
  38. package/dist/cjs/wm-uploader.cjs.entry.js +441 -441
  39. package/dist/cjs/wm-wrapper.cjs.entry.js +12 -12
  40. package/dist/collection/components/charts/chartFunctions.js +562 -562
  41. package/dist/collection/components/charts/priv-chart-popover/priv-chart-popover.js +267 -267
  42. package/dist/collection/components/charts/wm-chart/wm-chart-slice.js +125 -125
  43. package/dist/collection/components/charts/wm-chart/wm-chart.js +450 -450
  44. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-indicator.js +207 -207
  45. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-monitor.js +143 -143
  46. package/dist/collection/components/charts/wm-progress-monitor/wm-progress-slice.js +121 -121
  47. package/dist/collection/components/wm-action-menu/wm-action-menu.js +472 -472
  48. package/dist/collection/components/wm-button/wm-button.js +486 -486
  49. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +983 -983
  50. package/dist/collection/components/wm-datepicker/wm-datepicker.js +491 -491
  51. package/dist/collection/components/wm-file/wm-file.js +313 -313
  52. package/dist/collection/components/wm-file-list/wm-file-list.js +152 -152
  53. package/dist/collection/components/wm-input/wm-input.js +509 -509
  54. package/dist/collection/components/wm-menuitem/wm-menuitem.js +454 -454
  55. package/dist/collection/components/wm-modal/wm-modal-footer.js +138 -138
  56. package/dist/collection/components/wm-modal/wm-modal-header.js +82 -82
  57. package/dist/collection/components/wm-modal/wm-modal.js +462 -462
  58. package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +119 -119
  59. package/dist/collection/components/wm-navigation/wm-navigation-item.js +130 -130
  60. package/dist/collection/components/wm-navigation/wm-navigation.js +217 -217
  61. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +106 -106
  62. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +123 -123
  63. package/dist/collection/components/wm-navigator/wm-navigator.js +467 -467
  64. package/dist/collection/components/wm-option/wm-option.js +435 -435
  65. package/dist/collection/components/wm-pagination/wm-pagination.js +362 -362
  66. package/dist/collection/components/wm-search/wm-search.js +439 -439
  67. package/dist/collection/components/wm-select/wm-select.js +1054 -1054
  68. package/dist/collection/components/wm-snackbar/wm-snackbar.js +267 -267
  69. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +211 -211
  70. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +327 -327
  71. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +108 -108
  72. package/dist/collection/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.js +122 -122
  73. package/dist/collection/components/wm-tag-input/wm-tag-input.css +21 -17
  74. package/dist/collection/components/wm-tag-input/wm-tag-input.js +1302 -1295
  75. package/dist/collection/components/wm-timepicker/wm-timepicker.js +605 -605
  76. package/dist/collection/components/wm-toggletip/wm-toggletip.js +243 -243
  77. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js +772 -772
  78. package/dist/collection/components/wm-uploader/wm-uploader.js +964 -964
  79. package/dist/collection/components/wm-wrapper/wm-wrapper.js +28 -28
  80. package/dist/collection/dev/scripts.js +20 -20
  81. package/dist/collection/global/__mocks__/functions.js +6 -6
  82. package/dist/collection/global/functions.js +541 -541
  83. package/dist/collection/global/global.js +79 -79
  84. package/dist/collection/global/interfaces.js +49 -49
  85. package/dist/collection/global/intl.js +132 -132
  86. package/dist/collection/global/services/__mocks__/http-service.js +130 -130
  87. package/dist/collection/global/services/http-service.js +50 -50
  88. package/dist/collection/lang/lang.js +5 -5
  89. package/dist/collection/lang/missing.js +43 -43
  90. package/dist/collection/lang/piglatin.js +93 -93
  91. package/dist/esm/{chartFunctions-dd9eb9ac.js → chartFunctions-0b53b301.js} +596 -596
  92. package/dist/esm/{functions-f32b1ca4.js → functions-cbb19d50.js} +498 -498
  93. package/dist/esm/{global-7ee0d78d.js → global-2c7bbfe6.js} +72 -72
  94. package/dist/esm/{http-service-5d037e16.js → http-service-3dc3b3e7.js} +49 -49
  95. package/dist/esm/{interfaces-61c6305b.js → interfaces-2b97fab2.js} +29 -29
  96. package/dist/esm/{intl-d101e1a9.js → intl-ffbca53d.js} +131 -131
  97. package/dist/esm/loader.js +1 -1
  98. package/dist/esm/polyfills/core-js.js +0 -0
  99. package/dist/esm/polyfills/dom.js +0 -0
  100. package/dist/esm/polyfills/es5-html-element.js +0 -0
  101. package/dist/esm/polyfills/index.js +0 -0
  102. package/dist/esm/polyfills/system.js +0 -0
  103. package/dist/esm/priv-chart-popover.entry.js +91 -91
  104. package/dist/esm/priv-datepicker.entry.js +657 -657
  105. package/dist/esm/priv-navigator-button.entry.js +19 -19
  106. package/dist/esm/priv-navigator-item.entry.js +23 -23
  107. package/dist/esm/ripple.js +1 -1
  108. package/dist/esm/wm-action-menu_2.entry.js +334 -334
  109. package/dist/esm/wm-button.entry.js +189 -189
  110. package/dist/esm/wm-chart-slice.entry.js +18 -18
  111. package/dist/esm/wm-chart.entry.js +183 -183
  112. package/dist/esm/wm-datepicker.entry.js +263 -263
  113. package/dist/esm/wm-file-list.entry.js +35 -35
  114. package/dist/esm/wm-file.entry.js +181 -181
  115. package/dist/esm/wm-input.entry.js +136 -136
  116. package/dist/esm/wm-modal-footer.entry.js +33 -33
  117. package/dist/esm/wm-modal-header.entry.js +32 -32
  118. package/dist/esm/wm-modal.entry.js +152 -152
  119. package/dist/esm/wm-navigation_3.entry.js +186 -186
  120. package/dist/esm/wm-navigator.entry.js +264 -264
  121. package/dist/esm/wm-network-uploader.entry.js +465 -465
  122. package/dist/esm/wm-option_2.entry.js +768 -768
  123. package/dist/esm/wm-pagination.entry.js +179 -179
  124. package/dist/esm/wm-progress-indicator_3.entry.js +155 -155
  125. package/dist/esm/wm-search.entry.js +184 -184
  126. package/dist/esm/wm-snackbar.entry.js +134 -134
  127. package/dist/esm/wm-tab-item_3.entry.js +264 -264
  128. package/dist/esm/wm-tag-input-row.entry.js +14 -14
  129. package/dist/esm/wm-tag-input.entry.js +948 -941
  130. package/dist/esm/wm-timepicker.entry.js +385 -385
  131. package/dist/esm/wm-toggletip.entry.js +120 -120
  132. package/dist/esm/wm-uploader.entry.js +441 -441
  133. package/dist/esm/wm-wrapper.entry.js +12 -12
  134. package/dist/esm-es5/{chartFunctions-dd9eb9ac.js → chartFunctions-0b53b301.js} +1 -1
  135. package/dist/esm-es5/{global-7ee0d78d.js → global-2c7bbfe6.js} +1 -1
  136. package/dist/esm-es5/{intl-d101e1a9.js → intl-ffbca53d.js} +1 -1
  137. package/dist/esm-es5/loader.js +1 -1
  138. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  139. package/dist/esm-es5/priv-datepicker.entry.js +1 -1
  140. package/dist/esm-es5/ripple.js +1 -1
  141. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  142. package/dist/esm-es5/wm-button.entry.js +1 -1
  143. package/dist/esm-es5/wm-chart.entry.js +1 -1
  144. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  145. package/dist/esm-es5/wm-file.entry.js +1 -1
  146. package/dist/esm-es5/wm-input.entry.js +1 -1
  147. package/dist/esm-es5/wm-modal-header.entry.js +1 -1
  148. package/dist/esm-es5/wm-modal.entry.js +1 -1
  149. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  150. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  151. package/dist/esm-es5/wm-network-uploader.entry.js +1 -1
  152. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  153. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  154. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  155. package/dist/esm-es5/wm-search.entry.js +1 -1
  156. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  157. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  158. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  159. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  160. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  161. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  162. package/dist/ripple/{p-725c14b0.system.entry.js → p-00022d17.system.entry.js} +1 -1
  163. package/dist/ripple/{p-b97de06f.system.entry.js → p-0450cdbe.system.entry.js} +1 -1
  164. package/dist/ripple/{p-bfe1062d.entry.js → p-05a17658.entry.js} +1 -1
  165. package/dist/ripple/p-0b6a7b77.system.entry.js +1 -0
  166. package/dist/ripple/{p-b6bf2866.entry.js → p-0e789be7.entry.js} +1 -1
  167. package/dist/ripple/{p-b617b64f.system.entry.js → p-15779c22.system.entry.js} +1 -1
  168. package/dist/ripple/{p-04faca6b.entry.js → p-17487f1b.entry.js} +1 -1
  169. package/dist/ripple/{p-122da0d1.system.entry.js → p-197c83de.system.entry.js} +1 -1
  170. package/dist/ripple/{p-11d98b00.system.entry.js → p-1bad4efe.system.entry.js} +1 -1
  171. package/dist/ripple/{p-252ba295.system.entry.js → p-2ff923ee.system.entry.js} +1 -1
  172. package/dist/ripple/{p-a6afe65a.entry.js → p-31712996.entry.js} +1 -1
  173. package/dist/ripple/{p-f69276d5.system.entry.js → p-31c18f5e.system.entry.js} +1 -1
  174. package/dist/ripple/{p-df28f438.system.js → p-32944b70.system.js} +1 -1
  175. package/dist/ripple/{p-73d277ba.system.entry.js → p-36effc40.system.entry.js} +1 -1
  176. package/dist/ripple/{p-0be94e77.entry.js → p-3807bcae.entry.js} +1 -1
  177. package/dist/ripple/{p-88d17f6b.system.entry.js → p-3aa48fad.system.entry.js} +1 -1
  178. package/dist/ripple/{p-82a97531.system.entry.js → p-419f133c.system.entry.js} +1 -1
  179. package/dist/ripple/{p-13ec8ac0.entry.js → p-438a1e8e.entry.js} +1 -1
  180. package/dist/ripple/{p-19689aac.js → p-4698b365.js} +1 -1
  181. package/dist/ripple/{p-f8d45250.system.entry.js → p-54086f7b.system.entry.js} +1 -1
  182. package/dist/ripple/{p-47f53321.entry.js → p-5497694c.entry.js} +1 -1
  183. package/dist/ripple/{p-fb370a69.entry.js → p-58fbf116.entry.js} +1 -1
  184. package/dist/ripple/{p-14dfc4e7.entry.js → p-65a741c1.entry.js} +1 -1
  185. package/dist/ripple/{p-ac63b3aa.entry.js → p-7e74274b.entry.js} +1 -1
  186. package/dist/ripple/{p-81752607.system.js → p-81ad3fe5.system.js} +1 -1
  187. package/dist/ripple/{p-f3e42327.system.entry.js → p-89db9c27.system.entry.js} +1 -1
  188. package/dist/ripple/{p-4753fbfc.system.entry.js → p-947f01e2.system.entry.js} +1 -1
  189. package/dist/ripple/{p-3aee75e7.entry.js → p-978429f9.entry.js} +1 -1
  190. package/dist/ripple/{p-2c8fd902.system.entry.js → p-97d5b4bd.system.entry.js} +1 -1
  191. package/dist/ripple/{p-67c0ad56.system.entry.js → p-9d6a574b.system.entry.js} +1 -1
  192. package/dist/ripple/{p-c545fe1c.entry.js → p-a3ba2bdd.entry.js} +1 -1
  193. package/dist/ripple/{p-c7567fd3.entry.js → p-a42f5231.entry.js} +1 -1
  194. package/dist/ripple/p-a51aec3f.entry.js +1 -0
  195. package/dist/ripple/{p-b831988d.entry.js → p-a5b86b47.entry.js} +1 -1
  196. package/dist/ripple/{p-4cadf985.entry.js → p-a90b8a08.entry.js} +1 -1
  197. package/dist/ripple/{p-d9b66dca.system.entry.js → p-aabe172c.system.entry.js} +1 -1
  198. package/dist/ripple/{p-69121ad1.entry.js → p-ab2a0aee.entry.js} +1 -1
  199. package/dist/ripple/{p-5fb0aa58.js → p-aed93a25.js} +1 -1
  200. package/dist/ripple/{p-f39ee84b.entry.js → p-b2d75e7d.entry.js} +1 -1
  201. package/dist/ripple/{p-19b897ce.js → p-b410c675.js} +1 -1
  202. package/dist/ripple/{p-4809e419.system.entry.js → p-b6f558f7.system.entry.js} +1 -1
  203. package/dist/ripple/p-bb048fe7.entry.js +1 -0
  204. package/dist/ripple/{p-2805fed6.system.entry.js → p-bced37cf.system.entry.js} +1 -1
  205. package/dist/ripple/{p-c9a1834d.system.entry.js → p-bd0c1e7c.system.entry.js} +1 -1
  206. package/dist/ripple/{p-89f1991f.entry.js → p-c0e183f4.entry.js} +1 -1
  207. package/dist/ripple/{p-7eca18bd.system.entry.js → p-c27eda00.system.entry.js} +1 -1
  208. package/dist/ripple/{p-894bc6c4.system.entry.js → p-cd3e0b8b.system.entry.js} +1 -1
  209. package/dist/ripple/{p-f6b2e4ac.system.js → p-d1af63b5.system.js} +1 -1
  210. package/dist/ripple/{p-30572b71.system.js → p-d41ba263.system.js} +1 -1
  211. package/dist/ripple/{p-db7e6e89.entry.js → p-d8993992.entry.js} +1 -1
  212. package/dist/ripple/{p-f13b239c.system.entry.js → p-da525ed1.system.entry.js} +1 -1
  213. package/dist/ripple/{p-33af1eee.entry.js → p-e6f46289.entry.js} +1 -1
  214. package/dist/ripple/{p-e928f350.entry.js → p-fc967b2c.entry.js} +1 -1
  215. package/dist/ripple/ripple.esm.js +1 -1
  216. package/dist/ripple/ripple.js +1 -1
  217. package/dist/types/components/charts/chartFunctions.d.ts +37 -37
  218. package/dist/types/components/charts/priv-chart-popover/priv-chart-popover.d.ts +27 -27
  219. package/dist/types/components/charts/wm-chart/wm-chart-slice.d.ts +11 -11
  220. package/dist/types/components/charts/wm-chart/wm-chart.d.ts +47 -47
  221. package/dist/types/components/charts/wm-progress-monitor/wm-progress-indicator.d.ts +29 -29
  222. package/dist/types/components/charts/wm-progress-monitor/wm-progress-monitor.d.ts +20 -20
  223. package/dist/types/components/charts/wm-progress-monitor/wm-progress-slice.d.ts +10 -10
  224. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +49 -49
  225. package/dist/types/components/wm-button/wm-button.d.ts +44 -44
  226. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +80 -80
  227. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +42 -42
  228. package/dist/types/components/wm-file/wm-file.d.ts +40 -40
  229. package/dist/types/components/wm-file-list/wm-file-list.d.ts +16 -16
  230. package/dist/types/components/wm-input/wm-input.d.ts +57 -57
  231. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +34 -34
  232. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +14 -14
  233. package/dist/types/components/wm-modal/wm-modal-header.d.ts +10 -10
  234. package/dist/types/components/wm-modal/wm-modal.d.ts +40 -40
  235. package/dist/types/components/wm-navigation/wm-navigation-hamburger.d.ts +16 -16
  236. package/dist/types/components/wm-navigation/wm-navigation-item.d.ts +13 -13
  237. package/dist/types/components/wm-navigation/wm-navigation.d.ts +26 -26
  238. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +10 -10
  239. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +13 -13
  240. package/dist/types/components/wm-navigator/wm-navigator.d.ts +61 -61
  241. package/dist/types/components/wm-option/wm-option.d.ts +34 -34
  242. package/dist/types/components/wm-pagination/wm-pagination.d.ts +32 -32
  243. package/dist/types/components/wm-search/wm-search.d.ts +77 -77
  244. package/dist/types/components/wm-select/wm-select.d.ts +101 -101
  245. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +30 -30
  246. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +37 -37
  247. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +52 -52
  248. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +20 -20
  249. package/dist/types/components/wm-tag-input/wm-tag-input-row/wm-tag-input-row.d.ts +11 -11
  250. package/dist/types/components/wm-tag-input/wm-tag-input.d.ts +137 -136
  251. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +62 -62
  252. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +25 -25
  253. package/dist/types/components/wm-uploader/wm-network-uploader/wm-network-uploader.d.ts +85 -85
  254. package/dist/types/components/wm-uploader/wm-uploader.d.ts +99 -99
  255. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +7 -7
  256. package/dist/types/components.d.ts +27 -27
  257. package/dist/types/global/__mocks__/functions.d.ts +6 -6
  258. package/dist/types/global/functions.d.ts +40 -40
  259. package/dist/types/global/global.d.ts +1 -1
  260. package/dist/types/global/interfaces.d.ts +74 -74
  261. package/dist/types/global/intl.d.ts +29 -29
  262. package/dist/types/global/services/__mocks__/http-service.d.ts +6 -6
  263. package/dist/types/global/services/http-service.d.ts +4 -4
  264. package/dist/types/lang/lang.d.ts +5 -5
  265. package/package.json +46 -46
  266. package/dist/ripple/p-37de8e2f.entry.js +0 -1
  267. package/dist/ripple/p-b378e064.system.entry.js +0 -1
  268. package/dist/ripple/p-d2037549.entry.js +0 -1
  269. /package/dist/esm-es5/{functions-f32b1ca4.js → functions-cbb19d50.js} +0 -0
  270. /package/dist/esm-es5/{http-service-5d037e16.js → http-service-3dc3b3e7.js} +0 -0
  271. /package/dist/esm-es5/{interfaces-61c6305b.js → interfaces-2b97fab2.js} +0 -0
  272. /package/dist/ripple/{p-888bec42.js → p-43f1298b.js} +0 -0
  273. /package/dist/ripple/{p-cfa80f5b.js → p-91480a89.js} +0 -0
  274. /package/dist/ripple/{p-313b6073.system.js → p-9d02957d.system.js} +0 -0
  275. /package/dist/ripple/{p-9eb5a71e.system.js → p-b267e710.system.js} +0 -0
  276. /package/dist/ripple/{p-08b7ec08.system.js → p-f5df5903.system.js} +0 -0
  277. /package/dist/ripple/{p-a6d6eae7.js → p-fd8070fb.js} +0 -0
@@ -1,486 +1,486 @@
1
- import { h, Host } from "@stencil/core";
2
- import { getIconCodeFromName } from "../../global/interfaces";
3
- import { generateId, hideTooltip, showTooltip, toBool } from "../../global/functions";
4
- export class Button {
5
- constructor() {
6
- this.id = generateId();
7
- this.ariaPopup = false;
8
- this.disabled = false;
9
- this.buttonType = null;
10
- this.buttonStyle = null;
11
- this.icon = undefined;
12
- this.iconSize = undefined;
13
- this.iconRotate = undefined;
14
- this.iconFlip = undefined;
15
- this.tooltip = undefined;
16
- this.labelForIdenticalButtons = undefined;
17
- this.tooltipPosition = "bottom-right";
18
- this.permanentlyDelete = false;
19
- this.textWrap = true;
20
- this.customBackground = undefined;
21
- this.isTabbing = false;
22
- }
23
- get isDisabled() {
24
- // string "false" needs to be treated as bool False because react wrappers convert bool to string.
25
- return toBool(this.disabled);
26
- }
27
- get tempButtonType() {
28
- // uses of this getter should be replaced with this.buttonType when buttonStyle is fully phased out
29
- // don't forget to reset this.buttonType's default value to secondary
30
- return this.buttonType || this.buttonStyle || "secondary";
31
- }
32
- get isTruncated() {
33
- return (!!this.buttonEl && this.tempButtonType === "textonly" && this.buttonEl.offsetWidth < this.buttonEl.scrollWidth);
34
- }
35
- get hasTooltip() {
36
- // tooltip is only rendered for icononly and navigational types, or if the button text is truncated
37
- return ["icononly", "navigational"].includes(this.tempButtonType) || this.isTruncated;
38
- }
39
- get buttonClasses() {
40
- let classes = "wm-button";
41
- classes += this.permanentlyDelete ? " -permanentlydelete" : "";
42
- classes += this.tempButtonType ? " -" + this.tempButtonType : " -secondary";
43
- classes += this.textWrap ? "" : " nowrap";
44
- classes += this.isTabbing ? " user-is-tabbing" : "";
45
- classes += this.isTruncated ? " -truncated" : "";
46
- classes += this.customBackground === "dark" ? " dark" : "";
47
- return classes;
48
- }
49
- get iconStyles() {
50
- let transformStyle = "";
51
- transformStyle += this.iconRotate ? `rotate(${this.iconRotate}deg)` : "";
52
- transformStyle += this.iconFlip === "horizontal" ? `scaleX(-1)` : "";
53
- transformStyle += this.iconFlip === "vertical" ? `scaleY(-1)` : "";
54
- return Object.assign(Object.assign({}, (this.iconSize && { fontSize: this.iconSize })), ((this.iconRotate || this.iconFlip) && { transform: transformStyle }));
55
- }
56
- toggleTabbingOn() {
57
- this.isTabbing = true;
58
- }
59
- toggleTabbingOff() {
60
- this.isTabbing = false;
61
- }
62
- // we need to listen for scroll events during the capture phase because they do not bubble up
63
- // there can be layouts where the main content has 100vh and overflows
64
- // in these cases window will register no scroll events unless we catch on they way down
65
- handleScroll() {
66
- hideTooltip();
67
- }
68
- validateType(newValue) {
69
- const valid = [
70
- "primary",
71
- "secondary",
72
- "textonly",
73
- "icononly",
74
- "navigational",
75
- "selector",
76
- "selector-primary",
77
- "pairpositive",
78
- "pairnegative",
79
- ].includes(newValue);
80
- if (!valid) {
81
- this.buttonType = "secondary";
82
- }
83
- this.validateIcon();
84
- }
85
- // remove entire watcher after buttonStyle has been fully removed
86
- validateDeprecatedType(newValue) {
87
- const valid = ["primary", "secondary", "textonly", "icononly", "navigational", "selector"].includes(newValue);
88
- if (!valid) {
89
- this.buttonStyle = "secondary";
90
- }
91
- this.validateIcon();
92
- }
93
- updateIcon() {
94
- this.icon = getIconCodeFromName(this.icon);
95
- }
96
- validateIcon() {
97
- switch (this.tempButtonType) {
98
- case "icononly":
99
- case "navigational":
100
- // if the style is icononly or navigational...
101
- // - an icon must be provided
102
- if (!this.icon) {
103
- console.error("wm-button should have a valid 'icon' property when button-type is set to 'icononly' or 'navigational'.");
104
- }
105
- // - if no tooltip text was passed and we couldn't generate one, throw an error
106
- if (!this.tooltip) {
107
- console.error("wm-button should have a valid 'tooltip' property when button-type is set to 'icononly' or 'navigational'.");
108
- }
109
- break;
110
- case "pairpositive":
111
- this.icon = "f12c";
112
- break;
113
- case "pairnegative":
114
- this.icon = "f739";
115
- break;
116
- }
117
- }
118
- handleKeydown(ev) {
119
- switch (ev.key) {
120
- case "Enter":
121
- ev.preventDefault();
122
- if (!this.isDisabled) {
123
- this.el.click();
124
- }
125
- break;
126
- }
127
- }
128
- handleMouseEnter(ev) {
129
- if (this.hasTooltip) {
130
- let tooltipText = "";
131
- if (this.isTruncated && this.el.textContent) {
132
- // when truncated, tooltip text is the button's content
133
- tooltipText = this.el.textContent;
134
- }
135
- else if (this.tooltip) {
136
- // otherwise it is the tooltip property if present
137
- tooltipText = this.tooltip;
138
- }
139
- showTooltip(this.tooltipPosition, ev.target, tooltipText);
140
- }
141
- }
142
- handleFocus(ev) {
143
- if (this.hasTooltip && this.isTabbing) {
144
- let tooltipText = "";
145
- if (this.isTruncated && this.el.textContent) {
146
- // when truncated, tooltip text is the button's content
147
- tooltipText = this.el.textContent;
148
- }
149
- else if (this.tooltip) {
150
- // otherwise it is the tooltip property if present
151
- tooltipText = this.tooltip;
152
- }
153
- showTooltip(this.tooltipPosition, ev.target, tooltipText);
154
- }
155
- }
156
- componentWillLoad() {
157
- if (this.buttonStyle) {
158
- console.warn("wm-button: button-style has been deprecated as of v3.1.0. Please use button-type instead.");
159
- }
160
- this.validateType(this.tempButtonType);
161
- if (this.icon) {
162
- this.icon = this.icon = getIconCodeFromName(this.icon);
163
- }
164
- }
165
- componentDidLoad() {
166
- if (document.body.classList.contains("wmcl-user-is-tabbing")) {
167
- this.toggleTabbingOn();
168
- }
169
- this.ariaPopup = !!this.el.getAttribute("aria-haspopup");
170
- }
171
- getAriaLabel() {
172
- if (this.tempButtonType === "icononly" || this.tempButtonType === "navigational") {
173
- return this.labelForIdenticalButtons || this.tooltip;
174
- }
175
- if (this.labelForIdenticalButtons) {
176
- return this.labelForIdenticalButtons;
177
- }
178
- }
179
- render() {
180
- return (h(Host, { class: this.isDisabled ? "button-disabled" : "" }, h("button", { id: this.id, class: `${this.buttonClasses}`, disabled: this.isDisabled, ref: (el) => (this.buttonEl = el), "aria-label": this.getAriaLabel(), "aria-hasPopup": this.ariaPopup ? "menu" : null, onMouseEnter: (ev) => this.handleMouseEnter(ev), onMouseLeave: () => hideTooltip(), onFocus: (ev) => this.handleFocus(ev), onBlur: () => hideTooltip(), onClick: () => hideTooltip() }, this.icon && (h("span", { class: "mdi", style: this.iconStyles }, String.fromCodePoint(parseInt(`0x${this.icon}`)))), h("span", { class: "button-text" }, h("slot", null)))));
181
- }
182
- static get is() { return "wm-button"; }
183
- static get encapsulation() { return "shadow"; }
184
- static get delegatesFocus() { return true; }
185
- static get originalStyleUrls() {
186
- return {
187
- "$": ["wm-button.scss"]
188
- };
189
- }
190
- static get styleUrls() {
191
- return {
192
- "$": ["wm-button.css"]
193
- };
194
- }
195
- static get properties() {
196
- return {
197
- "disabled": {
198
- "type": "boolean",
199
- "mutable": false,
200
- "complexType": {
201
- "original": "boolean",
202
- "resolved": "boolean",
203
- "references": {}
204
- },
205
- "required": false,
206
- "optional": false,
207
- "docs": {
208
- "tags": [],
209
- "text": ""
210
- },
211
- "attribute": "disabled",
212
- "reflect": true,
213
- "defaultValue": "false"
214
- },
215
- "buttonType": {
216
- "type": "string",
217
- "mutable": true,
218
- "complexType": {
219
- "original": "validButtonTypes | null",
220
- "resolved": "\"icononly\" | \"navigational\" | \"pairnegative\" | \"pairpositive\" | \"primary\" | \"secondary\" | \"selector\" | \"selector-primary\" | \"textonly\" | null",
221
- "references": {
222
- "validButtonTypes": {
223
- "location": "import",
224
- "path": "../../global/interfaces"
225
- }
226
- }
227
- },
228
- "required": false,
229
- "optional": false,
230
- "docs": {
231
- "tags": [],
232
- "text": ""
233
- },
234
- "attribute": "button-type",
235
- "reflect": false,
236
- "defaultValue": "null"
237
- },
238
- "buttonStyle": {
239
- "type": "string",
240
- "mutable": true,
241
- "complexType": {
242
- "original": "validButtonTypes | null",
243
- "resolved": "\"icononly\" | \"navigational\" | \"pairnegative\" | \"pairpositive\" | \"primary\" | \"secondary\" | \"selector\" | \"selector-primary\" | \"textonly\" | null",
244
- "references": {
245
- "validButtonTypes": {
246
- "location": "import",
247
- "path": "../../global/interfaces"
248
- }
249
- }
250
- },
251
- "required": false,
252
- "optional": false,
253
- "docs": {
254
- "tags": [],
255
- "text": ""
256
- },
257
- "attribute": "button-style",
258
- "reflect": false,
259
- "defaultValue": "null"
260
- },
261
- "icon": {
262
- "type": "string",
263
- "mutable": true,
264
- "complexType": {
265
- "original": "string",
266
- "resolved": "string | undefined",
267
- "references": {}
268
- },
269
- "required": false,
270
- "optional": true,
271
- "docs": {
272
- "tags": [],
273
- "text": ""
274
- },
275
- "attribute": "icon",
276
- "reflect": true
277
- },
278
- "iconSize": {
279
- "type": "string",
280
- "mutable": false,
281
- "complexType": {
282
- "original": "string",
283
- "resolved": "string | undefined",
284
- "references": {}
285
- },
286
- "required": false,
287
- "optional": true,
288
- "docs": {
289
- "tags": [],
290
- "text": ""
291
- },
292
- "attribute": "icon-size",
293
- "reflect": false
294
- },
295
- "iconRotate": {
296
- "type": "number",
297
- "mutable": false,
298
- "complexType": {
299
- "original": "number",
300
- "resolved": "number | undefined",
301
- "references": {}
302
- },
303
- "required": false,
304
- "optional": true,
305
- "docs": {
306
- "tags": [],
307
- "text": ""
308
- },
309
- "attribute": "icon-rotate",
310
- "reflect": false
311
- },
312
- "iconFlip": {
313
- "type": "string",
314
- "mutable": false,
315
- "complexType": {
316
- "original": "\"horizontal\" | \"vertical\"",
317
- "resolved": "\"horizontal\" | \"vertical\" | undefined",
318
- "references": {}
319
- },
320
- "required": false,
321
- "optional": true,
322
- "docs": {
323
- "tags": [],
324
- "text": ""
325
- },
326
- "attribute": "icon-flip",
327
- "reflect": false
328
- },
329
- "tooltip": {
330
- "type": "string",
331
- "mutable": true,
332
- "complexType": {
333
- "original": "string",
334
- "resolved": "string | undefined",
335
- "references": {}
336
- },
337
- "required": false,
338
- "optional": true,
339
- "docs": {
340
- "tags": [],
341
- "text": ""
342
- },
343
- "attribute": "tooltip",
344
- "reflect": true
345
- },
346
- "labelForIdenticalButtons": {
347
- "type": "string",
348
- "mutable": false,
349
- "complexType": {
350
- "original": "string",
351
- "resolved": "string | undefined",
352
- "references": {}
353
- },
354
- "required": false,
355
- "optional": true,
356
- "docs": {
357
- "tags": [],
358
- "text": ""
359
- },
360
- "attribute": "label-for-identical-buttons",
361
- "reflect": false
362
- },
363
- "tooltipPosition": {
364
- "type": "string",
365
- "mutable": false,
366
- "complexType": {
367
- "original": "TooltipPlacement",
368
- "resolved": "\"bottom\" | \"bottom-left\" | \"bottom-right\" | \"left\" | \"right\" | \"top\" | \"top-left\" | \"top-right\"",
369
- "references": {
370
- "TooltipPlacement": {
371
- "location": "import",
372
- "path": "../../global/interfaces"
373
- }
374
- }
375
- },
376
- "required": false,
377
- "optional": false,
378
- "docs": {
379
- "tags": [],
380
- "text": ""
381
- },
382
- "attribute": "tooltip-position",
383
- "reflect": false,
384
- "defaultValue": "\"bottom-right\""
385
- },
386
- "permanentlyDelete": {
387
- "type": "boolean",
388
- "mutable": false,
389
- "complexType": {
390
- "original": "boolean",
391
- "resolved": "boolean | undefined",
392
- "references": {}
393
- },
394
- "required": false,
395
- "optional": true,
396
- "docs": {
397
- "tags": [],
398
- "text": ""
399
- },
400
- "attribute": "permanently-delete",
401
- "reflect": false,
402
- "defaultValue": "false"
403
- },
404
- "textWrap": {
405
- "type": "boolean",
406
- "mutable": false,
407
- "complexType": {
408
- "original": "boolean",
409
- "resolved": "boolean",
410
- "references": {}
411
- },
412
- "required": false,
413
- "optional": false,
414
- "docs": {
415
- "tags": [],
416
- "text": ""
417
- },
418
- "attribute": "text-wrap",
419
- "reflect": false,
420
- "defaultValue": "true"
421
- },
422
- "customBackground": {
423
- "type": "string",
424
- "mutable": false,
425
- "complexType": {
426
- "original": "string",
427
- "resolved": "string | undefined",
428
- "references": {}
429
- },
430
- "required": false,
431
- "optional": true,
432
- "docs": {
433
- "tags": [],
434
- "text": ""
435
- },
436
- "attribute": "custom-background",
437
- "reflect": false
438
- }
439
- };
440
- }
441
- static get states() {
442
- return {
443
- "isTabbing": {}
444
- };
445
- }
446
- static get elementRef() { return "el"; }
447
- static get watchers() {
448
- return [{
449
- "propName": "buttonType",
450
- "methodName": "validateType"
451
- }, {
452
- "propName": "buttonStyle",
453
- "methodName": "validateDeprecatedType"
454
- }, {
455
- "propName": "icon",
456
- "methodName": "updateIcon"
457
- }];
458
- }
459
- static get listeners() {
460
- return [{
461
- "name": "wmUserIsTabbing",
462
- "method": "toggleTabbingOn",
463
- "target": "window",
464
- "capture": false,
465
- "passive": false
466
- }, {
467
- "name": "wmUserIsNotTabbing",
468
- "method": "toggleTabbingOff",
469
- "target": "window",
470
- "capture": false,
471
- "passive": false
472
- }, {
473
- "name": "scroll",
474
- "method": "handleScroll",
475
- "target": "window",
476
- "capture": true,
477
- "passive": true
478
- }, {
479
- "name": "keydown",
480
- "method": "handleKeydown",
481
- "target": undefined,
482
- "capture": false,
483
- "passive": false
484
- }];
485
- }
486
- }
1
+ import { h, Host } from "@stencil/core";
2
+ import { getIconCodeFromName } from "../../global/interfaces";
3
+ import { generateId, hideTooltip, showTooltip, toBool } from "../../global/functions";
4
+ export class Button {
5
+ constructor() {
6
+ this.id = generateId();
7
+ this.ariaPopup = false;
8
+ this.disabled = false;
9
+ this.buttonType = null;
10
+ this.buttonStyle = null;
11
+ this.icon = undefined;
12
+ this.iconSize = undefined;
13
+ this.iconRotate = undefined;
14
+ this.iconFlip = undefined;
15
+ this.tooltip = undefined;
16
+ this.labelForIdenticalButtons = undefined;
17
+ this.tooltipPosition = "bottom-right";
18
+ this.permanentlyDelete = false;
19
+ this.textWrap = true;
20
+ this.customBackground = undefined;
21
+ this.isTabbing = false;
22
+ }
23
+ get isDisabled() {
24
+ // string "false" needs to be treated as bool False because react wrappers convert bool to string.
25
+ return toBool(this.disabled);
26
+ }
27
+ get tempButtonType() {
28
+ // uses of this getter should be replaced with this.buttonType when buttonStyle is fully phased out
29
+ // don't forget to reset this.buttonType's default value to secondary
30
+ return this.buttonType || this.buttonStyle || "secondary";
31
+ }
32
+ get isTruncated() {
33
+ return (!!this.buttonEl && this.tempButtonType === "textonly" && this.buttonEl.offsetWidth < this.buttonEl.scrollWidth);
34
+ }
35
+ get hasTooltip() {
36
+ // tooltip is only rendered for icononly and navigational types, or if the button text is truncated
37
+ return ["icononly", "navigational"].includes(this.tempButtonType) || this.isTruncated;
38
+ }
39
+ get buttonClasses() {
40
+ let classes = "wm-button";
41
+ classes += this.permanentlyDelete ? " -permanentlydelete" : "";
42
+ classes += this.tempButtonType ? " -" + this.tempButtonType : " -secondary";
43
+ classes += this.textWrap ? "" : " nowrap";
44
+ classes += this.isTabbing ? " user-is-tabbing" : "";
45
+ classes += this.isTruncated ? " -truncated" : "";
46
+ classes += this.customBackground === "dark" ? " dark" : "";
47
+ return classes;
48
+ }
49
+ get iconStyles() {
50
+ let transformStyle = "";
51
+ transformStyle += this.iconRotate ? `rotate(${this.iconRotate}deg)` : "";
52
+ transformStyle += this.iconFlip === "horizontal" ? `scaleX(-1)` : "";
53
+ transformStyle += this.iconFlip === "vertical" ? `scaleY(-1)` : "";
54
+ return Object.assign(Object.assign({}, (this.iconSize && { fontSize: this.iconSize })), ((this.iconRotate || this.iconFlip) && { transform: transformStyle }));
55
+ }
56
+ toggleTabbingOn() {
57
+ this.isTabbing = true;
58
+ }
59
+ toggleTabbingOff() {
60
+ this.isTabbing = false;
61
+ }
62
+ // we need to listen for scroll events during the capture phase because they do not bubble up
63
+ // there can be layouts where the main content has 100vh and overflows
64
+ // in these cases window will register no scroll events unless we catch on they way down
65
+ handleScroll() {
66
+ hideTooltip();
67
+ }
68
+ validateType(newValue) {
69
+ const valid = [
70
+ "primary",
71
+ "secondary",
72
+ "textonly",
73
+ "icononly",
74
+ "navigational",
75
+ "selector",
76
+ "selector-primary",
77
+ "pairpositive",
78
+ "pairnegative",
79
+ ].includes(newValue);
80
+ if (!valid) {
81
+ this.buttonType = "secondary";
82
+ }
83
+ this.validateIcon();
84
+ }
85
+ // remove entire watcher after buttonStyle has been fully removed
86
+ validateDeprecatedType(newValue) {
87
+ const valid = ["primary", "secondary", "textonly", "icononly", "navigational", "selector"].includes(newValue);
88
+ if (!valid) {
89
+ this.buttonStyle = "secondary";
90
+ }
91
+ this.validateIcon();
92
+ }
93
+ updateIcon() {
94
+ this.icon = getIconCodeFromName(this.icon);
95
+ }
96
+ validateIcon() {
97
+ switch (this.tempButtonType) {
98
+ case "icononly":
99
+ case "navigational":
100
+ // if the style is icononly or navigational...
101
+ // - an icon must be provided
102
+ if (!this.icon) {
103
+ console.error("wm-button should have a valid 'icon' property when button-type is set to 'icononly' or 'navigational'.");
104
+ }
105
+ // - if no tooltip text was passed and we couldn't generate one, throw an error
106
+ if (!this.tooltip) {
107
+ console.error("wm-button should have a valid 'tooltip' property when button-type is set to 'icononly' or 'navigational'.");
108
+ }
109
+ break;
110
+ case "pairpositive":
111
+ this.icon = "f12c";
112
+ break;
113
+ case "pairnegative":
114
+ this.icon = "f739";
115
+ break;
116
+ }
117
+ }
118
+ handleKeydown(ev) {
119
+ switch (ev.key) {
120
+ case "Enter":
121
+ ev.preventDefault();
122
+ if (!this.isDisabled) {
123
+ this.el.click();
124
+ }
125
+ break;
126
+ }
127
+ }
128
+ handleMouseEnter(ev) {
129
+ if (this.hasTooltip) {
130
+ let tooltipText = "";
131
+ if (this.isTruncated && this.el.textContent) {
132
+ // when truncated, tooltip text is the button's content
133
+ tooltipText = this.el.textContent;
134
+ }
135
+ else if (this.tooltip) {
136
+ // otherwise it is the tooltip property if present
137
+ tooltipText = this.tooltip;
138
+ }
139
+ showTooltip(this.tooltipPosition, ev.target, tooltipText);
140
+ }
141
+ }
142
+ handleFocus(ev) {
143
+ if (this.hasTooltip && this.isTabbing) {
144
+ let tooltipText = "";
145
+ if (this.isTruncated && this.el.textContent) {
146
+ // when truncated, tooltip text is the button's content
147
+ tooltipText = this.el.textContent;
148
+ }
149
+ else if (this.tooltip) {
150
+ // otherwise it is the tooltip property if present
151
+ tooltipText = this.tooltip;
152
+ }
153
+ showTooltip(this.tooltipPosition, ev.target, tooltipText);
154
+ }
155
+ }
156
+ componentWillLoad() {
157
+ if (this.buttonStyle) {
158
+ console.warn("wm-button: button-style has been deprecated as of v3.1.0. Please use button-type instead.");
159
+ }
160
+ this.validateType(this.tempButtonType);
161
+ if (this.icon) {
162
+ this.icon = this.icon = getIconCodeFromName(this.icon);
163
+ }
164
+ }
165
+ componentDidLoad() {
166
+ if (document.body.classList.contains("wmcl-user-is-tabbing")) {
167
+ this.toggleTabbingOn();
168
+ }
169
+ this.ariaPopup = !!this.el.getAttribute("aria-haspopup");
170
+ }
171
+ getAriaLabel() {
172
+ if (this.tempButtonType === "icononly" || this.tempButtonType === "navigational") {
173
+ return this.labelForIdenticalButtons || this.tooltip;
174
+ }
175
+ if (this.labelForIdenticalButtons) {
176
+ return this.labelForIdenticalButtons;
177
+ }
178
+ }
179
+ render() {
180
+ return (h(Host, { class: this.isDisabled ? "button-disabled" : "" }, h("button", { id: this.id, class: `${this.buttonClasses}`, disabled: this.isDisabled, ref: (el) => (this.buttonEl = el), "aria-label": this.getAriaLabel(), "aria-hasPopup": this.ariaPopup ? "menu" : null, onMouseEnter: (ev) => this.handleMouseEnter(ev), onMouseLeave: () => hideTooltip(), onFocus: (ev) => this.handleFocus(ev), onBlur: () => hideTooltip(), onClick: () => hideTooltip() }, this.icon && (h("span", { class: "mdi", style: this.iconStyles }, String.fromCodePoint(parseInt(`0x${this.icon}`)))), h("span", { class: "button-text" }, h("slot", null)))));
181
+ }
182
+ static get is() { return "wm-button"; }
183
+ static get encapsulation() { return "shadow"; }
184
+ static get delegatesFocus() { return true; }
185
+ static get originalStyleUrls() {
186
+ return {
187
+ "$": ["wm-button.scss"]
188
+ };
189
+ }
190
+ static get styleUrls() {
191
+ return {
192
+ "$": ["wm-button.css"]
193
+ };
194
+ }
195
+ static get properties() {
196
+ return {
197
+ "disabled": {
198
+ "type": "boolean",
199
+ "mutable": false,
200
+ "complexType": {
201
+ "original": "boolean",
202
+ "resolved": "boolean",
203
+ "references": {}
204
+ },
205
+ "required": false,
206
+ "optional": false,
207
+ "docs": {
208
+ "tags": [],
209
+ "text": ""
210
+ },
211
+ "attribute": "disabled",
212
+ "reflect": true,
213
+ "defaultValue": "false"
214
+ },
215
+ "buttonType": {
216
+ "type": "string",
217
+ "mutable": true,
218
+ "complexType": {
219
+ "original": "validButtonTypes | null",
220
+ "resolved": "\"icononly\" | \"navigational\" | \"pairnegative\" | \"pairpositive\" | \"primary\" | \"secondary\" | \"selector\" | \"selector-primary\" | \"textonly\" | null",
221
+ "references": {
222
+ "validButtonTypes": {
223
+ "location": "import",
224
+ "path": "../../global/interfaces"
225
+ }
226
+ }
227
+ },
228
+ "required": false,
229
+ "optional": false,
230
+ "docs": {
231
+ "tags": [],
232
+ "text": ""
233
+ },
234
+ "attribute": "button-type",
235
+ "reflect": false,
236
+ "defaultValue": "null"
237
+ },
238
+ "buttonStyle": {
239
+ "type": "string",
240
+ "mutable": true,
241
+ "complexType": {
242
+ "original": "validButtonTypes | null",
243
+ "resolved": "\"icononly\" | \"navigational\" | \"pairnegative\" | \"pairpositive\" | \"primary\" | \"secondary\" | \"selector\" | \"selector-primary\" | \"textonly\" | null",
244
+ "references": {
245
+ "validButtonTypes": {
246
+ "location": "import",
247
+ "path": "../../global/interfaces"
248
+ }
249
+ }
250
+ },
251
+ "required": false,
252
+ "optional": false,
253
+ "docs": {
254
+ "tags": [],
255
+ "text": ""
256
+ },
257
+ "attribute": "button-style",
258
+ "reflect": false,
259
+ "defaultValue": "null"
260
+ },
261
+ "icon": {
262
+ "type": "string",
263
+ "mutable": true,
264
+ "complexType": {
265
+ "original": "string",
266
+ "resolved": "string | undefined",
267
+ "references": {}
268
+ },
269
+ "required": false,
270
+ "optional": true,
271
+ "docs": {
272
+ "tags": [],
273
+ "text": ""
274
+ },
275
+ "attribute": "icon",
276
+ "reflect": true
277
+ },
278
+ "iconSize": {
279
+ "type": "string",
280
+ "mutable": false,
281
+ "complexType": {
282
+ "original": "string",
283
+ "resolved": "string | undefined",
284
+ "references": {}
285
+ },
286
+ "required": false,
287
+ "optional": true,
288
+ "docs": {
289
+ "tags": [],
290
+ "text": ""
291
+ },
292
+ "attribute": "icon-size",
293
+ "reflect": false
294
+ },
295
+ "iconRotate": {
296
+ "type": "number",
297
+ "mutable": false,
298
+ "complexType": {
299
+ "original": "number",
300
+ "resolved": "number | undefined",
301
+ "references": {}
302
+ },
303
+ "required": false,
304
+ "optional": true,
305
+ "docs": {
306
+ "tags": [],
307
+ "text": ""
308
+ },
309
+ "attribute": "icon-rotate",
310
+ "reflect": false
311
+ },
312
+ "iconFlip": {
313
+ "type": "string",
314
+ "mutable": false,
315
+ "complexType": {
316
+ "original": "\"horizontal\" | \"vertical\"",
317
+ "resolved": "\"horizontal\" | \"vertical\" | undefined",
318
+ "references": {}
319
+ },
320
+ "required": false,
321
+ "optional": true,
322
+ "docs": {
323
+ "tags": [],
324
+ "text": ""
325
+ },
326
+ "attribute": "icon-flip",
327
+ "reflect": false
328
+ },
329
+ "tooltip": {
330
+ "type": "string",
331
+ "mutable": true,
332
+ "complexType": {
333
+ "original": "string",
334
+ "resolved": "string | undefined",
335
+ "references": {}
336
+ },
337
+ "required": false,
338
+ "optional": true,
339
+ "docs": {
340
+ "tags": [],
341
+ "text": ""
342
+ },
343
+ "attribute": "tooltip",
344
+ "reflect": true
345
+ },
346
+ "labelForIdenticalButtons": {
347
+ "type": "string",
348
+ "mutable": false,
349
+ "complexType": {
350
+ "original": "string",
351
+ "resolved": "string | undefined",
352
+ "references": {}
353
+ },
354
+ "required": false,
355
+ "optional": true,
356
+ "docs": {
357
+ "tags": [],
358
+ "text": ""
359
+ },
360
+ "attribute": "label-for-identical-buttons",
361
+ "reflect": false
362
+ },
363
+ "tooltipPosition": {
364
+ "type": "string",
365
+ "mutable": false,
366
+ "complexType": {
367
+ "original": "TooltipPlacement",
368
+ "resolved": "\"bottom\" | \"bottom-left\" | \"bottom-right\" | \"left\" | \"right\" | \"top\" | \"top-left\" | \"top-right\"",
369
+ "references": {
370
+ "TooltipPlacement": {
371
+ "location": "import",
372
+ "path": "../../global/interfaces"
373
+ }
374
+ }
375
+ },
376
+ "required": false,
377
+ "optional": false,
378
+ "docs": {
379
+ "tags": [],
380
+ "text": ""
381
+ },
382
+ "attribute": "tooltip-position",
383
+ "reflect": false,
384
+ "defaultValue": "\"bottom-right\""
385
+ },
386
+ "permanentlyDelete": {
387
+ "type": "boolean",
388
+ "mutable": false,
389
+ "complexType": {
390
+ "original": "boolean",
391
+ "resolved": "boolean | undefined",
392
+ "references": {}
393
+ },
394
+ "required": false,
395
+ "optional": true,
396
+ "docs": {
397
+ "tags": [],
398
+ "text": ""
399
+ },
400
+ "attribute": "permanently-delete",
401
+ "reflect": false,
402
+ "defaultValue": "false"
403
+ },
404
+ "textWrap": {
405
+ "type": "boolean",
406
+ "mutable": false,
407
+ "complexType": {
408
+ "original": "boolean",
409
+ "resolved": "boolean",
410
+ "references": {}
411
+ },
412
+ "required": false,
413
+ "optional": false,
414
+ "docs": {
415
+ "tags": [],
416
+ "text": ""
417
+ },
418
+ "attribute": "text-wrap",
419
+ "reflect": false,
420
+ "defaultValue": "true"
421
+ },
422
+ "customBackground": {
423
+ "type": "string",
424
+ "mutable": false,
425
+ "complexType": {
426
+ "original": "string",
427
+ "resolved": "string | undefined",
428
+ "references": {}
429
+ },
430
+ "required": false,
431
+ "optional": true,
432
+ "docs": {
433
+ "tags": [],
434
+ "text": ""
435
+ },
436
+ "attribute": "custom-background",
437
+ "reflect": false
438
+ }
439
+ };
440
+ }
441
+ static get states() {
442
+ return {
443
+ "isTabbing": {}
444
+ };
445
+ }
446
+ static get elementRef() { return "el"; }
447
+ static get watchers() {
448
+ return [{
449
+ "propName": "buttonType",
450
+ "methodName": "validateType"
451
+ }, {
452
+ "propName": "buttonStyle",
453
+ "methodName": "validateDeprecatedType"
454
+ }, {
455
+ "propName": "icon",
456
+ "methodName": "updateIcon"
457
+ }];
458
+ }
459
+ static get listeners() {
460
+ return [{
461
+ "name": "wmUserIsTabbing",
462
+ "method": "toggleTabbingOn",
463
+ "target": "window",
464
+ "capture": false,
465
+ "passive": false
466
+ }, {
467
+ "name": "wmUserIsNotTabbing",
468
+ "method": "toggleTabbingOff",
469
+ "target": "window",
470
+ "capture": false,
471
+ "passive": false
472
+ }, {
473
+ "name": "scroll",
474
+ "method": "handleScroll",
475
+ "target": "window",
476
+ "capture": true,
477
+ "passive": true
478
+ }, {
479
+ "name": "keydown",
480
+ "method": "handleKeydown",
481
+ "target": undefined,
482
+ "capture": false,
483
+ "passive": false
484
+ }];
485
+ }
486
+ }