igniteui-webcomponents 5.0.0 → 5.0.2

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 (486) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +3 -3
  3. package/components/accordion/accordion.d.ts +0 -2
  4. package/components/accordion/accordion.js +7 -14
  5. package/components/accordion/accordion.js.map +1 -1
  6. package/components/accordion/themes/accordion.base.css.js +1 -1
  7. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  8. package/components/avatar/themes/avatar.base.css.js +1 -1
  9. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  10. package/components/badge/themes/badge.base.css.js +1 -1
  11. package/components/badge/themes/badge.base.css.js.map +1 -1
  12. package/components/badge/themes/shared/badge.bootstrap.css.js +1 -1
  13. package/components/badge/themes/shared/badge.bootstrap.css.js.map +1 -1
  14. package/components/badge/themes/shared/badge.common.css.js +1 -1
  15. package/components/badge/themes/shared/badge.common.css.js.map +1 -1
  16. package/components/banner/themes/banner.base.css.js +1 -1
  17. package/components/banner/themes/banner.base.css.js.map +1 -1
  18. package/components/banner/themes/shared/banner.bootstrap.css.js +1 -1
  19. package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
  20. package/components/banner/themes/shared/banner.fluent.css.js +1 -1
  21. package/components/banner/themes/shared/banner.fluent.css.js.map +1 -1
  22. package/components/banner/themes/shared/banner.indigo.css.js +1 -1
  23. package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
  24. package/components/banner/themes/shared/banner.material.css.js +1 -1
  25. package/components/banner/themes/shared/banner.material.css.js.map +1 -1
  26. package/components/button/themes/button/button.base.css.js +1 -1
  27. package/components/button/themes/button/button.base.css.js.map +1 -1
  28. package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
  29. package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
  30. package/components/button/themes/button/shared/button.common.css.js +1 -1
  31. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  32. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  33. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  34. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  35. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  36. package/components/button/themes/button/shared/button.material.css.js +1 -1
  37. package/components/button/themes/button/shared/button.material.css.js.map +1 -1
  38. package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
  39. package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
  40. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
  41. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
  42. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
  43. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
  44. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
  45. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
  46. package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
  47. package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
  48. package/components/button-group/themes/button.base.css.js +1 -1
  49. package/components/button-group/themes/button.base.css.js.map +1 -1
  50. package/components/button-group/themes/group.base.css.js +1 -1
  51. package/components/button-group/themes/group.base.css.js.map +1 -1
  52. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  53. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  54. package/components/button-group/themes/shared/button/button.fluent.css.js +1 -1
  55. package/components/button-group/themes/shared/button/button.fluent.css.js.map +1 -1
  56. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  57. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  58. package/components/button-group/themes/shared/group/group.common.css.js +1 -1
  59. package/components/button-group/themes/shared/group/group.common.css.js.map +1 -1
  60. package/components/calendar/calendar.d.ts +3 -2
  61. package/components/calendar/calendar.js +10 -9
  62. package/components/calendar/calendar.js.map +1 -1
  63. package/components/calendar/themes/calendar.base.css.js +1 -1
  64. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  65. package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
  66. package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
  67. package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
  68. package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
  69. package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
  70. package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
  71. package/components/calendar/themes/dark/calendar.material.css.js +1 -1
  72. package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
  73. package/components/calendar/themes/days-view.base.css.js +1 -1
  74. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  75. package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
  76. package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
  77. package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
  78. package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
  79. package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
  80. package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
  81. package/components/calendar/themes/light/calendar.material.css.js +1 -1
  82. package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
  83. package/components/calendar/themes/light/calendar.shared.css.js +1 -1
  84. package/components/calendar/themes/light/calendar.shared.css.js.map +1 -1
  85. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
  86. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
  87. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  88. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  89. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  90. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  91. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
  92. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js.map +1 -1
  93. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
  94. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
  95. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js +1 -1
  96. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js.map +1 -1
  97. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
  98. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
  99. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
  100. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
  101. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js +1 -1
  102. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js.map +1 -1
  103. package/components/calendar/themes/shared/material/calendar.material.css.js +1 -1
  104. package/components/calendar/themes/shared/material/calendar.material.css.js.map +1 -1
  105. package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
  106. package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
  107. package/components/calendar/themes/shared/material/year-month-view.material.css.js +1 -1
  108. package/components/calendar/themes/shared/material/year-month-view.material.css.js.map +1 -1
  109. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  110. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  111. package/components/card/themes/card.actions.base.css.js +1 -1
  112. package/components/card/themes/card.actions.base.css.js.map +1 -1
  113. package/components/card/themes/card.content.base.css.js +1 -1
  114. package/components/card/themes/card.content.base.css.js.map +1 -1
  115. package/components/card/themes/card.header.base.css.js +1 -1
  116. package/components/card/themes/card.header.base.css.js.map +1 -1
  117. package/components/card/themes/card.media.base.css.js +1 -1
  118. package/components/card/themes/card.media.base.css.js.map +1 -1
  119. package/components/card/themes/container.base.css.js +1 -1
  120. package/components/card/themes/container.base.css.js.map +1 -1
  121. package/components/card/themes/shared/container/card.common.css.js +1 -1
  122. package/components/card/themes/shared/container/card.common.css.js.map +1 -1
  123. package/components/card/themes/shared/container/card.fluent.css.js +1 -1
  124. package/components/card/themes/shared/container/card.fluent.css.js.map +1 -1
  125. package/components/card/themes/shared/container/card.indigo.css.js +1 -1
  126. package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
  127. package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
  128. package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
  129. package/components/checkbox/checkbox-base.d.ts +2 -3
  130. package/components/checkbox/checkbox-base.js +6 -10
  131. package/components/checkbox/checkbox-base.js.map +1 -1
  132. package/components/checkbox/themes/checkbox.base.css.js +1 -1
  133. package/components/checkbox/themes/checkbox.base.css.js.map +1 -1
  134. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  135. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  136. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  137. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  138. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  139. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  140. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  141. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  142. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  143. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  144. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  145. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  146. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  147. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  148. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  149. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  150. package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
  151. package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
  152. package/components/checkbox/themes/switch.base.css.js +1 -1
  153. package/components/checkbox/themes/switch.base.css.js.map +1 -1
  154. package/components/chip/chip.d.ts +1 -1
  155. package/components/chip/themes/chip.base.css.js +1 -1
  156. package/components/chip/themes/chip.base.css.js.map +1 -1
  157. package/components/combo/combo.d.ts +3 -4
  158. package/components/combo/combo.js +11 -23
  159. package/components/combo/combo.js.map +1 -1
  160. package/components/combo/themes/combo-header.base.css.js +1 -1
  161. package/components/combo/themes/combo-header.base.css.js.map +1 -1
  162. package/components/combo/themes/combo-item.base.css.js +1 -1
  163. package/components/combo/themes/combo-item.base.css.js.map +1 -1
  164. package/components/combo/themes/combo.base.css.js +1 -1
  165. package/components/combo/themes/combo.base.css.js.map +1 -1
  166. package/components/combo/themes/dark/combo.indigo.css.js +1 -1
  167. package/components/combo/themes/dark/combo.indigo.css.js.map +1 -1
  168. package/components/combo/themes/light/combo.indigo.css.js +1 -1
  169. package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
  170. package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
  171. package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
  172. package/components/combo/themes/shared/combo.common.css.js +1 -1
  173. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  174. package/components/combo/themes/shared/combo.fluent.css.js +1 -1
  175. package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
  176. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  177. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  178. package/components/combo/themes/shared/combo.material.css.js +1 -1
  179. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  180. package/components/common/controllers/key-bindings.d.ts +3 -3
  181. package/components/common/controllers/key-bindings.js +48 -49
  182. package/components/common/controllers/key-bindings.js.map +1 -1
  183. package/components/common/mixins/combo-box.d.ts +2 -2
  184. package/components/common/mixins/forms/associated-required.d.ts +13 -0
  185. package/components/common/mixins/forms/associated-required.js +47 -0
  186. package/components/common/mixins/forms/associated-required.js.map +1 -0
  187. package/components/common/mixins/forms/associated.d.ts +11 -0
  188. package/components/common/mixins/{form-associated.js → forms/associated.js} +102 -57
  189. package/components/common/mixins/forms/associated.js.map +1 -0
  190. package/components/common/mixins/forms/types.d.ts +125 -0
  191. package/components/common/mixins/forms/types.js +2 -0
  192. package/components/common/mixins/forms/types.js.map +1 -0
  193. package/components/date-picker/date-picker.d.ts +6 -3
  194. package/components/date-picker/date-picker.js +30 -24
  195. package/components/date-picker/date-picker.js.map +1 -1
  196. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +1 -1
  197. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -1
  198. package/components/date-picker/themes/dark/date-picker.fluent.css.js +1 -1
  199. package/components/date-picker/themes/dark/date-picker.fluent.css.js.map +1 -1
  200. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  201. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  202. package/components/date-picker/themes/dark/date-picker.material.css.js +1 -1
  203. package/components/date-picker/themes/dark/date-picker.material.css.js.map +1 -1
  204. package/components/date-picker/themes/date-picker.base.css.js +1 -1
  205. package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
  206. package/components/date-picker/themes/light/date-picker.bootstrap.css.js +1 -1
  207. package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -1
  208. package/components/date-picker/themes/light/date-picker.fluent.css.js +1 -1
  209. package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -1
  210. package/components/date-picker/themes/light/date-picker.indigo.css.js +1 -1
  211. package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -1
  212. package/components/date-picker/themes/light/date-picker.material.css.js +1 -1
  213. package/components/date-picker/themes/light/date-picker.material.css.js.map +1 -1
  214. package/components/date-picker/themes/light/date-picker.shared.css.js +1 -1
  215. package/components/date-picker/themes/light/date-picker.shared.css.js.map +1 -1
  216. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  217. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  218. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  219. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  220. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  221. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  222. package/components/date-time-input/date-time-input.js +5 -6
  223. package/components/date-time-input/date-time-input.js.map +1 -1
  224. package/components/dialog/dialog.d.ts +1 -1
  225. package/components/dialog/themes/dialog.base.css.js +1 -1
  226. package/components/dialog/themes/dialog.base.css.js.map +1 -1
  227. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  228. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  229. package/components/dialog/themes/shared/dialog.common.css.js +1 -1
  230. package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
  231. package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
  232. package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
  233. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  234. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  235. package/components/divider/themes/divider.base.css.js +1 -1
  236. package/components/divider/themes/divider.base.css.js.map +1 -1
  237. package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
  238. package/components/dropdown/themes/dropdown-group.base.css.js.map +1 -1
  239. package/components/dropdown/themes/dropdown-header.base.css.js +1 -1
  240. package/components/dropdown/themes/dropdown-header.base.css.js.map +1 -1
  241. package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
  242. package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
  243. package/components/dropdown/themes/dropdown.base.css.js +1 -1
  244. package/components/dropdown/themes/dropdown.base.css.js.map +1 -1
  245. package/components/dropdown/themes/shared/dropdown.fluent.css.js +1 -1
  246. package/components/dropdown/themes/shared/dropdown.fluent.css.js.map +1 -1
  247. package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
  248. package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
  249. package/components/dropdown/themes/shared/dropdown.material.css.js +1 -1
  250. package/components/dropdown/themes/shared/dropdown.material.css.js.map +1 -1
  251. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
  252. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
  253. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
  254. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
  255. package/components/expansion-panel/expansion-panel.d.ts +1 -1
  256. package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
  257. package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
  258. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
  259. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
  260. package/components/icon/registry/default-map.d.ts +1 -1
  261. package/components/icon/themes/icon.base.css.js +1 -1
  262. package/components/icon/themes/icon.base.css.js.map +1 -1
  263. package/components/input/input-base.d.ts +2 -2
  264. package/components/input/input-base.js +1 -1
  265. package/components/input/input-base.js.map +1 -1
  266. package/components/input/input.d.ts +0 -2
  267. package/components/input/input.js +4 -10
  268. package/components/input/input.js.map +1 -1
  269. package/components/input/themes/input.base.css.js +1 -1
  270. package/components/input/themes/input.base.css.js.map +1 -1
  271. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  272. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  273. package/components/input/themes/shared/input.common.css.js +1 -1
  274. package/components/input/themes/shared/input.common.css.js.map +1 -1
  275. package/components/input/themes/shared/input.fluent.css.js +1 -1
  276. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  277. package/components/input/themes/shared/input.indigo.css.js +1 -1
  278. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  279. package/components/input/themes/shared/input.material.css.js +1 -1
  280. package/components/input/themes/shared/input.material.css.js.map +1 -1
  281. package/components/list/themes/container.base.css.js +1 -1
  282. package/components/list/themes/container.base.css.js.map +1 -1
  283. package/components/list/themes/header.base.css.js +1 -1
  284. package/components/list/themes/header.base.css.js.map +1 -1
  285. package/components/list/themes/item.base.css.js +1 -1
  286. package/components/list/themes/item.base.css.js.map +1 -1
  287. package/components/list/themes/shared/item/list-item.common.css.js +1 -1
  288. package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
  289. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  290. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  291. package/components/mask-input/mask-input.d.ts +1 -2
  292. package/components/mask-input/mask-input.js +5 -10
  293. package/components/mask-input/mask-input.js.map +1 -1
  294. package/components/nav-drawer/nav-drawer-item.d.ts +1 -1
  295. package/components/nav-drawer/nav-drawer.d.ts +1 -1
  296. package/components/nav-drawer/themes/container.base.css.js +1 -1
  297. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  298. package/components/nav-drawer/themes/header-item.base.css.js +1 -1
  299. package/components/nav-drawer/themes/header-item.base.css.js.map +1 -1
  300. package/components/nav-drawer/themes/item.base.css.js +1 -1
  301. package/components/nav-drawer/themes/item.base.css.js.map +1 -1
  302. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  303. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  304. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
  305. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
  306. package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
  307. package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
  308. package/components/navbar/themes/dark/navbar.bootstrap.css.js +1 -1
  309. package/components/navbar/themes/dark/navbar.bootstrap.css.js.map +1 -1
  310. package/components/navbar/themes/dark/navbar.indigo.css.js +1 -1
  311. package/components/navbar/themes/dark/navbar.indigo.css.js.map +1 -1
  312. package/components/navbar/themes/dark/navbar.material.css.js +1 -1
  313. package/components/navbar/themes/dark/navbar.material.css.js.map +1 -1
  314. package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
  315. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  316. package/components/navbar/themes/light/navbar.indigo.css.js +1 -1
  317. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  318. package/components/navbar/themes/light/navbar.shared.css.js +1 -1
  319. package/components/navbar/themes/light/navbar.shared.css.js.map +1 -1
  320. package/components/navbar/themes/navbar.base.css.js +1 -1
  321. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  322. package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
  323. package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
  324. package/components/navbar/themes/shared/navbar.common.css.js +1 -1
  325. package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
  326. package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
  327. package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
  328. package/components/popover/themes/light/popover.base.css.js +1 -1
  329. package/components/popover/themes/light/popover.base.css.js.map +1 -1
  330. package/components/progress/base.d.ts +1 -1
  331. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  332. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  333. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js +1 -1
  334. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js.map +1 -1
  335. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  336. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  337. package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js +1 -1
  338. package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js.map +1 -1
  339. package/components/progress/themes/linear/shared/linear.progress.common.css.js +1 -1
  340. package/components/progress/themes/linear/shared/linear.progress.common.css.js.map +1 -1
  341. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
  342. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
  343. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
  344. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
  345. package/components/radio/radio.d.ts +4 -5
  346. package/components/radio/radio.js +24 -32
  347. package/components/radio/radio.js.map +1 -1
  348. package/components/radio/themes/radio.base.css.js +1 -1
  349. package/components/radio/themes/radio.base.css.js.map +1 -1
  350. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  351. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  352. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  353. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  354. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  355. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  356. package/components/radio/themes/shared/radio.material.css.js +1 -1
  357. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  358. package/components/radio/utils.js +1 -1
  359. package/components/radio/utils.js.map +1 -1
  360. package/components/radio-group/radio-group.base.css.js +1 -1
  361. package/components/radio-group/radio-group.base.css.js.map +1 -1
  362. package/components/radio-group/radio-group.js +1 -1
  363. package/components/radio-group/radio-group.js.map +1 -1
  364. package/components/rating/rating.d.ts +4 -3
  365. package/components/rating/rating.js +26 -25
  366. package/components/rating/rating.js.map +1 -1
  367. package/components/rating/themes/rating-symbol.base.css.js +1 -1
  368. package/components/rating/themes/rating-symbol.base.css.js.map +1 -1
  369. package/components/rating/themes/rating.base.css.js +1 -1
  370. package/components/rating/themes/rating.base.css.js.map +1 -1
  371. package/components/rating/themes/shared/rating.indigo.css.js +1 -1
  372. package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
  373. package/components/ripple/ripple.material.css.js +1 -1
  374. package/components/ripple/ripple.material.css.js.map +1 -1
  375. package/components/select/select.d.ts +2 -2
  376. package/components/select/select.js +12 -15
  377. package/components/select/select.js.map +1 -1
  378. package/components/select/themes/dark/select.bootstrap.css.js +1 -1
  379. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
  380. package/components/select/themes/dark/select.fluent.css.js +1 -1
  381. package/components/select/themes/dark/select.fluent.css.js.map +1 -1
  382. package/components/select/themes/dark/select.indigo.css.js +1 -1
  383. package/components/select/themes/dark/select.indigo.css.js.map +1 -1
  384. package/components/select/themes/dark/select.material.css.js +1 -1
  385. package/components/select/themes/dark/select.material.css.js.map +1 -1
  386. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  387. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  388. package/components/select/themes/light/select.fluent.css.js +1 -1
  389. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  390. package/components/select/themes/light/select.indigo.css.js +1 -1
  391. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  392. package/components/select/themes/light/select.material.css.js +1 -1
  393. package/components/select/themes/light/select.material.css.js.map +1 -1
  394. package/components/select/themes/select.base.css.js +1 -1
  395. package/components/select/themes/select.base.css.js.map +1 -1
  396. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  397. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  398. package/components/select/themes/shared/select.common.css.js +1 -1
  399. package/components/select/themes/shared/select.common.css.js.map +1 -1
  400. package/components/select/themes/shared/select.fluent.css.js +1 -1
  401. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  402. package/components/select/themes/shared/select.indigo.css.js +1 -1
  403. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  404. package/components/select/themes/shared/select.material.css.js +1 -1
  405. package/components/select/themes/shared/select.material.css.js.map +1 -1
  406. package/components/slider/slider.d.ts +2 -1
  407. package/components/slider/slider.js +5 -2
  408. package/components/slider/slider.js.map +1 -1
  409. package/components/slider/themes/shared/slider.bootstrap.css.js +1 -1
  410. package/components/slider/themes/shared/slider.bootstrap.css.js.map +1 -1
  411. package/components/slider/themes/shared/slider.fluent.css.js +1 -1
  412. package/components/slider/themes/shared/slider.fluent.css.js.map +1 -1
  413. package/components/slider/themes/shared/slider.indigo.css.js +1 -1
  414. package/components/slider/themes/shared/slider.indigo.css.js.map +1 -1
  415. package/components/slider/themes/shared/slider.material.css.js +1 -1
  416. package/components/slider/themes/shared/slider.material.css.js.map +1 -1
  417. package/components/slider/themes/slider.base.css.js +1 -1
  418. package/components/slider/themes/slider.base.css.js.map +1 -1
  419. package/components/snackbar/themes/shared/snackbar.common.css.js +1 -1
  420. package/components/snackbar/themes/shared/snackbar.common.css.js.map +1 -1
  421. package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
  422. package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
  423. package/components/snackbar/themes/snackbar.base.css.js +1 -1
  424. package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
  425. package/components/stepper/themes/step/shared/step.bootstrap.css.js +1 -1
  426. package/components/stepper/themes/step/shared/step.bootstrap.css.js.map +1 -1
  427. package/components/stepper/themes/step/shared/step.common.css.js +1 -1
  428. package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
  429. package/components/stepper/themes/step/shared/step.fluent.css.js +1 -1
  430. package/components/stepper/themes/step/shared/step.fluent.css.js.map +1 -1
  431. package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
  432. package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
  433. package/components/stepper/themes/step/step.base.css.js +1 -1
  434. package/components/stepper/themes/step/step.base.css.js.map +1 -1
  435. package/components/stepper/themes/stepper/stepper.base.css.js +1 -1
  436. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -1
  437. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  438. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  439. package/components/tabs/themes/tab-panel.base.css.js +1 -1
  440. package/components/tabs/themes/tab-panel.base.css.js.map +1 -1
  441. package/components/tabs/themes/tab.base.css.js +1 -1
  442. package/components/tabs/themes/tab.base.css.js.map +1 -1
  443. package/components/tabs/themes/tabs.base.css.js +1 -1
  444. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  445. package/components/textarea/textarea.d.ts +1 -1
  446. package/components/textarea/textarea.js +4 -9
  447. package/components/textarea/textarea.js.map +1 -1
  448. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  449. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  450. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  451. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  452. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  453. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  454. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  455. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  456. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  457. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  458. package/components/textarea/themes/textarea.base.css.js +1 -1
  459. package/components/textarea/themes/textarea.base.css.js.map +1 -1
  460. package/components/toast/themes/shared/toast.common.css.js +1 -1
  461. package/components/toast/themes/shared/toast.common.css.js.map +1 -1
  462. package/components/toast/themes/toast.base.css.js +1 -1
  463. package/components/toast/themes/toast.base.css.js.map +1 -1
  464. package/components/tree/themes/container.base.css.js +1 -1
  465. package/components/tree/themes/container.base.css.js.map +1 -1
  466. package/components/tree/themes/item.base.css.js +1 -1
  467. package/components/tree/themes/item.base.css.js.map +1 -1
  468. package/components/tree/themes/shared/item.common.css.js +1 -1
  469. package/components/tree/themes/shared/item.common.css.js.map +1 -1
  470. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  471. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  472. package/components/tree/themes/shared/item.material.css.js +1 -1
  473. package/components/tree/themes/shared/item.material.css.js.map +1 -1
  474. package/custom-elements.json +5994 -2394
  475. package/igniteui-webcomponents.html-data.json +1 -1
  476. package/index.d.ts +2 -0
  477. package/index.js.map +1 -1
  478. package/package.json +1 -1
  479. package/themes/dark/indigo.css +1 -1
  480. package/themes/light/indigo.css +1 -1
  481. package/web-types.json +1 -1
  482. package/components/common/mixins/form-associated-required.d.ts +0 -16
  483. package/components/common/mixins/form-associated-required.js +0 -29
  484. package/components/common/mixins/form-associated-required.js.map +0 -1
  485. package/components/common/mixins/form-associated.d.ts +0 -92
  486. package/components/common/mixins/form-associated.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"combo.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6qHAA6qH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);display:block;padding:0;margin-top:.3125rem;color:var(--helper-text-color)}[part=filter-input]{padding:max(var(--is-large, 1)*max(8px, -1 * 8px)*var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)),var(--is-medium, 1)*max(4px, -1 * 4px)*var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)),var(--is-small, 1)*max(2px, -1 * 2px)*var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)))}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(suffix){background:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){height:var(--size)}[part=empty]{color:var(--empty-list-placeholder-color)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host([invalid]:focus-within) igc-input::part(input){height:calc(var(--size) - 0.25rem)}:host([invalid]:focus-within) igc-input::part(suffix){height:var(--size);-webkit-margin-end:-0.0625rem;margin-inline-end:-0.0625rem;-webkit-margin-before:-0.125rem;margin-block-start:-0.125rem}:host([invalid]:focus-within) igc-input::part(prefix){-webkit-margin-start:-0.0625rem;margin-inline-start:-0.0625rem;-webkit-margin-before:-0.125rem;margin-block-start:-0.125rem}:host(:disabled) igc-input::part(input)::-webkit-input-placeholder, :host([disabled]) igc-input::part(input)::-webkit-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input):-ms-input-placeholder, :host([disabled]) igc-input::part(input):-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-ms-input-placeholder, :host([disabled]) igc-input::part(input)::-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
