@limetech/lime-elements 33.14.0-next.4 → 33.14.0-next.8

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 (29) hide show
  1. package/dist/cjs/lime-elements.cjs.js +1 -1
  2. package/dist/cjs/limel-list_3.cjs.entry.js +2 -0
  3. package/dist/cjs/limel-menu.cjs.entry.js +49 -1
  4. package/dist/cjs/limel-tooltip.cjs.entry.js +6 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/collection/components/list/list.js +2 -0
  7. package/dist/collection/components/menu/menu.js +51 -2
  8. package/dist/collection/components/tab-panel/tab-panel.js +2 -1
  9. package/dist/collection/components/tab-panel/tab-panel.types.js +1 -0
  10. package/dist/collection/components/tooltip/tooltip-content.js +2 -2
  11. package/dist/collection/components/tooltip/tooltip.js +9 -4
  12. package/dist/esm/lime-elements.js +1 -1
  13. package/dist/esm/limel-list_3.entry.js +2 -0
  14. package/dist/esm/limel-menu.entry.js +49 -1
  15. package/dist/esm/limel-tooltip.entry.js +6 -1
  16. package/dist/esm/loader.js +1 -1
  17. package/dist/lime-elements/lime-elements.esm.js +1 -1
  18. package/dist/lime-elements/p-63e4f918.entry.js +1 -0
  19. package/dist/lime-elements/p-6fcc1378.entry.js +177 -0
  20. package/dist/lime-elements/p-b0b18dfc.entry.js +1 -0
  21. package/dist/types/components/menu/menu.d.ts +7 -0
  22. package/dist/types/components/tab-panel/tab-panel.d.ts +2 -1
  23. package/dist/types/components/tab-panel/tab-panel.types.d.ts +16 -0
  24. package/dist/types/components/tooltip/tooltip.d.ts +1 -0
  25. package/dist/types/interface.d.ts +1 -0
  26. package/package.json +1 -1
  27. package/dist/lime-elements/p-1f3b6139.entry.js +0 -1
  28. package/dist/lime-elements/p-4e6042f7.entry.js +0 -1
  29. package/dist/lime-elements/p-8e8219ac.entry.js +0 -177
@@ -0,0 +1 @@
1
+ import{r as t,h as i,g as e}from"./p-fabb836f.js";import{c as s}from"./p-6c094f3f.js";const o=class{constructor(i){t(this,i),this.showTooltip=()=>{this.showTooltipTimeoutHandle=window.setTimeout((()=>{this.open=!0}),500)},this.hideTooltip=()=>{clearTimeout(this.showTooltipTimeoutHandle),this.open=!1},this.portalId=s(),this.tooltipId=s()}connectedCallback(){this.setOwnerAriaLabel(),this.addListeners()}disconnectedCallback(){this.removeListeners()}render(){const t=getComputedStyle(this.host).getPropertyValue("--tooltip-z-index");return i("div",{class:"trigger-anchor"},i("limel-portal",{visible:this.open,containerId:this.portalId,containerStyle:{"z-index":t,"pointer-events":"none"}},i("limel-tooltip-content",{label:this.label,helperLabel:this.helperLabel,role:"tooltip","aria-hidden":!this.open,id:this.tooltipId})))}setOwnerAriaLabel(){const t=this.getOwnerElement();null==t||t.setAttribute("aria-describedby",this.tooltipId)}addListeners(){const t=this.getOwnerElement();null==t||t.addEventListener("mouseover",this.showTooltip),null==t||t.addEventListener("mouseout",this.hideTooltip),null==t||t.addEventListener("click",this.hideTooltip)}removeListeners(){const t=this.getOwnerElement();null==t||t.removeEventListener("mouseover",this.showTooltip),null==t||t.removeEventListener("mouseout",this.hideTooltip),null==t||t.removeEventListener("click",this.hideTooltip)}getOwnerElement(){var t;let i=this.host;do{i=i.parentNode}while(i&&i.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&i.nodeType!==Node.DOCUMENT_NODE);return null===(t=i)||void 0===t?void 0:t.getElementById(this.elementId)}get host(){return e(this)}};o.style=".trigger-anchor{display:inline-block;position:relative}.tooltip-container{color:#f1f1f1;background-color:#232324}";export{o as limel_tooltip}
@@ -59,14 +59,21 @@ export declare class Menu {
59
59
  */
60
60
  private select;
61
61
  private host;
62
+ private list;
62
63
  private portalId;
63
64
  constructor();
64
65
  componentDidLoad(): void;
66
+ protected openWatcher(): void;
65
67
  render(): any;
68
+ componentDidRender(): void;
66
69
  private renderTrigger;
70
+ private setTriggerAttributes;
67
71
  private onClose;
68
72
  private onTriggerClick;
69
73
  private onListChange;
70
74
  private getPortalPosition;
71
75
  private getCssProperties;
76
+ private setListElement;
77
+ private focusMenuItem;
78
+ private isListItem;
72
79
  }
