@limetech/lime-elements 33.14.0-next.9 → 34.0.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 (210) hide show
  1. package/dist/cjs/{checkbox.template-c0b4c7c7.js → checkbox.template-d4423721.js} +1 -1
  2. package/dist/cjs/component-f7ef9087.js +2365 -0
  3. package/dist/cjs/{index-153dc912.js → index-e63a89d7.js} +73 -64
  4. package/dist/cjs/lime-elements.cjs.js +3 -3
  5. package/dist/cjs/limel-badge.cjs.entry.js +2 -2
  6. package/dist/cjs/limel-banner.cjs.entry.js +2 -2
  7. package/dist/cjs/limel-button-group.cjs.entry.js +16 -6
  8. package/dist/cjs/limel-button.cjs.entry.js +2 -2
  9. package/dist/cjs/limel-checkbox.cjs.entry.js +3 -3
  10. package/dist/cjs/limel-chip-set.cjs.entry.js +2 -2
  11. package/dist/cjs/limel-circular-progress.cjs.entry.js +2 -2
  12. package/dist/cjs/limel-code-editor.cjs.entry.js +2 -2
  13. package/dist/cjs/limel-collapsible-section.cjs.entry.js +2 -2
  14. package/dist/cjs/limel-config.cjs.entry.js +5 -2
  15. package/dist/cjs/limel-date-picker.cjs.entry.js +2 -2
  16. package/dist/cjs/limel-dialog.cjs.entry.js +2 -2
  17. package/dist/cjs/limel-file.cjs.entry.js +2 -2
  18. package/dist/cjs/limel-flatpickr-adapter_2.cjs.entry.js +3 -3
  19. package/dist/cjs/limel-flex-container.cjs.entry.js +2 -2
  20. package/dist/cjs/limel-form.cjs.entry.js +2 -2
  21. package/dist/cjs/limel-grid.cjs.entry.js +2 -2
  22. package/dist/cjs/limel-header.cjs.entry.js +2 -2
  23. package/dist/cjs/limel-icon-button.cjs.entry.js +2 -2
  24. package/dist/cjs/limel-icon.cjs.entry.js +2 -2
  25. package/dist/cjs/limel-linear-progress.cjs.entry.js +2 -2
  26. package/dist/cjs/limel-list_2.cjs.entry.js +484 -0
  27. package/dist/cjs/limel-menu-list.cjs.entry.js +863 -0
  28. package/dist/cjs/limel-menu.cjs.entry.js +6 -45
  29. package/dist/cjs/limel-picker.cjs.entry.js +2 -2
  30. package/dist/cjs/limel-popover-surface.cjs.entry.js +2 -2
  31. package/dist/cjs/limel-popover.cjs.entry.js +2 -2
  32. package/dist/cjs/limel-portal.cjs.entry.js +1935 -0
  33. package/dist/cjs/limel-progress-flow-item.cjs.entry.js +3 -3
  34. package/dist/cjs/limel-progress-flow.cjs.entry.js +2 -2
  35. package/dist/cjs/limel-select.cjs.entry.js +2 -2
  36. package/dist/cjs/limel-slider.cjs.entry.js +2 -2
  37. package/dist/cjs/limel-snackbar.cjs.entry.js +2 -2
  38. package/dist/cjs/limel-spinner.cjs.entry.js +2 -2
  39. package/dist/cjs/limel-switch.cjs.entry.js +2 -2
  40. package/dist/cjs/limel-tab-bar.cjs.entry.js +2 -2
  41. package/dist/cjs/limel-tab-panel.cjs.entry.js +2 -2
  42. package/dist/cjs/limel-table.cjs.entry.js +3 -3
  43. package/dist/cjs/limel-tooltip-content.cjs.entry.js +7 -4
  44. package/dist/cjs/limel-tooltip.cjs.entry.js +3 -3
  45. package/dist/cjs/loader.cjs.js +3 -3
  46. package/dist/collection/collection-manifest.json +3 -2
  47. package/dist/collection/components/button-group/button-group.js +15 -5
  48. package/dist/collection/components/chip-set/chip-set.js +2 -2
  49. package/dist/collection/components/config/config.js +3 -0
  50. package/dist/collection/components/header/header.js +0 -1
  51. package/dist/collection/components/list/list-renderer.js +151 -166
  52. package/dist/collection/components/list/list.css +0 -10
  53. package/dist/collection/components/list/list.js +77 -125
  54. package/dist/collection/components/menu/menu.js +12 -94
  55. package/dist/collection/components/menu-list/menu-list-renderer-config.js +1 -0
  56. package/dist/collection/components/menu-list/menu-list-renderer.js +150 -0
  57. package/dist/collection/components/menu-list/menu-list.css +3367 -0
  58. package/dist/collection/components/menu-list/menu-list.js +274 -0
  59. package/dist/collection/components/menu-list/menu-list.types.js +1 -0
  60. package/dist/collection/components/menu-surface/menu-surface.js +84 -87
  61. package/dist/collection/components/picker/picker.js +2 -2
  62. package/dist/collection/components/popover/popover.js +0 -1
  63. package/dist/collection/components/progress-flow/progress-flow-item/progress-flow-item.css +1 -1
  64. package/dist/collection/components/table/table.css +9 -2
  65. package/dist/collection/components/tooltip/tooltip-content.css +25 -13
  66. package/dist/collection/components/tooltip/tooltip-content.js +4 -3
  67. package/dist/collection/components/tooltip/tooltip.css +0 -6
  68. package/dist/collection/components/tooltip/tooltip.js +31 -5
  69. package/dist/esm/{checkbox.template-434214d5.js → checkbox.template-dbdd27c8.js} +1 -1
  70. package/dist/esm/component-2eb4e07b.js +2357 -0
  71. package/dist/esm/{index-dc421a6e.js → index-2316f345.js} +73 -64
  72. package/dist/esm/lime-elements.js +3 -3
  73. package/dist/esm/limel-badge.entry.js +2 -2
  74. package/dist/esm/limel-banner.entry.js +2 -2
  75. package/dist/esm/limel-button-group.entry.js +16 -6
  76. package/dist/esm/limel-button.entry.js +2 -2
  77. package/dist/esm/limel-checkbox.entry.js +3 -3
  78. package/dist/esm/limel-chip-set.entry.js +2 -2
  79. package/dist/esm/limel-circular-progress.entry.js +2 -2
  80. package/dist/esm/limel-code-editor.entry.js +2 -2
  81. package/dist/esm/limel-collapsible-section.entry.js +2 -2
  82. package/dist/esm/limel-config.entry.js +5 -2
  83. package/dist/esm/limel-date-picker.entry.js +2 -2
  84. package/dist/esm/limel-dialog.entry.js +2 -2
  85. package/dist/esm/limel-file.entry.js +2 -2
  86. package/dist/esm/limel-flatpickr-adapter_2.entry.js +3 -3
  87. package/dist/esm/limel-flex-container.entry.js +2 -2
  88. package/dist/esm/limel-form.entry.js +2 -2
  89. package/dist/esm/limel-grid.entry.js +2 -2
  90. package/dist/esm/limel-header.entry.js +2 -2
  91. package/dist/esm/limel-icon-button.entry.js +2 -2
  92. package/dist/esm/limel-icon.entry.js +2 -2
  93. package/dist/esm/limel-linear-progress.entry.js +2 -2
  94. package/dist/esm/limel-list_2.entry.js +479 -0
  95. package/dist/esm/limel-menu-list.entry.js +859 -0
  96. package/dist/esm/limel-menu.entry.js +6 -45
  97. package/dist/esm/limel-picker.entry.js +2 -2
  98. package/dist/esm/limel-popover-surface.entry.js +2 -2
  99. package/dist/esm/limel-popover.entry.js +2 -2
  100. package/dist/esm/limel-portal.entry.js +1931 -0
  101. package/dist/esm/limel-progress-flow-item.entry.js +3 -3
  102. package/dist/esm/limel-progress-flow.entry.js +2 -2
  103. package/dist/esm/limel-select.entry.js +2 -2
  104. package/dist/esm/limel-slider.entry.js +2 -2
  105. package/dist/esm/limel-snackbar.entry.js +2 -2
  106. package/dist/esm/limel-spinner.entry.js +2 -2
  107. package/dist/esm/limel-switch.entry.js +2 -2
  108. package/dist/esm/limel-tab-bar.entry.js +2 -2
  109. package/dist/esm/limel-tab-panel.entry.js +2 -2
  110. package/dist/esm/limel-table.entry.js +3 -3
  111. package/dist/esm/limel-tooltip-content.entry.js +7 -4
  112. package/dist/esm/limel-tooltip.entry.js +3 -3
  113. package/dist/esm/loader.js +3 -3
  114. package/dist/lime-elements/lime-elements.esm.js +1 -1
  115. package/dist/lime-elements/{p-af7c5b11.entry.js → p-03c28bee.entry.js} +2 -2
  116. package/dist/lime-elements/p-041ae00c.entry.js +1 -0
  117. package/dist/lime-elements/p-143705b1.entry.js +1 -0
  118. package/dist/lime-elements/{p-467c87f6.entry.js → p-1d7c7d5e.entry.js} +1 -1
  119. package/dist/lime-elements/p-1fb5340d.entry.js +1 -0
  120. package/dist/lime-elements/p-227d2c5a.entry.js +1 -0
  121. package/dist/lime-elements/p-31299106.js +126 -0
  122. package/dist/lime-elements/p-31fecf5d.entry.js +1 -0
  123. package/dist/lime-elements/p-34c7872e.entry.js +1 -0
  124. package/dist/lime-elements/p-3525d50c.entry.js +37 -0
  125. package/dist/lime-elements/p-4932c029.entry.js +1 -0
  126. package/dist/lime-elements/p-4b5af81b.entry.js +1 -0
  127. package/dist/lime-elements/p-510bb5a4.entry.js +1 -0
  128. package/dist/lime-elements/{p-67c48f98.entry.js → p-587bd6ca.entry.js} +1 -1
  129. package/dist/lime-elements/p-64549ba6.entry.js +37 -0
  130. package/dist/lime-elements/p-692f31f1.entry.js +16 -0
  131. package/dist/lime-elements/p-7476efe0.entry.js +1 -0
  132. package/dist/lime-elements/p-845e645a.entry.js +1 -0
  133. package/dist/lime-elements/{p-c636bfcf.entry.js → p-85094bfc.entry.js} +2 -2
  134. package/dist/lime-elements/p-89b5a983.js +1 -0
  135. package/dist/lime-elements/p-8d1ab246.entry.js +1 -0
  136. package/dist/lime-elements/p-8d8bd2ab.entry.js +73 -0
  137. package/dist/lime-elements/p-90f3e17c.entry.js +37 -0
  138. package/dist/lime-elements/{p-fabb836f.js → p-92146da6.js} +1 -1
  139. package/dist/lime-elements/p-9d362dd5.entry.js +1 -0
  140. package/dist/lime-elements/{p-90b2c0a2.entry.js → p-a1153d2a.entry.js} +1 -1
  141. package/dist/lime-elements/{p-5577f962.entry.js → p-a3dadae7.entry.js} +2 -2
  142. package/dist/lime-elements/p-b386bfeb.entry.js +1 -0
  143. package/dist/lime-elements/p-b5d6abc3.entry.js +126 -0
  144. package/dist/lime-elements/p-bbc1bb01.entry.js +1 -0
  145. package/dist/lime-elements/p-be56ffab.entry.js +1 -0
  146. package/dist/lime-elements/p-c35874db.entry.js +1 -0
  147. package/dist/lime-elements/p-c8c8a946.entry.js +59 -0
  148. package/dist/lime-elements/p-d070f0e7.entry.js +1 -0
  149. package/dist/lime-elements/p-d2c74396.entry.js +1 -0
  150. package/dist/lime-elements/p-df55ee67.entry.js +82 -0
  151. package/dist/lime-elements/p-e5738ec6.entry.js +1 -0
  152. package/dist/lime-elements/p-e881e98d.entry.js +1 -0
  153. package/dist/lime-elements/{p-2476f7bb.entry.js → p-f079f1fd.entry.js} +2 -2
  154. package/dist/lime-elements/p-f2df64ec.entry.js +1 -0
  155. package/dist/lime-elements/p-f4495f59.entry.js +1 -0
  156. package/dist/lime-elements/p-fc30b8e3.entry.js +1 -0
  157. package/dist/lime-elements/{p-61ecc7f1.entry.js → p-ff0217b3.entry.js} +2 -2
  158. package/dist/loader/index.d.ts +0 -1
  159. package/dist/types/components/header/header.d.ts +0 -1
  160. package/dist/types/components/list/list-item.types.d.ts +2 -1
  161. package/dist/types/components/list/list-renderer-config.d.ts +0 -1
  162. package/dist/types/components/list/list-renderer.d.ts +5 -7
  163. package/dist/types/components/list/list.d.ts +0 -7
  164. package/dist/types/components/list/list.types.d.ts +1 -1
  165. package/dist/types/components/menu/menu.d.ts +2 -20
  166. package/dist/types/components/menu/menu.types.d.ts +30 -3
  167. package/dist/types/components/menu-list/menu-list-renderer-config.d.ts +7 -0
  168. package/dist/types/components/menu-list/menu-list-renderer.d.ts +48 -0
  169. package/dist/types/components/menu-list/menu-list.d.ts +59 -0
  170. package/dist/types/components/menu-list/menu-list.types.d.ts +6 -0
  171. package/dist/types/components/menu-surface/menu-surface.d.ts +0 -1
  172. package/dist/types/components/popover/popover.d.ts +0 -1
  173. package/dist/types/components/tooltip/tooltip-content.d.ts +1 -1
  174. package/dist/types/components/tooltip/tooltip.d.ts +31 -5
  175. package/dist/types/components.d.ts +66 -25
  176. package/dist/types/interface.d.ts +1 -0
  177. package/package.json +3 -2
  178. package/dist/cjs/limel-list_3.cjs.entry.js +0 -5418
  179. package/dist/esm/limel-list_3.entry.js +0 -5412
  180. package/dist/lime-elements/p-034f336b.entry.js +0 -126
  181. package/dist/lime-elements/p-136230d6.entry.js +0 -1
  182. package/dist/lime-elements/p-16c336e8.entry.js +0 -59
  183. package/dist/lime-elements/p-191f05bc.entry.js +0 -1
  184. package/dist/lime-elements/p-1a3a9bfd.entry.js +0 -1
  185. package/dist/lime-elements/p-231f62ba.entry.js +0 -1
  186. package/dist/lime-elements/p-24c128ec.entry.js +0 -37
  187. package/dist/lime-elements/p-30c4b32a.entry.js +0 -1
  188. package/dist/lime-elements/p-3a21fa33.entry.js +0 -37
  189. package/dist/lime-elements/p-3df01502.entry.js +0 -1
  190. package/dist/lime-elements/p-63e4f918.entry.js +0 -1
  191. package/dist/lime-elements/p-6d9f679d.entry.js +0 -1
  192. package/dist/lime-elements/p-6e3b6e69.entry.js +0 -1
  193. package/dist/lime-elements/p-79541c2b.entry.js +0 -73
  194. package/dist/lime-elements/p-7be3a593.entry.js +0 -1
  195. package/dist/lime-elements/p-7c6f6b80.entry.js +0 -1
  196. package/dist/lime-elements/p-7dd9c41d.entry.js +0 -16
  197. package/dist/lime-elements/p-9b79dfe7.js +0 -1
  198. package/dist/lime-elements/p-a6a7dd00.entry.js +0 -1
  199. package/dist/lime-elements/p-aeeca058.entry.js +0 -1
  200. package/dist/lime-elements/p-b0b18dfc.entry.js +0 -1
  201. package/dist/lime-elements/p-b88e7350.entry.js +0 -1
  202. package/dist/lime-elements/p-bde1749a.entry.js +0 -1
  203. package/dist/lime-elements/p-c45238b6.entry.js +0 -1
  204. package/dist/lime-elements/p-c53695a3.entry.js +0 -37
  205. package/dist/lime-elements/p-dc5b3f45.entry.js +0 -1
  206. package/dist/lime-elements/p-e078c459.entry.js +0 -177
  207. package/dist/lime-elements/p-e9b4bdac.entry.js +0 -1
  208. package/dist/lime-elements/p-eb81fc35.entry.js +0 -1
  209. package/dist/lime-elements/p-f94cbe50.entry.js +0 -1
  210. package/dist/lime-elements/p-fa880bd6.entry.js +0 -1