1
+ {"version":3,"file":"combo.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ssHAAssH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);display:block;padding:0;margin-top:.3125rem;color:var(--helper-text-color)}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)))}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none;height:var(--size)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(suffix){background:rgba(0,0,0,0)}[part=empty]{color:var(--empty-list-placeholder-color)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host([invalid]:focus-within) igc-input::part(input){height:calc(var(--size) - 0.25rem)}:host([invalid]:focus-within) igc-input::part(suffix){height:var(--size);margin-inline-end:-0.0625rem;margin-block-start:-0.125rem}:host([invalid]:focus-within) igc-input::part(prefix){margin-inline-start:-0.0625rem;margin-block-start:-0.125rem}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.375rem;padding-inline:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part="case-icon active"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;
2
+ export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.25rem}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part="case-icon active"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius);outline:var(--border-width) solid var(--border-color);padding:.1875rem}[part=list-wrapper] igc-input{--ig-theme: indigo;--ig-size: var(--ig-size-medium)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:hover) [part~=toggle-icon],:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:hover) [part~=toggle-icon] igc-icon,:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:hover) [part~=clear-icon],:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:hover) [part~=clear-icon] igc-icon,:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;
3
3
  //# sourceMappingURL=combo.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"combo.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6lGAA6lG,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.375rem;padding-inline:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=\"case-icon active\"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
