@watermarkinsights/ripple 3.0.1-0 → 3.0.2-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 (224) hide show
  1. package/dist/{ripple/functions-316c1b23.js → cjs/functions-e3f5ae65.js} +188 -2391
  2. package/dist/cjs/global-1e540de6.js +38 -0
  3. package/dist/cjs/http-service-9e8c4dd5.js +57 -0
  4. package/dist/cjs/index-d930307d.js +1392 -0
  5. package/dist/cjs/index.cjs.js +2 -0
  6. package/dist/cjs/interfaces-30a74c1f.js +35 -0
  7. package/dist/cjs/loader.cjs.js +22 -0
  8. package/dist/cjs/priv-chart-popover.cjs.entry.js +89 -0
  9. package/dist/cjs/priv-datepicker.cjs.entry.js +672 -0
  10. package/dist/cjs/priv-navigator-button.cjs.entry.js +29 -0
  11. package/dist/cjs/priv-navigator-item.cjs.entry.js +34 -0
  12. package/dist/cjs/ripple.cjs.js +20 -0
  13. package/dist/cjs/wm-action-menu_2.cjs.entry.js +318 -0
  14. package/dist/cjs/wm-button.cjs.entry.js +152 -0
  15. package/dist/cjs/wm-chart-slice.cjs.entry.js +22 -0
  16. package/dist/cjs/wm-chart.cjs.entry.js +508 -0
  17. package/dist/cjs/wm-datepicker.cjs.entry.js +257 -0
  18. package/dist/cjs/wm-input.cjs.entry.js +110 -0
  19. package/dist/cjs/wm-modal-footer.cjs.entry.js +43 -0
  20. package/dist/cjs/wm-modal-header.cjs.entry.js +45 -0
  21. package/dist/cjs/wm-modal.cjs.entry.js +149 -0
  22. package/dist/cjs/wm-navigator.cjs.entry.js +279 -0
  23. package/dist/cjs/wm-network-uploader.cjs.entry.js +431 -0
  24. package/dist/cjs/wm-option_2.cjs.entry.js +483 -0
  25. package/dist/cjs/wm-pagination.cjs.entry.js +176 -0
  26. package/dist/cjs/wm-search.cjs.entry.js +231 -0
  27. package/dist/cjs/wm-snackbar.cjs.entry.js +160 -0
  28. package/dist/cjs/wm-tab-item_3.cjs.entry.js +316 -0
  29. package/dist/cjs/wm-tag-input.cjs.entry.js +538 -0
  30. package/dist/cjs/wm-timepicker.cjs.entry.js +386 -0
  31. package/dist/cjs/wm-toggletip.cjs.entry.js +128 -0
  32. package/dist/cjs/wm-uploader.cjs.entry.js +342 -0
  33. package/dist/cjs/wm-wrapper.cjs.entry.js +21 -0
  34. package/dist/collection/collection-manifest.json +131 -0
  35. package/dist/{ripple/ripple.css → collection/components/wm-action-menu/wm-action-menu.css} +80 -42
  36. package/dist/collection/components/wm-action-menu/wm-action-menu.js +392 -0
  37. package/dist/collection/components/wm-button/wm-button.css +572 -0
  38. package/dist/collection/components/wm-button/wm-button.js +365 -0
  39. package/dist/collection/components/wm-chart/priv-chart-popover/priv-chart-popover.css +132 -0
  40. package/dist/collection/components/wm-chart/priv-chart-popover/priv-chart-popover.js +232 -0
  41. package/dist/collection/components/wm-chart/wm-chart-slice.js +64 -0
  42. package/dist/collection/components/wm-chart/wm-chart.css +337 -0
  43. package/dist/collection/components/wm-chart/wm-chart.js +710 -0
  44. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.css +374 -0
  45. package/dist/collection/components/wm-datepicker/priv-datepicker/priv-datepicker.js +1003 -0
  46. package/dist/collection/components/wm-datepicker/wm-datepicker.css +211 -0
  47. package/dist/collection/components/wm-datepicker/wm-datepicker.js +439 -0
  48. package/dist/collection/components/wm-input/wm-input.css +220 -0
  49. package/dist/collection/components/wm-input/wm-input.js +302 -0
  50. package/dist/collection/components/wm-menuitem/wm-menuitem.css +118 -0
  51. package/dist/collection/components/wm-menuitem/wm-menuitem.js +411 -0
  52. package/dist/collection/components/wm-modal/wm-modal-footer.css +84 -0
  53. package/dist/collection/components/wm-modal/wm-modal-footer.js +159 -0
  54. package/dist/collection/components/wm-modal/wm-modal-header.css +78 -0
  55. package/dist/collection/components/wm-modal/wm-modal-header.js +109 -0
  56. package/dist/collection/components/wm-modal/wm-modal.css +155 -0
  57. package/dist/collection/components/wm-modal/wm-modal.js +356 -0
  58. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +94 -0
  59. package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +97 -0
  60. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +67 -0
  61. package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +114 -0
  62. package/dist/collection/components/wm-navigator/wm-navigator.css +137 -0
  63. package/dist/collection/components/wm-navigator/wm-navigator.js +468 -0
  64. package/dist/collection/components/wm-option/wm-option.css +162 -0
  65. package/dist/collection/components/wm-option/wm-option.js +394 -0
  66. package/dist/collection/components/wm-pagination/wm-pagination.css +217 -0
  67. package/dist/collection/components/wm-pagination/wm-pagination.js +348 -0
  68. package/dist/collection/components/wm-search/wm-search.css +155 -0
  69. package/dist/collection/components/wm-search/wm-search.js +439 -0
  70. package/dist/collection/components/wm-select/wm-select.css +315 -0
  71. package/dist/collection/components/wm-select/wm-select.js +676 -0
  72. package/dist/collection/components/wm-snackbar/wm-snackbar.css +331 -0
  73. package/dist/collection/components/wm-snackbar/wm-snackbar.js +240 -0
  74. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +104 -0
  75. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +202 -0
  76. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +73 -0
  77. package/dist/{ripple/wm-tab-list.entry.js → collection/components/wm-tabs/wm-tab-list/wm-tab-list.js} +131 -17
  78. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.css +57 -0
  79. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +104 -0
  80. package/dist/collection/components/wm-tag-input/wm-tag-input.css +431 -0
  81. package/dist/collection/components/wm-tag-input/wm-tag-input.js +754 -0
  82. package/dist/collection/components/wm-timepicker/wm-timepicker.css +370 -0
  83. package/dist/collection/components/wm-timepicker/wm-timepicker.js +567 -0
  84. package/dist/collection/components/wm-toggletip/wm-toggletip.css +350 -0
  85. package/dist/collection/components/wm-toggletip/wm-toggletip.js +217 -0
  86. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.css +642 -0
  87. package/dist/collection/components/wm-uploader/wm-network-uploader/wm-network-uploader.js +753 -0
  88. package/dist/collection/components/wm-uploader/wm-uploader.css +666 -0
  89. package/dist/collection/components/wm-uploader/wm-uploader.js +673 -0
  90. package/dist/collection/components/wm-wrapper/wm-wrapper.js +27 -0
  91. package/dist/collection/dev/scripts.js +20 -0
  92. package/dist/collection/global/__mocks__/functions.js +5 -0
  93. package/dist/collection/global/functions.js +420 -0
  94. package/dist/{ripple/app-globals-b5693c90.js → collection/global/global.js} +3 -8
  95. package/dist/{ripple/interfaces-50753346.js → collection/global/interfaces.js} +4 -6
  96. package/dist/collection/global/services/__mocks__/http-service.js +130 -0
  97. package/dist/collection/global/services/http-service.js +50 -0
  98. package/dist/collection/lang/lang.js +5 -0
  99. package/dist/collection/lang/piglatin.js +93 -0
  100. package/dist/esm/functions-0deb7f8e.js +6117 -0
  101. package/dist/esm/global-d6b49e98.js +36 -0
  102. package/dist/{ripple → esm}/http-service-5d037e16.js +0 -0
  103. package/dist/esm/index-5a842e48.js +1363 -0
  104. package/dist/esm/index.js +1 -0
  105. package/dist/esm/interfaces-61c6305b.js +32 -0
  106. package/dist/esm/loader.js +18 -0
  107. package/dist/esm/polyfills/core-js.js +11 -0
  108. package/dist/esm/polyfills/css-shim.js +1 -0
  109. package/dist/esm/polyfills/dom.js +79 -0
  110. package/dist/esm/polyfills/es5-html-element.js +1 -0
  111. package/dist/esm/polyfills/index.js +34 -0
  112. package/dist/esm/polyfills/system.js +6 -0
  113. package/dist/{ripple → esm}/priv-chart-popover.entry.js +2 -2
  114. package/dist/{ripple → esm}/priv-datepicker.entry.js +3 -3
  115. package/dist/{ripple → esm}/priv-navigator-button.entry.js +1 -1
  116. package/dist/{ripple → esm}/priv-navigator-item.entry.js +1 -1
  117. package/dist/esm/ripple.js +18 -0
  118. package/dist/{ripple/wm-action-menu.entry.js → esm/wm-action-menu_2.entry.js} +114 -3
  119. package/dist/{ripple → esm}/wm-button.entry.js +3 -3
  120. package/dist/{ripple → esm}/wm-chart-slice.entry.js +1 -1
  121. package/dist/{ripple → esm}/wm-chart.entry.js +2 -2
  122. package/dist/{ripple → esm}/wm-datepicker.entry.js +27 -32
  123. package/dist/{ripple → esm}/wm-input.entry.js +2 -2
  124. package/dist/{ripple → esm}/wm-modal-footer.entry.js +2 -2
  125. package/dist/{ripple → esm}/wm-modal-header.entry.js +2 -2
  126. package/dist/{ripple → esm}/wm-modal.entry.js +2 -2
  127. package/dist/{ripple → esm}/wm-navigator.entry.js +3 -3
  128. package/dist/{ripple → esm}/wm-network-uploader.entry.js +2 -2
  129. package/dist/{ripple/wm-select.entry.js → esm/wm-option_2.entry.js} +119 -3
  130. package/dist/{ripple → esm}/wm-pagination.entry.js +2 -2
  131. package/dist/{ripple → esm}/wm-search.entry.js +2 -2
  132. package/dist/{ripple → esm}/wm-snackbar.entry.js +2 -2
  133. package/dist/esm/wm-tab-item_3.entry.js +310 -0
  134. package/dist/{ripple → esm}/wm-tag-input.entry.js +2 -2
  135. package/dist/{ripple → esm}/wm-timepicker.entry.js +2 -2
  136. package/dist/{ripple → esm}/wm-toggletip.entry.js +2 -2
  137. package/dist/{ripple → esm}/wm-uploader.entry.js +2 -2
  138. package/dist/{ripple → esm}/wm-wrapper.entry.js +1 -1
  139. package/dist/index.cjs.js +1 -0
  140. package/dist/index.js +1 -0
  141. package/dist/loader/cdn.js +3 -0
  142. package/dist/loader/index.cjs.js +3 -0
  143. package/dist/loader/index.d.ts +13 -0
  144. package/dist/loader/index.es2017.js +3 -0
  145. package/dist/loader/index.js +4 -0
  146. package/dist/loader/package.json +10 -0
  147. package/dist/ripple/index.esm.js +0 -1
  148. package/dist/ripple/p-103f8cae.entry.js +1 -0
  149. package/dist/ripple/p-129d94fa.entry.js +1 -0
  150. package/dist/ripple/p-139fe143.entry.js +1 -0
  151. package/dist/ripple/p-16367805.entry.js +1 -0
  152. package/dist/ripple/p-1d334060.entry.js +1 -0
  153. package/dist/ripple/p-2562f330.entry.js +1 -0
  154. package/dist/ripple/p-278b26ef.entry.js +1 -0
  155. package/dist/ripple/p-2c21bb72.entry.js +1 -0
  156. package/dist/ripple/p-2f5fda71.entry.js +1 -0
  157. package/dist/ripple/p-3e6f04d5.entry.js +1 -0
  158. package/dist/ripple/p-7185de7f.entry.js +1 -0
  159. package/dist/ripple/p-770d0798.entry.js +1 -0
  160. package/dist/ripple/p-846b4c5f.entry.js +1 -0
  161. package/dist/ripple/p-888bec42.js +1 -0
  162. package/dist/ripple/p-90779d53.entry.js +1 -0
  163. package/dist/ripple/p-934543f2.js +1 -0
  164. package/dist/ripple/p-9a087fee.entry.js +1 -0
  165. package/dist/ripple/p-a6d6eae7.js +1 -0
  166. package/dist/ripple/p-a942ad10.entry.js +1 -0
  167. package/dist/ripple/p-bfb4652d.entry.js +1 -0
  168. package/dist/ripple/p-c0fe5201.entry.js +1 -0
  169. package/dist/ripple/p-c2e27acc.entry.js +1 -0
  170. package/dist/ripple/p-c2edda64.entry.js +1 -0
  171. package/dist/ripple/p-d1fdcbcf.entry.js +1 -0
  172. package/dist/ripple/p-d40b6afb.entry.js +1 -0
  173. package/dist/ripple/p-da73db1c.entry.js +1 -0
  174. package/dist/ripple/p-e3843249.js +1 -0
  175. package/dist/ripple/p-ea5cd8b8.js +16 -0
  176. package/dist/ripple/p-ed0f43f4.entry.js +1 -0
  177. package/dist/ripple/p-ffafd363.entry.js +1 -0
  178. package/dist/ripple/ripple.esm.js +1 -125
  179. package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +43 -0
  180. package/dist/types/components/wm-button/wm-button.d.ts +36 -0
  181. package/dist/types/components/wm-chart/priv-chart-popover/priv-chart-popover.d.ts +23 -0
  182. package/dist/types/components/wm-chart/wm-chart-slice.d.ts +8 -0
  183. package/dist/types/components/wm-chart/wm-chart.d.ts +77 -0
  184. package/dist/types/components/wm-datepicker/priv-datepicker/priv-datepicker.d.ts +75 -0
  185. package/dist/types/components/wm-datepicker/wm-datepicker.d.ts +39 -0
  186. package/dist/types/components/wm-input/wm-input.d.ts +30 -0
  187. package/dist/types/components/wm-menuitem/wm-menuitem.d.ts +30 -0
  188. package/dist/types/components/wm-modal/wm-modal-footer.d.ts +15 -0
  189. package/dist/types/components/wm-modal/wm-modal-header.d.ts +12 -0
  190. package/dist/types/components/wm-modal/wm-modal.d.ts +34 -0
  191. package/dist/types/components/wm-navigator/priv-navigator-button/priv-navigator-button.d.ts +10 -0
  192. package/dist/types/components/wm-navigator/priv-navigator-item/priv-navigator-item.d.ts +13 -0
  193. package/dist/types/components/wm-navigator/wm-navigator.d.ts +61 -0
  194. package/dist/types/components/wm-option/wm-option.d.ts +28 -0
  195. package/dist/types/components/wm-pagination/wm-pagination.d.ts +31 -0
  196. package/dist/types/components/wm-search/wm-search.d.ts +78 -0
  197. package/dist/types/components/wm-select/wm-select.d.ts +63 -0
  198. package/dist/types/components/wm-snackbar/wm-snackbar.d.ts +32 -0
  199. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +35 -0
  200. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +50 -0
  201. package/dist/types/components/wm-tabs/wm-tab-panel/wm-tab-panel.d.ts +20 -0
  202. package/dist/types/components/wm-tag-input/{wm-tag-input.d.ts~ds312_tagInputMaxTags → wm-tag-input.d.ts} +1 -1
  203. package/dist/types/components/wm-timepicker/wm-timepicker.d.ts +59 -0
  204. package/dist/types/components/wm-toggletip/wm-toggletip.d.ts +25 -0
  205. package/dist/types/components/wm-uploader/wm-network-uploader/wm-network-uploader.d.ts +85 -0
  206. package/dist/types/components/wm-uploader/wm-uploader.d.ts +75 -0
  207. package/dist/types/components/wm-wrapper/wm-wrapper.d.ts +7 -0
  208. package/dist/types/{components.d.ts~ds312_tagInputMaxTags → components.d.ts} +0 -0
  209. package/dist/types/global/__mocks__/functions.d.ts +5 -0
  210. package/dist/types/global/global.d.ts +1 -0
  211. package/dist/types/global/interfaces.d.ts +33 -0
  212. package/dist/types/global/services/__mocks__/http-service.d.ts +6 -0
  213. package/dist/types/global/services/http-service.d.ts +4 -0
  214. package/dist/types/lang/lang.d.ts +5 -0
  215. package/dist/types/{stencil-public-runtime.d.ts~ds312_tagInputMaxTags → stencil-public-runtime.d.ts} +190 -182
  216. package/package.json +1 -1
  217. package/dist/ripple/css-shim-bbdf0cc6.js +0 -4
  218. package/dist/ripple/dom-1f98a75f.js +0 -73
  219. package/dist/ripple/index-20b65f86.js +0 -2938
  220. package/dist/ripple/shadow-css-67b66845.js +0 -389
  221. package/dist/ripple/wm-menuitem.entry.js +0 -114
  222. package/dist/ripple/wm-option.entry.js +0 -119
  223. package/dist/ripple/wm-tab-item.entry.js +0 -78
  224. package/dist/ripple/wm-tab-panel.entry.js +0 -38