@@ -4,7 +4,8 @@ import { Tab } from '../tab-bar/tab.types';
4
4
  * The `limel-tab-panel` component uses the `limel-tab-bar` component together
5
5
  * with custom slotted components and will display the content for the currently
6
6
  * active tab. Each slotted component must have an id equal to the id of the
7
- * corresponding tab it belongs to.
7
+ * corresponding tab it belongs to. These components should implement the
8
+ * [TabPanelComponent](#/type/TabPanelComponent/) interface.
8
9
  *
9
10
  * The `limel-tab-panel` component will automatically set each tab configuration
10
11
  * on the corresponding slotted component as a property named `tab` so that the
@@ -0,0 +1,16 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import { Tab } from '../tab-bar/tab.types';
3
+ /**
4
+ * Interface for components rendered inside a `limel-tab-panel`
5
+ */
6
+ export interface TabPanelComponent {
7
+ /**
8
+ * The tab that the component belongs to
9
+ */
10
+ tab: Tab;
11
+ /**
12
+ * Emit when the tab is updated for some reason, e.g. changing the text,
13
+ * icon or badge
14
+ */
15
+ changeTab?: EventEmitter<Tab>;
16
+ }
@@ -34,6 +34,7 @@ export declare class Tooltip {
34
34
  private host;
35
35
  private portalId;
36
36
  private tooltipId;
37
+ private showTooltipTimeoutHandle;
37
38
  constructor();
38
39
  connectedCallback(): void;
39
40
  disconnectedCallback(): void;
@@ -17,4 +17,5 @@ export * from './components/progress-flow/progress-flow.types';
17
17
  export * from './components/select/option.types';
18
18
  export * from './components/spinner/spinner.types';
19
19
  export * from './components/tab-bar/tab.types';
20
+ export * from './components/tab-panel/tab-panel.types';
20
21
  export * from './components/table/table.types';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limetech/lime-elements",
3
- "version": "33.14.0-next.4",
3
+ "version": "33.14.0-next.8",
4
4
  "description": "Lime Elements",
5
5
  "author": "Lime Technologies",
6
6
  "license": "Apache-2.0",
@@ -1 +0,0 @@
1
- import{r as t,c as i,h as s,g as e}from"./p-fabb836f.js";import{c as r}from"./p-6c094f3f.js";import{z as o}from"./p-7c4d91f5.js";import"./p-acfbf7ac.js";import"./p-8bbe3720.js";import"./p-fc610f15.js";const n=class{constructor(s){t(this,s),this.cancel=i(this,"cancel",7),this.select=i(this,"select",7),this.label="",this.items=[],this.disabled=!1,this.openDirection="right",this.open=!1,this.badgeIcons=!1,this.gridLayout=!1,this.fixed=!1,this.onClose=()=>{this.cancel.emit(),this.open=!1},this.onTriggerClick=t=>{t.stopPropagation(),this.disabled||(this.open=!this.open)},this.onListChange=t=>{this.items=this.items.map((i=>i===t.detail?t.detail:i)),this.select.emit(t.detail),this.open=!1},this.portalId=r()}componentDidLoad(){this.host.querySelector('[slot="trigger"]')||console.warn("Using limel-menu with the default trigger is deprecated. Please provide your own trigger element.")}render(){const t=this.getCssProperties(),i=getComputedStyle(this.host).getPropertyValue("--dropdown-z-index"),e={"limel-portal--fixed":this.fixed},r=this.getPortalPosition();return s("div",{class:"mdc-menu-surface--anchor",onClick:this.onTriggerClick},s("slot",{name:"trigger"},this.renderTrigger()),s("limel-portal",{class:e,style:r,visible:this.open,containerId:this.portalId,openDirection:this.openDirection,position:this.fixed?"fixed":"absolute",containerStyle:{"z-index":i}},s("limel-menu-surface",{open:this.open,onDismiss:this.onClose,style:t},s("limel-list",{class:{"has-grid-layout has-interactive-items":this.gridLayout},items:this.items,type:"menu",badgeIcons:this.badgeIcons,onChange:this.onListChange}))))}renderTrigger(){return s("button",{class:`\n menu__trigger\n ${this.disabled?"":"menu__trigger-enabled"}\n `,disabled:this.disabled},s("span",null,this.label))}getPortalPosition(){if(!this.fixed)return{};const t=this.host.getBoundingClientRect(),i={top:`${t.y+t.height}px`,left:`${t.x}px`};return"left"===this.openDirection&&(i.left=`${t.x+t.width}px`),i}getCssProperties(){const t=["--menu-surface-width","--list-grid-item-max-width","--list-grid-item-min-width","--list-grid-gap"],i=getComputedStyle(this.host),s=t.map((t=>i.getPropertyValue(t)));return o(t,s)}get host(){return e(this)}};n.style=":host{display:inline-block}:host([hidden]){display:none}.menu__trigger{border-color:transparent;border-width:1px;border-style:solid;background:none;color:rgb(var(--contrast-800));height:2.25rem}.menu__trigger-enabled:hover{border-color:rgb(var(--contrast-800));color:rgb(var(--contrast-1100))}.mdc-menu-surface--anchor{position:relative}";export{n as limel_menu}
@@ -1 +0,0 @@
1
- import{r as t,h as i,g as e}from"./p-fabb836f.js";import{c as s}from"./p-6c094f3f.js";const o=class{constructor(i){t(this,i),this.showTooltip=()=>{this.open=!0},this.hideTooltip=()=>{this.open=!1},this.portalId=s(),this.tooltipId=s()}connectedCallback(){this.setOwnerAriaLabel(),this.addListeners()}disconnectedCallback(){this.removeListeners()}render(){const t=getComputedStyle(this.host).getPropertyValue("--tooltip-z-index");return i("div",{class:"trigger-anchor"},i("limel-portal",{visible:this.open,containerId:this.portalId,containerStyle:{"z-index":t}},i("limel-tooltip-content",{label:this.label,helperLabel:this.helperLabel,role:"tooltip","aria-hidden":!this.open,id:this.tooltipId})))}setOwnerAriaLabel(){const t=this.getOwnerElement();null==t||t.setAttribute("aria-describedby",this.tooltipId)}addListeners(){const t=this.getOwnerElement();null==t||t.addEventListener("mouseover",this.showTooltip),null==t||t.addEventListener("mouseout",this.hideTooltip),null==t||t.addEventListener("click",this.hideTooltip)}removeListeners(){const t=this.getOwnerElement();null==t||t.removeEventListener("mouseover",this.showTooltip),null==t||t.removeEventListener("mouseout",this.hideTooltip),null==t||t.removeEventListener("click",this.hideTooltip)}getOwnerElement(){var t;let i=this.host;do{i=i.parentNode}while(i&&i.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&i.nodeType!==Node.DOCUMENT_NODE);return null===(t=i)||void 0===t?void 0:t.getElementById(this.elementId)}get host(){return e(this)}};o.style=".trigger-anchor{display:inline-block;position:relative}.tooltip-container{color:#f1f1f1;background-color:#232324}";export{o as limel_tooltip}