1
+ {"version":3,"file":"combo.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,swGAAswG,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host igc-input::part(container){padding-inline:0}:host [part=helper-text]{margin-top:.25rem}:host ::slotted([slot=helper-text]){color:var(--helper-text-color)}[part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=\"case-icon active\"]{color:hsla(var(--ig-gray-900), var(--ig-gray-a))}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius);outline:var(--border-width) solid var(--border-color);padding:.1875rem}[part=list-wrapper] igc-input{--ig-theme: indigo;--ig-size: var(--ig-size-medium)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=filter-input]{padding:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:focus-within) igc-input::part(label){color:var(--focused-secondary-color)}:host(:hover) [part~=toggle-icon],:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border);color:var(--toggle-button-foreground-focus)}:host(:hover) [part~=toggle-icon] igc-icon,:host(:focus-within) [part~=toggle-icon] igc-icon{color:inherit}:host(:hover) [part~=clear-icon],:host(:focus-within) [part~=clear-icon]{background:var(--clear-button-background-focus);color:var(--clear-button-foreground-focus)}:host(:hover) [part~=clear-icon] igc-icon,:host(:focus-within) [part~=clear-icon] igc-icon{color:inherit}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-selection, :host([disabled]) igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:disabled) igc-input::part(input)::selection,:host([disabled]) igc-input::part(input)::selection{background:rgba(0,0,0,0)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part="toggle-icon filled"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-webkit-input-placeholder, :host([disabled]) igc-input::part(input)::-webkit-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input):-ms-input-placeholder, :host([disabled]) igc-input::part(input):-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-ms-input-placeholder, :host([disabled]) igc-input::part(input)::-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;
2
+ export const styles = css `:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part="case-icon active"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part="toggle-icon filled"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{color:var(--toggle-button-foreground-filled);background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;
3
3
  //# sourceMappingURL=combo.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"combo.material.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,krIAAkrI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input){border-inline-end-color:rgba(0,0,0,0)}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=\"toggle-icon filled\"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-webkit-input-placeholder, :host([disabled]) igc-input::part(input)::-webkit-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input):-ms-input-placeholder, :host([disabled]) igc-input::part(input):-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) igc-input::part(input)::-ms-input-placeholder, :host([disabled]) igc-input::part(input)::-ms-input-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;\n"]}
1
+ {"version":3,"file":"combo.material.css.js","sourceRoot":"","sources":["../../../../../src/components/combo/themes/shared/combo.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,i+HAAi+H,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--combo-size: var(--component-size)}:host [part=helper-text]{margin-top:.3125rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host ::slotted([slot=helper-text]){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);line-height:1}:host ::slotted([slot=prefix]),:host ::slotted([slot=suffix]){color:inherit}:host(:not([single-select]))>igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}:host(:not([single-select]))>igc-input::part(input)::selection{background:rgba(0,0,0,0)}[part=list-wrapper]{background:var(--background-color);border-radius:var(--border-radius)}[part=list-wrapper] igc-input::part(container){background:rgba(0,0,0,0);border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;border-radius:0}[part=list-wrapper] igc-input::part(start){display:none}[part=list-wrapper] igc-input::part(input){border-radius:0;padding:0;border-inline-start:0;border-inline-end-color:rgba(0,0,0,0);border-block-start:0;box-shadow:none}[part=list-wrapper] igc-input::part(input)::-moz-selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] igc-input::part(input)::selection{background:hsla(var(--ig-primary-100), var(--ig-primary-a))}[part=list-wrapper] [part=case-icon]{color:hsla(var(--ig-gray-600), var(--ig-gray-a))}[part=list-wrapper] [part=\"case-icon active\"]{color:hsla(var(--ig-primary-500), var(--ig-primary-a))}[part=\"toggle-icon filled\"]{color:var(--toggle-button-foreground-filled)}:host(:focus-within) [part~=toggle-icon]{color:var(--toggle-button-foreground-filled);background:var(--toggle-button-background-focus)}:host(:not([outlined]):focus-within)>igc-input::part(container){background:var(--box-background-focus)}:host([outlined]:focus-within) [part~=toggle-icon]{background:var(--toggle-button-background-focus--border)}:host([invalid]) ::slotted([slot=helper-text]){color:var(--error-secondary-color)}:host(:disabled) igc-input::part(input)::-moz-placeholder, :host([disabled]) igc-input::part(input)::-moz-placeholder{color:var(--disabled-text-color)}:host(:disabled) ::slotted([slot=prefix]),:host(:disabled) ::slotted([slot=suffix]),:host(:disabled) igc-input::part(label),:host(:disabled) igc-input::part(input)::placeholder,:host(:disabled) ::slotted([slot=helper-text]),:host([disabled]) ::slotted([slot=prefix]),:host([disabled]) ::slotted([slot=suffix]),:host([disabled]) igc-input::part(label),:host([disabled]) igc-input::part(input)::placeholder,:host([disabled]) ::slotted([slot=helper-text]){color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon],:host([disabled]) [part~=clear-icon]{background:inherit;color:var(--disabled-text-color)}:host(:disabled) [part~=clear-icon] igc-icon,:host([disabled]) [part~=clear-icon] igc-icon{color:inherit}:host(:disabled) [part~=toggle-icon],:host([disabled]) [part~=toggle-icon]{background:var(--toggle-button-background-disabled);color:var(--toggle-button-foreground-disabled)}:host(:disabled) [part~=toggle-icon] igc-icon,:host([disabled]) [part~=toggle-icon] igc-icon{color:inherit}:host(:disabled[outlined]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][disabled]) igc-input::part(filled)+igc-input::part(notch),:host([outlined][invalid]) igc-input::part(filled)+igc-input::part(notch){border-top-color:rgba(0,0,0,0)}`;\n"]}
@@ -125,20 +125,20 @@ declare class KeyBindingController implements ReactiveController {
125
125
  * Checks and executes any event modifiers that are present in the matched binding.
126
126
  */
127
127
  private eventModifiersMatch;
128
- private keysMatch;
129
128
  private bindingMatches;
129
+ private shouldSkip;
130
130
  handleEvent(event: KeyboardEvent): void;
131
131
  /**
132
132
  * Registers a keybinding handler.
133
133
  */
134
- set(key: string | string[], fn: KeyBindingHandler, options?: KeyBindingOptions): this;
134
+ set(key: string | string[], handler: KeyBindingHandler, options?: KeyBindingOptions): this;
135
135
  /**
136
136
  * Register a handler function which is called when the target receives a key
137
137
  * which "activates" it.
138
138
  *
139
139
  * In the browser context this is usually either an Enter and/or Space keypress.
140
140
  */
141
- setActivateHandler(fn: KeyBindingHandler, options?: KeyBindingOptions): this;
141
+ setActivateHandler(handler: KeyBindingHandler, options?: KeyBindingOptions): this;
142
142
  hostConnected(): void;
143
143
  hostDisconnected(): void;
144
144
  }
@@ -1,4 +1,4 @@
1
- import { isElement } from '../util.js';
1
+ import { findElementFromEventPath } from '../util.js';
2
2
  export const arrowLeft = 'ArrowLeft';
3
3
  export const arrowRight = 'ArrowRight';
4
4
  export const arrowUp = 'ArrowUp';
@@ -15,16 +15,16 @@ export const altKey = 'Alt';
15
15
  export const ctrlKey = 'Ctrl';
16
16
  export const metaKey = 'Meta';
17
17
  export const shiftKey = 'Shift';
18
- const __modifiers = new Set([altKey, ctrlKey, metaKey, shiftKey].map((key) => key.toLowerCase()));
18
+ const Modifiers = new Map([altKey, ctrlKey, metaKey, shiftKey].map((key) => {
19
+ const mod = key.toLowerCase();
20
+ return key === ctrlKey ? ['control', mod] : [mod, mod];
21
+ }));
19
22
  const defaultOptions = {
20
23
  skip: ['input', 'textarea', 'select'],
21
24
  };
22
25
  function normalizeKeys(keys) {
23
26
  return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());
24
27
  }
