@limetech/lime-elements 36.4.0-next.3 → 36.4.0-next.4

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 (43) hide show
  1. package/dist/cjs/lime-elements.cjs.js +1 -1
  2. package/dist/cjs/limel-action-bar-item_2.cjs.entry.js +97 -0
  3. package/dist/cjs/limel-action-bar.cjs.entry.js +106 -0
  4. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +5 -1
  5. package/dist/cjs/{limel-menu-list.cjs.entry.js → limel-menu_2.cjs.entry.js} +121 -0
  6. package/dist/cjs/{limel-popover_4.cjs.entry.js → limel-popover_2.cjs.entry.js} +0 -97
  7. package/dist/cjs/limel-tooltip_2.cjs.entry.js +104 -0
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/collection/collection-manifest.json +3 -0
  10. package/dist/collection/components/action-bar/action-bar-item/action-bar-item.css +129 -0
  11. package/dist/collection/components/action-bar/action-bar-item/action-bar-item.js +144 -0
  12. package/dist/collection/components/action-bar/action-bar-item/action-bar-overflow-menu.js +106 -0
  13. package/dist/collection/components/action-bar/action-bar.css +50 -0
  14. package/dist/collection/components/action-bar/action-bar.js +244 -0
  15. package/dist/collection/components/action-bar/action-bar.types.js +1 -0
  16. package/dist/collection/components/action-bar/isItem.js +3 -0
  17. package/dist/esm/lime-elements.js +1 -1
  18. package/dist/esm/limel-action-bar-item_2.entry.js +92 -0
  19. package/dist/esm/limel-action-bar.entry.js +102 -0
  20. package/dist/esm/limel-flatpickr-adapter.entry.js +5 -1
  21. package/dist/esm/{limel-menu-list.entry.js → limel-menu_2.entry.js} +122 -2
  22. package/dist/esm/{limel-popover_4.entry.js → limel-popover_2.entry.js} +1 -96
  23. package/dist/esm/limel-tooltip_2.entry.js +99 -0
  24. package/dist/esm/loader.js +1 -1
  25. package/dist/lime-elements/lime-elements.esm.js +1 -1
  26. package/dist/lime-elements/p-3cdc210b.entry.js +1 -0
  27. package/dist/lime-elements/p-7112ebf8.entry.js +1 -0
  28. package/dist/lime-elements/{p-3c10149f.entry.js → p-a030e9ab.entry.js} +6 -5
  29. package/dist/lime-elements/p-b526ebd4.entry.js +1 -0
  30. package/dist/lime-elements/p-c823809f.entry.js +1 -0
  31. package/dist/lime-elements/{p-4e5865a7.entry.js → p-da4d1bc1.entry.js} +1 -1
  32. package/dist/types/components/action-bar/action-bar-item/action-bar-item.d.ts +33 -0
  33. package/dist/types/components/action-bar/action-bar-item/action-bar-overflow-menu.d.ts +25 -0
  34. package/dist/types/components/action-bar/action-bar.d.ts +79 -0
  35. package/dist/types/components/action-bar/action-bar.types.d.ts +8 -0
  36. package/dist/types/components/action-bar/isItem.d.ts +3 -0
  37. package/dist/types/components.d.ts +143 -16
  38. package/dist/types/interface.d.ts +1 -0
  39. package/package.json +10 -11
  40. package/dist/cjs/limel-menu.cjs.entry.js +0 -127
  41. package/dist/esm/limel-menu.entry.js +0 -123
  42. package/dist/lime-elements/p-50dbd665.entry.js +0 -1
  43. package/dist/lime-elements/p-d16b27b9.entry.js +0 -1
