@watermarkinsights/ripple 5.31.1 → 5.32.0-alpha.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.
- package/dist/cjs/{app-globals-18338066.js → app-globals-564ead67.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/priv-navigator-button.cjs.entry.js +1 -1
- package/dist/cjs/priv-navigator-item.cjs.entry.js +1 -1
- package/dist/cjs/ripple.cjs.js +2 -2
- package/dist/cjs/wm-action-menu_2.cjs.entry.js +44 -8
- package/dist/cjs/wm-button.cjs.entry.js +2 -2
- package/dist/cjs/wm-file-list.cjs.entry.js +1 -1
- package/dist/cjs/wm-file.cjs.entry.js +1 -1
- package/dist/cjs/wm-flyout.cjs.entry.js +1 -1
- package/dist/cjs/wm-input.cjs.entry.js +1 -1
- package/dist/cjs/wm-modal-pss_3.cjs.entry.js +4 -4
- package/dist/cjs/wm-modal_3.cjs.entry.js +4 -4
- package/dist/cjs/wm-navigation_3.cjs.entry.js +4 -4
- package/dist/cjs/wm-pagination.cjs.entry.js +1 -1
- package/dist/cjs/wm-search.cjs.entry.js +2 -2
- package/dist/cjs/wm-snackbar.cjs.entry.js +2 -2
- package/dist/cjs/wm-tab-item_3.cjs.entry.js +6 -6
- package/dist/cjs/wm-tag-input.cjs.entry.js +2 -2
- package/dist/cjs/wm-textarea.cjs.entry.js +1 -1
- package/dist/cjs/wm-timepicker.cjs.entry.js +2 -2
- package/dist/cjs/wm-toggletip.cjs.entry.js +3 -3
- package/dist/cjs/wm-uploader.cjs.entry.js +3 -3
- package/dist/collection/components/wm-action-menu/wm-action-menu.css +6 -3
- package/dist/collection/components/wm-action-menu/wm-action-menu.js +186 -6
- package/dist/collection/components/wm-button/wm-button.css +4 -2
- package/dist/collection/components/wm-button/wm-button.js +2 -2
- package/dist/collection/components/wm-file/wm-file.js +1 -1
- package/dist/collection/components/wm-file-list/wm-file-list.js +1 -1
- package/dist/collection/components/wm-flyout/wm-flyout.js +1 -1
- package/dist/collection/components/wm-input/wm-input.js +1 -1
- package/dist/collection/components/wm-menuitem/wm-menuitem.js +1 -1
- package/dist/collection/components/wm-modal/wm-modal-footer.js +1 -1
- package/dist/collection/components/wm-modal/wm-modal-header.js +1 -1
- package/dist/collection/components/wm-modal/wm-modal.js +2 -2
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-footer.js +1 -1
- package/dist/collection/components/wm-modal-pss/wm-modal-pss-header.js +1 -1
- package/dist/collection/components/wm-modal-pss/wm-modal-pss.js +2 -2
- package/dist/collection/components/wm-navigation/wm-navigation-hamburger.js +1 -1
- package/dist/collection/components/wm-navigation/wm-navigation-item.js +1 -1
- package/dist/collection/components/wm-navigation/wm-navigation.js +2 -2
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.js +1 -1
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.js +1 -1
- package/dist/collection/components/wm-pagination/wm-pagination.js +1 -1
- package/dist/collection/components/wm-search/wm-search.js +2 -2
- package/dist/collection/components/wm-snackbar/wm-snackbar.js +2 -2
- package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +2 -2
- package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +3 -3
- package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +1 -1
- package/dist/collection/components/wm-tag-input/wm-tag-input.js +2 -2
- package/dist/collection/components/wm-textarea/wm-textarea.js +1 -1
- package/dist/collection/components/wm-timepicker/wm-timepicker.js +2 -2
- package/dist/collection/components/wm-toggletip/wm-toggletip.js +3 -3
- package/dist/collection/components/wm-uploader/wm-uploader.css +4 -2
- package/dist/collection/components/wm-uploader/wm-uploader.js +2 -2
- package/dist/docs/docs.json +183 -3
- package/dist/docs/props-reference.json +31 -0
- package/dist/docs/skill/wm-action-menu.md +17 -8
- package/dist/docs/skill/wm-button.md +2 -1
- package/dist/esm/{app-globals-404ba075.js → app-globals-badb0121.js} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/priv-navigator-button.entry.js +1 -1
- package/dist/esm/priv-navigator-item.entry.js +1 -1
- package/dist/esm/ripple.js +2 -2
- package/dist/esm/wm-action-menu_2.entry.js +44 -8
- package/dist/esm/wm-button.entry.js +2 -2
- package/dist/esm/wm-file-list.entry.js +1 -1
- package/dist/esm/wm-file.entry.js +1 -1
- package/dist/esm/wm-flyout.entry.js +1 -1
- package/dist/esm/wm-input.entry.js +1 -1
- package/dist/esm/wm-modal-pss_3.entry.js +4 -4
- package/dist/esm/wm-modal_3.entry.js +4 -4
- package/dist/esm/wm-navigation_3.entry.js +4 -4
- package/dist/esm/wm-pagination.entry.js +1 -1
- package/dist/esm/wm-search.entry.js +2 -2
- package/dist/esm/wm-snackbar.entry.js +2 -2
- package/dist/esm/wm-tab-item_3.entry.js +6 -6
- package/dist/esm/wm-tag-input.entry.js +2 -2
- package/dist/esm/wm-textarea.entry.js +1 -1
- package/dist/esm/wm-timepicker.entry.js +2 -2
- package/dist/esm/wm-toggletip.entry.js +3 -3
- package/dist/esm/wm-uploader.entry.js +3 -3
- package/dist/esm-es5/app-globals-badb0121.js +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/priv-navigator-button.entry.js +1 -1
- package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
- package/dist/esm-es5/ripple.js +1 -1
- package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
- package/dist/esm-es5/wm-button.entry.js +1 -1
- package/dist/esm-es5/wm-file-list.entry.js +1 -1
- package/dist/esm-es5/wm-file.entry.js +1 -1
- package/dist/esm-es5/wm-flyout.entry.js +1 -1
- package/dist/esm-es5/wm-input.entry.js +1 -1
- package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -1
- package/dist/esm-es5/wm-modal_3.entry.js +1 -1
- package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
- package/dist/esm-es5/wm-pagination.entry.js +1 -1
- package/dist/esm-es5/wm-search.entry.js +1 -1
- package/dist/esm-es5/wm-snackbar.entry.js +1 -1
- package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
- package/dist/esm-es5/wm-tag-input.entry.js +1 -1
- package/dist/esm-es5/wm-textarea.entry.js +1 -1
- package/dist/esm-es5/wm-timepicker.entry.js +1 -1
- package/dist/esm-es5/wm-toggletip.entry.js +1 -1
- package/dist/esm-es5/wm-uploader.entry.js +1 -1
- package/dist/ripple/{p-c75d5af1.system.entry.js → p-1ae5ff31.system.entry.js} +1 -1
- package/dist/ripple/{p-d6ee031f.entry.js → p-1e61f428.entry.js} +1 -1
- package/dist/ripple/{p-5400030d.system.entry.js → p-1f94b206.system.entry.js} +1 -1
- package/dist/ripple/{p-9d985e27.system.entry.js → p-2176e8fd.system.entry.js} +1 -1
- package/dist/ripple/{p-9a287dfd.entry.js → p-24edf8cf.entry.js} +1 -1
- package/dist/ripple/{p-af2df599.system.entry.js → p-27537e1c.system.entry.js} +1 -1
- package/dist/ripple/{p-e4670975.entry.js → p-319b9b38.entry.js} +1 -1
- package/dist/ripple/p-32dcebc8.system.js +1 -0
- package/dist/ripple/{p-ca3630fb.system.entry.js → p-45a8ce04.system.entry.js} +1 -1
- package/dist/ripple/p-4adccf9b.entry.js +1 -0
- package/dist/ripple/p-4c5d0502.entry.js +1 -0
- package/dist/ripple/{p-bc4ffa23.entry.js → p-53433e48.entry.js} +1 -1
- package/dist/ripple/p-5bbf6b18.system.entry.js +1 -0
- package/dist/ripple/{p-5a274707.entry.js → p-64d5a281.entry.js} +1 -1
- package/dist/ripple/{p-9deec7b8.system.entry.js → p-67497029.system.entry.js} +1 -1
- package/dist/ripple/{p-5f907857.entry.js → p-6f4822c7.entry.js} +1 -1
- package/dist/ripple/{p-2591f07f.entry.js → p-712684c7.entry.js} +1 -1
- package/dist/ripple/{p-cb519e85.entry.js → p-7aba5fcd.entry.js} +1 -1
- package/dist/ripple/{p-facd927d.system.entry.js → p-82650151.system.entry.js} +1 -1
- package/dist/ripple/p-86a0fd66.js +1 -0
- package/dist/ripple/{p-f73d50ee.system.entry.js → p-88f5a3d4.system.entry.js} +1 -1
- package/dist/ripple/{p-9e48d58b.system.entry.js → p-90286c9f.system.entry.js} +1 -1
- package/dist/ripple/{p-fb2607cb.entry.js → p-9af426d5.entry.js} +1 -1
- package/dist/ripple/{p-113926eb.entry.js → p-a040364d.entry.js} +1 -1
- package/dist/ripple/{p-a27f305f.entry.js → p-aa86963b.entry.js} +1 -1
- package/dist/ripple/p-abb6fd0e.system.entry.js +1 -0
- package/dist/ripple/{p-b3c68d4a.system.entry.js → p-b252fb1b.system.entry.js} +1 -1
- package/dist/ripple/{p-3ca113f7.system.entry.js → p-b43cc26c.system.entry.js} +1 -1
- package/dist/ripple/{p-c4285af5.system.entry.js → p-bdad55a5.system.entry.js} +1 -1
- package/dist/ripple/{p-d4c18268.entry.js → p-caae008c.entry.js} +1 -1
- package/dist/ripple/{p-b269d181.entry.js → p-d2fa7cde.entry.js} +1 -1
- package/dist/ripple/{p-e7e4e532.entry.js → p-d5dd3550.entry.js} +1 -1
- package/dist/ripple/{p-00e385ef.system.js → p-d6b38265.system.js} +1 -1
- package/dist/ripple/p-d7681d5c.entry.js +1 -0
- package/dist/ripple/{p-a83561fb.system.entry.js → p-d96d80a5.system.entry.js} +1 -1
- package/dist/ripple/{p-62911dec.system.entry.js → p-dc4c69b5.system.entry.js} +1 -1
- package/dist/ripple/{p-f57d13cb.system.entry.js → p-de58531e.system.entry.js} +1 -1
- package/dist/ripple/{p-1065318f.entry.js → p-ed03d492.entry.js} +1 -1
- package/dist/ripple/{p-c895a1f9.entry.js → p-ed8f92d5.entry.js} +1 -1
- package/dist/ripple/{p-a1fa8314.system.entry.js → p-f18aef8d.system.entry.js} +1 -1
- package/dist/ripple/p-f5be8dbb.system.entry.js +1 -0
- package/dist/ripple/{p-d4ee4a88.system.entry.js → p-fb594105.system.entry.js} +1 -1
- package/dist/ripple/{p-4c8b6b15.entry.js → p-fbc9bfd2.entry.js} +1 -1
- package/dist/ripple/ripple.esm.js +1 -1
- package/dist/ripple/ripple.js +1 -1
- package/dist/types/components/wm-action-menu/wm-action-menu.d.ts +64 -0
- package/dist/types/components/wm-button/wm-button.d.ts +2 -1
- package/dist/types/components.d.ts +170 -2
- package/package.json +2 -2
- package/dist/esm-es5/app-globals-404ba075.js +0 -1
- package/dist/ripple/p-330068df.system.js +0 -1
- package/dist/ripple/p-4bc07b48.system.entry.js +0 -1
- package/dist/ripple/p-8011a8f9.entry.js +0 -1
- package/dist/ripple/p-8fa5551f.js +0 -1
- package/dist/ripple/p-9bbe78c8.system.entry.js +0 -1
- package/dist/ripple/p-db74df09.entry.js +0 -1
- package/dist/ripple/p-e38cfdb1.entry.js +0 -1
- package/dist/ripple/p-fa6c377a.system.entry.js +0 -1
|
@@ -223,11 +223,11 @@ export class Snackbar {
|
|
|
223
223
|
}, onKeyDown: (ev) => ev.key === "Enter" && this.snackLinkClicked(notification) }, h("span", { "aria-hidden": "true" }, notification.link), notification.newWindow && h("div", { class: "svg-icon svg-open-in-new" }))), (!notification.link && notification.action) && (h("button", { id: `action-${notification.id}`, class: "link", onClick: () => this.snackLinkClicked(notification), onKeyDown: (ev) => ev.key === "Enter" && this.snackLinkClicked(notification) }, notification.action))), h("button", { id: `close-button-${notification.id}`, "aria-label": this.closeSnackMessage, class: "closesnack", tabindex: notification.link || notification.action ? 0 : -1, onClick: () => this.snackDismissed(notification), onMouseEnter: (ev) => showTooltip("bottom", ev.target, globalMessages.close), onMouseLeave: () => hideTooltip(), onFocus: (ev) => this.isTabbing && showTooltip("bottom", ev.target, globalMessages.close), onBlur: () => hideTooltip() }, h("div", { class: "svg-icon svg-close" }))), h("div", { class: "sr-only", tabindex: notification.link || notification.action ? 0 : -1, onFocus: () => (notification.link || notification.action) && this.snackDismissed(notification) })))));
|
|
224
224
|
}
|
|
225
225
|
render() {
|
|
226
|
-
return (h(Host, { key: '
|
|
226
|
+
return (h(Host, { key: 'f78ea7809df466e6a34f1b1fafaa6729fb9a8dcf' }, h("div", { key: '27ecea571e660d3de9280d56594e2bef26b451a7', ref: (el) => (this.snackAreaEl = el), class: {
|
|
227
227
|
"list-wrapper": true,
|
|
228
228
|
"user-is-tabbing": this.isTabbing,
|
|
229
229
|
empty: this.parsedNotifications.length == 0,
|
|
230
|
-
} }, this.renderSnackbars()), h("div", { key: '
|
|
230
|
+
} }, this.renderSnackbars()), h("div", { key: 'ba10259a8a04a8006a22bdec6317871c6f8fa569', class: "sr-only", "aria-live": "polite", "aria-atomic": "false", id: `wm-live-region-${this.uid}`, ref: (el) => (this.liveRegionEl = el) }, this.announcement)));
|
|
231
231
|
}
|
|
232
232
|
static get is() { return "wm-snackbar"; }
|
|
233
233
|
static get encapsulation() { return "shadow"; }
|
|
@@ -44,9 +44,9 @@ export class TabItem {
|
|
|
44
44
|
}
|
|
45
45
|
render() {
|
|
46
46
|
const isDark = this.parentTabList && this.parentTabList.customBackground == "dark";
|
|
47
|
-
return (h(Host, { key: '
|
|
47
|
+
return (h(Host, { key: '3618b1f157b1ba203f0a7c6d833bc1cffc1cdb29', role: "presentation" }, h("li", { key: 'e39008c432e624d081f809e194972ef1b22faf8e', class: `tab-item ${isDark ? "dark" : ""}`, role: "presentation" }, h("a", { key: 'aaa29b9cb2d05b63c01d70fbd4d46270619068f1', class: `tab`, role: "tab", ref: (el) => (this.linkEl = el), id: `tab-link-${this.tabId}`, onKeyDown: (ev) => this.tabPressed(ev), "aria-selected": this.selected ? "true" : "false", tabindex: this.selected ? 0 : -1, onClick: this.tabClicked, onFocus: () => {
|
|
48
48
|
this.wmIntTabFocused.emit({ tabItem: this.el });
|
|
49
|
-
} }, h("slot", { key: '
|
|
49
|
+
} }, h("slot", { key: '9aa2edb5576a2a552e447cc0f006669875c85114' })))));
|
|
50
50
|
}
|
|
51
51
|
static get is() { return "wm-tab-item"; }
|
|
52
52
|
static get encapsulation() { return "shadow"; }
|
|
@@ -348,15 +348,15 @@ export class TabList {
|
|
|
348
348
|
this.announcement = message;
|
|
349
349
|
}
|
|
350
350
|
render() {
|
|
351
|
-
return (h(Host, { key: '
|
|
351
|
+
return (h(Host, { key: '993fd37ad7196da597d0dc6c434b8c21300d8514' }, h("div", { key: 'bd81750389b2df6a8b9aa53908937460cbb50ab1', class: "component-wrapper" }, h("wm-button", { key: 'd1ce3d5c58d9ff54c139456e5aa5eb92bacb3f1d', class: `left-arrow ${this.scrollArrowsVisible ? "visible" : ""}`, "aria-controls": "tablist", customBackground: this.customBackground, buttonType: "navigational", icon: "#previous", tooltip: intl.formatMessage({
|
|
352
352
|
id: "tabs.showPreviousTabs",
|
|
353
353
|
defaultMessage: "Show previous tabs",
|
|
354
354
|
description: "Tooltip for button scrolling tab group.",
|
|
355
|
-
}), onClick: (ev) => this.handleLeftArrowClick(ev) }), h("ul", { key: '
|
|
355
|
+
}), onClick: (ev) => this.handleLeftArrowClick(ev) }), h("ul", { key: 'c46aa8946e82fdc7e3a28c45f9eec8c468ba7439', 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: '5a7fc1409af3fb2aa19428bbfca0d5a4e52316ba' })), h("wm-button", { key: '6c689fd91c790e9d0cab08082b185385cfbce67b', class: `right-arrow ${this.scrollArrowsVisible ? "visible" : ""}`, "aria-controls": "tablist", customBackground: this.customBackground, buttonType: "navigational", icon: "#next", tooltip: intl.formatMessage({
|
|
356
356
|
id: "tabs.showNextTabs",
|
|
357
357
|
defaultMessage: "Show next tabs",
|
|
358
358
|
description: "Tooltip for button scrolling tab group.",
|
|
359
|
-
}), onClick: (ev) => this.handleRightArrowClick(ev) }), h("span", { key: '
|
|
359
|
+
}), onClick: (ev) => this.handleRightArrowClick(ev) }), h("span", { key: 'dfc8bc859e7928f0b65f44419d9f649d14c763f4', "aria-live": "assertive", class: "sr-only", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
|
|
360
360
|
}
|
|
361
361
|
static get is() { return "wm-tab-list"; }
|
|
362
362
|
static get encapsulation() { return "shadow"; }
|
|
@@ -30,7 +30,7 @@ export class TabPanel {
|
|
|
30
30
|
this.tabPanelLoaded.emit({ tabId: this.tabId });
|
|
31
31
|
}
|
|
32
32
|
render() {
|
|
33
|
-
return h(Host, { key: '
|
|
33
|
+
return h(Host, { key: '64fa712a43e184155bb8b43a644bc5c13c7669ce', role: "tabpanel", tabIndex: "-1", class: { "tab-hidden": !this.active } });
|
|
34
34
|
}
|
|
35
35
|
static get is() { return "wm-tab-panel"; }
|
|
36
36
|
static get originalStyleUrls() {
|
|
@@ -1050,10 +1050,10 @@ export class TagInput {
|
|
|
1050
1050
|
}
|
|
1051
1051
|
}
|
|
1052
1052
|
render() {
|
|
1053
|
-
return (h("div", { key: '
|
|
1053
|
+
return (h("div", { key: '640a70ccebab0056bc389299d01d84e3cd8f10ae', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, h("div", { key: 'ac971e515ca1e9db1d240909f902b34e9e984c7e', class: "label-wrapper" }, h("label", { key: '46fe662e59425fbd3b85be57d211c5990a715e60', class: "label", htmlFor: "input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label), this.labelPosition !== "none" && this.requiredField && (h("div", { key: '638047c3443ff5991bdb4eac506ed8e9e5f3eb8e', class: "required", "aria-hidden": "true" }, "*"))), h("div", { key: '0e2d1f9a7b4c4427caf8d1a095a758b868316135', class: `field-wrapper ${this.el.shadowRoot.activeElement === this.inputEl ? "focused" : ""} ${this.errorMessage ? "invalid" : ""}`, ref: (el) => (this.fieldWrapperEl = el) }, h("div", { key: '092ee2d218336d52c4126d6c986950da99aab8e5', class: "upper-row" }, h("div", { key: 'da6c1eadfd1125716a2fdf2a4b9dbabb201d30c2', class: "svg-icon svg-search" }), h("div", { key: '953c175c6ddccb4f1a745edbf4fb67a78bdf4b73', class: `tags-and-input-wrapper` }, h("ul", { key: '47750731e93832464c2cf2715307a962ca06a8b9', ref: (el) => (this.tagAreaEl = el), class: `tag-area ${this.taggedOptions.length === 0 && "empty"} ${this.isKeying ? "user-is-keying" : ""}`, role: "listbox", "aria-activedescendant": this.focusedTag ? this.focusedTag.id : null, "aria-orientation": "horizontal", "aria-labelledby": "sr-instructions", tabindex: this._tagEls.length > 0 ? 0 : -1, "aria-describedby": `info max-tags`, onFocus: (ev) => this.handleTagAreaFocus(ev), onBlur: (ev) => {
|
|
1054
1054
|
this.focusedTagIndex = undefined;
|
|
1055
1055
|
this.handleBlur(ev);
|
|
1056
|
-
}, onKeyDown: (ev) => this.handleTagAreaKeyDown(ev) }, this.renderTags()), h("div", { key: '
|
|
1056
|
+
}, onKeyDown: (ev) => this.handleTagAreaKeyDown(ev) }, this.renderTags()), h("div", { key: 'c570397e9cbdc1233d3727d23a8838444baa3259', class: "sr-only", id: "sr-instructions" }, this.label, ". ", this.tagAreaInstructions), this.isDropdown && this.renderDropdownInput(), this.isTable && this.renderTableInput()), this.isDropdown && (h("div", { key: 'c7d60ecb6dbef20d1f001e8838a4b44fe87e99e6', class: "character-count" }, this.charCount, "/", this.characterLimit))), this.renderTagCounter(), this.isDropdown && this.renderDropdown()), this.info && (h("div", { key: '73f39cc351095ce6f135406d772129d2bb7fc876', id: "info", class: "info-text" }, this.info)), h("div", { key: '83717816d5d9885550ada0b2711460f472b2db72', id: "error" }, this.errorMessage), h("div", { key: 'b357dd0b58cfd2c62af27717d32f1b9eba1ed092', class: "sr-only", "aria-live": "polite", ref: (el) => (this.liveRegionEl = el), "aria-atomic": "true" }, this.liveRegionMessage), this.isTable && this.renderTable()));
|
|
1057
1057
|
}
|
|
1058
1058
|
static get is() { return "wm-tag-input"; }
|
|
1059
1059
|
static get encapsulation() { return "shadow"; }
|
|
@@ -112,7 +112,7 @@ export class Textarea {
|
|
|
112
112
|
this.announcement = message;
|
|
113
113
|
}
|
|
114
114
|
render() {
|
|
115
|
-
return (h("div", { key: '
|
|
115
|
+
return (h("div", { key: 'eb4d219f171a22824422c743631b0543fcb3e88d', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, h("div", { key: '1f3c97d11cdebc8e027557a45b7e24e3aa5a8786', class: "label-wrapper" }, h("label", { key: '4779c1ccdca666484405938d66ed4211ba8276da', htmlFor: "inputfield", class: "label", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label, this.characterLimit && (h("span", { key: '4b99f85729a23f39589e9b4910daaa09d6e229af', class: "sr-only" }, " ", globalMessages.getCharacterLimit(this.characterLimit)))), this.labelPosition !== "none" && this.requiredField && (h("span", { key: '824e6c762505edae20fcce0fa3c790633d929f0d', class: "required", "aria-hidden": "true" }, "*"))), h("div", { key: '92814c32245d9ae69d3b8631236c3c7ddcc8552f', class: "inner-wrapper" }, h("div", { key: 'b838697433aa0fbfa7814d87f00cf06a41d1f489', class: `inputfield-wrapper ${this.errorMessage ? "invalid" : ""}`, style: this.inputWidth ? { width: this.inputWidth } : {} }, h("textarea", { key: 'b2998ed48399e44f8eec90a47a7fbd2c3523884c', id: "inputfield", disabled: this.isDisabled, "aria-describedby": "info error", onInput: (ev) => this.handleInput(ev), onBlur: () => this.handleBlur(), placeholder: this.placeholder, autocomplete: "off", "aria-required": this.requiredField ? "true" : null, value: this.value, rows: 3, style: { height: this.inputHeight } }), this.characterLimit && typeof this.characterLimit === "number" ? (h("div", { class: `character-count ${this.value.length > this.characterLimit ? "exceeded" : ""}` }, this.charCount, "/", this.characterLimit)) : ("")), this.info && (h("div", { key: '9328ab50ac29585c0337fa3070685d57ff587754', id: "info", class: "info" }, this.info)), h("div", { key: '340b8b46519c2c1a50ed2eb85d9f1f198f5d8be9', id: "error", class: "error-message" }, this.errorMessage), h("div", { key: '26bf56597d4ac27be5127861021dace5ff1ca548', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
|
|
116
116
|
}
|
|
117
117
|
static get is() { return "wm-textarea"; }
|
|
118
118
|
static get encapsulation() { return "shadow"; }
|
|
@@ -390,13 +390,13 @@ export class Timepicker {
|
|
|
390
390
|
return this.times.map((time, index) => (h("li", { id: `option${index + 1}`, "data-time": time, role: "option", onClick: () => this.handleOptionClick(time) }, this.reformatTimeInternal("12", time))));
|
|
391
391
|
}
|
|
392
392
|
render() {
|
|
393
|
-
return (h(Host, { key: '
|
|
393
|
+
return (h(Host, { key: '016a1f00b245ba172f3f169dd2a5fe5506efefd3', onBlur: () => this.close(false) }, h("div", { key: 'e831d564c3f40c550c64232315c70abe9f18d2b5', class: `wrapper label-${this.labelPosition} ${!!this.errorMessage ? "invalid" : ""}`, ref: (t) => (this.tpWrapper = t) }, h("div", { key: 'afcbacb671fe9e6cf92c16ab8152c2ff42114fba', class: "label-wrapper" }, this.labelPosition !== "none" && (h("label", { key: '607dc37f7571ea67e5cf7163cc3d58d7e4fdd2b2', id: "label", class: "label", htmlFor: "time-input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.label)), this.labelPosition !== "none" && this.requiredField && (h("div", { key: 'fd5a00ab8125419c3a046cc7d1dacc3ea84595d5', "aria-hidden": "true", class: "required" }, "*"))), h("div", { key: 'cd371331471f604571197a0f5b560f84533dbdc5' }, h("div", { key: 'e99fb3f0ad4432f42292c4263c5953d54bd43b20', class: "inner-wrapper" }, h("input", { key: '4d98f9bdd05127f9f62849f06c18ebbe363f4d09', id: "time-input", "aria-label": this.label, "aria-describedby": "error", ref: (el) => (this.inputEl = el), onBlur: () => this.handleInputBlur(), onInput: () => (this.value = this.inputEl.value), disabled: this.isDisabled, "aria-required": this.requiredField ? "true" : null, placeholder: this.timeFormat, autocomplete: "off", value: this.value, onFocus: () => this.tpWrapper.classList.add("focus") }), h("button", { key: '0f239c4fbaa9882c1e7195fbf21e28b304f08d85', id: "btn", ref: (el) => (this.buttonEl = el), disabled: this.isDisabled, "aria-controls": "list", "aria-expanded": this.isExpanded ? "true" : "false", "aria-label": this.buttonAriaLabel, "aria-describedby": "time-input", onClick: () => (this.isExpanded ? this.close() : this.open()),
|
|
394
394
|
// This addresses an issue in Safari, where clicking buttons does not focus them
|
|
395
395
|
// if the button does not receive focus when clicked, Timepicker incorrectly emits a blur event
|
|
396
396
|
onMouseDown: (ev) => {
|
|
397
397
|
ev.preventDefault();
|
|
398
398
|
this.buttonEl.focus();
|
|
399
|
-
} }, h("span", { key: '
|
|
399
|
+
} }, h("span", { key: '526bb1be8422122744f54b89eac5b165ba21093d', class: "svg-icon svg-time" })), h("ul", { key: '463c60e7e63ebb96b6235b6e70c684f8e16bf286', class: `options ${this.isExpanded ? "open" : ""} ${this.openUp ? "upwards" : ""}`, id: "list", role: "listbox", "aria-labelledby": "label", "aria-describedby": this.isExpanded ? "collapsed" : null, tabindex: -1, ref: (el) => (this.optionsEl = el) }, this.renderOptions())), h("div", { key: '953f663fc062c4ed512d34b86b462c879de715c9', id: "error", class: "error" }, this.errorMessage)), h("div", { key: 'f213fc5946d1dff54582211ec45b9ab970f95c40', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }))));
|
|
400
400
|
}
|
|
401
401
|
static get is() { return "wm-timepicker"; }
|
|
402
402
|
static get encapsulation() { return "shadow"; }
|
|
@@ -278,11 +278,11 @@ export class Toggletip {
|
|
|
278
278
|
}
|
|
279
279
|
}
|
|
280
280
|
render() {
|
|
281
|
-
return (h(Host, { key: '
|
|
281
|
+
return (h(Host, { key: 'f345461d843619f11ea783e6918968e4e5867720', class: `size-${this.targetSize}` }, h("button", { key: '8439741b61569e3ca58016982679f8157f28e0c2', ref: (el) => (this.buttonEl = el), class: "button", type: "button", "aria-label": this.label, popoverTarget: "toggletip", popoverTargetAction: "toggle", onClick: () => !this.isOpen && this.open(),
|
|
282
282
|
// In order to position the tooltip identically to the toggletip, its presence is determined by these four events
|
|
283
|
-
onMouseEnter: () => !this.isOpen && showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onMouseLeave: () => hideTooltip(), onFocus: () => !this.isOpen && showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onBlur: () => this.handleBlur() }, this.renderIcon()), h("div", { key: '
|
|
283
|
+
onMouseEnter: () => !this.isOpen && showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onMouseLeave: () => hideTooltip(), onFocus: () => !this.isOpen && showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onBlur: () => this.handleBlur() }, this.renderIcon()), h("div", { key: '38c98942ca1bd5101e3155a3c48a2571a7523388', popover: "", ref: (el) => (this.toggletipEl = el), class: `toggletip ${this.targetSize} ${this.isHidden ? "hidden" : ""}`, id: "toggletip",
|
|
284
284
|
// @ts-ignore - despite what Typescript says, this is a valid event for popover elements
|
|
285
|
-
onToggle: (ev) => this.handlePopoverToggle(ev) }, this.tooltip), h("div", { key: '
|
|
285
|
+
onToggle: (ev) => this.handlePopoverToggle(ev) }, this.tooltip), h("div", { key: '2869c2962e8f77e62b923dd05995f9cf7133ad75', ref: (el) => (this.liveRegionEl = el), class: "live-region sr-only", role: "status", "aria-live": "polite", "aria-atomic": "true" })));
|
|
286
286
|
}
|
|
287
287
|
static get is() { return "wm-toggletip"; }
|
|
288
288
|
static get encapsulation() { return "shadow"; }
|
|
@@ -141,7 +141,7 @@
|
|
|
141
141
|
font-size: 0.75rem;
|
|
142
142
|
font-weight: 700;
|
|
143
143
|
min-height: 2.75rem;
|
|
144
|
-
padding:
|
|
144
|
+
padding: 8px 1.3333333333em;
|
|
145
145
|
cursor: pointer;
|
|
146
146
|
position: relative;
|
|
147
147
|
display: flex;
|
|
@@ -390,7 +390,9 @@
|
|
|
390
390
|
border-color: var(--wmcolor-button-background-positive-hover);
|
|
391
391
|
}
|
|
392
392
|
:host .wm-button.-selector, :host .wm-button.-selector-primary {
|
|
393
|
-
display:
|
|
393
|
+
display: flex;
|
|
394
|
+
align-items: center;
|
|
395
|
+
justify-content: flex-start;
|
|
394
396
|
font-family: inherit;
|
|
395
397
|
font-weight: 700;
|
|
396
398
|
font-size: 0.75rem;
|
|
@@ -388,9 +388,9 @@ export class Uploader {
|
|
|
388
388
|
return (h("div", { class: `drop-area -${this.dropArea}`, ref: (el) => (this.dropAreaEl = el), onDragEnter: (ev) => this.handleDragEnter(ev), onDragOver: (ev) => this.handleDragOver(ev), onDragLeave: (ev) => this.handleDragLeave(ev), onDrop: (ev) => this.handleDrop(ev) }, this.dropArea == "page" && (h("div", { ref: (el) => (this.dropOverlayEl = el), class: "drop-overlay", popover: "manual" }, h("span", { class: "upload-arrow" }), h("span", null, "Drop to Upload")))));
|
|
389
389
|
}
|
|
390
390
|
render() {
|
|
391
|
-
return (h(Host, { key: '
|
|
391
|
+
return (h(Host, { key: '05add4c4caf9470fbc0ba58055850489aaa19561', class: `-${this.dropArea}` }, this.uploaderType == "drop" && this.renderDropArea(), this.label && this.renderLabel(), this.renderHeader(), this.renderListContainer(), h("div", { key: '9890e737b7adf96339895bd033d9c733442385a6', ref: (el) => (this.assertiveLiveRegionEl = el), class: "live-region sr-only", "aria-live": "assertive" // since it's directly linked to the action the user took, it should be read in priority. With polite, some messages get dismissed in favor of the page title
|
|
392
392
|
,
|
|
393
|
-
"aria-atomic": "true" }), h("div", { key: '
|
|
393
|
+
"aria-atomic": "true" }), h("div", { key: 'e5f6c761d81c2349e0889cde728f716cbd30bd55', ref: (el) => (this.politeLiveRegionEl = el), class: "live-region sr-only", "aria-live": "polite", "aria-atomic": "true" })));
|
|
394
394
|
}
|
|
395
395
|
static get is() { return "wm-uploader"; }
|
|
396
396
|
static get encapsulation() { return "shadow"; }
|
package/dist/docs/docs.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"timestamp": "2026-08-
|
|
2
|
+
"timestamp": "2026-08-14T18:38:14",
|
|
3
3
|
"compiler": {
|
|
4
4
|
"name": "@stencil/core",
|
|
5
5
|
"version": "4.21.0",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
32
|
"name": "usageNotes",
|
|
33
|
-
"text": "- The default type is `icon` (three-dot \"more options\" button). Use `text` for a labelled trigger, `selector` or `selector-primary` for a select-box appearance.\n- `button-text` is required when `action-menu-type` is `text`, `selector`, or `selector-primary`.\n- `tooltip` is required when `action-menu-type` is `icon`."
|
|
33
|
+
"text": "- The default type is `icon` (three-dot \"more options\" button). Use `text` for a labelled trigger, `selector` or `selector-primary` for a select-box appearance.\n- `button-text` is required when `action-menu-type` is `text`, `selector`, or `selector-primary`.\n- `tooltip` is required when `action-menu-type` is `icon`.\n- `icon` is optional for `text`, `selector`, and `selector-primary` types, rendered alongside `button-text`. For `icon` type, `icon` overrides the default \"more options\" icon."
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
"name": "example",
|
|
@@ -40,6 +40,22 @@
|
|
|
40
40
|
"name": "example",
|
|
41
41
|
"text": "{react} Icon action menu\n<WmActionMenu tooltip=\"More options\">\n<WmMenuitem>Edit</WmMenuitem>\n<WmMenuitem>Delete</WmMenuitem>\n</WmActionMenu>"
|
|
42
42
|
},
|
|
43
|
+
{
|
|
44
|
+
"name": "example",
|
|
45
|
+
"text": "{html} Icon action menu with a custom icon\n<wm-action-menu icon=\"#filter\" tooltip=\"Filter options\">\n<wm-menuitem>All</wm-menuitem>\n<wm-menuitem>Unread</wm-menuitem>\n</wm-action-menu>"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "example",
|
|
49
|
+
"text": "{react} Icon action menu with a custom icon\n<WmActionMenu icon=\"#filter\" tooltip=\"Filter options\">\n<WmMenuitem>All</WmMenuitem>\n<WmMenuitem>Unread</WmMenuitem>\n</WmActionMenu>"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "example",
|
|
53
|
+
"text": "{html} Icon action menu with a rotated icon — reuse directional icons with icon-rotate.\n<wm-action-menu icon=\"#back\" icon-rotate=\"180\" tooltip=\"Forward options\">\n<wm-menuitem>Skip</wm-menuitem>\n<wm-menuitem>Skip all</wm-menuitem>\n</wm-action-menu>"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "example",
|
|
57
|
+
"text": "{react} Icon action menu with a rotated icon\n<WmActionMenu icon=\"#back\" iconRotate={180} tooltip=\"Forward options\">\n<WmMenuitem>Skip</WmMenuitem>\n<WmMenuitem>Skip all</WmMenuitem>\n</WmActionMenu>"
|
|
58
|
+
},
|
|
43
59
|
{
|
|
44
60
|
"name": "example",
|
|
45
61
|
"text": "{html} Text action menu\n<wm-action-menu action-menu-type=\"text\" button-text=\"Actions\">\n<wm-menuitem>Edit</wm-menuitem>\n<wm-menuitem>Delete</wm-menuitem>\n</wm-action-menu>"
|
|
@@ -48,6 +64,14 @@
|
|
|
48
64
|
"name": "example",
|
|
49
65
|
"text": "{react} Text action menu\n<WmActionMenu actionMenuType=\"text\" buttonText=\"Actions\">\n<WmMenuitem>Edit</WmMenuitem>\n<WmMenuitem>Delete</WmMenuitem>\n</WmActionMenu>"
|
|
50
66
|
},
|
|
67
|
+
{
|
|
68
|
+
"name": "example",
|
|
69
|
+
"text": "{html} Text action menu with an icon\n<wm-action-menu action-menu-type=\"text\" button-text=\"Actions\" icon=\"#edit\">\n<wm-menuitem>Edit</wm-menuitem>\n<wm-menuitem>Delete</wm-menuitem>\n</wm-action-menu>"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"name": "example",
|
|
73
|
+
"text": "{react} Text action menu with an icon\n<WmActionMenu actionMenuType=\"text\" buttonText=\"Actions\" icon=\"#edit\">\n<WmMenuitem>Edit</WmMenuitem>\n<WmMenuitem>Delete</WmMenuitem>\n</WmActionMenu>"
|
|
74
|
+
},
|
|
51
75
|
{
|
|
52
76
|
"name": "example",
|
|
53
77
|
"text": "{html} Selector action menu\n<wm-action-menu action-menu-type=\"selector\" button-text=\"Sort by\">\n<wm-menuitem>Name</wm-menuitem>\n<wm-menuitem>Date</wm-menuitem>\n</wm-action-menu>"
|
|
@@ -216,6 +240,131 @@
|
|
|
216
240
|
"optional": false,
|
|
217
241
|
"required": false
|
|
218
242
|
},
|
|
243
|
+
{
|
|
244
|
+
"name": "icon",
|
|
245
|
+
"type": "string | undefined",
|
|
246
|
+
"complexType": {
|
|
247
|
+
"original": "string",
|
|
248
|
+
"resolved": "string | undefined",
|
|
249
|
+
"references": {}
|
|
250
|
+
},
|
|
251
|
+
"mutable": false,
|
|
252
|
+
"attr": "icon",
|
|
253
|
+
"reflectToAttr": false,
|
|
254
|
+
"docs": "",
|
|
255
|
+
"docsTags": [
|
|
256
|
+
{
|
|
257
|
+
"name": "description",
|
|
258
|
+
"text": "Icon to display alongside `button-text` for `text`, `selector`, and `selector-primary`\ntypes, or in place of the default \"more options\" icon for the `icon` type. Formats: `'#icon-name'`\nfor a Ripple icon (e.g. `'#edit'`), or `'/path/to/file.svg#symbol-id'` for a local SVG sprite symbol."
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"name": "default",
|
|
262
|
+
"text": "\"#more-options\" when action-menu-type is 'icon'; unset otherwise"
|
|
263
|
+
}
|
|
264
|
+
],
|
|
265
|
+
"values": [
|
|
266
|
+
{
|
|
267
|
+
"type": "string"
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"type": "undefined"
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
|
+
"optional": true,
|
|
274
|
+
"required": false
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"name": "iconFlip",
|
|
278
|
+
"type": "\"horizontal\" | \"vertical\" | undefined",
|
|
279
|
+
"complexType": {
|
|
280
|
+
"original": "\"horizontal\" | \"vertical\"",
|
|
281
|
+
"resolved": "\"horizontal\" | \"vertical\" | undefined",
|
|
282
|
+
"references": {}
|
|
283
|
+
},
|
|
284
|
+
"mutable": false,
|
|
285
|
+
"attr": "icon-flip",
|
|
286
|
+
"reflectToAttr": false,
|
|
287
|
+
"docs": "",
|
|
288
|
+
"docsTags": [
|
|
289
|
+
{
|
|
290
|
+
"name": "description",
|
|
291
|
+
"text": "Flips the icon along the specified axis. For use with the icon property."
|
|
292
|
+
}
|
|
293
|
+
],
|
|
294
|
+
"values": [
|
|
295
|
+
{
|
|
296
|
+
"value": "horizontal",
|
|
297
|
+
"type": "string"
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"value": "vertical",
|
|
301
|
+
"type": "string"
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
"type": "undefined"
|
|
305
|
+
}
|
|
306
|
+
],
|
|
307
|
+
"optional": true,
|
|
308
|
+
"required": false
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"name": "iconRotate",
|
|
312
|
+
"type": "number | undefined",
|
|
313
|
+
"complexType": {
|
|
314
|
+
"original": "number",
|
|
315
|
+
"resolved": "number | undefined",
|
|
316
|
+
"references": {}
|
|
317
|
+
},
|
|
318
|
+
"mutable": false,
|
|
319
|
+
"attr": "icon-rotate",
|
|
320
|
+
"reflectToAttr": false,
|
|
321
|
+
"docs": "",
|
|
322
|
+
"docsTags": [
|
|
323
|
+
{
|
|
324
|
+
"name": "description",
|
|
325
|
+
"text": "Rotates the icon by the given number of degrees. For use with the icon property."
|
|
326
|
+
}
|
|
327
|
+
],
|
|
328
|
+
"values": [
|
|
329
|
+
{
|
|
330
|
+
"type": "number"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"type": "undefined"
|
|
334
|
+
}
|
|
335
|
+
],
|
|
336
|
+
"optional": true,
|
|
337
|
+
"required": false
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
"name": "iconSize",
|
|
341
|
+
"type": "string | undefined",
|
|
342
|
+
"complexType": {
|
|
343
|
+
"original": "string",
|
|
344
|
+
"resolved": "string | undefined",
|
|
345
|
+
"references": {}
|
|
346
|
+
},
|
|
347
|
+
"mutable": false,
|
|
348
|
+
"attr": "icon-size",
|
|
349
|
+
"reflectToAttr": false,
|
|
350
|
+
"docs": "",
|
|
351
|
+
"docsTags": [
|
|
352
|
+
{
|
|
353
|
+
"name": "description",
|
|
354
|
+
"text": "Change size of the icon to fine tune the visual rendering if it appears too large or small. Not\nintended for general sizing. Accepts any valid CSS size value, e.g. '22px' or '1.3rem'."
|
|
355
|
+
}
|
|
356
|
+
],
|
|
357
|
+
"values": [
|
|
358
|
+
{
|
|
359
|
+
"type": "string"
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
"type": "undefined"
|
|
363
|
+
}
|
|
364
|
+
],
|
|
365
|
+
"optional": true,
|
|
366
|
+
"required": false
|
|
367
|
+
},
|
|
219
368
|
{
|
|
220
369
|
"name": "labelForIdenticalButtons",
|
|
221
370
|
"type": "string | undefined",
|
|
@@ -245,6 +394,37 @@
|
|
|
245
394
|
"optional": true,
|
|
246
395
|
"required": false
|
|
247
396
|
},
|
|
397
|
+
{
|
|
398
|
+
"name": "maxWidth",
|
|
399
|
+
"type": "string",
|
|
400
|
+
"complexType": {
|
|
401
|
+
"original": "string",
|
|
402
|
+
"resolved": "string",
|
|
403
|
+
"references": {}
|
|
404
|
+
},
|
|
405
|
+
"mutable": false,
|
|
406
|
+
"attr": "max-width",
|
|
407
|
+
"reflectToAttr": false,
|
|
408
|
+
"docs": "",
|
|
409
|
+
"docsTags": [
|
|
410
|
+
{
|
|
411
|
+
"name": "description",
|
|
412
|
+
"text": "Maximum width of the dropdown. Accepts any valid CSS width value (e.g. \"300px\", \"20rem\", \"50%\"). The dropdown may still render narrower to fit its content or the space available."
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
"name": "default",
|
|
416
|
+
"text": "\"25.875rem\""
|
|
417
|
+
}
|
|
418
|
+
],
|
|
419
|
+
"default": "\"25.875rem\"",
|
|
420
|
+
"values": [
|
|
421
|
+
{
|
|
422
|
+
"type": "string"
|
|
423
|
+
}
|
|
424
|
+
],
|
|
425
|
+
"optional": false,
|
|
426
|
+
"required": false
|
|
427
|
+
},
|
|
248
428
|
{
|
|
249
429
|
"name": "tooltip",
|
|
250
430
|
"type": "string | undefined",
|
|
@@ -935,7 +1115,7 @@
|
|
|
935
1115
|
"docsTags": [
|
|
936
1116
|
{
|
|
937
1117
|
"name": "description",
|
|
938
|
-
"text": "
|
|
1118
|
+
"text": "Change size of the icon to fine tune the visual rendering if it appears too large or small. Not\nintended for general sizing. Accepts any valid CSS size value, e.g. '22px' or '1.3rem'."
|
|
939
1119
|
}
|
|
940
1120
|
],
|
|
941
1121
|
"values": [
|
|
@@ -30,12 +30,43 @@
|
|
|
30
30
|
"default": "false",
|
|
31
31
|
"required": false
|
|
32
32
|
},
|
|
33
|
+
{
|
|
34
|
+
"name": "icon",
|
|
35
|
+
"attribute": "icon",
|
|
36
|
+
"type": "string | undefined",
|
|
37
|
+
"required": false
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "iconFlip",
|
|
41
|
+
"attribute": "icon-flip",
|
|
42
|
+
"type": "\"horizontal\" | \"vertical\" | undefined",
|
|
43
|
+
"required": false
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "iconRotate",
|
|
47
|
+
"attribute": "icon-rotate",
|
|
48
|
+
"type": "number | undefined",
|
|
49
|
+
"required": false
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "iconSize",
|
|
53
|
+
"attribute": "icon-size",
|
|
54
|
+
"type": "string | undefined",
|
|
55
|
+
"required": false
|
|
56
|
+
},
|
|
33
57
|
{
|
|
34
58
|
"name": "labelForIdenticalButtons",
|
|
35
59
|
"attribute": "label-for-identical-buttons",
|
|
36
60
|
"type": "string | undefined",
|
|
37
61
|
"required": false
|
|
38
62
|
},
|
|
63
|
+
{
|
|
64
|
+
"name": "maxWidth",
|
|
65
|
+
"attribute": "max-width",
|
|
66
|
+
"type": "string",
|
|
67
|
+
"default": "\"25.875rem\"",
|
|
68
|
+
"required": false
|
|
69
|
+
},
|
|
39
70
|
{
|
|
40
71
|
"name": "tooltip",
|
|
41
72
|
"attribute": "tooltip",
|
|
@@ -31,13 +31,22 @@ one or more wm-menuitem children.
|
|
|
31
31
|
- The default type is `icon` (three-dot "more options" button). Use `text` for a labelled trigger, `selector` or `selector-primary` for a select-box appearance.
|
|
32
32
|
- `button-text` is required when `action-menu-type` is `text`, `selector`, or `selector-primary`.
|
|
33
33
|
- `tooltip` is required when `action-menu-type` is `icon`.
|
|
34
|
+
- `icon` is optional for `text`, `selector`, and `selector-primary` types, rendered alongside `button-text`. For `icon` type, `icon` overrides the default "more options" icon.
|
|
34
35
|
|
|
35
36
|
**Props:**
|
|
36
37
|
- `action-menu-type` -- Visual style of the trigger button. `'icon'` shows an icon-only button (requires `tooltip`). `'text'` shows a labelled button (requires `button-text`). `'selector'` shows a selector box that visually mimics a select control (requires `button-text`). `'selector-primary'` is a primary-styled variant of selector. _(type: `"icon" | "selector" | "selector-primary" | "text"`; default: `"icon"`)_
|
|
37
38
|
- `button-text` -- Label displayed on the trigger button. _(conditionally required: when action-menu-type is 'text', 'selector', or 'selector-primary')_
|
|
38
39
|
- `dark-mode` -- Applies dark styling to `selector` and `selector-primary` variants. Has no effect on `icon` or `text` types.
|
|
39
40
|
- `disabled` -- Disables the entire menu, preventing the trigger from being activated. _(default: `false`)_
|
|
41
|
+
- `icon` -- Icon to display alongside `button-text` for `text`, `selector`, and `selector-primary`
|
|
42
|
+
types, or in place of the default "more options" icon for the `icon` type. Formats: `'#icon-name'`
|
|
43
|
+
for a Ripple icon (e.g. `'#edit'`), or `'/path/to/file.svg#symbol-id'` for a local SVG sprite symbol.
|
|
44
|
+
- `icon-flip` -- Flips the icon along the specified axis. For use with the icon property. _(type: `"horizontal" | "vertical"`)_
|
|
45
|
+
- `icon-rotate` -- Rotates the icon by the given number of degrees. For use with the icon property.
|
|
46
|
+
- `icon-size` -- Change size of the icon to fine tune the visual rendering if it appears too large or small. Not
|
|
47
|
+
intended for general sizing. Accepts any valid CSS size value, e.g. '22px' or '1.3rem'.
|
|
40
48
|
- `label-for-identical-buttons` -- Use only when multiple action menus on the same page share identical tooltips or button text. Set this to a more descriptive label for screen readers; the visible label stays unchanged. Sets aria-label to this value.
|
|
49
|
+
- `max-width` -- Maximum width of the dropdown. Accepts any valid CSS width value (e.g. "300px", "20rem", "50%"). The dropdown may still render narrower to fit its content or the space available. _(default: `"25.875rem"`)_
|
|
41
50
|
- `tooltip` -- Tooltip text shown on hover. For `icon` menus, also serves as the accessible name announced by screen readers. _(conditionally required: when action-menu-type is 'icon')_
|
|
42
51
|
- `tooltip-position` -- Position of the tooltip relative to the trigger button. Repositions automatically when there is insufficient space at the specified position. _(type: `"bottom" | "bottom-left" | "bottom-right" | "left" | "right" | "top" | "top-left" | "top-right"`)_
|
|
43
52
|
|
|
@@ -83,20 +92,20 @@ _Icon action menu_
|
|
|
83
92
|
</WmActionMenu>
|
|
84
93
|
```
|
|
85
94
|
|
|
86
|
-
|
|
95
|
+
_Icon action menu with a custom icon_
|
|
87
96
|
|
|
88
97
|
```html
|
|
89
|
-
<wm-action-menu
|
|
90
|
-
<wm-menuitem>
|
|
91
|
-
<wm-menuitem>
|
|
98
|
+
<wm-action-menu icon="#filter" tooltip="Filter options">
|
|
99
|
+
<wm-menuitem>All</wm-menuitem>
|
|
100
|
+
<wm-menuitem>Unread</wm-menuitem>
|
|
92
101
|
</wm-action-menu>
|
|
93
102
|
```
|
|
94
103
|
|
|
95
|
-
|
|
104
|
+
_Icon action menu with a custom icon_
|
|
96
105
|
|
|
97
106
|
```react
|
|
98
|
-
<WmActionMenu
|
|
99
|
-
<WmMenuitem>
|
|
100
|
-
<WmMenuitem>
|
|
107
|
+
<WmActionMenu icon="#filter" tooltip="Filter options">
|
|
108
|
+
<WmMenuitem>All</WmMenuitem>
|
|
109
|
+
<WmMenuitem>Unread</WmMenuitem>
|
|
101
110
|
</WmActionMenu>
|
|
102
111
|
```
|
|
@@ -63,7 +63,8 @@ this prop instead of setting `aria-label` directly on `<wm-button>`.
|
|
|
63
63
|
- `icon` -- Icon to display. Required when button-type is 'icononly' or 'navigational'. Formats: '#icon-name' for a commonly-used Ripple icon (e.g. '#edit', '#add-person'), '/path/to/file.svg#symbol-id' for a local SVG sprite symbol, or an MDI character code like 'f3eb' (deprecated). Do not set on AI button types -- their icon is applied automatically. _(conditionally required: when button-type is 'icononly' or 'navigational')_
|
|
64
64
|
- `icon-flip` -- Flips the icon along the specified axis. For use with the icon property. _(type: `"horizontal" | "vertical"`)_
|
|
65
65
|
- `icon-rotate` -- Rotates the icon by the given number of degrees. For use with the icon property.
|
|
66
|
-
- `icon-size` --
|
|
66
|
+
- `icon-size` -- Change size of the icon to fine tune the visual rendering if it appears too large or small. Not
|
|
67
|
+
intended for general sizing. Accepts any valid CSS size value, e.g. '22px' or '1.3rem'.
|
|
67
68
|
- `is-submit` -- When true, the button submits its containing form. Equivalent to type="submit" on a native button element. _(default: `false`)_
|
|
68
69
|
- `label-for-identical-buttons` -- Accessibility prop. Use ONLY when multiple buttons on the same page share identical visible text or identical tooltips. Set this to a more descriptive label for screen readers; leave the visible button text or tooltip unchanged. Sets aria-label to this value. _(conditionally required: when multiple buttons on the same page share identical visible text or identical tooltips)_
|
|
69
70
|
- `permanently-delete` -- Applies danger/destructive styling to the button. Use sparingly and only for irreversible destructive actions (e.g. permanently deleting an account or record). Applied as a modifier -- not a separate button-type. _(default: `false`)_
|