25
- function isModifier(key) {
26
- return __modifiers.has(key);
27
- }
28
28
  function isKeydown(event) {
29
29
  return event.type === 'keydown';
30
30
  }
@@ -45,10 +45,16 @@ function isKeydownRepeatTrigger(triggers) {
45
45
  export function parseKeys(keys) {
46
46
  const parsed = normalizeKeys(keys);
47
47
  return {
48
- keys: parsed.filter((key) => !isModifier(key)),
49
- modifiers: parsed.filter((key) => isModifier(key)),
48
+ keys: parsed.filter((key) => !Modifiers.has(key)),
49
+ modifiers: parsed.filter((key) => Modifiers.has(key)),
50
50
  };
51
51
  }
52
+ function createCombinationKey(keys, modifiers) {
53
+ return Array.from(Modifiers.values())
54
+ .filter((mod) => modifiers.includes(mod))
55
+ .concat(keys)
56
+ .join('+');
57
+ }
52
58
  class KeyBindingController {
53
59
  get _element() {
54
60
  if (this._observedElement) {
@@ -69,7 +75,7 @@ class KeyBindingController {
69
75
  };
70
76
  }
71
77
  constructor(host, options) {
72
- this.bindings = new Set();
78
+ this.bindings = new Map();
73
79
  this.pressedKeys = new Set();
74
80
  this._host = host;
75
81
  this._ref = options?.ref;
@@ -84,16 +90,8 @@ class KeyBindingController {
84
90
  event.stopPropagation();
85
91
  }
86
92
  }
87
- keysMatch(binding, event) {
88
- const modifiers = binding.modifiers ?? [];
89
- return (binding.keys.every((key) => this.pressedKeys.has(key)) &&
90
- modifiers.every((mod) => !!event[`${mod}Key`]));
91
- }
92
93
  bindingMatches(binding, event) {
93
94
  const triggers = binding.options?.triggers ?? ['keydown'];
94
- if (!this.keysMatch(binding, event)) {
95
- return false;
96
- }
97
95
  if (isKeydown(event) && isKeydownTrigger(triggers)) {
98
96
  return true;
99
97
  }
@@ -102,52 +100,53 @@ class KeyBindingController {
102
100
  }
103
101
  return false;
104
102
  }
105
- handleEvent(event) {
106
- const key = event.key.toLowerCase();
107
- const path = event.composedPath();
103
+ shouldSkip(event) {
108
104
  const skip = this._options?.skip;
109
- if (!this._element || !path.includes(this._element)) {
110
- return;
111
- }
112
- if (skip) {
113
- const shouldSkip = Array.isArray(skip)
114
- ? path.some((target) => isElement(target) &&
115
- skip.some((selector) => target.matches(selector)))
116
- : skip.call(this._host, event.target, event);
117
- if (shouldSkip) {
118
- return;
119
- }
105
+ if (!findElementFromEventPath((e) => e === this._element, event)) {
106
+ return true;
120
107
  }
121
- if (isModifier(key)) {
122
- this.pressedKeys.clear();
108
+ if (!skip) {
109
+ return false;
123
110
  }
124
- if (isKeydown(event) && !isModifier(key)) {
125
- this.pressedKeys.add(key);
111
+ return Array.isArray(skip)
112
+ ? findElementFromEventPath(skip.join(), event)
113
+ : skip.call(this._host, event.target, event);
114
+ }
115
+ handleEvent(event) {
116
+ if (this.shouldSkip(event)) {
117
+ return;
126
118
  }
127
- for (const binding of this.bindings) {
128
- if (this.bindingMatches(binding, event)) {
129
- this.eventModifiersMatch(binding, event);
130
- binding.handler.call(this._host, event);
131
- if (isKeydownRepeatTrigger(binding.options?.triggers)) {
132
- this.pressedKeys.delete(key);
133
- }
119
+ const key = event.key.toLowerCase();
120
+ Modifiers.has(key) ? this.pressedKeys.clear() : this.pressedKeys.add(key);
121
+ const pendingKeys = Array.from(this.pressedKeys);
122
+ const modifiers = Array.from(Modifiers.values()).filter((mod) => event[`${mod}Key`]);
123
+ const binding = this.bindings.get(createCombinationKey(pendingKeys, modifiers));
124
+ if (binding && this.bindingMatches(binding, event)) {
125
+ this.eventModifiersMatch(binding, event);
126
+ binding.handler.call(this._host, event);
127
+ if (isKeydownRepeatTrigger(binding.options?.triggers)) {
128
+ this.pressedKeys.delete(key);
134
129
  }
135
130
  }
136
- if (isKeyup(event) && !isModifier(key)) {
131
+ if (isKeyup(event) && !Modifiers.has(key)) {
137
132
  this.pressedKeys.delete(key);
138
133
  }
139
134
  }
140
- set(key, fn, options) {
141
- this.bindings.add({
142
- ...parseKeys(key),
143
- handler: fn,
144
- options: { ...this._options?.bindingDefaults, ...options },
135
+ set(key, handler, options) {
136
+ const { keys, modifiers } = parseKeys(key);
137
+ const combination = createCombinationKey(keys, modifiers);
138
+ const _options = { ...this._options?.bindingDefaults, ...options };
139
+ this.bindings.set(combination, {
140
+ keys,
141
+ handler,
142
+ options: _options,
143
+ modifiers,
145
144
  });
146
145
  return this;
147
146
  }
148
- setActivateHandler(fn, options) {
147
+ setActivateHandler(handler, options) {
149
148
  for (const key of [enterKey, spaceBar]) {
150
- this.set(key, fn, options);
149
+ this.set(key, handler, options);
151
150
  }
152
151
  return this;
153
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"key-bindings.js","sourceRoot":"","sources":["../../../../src/components/common/controllers/key-bindings.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { isElement } from '../util.js';\n\n/* Common keys */\nexport const arrowLeft = 'ArrowLeft' as const;\nexport const arrowRight = 'ArrowRight' as const;\nexport const arrowUp = 'ArrowUp' as const;\nexport const arrowDown = 'ArrowDown' as const;\nexport const enterKey = 'Enter' as const;\nexport const spaceBar = ' ' as const;\nexport const escapeKey = 'Escape' as const;\nexport const homeKey = 'Home' as const;\nexport const endKey = 'End' as const;\nexport const pageUpKey = 'PageUp' as const;\nexport const pageDownKey = 'PageDown' as const;\nexport const tabKey = 'Tab' as const;\n\n/* Modifiers */\nexport const altKey = 'Alt' as const;\nexport const ctrlKey = 'Ctrl' as const;\nexport const metaKey = 'Meta' as const;\nexport const shiftKey = 'Shift' as const;\n\n/* Types */\nexport type KeyBindingHandler = (event: KeyboardEvent) => void;\nexport type KeyBindingObserverCleanup = { unsubscribe: () => void };\n\n/**\n * Whether the current event should be ignored by the controller.\n *\n * @param node - The event target\n * @param event - The event object\n *\n * When `true` is returned, the current event is ignored.\n */\nexport type KeyBindingSkipCallback = (\n node: Element,\n event: KeyboardEvent\n) => boolean;\n\n/**\n * The event type which will trigger the bound handler.\n *\n * @remarks\n * `keydownRepeat` is similar to `keydown` with the exception\n * that after the handler is invoked the pressed state of the key is reset\n * in the controller.\n */\nexport type KeyBindingTrigger = 'keydown' | 'keyup' | 'keydownRepeat';\n\n/**\n * Configuration object for the controller.\n * @ignore\n */\nexport interface KeyBindingControllerOptions {\n /**\n * By default, the controller listens for keypress events in the context of the host element.\n * If you pass a `ref`, you can limit the observation to a certain DOM part of the host scope.\n */\n ref?: Ref;\n /**\n * Option to ignore key press events.\n *\n * If passed an array of CSS selectors, it will ignore key presses originating from elements in the event composed path\n * that match one of the selectors.\n * Otherwise you can pass a {@link KeyBindingSkipCallback} function.\n *\n * Defaults to `['input', 'textarea', 'select']`.\n *\n * @example\n * ```ts\n * {\n * // Skip events originating from elements with `readonly` attribute\n * skip: ['[readonly]']\n * }\n * ...\n * {\n * // Same as above but with a callback\n * skip: (node: Element) => node.hasAttribute('readonly')\n * }\n * ```\n */\n skip?: string[] | KeyBindingSkipCallback;\n /**\n * A set of KeyBindingOptions configuration which is applied to every handler\n * that is added to the controller.\n *\n * Any additional KeyBindingOptions values passed when `set` is called\n * will be merged with `bindingDefaults`.\n */\n bindingDefaults?: KeyBindingOptions;\n}\n\n/**\n * Configuration object for customizing the behavior of\n * the registered handler.\n */\nexport interface KeyBindingOptions {\n /**\n * The event type(s) on which the handler will be invoked.\n *\n * Defaults to `keydown` if not set.\n */\n triggers?: KeyBindingTrigger[];\n /**\n * Whether to call `preventDefault` on the target event before the handler is invoked.\n */\n preventDefault?: boolean;\n /**\n * Whether to call `stopPropagation` on the target event before the handler is invoked.\n */\n stopPropagation?: boolean;\n}\n\ninterface KeyBinding {\n keys: string[];\n handler: KeyBindingHandler;\n options?: KeyBindingOptions;\n modifiers?: string[];\n}\n\nconst __modifiers = new Set<string>(\n [altKey, ctrlKey, metaKey, shiftKey].map((key) => key.toLowerCase())\n);\n\nconst defaultOptions: KeyBindingControllerOptions = {\n skip: ['input', 'textarea', 'select'],\n};\n\nfunction normalizeKeys(keys: string | string[]) {\n return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());\n}\n\nfunction isModifier(key: string) {\n return __modifiers.has(key);\n}\n\nfunction isKeydown(event: Event) {\n return event.type === 'keydown';\n}\n\nfunction isKeyup(event: Event) {\n return event.type === 'keyup';\n}\n\nfunction isKeydownTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers\n ? triggers.includes('keydown') || isKeydownRepeatTrigger(triggers)\n : false;\n}\n\nfunction isKeyupTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keyup') : false;\n}\n\nfunction isKeydownRepeatTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keydownRepeat') : false;\n}\n\nexport function parseKeys(keys: string | string[]) {\n const parsed = normalizeKeys(keys);\n return {\n keys: parsed.filter((key) => !isModifier(key)),\n modifiers: parsed.filter((key) => isModifier(key)),\n };\n}\n\nclass KeyBindingController implements ReactiveController {\n protected _host: ReactiveControllerHost & Element;\n protected _ref?: Ref;\n protected _observedElement?: Element;\n protected _options?: KeyBindingControllerOptions;\n private bindings = new Set<KeyBinding>();\n private pressedKeys = new Set<string>();\n\n protected get _element() {\n if (this._observedElement) {\n return this._observedElement;\n }\n return this._ref ? this._ref.value : this._host;\n }\n\n /**\n * Sets the controller to listen for keyboard events on an arbitrary `element` in the page context.\n * All the configuration and event handlers are applied as well.\n *\n * Returns an object with an `unsubscribe` function which should be called when the observing of keyboard\n * events on the `element` should cease.\n */\n public observeElement(element: Element): KeyBindingObserverCleanup {\n element.addEventListener('keydown', this);\n element.addEventListener('keyup', this);\n this._observedElement = element;\n\n return {\n unsubscribe: () => {\n this._observedElement?.removeEventListener('keydown', this);\n this._observedElement?.removeEventListener('keyup', this);\n this._observedElement = undefined;\n },\n };\n }\n\n constructor(\n host: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n ) {\n this._host = host;\n this._ref = options?.ref;\n this._options = { ...defaultOptions, ...options };\n host.addController(this);\n }\n\n /**\n * Checks and executes any event modifiers that are present in the matched binding.\n */\n private eventModifiersMatch(binding: KeyBinding, event: KeyboardEvent) {\n if (binding.options?.preventDefault) {\n event.preventDefault();\n }\n\n if (binding.options?.stopPropagation) {\n event.stopPropagation();\n }\n }\n\n private keysMatch(binding: KeyBinding, event: KeyboardEvent) {\n const modifiers = binding.modifiers ?? [];\n return (\n binding.keys.every((key) => this.pressedKeys.has(key)) &&\n modifiers.every((mod) => !!event[`${mod}Key` as keyof KeyboardEvent])\n );\n }\n\n private bindingMatches(binding: KeyBinding, event: KeyboardEvent) {\n const triggers = binding.options?.triggers ?? ['keydown'];\n\n if (!this.keysMatch(binding, event)) {\n return false;\n }\n\n if (isKeydown(event) && isKeydownTrigger(triggers)) {\n return true;\n }\n\n if (isKeyup(event) && isKeyupTrigger(triggers)) {\n return true;\n }\n\n return false;\n }\n\n public handleEvent(event: KeyboardEvent) {\n const key = event.key.toLowerCase();\n const path = event.composedPath();\n const skip = this._options?.skip;\n\n if (!this._element || !path.includes(this._element)) {\n return;\n }\n\n if (skip) {\n const shouldSkip = Array.isArray(skip)\n ? path.some(\n (target) =>\n isElement(target) &&\n skip.some((selector) => target.matches(selector))\n )\n : skip.call(this._host, event.target as Element, event);\n\n if (shouldSkip) {\n return;\n }\n }\n\n if (isModifier(key)) {\n this.pressedKeys.clear();\n }\n\n if (isKeydown(event) && !isModifier(key)) {\n this.pressedKeys.add(key);\n }\n\n for (const binding of this.bindings) {\n if (this.bindingMatches(binding, event)) {\n this.eventModifiersMatch(binding, event);\n\n binding.handler.call(this._host, event);\n\n if (isKeydownRepeatTrigger(binding.options?.triggers)) {\n this.pressedKeys.delete(key);\n }\n }\n }\n\n if (isKeyup(event) && !isModifier(key)) {\n this.pressedKeys.delete(key);\n }\n }\n\n /**\n * Registers a keybinding handler.\n */\n public set(\n key: string | string[],\n fn: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n this.bindings.add({\n ...parseKeys(key),\n handler: fn,\n options: { ...this._options?.bindingDefaults, ...options },\n });\n\n return this;\n }\n\n /**\n * Register a handler function which is called when the target receives a key\n * which \"activates\" it.\n *\n * In the browser context this is usually either an Enter and/or Space keypress.\n */\n public setActivateHandler(\n fn: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n for (const key of [enterKey, spaceBar]) {\n this.set(key, fn, options);\n }\n\n return this;\n }\n\n public hostConnected(): void {\n this._host.addEventListener('keyup', this);\n this._host.addEventListener('keydown', this);\n }\n\n public hostDisconnected(): void {\n this._host.removeEventListener('keyup', this);\n this._host.removeEventListener('keydown', this);\n }\n}\n\n/**\n * Creates a keybinding controller and adds to it to the passed `element`\n * with the provided `options`.\n */\nexport function addKeybindings(\n element: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n) {\n return new KeyBindingController(element, options);\n}\n"]}
1
+ {"version":3,"file":"key-bindings.js","sourceRoot":"","sources":["../../../../src/components/common/controllers/key-bindings.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ReactiveController, ReactiveControllerHost } from 'lit';\nimport type { Ref } from 'lit/directives/ref.js';\n\nimport { findElementFromEventPath } from '../util.js';\n\n/* Common keys */\nexport const arrowLeft = 'ArrowLeft' as const;\nexport const arrowRight = 'ArrowRight' as const;\nexport const arrowUp = 'ArrowUp' as const;\nexport const arrowDown = 'ArrowDown' as const;\nexport const enterKey = 'Enter' as const;\nexport const spaceBar = ' ' as const;\nexport const escapeKey = 'Escape' as const;\nexport const homeKey = 'Home' as const;\nexport const endKey = 'End' as const;\nexport const pageUpKey = 'PageUp' as const;\nexport const pageDownKey = 'PageDown' as const;\nexport const tabKey = 'Tab' as const;\n\n/* Modifiers */\nexport const altKey = 'Alt' as const;\nexport const ctrlKey = 'Ctrl' as const;\nexport const metaKey = 'Meta' as const;\nexport const shiftKey = 'Shift' as const;\n\n/* Types */\nexport type KeyBindingHandler = (event: KeyboardEvent) => void;\nexport type KeyBindingObserverCleanup = { unsubscribe: () => void };\n\n/**\n * Whether the current event should be ignored by the controller.\n *\n * @param node - The event target\n * @param event - The event object\n *\n * When `true` is returned, the current event is ignored.\n */\nexport type KeyBindingSkipCallback = (\n node: Element,\n event: KeyboardEvent\n) => boolean;\n\n/**\n * The event type which will trigger the bound handler.\n *\n * @remarks\n * `keydownRepeat` is similar to `keydown` with the exception\n * that after the handler is invoked the pressed state of the key is reset\n * in the controller.\n */\nexport type KeyBindingTrigger = 'keydown' | 'keyup' | 'keydownRepeat';\n\n/**\n * Configuration object for the controller.\n * @ignore\n */\nexport interface KeyBindingControllerOptions {\n /**\n * By default, the controller listens for keypress events in the context of the host element.\n * If you pass a `ref`, you can limit the observation to a certain DOM part of the host scope.\n */\n ref?: Ref;\n /**\n * Option to ignore key press events.\n *\n * If passed an array of CSS selectors, it will ignore key presses originating from elements in the event composed path\n * that match one of the selectors.\n * Otherwise you can pass a {@link KeyBindingSkipCallback} function.\n *\n * Defaults to `['input', 'textarea', 'select']`.\n *\n * @example\n * ```ts\n * {\n * // Skip events originating from elements with `readonly` attribute\n * skip: ['[readonly]']\n * }\n * ...\n * {\n * // Same as above but with a callback\n * skip: (node: Element) => node.hasAttribute('readonly')\n * }\n * ```\n */\n skip?: string[] | KeyBindingSkipCallback;\n /**\n * A set of KeyBindingOptions configuration which is applied to every handler\n * that is added to the controller.\n *\n * Any additional KeyBindingOptions values passed when `set` is called\n * will be merged with `bindingDefaults`.\n */\n bindingDefaults?: KeyBindingOptions;\n}\n\n/**\n * Configuration object for customizing the behavior of\n * the registered handler.\n */\nexport interface KeyBindingOptions {\n /**\n * The event type(s) on which the handler will be invoked.\n *\n * Defaults to `keydown` if not set.\n */\n triggers?: KeyBindingTrigger[];\n /**\n * Whether to call `preventDefault` on the target event before the handler is invoked.\n */\n preventDefault?: boolean;\n /**\n * Whether to call `stopPropagation` on the target event before the handler is invoked.\n */\n stopPropagation?: boolean;\n}\n\ninterface KeyBinding {\n keys: string[];\n handler: KeyBindingHandler;\n options?: KeyBindingOptions;\n modifiers?: string[];\n}\n\nconst Modifiers: Map<string, string> = new Map(\n [altKey, ctrlKey, metaKey, shiftKey].map((key) => {\n const mod = key.toLowerCase();\n return key === ctrlKey ? ['control', mod] : [mod, mod];\n })\n);\n\nconst defaultOptions: KeyBindingControllerOptions = {\n skip: ['input', 'textarea', 'select'],\n};\n\nfunction normalizeKeys(keys: string | string[]) {\n return (Array.isArray(keys) ? keys : [keys]).map((key) => key.toLowerCase());\n}\n\nfunction isKeydown(event: Event) {\n return event.type === 'keydown';\n}\n\nfunction isKeyup(event: Event) {\n return event.type === 'keyup';\n}\n\nfunction isKeydownTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers\n ? triggers.includes('keydown') || isKeydownRepeatTrigger(triggers)\n : false;\n}\n\nfunction isKeyupTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keyup') : false;\n}\n\nfunction isKeydownRepeatTrigger(triggers?: KeyBindingTrigger[]) {\n return triggers ? triggers.includes('keydownRepeat') : false;\n}\n\nexport function parseKeys(keys: string | string[]) {\n const parsed = normalizeKeys(keys);\n return {\n keys: parsed.filter((key) => !Modifiers.has(key)),\n modifiers: parsed.filter((key) => Modifiers.has(key)),\n };\n}\n\nfunction createCombinationKey(keys: string[], modifiers: string[]) {\n return Array.from(Modifiers.values())\n .filter((mod) => modifiers.includes(mod))\n .concat(keys)\n .join('+');\n}\n\nclass KeyBindingController implements ReactiveController {\n protected _host: ReactiveControllerHost & Element;\n protected _ref?: Ref;\n protected _observedElement?: Element;\n protected _options?: KeyBindingControllerOptions;\n private bindings = new Map<string, KeyBinding>();\n private pressedKeys = new Set<string>();\n\n protected get _element() {\n if (this._observedElement) {\n return this._observedElement;\n }\n return this._ref ? this._ref.value : this._host;\n }\n\n /**\n * Sets the controller to listen for keyboard events on an arbitrary `element` in the page context.\n * All the configuration and event handlers are applied as well.\n *\n * Returns an object with an `unsubscribe` function which should be called when the observing of keyboard\n * events on the `element` should cease.\n */\n public observeElement(element: Element): KeyBindingObserverCleanup {\n element.addEventListener('keydown', this);\n element.addEventListener('keyup', this);\n this._observedElement = element;\n\n return {\n unsubscribe: () => {\n this._observedElement?.removeEventListener('keydown', this);\n this._observedElement?.removeEventListener('keyup', this);\n this._observedElement = undefined;\n },\n };\n }\n\n constructor(\n host: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n ) {\n this._host = host;\n this._ref = options?.ref;\n this._options = { ...defaultOptions, ...options };\n host.addController(this);\n }\n\n /**\n * Checks and executes any event modifiers that are present in the matched binding.\n */\n private eventModifiersMatch(binding: KeyBinding, event: KeyboardEvent) {\n if (binding.options?.preventDefault) {\n event.preventDefault();\n }\n\n if (binding.options?.stopPropagation) {\n event.stopPropagation();\n }\n }\n\n private bindingMatches(binding: KeyBinding, event: KeyboardEvent) {\n const triggers = binding.options?.triggers ?? ['keydown'];\n\n if (isKeydown(event) && isKeydownTrigger(triggers)) {\n return true;\n }\n\n if (isKeyup(event) && isKeyupTrigger(triggers)) {\n return true;\n }\n\n return false;\n }\n\n private shouldSkip(event: KeyboardEvent) {\n const skip = this._options?.skip;\n\n if (!findElementFromEventPath((e) => e === this._element, event)) {\n return true;\n }\n\n if (!skip) {\n return false;\n }\n\n return Array.isArray(skip)\n ? findElementFromEventPath(skip.join(), event)\n : skip.call(this._host, event.target as Element, event);\n }\n\n public handleEvent(event: KeyboardEvent) {\n if (this.shouldSkip(event)) {\n return;\n }\n\n const key = event.key.toLowerCase();\n Modifiers.has(key) ? this.pressedKeys.clear() : this.pressedKeys.add(key);\n\n const pendingKeys = Array.from(this.pressedKeys);\n const modifiers = Array.from(Modifiers.values()).filter(\n (mod) => event[`${mod}Key` as keyof KeyboardEvent]\n );\n\n const binding = this.bindings.get(\n createCombinationKey(pendingKeys, modifiers)\n );\n\n if (binding && this.bindingMatches(binding, event)) {\n this.eventModifiersMatch(binding, event);\n binding.handler.call(this._host, event);\n\n if (isKeydownRepeatTrigger(binding.options?.triggers)) {\n this.pressedKeys.delete(key);\n }\n }\n\n if (isKeyup(event) && !Modifiers.has(key)) {\n this.pressedKeys.delete(key);\n }\n }\n\n /**\n * Registers a keybinding handler.\n */\n public set(\n key: string | string[],\n handler: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n const { keys, modifiers } = parseKeys(key);\n const combination = createCombinationKey(keys, modifiers);\n const _options = { ...this._options?.bindingDefaults, ...options };\n\n this.bindings.set(combination, {\n keys,\n handler,\n options: _options,\n modifiers,\n });\n\n return this;\n }\n\n /**\n * Register a handler function which is called when the target receives a key\n * which \"activates\" it.\n *\n * In the browser context this is usually either an Enter and/or Space keypress.\n */\n public setActivateHandler(\n handler: KeyBindingHandler,\n options?: KeyBindingOptions\n ) {\n for (const key of [enterKey, spaceBar]) {\n this.set(key, handler, options);\n }\n\n return this;\n }\n\n public hostConnected(): void {\n this._host.addEventListener('keyup', this);\n this._host.addEventListener('keydown', this);\n }\n\n public hostDisconnected(): void {\n this._host.removeEventListener('keyup', this);\n this._host.removeEventListener('keydown', this);\n }\n}\n\n/**\n * Creates a keybinding controller and adds to it to the passed `element`\n * with the provided `options`.\n */\nexport function addKeybindings(\n element: ReactiveControllerHost & Element,\n options?: KeyBindingControllerOptions\n) {\n return new KeyBindingController(element, options);\n}\n"]}
@@ -38,10 +38,10 @@ export declare abstract class IgcBaseComboBoxLikeComponent extends LitElement {
38
38
  /** Toggles the open state of the component. */
39
39
  toggle(): Promise<boolean>;
40
40
  }
41
- export declare function getItems<T extends HTMLElement>(root: Node, tagName: string): Generator<T, any, unknown>;
41
+ export declare function getItems<T extends HTMLElement>(root: Node, tagName: string): Generator<T, any, any>;
42
42
  export declare function getActiveItems<T extends HTMLElement & {
43
43
  disabled: boolean;
44
- }>(root: Node, tagName: string): Generator<T, any, unknown>;
44
+ }>(root: Node, tagName: string): Generator<T, any, any>;
45
45
  export declare function getNextActiveItem<T extends HTMLElement & {
46
46
  disabled: boolean;
47
47
  }>(items: T[], from: T): T;
@@ -0,0 +1,13 @@
1
+ import type { LitElement } from 'lit';
2
+ import type { Constructor } from '../constructor.js';
3
+ import type { FormAssociatedCheckboxElementInterface, FormAssociatedElementInterface, FormRequiredInterface } from './types.js';
4
+ /**
5
+ * Mixes the passed class into a form associated custom element with an
6
+ * additional `required` attribute.
7
+ */
8
+ export declare function FormAssociatedRequiredMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormRequiredInterface & FormAssociatedElementInterface> & T;
9
+ /**
10
+ * Mixes the passed class into a form associated custom element with an
11
+ * additional `required` attribute.
12
+ */
13
+ export declare function FormAssociatedCheckboxRequiredMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormRequiredInterface & FormAssociatedCheckboxElementInterface> & T;
@@ -0,0 +1,47 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { property } from 'lit/decorators.js';
8
+ import { FormAssociatedCheckboxMixin, FormAssociatedMixin, } from './associated.js';
9
+ export function FormAssociatedRequiredMixin(base) {
10
+ class FormAssociatedRequiredElement extends FormAssociatedMixin(base) {
11
+ constructor() {
12
+ super(...arguments);
13
+ this._required = false;
14
+ }
15
+ set required(value) {
16
+ this._required = Boolean(value);
17
+ this._validate();
18
+ }
19
+ get required() {
20
+ return this._required;
21
+ }
22
+ }
23
+ __decorate([
24
+ property({ type: Boolean, reflect: true })
25
+ ], FormAssociatedRequiredElement.prototype, "required", null);
26
+ return FormAssociatedRequiredElement;
27
+ }
28
+ export function FormAssociatedCheckboxRequiredMixin(base) {
29
+ class FormAssociatedRequiredElement extends FormAssociatedCheckboxMixin(base) {
30
+ constructor() {
31
+ super(...arguments);
32
+ this._required = false;
33
+ }
34
+ set required(value) {
35
+ this._required = Boolean(value);
36
+ this._validate();
37
+ }
38
+ get required() {
39
+ return this._required;
40
+ }
41
+ }
42
+ __decorate([
43
+ property({ type: Boolean, reflect: true })
44
+ ], FormAssociatedRequiredElement.prototype, "required", null);
45
+ return FormAssociatedRequiredElement;
46
+ }
47
+ //# sourceMappingURL=associated-required.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"associated-required.js","sourceRoot":"","sources":["../../../../../src/components/common/mixins/forms/associated-required.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAWzB,MAAM,UAAU,2BAA2B,CACzC,IAAO;IAEP,MAAM,6BAA8B,SAAQ,mBAAmB,CAAC,IAAI,CAAC;QAArE;;YACY,cAAS,GAAG,KAAK,CAAC;QAgB9B,CAAC;QARC,IAAW,QAAQ,CAAC,KAAc;YAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAED,IAAW,QAAQ;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;KACF;IARC;QADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iEAI1C;IAOH,OAAO,6BAGJ,CAAC;AACN,CAAC;AAMD,MAAM,UAAU,mCAAmC,CAEjD,IAAO;IACP,MAAM,6BAA8B,SAAQ,2BAA2B,CACrE,IAAI,CACL;QAFD;;YAGY,cAAS,GAAG,KAAK,CAAC;QAgB9B,CAAC;QARC,IAAW,QAAQ,CAAC,KAAc;YAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAED,IAAW,QAAQ;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;KACF;IARC;QADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iEAI1C;IAOH,OAAO,6BAGJ,CAAC;AACN,CAAC","sourcesContent":["import type { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport type { Constructor } from '../constructor.js';\nimport {\n FormAssociatedCheckboxMixin,\n FormAssociatedMixin,\n} from './associated.js';\nimport type {\n FormAssociatedCheckboxElementInterface,\n FormAssociatedElementInterface,\n FormRequiredInterface,\n} from './types.js';\n\n/**\n * Mixes the passed class into a form associated custom element with an\n * additional `required` attribute.\n */\nexport function FormAssociatedRequiredMixin<T extends Constructor<LitElement>>(\n base: T\n) {\n class FormAssociatedRequiredElement extends FormAssociatedMixin(base) {\n protected _required = false;\n\n /**\n * When set, makes the component a required field for validation.\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public set required(value: boolean) {\n this._required = Boolean(value);\n this._validate();\n }\n\n public get required(): boolean {\n return this._required;\n }\n }\n\n return FormAssociatedRequiredElement as unknown as Constructor<\n FormRequiredInterface & FormAssociatedElementInterface\n > &\n T;\n}\n\n/**\n * Mixes the passed class into a form associated custom element with an\n * additional `required` attribute.\n */\nexport function FormAssociatedCheckboxRequiredMixin<\n T extends Constructor<LitElement>,\n>(base: T) {\n class FormAssociatedRequiredElement extends FormAssociatedCheckboxMixin(\n base\n ) {\n protected _required = false;\n\n /**\n * When set, makes the component a required field for validation.\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public set required(value: boolean) {\n this._required = Boolean(value);\n this._validate();\n }\n\n public get required(): boolean {\n return this._required;\n }\n }\n\n return FormAssociatedRequiredElement as unknown as Constructor<\n FormRequiredInterface & FormAssociatedCheckboxElementInterface\n > &\n T;\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import type { LitElement } from 'lit';
2
+ import type { Constructor } from '../constructor.js';
3
+ import type { FormAssociatedCheckboxElementInterface, FormAssociatedElementInterface } from './types.js';
4
+ /**
5
+ * Mixes the passed in class and turns it into a form associated custom element.
6
+ */
7
+ export declare function FormAssociatedMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormAssociatedElementInterface> & T;
8
+ /**
9
+ * Mixes the passed in class and turns it into a form associated custom element.
10
+ */
11
+ export declare function FormAssociatedCheckboxMixin<T extends Constructor<LitElement>>(base: T): Constructor<FormAssociatedCheckboxElementInterface> & T;