@@ -0,0 +1,79 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import { ActionBarItem } from './action-bar.types';
3
+ import { OpenDirection } from '../menu/menu.types';
4
+ import { ListSeparator } from '../list/list-item.types';
5
+ /**
6
+ * An action bar is a user interface element commonly found in software applications and websites.
7
+ * It typically appears at the top of the screen or within a specific section
8
+ * and serves as a centralized hub for accessing various actions and commands
9
+ * relevant to the current context or page.
10
+ *
11
+ * The action bar often contains a set of clickable icons or buttons (icons + labels)
12
+ * that represent specific actions, such as saving, deleting, editing, sharing,
13
+ * or bulk operations for selected items.
14
+ *
15
+ * The purpose of an action bar is to provide quick and convenient access to
16
+ * frequently used functionalities, enabling users to perform common tasks efficiently.
17
+ * It enhances usability by organizing important actions in a visually prominent and easily accessible location.
18
+ *
19
+ * The action bar's design and layout can vary based on the platform or application,
20
+ * but its primary goal remains consistent—to
21
+ * empower users to interact with the software and perform desired actions effortlessly.
22
+ * @exampleComponent limel-example-action-bar
23
+ * @exampleComponent limel-example-action-bar-overflow-menu
24
+ * @exampleComponent limel-example-action-bar-colors
25
+ * @exampleComponent limel-example-action-bar-floating
26
+ * @exampleComponent limel-example-action-bar-styling
27
+ * @exampleComponent limel-example-action-bar-as-primary-component
28
+ * @private
29
+ */
30
+ export declare class ActionBar {
31
+ /**
32
+ * Items that are placed in the action bar.
33
+ * These represent primary actions.
34
+ */
35
+ actions: Array<ActionBarItem | ListSeparator>;
36
+ /**
37
+ * A label used to describe the purpose of the element to users
38
+ * of assistive technologies, like screen readers.
39
+ * Example value: "toolbar"
40
+ */
41
+ accessibleLabel?: string;
42
+ /**
43
+ * - When set to `fullWidth`, the component will take the
44
+ * entire width of its container.
45
+ * - When set to `floating`, the component will get basic stylings
46
+ * to visualize the floating state.
47
+ * :::note
48
+ * You should still properly position the component
49
+ * according to the structure of your user interface.
50
+ * For example, use an `absolute` or `fixed` position.
51
+ * :::
52
+ */
53
+ layout?: 'fullWidth' | 'floating';
54
+ /**
55
+ * Defines the location that the content of the overflow menu
56
+ * appears, in relation to its trigger.
57
+ */
58
+ openDirection: OpenDirection;
59
+ /**
60
+ * Fired when a action bar item has been clicked.
61
+ */
62
+ itemSelected: EventEmitter<ActionBarItem>;
63
+ private host;
64
+ private overflowCutoff;
65
+ private intersectionObserver;
66
+ private firstRender;
67
+ private actionBarItems;
68
+ render(): any;
69
+ componentDidRender(): void;
70
+ disconnectedCallback(): void;
71
+ private renderActionBarItem;
72
+ private renderOverflowMenu;
73
+ private isVisible;
74
+ private handleSelect;
75
+ private handleIntersection;
76
+ private createIntersectionObserver;
77
+ private observe;
78
+ private haveItemsChanged;
79
+ }
@@ -0,0 +1,8 @@
1
+ import { MenuItem } from '../menu/menu.types';
2
+ export interface ActionBarItem extends MenuItem {
3
+ /**
4
+ * Renders the button in the action bar without their labels.
5
+ * Does not affect the items that are overflown into the overflow menu.
6
+ */
7
+ iconOnly?: boolean;
8
+ }
@@ -0,0 +1,3 @@
1
+ import { ListSeparator } from '../list/list-item.types';
2
+ import { ActionBarItem } from './action-bar.types';
3
+ export declare function isItem(item: ActionBarItem | ListSeparator): item is ActionBarItem;
@@ -5,9 +5,13 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { ActionBarItem } from "./components/action-bar/action-bar.types";
9
+ import { ListSeparator } from "./components/list/list-item.types";
10
+ import { OpenDirection } from "./components/menu/menu.types";
11
+ import { ListSeparator as ListSeparator1 } from "src/interface";
12
+ import { Action as Action1, ActionBarItem as ActionBarItem1, Chip, ClosingActions, DateType, DialogHeading, FileInfo, FlexContainerAlign, FlexContainerDirection, FlexContainerJustify, IconSize as IconSize1, Languages, Link, ListItem, ListSeparator as ListSeparator2, ListType, MenuItem, MenuListType, OpenDirection as OpenDirection1, Option, Searcher, SpinnerSize } from "@limetech/lime-elements";
8
13
  import { Button } from "./components/button/button.types";
9
14
  import { CalloutType } from "./components/callout/callout.types";
