igniteui-webcomponents 6.1.2 → 6.3.0-alpha.0

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 (348) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/LICENSE +1 -1
  3. package/README.md +13 -1
  4. package/components/card/themes/content.js +7 -0
  5. package/components/card/themes/content.js.map +1 -1
  6. package/components/card/themes/shared/content/card.content.indigo.css.d.ts +1 -0
  7. package/components/card/themes/shared/content/card.content.indigo.css.js +3 -0
  8. package/components/card/themes/shared/content/card.content.indigo.css.js.map +1 -0
  9. package/components/carousel/carousel-indicator.d.ts +1 -1
  10. package/components/carousel/carousel-indicator.js.map +1 -1
  11. package/components/carousel/carousel-slide.d.ts +3 -3
  12. package/components/carousel/carousel-slide.js +7 -13
  13. package/components/carousel/carousel-slide.js.map +1 -1
  14. package/components/carousel/carousel.d.ts +39 -38
  15. package/components/carousel/carousel.js +160 -153
  16. package/components/carousel/carousel.js.map +1 -1
  17. package/components/chat/chat-input.d.ts +70 -0
  18. package/components/chat/chat-input.js +266 -0
  19. package/components/chat/chat-input.js.map +1 -0
  20. package/components/chat/chat-message-list.d.ts +111 -0
  21. package/components/chat/chat-message-list.js +178 -0
  22. package/components/chat/chat-message-list.js.map +1 -0
  23. package/components/chat/chat-message.d.ts +57 -0
  24. package/components/chat/chat-message.js +59 -0
  25. package/components/chat/chat-message.js.map +1 -0
  26. package/components/chat/chat-state.d.ts +155 -0
  27. package/components/chat/chat-state.js +167 -0
  28. package/components/chat/chat-state.js.map +1 -0
  29. package/components/chat/chat.d.ts +164 -0
  30. package/components/chat/chat.js +168 -0
  31. package/components/chat/chat.js.map +1 -0
  32. package/components/chat/markdown-util.d.ts +2 -0
  33. package/components/chat/markdown-util.js +22 -0
  34. package/components/chat/markdown-util.js.map +1 -0
  35. package/components/chat/message-attachments.d.ts +45 -0
  36. package/components/chat/message-attachments.js +127 -0
  37. package/components/chat/message-attachments.js.map +1 -0
  38. package/components/chat/themes/chat.base.css.d.ts +1 -0
  39. package/components/chat/themes/chat.base.css.js +3 -0
  40. package/components/chat/themes/chat.base.css.js.map +1 -0
  41. package/components/chat/themes/dark/chat.bootstrap.css.d.ts +1 -0
  42. package/components/chat/themes/dark/chat.bootstrap.css.js +3 -0
  43. package/components/chat/themes/dark/chat.bootstrap.css.js.map +1 -0
  44. package/components/chat/themes/dark/chat.fluent.css.d.ts +1 -0
  45. package/components/chat/themes/dark/chat.fluent.css.js +3 -0
  46. package/components/chat/themes/dark/chat.fluent.css.js.map +1 -0
  47. package/components/chat/themes/dark/chat.indigo.css.d.ts +1 -0
  48. package/components/chat/themes/dark/chat.indigo.css.js +3 -0
  49. package/components/chat/themes/dark/chat.indigo.css.js.map +1 -0
  50. package/components/chat/themes/dark/chat.material.css.d.ts +1 -0
  51. package/components/chat/themes/dark/chat.material.css.js +3 -0
  52. package/components/chat/themes/dark/chat.material.css.js.map +1 -0
  53. package/components/chat/themes/input.base.css.d.ts +1 -0
  54. package/components/chat/themes/input.base.css.js +3 -0
  55. package/components/chat/themes/input.base.css.js.map +1 -0
  56. package/components/chat/themes/input.d.ts +2 -0
  57. package/components/chat/themes/input.js +35 -0
  58. package/components/chat/themes/input.js.map +1 -0
  59. package/components/chat/themes/light/chat.bootstrap.css.d.ts +1 -0
  60. package/components/chat/themes/light/chat.bootstrap.css.js +3 -0
  61. package/components/chat/themes/light/chat.bootstrap.css.js.map +1 -0
  62. package/components/chat/themes/light/chat.fluent.css.d.ts +1 -0
  63. package/components/chat/themes/light/chat.fluent.css.js +3 -0
  64. package/components/chat/themes/light/chat.fluent.css.js.map +1 -0
  65. package/components/chat/themes/light/chat.indigo.css.d.ts +1 -0
  66. package/components/chat/themes/light/chat.indigo.css.js +3 -0
  67. package/components/chat/themes/light/chat.indigo.css.js.map +1 -0
  68. package/components/chat/themes/light/chat.material.css.d.ts +1 -0
  69. package/components/chat/themes/light/chat.material.css.js +3 -0
  70. package/components/chat/themes/light/chat.material.css.js.map +1 -0
  71. package/components/chat/themes/light/chat.shared.css.d.ts +1 -0
  72. package/components/chat/themes/light/chat.shared.css.js +3 -0
  73. package/components/chat/themes/light/chat.shared.css.js.map +1 -0
  74. package/components/chat/themes/message-attachments.base.css.d.ts +1 -0
  75. package/components/chat/themes/message-attachments.base.css.js +3 -0
  76. package/components/chat/themes/message-attachments.base.css.js.map +1 -0
  77. package/components/chat/themes/message-list.base.css.d.ts +1 -0
  78. package/components/chat/themes/message-list.base.css.js +3 -0
  79. package/components/chat/themes/message-list.base.css.js.map +1 -0
  80. package/components/chat/themes/message.base.css.d.ts +1 -0
  81. package/components/chat/themes/message.base.css.js +3 -0
  82. package/components/chat/themes/message.base.css.js.map +1 -0
  83. package/components/chat/themes/shared/chat-message.common.css.d.ts +1 -0
  84. package/components/chat/themes/shared/chat-message.common.css.js +3 -0
  85. package/components/chat/themes/shared/chat-message.common.css.js.map +1 -0
  86. package/components/chat/themes/shared/chat.common.css.d.ts +1 -0
  87. package/components/chat/themes/shared/chat.common.css.js +3 -0
  88. package/components/chat/themes/shared/chat.common.css.js.map +1 -0
  89. package/components/chat/themes/shared/input/input.bootstrap.css.d.ts +1 -0
  90. package/components/chat/themes/shared/input/input.bootstrap.css.js +3 -0
  91. package/components/chat/themes/shared/input/input.bootstrap.css.js.map +1 -0
  92. package/components/chat/themes/shared/input/input.common.css.d.ts +1 -0
  93. package/components/chat/themes/shared/input/input.common.css.js +3 -0
  94. package/components/chat/themes/shared/input/input.common.css.js.map +1 -0
  95. package/components/chat/themes/shared/input/input.fluent.css.d.ts +1 -0
  96. package/components/chat/themes/shared/input/input.fluent.css.js +3 -0
  97. package/components/chat/themes/shared/input/input.fluent.css.js.map +1 -0
  98. package/components/chat/themes/shared/input/input.indigo.css.d.ts +1 -0
  99. package/components/chat/themes/shared/input/input.indigo.css.js +3 -0
  100. package/components/chat/themes/shared/input/input.indigo.css.js.map +1 -0
  101. package/components/chat/themes/shared/input/input.material.css.d.ts +1 -0
  102. package/components/chat/themes/shared/input/input.material.css.js +3 -0
  103. package/components/chat/themes/shared/input/input.material.css.js.map +1 -0
  104. package/components/chat/themes/shared/message-attachments.common.css.d.ts +1 -0
  105. package/components/chat/themes/shared/message-attachments.common.css.js +3 -0
  106. package/components/chat/themes/shared/message-attachments.common.css.js.map +1 -0
  107. package/components/chat/themes/shared/message-list.common.css.d.ts +1 -0
  108. package/components/chat/themes/shared/message-list.common.css.js +3 -0
  109. package/components/chat/themes/shared/message-list.common.css.js.map +1 -0
  110. package/components/chat/themes/themes.d.ts +2 -0
  111. package/components/chat/themes/themes.js +46 -0
  112. package/components/chat/themes/themes.js.map +1 -0
  113. package/components/chat/types.d.ts +190 -0
  114. package/components/chat/types.js +8 -0
  115. package/components/chat/types.js.map +1 -0
  116. package/components/checkbox/checkbox-base.d.ts +3 -5
  117. package/components/checkbox/checkbox-base.js +15 -21
  118. package/components/checkbox/checkbox-base.js.map +1 -1
  119. package/components/checkbox/checkbox.d.ts +3 -4
  120. package/components/checkbox/checkbox.js +18 -17
  121. package/components/checkbox/checkbox.js.map +1 -1
  122. package/components/checkbox/switch.d.ts +0 -1
  123. package/components/checkbox/switch.js +7 -10
  124. package/components/checkbox/switch.js.map +1 -1
  125. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
  126. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
  127. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
  128. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
  129. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js +1 -1
  130. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js.map +1 -1
  131. package/components/checkbox/themes/dark/switch/switch.fluent.css.js +1 -1
  132. package/components/checkbox/themes/dark/switch/switch.fluent.css.js.map +1 -1
  133. package/components/checkbox/themes/dark/switch/switch.indigo.css.js +1 -1
  134. package/components/checkbox/themes/dark/switch/switch.indigo.css.js.map +1 -1
  135. package/components/checkbox/themes/dark/switch/switch.material.css.js +1 -1
  136. package/components/checkbox/themes/dark/switch/switch.material.css.js.map +1 -1
  137. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js +1 -1
  138. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js.map +1 -1
  139. package/components/checkbox/themes/light/switch/switch.fluent.css.js +1 -1
  140. package/components/checkbox/themes/light/switch/switch.fluent.css.js.map +1 -1
  141. package/components/checkbox/themes/light/switch/switch.indigo.css.js +1 -1
  142. package/components/checkbox/themes/light/switch/switch.indigo.css.js.map +1 -1
  143. package/components/checkbox/themes/light/switch/switch.material.css.js +1 -1
  144. package/components/checkbox/themes/light/switch/switch.material.css.js.map +1 -1
  145. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  146. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  147. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js +1 -1
  148. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js.map +1 -1
  149. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  150. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  151. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  152. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  153. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  154. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  155. package/components/chip/chip.d.ts +11 -11
  156. package/components/chip/chip.js +61 -65
  157. package/components/chip/chip.js.map +1 -1
  158. package/components/combo/combo.d.ts +3 -3
  159. package/components/combo/combo.js +12 -6
  160. package/components/combo/combo.js.map +1 -1
  161. package/components/combo/themes/shared/combo.common.css.js +1 -1
  162. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  163. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  164. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  165. package/components/combo/themes/shared/combo.material.css.js +1 -1
  166. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  167. package/components/common/context.d.ts +5 -1
  168. package/components/common/context.js +2 -1
  169. package/components/common/context.js.map +1 -1
  170. package/components/common/controllers/internals.d.ts +66 -2
  171. package/components/common/controllers/internals.js +21 -0
  172. package/components/common/controllers/internals.js.map +1 -1
  173. package/components/common/controllers/slot.d.ts +87 -0
  174. package/components/common/controllers/slot.js +75 -0
  175. package/components/common/controllers/slot.js.map +1 -0
  176. package/components/common/definitions/defineAllComponents.js +2 -0
  177. package/components/common/definitions/defineAllComponents.js.map +1 -1
  178. package/components/common/mixins/forms/associated.d.ts +1 -1
  179. package/components/common/mixins/forms/associated.js +91 -36
  180. package/components/common/mixins/forms/associated.js.map +1 -1
  181. package/components/common/mixins/forms/form-transformers.d.ts +21 -0
  182. package/components/common/mixins/forms/form-transformers.js +64 -0
  183. package/components/common/mixins/forms/form-transformers.js.map +1 -0
  184. package/components/common/mixins/forms/form-value.d.ts +7 -36
  185. package/components/common/mixins/forms/form-value.js +2 -64
  186. package/components/common/mixins/forms/form-value.js.map +1 -1
  187. package/components/common/mixins/forms/types.d.ts +19 -10
  188. package/components/common/mixins/forms/types.js +2 -1
  189. package/components/common/mixins/forms/types.js.map +1 -1
  190. package/components/common/util.d.ts +1 -0
  191. package/components/common/util.js +3 -0
  192. package/components/common/util.js.map +1 -1
  193. package/components/date-picker/date-picker.d.ts +1 -3
  194. package/components/date-picker/date-picker.js +11 -13
  195. package/components/date-picker/date-picker.js.map +1 -1
  196. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  197. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  198. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  199. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  200. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  201. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  202. package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
  203. package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
  204. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  205. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  206. package/components/date-picker/themes/shared/date-picker.material.css.js +1 -1
  207. package/components/date-picker/themes/shared/date-picker.material.css.js.map +1 -1
  208. package/components/date-range-picker/date-range-picker.d.ts +1 -3
  209. package/components/date-range-picker/date-range-picker.js +19 -26
  210. package/components/date-range-picker/date-range-picker.js.map +1 -1
  211. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
  212. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
  213. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
  214. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
  215. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
  216. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
  217. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
  218. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
  219. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
  220. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
  221. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js +1 -1
  222. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js.map +1 -1
  223. package/components/date-time-input/date-time-input.d.ts +1 -2
  224. package/components/date-time-input/date-time-input.js +7 -7
  225. package/components/date-time-input/date-time-input.js.map +1 -1
  226. package/components/dialog/dialog.d.ts +23 -25
  227. package/components/dialog/dialog.js +108 -115
  228. package/components/dialog/dialog.js.map +1 -1
  229. package/components/dialog/themes/dark/dialog.bootstrap.css.js +1 -1
  230. package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -1
  231. package/components/expansion-panel/expansion-panel.d.ts +12 -14
  232. package/components/expansion-panel/expansion-panel.js +43 -56
  233. package/components/expansion-panel/expansion-panel.js.map +1 -1
  234. package/components/file-input/file-input.d.ts +1 -3
  235. package/components/file-input/file-input.js +6 -11
  236. package/components/file-input/file-input.js.map +1 -1
  237. package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
  238. package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
  239. package/components/file-input/themes/shared/file-input.material.css.js +1 -1
  240. package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
  241. package/components/input/input.d.ts +1 -4
  242. package/components/input/input.js +7 -12
  243. package/components/input/input.js.map +1 -1
  244. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  245. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  246. package/components/input/themes/shared/input.common.css.js +1 -1
  247. package/components/input/themes/shared/input.common.css.js.map +1 -1
  248. package/components/input/themes/shared/input.fluent.css.js +1 -1
  249. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  250. package/components/input/themes/shared/input.indigo.css.js +1 -1
  251. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  252. package/components/input/themes/shared/input.material.css.js +1 -1
  253. package/components/input/themes/shared/input.material.css.js.map +1 -1
  254. package/components/mask-input/mask-input-base.js +1 -0
  255. package/components/mask-input/mask-input-base.js.map +1 -1
  256. package/components/mask-input/mask-input.d.ts +2 -3
  257. package/components/mask-input/mask-input.js +5 -8
  258. package/components/mask-input/mask-input.js.map +1 -1
  259. package/components/nav-drawer/nav-drawer-item.d.ts +3 -4
  260. package/components/nav-drawer/nav-drawer-item.js +15 -18
  261. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  262. package/components/nav-drawer/nav-drawer.d.ts +1 -2
  263. package/components/nav-drawer/nav-drawer.js +9 -11
  264. package/components/nav-drawer/nav-drawer.js.map +1 -1
  265. package/components/nav-drawer/themes/container.base.css.js +1 -1
  266. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  267. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  268. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  269. package/components/popover/popover.d.ts +17 -16
  270. package/components/popover/popover.js +81 -91
  271. package/components/popover/popover.js.map +1 -1
  272. package/components/progress/base.d.ts +8 -8
  273. package/components/progress/base.js +19 -23
  274. package/components/progress/base.js.map +1 -1
  275. package/components/progress/circular-gradient.js.map +1 -1
  276. package/components/progress/circular-progress.d.ts +3 -4
  277. package/components/progress/circular-progress.js +15 -18
  278. package/components/progress/circular-progress.js.map +1 -1
  279. package/components/progress/linear-progress.d.ts +1 -0
  280. package/components/progress/linear-progress.js +5 -1
  281. package/components/progress/linear-progress.js.map +1 -1
  282. package/components/radio/radio.d.ts +3 -5
  283. package/components/radio/radio.js +33 -31
  284. package/components/radio/radio.js.map +1 -1
  285. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  286. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  287. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  288. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  289. package/components/radio/themes/shared/radio.common.css.js +1 -1
  290. package/components/radio/themes/shared/radio.common.css.js.map +1 -1
  291. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  292. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  293. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  294. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  295. package/components/radio/themes/shared/radio.material.css.js +1 -1
  296. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  297. package/components/radio-group/radio-group.d.ts +4 -4
  298. package/components/radio-group/radio-group.js +24 -21
  299. package/components/radio-group/radio-group.js.map +1 -1
  300. package/components/rating/rating.d.ts +1 -2
  301. package/components/rating/rating.js +4 -3
  302. package/components/rating/rating.js.map +1 -1
  303. package/components/select/select.d.ts +35 -38
  304. package/components/select/select.js +138 -146
  305. package/components/select/select.js.map +1 -1
  306. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  307. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  308. package/components/select/themes/shared/select.common.css.js +1 -1
  309. package/components/select/themes/shared/select.common.css.js.map +1 -1
  310. package/components/select/themes/shared/select.fluent.css.js +1 -1
  311. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  312. package/components/select/themes/shared/select.indigo.css.js +1 -1
  313. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  314. package/components/select/themes/shared/select.material.css.js +1 -1
  315. package/components/select/themes/shared/select.material.css.js.map +1 -1
  316. package/components/slider/slider-label.js.map +1 -1
  317. package/components/slider/slider.d.ts +1 -2
  318. package/components/slider/slider.js +5 -2
  319. package/components/slider/slider.js.map +1 -1
  320. package/components/textarea/textarea.d.ts +13 -20
  321. package/components/textarea/textarea.js +66 -90
  322. package/components/textarea/textarea.js.map +1 -1
  323. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  324. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  325. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  326. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  327. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  328. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  329. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  330. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  331. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  332. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  333. package/components/tile-manager/position.js +2 -1
  334. package/components/tile-manager/position.js.map +1 -1
  335. package/components/tile-manager/tile.d.ts +8 -12
  336. package/components/tile-manager/tile.js +16 -37
  337. package/components/tile-manager/tile.js.map +1 -1
  338. package/components/validation-container/validation-container.d.ts +2 -1
  339. package/components/validation-container/validation-container.js +19 -14
  340. package/components/validation-container/validation-container.js.map +1 -1
  341. package/custom-elements.json +38469 -33868
  342. package/igniteui-webcomponents.css-data.json +1 -1
  343. package/igniteui-webcomponents.html-data.json +1 -1
  344. package/index.d.ts +3 -0
  345. package/index.js +1 -0
  346. package/index.js.map +1 -1
  347. package/package.json +1 -1
  348. package/web-types.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/checkbox/checkbox.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4oIAA4oI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(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);margin-block-start:.5rem;grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom)}[part~=control]{padding:var(--control-padding, 1.25rem);transition:background .15s ease-in}[part~=control]::after{border-radius:var(--border-radius);border:.125rem solid var(--empty-color)}[part~=control]::before{content:\"\";position:absolute;inset-block-start:0;inset-inline-start:0;width:100%;height:100%;border-radius:var(--border-radius-ripple)}[part=\"control checked\"]::after{border-color:var(--fill-color);background:var(--fill-color)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=control]::before{background:var(--empty-color);opacity:.06}[part=\"base checked\"]:hover [part~=control]::before{background:var(--fill-color);opacity:.06}[part=base]:focus-visible:hover [part~=control]::before,[part=base]:focus-visible [part~=control]::before,[part=\"base focused\"]:hover [part~=control]::before,[part=\"base focused\"] [part~=control]::before{background:var(--empty-color);opacity:.12}[part=\"base checked\"]:focus-visible:hover [part~=control]::before,[part=\"base checked\"]:focus-visible [part~=control]::before,[part=\"base checked focused\"]:hover [part~=control]::before,[part=\"base checked focused\"] [part~=control]::before{background:var(--fill-color);opacity:.12}:host([indeterminate]) [part~=control]::after{border-color:var(--fill-color);background:var(--fill-color)}:host([indeterminate]) [part=base]:hover [part~=control]::before,:host([indeterminate]) [part=base]:focus-visible [part~=control]::before,:host([indeterminate]) [part=\"base focused\"] [part~=control]::before{background:var(--fill-color)}:host(:not([disabled])[invalid]) [part~=control]::after,:host(:not(:disabled)[invalid]) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::after,:host(:not(:disabled)[invalid]) [part=\"control checked\"]::after{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=control]::before,:host(:not(:disabled)[invalid]) [part~=base]:hover [part~=control]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"base focused\"] [part~=control]::before,:host(:not(:disabled)[invalid]) [part=\"base focused\"] [part~=control]::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid][indeterminate]) [part~=control]::after,:host(:not(:disabled)[invalid][indeterminate]) [part~=control]::after{border-color:var(--error-color);background:var(--error-color)}:host(:not([disabled])[invalid][indeterminate]) [part~=base]:hover [part~=control]::before,:host(:not(:disabled)[invalid][indeterminate]) [part~=base]:hover [part~=control]::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid][indeterminate]) [part=\"base focused\"] [part~=control]::before,:host(:not(:disabled)[invalid][indeterminate]) [part=\"base focused\"] [part~=control]::before{background:var(--error-color-hover)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{background:var(--disabled-color)}:host([disabled][indeterminate]) [part~=control]::after,:host(:disabled[indeterminate]) [part~=control]::after{background:var(--disabled-indeterminate-color);border-color:var(--disabled-indeterminate-color)}`;\n"]}