@@ -2,12 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-153dc912.js');
5
+ const index = require('./index-e63a89d7.js');
6
6
  const randomString = require('./random-string-4c3b7f1c.js');
7
7
 
8
- const tooltipCss = ".trigger-anchor{display:inline-block;position:relative}.tooltip-container{color:#f1f1f1;background-color:#232324}";
8
+ const tooltipCss = ".trigger-anchor{position:relative}";
9
9
 
10
- const Tooltip = class {
10
+ let Tooltip = class {
11
11
  constructor(hostRef) {
12
12
  index.registerInstance(this, hostRef);
13
13
  this.showTooltip = () => {
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-153dc912.js');
5
+ const index = require('./index-e63a89d7.js');
6
6
 
7
7
  /*
8
- Stencil Client Patch Esm v2.8.1 | MIT Licensed | https://stenciljs.com
8
+ Stencil Client Patch Esm v2.10.0 | MIT Licensed | https://stenciljs.com
9
9
  */
10
10
  const patchEsm = () => {
11
11
  return index.promiseResolve();
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["limel-picker.cjs",[[1,"limel-picker",{"disabled":[4],"readonly":[516],"label":[1],"searchLabel":[1,"search-label"],"leadingIcon":[1,"leading-icon"],"emptyResultMessage":[1,"empty-result-message"],"required":[4],"value":[16],"searcher":[16],"multiple":[4],"delimiter":[513],"displayFullList":[4,"display-full-list"],"actions":[16],"actionPosition":[1,"action-position"],"actionScrollBehavior":[1,"action-scroll-behavior"],"items":[32],"textValue":[32],"loading":[32],"chips":[32]}]]],["limel-date-picker.cjs",[[1,"limel-date-picker",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[16],"type":[513],"format":[513],"language":[513],"formattedValue":[32],"internalFormat":[32],"showPortal":[32]}]]],["limel-select.cjs",[[1,"limel-select",{"disabled":[516],"readonly":[516],"invalid":[516],"required":[516],"label":[513],"helperText":[513,"helper-text"],"value":[16],"options":[16],"multiple":[4],"menuOpen":[32]}]]],["limel-tab-panel.cjs",[[1,"limel-tab-panel",{"tabs":[1040]}]]],["limel-file.cjs",[[1,"limel-file",{"value":[16],"label":[513],"required":[516],"disabled":[516],"readonly":[516],"accept":[513],"language":[1],"isDraggingOverDropZone":[32]}]]],["limel-menu.cjs",[[1,"limel-menu",{"label":[513],"items":[16],"disabled":[516],"openDirection":[513,"open-direction"],"open":[1540],"badgeIcons":[516,"badge-icons"],"gridLayout":[516,"grid-layout"],"fixed":[4]}]]],["limel-button.cjs",[[1,"limel-button",{"label":[513],"primary":[516],"outlined":[516],"icon":[513],"disabled":[516],"loading":[516]}]]],["limel-collapsible-section.cjs",[[1,"limel-collapsible-section",{"isOpen":[1540,"is-open"],"header":[1],"actions":[16]}]]],["limel-dialog.cjs",[[1,"limel-dialog",{"heading":[1],"fullscreen":[516],"open":[1540],"closingActions":[16]}]]],["limel-popover.cjs",[[1,"limel-popover",{"open":[4]}]]],["limel-progress-flow.cjs",[[1,"limel-progress-flow",{"flowItems":[16],"disabled":[4],"readonly":[4]}]]],["limel-tooltip.cjs",[[1,"limel-tooltip",{"label":[513],"helperLabel":[513,"helper-label"],"elementId":[513,"element-id"],"open":[32]}]]],["limel-banner.cjs",[[1,"limel-banner",{"message":[513],"icon":[513],"isOpen":[32],"open":[64],"close":[64]}]]],["limel-button-group.cjs",[[1,"limel-button-group",{"value":[16],"disabled":[516],"selectedButtonId":[32]}]]],["limel-table.cjs",[[1,"limel-table",{"data":[16],"columns":[16],"mode":[1],"pageSize":[2,"page-size"],"totalRows":[2,"total-rows"],"sorting":[16],"activeRow":[1040],"movableColumns":[4,"movable-columns"],"loading":[4],"page":[2],"emptyMessage":[1,"empty-message"]}]]],["limel-checkbox.cjs",[[1,"limel-checkbox",{"disabled":[516],"readonly":[516],"label":[513],"checked":[516],"required":[516],"modified":[32]}]]],["limel-circular-progress.cjs",[[1,"limel-circular-progress",{"value":[2],"maxValue":[2,"max-value"],"suffix":[1],"displayPercentageColors":[4,"display-percentage-colors"],"size":[513]}]]],["limel-code-editor.cjs",[[1,"limel-code-editor",{"value":[1],"language":[1],"readonly":[4],"lineNumbers":[4,"line-numbers"],"colorScheme":[1,"color-scheme"],"random":[32]}]]],["limel-config.cjs",[[1,"limel-config",{"config":[16]}]]],["limel-flex-container.cjs",[[1,"limel-flex-container",{"direction":[513],"justify":[513],"align":[513],"reverse":[516]}]]],["limel-form.cjs",[[1,"limel-form",{"schema":[16],"value":[16],"propsFactory":[16]}]]],["limel-grid.cjs",[[1,"limel-grid"]]],["limel-linear-progress.cjs",[[1,"limel-linear-progress",{"value":[2],"indeterminate":[4]}]]],["limel-slider.cjs",[[1,"limel-slider",{"disabled":[516],"readonly":[516],"factor":[514],"label":[513],"helperText":[513,"helper-text"],"unit":[513],"value":[514],"valuemax":[514],"valuemin":[514],"step":[514],"percentageClass":[32]}]]],["limel-snackbar.cjs",[[1,"limel-snackbar",{"message":[1],"timeout":[2],"actionText":[1,"action-text"],"dismissible":[4],"multiline":[4],"language":[1],"show":[64]}]]],["limel-switch.cjs",[[1,"limel-switch",{"label":[513],"disabled":[516],"readonly":[516],"value":[516],"fieldId":[32]}]]],["limel-badge.cjs",[[1,"limel-badge",{"label":[514]}]]],["limel-icon.cjs",[[1,"limel-icon",{"size":[513],"name":[513],"badge":[516]}]]],["limel-tab-bar.cjs",[[1,"limel-tab-bar",{"tabs":[1040],"canScrollLeft":[32],"canScrollRight":[32]},[[9,"resize","handleWindowResize"]]]]],["limel-header.cjs",[[1,"limel-header",{"icon":[1],"heading":[1],"subheading":[1],"supportingText":[1,"supporting-text"]}]]],["limel-progress-flow-item.cjs",[[0,"limel-progress-flow-item",{"item":[16],"disabled":[4],"readonly":[4]}]]],["limel-popover-surface.cjs",[[1,"limel-popover-surface",{"contentCollection":[16]}]]],["limel-tooltip-content.cjs",[[1,"limel-tooltip-content",{"label":[513],"helperLabel":[513,"helper-label"]}]]],["limel-list_3.cjs",[[1,"limel-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}],[1,"limel-menu-surface",{"open":[4],"allowClicksElement":[16]}],[1,"limel-portal",{"openDirection":[1,"open-direction"],"position":[1],"containerId":[1,"container-id"],"containerStyle":[16],"parent":[16],"inheritParentWidth":[4,"inherit-parent-width"],"visible":[4]}]]],["limel-flatpickr-adapter_2.cjs",[[1,"limel-input-field",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[513],"trailingIcon":[513,"trailing-icon"],"leadingIcon":[513,"leading-icon"],"pattern":[513],"type":[513],"formatNumber":[516,"format-number"],"step":[520],"max":[514],"min":[514],"maxlength":[514],"minlength":[514],"completions":[16],"showLink":[516,"show-link"],"isFocused":[32],"isModified":[32],"showCompletions":[32]}],[1,"limel-flatpickr-adapter",{"value":[16],"type":[1],"format":[1],"isOpen":[4,"is-open"],"inputElement":[16],"language":[1]}]]],["limel-chip-set.cjs",[[1,"limel-chip-set",{"value":[16],"type":[513],"label":[513],"disabled":[516],"readonly":[516],"maxItems":[514,"max-items"],"required":[516],"searchLabel":[513,"search-label"],"emptyInputOnBlur":[516,"empty-input-on-blur"],"clearAllButton":[4,"clear-all-button"],"leadingIcon":[513,"leading-icon"],"delimiter":[513],"language":[1],"editMode":[32],"textValue":[32],"blurred":[32],"inputChipIndexSelected":[32],"getEditMode":[64],"setFocus":[64],"emptyInput":[64]}]]],["limel-icon-button.cjs",[[1,"limel-icon-button",{"icon":[513],"elevated":[516],"label":[513],"disabled":[516],"relayout":[64]}]]],["limel-spinner.cjs",[[1,"limel-spinner",{"size":[513],"limeBranded":[4,"lime-branded"]}]]]], options);
17
+ return index.bootstrapLazy([["limel-picker.cjs",[[1,"limel-picker",{"disabled":[4],"readonly":[516],"label":[1],"searchLabel":[1,"search-label"],"leadingIcon":[1,"leading-icon"],"emptyResultMessage":[1,"empty-result-message"],"required":[4],"value":[16],"searcher":[16],"multiple":[4],"delimiter":[513],"displayFullList":[4,"display-full-list"],"actions":[16],"actionPosition":[1,"action-position"],"actionScrollBehavior":[1,"action-scroll-behavior"],"items":[32],"textValue":[32],"loading":[32],"chips":[32]}]]],["limel-date-picker.cjs",[[1,"limel-date-picker",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[16],"type":[513],"format":[513],"language":[513],"formattedValue":[32],"internalFormat":[32],"showPortal":[32]}]]],["limel-button-group.cjs",[[1,"limel-button-group",{"value":[16],"disabled":[516],"selectedButtonId":[32]}]]],["limel-select.cjs",[[1,"limel-select",{"disabled":[516],"readonly":[516],"invalid":[516],"required":[516],"label":[513],"helperText":[513,"helper-text"],"value":[16],"options":[16],"multiple":[4],"menuOpen":[32]}]]],["limel-tab-panel.cjs",[[1,"limel-tab-panel",{"tabs":[1040]}]]],["limel-file.cjs",[[1,"limel-file",{"value":[16],"label":[513],"required":[516],"disabled":[516],"readonly":[516],"accept":[513],"language":[1],"isDraggingOverDropZone":[32]}]]],["limel-menu.cjs",[[1,"limel-menu",{"items":[16],"disabled":[516],"openDirection":[513,"open-direction"],"open":[1540],"badgeIcons":[516,"badge-icons"],"gridLayout":[516,"grid-layout"]}]]],["limel-button.cjs",[[1,"limel-button",{"label":[513],"primary":[516],"outlined":[516],"icon":[513],"disabled":[516],"loading":[516]}]]],["limel-collapsible-section.cjs",[[1,"limel-collapsible-section",{"isOpen":[1540,"is-open"],"header":[1],"actions":[16]}]]],["limel-dialog.cjs",[[1,"limel-dialog",{"heading":[1],"fullscreen":[516],"open":[1540],"closingActions":[16]}]]],["limel-popover.cjs",[[1,"limel-popover",{"open":[4]}]]],["limel-progress-flow.cjs",[[1,"limel-progress-flow",{"flowItems":[16],"disabled":[4],"readonly":[4]}]]],["limel-banner.cjs",[[1,"limel-banner",{"message":[513],"icon":[513],"isOpen":[32],"open":[64],"close":[64]}]]],["limel-table.cjs",[[1,"limel-table",{"data":[16],"columns":[16],"mode":[1],"pageSize":[2,"page-size"],"totalRows":[2,"total-rows"],"sorting":[16],"activeRow":[1040],"movableColumns":[4,"movable-columns"],"loading":[4],"page":[2],"emptyMessage":[1,"empty-message"]}]]],["limel-checkbox.cjs",[[1,"limel-checkbox",{"disabled":[516],"readonly":[516],"label":[513],"checked":[516],"required":[516],"modified":[32]}]]],["limel-circular-progress.cjs",[[1,"limel-circular-progress",{"value":[2],"maxValue":[2,"max-value"],"suffix":[1],"displayPercentageColors":[4,"display-percentage-colors"],"size":[513]}]]],["limel-code-editor.cjs",[[1,"limel-code-editor",{"value":[1],"language":[1],"readonly":[4],"lineNumbers":[4,"line-numbers"],"colorScheme":[1,"color-scheme"],"random":[32]}]]],["limel-config.cjs",[[1,"limel-config",{"config":[16]}]]],["limel-flex-container.cjs",[[1,"limel-flex-container",{"direction":[513],"justify":[513],"align":[513],"reverse":[516]}]]],["limel-form.cjs",[[1,"limel-form",{"schema":[16],"value":[16],"propsFactory":[16]}]]],["limel-grid.cjs",[[1,"limel-grid"]]],["limel-linear-progress.cjs",[[1,"limel-linear-progress",{"value":[2],"indeterminate":[4]}]]],["limel-slider.cjs",[[1,"limel-slider",{"disabled":[516],"readonly":[516],"factor":[514],"label":[513],"helperText":[513,"helper-text"],"unit":[513],"value":[514],"valuemax":[514],"valuemin":[514],"step":[514],"percentageClass":[32]}]]],["limel-snackbar.cjs",[[1,"limel-snackbar",{"message":[1],"timeout":[2],"actionText":[1,"action-text"],"dismissible":[4],"multiline":[4],"language":[1],"show":[64]}]]],["limel-switch.cjs",[[1,"limel-switch",{"label":[513],"disabled":[516],"readonly":[516],"value":[516],"fieldId":[32]}]]],["limel-tab-bar.cjs",[[1,"limel-tab-bar",{"tabs":[1040],"canScrollLeft":[32],"canScrollRight":[32]},[[9,"resize","handleWindowResize"]]]]],["limel-tooltip.cjs",[[1,"limel-tooltip",{"label":[513],"helperLabel":[513,"helper-label"],"elementId":[513,"element-id"],"open":[32]}]]],["limel-header.cjs",[[1,"limel-header",{"icon":[1],"heading":[1],"subheading":[1],"supportingText":[1,"supporting-text"]}]]],["limel-progress-flow-item.cjs",[[0,"limel-progress-flow-item",{"item":[16],"disabled":[4],"readonly":[4]}]]],["limel-menu-list.cjs",[[1,"limel-menu-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}]]],["limel-popover-surface.cjs",[[1,"limel-popover-surface",{"contentCollection":[16]}]]],["limel-icon.cjs",[[1,"limel-icon",{"size":[513],"name":[513],"badge":[516]}]]],["limel-flatpickr-adapter_2.cjs",[[1,"limel-input-field",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[513],"trailingIcon":[513,"trailing-icon"],"leadingIcon":[513,"leading-icon"],"pattern":[513],"type":[513],"formatNumber":[516,"format-number"],"step":[520],"max":[514],"min":[514],"maxlength":[514],"minlength":[514],"completions":[16],"showLink":[516,"show-link"],"isFocused":[32],"isModified":[32],"showCompletions":[32]}],[1,"limel-flatpickr-adapter",{"value":[16],"type":[1],"format":[1],"isOpen":[4,"is-open"],"inputElement":[16],"language":[1]}]]],["limel-chip-set.cjs",[[1,"limel-chip-set",{"value":[16],"type":[513],"label":[513],"disabled":[516],"readonly":[516],"maxItems":[514,"max-items"],"required":[516],"searchLabel":[513,"search-label"],"emptyInputOnBlur":[516,"empty-input-on-blur"],"clearAllButton":[4,"clear-all-button"],"leadingIcon":[513,"leading-icon"],"delimiter":[513],"language":[1],"editMode":[32],"textValue":[32],"blurred":[32],"inputChipIndexSelected":[32],"getEditMode":[64],"setFocus":[64],"emptyInput":[64]}]]],["limel-tooltip-content.cjs",[[1,"limel-tooltip-content",{"label":[513],"helperLabel":[513,"helper-label"]}]]],["limel-icon-button.cjs",[[1,"limel-icon-button",{"icon":[513],"elevated":[516],"label":[513],"disabled":[516],"relayout":[64]}]]],["limel-spinner.cjs",[[1,"limel-spinner",{"size":[513],"limeBranded":[4,"lime-branded"]}]]],["limel-badge.cjs",[[1,"limel-badge",{"label":[514]}]]],["limel-portal.cjs",[[1,"limel-portal",{"openDirection":[1,"open-direction"],"position":[1],"containerId":[1,"container-id"],"containerStyle":[16],"parent":[16],"inheritParentWidth":[4,"inherit-parent-width"],"visible":[4]}]]],["limel-list_2.cjs",[[1,"limel-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}],[1,"limel-menu-surface",{"open":[4],"allowClicksElement":[16]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -24,6 +24,7 @@
24
24
  "./components/linear-progress/linear-progress.js",
25
25
  "./components/list/list.js",
26
26
  "./components/menu/menu.js",
27
+ "./components/menu-list/menu-list.js",
27
28
  "./components/menu-surface/menu-surface.js",
28
29
  "./components/picker/picker.js",
29
30
  "./components/popover/popover.js",
@@ -44,8 +45,8 @@
44
45
  ],
45
46
  "compiler": {
46
47
  "name": "@stencil/core",
47
- "version": "2.8.1",
48
- "typescriptVersion": "4.2.3"
48
+ "version": "2.10.0",
49
+ "typescriptVersion": "4.3.5"
49
50
  },
50
51
  "collections": [],
51
52
  "bundles": []
@@ -65,14 +65,17 @@ export class ButtonGroup {
65
65
  return (h("div", { class: classes, role: "grid" }, this.value.map(this.renderButton)));
66
66
  }
67
67
  renderButton(button) {
68
+ // Prefix with 'b' because html IDs cannot start with a digit,
69
+ // and we need to differentiate from the ID on the limel-icon. /Ads
70
+ const buttonId = `b${button.id}`;
68
71
  const classes = {
69
72
  'mdc-chip': true,
70
73
  'mdc-chip--selected': this.isButtonChecked(button),
71
74
  };
72
75
  return (h("div", { class: classes, role: "row" },
73
76
  h("span", { role: "gridcell" },
74
- h("input", { type: "radio", name: this.radioGroupName, checked: this.isButtonChecked(button), id: button.id, onChange: this.onChange }),
75
- h("label", { htmlFor: button.id }, this.renderContent(button)))));
77
+ h("input", { type: "radio", name: this.radioGroupName, checked: this.isButtonChecked(button), id: buttonId, onChange: this.onChange }),
78
+ h("label", { htmlFor: buttonId }, this.renderContent(button)))));
76
79
  }
77
80
  renderContent(button) {
78
81
  if (button.icon) {
@@ -87,14 +90,21 @@ export class ButtonGroup {
87
90
  return h("span", { class: "mdc-chip__text" }, button.title);
88
91
  }
89
92
  renderIcon(button) {
90
- return (h("limel-icon", { class: "mdc-chip__icon", "aria-label": button.title, title: button.title, name: button.icon, size: "small", badge: true }));
93
+ // Prefix with 'i' because html IDs cannot start with a digit,
94
+ // and we need to differentiate from the "buttonId". /Ads
95
+ const iconId = `i${button.id}`;
96
+ return [
97
+ h("limel-icon", { id: iconId, class: "mdc-chip__icon", "aria-label": button.title, name: button.icon, size: "small", badge: true }),
98
+ h("limel-tooltip", { elementId: iconId, label: button.title }),
99
+ ];
91
100
  }
92
101
  onChange(event) {
93
102
  event.stopPropagation();
94
103
  const target = event.target;
95
- this.selectedButtonId = target.id;
104
+ // The ID is prefixed with `b` in the HTML, remember? /Ads
105
+ this.selectedButtonId = target.id.substr(1);
96
106
  const button = this.value.find((item) => {
97
- return `${item.id}` === target.id;
107
+ return item.id === this.selectedButtonId;
98
108
  });
99
109
  this.change.emit(button);
100
110
  }
@@ -778,8 +778,8 @@ export class ChipSet {
778
778
  "signature": "(emptyInput?: boolean) => Promise<void>",
779
779
  "parameters": [{
780
780
  "tags": [{
781
- "text": "emptyInput if `true`, any text in the input is discarded",
782
- "name": "param"
781
+ "name": "param",
782
+ "text": "emptyInput if `true`, any text in the input is discarded"
783
783
  }],
784
784
  "text": "if `true`, any text in the input is discarded"
785
785
  }],
@@ -14,6 +14,9 @@ export class Config {
14
14
  * Copy any config settings to the global config object
15
15
  */
16
16
  setGlobalConfig() {
17
+ if (!this.config) {
18
+ return;
19
+ }
17
20
  Object.keys(this.config).forEach((key) => {
18
21
  globalConfig[key] = this.config[key];
19
22
  });
@@ -43,7 +43,6 @@ import { Component, h, Prop } from '@stencil/core';
43
43
  * @exampleComponent limel-example-header-responsive
44
44
  * @exampleComponent limel-example-header-narrow
45
45
  * @slot - Content (actions) to be put inside the far right surface of the header
46
- * @private
47
46
  */
48
47
  export class Header {
49
48
  render() {
@@ -7,8 +7,154 @@ export class ListRenderer {
7
7
  isOpen: true,
8
8
  badgeIcons: false,
9
9
  };
10
- this.renderListItem = this.renderListItem.bind(this);
11
- this.renderDivider = this.renderDivider.bind(this);
10
+ /**
11
+ * Determine which ListItem should have the `tab-index` attribute set,
12
+ * and return the index at which that ListItem is located in `items`.
13
+ * Returns `undefined` if no item should have the attribute set.
14
+ * See https://github.com/material-components/material-components-web/tree/e66a43a75fef4f9179e24856649518e15e279a04/packages/mdc-list#accessibility
15
+ *
16
+ * @param {Array<ListItem | ListSeparator>} items the items of the list, including any `ListSeparator`:s
17
+ * @returns {number} the index as per the description
18
+ */
19
+ this.getIndexForWhichToApplyTabIndex = (items) => {
20
+ let result;
21
+ for (let i = 0, max = items.length; i < max; i += 1) {
22
+ if ('separator' in items[i]) {
23
+ // Ignore ListSeparator
24
+ }
25
+ else {
26
+ const item = items[i];
27
+ if (item.selected) {
28
+ result = i;
29
+ break;
30
+ }
31
+ if (result === undefined && !item.disabled) {
32
+ result = i;
33
+ // Do NOT break, as any later item with
34
+ // `selected=true` should get the tab-index instead!
35
+ }
36
+ }
37
+ }
38
+ return result;
39
+ };
40
+ /**
41
+ * Render a single list item
42
+ *
43
+ * @param {ListItem | ListSeparator} item the item to render
44
+ * @param {number} index the index the item had in the `items` array
45
+ * @returns {HTMLElement} the list item
46
+ */
47
+ this.renderListItem = (item, index) => {
48
+ if ('separator' in item) {
49
+ return h("li", { class: "mdc-deprecated-list-divider", role: "separator" });
50
+ }
51
+ if (['radio', 'checkbox'].includes(this.config.type)) {
52
+ return this.renderVariantListItem(this.config, item, index);
53
+ }
54
+ const classNames = {
55
+ 'mdc-deprecated-list-item': true,
56
+ 'mdc-deprecated-list-item--disabled': item.disabled,
57
+ 'mdc-deprecated-list-item--selected': item.selected,
58
+ };
59
+ const attributes = {};
60
+ if (index === this.applyTabIndexToItemAtIndex) {
61
+ attributes.tabindex = '0';
62
+ }
63
+ return (h("li", Object.assign({ class: classNames, "aria-disabled": item.disabled ? 'true' : 'false', "aria-selected": item.selected ? 'true' : 'false', "data-index": index }, attributes),
64
+ item.icon ? this.renderIcon(this.config, item) : null,
65
+ this.renderText(item),
66
+ this.twoLines && this.avatarList ? this.renderDivider() : null,
67
+ this.renderActionMenu(item.actions)));
68
+ };
69
+ /**
70
+ * Render the text of the list item
71
+ *
72
+ * @param {ListItem} item the list item
73
+ * @returns {HTMLElement | string} the text for the list item
74
+ */
75
+ this.renderText = (item) => {
76
+ if (this.isSimpleItem(item)) {
77
+ return (h("span", { class: "mdc-deprecated-list-item__text" }, item.text));
78
+ }
79
+ return (h("div", { class: "mdc-deprecated-list-item__text" },
80
+ h("div", { class: "mdc-deprecated-list-item__primary-command-text" },
81
+ h("div", { class: "mdc-deprecated-list-item__primary-text" }, item.text)),
82
+ h("div", { class: "mdc-deprecated-list-item__secondary-text" }, item.secondaryText)));
83
+ };
84
+ this.isSimpleItem = (item) => {
85
+ if ('secondaryText' in item) {
86
+ return false;
87
+ }
88
+ return true;
89
+ };
90
+ /**
91
+ * Render an icon for a list item
92
+ *
93
+ * @param {ListRendererConfig} config the config object, passed on from the `renderListItem` function
94
+ * @param {ListItem} item the list item
95
+ * @returns {HTMLElement} the icon element
96
+ */
97
+ this.renderIcon = (config, item) => {
98
+ const style = {};
99
+ if (item.iconColor) {
100
+ if (config.badgeIcons) {
101
+ style['--icon-background-color'] = item.iconColor;
102
+ }
103
+ else {
104
+ style.color = item.iconColor;
105
+ }
106
+ }
107
+ return (h("limel-icon", { badge: config.badgeIcons, class: "mdc-deprecated-list-item__graphic", name: item.icon, style: style, size: config.iconSize }));
108
+ };
109
+ this.renderDivider = () => {
110
+ const classes = {
111
+ 'mdc-deprecated-list-divider': true,
112
+ 'mdc-deprecated-list-divider--inset': true,
113
+ };
114
+ if (this.config.iconSize) {
115
+ classes[this.config.iconSize] = true;
116
+ }
117
+ return h("hr", { class: classes });
118
+ };
119
+ this.renderActionMenu = (actions) => {
120
+ if (!actions || actions.length === 0) {
121
+ return;
122
+ }
123
+ return (h("limel-menu", { class: "mdc-deprecated-list-item__meta", items: actions, openDirection: "left" },
124
+ h("limel-icon", { slot: "trigger", name: "menu_2", size: "small" })));
125
+ };
126
+ this.renderVariantListItem = (config, item, index) => {
127
+ let itemTemplate;
128
+ if (config.type === 'radio') {
129
+ itemTemplate = (h(RadioButtonTemplate, { id: `c_${index}`, checked: item.selected, disabled: item.disabled }));
130
+ }
131
+ else if (config.type === 'checkbox') {
132
+ itemTemplate = (h(CheckboxTemplate, { id: `c_${index}`, checked: item.selected, disabled: item.disabled }));
133
+ }
134
+ const classNames = {
135
+ 'mdc-deprecated-list-item': true,
136
+ 'mdc-deprecated-list-item--disabled': item.disabled,
137
+ 'mdc-deprecated-list-item__text': !item.secondaryText,
138
+ };
139
+ const attributes = {};
140
+ if (index === this.applyTabIndexToItemAtIndex) {
141
+ attributes.tabindex = '0';
142
+ }
143
+ return (h("li", Object.assign({ class: classNames, role: config.type, "aria-checked": item.selected ? 'true' : 'false', "aria-disabled": item.disabled ? 'true' : 'false', "data-index": index }, attributes), this.renderVariantListItemContent(config, item, itemTemplate)));
144
+ };
145
+ this.renderVariantListItemContent = (config, item, itemTemplate) => {
146
+ if (this.hasIcons) {
147
+ return [
148
+ item.icon ? this.renderIcon(config, item) : null,
149
+ this.renderText(item),
150
+ h("div", { class: "mdc-deprecated-list-item__meta" }, itemTemplate),
151
+ ];
152
+ }
153
+ return [
154
+ h("div", { class: "mdc-deprecated-list-item__graphic" }, itemTemplate),
155
+ this.renderText(item),
156
+ ];
157
+ };
12
158
  }
13
159
  render(items, config = {}) {
14
160
  items = items || [];
@@ -16,14 +162,11 @@ export class ListRenderer {
16
162
  this.twoLines = items.some((item) => {
17
163
  return 'secondaryText' in item && !!item.secondaryText;
18
164
  });
19
- this.commandKey = items.some((item) => {
20
- return 'commandText' in item && !!item.commandText;
21
- });
22
165
  this.hasIcons = items.some((item) => {
23
166
  return 'icon' in item && !!item.icon;
24
167
  });
25
168
  this.avatarList = this.config.badgeIcons && this.hasIcons;
26
- const selectableListTypes = ['selectable', 'radio', 'checkbox', 'menu'];
169
+ const selectableListTypes = ['selectable', 'radio', 'checkbox'];
27
170
  let role;
28
171
  switch (this.config.type) {
29
172
  case 'checkbox':
@@ -33,7 +176,7 @@ export class ListRenderer {
33
176
  role = 'radiogroup';
34
177
  break;
35
178
  default:
36
- role = this.config.type === 'menu' ? 'menu' : 'listbox';
179
+ role = 'listbox';
37
180
  }
38
181
  this.applyTabIndexToItemAtIndex =
39
182
  this.getIndexForWhichToApplyTabIndex(items);
@@ -46,164 +189,6 @@ export class ListRenderer {
46
189
  this.commandKey &&
47
190
  ['small', 'x-small'].includes(this.config.iconSize),
48
191
  };
49
- return (h("ul", { class: classNames, "aria-hidden": (this.config.type === 'menu').toString(), role: role, "aria-orientation": "vertical" }, items.map(this.renderListItem)));
50
- }
51
- /**
52
- * Determine which ListItem should have the `tab-index` attribute set,
53
- * and return the index at which that ListItem is located in `items`.
54
- * Returns `undefined` if no item should have the attribute set.
55
- * See https://github.com/material-components/material-components-web/tree/e66a43a75fef4f9179e24856649518e15e279a04/packages/mdc-list#accessibility
56
- *
57
- * @param {Array<ListItem | ListSeparator | MenuItems>} items the items of the list, including any `ListSeparator`:s
58
- * @returns {number} the index as per the description
59
- */
60
- getIndexForWhichToApplyTabIndex(items) {
61
- let result;
62
- for (let i = 0, max = items.length; i < max; i += 1) {
63
- if ('separator' in items[i]) {
64
- // Ignore ListSeparator
65
- }
66
- else {
67
- const item = items[i];
68
- if (item.selected) {
69
- result = i;
70
- break;
71
- }
72
- if (result === undefined && !item.disabled) {
73
- result = i;
74
- // Do NOT break, as any later item with
75
- // `selected=true` should get the tab-index instead!
76
- }
77
- }
78
- }
79
- return result;
80
- }
81
- /**
82
- * Render a single list item
83
- *
84
- * @param {ListItem | ListSeparator | MenuItems} item the item to render
85
- * @param {number} index the index the item had in the `items` array
86
- * @returns {HTMLElement} the list item
87
- */
88
- renderListItem(item, index) {
89
- if ('separator' in item) {
90
- return h("li", { class: "mdc-deprecated-list-divider", role: "separator" });
91
- }
92
- if (['radio', 'checkbox'].includes(this.config.type)) {
93
- return this.renderVariantListItem(this.config, item, index);
94
- }
95
- const classNames = {
96
- 'mdc-deprecated-list-item': true,
97
- 'mdc-deprecated-list-item--disabled': item.disabled,
98
- 'mdc-deprecated-list-item--selected': item.selected,
99
- };
100
- const attributes = {};
101
- if (index === this.applyTabIndexToItemAtIndex) {
102
- attributes.tabindex = '0';
103
- }
104
- return (h("li", Object.assign({ class: classNames, role: this.config.type === 'menu' ? 'menuitem' : '', "aria-disabled": item.disabled ? 'true' : 'false', "aria-selected": item.selected ? 'true' : 'false', "data-index": index }, attributes),
105
- item.icon ? this.renderIcon(this.config, item) : null,
106
- this.renderText(item),
107
- this.twoLines && this.avatarList ? this.renderDivider() : null,
108
- this.renderActionMenu(item.actions)));
109
- }
110
- /**
111
- * Render the text of the list item
112
- *
113
- * @param {ListItem | MenuItem} item the list item
114
- * @returns {HTMLElement | string} the text for the list item
115
- */
116
- renderText(item) {
117
- if (this.isSimpleItem(item)) {
118
- return (h("span", { class: "mdc-deprecated-list-item__text" }, item.text));
119
- }
120
- return (h("div", { class: "mdc-deprecated-list-item__text" },
121
- h("div", { class: "mdc-deprecated-list-item__primary-command-text" },
122
- h("div", { class: "mdc-deprecated-list-item__primary-text" }, item.text),
123
- this.renderCommandText(item)),
124
- h("div", { class: "mdc-deprecated-list-item__secondary-text" }, item.secondaryText)));
125
- }
126
- renderCommandText(item) {
127
- if (!('commandText' in item)) {
128
- return;
129
- }
130
- return (h("div", { class: "mdc-deprecated-list-item__command-text" }, item.commandText));
131
- }
132
- isSimpleItem(item) {
133
- if ('commandText' in item) {
134
- return false;
135
- }
136
- if ('secondaryText' in item) {
137
- return false;
138
- }
139
- return true;
140
- }
141
- /**
142
- * Render an icon for a list item
143
- *
144
- * @param {ListRendererConfig} config the config object, passed on from the `renderListItem` function
145
- * @param {ListItem} item the list item
146
- * @returns {HTMLElement} the icon element
147
- */
148
- renderIcon(config, item) {
149
- const style = {};
150
- if (item.iconColor) {
151
- if (config.badgeIcons) {
152
- style['--icon-background-color'] = item.iconColor;
153
- }
154
- else {
155
- style.color = item.iconColor;
156
- }
157
- }
158
- return (h("limel-icon", { badge: config.badgeIcons, class: "mdc-deprecated-list-item__graphic", name: item.icon, style: style, size: config.iconSize }));
159
- }
160
- renderDivider() {
161
- const classes = {
162
- 'mdc-deprecated-list-divider': true,
163
- 'mdc-deprecated-list-divider--inset': true,
164
- };
165
- if (this.config.iconSize) {
166
- classes[this.config.iconSize] = true;
167
- }
168
- return h("hr", { class: classes });
169
- }
170
- renderActionMenu(actions) {
171
- if (!actions || actions.length === 0) {
172
- return;
173
- }
174
- return (h("limel-menu", { class: "mdc-deprecated-list-item__meta", items: actions, openDirection: "left" },
175
- h("limel-icon", { slot: "trigger", name: "menu_2", size: "small" })));
176
- }
177
- renderVariantListItem(config, item, index) {
178
- let itemTemplate;
179
- if (config.type === 'radio') {
180
- itemTemplate = (h(RadioButtonTemplate, { id: `c_${index}`, checked: item.selected, disabled: item.disabled }));
181
- }
182
- else if (config.type === 'checkbox') {
183
- itemTemplate = (h(CheckboxTemplate, { id: `c_${index}`, checked: item.selected, disabled: item.disabled }));
184
- }
185
- const classNames = {
186
- 'mdc-deprecated-list-item': true,
187
- 'mdc-deprecated-list-item--disabled': item.disabled,
188
- 'mdc-deprecated-list-item__text': !item.secondaryText,
189
- };
190
- const attributes = {};
191
- if (index === this.applyTabIndexToItemAtIndex) {
192
- attributes.tabindex = '0';
193
- }
194
- return (h("li", Object.assign({ class: classNames, role: config.type, "aria-checked": item.selected ? 'true' : 'false', "aria-disabled": item.disabled ? 'true' : 'false', "data-index": index }, attributes), this.renderVariantListItemContent(config, item, itemTemplate)));
195
- }
196
- renderVariantListItemContent(config, item, itemTemplate) {
197
- if (this.hasIcons) {
198
- return [
199
- item.icon ? this.renderIcon(config, item) : null,
200
- this.renderText(item),
201
- h("div", { class: "mdc-deprecated-list-item__meta" }, itemTemplate),
202
- ];
203
- }
204
- return [
205
- h("div", { class: "mdc-deprecated-list-item__graphic" }, itemTemplate),
206
- this.renderText(item),
207
- ];
192
+ return (h("ul", { class: classNames, role: role, "aria-orientation": "vertical" }, items.map(this.renderListItem)));
208
193
  }
209
194
  }
@@ -3052,10 +3052,6 @@ a.mdc-list-item {
3052
3052
  pointer-events: none;
3053
3053
  }
3054
3054
 
3055
- .mdc-menu {
3056
- max-height: 70vh;
3057
- }
3058
-
3059
3055
  .mdc-deprecated-list {
3060
3056
  --mdc-theme-text-icon-on-background: var(
3061
3057
  --icon-color,
@@ -3123,12 +3119,6 @@ a.mdc-list-item {
3123
3119
  .mdc-deprecated-list.mdc-deprecated-list--avatar-list .mdc-deprecated-list-item:last-child hr.mdc-deprecated-list-divider {
3124
3120
  display: none;
3125
3121
  }
3126
- .mdc-deprecated-list .mdc-deprecated-list-item[role=menuitem] {
3127
- font-size: 0.8125rem;
3128
- }
3129
- .mdc-deprecated-list .mdc-deprecated-list-item[role=menuitem] .mdc-deprecated-list-item__graphic {
3130
- margin-right: 0.875rem;
3131
- }
3132
3122
  .mdc-deprecated-list.mdc-deprecated-list--two-line .mdc-deprecated-list-item__text {
3133
3123
  padding: 0.5rem 0;
3134
3124
  }