10
- import { Action as Action1, Chip, ClosingActions, DateType, DialogHeading, FileInfo, FlexContainerAlign, FlexContainerDirection, FlexContainerJustify, IconSize as IconSize1, Languages, Link, ListItem, ListSeparator, ListType, MenuItem, MenuListType, OpenDirection, Option, Searcher, SpinnerSize } from "@limetech/lime-elements";
11
15
  import { CircularProgressSize } from "./components/circular-progress/circular-progress.types";
12
16
  import { ColorScheme, Language } from "./components/code-editor/code-editor.types";
13
17
  import { Action } from "./components/collapsible-section/action";
@@ -17,12 +21,49 @@ import { IconSize } from "./components/icon/icon.types";
17
21
  import { InfoTileProgress } from "./components/info-tile/info-tile.types";
18
22
  import { InputType } from "./components/input-field/input-field.types";
19
23
  import { ActionPosition, ActionScrollBehavior } from "./components/picker/actions.types";
20
- import { OpenDirection as OpenDirection1 } from "./components/menu/menu.types";
21
24
  import { FlowItem } from "./components/progress-flow/progress-flow.types";
22
25
  import { Tab } from "./components/tab-bar/tab.types";
23
26
  import { Column, ColumnAggregate, ColumnSorter, TableParams } from "./components/table/table.types";
24
27
  import { Layout } from "./components/table/layout";