1
+ {"version":3,"file":"checkbox.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/checkbox/checkbox.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0wIAA0wI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(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);margin-block-start:.5rem;grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom)}[part~=control]{padding:var(--control-padding, 1.25rem);transition:background .15s ease-in}[part~=control]::after{border-radius:var(--border-radius);border:.125rem solid var(--empty-color)}[part~=control]::before{content:\"\";position:absolute;inset-block-start:0;inset-inline-start:0;width:100%;height:100%;border-radius:var(--border-radius-ripple)}[part=\"control checked\"]::after{border-color:var(--fill-color);background:var(--fill-color)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=control]::before{background:var(--empty-color);opacity:.06}[part=\"base checked\"]:hover [part~=control]::before{background:var(--fill-color);opacity:.06}[part=base]:focus-visible:hover [part~=control]::before,[part=base]:focus-visible [part~=control]::before,[part=\"base focused\"]:hover [part~=control]::before,[part=\"base focused\"] [part~=control]::before{background:var(--empty-color);opacity:.12}[part=\"base checked\"]:focus-visible:hover [part~=control]::before,[part=\"base checked\"]:focus-visible [part~=control]::before,[part=\"base checked focused\"]:hover [part~=control]::before,[part=\"base checked focused\"] [part~=control]::before{background:var(--fill-color);opacity:.12}:host([indeterminate]) [part~=control]::after{border-color:var(--fill-color);background:var(--fill-color)}:host([indeterminate]) [part=base]:hover [part~=control]::before,:host([indeterminate]) [part=base]:focus-visible [part~=control]::before,:host([indeterminate]) [part=\"base focused\"] [part~=control]::before{background:var(--fill-color)}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::after{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=base]:hover [part~=control]::before,:host(:not(:disabled):state(ig-invalid)) [part~=base]:hover [part~=control]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"base focused\"] [part~=control]::before,:host(:not(:disabled):state(ig-invalid)) [part=\"base focused\"] [part~=control]::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)[indeterminate]) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)[indeterminate]) [part~=control]::after{border-color:var(--error-color);background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)[indeterminate]) [part~=base]:hover [part~=control]::before,:host(:not(:disabled):state(ig-invalid)[indeterminate]) [part~=base]:hover [part~=control]::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)[indeterminate]) [part=\"base focused\"] [part~=control]::before,:host(:not(:disabled):state(ig-invalid)[indeterminate]) [part=\"base focused\"] [part~=control]::before{background:var(--error-color-hover)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{background:var(--disabled-color)}:host([disabled][indeterminate]) [part~=control]::after,:host(:disabled[indeterminate]) [part~=control]::after{background:var(--disabled-indeterminate-color);border-color:var(--disabled-indeterminate-color)}`;\n"]}
@@ -11,9 +11,11 @@ declare const IgcChipComponent_base: Constructor<import("../common/mixins/event-
11
11
  *
12
12
  * @element igc-chip
13
13
  *
14
- * @slot - Renders the chip data.
15
- * @slot prefix - Renders content before the data of the chip.
16
- * @slot suffix - Renders content after the data of the chip.
14
+ * @slot - Renders content in the default slot of the chip.
15
+ * @slot prefix - Renders content at the start of the chip, before the default content.
16
+ * @slot suffix - Renders content at the end of the chip after the default content.
17
+ * @slot select - Content to render when the chip in selected state.
18
+ * @slot remove - Content to override the default remove chip icon.
17
19
  *
18
20
  * @fires igcRemove - Emits an event when the chip component is removed. Returns the removed chip component.
19
21
  * @fires igcSelect - Emits event when the chip component is selected/deselected and any related animations and transitions also end.
@@ -26,7 +28,8 @@ export default class IgcChipComponent extends IgcChipComponent_base {
26
28
  static readonly tagName = "igc-chip";
27
29
  static styles: import("lit").CSSResult[];
28
30
  static register(): void;
29
- private _removePartRef;
31
+ private readonly _removePartRef;
32
+ private readonly _slots;
30
33
  /**
31
34
  * Sets the disabled state for the chip.
32
35
  * @attr
@@ -52,14 +55,11 @@ export default class IgcChipComponent extends IgcChipComponent_base {
52
55
  * @attr
53
56
  */
54
57
  variant: StyleVariant;
55
- protected prefixes: Array<HTMLElement>;
56
- protected contentStart: Array<HTMLElement>;
57
- protected suffixes: Array<HTMLElement>;
58
- protected contentEnd: Array<HTMLElement>;
59
58
  constructor();
60
- protected createRenderRoot(): HTMLElement | DocumentFragment;
61
- protected handleSelect(): void;
62
- protected handleRemove(e: Event): void;
59
+ protected _handleSelect(): void;
60
+ protected _handleRemove(event: Event): void;
61
+ protected _renderPrefix(): import("lit-html").TemplateResult<1>;
62
+ protected _renderSuffix(): import("lit-html").TemplateResult<1>;
63
63
  protected render(): import("lit-html").TemplateResult<1>;
64
64
  }
65
65
  declare global {
@@ -5,13 +5,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { html, LitElement, nothing } from 'lit';
8
- import { property, queryAssignedElements } from 'lit/decorators.js';
8
+ import { property } from 'lit/decorators.js';
9
9
  import { createRef, ref } from 'lit/directives/ref.js';
10
10
  import { addThemingController } from '../../theming/theming-controller.js';
11
11
  import { addKeybindings } from '../common/controllers/key-bindings.js';
12
+ import { addSlotController, setSlots } from '../common/controllers/slot.js';
12
13
  import { registerComponent } from '../common/definitions/register.js';
13
14
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
14
- import { isEmpty } from '../common/util.js';
15
15
  import IgcIconComponent from '../icon/icon.js';
16
16
  import { styles } from './themes/chip.base.css.js';
17
17
  import { styles as shared } from './themes/shared/chip.common.css.js';
@@ -23,6 +23,9 @@ class IgcChipComponent extends EventEmitterMixin(LitElement) {
23
23
  constructor() {
24
24
  super();
25
25
  this._removePartRef = createRef();
26
+ this._slots = addSlotController(this, {
27
+ slots: setSlots('prefix', 'suffix', 'start', 'end', 'select', 'remove'),
28
+ });
26
29
  this.disabled = false;
27
30
  this.removable = false;
28
31
  this.selectable = false;
@@ -31,71 +34,76 @@ class IgcChipComponent extends EventEmitterMixin(LitElement) {
31
34
  addKeybindings(this, {
32
35
  ref: this._removePartRef,
33
36
  bindingDefaults: { triggers: ['keyup'] },
34
- }).setActivateHandler(this.handleRemove);
37
+ }).setActivateHandler(this._handleRemove);
35
38
  }
36
- createRenderRoot() {
37
- const root = super.createRenderRoot();
38
- root.addEventListener('slotchange', () => this.requestUpdate());
39
- return root;
40
- }
41
- handleSelect() {
39
+ _handleSelect() {
42
40
  if (this.selectable) {
43
41
  this.selected = !this.selected;
44
42
  this.emitEvent('igcSelect', { detail: this.selected });
45
43
  }
46
44
  }
47
- handleRemove(e) {
45
+ _handleRemove(event) {
46
+ event.stopPropagation();
48
47
  this.emitEvent('igcRemove');
49
- e.stopPropagation();
48
+ }
49
+ _renderPrefix() {
50
+ const isVisible = this._slots.hasAssignedElements('prefix') ||
51
+ this._slots.hasAssignedElements('start');
52
+ const selectSlot = this.selectable && this.selected
53
+ ? html `
54
+ <slot name="select">
55
+ <igc-icon name="selected" collection="default"></igc-icon>
56
+ </slot>
57
+ `
58
+ : nothing;
59
+ return html `
60
+ <span part="prefix" ?hidden=${!isVisible && !this.selected}>
61
+ ${selectSlot}
62
+ <slot name="start"></slot>
63
+ <slot name="prefix"></slot>
64
+ </span>
65
+ `;
66
+ }
67
+ _renderSuffix() {
68
+ const isVisible = this._slots.hasAssignedElements('suffix') ||
69
+ this._slots.hasAssignedElements('end');
70
+ const removeSlot = this.removable && !this.disabled
71
+ ? html `
72
+ <slot
73
+ ${ref(this._removePartRef)}
74
+ name="remove"
75
+ @click=${this._handleRemove}
76
+ >
77
+ <igc-icon
78
+ name="remove"
79
+ collection="default"
80
+ tabindex="0"
81
+ role="button"
82
+ aria-label="Remove"
83
+ ></igc-icon>
84
+ </slot>
85
+ `
86
+ : nothing;
87
+ return html `
88
+ <span part="suffix" ?hidden=${!isVisible && !this.removable}>
89
+ <slot name="end"></slot>
90
+ <slot name="suffix"></slot>
91
+ ${removeSlot}
92
+ </span>
93
+ `;
50
94
  }
51
95
  render() {
96
+ const ariaPressed = this.selectable ? this.selected.toString() : null;
52
97
  return html `
53
98
  <button
54
99
  part="base"
55
- .disabled=${this.disabled}
56
- aria-selected=${this.selected}
57
- aria-disabled=${this.disabled}
58
- @click=${this.handleSelect}
100
+ .ariaPressed=${ariaPressed}
101
+ ?disabled=${this.disabled}
102
+ @click=${this._handleSelect}
59
103
  >
60
- <span
61
- part="prefix"
62
- .hidden=${isEmpty(this.prefixes) &&
63
- isEmpty(this.contentStart) &&
64
- !this.selected}
65
- >
66
- ${this.selectable && this.selected
67
- ? html `<slot name="select">
68
- <igc-icon name="selected" collection="default"></igc-icon>
69
- </slot>`
70
- : nothing}
71
- <slot name="start"></slot>
72
- <slot name="prefix"></slot>
73
- </span>
104
+ ${this._renderPrefix()}
74
105
  <slot></slot>
75
- <span
76
- part="suffix"
77
- .hidden=${isEmpty(this.suffixes) &&
78
- isEmpty(this.contentEnd) &&
79
- !this.removable}
80
- >
81
- <slot name="end"></slot>
82
- <slot name="suffix"></slot>
83
- ${this.removable && !this.disabled
84
- ? html `<slot
85
- ${ref(this._removePartRef)}
86
- @click=${this.handleRemove}
87
- name="remove"
88
- >
89
- <igc-icon
90
- name="remove"
91
- collection="default"
92
- tabindex="0"
93
- role="button"
94
- aria-label="remove"
95
- ></igc-icon>
96
- </slot>`
97
- : nothing}
98
- </span>
106
+ ${this._renderSuffix()}
99
107
  </button>
100
108
  `;
101
109
  }
@@ -118,16 +126,4 @@ __decorate([
118
126
  __decorate([
119
127
  property({ reflect: true })
120
128
  ], IgcChipComponent.prototype, "variant", void 0);
121
- __decorate([
122
- queryAssignedElements({ slot: 'prefix' })
123
- ], IgcChipComponent.prototype, "prefixes", void 0);
124
- __decorate([
125
- queryAssignedElements({ slot: 'start' })
126
- ], IgcChipComponent.prototype, "contentStart", void 0);
127
- __decorate([
128
- queryAssignedElements({ slot: 'suffix' })
129
- ], IgcChipComponent.prototype, "suffixes", void 0);
130
- __decorate([
131
- queryAssignedElements({ slot: 'end' })
132
- ], IgcChipComponent.prototype, "contentEnd", void 0);
133
129
  //# sourceMappingURL=chip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property, queryAssignedElements } from 'lit/decorators.js';\nimport { createRef, type Ref, ref } from 'lit/directives/ref.js';\n\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addKeybindings } from '../common/controllers/key-bindings.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { isEmpty } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport type { StyleVariant } from '../types.js';\nimport { styles } from './themes/chip.base.css.js';\nimport { styles as shared } from './themes/shared/chip.common.css.js';\nimport { all } from './themes/themes.js';\n\nexport interface IgcChipComponentEventMap {\n igcRemove: CustomEvent<boolean>;\n igcSelect: CustomEvent<boolean>;\n}\n/**\n * Chips help people enter information, make selections, filter content, or trigger actions.\n *\n * @element igc-chip\n *\n * @slot - Renders the chip data.\n * @slot prefix - Renders content before the data of the chip.\n * @slot suffix - Renders content after the data of the chip.\n *\n * @fires igcRemove - Emits an event when the chip component is removed. Returns the removed chip component.\n * @fires igcSelect - Emits event when the chip component is selected/deselected and any related animations and transitions also end.\n *\n * @csspart base - The base wrapper of the chip.\n * @csspart prefix - The prefix container of the chip.\n * @csspart suffix - The suffix container of the chip.\n */\nexport default class IgcChipComponent extends EventEmitterMixin<\n IgcChipComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-chip';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcChipComponent, IgcIconComponent);\n }\n\n private _removePartRef: Ref<HTMLSlotElement> = createRef();\n\n /**\n * Sets the disabled state for the chip.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Defines if the chip is removable or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public removable = false;\n\n /**\n * Defines if the chip is selectable or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selectable = false;\n\n /* @tsTwoWayProperty(true, \"igcSelect\", \"detail\", false) */\n /**\n * Defines if the chip is selected or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * A property that sets the color variant of the chip component.\n * @attr\n */\n @property({ reflect: true })\n public variant!: StyleVariant;\n\n @queryAssignedElements({ slot: 'prefix' })\n protected prefixes!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'start' })\n protected contentStart!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'suffix' })\n protected suffixes!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'end' })\n protected contentEnd!: Array<HTMLElement>;\n\n constructor() {\n super();\n\n addThemingController(this, all);\n\n addKeybindings(this, {\n ref: this._removePartRef,\n bindingDefaults: { triggers: ['keyup'] },\n }).setActivateHandler(this.handleRemove);\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => this.requestUpdate());\n return root;\n }\n\n protected handleSelect() {\n if (this.selectable) {\n this.selected = !this.selected;\n this.emitEvent('igcSelect', { detail: this.selected });\n }\n }\n\n protected handleRemove(e: Event) {\n this.emitEvent('igcRemove');\n e.stopPropagation();\n }\n\n protected override render() {\n return html`\n <button\n part=\"base\"\n .disabled=${this.disabled}\n aria-selected=${this.selected}\n aria-disabled=${this.disabled}\n @click=${this.handleSelect}\n >\n <span\n part=\"prefix\"\n .hidden=${isEmpty(this.prefixes) &&\n isEmpty(this.contentStart) &&\n !this.selected}\n >\n ${this.selectable && this.selected\n ? html`<slot name=\"select\">\n <igc-icon name=\"selected\" collection=\"default\"></igc-icon>\n </slot>`\n : nothing}\n <slot name=\"start\"></slot>\n <slot name=\"prefix\"></slot>\n </span>\n <slot></slot>\n <span\n part=\"suffix\"\n .hidden=${isEmpty(this.suffixes) &&\n isEmpty(this.contentEnd) &&\n !this.removable}\n >\n <slot name=\"end\"></slot>\n <slot name=\"suffix\"></slot>\n ${this.removable && !this.disabled\n ? html`<slot\n ${ref(this._removePartRef)}\n @click=${this.handleRemove}\n name=\"remove\"\n >\n <igc-icon\n name=\"remove\"\n collection=\"default\"\n tabindex=\"0\"\n role=\"button\"\n aria-label=\"remove\"\n ></igc-icon>\n </slot>`\n : nothing}\n </span>\n </button>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-chip': IgcChipComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,gBAAgB,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAyBzC,MAAqB,gBAAiB,SAAQ,iBAAiB,CAG7D,UAAU,CAAC;IAKJ,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IACxD,CAAC;IA4CD;QACE,KAAK,EAAE,CAAC;QA3CO,mBAAc,GAAG,SAAS,EAAmB,CAAC;QAE9C,WAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE;YAChD,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC;SACxE,CAAC,CAAC;QAOI,aAAQ,GAAG,KAAK,CAAC;QAOjB,cAAS,GAAG,KAAK,CAAC;QAOlB,eAAU,GAAG,KAAK,CAAC;QAQnB,aAAQ,GAAG,KAAK,CAAC;QAYtB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEhC,cAAc,CAAC,IAAI,EAAE;YACnB,GAAG,EAAE,IAAI,CAAC,cAAc;YACxB,eAAe,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE;SACzC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAES,aAAa;QACrB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAES,aAAa,CAAC,KAAY;QAClC,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAES,aAAa;QACrB,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE3C,MAAM,UAAU,GACd,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ;YAC9B,CAAC,CAAC,IAAI,CAAA;;;;WAIH;YACH,CAAC,CAAC,OAAO,CAAC;QAEd,OAAO,IAAI,CAAA;oCACqB,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ;UACtD,UAAU;;;;KAIf,CAAC;IACJ,CAAC;IAES,aAAa;QACrB,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAEzC,MAAM,UAAU,GACd,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC9B,CAAC,CAAC,IAAI,CAAA;;gBAEE,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;;uBAEjB,IAAI,CAAC,aAAa;;;;;;;;;;WAU9B;YACH,CAAC,CAAC,OAAO,CAAC;QAEd,OAAO,IAAI,CAAA;oCACqB,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS;;;UAGvD,UAAU;;KAEf,CAAC;IACJ,CAAC;IAEkB,MAAM;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAEtE,OAAO,IAAI,CAAA;;;uBAGQ,WAAW;oBACd,IAAI,CAAC,QAAQ;iBAChB,IAAI,CAAC,aAAa;;UAEzB,IAAI,CAAC,aAAa,EAAE;;UAEpB,IAAI,CAAC,aAAa,EAAE;;KAEzB,CAAC;IACJ,CAAC;;AAhJsB,wBAAO,GAAG,UAAU,AAAb,CAAc;AAC9B,uBAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,AAAnB,CAAoB;eALrB,gBAAgB;AAuB5B;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDACnB;AAOjB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;mDAClB;AAOlB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oDACjB;AAQnB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDACnB;AAOjB;IADN,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACE","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addKeybindings } from '../common/controllers/key-bindings.js';\nimport { addSlotController, setSlots } from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport type { StyleVariant } from '../types.js';\nimport { styles } from './themes/chip.base.css.js';\nimport { styles as shared } from './themes/shared/chip.common.css.js';\nimport { all } from './themes/themes.js';\n\nexport interface IgcChipComponentEventMap {\n igcRemove: CustomEvent<boolean>;\n igcSelect: CustomEvent<boolean>;\n}\n\n/**\n * Chips help people enter information, make selections, filter content, or trigger actions.\n *\n * @element igc-chip\n *\n * @slot - Renders content in the default slot of the chip.\n * @slot prefix - Renders content at the start of the chip, before the default content.\n * @slot suffix - Renders content at the end of the chip after the default content.\n * @slot select - Content to render when the chip in selected state.\n * @slot remove - Content to override the default remove chip icon.\n *\n * @fires igcRemove - Emits an event when the chip component is removed. Returns the removed chip component.\n * @fires igcSelect - Emits event when the chip component is selected/deselected and any related animations and transitions also end.\n *\n * @csspart base - The base wrapper of the chip.\n * @csspart prefix - The prefix container of the chip.\n * @csspart suffix - The suffix container of the chip.\n */\nexport default class IgcChipComponent extends EventEmitterMixin<\n IgcChipComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-chip';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcChipComponent, IgcIconComponent);\n }\n\n private readonly _removePartRef = createRef<HTMLSlotElement>();\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('prefix', 'suffix', 'start', 'end', 'select', 'remove'),\n });\n\n /**\n * Sets the disabled state for the chip.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Defines if the chip is removable or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public removable = false;\n\n /**\n * Defines if the chip is selectable or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selectable = false;\n\n /* @tsTwoWayProperty(true, \"igcSelect\", \"detail\", false) */\n /**\n * Defines if the chip is selected or not.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * A property that sets the color variant of the chip component.\n * @attr\n */\n @property({ reflect: true })\n public variant!: StyleVariant;\n\n constructor() {\n super();\n\n addThemingController(this, all);\n\n addKeybindings(this, {\n ref: this._removePartRef,\n bindingDefaults: { triggers: ['keyup'] },\n }).setActivateHandler(this._handleRemove);\n }\n\n protected _handleSelect(): void {\n if (this.selectable) {\n this.selected = !this.selected;\n this.emitEvent('igcSelect', { detail: this.selected });\n }\n }\n\n protected _handleRemove(event: Event): void {\n event.stopPropagation();\n this.emitEvent('igcRemove');\n }\n\n protected _renderPrefix() {\n const isVisible =\n this._slots.hasAssignedElements('prefix') ||\n this._slots.hasAssignedElements('start');\n\n const selectSlot =\n this.selectable && this.selected\n ? html`\n <slot name=\"select\">\n <igc-icon name=\"selected\" collection=\"default\"></igc-icon>\n </slot>\n `\n : nothing;\n\n return html`\n <span part=\"prefix\" ?hidden=${!isVisible && !this.selected}>\n ${selectSlot}\n <slot name=\"start\"></slot>\n <slot name=\"prefix\"></slot>\n </span>\n `;\n }\n\n protected _renderSuffix() {\n const isVisible =\n this._slots.hasAssignedElements('suffix') ||\n this._slots.hasAssignedElements('end');\n\n const removeSlot =\n this.removable && !this.disabled\n ? html`\n <slot\n ${ref(this._removePartRef)}\n name=\"remove\"\n @click=${this._handleRemove}\n >\n <igc-icon\n name=\"remove\"\n collection=\"default\"\n tabindex=\"0\"\n role=\"button\"\n aria-label=\"Remove\"\n ></igc-icon>\n </slot>\n `\n : nothing;\n\n return html`\n <span part=\"suffix\" ?hidden=${!isVisible && !this.removable}>\n <slot name=\"end\"></slot>\n <slot name=\"suffix\"></slot>\n ${removeSlot}\n </span>\n `;\n }\n\n protected override render() {\n const ariaPressed = this.selectable ? this.selected.toString() : null;\n\n return html`\n <button\n part=\"base\"\n .ariaPressed=${ariaPressed}\n ?disabled=${this.disabled}\n @click=${this._handleSelect}\n >\n ${this._renderPrefix()}\n <slot></slot>\n ${this._renderSuffix()}\n </button>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-chip': IgcChipComponent;\n }\n}\n"]}
@@ -1,6 +1,5 @@
1
1
  import { LitElement, type TemplateResult } from 'lit';
2
2
  import type { Constructor } from '../common/mixins/constructor.js';
3
- import { type FormValueOf } from '../common/mixins/forms/form-value.js';
4
3
  import IgcInputComponent from '../input/input.js';
5
4
  import { DataController } from './controllers/data.js';
6
5
  import { NavigationController } from './controllers/navigation.js';
@@ -62,7 +61,7 @@ export default class IgcComboComponent<T extends object = any> extends IgcComboC
62
61
  static register(): void;
63
62
  protected get __validators(): import("../common/validators.js").Validator<IgcComboComponent<any>>[];
64
63
  private readonly _rootClickController;
65
- protected readonly _formValue: FormValueOf<ComboValue<T>[]>;
64
+ protected readonly _formValue: import("../common/mixins/forms/form-value.js").FormValue<ComboValue<T>[]>;
66
65
  private _data;
67
66
  private _valueKey?;
68
67
  private _displayKey?;
@@ -280,7 +279,8 @@ export default class IgcComboComponent<T extends object = any> extends IgcComboC
280
279
  */
281
280
  deselect(items?: Item<T> | Item<T>[]): void;
282
281
  protected handleMainInput({ detail }: CustomEvent<string>): Promise<void>;
283
- private _handleBlur;
282
+ protected _handleFocusIn(): void;
283
+ protected _handleBlur(): void;
284
284
  protected handleSearchInput({ detail }: CustomEvent<string>): void;
285
285
  protected handleOpening(): boolean;
286
286
  protected handleClosing(): boolean;
@@ -8,7 +8,6 @@ var IgcComboComponent_1;
8
8
  import { html, LitElement, nothing } from 'lit';
9
9
  import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
10
10
  import { ifDefined } from 'lit/directives/if-defined.js';
11
- import { live } from 'lit/directives/live.js';
12
11
  import { addThemingController } from '../../theming/theming-controller.js';
13
12
  import { addRootClickController } from '../common/controllers/root-click.js';
14
13
  import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
@@ -17,7 +16,7 @@ import { watch } from '../common/decorators/watch.js';
17
16
  import { registerComponent } from '../common/definitions/register.js';
18
17
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
19
18
  import { FormAssociatedRequiredMixin } from '../common/mixins/forms/associated-required.js';
20
- import { createFormValueState, } from '../common/mixins/forms/form-value.js';
19
+ import { createFormValueState } from '../common/mixins/forms/form-value.js';
21
20
  import { partMap } from '../common/part-map.js';
22
21
  import { addSafeEventListener, asArray, equal, findElementFromEventPath, first, isEmpty, } from '../common/util.js';
23
22
  import IgcIconComponent from '../icon/icon.js';
@@ -213,6 +212,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
213
212
  };
214
213
  addThemingController(this, all);
215
214
  addSafeEventListener(this, 'blur', this._handleBlur);
215
+ addSafeEventListener(this, 'focusin', this._handleFocusIn);
216
216
  this.addEventListener('keydown', this._navigation.navigateHost.bind(this._navigation));
217
217
  }
218
218
  async firstUpdated() {
@@ -226,7 +226,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
226
226
  this._formValue.value = this._formValue.defaultValue;
227
227
  this._updateSelection();
228
228
  this.updateValue(true);
229
- this._updateValidity();
229
+ this._validate();
230
230
  }
231
231
  _setDefaultValue(current) {
232
232
  this.defaultValue = JSON.parse(current ?? '[]');
@@ -283,6 +283,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
283
283
  this.updateValue();
284
284
  }
285
285
  async handleMainInput({ detail }) {
286
+ this._setTouchedState();
286
287
  this._show();
287
288
  this._state.searchTerm = detail;
288
289
  await this.updateComplete;
@@ -291,12 +292,15 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
291
292
  this._list.requestUpdate();
292
293
  this.clearSingleSelection();
293
294
  }
295
+ _handleFocusIn() {
296
+ this._setTouchedState();
297
+ }
294
298
  _handleBlur() {
295
299
  if (this._selection.isEmpty) {
296
300
  this._displayValue = '';
297
301
  this.resetSearchTerm();
298
302
  }
299
- this.checkValidity();
303
+ super._handleBlur();
300
304
  }
301
305
  handleSearchInput({ detail }) {
302
306
  this._state.searchTerm = detail;
@@ -360,6 +364,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
360
364
  }
361
365
  }
362
366
  itemClickHandler(event) {
367
+ this._setTouchedState();
363
368
  const target = findElementFromEventPath(IgcComboItemComponent.tagName, event);
364
369
  if (!target) {
365
370
  return;
@@ -407,6 +412,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
407
412
  this._navigation.active = -1;
408
413
  }
409
414
  handleMainInputKeydown(e) {
415
+ this._setTouchedState();
410
416
  this._navigation.navigateMainInput(e, this._list);
411
417
  }
412
418
  handleSearchInputKeydown(e) {
@@ -465,7 +471,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
465
471
  role="combobox"
466
472
  aria-controls="dropdown"
467
473
  aria-owns="dropdown"
468
- aria-expanded=${this.open ? 'true' : 'false'}
474
+ aria-expanded=${this.open}
469
475
  aria-describedby="combo-helper-text"
470
476
  aria-disabled=${this.disabled}
471
477
  exportparts="container: input, input: native-input, label, prefix, suffix"
@@ -478,7 +484,7 @@ let IgcComboComponent = IgcComboComponent_1 = class IgcComboComponent extends Fo
478
484
  .value=${this._displayValue}
479
485
  .disabled=${this.disabled}
480
486
  .required=${this.required}
481
- .invalid=${live(this.invalid)}
487
+ .invalid=${this.invalid}
482
488
  .outlined=${this.outlined}
483
489
  .autofocus=${this.autofocus}
484
490
  ?readonly=${!this.singleSelect}