@@ -0,0 +1,202 @@
1
+ import { Component, Element, h, Prop, Event, Listen, Host } from "@stencil/core";
2
+ export class TabItem {
3
+ constructor() {
4
+ /**
5
+ * Indicates whether the tab is currently active
6
+ */
7
+ this.selected = false;
8
+ this.show = true;
9
+ /**
10
+ * The id of the tab, linked to a tab panel.
11
+ */
12
+ this.tabId = "";
13
+ this.tabClicked = (ev) => {
14
+ ev.preventDefault();
15
+ this.tabSelected.emit({ tabId: this.tabId });
16
+ };
17
+ this.tabPressed = (ev) => {
18
+ const key = ev.key;
19
+ if (key === "Enter" || key === " ") {
20
+ ev.preventDefault();
21
+ this.tabSelected.emit({ tabId: this.tabId });
22
+ }
23
+ else if (key === "Tab") {
24
+ this.keydownOnTabItem.emit({ tabItem: this.el, key: ev.key });
25
+ }
26
+ else {
27
+ ev.preventDefault();
28
+ this.keydownOnTabItem.emit({ tabItem: this.el, key: ev.key });
29
+ }
30
+ };
31
+ }
32
+ get parentTabList() {
33
+ return this.el.parentElement;
34
+ }
35
+ toggleTabbingOn() {
36
+ this.linkEl && this.linkEl.classList.add("user-is-tabbing");
37
+ }
38
+ toggleTabbingOff() {
39
+ this.linkEl && this.linkEl.classList.remove("user-is-tabbing");
40
+ }
41
+ componentWillLoad() {
42
+ // @ts-ignore
43
+ this.el.focus = function () {
44
+ const linkEl = this.shadowRoot.querySelector("a");
45
+ linkEl && linkEl.focus();
46
+ };
47
+ }
48
+ componentDidLoad() {
49
+ this.tabItemLoaded.emit();
50
+ }
51
+ render() {
52
+ let classes = this.show ? "" : "hide ";
53
+ classes += this.parentTabList && this.parentTabList.customBackground == "dark" ? "dark" : "";
54
+ let styles = {};
55
+ const padding = this.parentTabList && this.parentTabList.customPadding;
56
+ if (padding) {
57
+ const bkgSize = parseInt(padding, 10) * 2 || 0;
58
+ const units = padding.split(/([0-9]+)/).pop();
59
+ styles = {
60
+ "padding-left": this.parentTabList.customPadding,
61
+ "padding-right": this.parentTabList.customPadding,
62
+ "background-size": `calc(100% - ${bkgSize}${units}) 3px`,
63
+ };
64
+ }
65
+ return (h(Host, { role: "presentation" },
66
+ h("li", { class: "tab-item", role: "presentation" },
67
+ h("a", { class: `tab ${classes}`, style: styles, role: "tab", ref: (el) => (this.linkEl = el), onClick: this.tabClicked, id: `tab-link-${this.tabId}`, onKeyDown: (ev) => this.tabPressed(ev), "aria-selected": this.selected ? "true" : "false", tabindex: this.selected ? 0 : -1 },
68
+ h("slot", null)))));
69
+ }
70
+ static get is() { return "wm-tab-item"; }
71
+ static get encapsulation() { return "shadow"; }
72
+ static get originalStyleUrls() { return {
73
+ "$": ["wm-tab-item.scss"]
74
+ }; }
75
+ static get styleUrls() { return {
76
+ "$": ["wm-tab-item.css"]
77
+ }; }
78
+ static get properties() { return {
79
+ "selected": {
80
+ "type": "boolean",
81
+ "mutable": false,
82
+ "complexType": {
83
+ "original": "boolean",
84
+ "resolved": "boolean",
85
+ "references": {}
86
+ },
87
+ "required": false,
88
+ "optional": false,
89
+ "docs": {
90
+ "tags": [],
91
+ "text": "Indicates whether the tab is currently active"
92
+ },
93
+ "attribute": "selected",
94
+ "reflect": false,
95
+ "defaultValue": "false"
96
+ },
97
+ "show": {
98
+ "type": "boolean",
99
+ "mutable": false,
100
+ "complexType": {
101
+ "original": "boolean",
102
+ "resolved": "boolean",
103
+ "references": {}
104
+ },
105
+ "required": false,
106
+ "optional": false,
107
+ "docs": {
108
+ "tags": [],
109
+ "text": ""
110
+ },
111
+ "attribute": "show",
112
+ "reflect": false,
113
+ "defaultValue": "true"
114
+ },
115
+ "tabId": {
116
+ "type": "string",
117
+ "mutable": false,
118
+ "complexType": {
119
+ "original": "string",
120
+ "resolved": "string",
121
+ "references": {}
122
+ },
123
+ "required": false,
124
+ "optional": false,
125
+ "docs": {
126
+ "tags": [],
127
+ "text": "The id of the tab, linked to a tab panel."
128
+ },
129
+ "attribute": "tab-id",
130
+ "reflect": false,
131
+ "defaultValue": "\"\""
132
+ }
133
+ }; }
134
+ static get events() { return [{
135
+ "method": "tabSelected",
136
+ "name": "tabSelected",
137
+ "bubbles": true,
138
+ "cancelable": true,
139
+ "composed": true,
140
+ "docs": {
141
+ "tags": [],
142
+ "text": ""
143
+ },
144
+ "complexType": {
145
+ "original": "{ tabId: string }",
146
+ "resolved": "{ tabId: string; }",
147
+ "references": {}
148
+ }
149
+ }, {
150
+ "method": "keydownOnTabItem",
151
+ "name": "keydownOnTabItem",
152
+ "bubbles": true,
153
+ "cancelable": true,
154
+ "composed": true,
155
+ "docs": {
156
+ "tags": [],
157
+ "text": ""
158
+ },
159
+ "complexType": {
160
+ "original": "{\n tabItem: HTMLWmTabItemElement;\n key: string;\n }",
161
+ "resolved": "{ tabItem: HTMLWmTabItemElement; key: string; }",
162
+ "references": {
163
+ "HTMLWmTabItemElement": {
164
+ "location": "global"
165
+ }
166
+ }
167
+ }
168
+ }, {
169
+ "method": "tabItemLoaded",
170
+ "name": "tabItemLoaded",
171
+ "bubbles": true,
172
+ "cancelable": true,
173
+ "composed": true,
174
+ "docs": {
175
+ "tags": [],
176
+ "text": ""
177
+ },
178
+ "complexType": {
179
+ "original": "{ tab: HTMLWmTabItemElement }",
180
+ "resolved": "{ tab: HTMLWmTabItemElement; }",
181
+ "references": {
182
+ "HTMLWmTabItemElement": {
183
+ "location": "global"
184
+ }
185
+ }
186
+ }
187
+ }]; }
188
+ static get elementRef() { return "el"; }
189
+ static get listeners() { return [{
190
+ "name": "keydown",
191
+ "method": "toggleTabbingOn",
192
+ "target": "document",
193
+ "capture": false,
194
+ "passive": false
195
+ }, {
196
+ "name": "click",
197
+ "method": "toggleTabbingOff",
198
+ "target": "document",
199
+ "capture": false,
200
+ "passive": false
201
+ }]; }
202
+ }
@@ -0,0 +1,73 @@
1
+ /* --------------------------------------
2
+ 1. Box-shadow
3
+ -------------------------------------- */
4
+ /* --------------------------------------
5
+ 2. Border-radius
6
+ -------------------------------------- */
7
+ /* --------------------------------------
8
+ 3. Transforms
9
+ -------------------------------------- */
10
+ /* --------------------------------------
11
+ 4. Button Focus
12
+ -------------------------------------- */
13
+ /* --------------------------------------
14
+ 5. Flex
15
+ -------------------------------------- */
16
+ /* --------------------------------------
17
+ 6. Button Hover
18
+ -------------------------------------- */
19
+ /* --------------------------------------
20
+ 7. Screen Reader Only
21
+ -------------------------------------- */
22
+ /* --------------------------------------
23
+ 8. Label styles
24
+ this mixin includes all the styles for the label
25
+ + flex rules on the parent container to switch between top and left position
26
+ + srOnly when label is hidden
27
+ Assumes the following markup:
28
+ div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
29
+ .wrapper is for the flex rules
30
+ .label-wrapper is to set the height of the label when positioned left so it's the same height as
31
+ the input. It can't be done directly on .label because of possible line wrapping.
32
+ When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
33
+ (they can't be aligned on the baseline because of possible description text and error message)
34
+ -------------------------------------- */
35
+ /********************************************************************************************/
36
+ /* DO NOT USE THESE DIRECTLY, ASSIGN THEM TO VARIABLES NAMED AFTER FUNCTIONALITY, SEE BELOW */
37
+ /********************************************************************************************/
38
+ /* USAGE */
39
+ /* BELOW IS BEFORE WE HAD THE COLOR PALETTE FROM UI */
40
+ /* TODO: replace with vars above whenever possible */
41
+ /* Buttons */
42
+ /* VIA */
43
+ :host,
44
+ wm-tab-list {
45
+ position: relative;
46
+ white-space: nowrap;
47
+ height: 100%;
48
+ display: block;
49
+ }
50
+ :host *,
51
+ wm-tab-list * {
52
+ box-sizing: border-box;
53
+ }
54
+ :host .tabcontainer,
55
+ wm-tab-list .tabcontainer {
56
+ margin: 0;
57
+ margin-left: -24px;
58
+ width: 100%;
59
+ height: 4.0625rem;
60
+ display: flex;
61
+ flex-direction: row;
62
+ align-items: center;
63
+ padding: 0;
64
+ }
65
+ :host .tabcontainer.dark,
66
+ wm-tab-list .tabcontainer.dark {
67
+ background: #353b48;
68
+ margin: 0;
69
+ }
70
+ :host wm-select,
71
+ wm-tab-list wm-select {
72
+ padding: 0.375rem 0;
73
+ }
@@ -1,12 +1,7 @@
1
- import { r as registerInstance, e as createEvent, i as forceUpdate, h, f as Host, g as getElement } from './index-20b65f86.js';
2
- import { d as debounce } from './functions-316c1b23.js';
3
-
4
- const wmTabListCss = ":host,wm-tab-list{position:relative;white-space:nowrap;height:100%;display:block}:host *,wm-tab-list *{box-sizing:border-box}:host .tabcontainer,wm-tab-list .tabcontainer{margin:0;margin-left:-24px;width:100%;height:4.0625rem;display:flex;flex-direction:row;align-items:center;padding:0}:host .tabcontainer.dark,wm-tab-list .tabcontainer.dark{background:#353b48;margin:0}:host wm-select,wm-tab-list wm-select{padding:0.375rem 0}";
5
-
6
- const TabList = class {
7
- constructor(hostRef) {
8
- registerInstance(this, hostRef);
9
- this.tabSelected = createEvent(this, "tabSelected", 7);
1
+ import { forceUpdate, Component, Prop, Element, h, Watch, Listen, Host, Event } from "@stencil/core";
2
+ import { debounce } from "../../../global/functions";
3
+ export class TabList {
4
+ constructor() {
10
5
  /**
11
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.
12
7
  */
@@ -179,7 +174,8 @@ const TabList = class {
179
174
  "margin-left": "-" + this.customPadding,
180
175
  };
181
176
  }
182
- return (h("ul", { class: `tabcontainer ${this.customBackground || ""}`, style: margins, role: "tablist" }, h("slot", null)));
177
+ return (h("ul", { class: `tabcontainer ${this.customBackground || ""}`, style: margins, role: "tablist" },
178
+ h("slot", null)));
183
179
  }
184
180
  }
185
181
  renderOptions() {
@@ -191,11 +187,129 @@ const TabList = class {
191
187
  render() {
192
188
  return h(Host, { class: this.menuLayout ? "menu" : "" }, this.renderMenuOrTabs());
193
189
  }
194
- get el() { return getElement(this); }
195
- static get watchers() { return {
196
- "selectedTab": ["setSelected"]
190
+ static get is() { return "wm-tab-list"; }
191
+ static get encapsulation() { return "shadow"; }
192
+ static get originalStyleUrls() { return {
193
+ "$": ["wm-tab-list.scss"]
197
194
  }; }
198
- };
199
- TabList.style = wmTabListCss;
200
-
201
- export { TabList as wm_tab_list };
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"
267
+ }
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
+ }
@@ -0,0 +1,57 @@
1
+ /* --------------------------------------
2
+ 1. Box-shadow
3
+ -------------------------------------- */
4
+ /* --------------------------------------
5
+ 2. Border-radius
6
+ -------------------------------------- */
7
+ /* --------------------------------------
8
+ 3. Transforms
9
+ -------------------------------------- */
10
+ /* --------------------------------------
11
+ 4. Button Focus
12
+ -------------------------------------- */
13
+ /* --------------------------------------
14
+ 5. Flex
15
+ -------------------------------------- */
16
+ /* --------------------------------------
17
+ 6. Button Hover
18
+ -------------------------------------- */
19
+ /* --------------------------------------
20
+ 7. Screen Reader Only
21
+ -------------------------------------- */
22
+ /* --------------------------------------
23
+ 8. Label styles
24
+ this mixin includes all the styles for the label
25
+ + flex rules on the parent container to switch between top and left position
26
+ + srOnly when label is hidden
27
+ Assumes the following markup:
28
+ div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
29
+ .wrapper is for the flex rules
30
+ .label-wrapper is to set the height of the label when positioned left so it's the same height as
31
+ the input. It can't be done directly on .label because of possible line wrapping.
32
+ When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
33
+ (they can't be aligned on the baseline because of possible description text and error message)
34
+ -------------------------------------- */
35
+ /********************************************************************************************/
36
+ /* DO NOT USE THESE DIRECTLY, ASSIGN THEM TO VARIABLES NAMED AFTER FUNCTIONALITY, SEE BELOW */
37
+ /********************************************************************************************/
38
+ /* USAGE */
39
+ /* BELOW IS BEFORE WE HAD THE COLOR PALETTE FROM UI */
40
+ /* TODO: replace with vars above whenever possible */
41
+ /* Buttons */
42
+ /* VIA */
43
+ wm-tab-panel {
44
+ visibility: inherit;
45
+ }
46
+ wm-tab-panel.tab-hidden {
47
+ display: none;
48
+ }
49
+ wm-tab-panel:active {
50
+ outline: none;
51
+ }
52
+ wm-tab-panel:focus {
53
+ outline: none;
54
+ }
55
+ wm-tab-panel.user-is-tabbing:focus {
56
+ outline: -webkit-focus-ring-color auto 5px;
57
+ }
@@ -0,0 +1,104 @@
1
+ import { Component, Element, Prop, Host, h, Event, Listen } from "@stencil/core";
2
+ import { generateId } from "../../../global/functions";
3
+ export class TabPanel {
4
+ constructor() {
5
+ /**
6
+ * Indicates whether the panel should be displayed or not.
7
+ */
8
+ this.active = false;
9
+ /**
10
+ * The id of the panel, linked to a tabItem in the tablist.
11
+ */
12
+ this.tabId = "";
13
+ }
14
+ componentWillLoad() {
15
+ !this.el.id && this.el.setAttribute("id", generateId());
16
+ }
17
+ componentDidLoad() {
18
+ this.tabPanelLoaded.emit({ tabId: this.tabId });
19
+ }
20
+ toggleTabbingOn() {
21
+ this.el.classList.add("user-is-tabbing");
22
+ }
23
+ toggleTabbingOff() {
24
+ this.el.classList.remove("user-is-tabbing");
25
+ }
26
+ render() {
27
+ return (h(Host, { role: "tabpanel", "aria-hidden": this.active ? "false" : "true", class: { "tab-hidden": !this.active }, onBlur: () => (this.el.tabIndex = -1), tabIndex: -1 }));
28
+ }
29
+ static get is() { return "wm-tab-panel"; }
30
+ static get originalStyleUrls() { return {
31
+ "$": ["wm-tab-panel.scss"]
32
+ }; }
33
+ static get styleUrls() { return {
34
+ "$": ["wm-tab-panel.css"]
35
+ }; }
36
+ static get properties() { return {
37
+ "active": {
38
+ "type": "boolean",
39
+ "mutable": true,
40
+ "complexType": {
41
+ "original": "boolean",
42
+ "resolved": "boolean",
43
+ "references": {}
44
+ },
45
+ "required": false,
46
+ "optional": false,
47
+ "docs": {
48
+ "tags": [],
49
+ "text": "Indicates whether the panel should be displayed or not."
50
+ },
51
+ "attribute": "active",
52
+ "reflect": false,
53
+ "defaultValue": "false"
54
+ },
55
+ "tabId": {
56
+ "type": "string",
57
+ "mutable": true,
58
+ "complexType": {
59
+ "original": "string",
60
+ "resolved": "string",
61
+ "references": {}
62
+ },
63
+ "required": false,
64
+ "optional": false,
65
+ "docs": {
66
+ "tags": [],
67
+ "text": "The id of the panel, linked to a tabItem in the tablist."
68
+ },
69
+ "attribute": "tab-id",
70
+ "reflect": false,
71
+ "defaultValue": "\"\""
72
+ }
73
+ }; }
74
+ static get events() { return [{
75
+ "method": "tabPanelLoaded",
76
+ "name": "tabPanelLoaded",
77
+ "bubbles": true,
78
+ "cancelable": true,
79
+ "composed": true,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": ""
83
+ },
84
+ "complexType": {
85
+ "original": "{ tabId: string }",
86
+ "resolved": "{ tabId: string; }",
87
+ "references": {}
88
+ }
89
+ }]; }
90
+ static get elementRef() { return "el"; }
91
+ static get listeners() { return [{
92
+ "name": "keydown",
93
+ "method": "toggleTabbingOn",
94
+ "target": "document",
95
+ "capture": false,
96
+ "passive": false
97
+ }, {
98
+ "name": "click",
99
+ "method": "toggleTabbingOff",
100
+ "target": "document",
101
+ "capture": false,
102
+ "passive": false
103
+ }]; }
104
+ }