25
28
  export namespace Components {
29
+ interface LimelActionBar {
30
+ /**
31
+ * A label used to describe the purpose of the element to users of assistive technologies, like screen readers. Example value: "toolbar"
32
+ */
33
+ "accessibleLabel"?: string;
34
+ /**
35
+ * Items that are placed in the action bar. These represent primary actions.
36
+ */
37
+ "actions": Array<ActionBarItem | ListSeparator>;
38
+ /**
39
+ * - When set to `fullWidth`, the component will take the entire width of its container. - When set to `floating`, the component will get basic stylings to visualize the floating state. :::note You should still properly position the component according to the structure of your user interface. For example, use an `absolute` or `fixed` position. :::
40
+ */
41
+ "layout"?: 'fullWidth' | 'floating';
42
+ /**
43
+ * Defines the location that the content of the overflow menu appears, in relation to its trigger.
44
+ */
45
+ "openDirection": OpenDirection;
46
+ }
47
+ interface LimelActionBarItem {
48
+ /**
49
+ * When the item is displayed in the available width, this will be `false`.
50
+ */
51
+ "isVisible": boolean;
52
+ /**
53
+ * Item that is placed in the action bar.
54
+ */
55
+ "item": ActionBarItem | ListSeparator1;
56
+ }
57
+ interface LimelActionBarOverflowMenu {
58
+ /**
59
+ * List of the items that should be rendered in the overflow menu.
60
+ */
61
+ "items": Array<MenuItem | ListSeparator2>;
62
+ /**
63
+ * Defines the location that the content of the overflow menu appears, in relation to its trigger. It defaults to `bottom-end`, since in normal scenarios (for example when the action bar is not floating at the bottom of the screen) this menu is the right-most item in the user interface of the component.
64
+ */
65
+ "openDirection": OpenDirection1;
66
+ }
26
67
  interface LimelBadge {
27
68
  /**
28
69
  * Label to display in the badge. Numeric labels larger than 999 will be rounded and abbreviated. String labels get truncated if their length is longer than six characters.
@@ -773,7 +814,7 @@ export namespace Components {
773
814
  /**
774
815
  * List of items to display
775
816
  */
776
- "items": Array<ListItem | ListSeparator>;
817
+ "items": Array<ListItem | ListSeparator2>;
777
818
  /**
778
819
  * By default, lists will display 3 lines of text, and then truncate the rest. Consumers can increase or decrease this number by specifying `maxLinesSecondaryText`. If consumer enters zero or negative numbers we default to 1; and if they type decimals we round up.
779
820
  */
@@ -799,7 +840,7 @@ export namespace Components {
799
840
  /**
800
841
  * A list of items and separators to show in the menu.
801
842
  */
802
- "items": Array<MenuItem | ListSeparator>;
843
+ "items": Array<MenuItem | ListSeparator2>;
803
844
  /**
804
845
  * Sets the open state of the menu.
805
846
  */
@@ -807,7 +848,7 @@ export namespace Components {
807
848
  /**
808
849
  * Decides the menu's location in relation to its trigger
809
850
  */
810
- "openDirection": OpenDirection;
851
+ "openDirection": OpenDirection1;
811
852
  }
812
853
  interface LimelMenuList {
813
854
  /**
@@ -821,7 +862,7 @@ export namespace Components {
821
862
  /**
822
863
  * List of items to display
823
864
  */
824
- "items": Array<MenuItem | ListSeparator>;
865
+ "items": Array<MenuItem | ListSeparator2>;
825
866
  /**
826
867
  * By default, lists will display 3 lines of text, and then truncate the rest. Consumers can increase or decrease this number by specifying `maxLinesSecondaryText`. If consumer enters zero or negative numbers we default to 1; and if they type decimals we round up.
827
868
  */
@@ -915,7 +956,7 @@ export namespace Components {
915
956
  /**
916
957
  * Decides the popover's location in relation to its trigger
917
958
  */
918
- "openDirection": OpenDirection1;
959
+ "openDirection": OpenDirection;
919
960
  }
920
961
  interface LimelPopoverSurface {
921
962
  /**
@@ -939,7 +980,7 @@ export namespace Components {
939
980
  /**
940
981
  * Decides which direction the portal content should open.
941
982
  */
942
- "openDirection": OpenDirection1;
983
+ "openDirection": OpenDirection;
943
984
  /**
944
985
  * Parent element to move the content to.
945
986
  */
@@ -1135,7 +1176,7 @@ export namespace Components {
1135
1176
  /**
1136
1177
  * A list of items and separators to show in the menu.
1137
1178
  */
1138
- "items": Array<MenuItem | ListSeparator>;
1179
+ "items": Array<MenuItem | ListSeparator2>;
1139
1180
  /**
1140
1181
  * The text to show on the default action part of the button.
1141
1182
  */
@@ -1270,6 +1311,18 @@ export namespace Components {
1270
1311
  "maxlength"?: number;
1271
1312
  }
1272
1313
  }
1314
+ export interface LimelActionBarCustomEvent<T> extends CustomEvent<T> {
1315
+ detail: T;
1316
+ target: HTMLLimelActionBarElement;
1317
+ }
1318
+ export interface LimelActionBarItemCustomEvent<T> extends CustomEvent<T> {
1319
+ detail: T;
1320
+ target: HTMLLimelActionBarItemElement;
1321
+ }
1322
+ export interface LimelActionBarOverflowMenuCustomEvent<T> extends CustomEvent<T> {
1323
+ detail: T;
1324
+ target: HTMLLimelActionBarOverflowMenuElement;
1325
+ }
1273
1326
  export interface LimelButtonGroupCustomEvent<T> extends CustomEvent<T> {
1274
1327
  detail: T;
1275
1328
  target: HTMLLimelButtonGroupElement;
@@ -1395,6 +1448,24 @@ export interface LimelTableCustomEvent<T> extends CustomEvent<T> {
1395
1448
  target: HTMLLimelTableElement;
1396
1449
  }
1397
1450
  declare global {
1451
+ interface HTMLLimelActionBarElement extends Components.LimelActionBar, HTMLStencilElement {
1452
+ }
1453
+ var HTMLLimelActionBarElement: {
1454
+ prototype: HTMLLimelActionBarElement;
1455
+ new (): HTMLLimelActionBarElement;
1456
+ };
1457
+ interface HTMLLimelActionBarItemElement extends Components.LimelActionBarItem, HTMLStencilElement {
1458
+ }
1459
+ var HTMLLimelActionBarItemElement: {
1460
+ prototype: HTMLLimelActionBarItemElement;
1461
+ new (): HTMLLimelActionBarItemElement;
1462
+ };
1463
+ interface HTMLLimelActionBarOverflowMenuElement extends Components.LimelActionBarOverflowMenu, HTMLStencilElement {
1464
+ }
1465
+ var HTMLLimelActionBarOverflowMenuElement: {
1466
+ prototype: HTMLLimelActionBarOverflowMenuElement;
1467
+ new (): HTMLLimelActionBarOverflowMenuElement;
1468
+ };
1398
1469
  interface HTMLLimelBadgeElement extends Components.LimelBadge, HTMLStencilElement {
1399
1470
  }
1400
1471
  var HTMLLimelBadgeElement: {
@@ -1702,6 +1773,9 @@ declare global {
1702
1773
  new (): HTMLLimelTooltipContentElement;
1703
1774
  };
1704
1775
  interface HTMLElementTagNameMap {
1776
+ "limel-action-bar": HTMLLimelActionBarElement;
1777
+ "limel-action-bar-item": HTMLLimelActionBarItemElement;
1778
+ "limel-action-bar-overflow-menu": HTMLLimelActionBarOverflowMenuElement;
1705
1779
  "limel-badge": HTMLLimelBadgeElement;
1706
1780
  "limel-banner": HTMLLimelBannerElement;
1707
1781
  "limel-button": HTMLLimelButtonElement;
@@ -1756,6 +1830,53 @@ declare global {
1756
1830
  }
1757
1831
  }
1758
1832
  declare namespace LocalJSX {
1833
+ interface LimelActionBar {
1834
+ /**
1835
+ * A label used to describe the purpose of the element to users of assistive technologies, like screen readers. Example value: "toolbar"
1836
+ */
1837
+ "accessibleLabel"?: string;
1838
+ /**
1839
+ * Items that are placed in the action bar. These represent primary actions.
1840
+ */
1841
+ "actions"?: Array<ActionBarItem | ListSeparator>;
1842
+ /**
1843
+ * - When set to `fullWidth`, the component will take the entire width of its container. - When set to `floating`, the component will get basic stylings to visualize the floating state. :::note You should still properly position the component according to the structure of your user interface. For example, use an `absolute` or `fixed` position. :::
1844
+ */
1845
+ "layout"?: 'fullWidth' | 'floating';
1846
+ /**
1847
+ * Fired when a action bar item has been clicked.
1848
+ */
1849
+ "onItemSelected"?: (event: LimelActionBarCustomEvent<ActionBarItem>) => void;
1850
+ /**
1851
+ * Defines the location that the content of the overflow menu appears, in relation to its trigger.
1852
+ */
1853
+ "openDirection"?: OpenDirection;
1854
+ }
1855
+ interface LimelActionBarItem {
1856
+ /**
1857
+ * When the item is displayed in the available width, this will be `false`.
1858
+ */
1859
+ "isVisible"?: boolean;
1860
+ /**
1861
+ * Item that is placed in the action bar.
1862
+ */
1863
+ "item": ActionBarItem | ListSeparator1;
1864
+ /**
1865
+ * Fired when a action bar item has been clicked.
1866
+ */
1867
+ "onSelect"?: (event: LimelActionBarItemCustomEvent<ActionBarItem | ListSeparator1>) => void;
1868
+ }
1869
+ interface LimelActionBarOverflowMenu {
1870
+ /**
1871
+ * List of the items that should be rendered in the overflow menu.
1872
+ */
1873
+ "items"?: Array<MenuItem | ListSeparator2>;
1874
+ "onSelect"?: (event: LimelActionBarOverflowMenuCustomEvent<ActionBarItem1>) => void;
1875
+ /**
1876
+ * Defines the location that the content of the overflow menu appears, in relation to its trigger. It defaults to `bottom-end`, since in normal scenarios (for example when the action bar is not floating at the bottom of the screen) this menu is the right-most item in the user interface of the component.
1877
+ */
1878
+ "openDirection"?: OpenDirection1;
1879
+ }
1759
1880
  interface LimelBadge {
1760
1881
  /**
1761
1882
  * Label to display in the badge. Numeric labels larger than 999 will be rounded and abbreviated. String labels get truncated if their length is longer than six characters.
@@ -2602,7 +2723,7 @@ declare namespace LocalJSX {
2602
2723
  /**
2603
2724
  * List of items to display
2604
2725
  */
2605
- "items"?: Array<ListItem | ListSeparator>;
2726
+ "items"?: Array<ListItem | ListSeparator2>;
2606
2727
  /**
2607
2728
  * By default, lists will display 3 lines of text, and then truncate the rest. Consumers can increase or decrease this number by specifying `maxLinesSecondaryText`. If consumer enters zero or negative numbers we default to 1; and if they type decimals we round up.
2608
2729
  */
@@ -2636,7 +2757,7 @@ declare namespace LocalJSX {
2636
2757
  /**
2637
2758
  * A list of items and separators to show in the menu.
2638
2759
  */
2639
- "items"?: Array<MenuItem | ListSeparator>;
2760
+ "items"?: Array<MenuItem | ListSeparator2>;
2640
2761
  /**
2641
2762
  * Is emitted when the menu is cancelled.
2642
2763
  */
@@ -2652,7 +2773,7 @@ declare namespace LocalJSX {
2652
2773
  /**
2653
2774
  * Decides the menu's location in relation to its trigger
2654
2775
  */
2655
- "openDirection"?: OpenDirection;
2776
+ "openDirection"?: OpenDirection1;
2656
2777
  }
2657
2778
  interface LimelMenuList {
2658
2779
  /**
@@ -2666,7 +2787,7 @@ declare namespace LocalJSX {
2666
2787
  /**
2667
2788
  * List of items to display
2668
2789
  */
2669
- "items"?: Array<MenuItem | ListSeparator>;
2790
+ "items"?: Array<MenuItem | ListSeparator2>;
2670
2791
  /**
2671
2792
  * By default, lists will display 3 lines of text, and then truncate the rest. Consumers can increase or decrease this number by specifying `maxLinesSecondaryText`. If consumer enters zero or negative numbers we default to 1; and if they type decimals we round up.
2672
2793
  */
@@ -2784,7 +2905,7 @@ declare namespace LocalJSX {
2784
2905
  /**
2785
2906
  * Decides the popover's location in relation to its trigger
2786
2907
  */
2787
- "openDirection"?: OpenDirection1;
2908
+ "openDirection"?: OpenDirection;
2788
2909
  }
2789
2910
  interface LimelPopoverSurface {
2790
2911
  /**
@@ -2808,7 +2929,7 @@ declare namespace LocalJSX {
2808
2929
  /**
2809
2930
  * Decides which direction the portal content should open.
2810
2931
  */
2811
- "openDirection"?: OpenDirection1;
2932
+ "openDirection"?: OpenDirection;
2812
2933
  /**
2813
2934
  * Parent element to move the content to.
2814
2935
  */
@@ -3024,7 +3145,7 @@ declare namespace LocalJSX {
3024
3145
  /**
3025
3146
  * A list of items and separators to show in the menu.
3026
3147
  */
3027
- "items"?: Array<MenuItem | ListSeparator>;
3148
+ "items"?: Array<MenuItem | ListSeparator2>;
3028
3149
  /**
3029
3150
  * The text to show on the default action part of the button.
3030
3151
  */
@@ -3203,6 +3324,9 @@ declare namespace LocalJSX {
3203
3324
  "maxlength"?: number;
3204
3325
  }
3205
3326
  interface IntrinsicElements {
3327
+ "limel-action-bar": LimelActionBar;
3328
+ "limel-action-bar-item": LimelActionBarItem;
3329
+ "limel-action-bar-overflow-menu": LimelActionBarOverflowMenu;
3206
3330
  "limel-badge": LimelBadge;
3207
3331
  "limel-banner": LimelBanner;
3208
3332
  "limel-button": LimelButton;
@@ -3260,6 +3384,9 @@ export { LocalJSX as JSX };
3260
3384
  declare module "@stencil/core" {
3261
3385
  export namespace JSX {
3262
3386
  interface IntrinsicElements {
3387
+ "limel-action-bar": LocalJSX.LimelActionBar & JSXBase.HTMLAttributes<HTMLLimelActionBarElement>;
3388
+ "limel-action-bar-item": LocalJSX.LimelActionBarItem & JSXBase.HTMLAttributes<HTMLLimelActionBarItemElement>;
3389
+ "limel-action-bar-overflow-menu": LocalJSX.LimelActionBarOverflowMenu & JSXBase.HTMLAttributes<HTMLLimelActionBarOverflowMenuElement>;
3263
3390
  "limel-badge": LocalJSX.LimelBadge & JSXBase.HTMLAttributes<HTMLLimelBadgeElement>;
3264
3391
  "limel-banner": LocalJSX.LimelBanner & JSXBase.HTMLAttributes<HTMLLimelBannerElement>;
3265
3392
  "limel-button": LocalJSX.LimelButton & JSXBase.HTMLAttributes<HTMLLimelButtonElement>;
@@ -22,5 +22,6 @@ export * from './components/tab-bar/tab.types';
22
22
  export * from './components/tab-panel/tab-panel.types';
23
23
  export * from './components/table/table.types';
24
24
  export * from './components/dock/dock.types';
25
+ export * from './components/action-bar/action-bar.types';
25
26
  export * from './components/info-tile/info-tile.types';
26
27
  export * from './components/callout/callout.types';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limetech/lime-elements",
3
- "version": "36.4.0-next.3",
3
+ "version": "36.4.0-next.4",
4
4
  "description": "Lime Elements",
5
5
  "author": "Lime Technologies",
6
6
  "license": "Apache-2.0",
@@ -49,37 +49,36 @@
49
49
  "@types/html-escaper": "^3.0.0",
50
50
  "@types/jest": "^27.4.0",
51
51
  "@types/lodash-es": "^4.17.7",
52
- "@types/puppeteer": "^7.0.4",
53
- "@types/react": "^18.2.8",
52
+ "@types/react": "^18.2.11",
54
53
  "@types/tabulator-tables": "^4.9.4",
55
- "@typescript-eslint/eslint-plugin": "^5.59.8",
56
- "@typescript-eslint/parser": "^5.59.8",
54
+ "@typescript-eslint/eslint-plugin": "^5.59.11",
55
+ "@typescript-eslint/parser": "^5.59.11",
57
56
  "ajv": "^6.12.6",
58
57
  "awesome-debounce-promise": "^2.1.0",
59
58
  "codemirror": "^5.65.9",
60
59
  "cross-env": "^7.0.3",
61
60
  "dayjs": "^1.11.8",
62
- "eslint": "^8.41.0",
61
+ "eslint": "^8.42.0",
63
62
  "eslint-config-prettier": "^8.8.0",
64
63
  "eslint-plugin-ban": "^1.6.0",
65
- "eslint-plugin-jsdoc": "^46.2.0",
64
+ "eslint-plugin-jsdoc": "^46.2.6",
66
65
  "eslint-plugin-prefer-arrow": "^1.2.3",
67
66
  "eslint-plugin-prettier": "^4.2.1",
68
67
  "eslint-plugin-react": "^7.32.2",
69
68
  "eslint-plugin-sonarjs": "^0.19.0",
70
69
  "flatpickr": "^4.6.13",
71
70
  "html-escaper": "^3.0.3",
72
- "jest": "^26.6.3",
73
- "jest-cli": "^27.4.5",
71
+ "jest": "^27.5.1",
72
+ "jest-cli": "^27.5.1",
74
73
  "jsonlint-mod": "^1.7.6",
75
- "jsx-dom": "^8.0.6",
74
+ "jsx-dom": "^8.0.7",
76
75
  "kompendium": "^0.12.3",
77
76
  "lodash-es": "^4.17.21",
78
77
  "material-components-web": "^13.0.0",
79
78
  "moment": "^2.29.4",
80
79
  "number-abbreviate": "^2.0.0",
81
80
  "prettier": "^2.8.8",
82
- "puppeteer": "^20.5.0",
81
+ "puppeteer": "^19.11.1",
83
82
  "react": "^18.2.0",
84
83
  "react-dom": "^18.2.0",
85
84
  "react-shadow-dom-retarget-events": "^1.1.0",
@@ -1,127 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-287e25e0.js');
6
- const randomString = require('./random-string-4c3b7f1c.js');
7
- const zipObject = require('./zipObject-93a471fa.js');
8
- require('./_assignValue-7c18d8d6.js');
9
- require('./_defineProperty-8f56146d.js');
10
- require('./_getNative-60328036.js');
11
- require('./eq-9a943b00.js');
12
- require('./isObject-e28b7997.js');
13
-
14
- const menuCss = ":host(limel-menu){isolation:isolate;position:relative;display:inline-block;--badge-background-color:var(\n --notification-badge-background-color,\n rgb(var(--color-red-default))\n );--badge-text-color:var(\n --notification-badge-text-color,\n rgb(var(--color-white))\n )}: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}limel-badge{position:absolute;top:-0.25rem;right:-0.25rem}";
15
-
16
- const Menu = class {
17
- constructor(hostRef) {
18
- index.registerInstance(this, hostRef);
19
- this.cancel = index.createEvent(this, "cancel", 7);
20
- this.select = index.createEvent(this, "select", 7);
21
- this.setTriggerAttributes = (element) => {
22
- const attributes = {
23
- 'aria-haspopup': true,
24
- 'aria-expanded': this.open,
25
- disabled: this.disabled,
26
- role: 'button',
27
- };
28
- for (const [key, value] of Object.entries(attributes)) {
29
- if (!value) {
30
- element.removeAttribute(key);
31
- }
32
- else {
33
- element.setAttribute(key, String(value));
34
- }
35
- }
36
- };
37
- this.onClose = () => {
38
- this.cancel.emit();
39
- this.open = false;
40
- };
41
- this.onTriggerClick = (event) => {
42
- event.stopPropagation();
43
- if (this.disabled) {
44
- return;
45
- }
46
- this.open = !this.open;
47
- };
48
- this.handleSelect = (event) => {
49
- event.stopPropagation();
50
- this.select.emit(event.detail);
51
- this.open = false;
52
- };
53
- this.setListElement = (element) => {
54
- this.list = element;
55
- };
56
- this.focusMenuItem = () => {
57
- var _a;
58
- const activeElement = this.list.shadowRoot.activeElement;
59
- activeElement === null || activeElement === void 0 ? void 0 : activeElement.blur();
60
- const MenuItems = this.items.filter(this.isMenuItem);
61
- const selectedIndex = Math.max(MenuItems.findIndex((item) => item.selected), 0);
62
- const menuElements = Array.from(this.list.shadowRoot.querySelectorAll('[role="menuitem"]'));
63
- (_a = menuElements[selectedIndex]) === null || _a === void 0 ? void 0 : _a.focus();
64
- };
65
- this.renderNotificationBadge = () => {
66
- if (this.items.some(this.hasNotificationBadge)) {
67
- return index.h("limel-badge", null);
68
- }
69
- };
70
- this.hasNotificationBadge = (item) => this.isMenuItem(item) && item.badge !== undefined;
71
- this.items = [];
72
- this.disabled = false;
73
- this.openDirection = 'bottom-start';
74
- this.open = false;
75
- this.badgeIcons = false;
76
- this.gridLayout = false;
77
- this.portalId = randomString.createRandomString();
78
- }
79
- openWatcher() {
80
- if (!this.open) {
81
- return;
82
- }
83
- const observer = new IntersectionObserver(() => {
84
- observer.unobserve(this.list);
85
- this.focusMenuItem();
86
- });
87
- observer.observe(this.list);
88
- }
89
- render() {
90
- const cssProperties = this.getCssProperties();
91
- const dropdownZIndex = getComputedStyle(this.host).getPropertyValue('--dropdown-z-index');
92
- return (index.h("div", { class: "mdc-menu-surface--anchor", onClick: this.onTriggerClick }, index.h("slot", { name: "trigger" }), this.renderNotificationBadge(), index.h("limel-portal", { visible: this.open, containerId: this.portalId, openDirection: this.openDirection, position: "absolute", containerStyle: { 'z-index': dropdownZIndex } }, index.h("limel-menu-surface", { open: this.open, onDismiss: this.onClose, style: cssProperties, class: {
93
- 'has-grid-layout': this.gridLayout,
94
- } }, index.h("limel-menu-list", { class: {
95
- 'has-grid-layout has-interactive-items': this.gridLayout,
96
- }, items: this.items, type: "menu", badgeIcons: this.badgeIcons, onSelect: this.handleSelect, ref: this.setListElement })))));
97
- }
98
- componentDidRender() {
99
- const slotElement = this.host.shadowRoot.querySelector('slot');
100
- slotElement.assignedElements().forEach(this.setTriggerAttributes);
101
- }
102
- getCssProperties() {
103
- const propertyNames = [
104
- '--menu-surface-width',
105
- '--list-grid-item-max-width',
106
- '--list-grid-item-min-width',
107
- '--list-grid-gap',
108
- '--notification-badge-background-color',
109
- '--notification-badge-text-color',
110
- ];
111
- const style = getComputedStyle(this.host);
112
- const values = propertyNames.map((property) => {
113
- return style.getPropertyValue(property);
114
- });
115
- return zipObject.zipObject(propertyNames, values);
116
- }
117
- isMenuItem(item) {
118
- return !('separator' in item);
119
- }
120
- get host() { return index.getElement(this); }
121
- static get watchers() { return {
122
- "open": ["openWatcher"]
123
- }; }
124
- };
125
- Menu.style = menuCss;
126
-
127
- exports.limel_menu = Menu;