igniteui-webcomponents 4.9.0 → 4.11.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 (786) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/animations/player.d.ts +1 -1
  3. package/components/banner/banner.d.ts +55 -0
  4. package/components/banner/banner.js +100 -0
  5. package/components/banner/banner.js.map +1 -0
  6. package/components/banner/themes/banner.base.css.js +3 -0
  7. package/components/banner/themes/banner.base.css.js.map +1 -0
  8. package/components/banner/themes/dark/banner.bootstrap.css.js +3 -0
  9. package/components/banner/themes/dark/banner.bootstrap.css.js.map +1 -0
  10. package/components/banner/themes/dark/banner.fluent.css.d.ts +1 -0
  11. package/components/banner/themes/dark/banner.fluent.css.js +3 -0
  12. package/components/banner/themes/dark/banner.fluent.css.js.map +1 -0
  13. package/components/banner/themes/dark/banner.indigo.css.d.ts +1 -0
  14. package/components/banner/themes/dark/banner.indigo.css.js +3 -0
  15. package/components/banner/themes/dark/banner.indigo.css.js.map +1 -0
  16. package/components/banner/themes/dark/banner.material.css.d.ts +1 -0
  17. package/components/banner/themes/dark/banner.material.css.js +3 -0
  18. package/components/banner/themes/dark/banner.material.css.js.map +1 -0
  19. package/components/banner/themes/light/banner.bootstrap.css.d.ts +1 -0
  20. package/components/banner/themes/light/banner.bootstrap.css.js +3 -0
  21. package/components/banner/themes/light/banner.bootstrap.css.js.map +1 -0
  22. package/components/banner/themes/light/banner.fluent.css.d.ts +1 -0
  23. package/components/banner/themes/light/banner.fluent.css.js +3 -0
  24. package/components/banner/themes/light/banner.fluent.css.js.map +1 -0
  25. package/components/banner/themes/light/banner.indigo.css.d.ts +1 -0
  26. package/components/banner/themes/light/banner.indigo.css.js +3 -0
  27. package/components/banner/themes/light/banner.indigo.css.js.map +1 -0
  28. package/components/banner/themes/light/banner.material.css.d.ts +1 -0
  29. package/components/banner/themes/light/banner.material.css.js +3 -0
  30. package/components/banner/themes/light/banner.material.css.js.map +1 -0
  31. package/components/banner/themes/shared/banner.bootstrap.css.d.ts +1 -0
  32. package/components/banner/themes/shared/banner.bootstrap.css.js +3 -0
  33. package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -0
  34. package/components/banner/themes/shared/banner.fluent.css.d.ts +1 -0
  35. package/components/banner/themes/shared/banner.fluent.css.js +3 -0
  36. package/components/banner/themes/shared/banner.fluent.css.js.map +1 -0
  37. package/components/banner/themes/shared/banner.indigo.css.d.ts +1 -0
  38. package/components/banner/themes/shared/banner.indigo.css.js +3 -0
  39. package/components/banner/themes/shared/banner.indigo.css.js.map +1 -0
  40. package/components/banner/themes/shared/banner.material.css.d.ts +1 -0
  41. package/components/banner/themes/shared/banner.material.css.js +3 -0
  42. package/components/banner/themes/shared/banner.material.css.js.map +1 -0
  43. package/components/banner/themes/themes.d.ts +2 -0
  44. package/components/banner/themes/themes.js +43 -0
  45. package/components/banner/themes/themes.js.map +1 -0
  46. package/components/button/button-base.d.ts +3 -1
  47. package/components/button/button-base.js +13 -4
  48. package/components/button/button-base.js.map +1 -1
  49. package/components/button/themes/button/button.base.css.js +1 -1
  50. package/components/button/themes/button/button.base.css.js.map +1 -1
  51. package/components/button/themes/button/dark/button.bootstrap.css.js +1 -1
  52. package/components/button/themes/button/dark/button.bootstrap.css.js.map +1 -1
  53. package/components/button/themes/button/dark/button.fluent.css.js +1 -1
  54. package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
  55. package/components/button/themes/button/dark/button.indigo.css.js +1 -1
  56. package/components/button/themes/button/dark/button.indigo.css.js.map +1 -1
  57. package/components/button/themes/button/dark/button.material.css.js +1 -1
  58. package/components/button/themes/button/dark/button.material.css.js.map +1 -1
  59. package/components/button/themes/button/light/button.bootstrap.css.js +1 -1
  60. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  61. package/components/button/themes/button/light/button.fluent.css.js +1 -1
  62. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  63. package/components/button/themes/button/light/button.indigo.css.js +1 -1
  64. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  65. package/components/button/themes/button/light/button.material.css.js +1 -1
  66. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  67. package/components/button/themes/button/light/button.shared.css.js +1 -1
  68. package/components/button/themes/button/light/button.shared.css.js.map +1 -1
  69. package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
  70. package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
  71. package/components/button/themes/button/shared/button.common.css.js +1 -1
  72. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  73. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  74. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  75. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  76. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  77. package/components/button/themes/button/shared/button.material.css.js +1 -1
  78. package/components/button/themes/button/shared/button.material.css.js.map +1 -1
  79. package/components/button/themes/icon-button/dark/icon-button.bootstrap.css.js +1 -1
  80. package/components/button/themes/icon-button/dark/icon-button.bootstrap.css.js.map +1 -1
  81. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js +1 -1
  82. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js.map +1 -1
  83. package/components/button/themes/icon-button/dark/icon-button.indigo.css.js +1 -1
  84. package/components/button/themes/icon-button/dark/icon-button.indigo.css.js.map +1 -1
  85. package/components/button/themes/icon-button/dark/icon-button.material.css.js +1 -1
  86. package/components/button/themes/icon-button/dark/icon-button.material.css.js.map +1 -1
  87. package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
  88. package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
  89. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +1 -1
  90. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  91. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +1 -1
  92. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  93. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +1 -1
  94. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  95. package/components/button/themes/icon-button/light/icon-button.material.css.js +1 -1
  96. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  97. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
  98. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
  99. package/components/button/themes/icon-button/shared/icon-button.common.css.js +1 -1
  100. package/components/button/themes/icon-button/shared/icon-button.common.css.js.map +1 -1
  101. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
  102. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
  103. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
  104. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
  105. package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
  106. package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
  107. package/components/button-group/themes/button.base.css.js +1 -1
  108. package/components/button-group/themes/button.base.css.js.map +1 -1
  109. package/components/button-group/themes/button.d.ts +1 -1
  110. package/components/button-group/themes/button.js +7 -0
  111. package/components/button-group/themes/button.js.map +1 -1
  112. package/components/button-group/themes/dark/button-group.bootstrap.css.js +1 -1
  113. package/components/button-group/themes/dark/button-group.bootstrap.css.js.map +1 -1
  114. package/components/button-group/themes/dark/button-group.fluent.css.js +1 -1
  115. package/components/button-group/themes/dark/button-group.fluent.css.js.map +1 -1
  116. package/components/button-group/themes/dark/button-group.indigo.css.js +1 -1
  117. package/components/button-group/themes/dark/button-group.indigo.css.js.map +1 -1
  118. package/components/button-group/themes/dark/button-group.material.css.js +1 -1
  119. package/components/button-group/themes/dark/button-group.material.css.js.map +1 -1
  120. package/components/button-group/themes/dark/button-group.shared.css.js +1 -1
  121. package/components/button-group/themes/dark/button-group.shared.css.js.map +1 -1
  122. package/components/button-group/themes/group.d.ts +1 -1
  123. package/components/button-group/themes/group.js.map +1 -1
  124. package/components/button-group/themes/light/button-group.bootstrap.css.js +1 -1
  125. package/components/button-group/themes/light/button-group.bootstrap.css.js.map +1 -1
  126. package/components/button-group/themes/light/button-group.fluent.css.js +1 -1
  127. package/components/button-group/themes/light/button-group.fluent.css.js.map +1 -1
  128. package/components/button-group/themes/light/button-group.indigo.css.js +1 -1
  129. package/components/button-group/themes/light/button-group.indigo.css.js.map +1 -1
  130. package/components/button-group/themes/light/button-group.material.css.js +1 -1
  131. package/components/button-group/themes/light/button-group.material.css.js.map +1 -1
  132. package/components/button-group/themes/light/button-group.shared.css.js +1 -1
  133. package/components/button-group/themes/light/button-group.shared.css.js.map +1 -1
  134. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  135. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  136. package/components/button-group/themes/shared/button/button.common.css.js +1 -1
  137. package/components/button-group/themes/shared/button/button.common.css.js.map +1 -1
  138. package/components/button-group/themes/shared/button/button.fluent.css.js +1 -1
  139. package/components/button-group/themes/shared/button/button.fluent.css.js.map +1 -1
  140. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  141. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  142. package/components/button-group/themes/shared/button/button.material.css.d.ts +1 -0
  143. package/components/button-group/themes/shared/button/button.material.css.js +3 -0
  144. package/components/button-group/themes/shared/button/button.material.css.js.map +1 -0
  145. package/components/button-group/themes/shared/group/group.bootstrap.css.js +1 -1
  146. package/components/button-group/themes/shared/group/group.bootstrap.css.js.map +1 -1
  147. package/components/button-group/themes/shared/group/group.common.css.js +1 -1
  148. package/components/button-group/themes/shared/group/group.common.css.js.map +1 -1
  149. package/components/button-group/themes/shared/group/group.indigo.css.js +1 -1
  150. package/components/button-group/themes/shared/group/group.indigo.css.js.map +1 -1
  151. package/components/button-group/toggle-button.d.ts +3 -1
  152. package/components/button-group/toggle-button.js +9 -1
  153. package/components/button-group/toggle-button.js.map +1 -1
  154. package/components/calendar/calendar.d.ts +2 -1
  155. package/components/calendar/calendar.js +15 -14
  156. package/components/calendar/calendar.js.map +1 -1
  157. package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
  158. package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
  159. package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
  160. package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
  161. package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
  162. package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
  163. package/components/calendar/themes/dark/calendar.material.css.js +1 -1
  164. package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
  165. package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
  166. package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
  167. package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
  168. package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
  169. package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
  170. package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
  171. package/components/calendar/themes/light/calendar.material.css.js +1 -1
  172. package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
  173. package/components/calendar/themes/light/calendar.shared.css.js +1 -1
  174. package/components/calendar/themes/light/calendar.shared.css.js.map +1 -1
  175. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  176. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  177. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  178. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  179. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js +1 -1
  180. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js.map +1 -1
  181. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js +1 -1
  182. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js.map +1 -1
  183. package/components/calendar/themes/shared/material/year-month-view.material.css.js +1 -1
  184. package/components/calendar/themes/shared/material/year-month-view.material.css.js.map +1 -1
  185. package/components/checkbox/checkbox-base.d.ts +2 -6
  186. package/components/checkbox/checkbox-base.js +18 -37
  187. package/components/checkbox/checkbox-base.js.map +1 -1
  188. package/components/checkbox/checkbox.js +3 -3
  189. package/components/checkbox/checkbox.js.map +1 -1
  190. package/components/checkbox/switch.js +3 -3
  191. package/components/checkbox/switch.js.map +1 -1
  192. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
  193. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
  194. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
  195. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
  196. package/components/checkbox/themes/dark/checkbox/checkbox.indigo.css.js +1 -1
  197. package/components/checkbox/themes/dark/checkbox/checkbox.indigo.css.js.map +1 -1
  198. package/components/checkbox/themes/dark/checkbox/checkbox.material.css.js +1 -1
  199. package/components/checkbox/themes/dark/checkbox/checkbox.material.css.js.map +1 -1
  200. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js +1 -1
  201. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js.map +1 -1
  202. package/components/checkbox/themes/dark/switch/switch.fluent.css.js +1 -1
  203. package/components/checkbox/themes/dark/switch/switch.fluent.css.js.map +1 -1
  204. package/components/checkbox/themes/dark/switch/switch.indigo.css.js +1 -1
  205. package/components/checkbox/themes/dark/switch/switch.indigo.css.js.map +1 -1
  206. package/components/checkbox/themes/dark/switch/switch.material.css.js +1 -1
  207. package/components/checkbox/themes/dark/switch/switch.material.css.js.map +1 -1
  208. package/components/checkbox/themes/light/checkbox/checkbox.bootstrap.css.js +1 -1
  209. package/components/checkbox/themes/light/checkbox/checkbox.bootstrap.css.js.map +1 -1
  210. package/components/checkbox/themes/light/checkbox/checkbox.fluent.css.js +1 -1
  211. package/components/checkbox/themes/light/checkbox/checkbox.fluent.css.js.map +1 -1
  212. package/components/checkbox/themes/light/checkbox/checkbox.indigo.css.js +1 -1
  213. package/components/checkbox/themes/light/checkbox/checkbox.indigo.css.js.map +1 -1
  214. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js +1 -1
  215. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js.map +1 -1
  216. package/components/checkbox/themes/light/checkbox/checkbox.shared.css.js +1 -1
  217. package/components/checkbox/themes/light/checkbox/checkbox.shared.css.js.map +1 -1
  218. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js +1 -1
  219. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js.map +1 -1
  220. package/components/checkbox/themes/light/switch/switch.fluent.css.js +1 -1
  221. package/components/checkbox/themes/light/switch/switch.fluent.css.js.map +1 -1
  222. package/components/checkbox/themes/light/switch/switch.indigo.css.js +1 -1
  223. package/components/checkbox/themes/light/switch/switch.indigo.css.js.map +1 -1
  224. package/components/checkbox/themes/light/switch/switch.material.css.js +1 -1
  225. package/components/checkbox/themes/light/switch/switch.material.css.js.map +1 -1
  226. package/components/checkbox/themes/light/switch/switch.shared.css.js +1 -1
  227. package/components/checkbox/themes/light/switch/switch.shared.css.js.map +1 -1
  228. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  229. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  230. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js +1 -1
  231. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js.map +1 -1
  232. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  233. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  234. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  235. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  236. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  237. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  238. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  239. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  240. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  241. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  242. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  243. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  244. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  245. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  246. package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
  247. package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
  248. package/components/checkbox/themes/switch-themes.js +3 -4
  249. package/components/checkbox/themes/switch-themes.js.map +1 -1
  250. package/components/chip/themes/dark/chip.indigo.css.js +1 -1
  251. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
  252. package/components/chip/themes/light/chip.indigo.css.js +1 -1
  253. package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
  254. package/components/combo/combo.d.ts +2 -0
  255. package/components/combo/combo.js +17 -0
  256. package/components/combo/combo.js.map +1 -1
  257. package/components/combo/controllers/navigation.d.ts +1 -0
  258. package/components/combo/controllers/navigation.js +7 -1
  259. package/components/combo/controllers/navigation.js.map +1 -1
  260. package/components/combo/controllers/selection.d.ts +1 -0
  261. package/components/combo/controllers/selection.js +9 -0
  262. package/components/combo/controllers/selection.js.map +1 -1
  263. package/components/combo/themes/dark/combo.bootstrap.css.js +1 -1
  264. package/components/combo/themes/dark/combo.bootstrap.css.js.map +1 -1
  265. package/components/combo/themes/dark/combo.fluent.css.js +1 -1
  266. package/components/combo/themes/dark/combo.fluent.css.js.map +1 -1
  267. package/components/combo/themes/dark/combo.indigo.css.js +1 -1
  268. package/components/combo/themes/dark/combo.indigo.css.js.map +1 -1
  269. package/components/combo/themes/dark/combo.material.css.js +1 -1
  270. package/components/combo/themes/dark/combo.material.css.js.map +1 -1
  271. package/components/combo/themes/light/combo.bootstrap.css.js +1 -1
  272. package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -1
  273. package/components/combo/themes/light/combo.fluent.css.js +1 -1
  274. package/components/combo/themes/light/combo.fluent.css.js.map +1 -1
  275. package/components/combo/themes/light/combo.indigo.css.js +1 -1
  276. package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
  277. package/components/combo/themes/light/combo.material.css.js +1 -1
  278. package/components/combo/themes/light/combo.material.css.js.map +1 -1
  279. package/components/combo/themes/shared/combo.common.css.js +1 -1
  280. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  281. package/components/common/controllers/focus-ring.d.ts +32 -0
  282. package/components/common/controllers/focus-ring.js +31 -0
  283. package/components/common/controllers/focus-ring.js.map +1 -0
  284. package/components/common/decorators/blazorDeepImport.d.ts +1 -1
  285. package/components/common/decorators/blazorDeepImport.js.map +1 -1
  286. package/components/common/decorators/blazorIndirectRender.d.ts +1 -1
  287. package/components/common/decorators/blazorIndirectRender.js.map +1 -1
  288. package/components/common/decorators/blazorSuppressComponent.d.ts +1 -1
  289. package/components/common/decorators/blazorSuppressComponent.js.map +1 -1
  290. package/components/common/definitions/defineAllComponents.js +6 -0
  291. package/components/common/definitions/defineAllComponents.js.map +1 -1
  292. package/components/common/localization/validation-en.d.ts +1 -0
  293. package/components/common/localization/validation-en.js +1 -0
  294. package/components/common/localization/validation-en.js.map +1 -1
  295. package/components/common/mixins/event-emitter.d.ts +1 -1
  296. package/components/common/mixins/event-emitter.js.map +1 -1
  297. package/components/common/mixins/form-associated.d.ts +1 -1
  298. package/components/common/mixins/form-associated.js.map +1 -1
  299. package/components/common/mixins/option.d.ts +10 -6
  300. package/components/common/mixins/option.js +28 -23
  301. package/components/common/mixins/option.js.map +1 -1
  302. package/components/common/mixins/sizable.d.ts +1 -1
  303. package/components/common/mixins/sizable.js.map +1 -1
  304. package/components/common/util.d.ts +5 -1
  305. package/components/common/util.js +2 -1
  306. package/components/common/util.js.map +1 -1
  307. package/components/common/validators.d.ts +9 -1
  308. package/components/common/validators.js +16 -1
  309. package/components/common/validators.js.map +1 -1
  310. package/components/date-picker/date-picker.d.ts +279 -0
  311. package/components/date-picker/date-picker.js +534 -0
  312. package/components/date-picker/date-picker.js.map +1 -0
  313. package/components/date-picker/themes/dark/date-picker.bootstrap.css.d.ts +1 -0
  314. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +3 -0
  315. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -0
  316. package/components/date-picker/themes/dark/date-picker.fluent.css.d.ts +1 -0
  317. package/components/date-picker/themes/dark/date-picker.fluent.css.js +3 -0
  318. package/components/date-picker/themes/dark/date-picker.fluent.css.js.map +1 -0
  319. package/components/date-picker/themes/dark/date-picker.indigo.css.d.ts +1 -0
  320. package/components/date-picker/themes/dark/date-picker.indigo.css.js +3 -0
  321. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -0
  322. package/components/date-picker/themes/dark/date-picker.material.css.d.ts +1 -0
  323. package/components/date-picker/themes/dark/date-picker.material.css.js +3 -0
  324. package/components/date-picker/themes/dark/date-picker.material.css.js.map +1 -0
  325. package/components/date-picker/themes/date-picker.base.css.d.ts +1 -0
  326. package/components/date-picker/themes/date-picker.base.css.js +3 -0
  327. package/components/date-picker/themes/date-picker.base.css.js.map +1 -0
  328. package/components/date-picker/themes/light/date-picker.bootstrap.css.d.ts +1 -0
  329. package/components/date-picker/themes/light/date-picker.bootstrap.css.js +3 -0
  330. package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -0
  331. package/components/date-picker/themes/light/date-picker.fluent.css.d.ts +1 -0
  332. package/components/date-picker/themes/light/date-picker.fluent.css.js +3 -0
  333. package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -0
  334. package/components/date-picker/themes/light/date-picker.indigo.css.d.ts +1 -0
  335. package/components/date-picker/themes/light/date-picker.indigo.css.js +3 -0
  336. package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -0
  337. package/components/date-picker/themes/light/date-picker.material.css.d.ts +1 -0
  338. package/components/date-picker/themes/light/date-picker.material.css.js +3 -0
  339. package/components/date-picker/themes/light/date-picker.material.css.js.map +1 -0
  340. package/components/date-picker/themes/light/date-picker.shared.css.d.ts +1 -0
  341. package/components/date-picker/themes/light/date-picker.shared.css.js +3 -0
  342. package/components/date-picker/themes/light/date-picker.shared.css.js.map +1 -0
  343. package/components/date-picker/themes/shared/date-picker.bootstrap.css.d.ts +1 -0
  344. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +3 -0
  345. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -0
  346. package/components/date-picker/themes/shared/date-picker.common.css.d.ts +1 -0
  347. package/components/date-picker/themes/shared/date-picker.common.css.js +3 -0
  348. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -0
  349. package/components/date-picker/themes/shared/date-picker.fluent.css.d.ts +1 -0
  350. package/components/date-picker/themes/shared/date-picker.fluent.css.js +3 -0
  351. package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -0
  352. package/components/date-picker/themes/shared/date-picker.indigo.css.d.ts +1 -0
  353. package/components/date-picker/themes/shared/date-picker.indigo.css.js +3 -0
  354. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -0
  355. package/components/date-picker/themes/themes.d.ts +2 -0
  356. package/components/date-picker/themes/themes.js +49 -0
  357. package/components/date-picker/themes/themes.js.map +1 -0
  358. package/components/date-time-input/date-time-input.d.ts +3 -3
  359. package/components/date-time-input/date-time-input.js +21 -27
  360. package/components/date-time-input/date-time-input.js.map +1 -1
  361. package/components/dialog/dialog.d.ts +2 -1
  362. package/components/dialog/dialog.js +18 -11
  363. package/components/dialog/dialog.js.map +1 -1
  364. package/components/dialog/themes/dialog.base.css.js +1 -1
  365. package/components/dialog/themes/dialog.base.css.js.map +1 -1
  366. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  367. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  368. package/components/divider/divider.d.ts +40 -0
  369. package/components/divider/divider.js +58 -0
  370. package/components/divider/divider.js.map +1 -0
  371. package/components/divider/themes/dark/divider.bootstrap.css.d.ts +1 -0
  372. package/components/divider/themes/dark/divider.bootstrap.css.js +3 -0
  373. package/components/divider/themes/dark/divider.bootstrap.css.js.map +1 -0
  374. package/components/divider/themes/dark/divider.fluent.css.d.ts +1 -0
  375. package/components/divider/themes/dark/divider.fluent.css.js +3 -0
  376. package/components/divider/themes/dark/divider.fluent.css.js.map +1 -0
  377. package/components/divider/themes/dark/divider.indigo.css.d.ts +1 -0
  378. package/components/divider/themes/dark/divider.indigo.css.js +3 -0
  379. package/components/divider/themes/dark/divider.indigo.css.js.map +1 -0
  380. package/components/divider/themes/dark/divider.material.css.d.ts +1 -0
  381. package/components/divider/themes/dark/divider.material.css.js +3 -0
  382. package/components/divider/themes/dark/divider.material.css.js.map +1 -0
  383. package/components/divider/themes/divider.base.css.d.ts +1 -0
  384. package/components/divider/themes/divider.base.css.js +3 -0
  385. package/components/divider/themes/divider.base.css.js.map +1 -0
  386. package/components/divider/themes/light/divider.bootstrap.css.d.ts +1 -0
  387. package/components/divider/themes/light/divider.bootstrap.css.js +3 -0
  388. package/components/divider/themes/light/divider.bootstrap.css.js.map +1 -0
  389. package/components/divider/themes/light/divider.fluent.css.d.ts +1 -0
  390. package/components/divider/themes/light/divider.fluent.css.js +3 -0
  391. package/components/divider/themes/light/divider.fluent.css.js.map +1 -0
  392. package/components/divider/themes/light/divider.indigo.css.d.ts +1 -0
  393. package/components/divider/themes/light/divider.indigo.css.js +3 -0
  394. package/components/divider/themes/light/divider.indigo.css.js.map +1 -0
  395. package/components/divider/themes/light/divider.material.css.d.ts +1 -0
  396. package/components/divider/themes/light/divider.material.css.js +3 -0
  397. package/components/divider/themes/light/divider.material.css.js.map +1 -0
  398. package/components/divider/themes/light/divider.shared.css.d.ts +1 -0
  399. package/components/divider/themes/light/divider.shared.css.js +3 -0
  400. package/components/divider/themes/light/divider.shared.css.js.map +1 -0
  401. package/components/divider/themes/shared/divider.common.css.d.ts +1 -0
  402. package/components/divider/themes/shared/divider.common.css.js +3 -0
  403. package/components/divider/themes/shared/divider.common.css.js.map +1 -0
  404. package/components/divider/themes/shared/divider.indigo.css.d.ts +1 -0
  405. package/components/divider/themes/shared/divider.indigo.css.js +3 -0
  406. package/components/divider/themes/shared/divider.indigo.css.js.map +1 -0
  407. package/components/divider/themes/themes.d.ts +2 -0
  408. package/components/divider/themes/themes.js +47 -0
  409. package/components/divider/themes/themes.js.map +1 -0
  410. package/components/dropdown/dropdown-group.d.ts +1 -1
  411. package/components/dropdown/dropdown-group.js.map +1 -1
  412. package/components/dropdown/dropdown-item.d.ts +3 -3
  413. package/components/dropdown/dropdown-item.js.map +1 -1
  414. package/components/dropdown/dropdown.d.ts +3 -3
  415. package/components/dropdown/dropdown.js +1 -0
  416. package/components/dropdown/dropdown.js.map +1 -1
  417. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
  418. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
  419. package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
  420. package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
  421. package/components/dropdown/themes/dark/dropdown.indigo.css.js +1 -1
  422. package/components/dropdown/themes/dark/dropdown.indigo.css.js.map +1 -1
  423. package/components/dropdown/themes/dark/dropdown.material.css.js +1 -1
  424. package/components/dropdown/themes/dark/dropdown.material.css.js.map +1 -1
  425. package/components/dropdown/themes/header.js +7 -0
  426. package/components/dropdown/themes/header.js.map +1 -1
  427. package/components/dropdown/themes/item.js +7 -0
  428. package/components/dropdown/themes/item.js.map +1 -1
  429. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
  430. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  431. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
  432. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  433. package/components/dropdown/themes/light/dropdown.indigo.css.js +1 -1
  434. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  435. package/components/dropdown/themes/light/dropdown.material.css.js +1 -1
  436. package/components/dropdown/themes/light/dropdown.material.css.js.map +1 -1
  437. package/components/dropdown/themes/light/dropdown.shared.css.js +1 -1
  438. package/components/dropdown/themes/light/dropdown.shared.css.js.map +1 -1
  439. package/components/dropdown/themes/shared/dropdown.common.css.js +1 -1
  440. package/components/dropdown/themes/shared/dropdown.common.css.js.map +1 -1
  441. package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
  442. package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
  443. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.d.ts +1 -0
  444. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +3 -0
  445. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -0
  446. package/components/dropdown/themes/shared/item/dropdown-item.common.css.js +1 -1
  447. package/components/dropdown/themes/shared/item/dropdown-item.common.css.js.map +1 -1
  448. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.d.ts +1 -0
  449. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +3 -0
  450. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -0
  451. package/components/focus-trap/focus-trap.d.ts +35 -0
  452. package/components/focus-trap/focus-trap.js +144 -0
  453. package/components/focus-trap/focus-trap.js.map +1 -0
  454. package/components/icon/internal-icons-lib.js +6 -0
  455. package/components/icon/internal-icons-lib.js.map +1 -1
  456. package/components/input/input-base.d.ts +2 -1
  457. package/components/input/input.d.ts +11 -2
  458. package/components/input/input.js +13 -4
  459. package/components/input/input.js.map +1 -1
  460. package/components/list/themes/dark/container/list.indigo.css.js +1 -1
  461. package/components/list/themes/dark/container/list.indigo.css.js.map +1 -1
  462. package/components/list/themes/dark/header/list-header.indigo.css.js +1 -1
  463. package/components/list/themes/dark/header/list-header.indigo.css.js.map +1 -1
  464. package/components/list/themes/dark/item/list-item.indigo.css.js +1 -1
  465. package/components/list/themes/dark/item/list-item.indigo.css.js.map +1 -1
  466. package/components/list/themes/header.js +3 -2
  467. package/components/list/themes/header.js.map +1 -1
  468. package/components/list/themes/item.base.css.js +1 -1
  469. package/components/list/themes/item.base.css.js.map +1 -1
  470. package/components/list/themes/light/container/list.indigo.css.js +1 -1
  471. package/components/list/themes/light/container/list.indigo.css.js.map +1 -1
  472. package/components/list/themes/light/header/list-header.indigo.css.js +1 -1
  473. package/components/list/themes/light/header/list-header.indigo.css.js.map +1 -1
  474. package/components/list/themes/light/item/list-item.indigo.css.js +1 -1
  475. package/components/list/themes/light/item/list-item.indigo.css.js.map +1 -1
  476. package/components/list/themes/shared/container/list.bootstrap.css.js +1 -1
  477. package/components/list/themes/shared/container/list.bootstrap.css.js.map +1 -1
  478. package/components/list/themes/shared/container/list.fluent.css.js +1 -1
  479. package/components/list/themes/shared/container/list.fluent.css.js.map +1 -1
  480. package/components/list/themes/shared/container/list.indigo.css.js +1 -1
  481. package/components/list/themes/shared/container/list.indigo.css.js.map +1 -1
  482. package/components/list/themes/shared/container/list.material.css.js +1 -1
  483. package/components/list/themes/shared/container/list.material.css.js.map +1 -1
  484. package/components/list/themes/shared/header/list-header.indigo.css.d.ts +1 -0
  485. package/components/list/themes/shared/header/list-header.indigo.css.js +3 -0
  486. package/components/list/themes/shared/header/list-header.indigo.css.js.map +1 -0
  487. package/components/list/themes/shared/item/list-item.common.css.js +1 -1
  488. package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
  489. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  490. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  491. package/components/mask-input/mask-input.js +2 -4
  492. package/components/mask-input/mask-input.js.map +1 -1
  493. package/components/nav-drawer/nav-drawer.d.ts +6 -6
  494. package/components/nav-drawer/nav-drawer.js +11 -13
  495. package/components/nav-drawer/nav-drawer.js.map +1 -1
  496. package/components/nav-drawer/themes/container.base.css.js +1 -1
  497. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  498. package/components/nav-drawer/themes/container.js +3 -2
  499. package/components/nav-drawer/themes/container.js.map +1 -1
  500. package/components/nav-drawer/themes/dark/container/nav-drawer.bootstrap.css.js +1 -1
  501. package/components/nav-drawer/themes/dark/container/nav-drawer.bootstrap.css.js.map +1 -1
  502. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js +1 -1
  503. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js.map +1 -1
  504. package/components/nav-drawer/themes/dark/container/nav-drawer.indigo.css.js +1 -1
  505. package/components/nav-drawer/themes/dark/container/nav-drawer.indigo.css.js.map +1 -1
  506. package/components/nav-drawer/themes/dark/container/nav-drawer.material.css.js +1 -1
  507. package/components/nav-drawer/themes/dark/container/nav-drawer.material.css.js.map +1 -1
  508. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js +1 -1
  509. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js.map +1 -1
  510. package/components/nav-drawer/themes/header-item.base.css.js +1 -1
  511. package/components/nav-drawer/themes/header-item.base.css.js.map +1 -1
  512. package/components/nav-drawer/themes/header-item.js +21 -0
  513. package/components/nav-drawer/themes/header-item.js.map +1 -1
  514. package/components/nav-drawer/themes/item.base.css.js +1 -1
  515. package/components/nav-drawer/themes/item.base.css.js.map +1 -1
  516. package/components/nav-drawer/themes/item.js +7 -0
  517. package/components/nav-drawer/themes/item.js.map +1 -1
  518. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js +1 -1
  519. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js.map +1 -1
  520. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
  521. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
  522. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js +1 -1
  523. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js.map +1 -1
  524. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js +1 -1
  525. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js.map +1 -1
  526. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js +1 -1
  527. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js.map +1 -1
  528. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
  529. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
  530. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  531. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  532. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js +1 -1
  533. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js.map +1 -1
  534. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
  535. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
  536. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.d.ts +1 -0
  537. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +3 -0
  538. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -0
  539. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js +1 -1
  540. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js.map +1 -1
  541. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.d.ts +1 -0
  542. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js +3 -0
  543. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js.map +1 -0
  544. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.d.ts +1 -0
  545. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +3 -0
  546. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -0
  547. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.d.ts +1 -0
  548. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js +3 -0
  549. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js.map +1 -0
  550. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js +1 -1
  551. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js.map +1 -1
  552. package/components/nav-drawer/themes/shared/item/item.common.css.js +1 -1
  553. package/components/nav-drawer/themes/shared/item/item.common.css.js.map +1 -1
  554. package/components/nav-drawer/themes/shared/item/item.fluent.css.js +1 -1
  555. package/components/nav-drawer/themes/shared/item/item.fluent.css.js.map +1 -1
  556. package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
  557. package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
  558. package/components/nav-drawer/themes/shared/item/item.material.css.d.ts +1 -0
  559. package/components/nav-drawer/themes/shared/item/item.material.css.js +3 -0
  560. package/components/nav-drawer/themes/shared/item/item.material.css.js.map +1 -0
  561. package/components/navbar/themes/dark/navbar.fluent.css.js +1 -1
  562. package/components/navbar/themes/dark/navbar.fluent.css.js.map +1 -1
  563. package/components/navbar/themes/light/navbar.fluent.css.js +1 -1
  564. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  565. package/components/navbar/themes/light/navbar.shared.css.js +1 -1
  566. package/components/navbar/themes/light/navbar.shared.css.js.map +1 -1
  567. package/components/navbar/themes/navbar.base.css.js +1 -1
  568. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  569. package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
  570. package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
  571. package/components/navbar/themes/shared/navbar.common.css.js +1 -1
  572. package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
  573. package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
  574. package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
  575. package/components/popover/popover.d.ts +2 -0
  576. package/components/popover/popover.js +1 -1
  577. package/components/popover/popover.js.map +1 -1
  578. package/components/progress/base.d.ts +1 -1
  579. package/components/progress/base.js +6 -4
  580. package/components/progress/base.js.map +1 -1
  581. package/components/progress/circular-progress.d.ts +13 -13
  582. package/components/progress/circular-progress.js +1 -1
  583. package/components/progress/circular-progress.js.map +1 -1
  584. package/components/progress/linear-progress.d.ts +11 -11
  585. package/components/progress/linear-progress.js +4 -4
  586. package/components/progress/linear-progress.js.map +1 -1
  587. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  588. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  589. package/components/progress/themes/circular/dark/circular.progress.indigo.css.js +1 -1
  590. package/components/progress/themes/circular/dark/circular.progress.indigo.css.js.map +1 -1
  591. package/components/progress/themes/circular/light/circular.progress.indigo.css.js +1 -1
  592. package/components/progress/themes/circular/light/circular.progress.indigo.css.js.map +1 -1
  593. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js +1 -1
  594. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js.map +1 -1
  595. package/components/progress/themes/circular/shared/circular.progress.common.css.js +1 -1
  596. package/components/progress/themes/circular/shared/circular.progress.common.css.js.map +1 -1
  597. package/components/progress/themes/circular/shared/circular.progress.fluent.css.js +1 -1
  598. package/components/progress/themes/circular/shared/circular.progress.fluent.css.js.map +1 -1
  599. package/components/progress/themes/circular/shared/circular.progress.indigo.css.d.ts +1 -0
  600. package/components/progress/themes/circular/shared/circular.progress.indigo.css.js +3 -0
  601. package/components/progress/themes/circular/shared/circular.progress.indigo.css.js.map +1 -0
  602. package/components/progress/themes/circular/themes.js +3 -2
  603. package/components/progress/themes/circular/themes.js.map +1 -1
  604. package/components/progress/themes/linear/dark/linear.progress.bootstrap.css.js +1 -1
  605. package/components/progress/themes/linear/dark/linear.progress.bootstrap.css.js.map +1 -1
  606. package/components/progress/themes/linear/dark/linear.progress.indigo.css.js +1 -1
  607. package/components/progress/themes/linear/dark/linear.progress.indigo.css.js.map +1 -1
  608. package/components/progress/themes/linear/light/linear.progress.bootstrap.css.js +1 -1
  609. package/components/progress/themes/linear/light/linear.progress.bootstrap.css.js.map +1 -1
  610. package/components/progress/themes/linear/light/linear.progress.indigo.css.js +1 -1
  611. package/components/progress/themes/linear/light/linear.progress.indigo.css.js.map +1 -1
  612. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  613. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  614. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
  615. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
  616. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
  617. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
  618. package/components/radio/radio.d.ts +13 -5
  619. package/components/radio/radio.js +51 -43
  620. package/components/radio/radio.js.map +1 -1
  621. package/components/radio/themes/dark/radio.bootstrap.css.js +1 -1
  622. package/components/radio/themes/dark/radio.bootstrap.css.js.map +1 -1
  623. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  624. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  625. package/components/radio/themes/dark/radio.indigo.css.js +1 -1
  626. package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
  627. package/components/radio/themes/dark/radio.material.css.js +1 -1
  628. package/components/radio/themes/dark/radio.material.css.js.map +1 -1
  629. package/components/radio/themes/light/radio.bootstrap.css.js +1 -1
  630. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  631. package/components/radio/themes/light/radio.fluent.css.js +1 -1
  632. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  633. package/components/radio/themes/light/radio.indigo.css.js +1 -1
  634. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  635. package/components/radio/themes/light/radio.material.css.js +1 -1
  636. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  637. package/components/radio/themes/light/radio.shared.css.js +1 -1
  638. package/components/radio/themes/light/radio.shared.css.js.map +1 -1
  639. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  640. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  641. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  642. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  643. package/components/radio/themes/shared/radio.material.css.js +1 -1
  644. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  645. package/components/radio/themes/themes.js +3 -4
  646. package/components/radio/themes/themes.js.map +1 -1
  647. package/components/radio/utils.d.ts +1 -1
  648. package/components/radio/utils.js +9 -2
  649. package/components/radio/utils.js.map +1 -1
  650. package/components/radio-group/radio-group.d.ts +20 -0
  651. package/components/radio-group/radio-group.js +53 -4
  652. package/components/radio-group/radio-group.js.map +1 -1
  653. package/components/rating/themes/dark/rating.indigo.css.js +1 -1
  654. package/components/rating/themes/dark/rating.indigo.css.js.map +1 -1
  655. package/components/rating/themes/light/rating.indigo.css.js +1 -1
  656. package/components/rating/themes/light/rating.indigo.css.js.map +1 -1
  657. package/components/rating/themes/rating-symbol.base.css.js +1 -1
  658. package/components/rating/themes/rating-symbol.base.css.js.map +1 -1
  659. package/components/rating/themes/rating.base.css.js +1 -1
  660. package/components/rating/themes/rating.base.css.js.map +1 -1
  661. package/components/rating/themes/shared/rating.indigo.css.js +1 -1
  662. package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
  663. package/components/ripple/ripple.js +31 -19
  664. package/components/ripple/ripple.js.map +1 -1
  665. package/components/select/select-item.d.ts +9 -4
  666. package/components/select/select-item.js +9 -8
  667. package/components/select/select-item.js.map +1 -1
  668. package/components/select/select.d.ts +9 -7
  669. package/components/select/select.js +11 -0
  670. package/components/select/select.js.map +1 -1
  671. package/components/select/themes/dark/select.bootstrap.css.js +1 -1
  672. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
  673. package/components/select/themes/dark/select.fluent.css.js +1 -1
  674. package/components/select/themes/dark/select.fluent.css.js.map +1 -1
  675. package/components/select/themes/dark/select.indigo.css.js +1 -1
  676. package/components/select/themes/dark/select.indigo.css.js.map +1 -1
  677. package/components/select/themes/dark/select.material.css.js +1 -1
  678. package/components/select/themes/dark/select.material.css.js.map +1 -1
  679. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  680. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  681. package/components/select/themes/light/select.fluent.css.js +1 -1
  682. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  683. package/components/select/themes/light/select.indigo.css.js +1 -1
  684. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  685. package/components/select/themes/light/select.material.css.js +1 -1
  686. package/components/select/themes/light/select.material.css.js.map +1 -1
  687. package/components/select/themes/shared/select.common.css.js +1 -1
  688. package/components/select/themes/shared/select.common.css.js.map +1 -1
  689. package/components/slider/themes/dark/slider.bootstrap.css.js +1 -1
  690. package/components/slider/themes/dark/slider.bootstrap.css.js.map +1 -1
  691. package/components/slider/themes/dark/slider.fluent.css.js +1 -1
  692. package/components/slider/themes/dark/slider.fluent.css.js.map +1 -1
  693. package/components/slider/themes/dark/slider.indigo.css.js +1 -1
  694. package/components/slider/themes/dark/slider.indigo.css.js.map +1 -1
  695. package/components/slider/themes/dark/slider.material.css.js +1 -1
  696. package/components/slider/themes/dark/slider.material.css.js.map +1 -1
  697. package/components/slider/themes/light/slider.bootstrap.css.js +1 -1
  698. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  699. package/components/slider/themes/light/slider.fluent.css.js +1 -1
  700. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  701. package/components/slider/themes/light/slider.indigo.css.js +1 -1
  702. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  703. package/components/slider/themes/light/slider.material.css.js +1 -1
  704. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  705. package/components/slider/themes/light/slider.shared.css.js +1 -1
  706. package/components/slider/themes/light/slider.shared.css.js.map +1 -1
  707. package/components/slider/themes/shared/slider.common.css.js +1 -1
  708. package/components/slider/themes/shared/slider.common.css.js.map +1 -1
  709. package/components/slider/themes/shared/slider.indigo.css.js +1 -1
  710. package/components/slider/themes/shared/slider.indigo.css.js.map +1 -1
  711. package/components/slider/themes/slider.base.css.js +1 -1
  712. package/components/slider/themes/slider.base.css.js.map +1 -1
  713. package/components/snackbar/themes/dark/snackbar.indigo.css.js +1 -1
  714. package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -1
  715. package/components/snackbar/themes/light/snackbar.indigo.css.js +1 -1
  716. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  717. package/components/stepper/themes/step/dark/step.bootstrap.css.js +1 -1
  718. package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -1
  719. package/components/stepper/themes/step/dark/step.fluent.css.js +1 -1
  720. package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -1
  721. package/components/stepper/themes/step/dark/step.indigo.css.js +1 -1
  722. package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -1
  723. package/components/stepper/themes/step/dark/step.material.css.js +1 -1
  724. package/components/stepper/themes/step/dark/step.material.css.js.map +1 -1
  725. package/components/stepper/themes/step/light/step.indigo.css.js +1 -1
  726. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -1
  727. package/components/stepper/themes/step/light/step.shared.css.js +1 -1
  728. package/components/stepper/themes/step/light/step.shared.css.js.map +1 -1
  729. package/components/stepper/themes/step/shared/step.common.css.js +1 -1
  730. package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
  731. package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
  732. package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
  733. package/components/stepper/themes/stepper/stepper.indigo.css.js +1 -1
  734. package/components/stepper/themes/stepper/stepper.indigo.css.js.map +1 -1
  735. package/components/textarea/textarea.d.ts +5 -2
  736. package/components/textarea/textarea.js +12 -5
  737. package/components/textarea/textarea.js.map +1 -1
  738. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  739. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  740. package/components/toast/themes/dark/toast.indigo.css.js +1 -1
  741. package/components/toast/themes/dark/toast.indigo.css.js.map +1 -1
  742. package/components/toast/themes/light/toast.indigo.css.js +1 -1
  743. package/components/toast/themes/light/toast.indigo.css.js.map +1 -1
  744. package/components/toast/themes/shared/toast.bootstrap.css.js +1 -1
  745. package/components/toast/themes/shared/toast.bootstrap.css.js.map +1 -1
  746. package/components/toast/themes/shared/toast.common.css.js +1 -1
  747. package/components/toast/themes/shared/toast.common.css.js.map +1 -1
  748. package/components/toast/themes/shared/toast.fluent.css.js +1 -1
  749. package/components/toast/themes/shared/toast.fluent.css.js.map +1 -1
  750. package/components/toast/themes/toast.base.css.js +1 -1
  751. package/components/toast/themes/toast.base.css.js.map +1 -1
  752. package/components/tree/themes/dark/container.bootstrap.css.js +1 -1
  753. package/components/tree/themes/dark/container.bootstrap.css.js.map +1 -1
  754. package/components/tree/themes/dark/container.fluent.css.js +1 -1
  755. package/components/tree/themes/dark/container.fluent.css.js.map +1 -1
  756. package/components/tree/themes/dark/container.indigo.css.js +1 -1
  757. package/components/tree/themes/dark/container.indigo.css.js.map +1 -1
  758. package/components/tree/themes/dark/container.material.css.js +1 -1
  759. package/components/tree/themes/dark/container.material.css.js.map +1 -1
  760. package/components/tree/themes/item.base.css.js +1 -1
  761. package/components/tree/themes/item.base.css.js.map +1 -1
  762. package/components/tree/themes/light/container.indigo.css.js +1 -1
  763. package/components/tree/themes/light/container.indigo.css.js.map +1 -1
  764. package/components/tree/themes/light/container.shared.css.js +1 -1
  765. package/components/tree/themes/light/container.shared.css.js.map +1 -1
  766. package/components/tree/themes/shared/item.common.css.js +1 -1
  767. package/components/tree/themes/shared/item.common.css.js.map +1 -1
  768. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  769. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  770. package/custom-elements.json +3360 -529
  771. package/igniteui-webcomponents.css-data.json +929 -0
  772. package/igniteui-webcomponents.html-data.json +2700 -0
  773. package/index.d.ts +3 -0
  774. package/index.js +3 -0
  775. package/index.js.map +1 -1
  776. package/package.json +6 -2
  777. package/themes/dark/fluent.css +1 -1
  778. package/themes/dark/indigo.css +1 -1
  779. package/themes/light/indigo.css +1 -1
  780. package/web-types.json +7623 -0
  781. package/components/checkbox/themes/dark/switch/switch.shared.css.js +0 -3
  782. package/components/checkbox/themes/dark/switch/switch.shared.css.js.map +0 -1
  783. package/components/radio/themes/dark/radio.shared.css.js +0 -3
  784. package/components/radio/themes/dark/radio.shared.css.js.map +0 -1
  785. /package/components/{checkbox/themes/dark/switch/switch.shared.css.d.ts → banner/themes/banner.base.css.d.ts} +0 -0
  786. /package/components/{radio/themes/dark/radio.shared.css.d.ts → banner/themes/dark/banner.bootstrap.css.d.ts} +0 -0
@@ -1,6 +1,9 @@
1
1
  import { LitElement } from 'lit';
2
2
  export declare abstract class IgcBaseOptionLikeComponent extends LitElement {
3
3
  protected _internals: ElementInternals;
4
+ protected _active: boolean;
5
+ protected _disabled: boolean;
6
+ protected _selected: boolean;
4
7
  protected _value: string;
5
8
  protected _content: Array<Element>;
6
9
  protected get _contentSlotText(): string;
@@ -8,27 +11,28 @@ export declare abstract class IgcBaseOptionLikeComponent extends LitElement {
8
11
  * Whether the item is active.
9
12
  * @attr
10
13
  */
11
- active: boolean;
14
+ set active(value: boolean);
15
+ get active(): boolean;
12
16
  /**
13
17
  * Whether the item is disabled.
14
18
  * @attr
15
19
  */
16
- disabled: boolean;
20
+ set disabled(value: boolean);
21
+ get disabled(): boolean;
17
22
  /**
18
23
  * Whether the item is selected.
19
24
  * @attr
20
25
  */
21
- selected: boolean;
26
+ set selected(value: boolean);
27
+ get selected(): boolean;
22
28
  /**
23
29
  * The current value of the item.
24
30
  * If not specified, the element's text content is used.
25
31
  *
26
32
  * @attr
27
33
  */
28
- get value(): string;
29
34
  set value(value: string);
30
- protected disabledChange(): void;
31
- protected selectedChange(): void;
35
+ get value(): string;
32
36
  constructor();
33
37
  connectedCallback(): void;
34
38
  protected render(): import("lit-html").TemplateResult<1>;
@@ -6,31 +6,42 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { LitElement, html } from 'lit';
8
8
  import { property, queryAssignedNodes } from 'lit/decorators.js';
9
- import { watch } from '../decorators/watch.js';
10
9
  export class IgcBaseOptionLikeComponent extends LitElement {
11
10
  get _contentSlotText() {
12
11
  return this._content.map((node) => node.textContent).join('');
13
12
  }
14
- get value() {
15
- return this._value ? this._value : this._contentSlotText;
13
+ set active(value) {
14
+ this._active = Boolean(value);
16
15
  }
17
- set value(value) {
18
- const old = this._value;
19
- this._value = value;
20
- this.requestUpdate('value', old);
16
+ get active() {
17
+ return this._active;
21
18
  }
22
- disabledChange() {
23
- this._internals.ariaDisabled = `${this.disabled}`;
19
+ set disabled(value) {
20
+ this._disabled = Boolean(value);
21
+ this._internals.ariaDisabled = `${this._disabled}`;
24
22
  }
25
- selectedChange() {
26
- this._internals.ariaSelected = `${this.selected}`;
23
+ get disabled() {
24
+ return this._disabled;
25
+ }
26
+ set selected(value) {
27
+ this._selected = Boolean(value);
28
+ this._internals.ariaSelected = `${this._selected}`;
27
29
  this.active = this.selected;
28
30
  }
31
+ get selected() {
32
+ return this._selected;
33
+ }
34
+ set value(value) {
35
+ this._value = value;
36
+ }
37
+ get value() {
38
+ return this._value ? this._value : this._contentSlotText;
39
+ }
29
40
  constructor() {
30
41
  super();
31
- this.active = false;
32
- this.disabled = false;
33
- this.selected = false;
42
+ this._active = false;
43
+ this._disabled = false;
44
+ this._selected = false;
34
45
  this._internals = this.attachInternals();
35
46
  this._internals.role = 'option';
36
47
  }
@@ -57,20 +68,14 @@ __decorate([
57
68
  ], IgcBaseOptionLikeComponent.prototype, "_content", void 0);
58
69
  __decorate([
59
70
  property({ type: Boolean, reflect: true })
60
- ], IgcBaseOptionLikeComponent.prototype, "active", void 0);
71
+ ], IgcBaseOptionLikeComponent.prototype, "active", null);
61
72
  __decorate([
62
73
  property({ type: Boolean, reflect: true })
63
- ], IgcBaseOptionLikeComponent.prototype, "disabled", void 0);
74
+ ], IgcBaseOptionLikeComponent.prototype, "disabled", null);
64
75
  __decorate([
65
76
  property({ type: Boolean, reflect: true })
66
- ], IgcBaseOptionLikeComponent.prototype, "selected", void 0);
77
+ ], IgcBaseOptionLikeComponent.prototype, "selected", null);
67
78
  __decorate([
68
79
  property()
69
80
  ], IgcBaseOptionLikeComponent.prototype, "value", null);
70
- __decorate([
71
- watch('disabled')
72
- ], IgcBaseOptionLikeComponent.prototype, "disabledChange", null);
73
- __decorate([
74
- watch('selected')
75
- ], IgcBaseOptionLikeComponent.prototype, "selectedChange", null);
76
81
  //# sourceMappingURL=option.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"option.js","sourceRoot":"","sources":["../../../../src/components/common/mixins/option.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,MAAM,OAAgB,0BAA2B,SAAQ,UAAU;IAOjE,IAAc,gBAAgB;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IA8BD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC3D,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpD,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QA7CH,WAAM,GAAG,KAAK,CAAC;QAOf,aAAQ,GAAG,KAAK,CAAC;QAOjB,aAAQ,GAAG,KAAK,CAAC;QAgCtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC;IAClC,CAAC;IAEe,iBAAiB;QAG/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;IACvB,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;;;;;;KAUV,CAAC;IACJ,CAAC;CACF;AAjFW;IADT,kBAAkB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4DACF;AAW7B;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACrB;AAOf;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4DACnB;AAOjB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4DACnB;AASxB;IADC,QAAQ,EAAE;uDAGV;AASS;IADT,KAAK,CAAC,UAAU,CAAC;gEAGjB;AAGS;IADT,KAAK,CAAC,UAAU,CAAC;gEAIjB","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, queryAssignedNodes } from 'lit/decorators.js';\n\nimport { watch } from '../decorators/watch.js';\n\nexport abstract class IgcBaseOptionLikeComponent extends LitElement {\n protected _internals: ElementInternals;\n protected _value!: string;\n\n @queryAssignedNodes({ flatten: true })\n protected _content!: Array<Element>;\n\n protected get _contentSlotText() {\n return this._content.map((node) => node.textContent).join('');\n }\n\n /**\n * Whether the item is active.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n /**\n * Whether the item is disabled.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Whether the item is selected.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * The current value of the item.\n * If not specified, the element's text content is used.\n *\n * @attr\n */\n @property()\n public get value(): string {\n return this._value ? this._value : this._contentSlotText;\n }\n\n public set value(value: string) {\n const old = this._value;\n this._value = value;\n this.requestUpdate('value', old);\n }\n\n @watch('disabled')\n protected disabledChange() {\n this._internals.ariaDisabled = `${this.disabled}`;\n }\n\n @watch('selected')\n protected selectedChange() {\n this._internals.ariaSelected = `${this.selected}`;\n this.active = this.selected;\n }\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n this._internals.role = 'option';\n }\n\n public override connectedCallback(): void {\n // R.K. Workaround for Axe accessibility unit tests.\n // I guess it does not support ElementInternals ARIAMixin state yet\n super.connectedCallback();\n this.role = 'option';\n }\n\n protected override render() {\n return html`\n <section part=\"prefix\">\n <slot name=\"prefix\"></slot>\n </section>\n <section part=\"content\">\n <slot></slot>\n </section>\n <section part=\"suffix\">\n <slot name=\"suffix\"></slot>\n </section>\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"option.js","sourceRoot":"","sources":["../../../../src/components/common/mixins/option.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,OAAgB,0BAA2B,SAAQ,UAAU;IAWjE,IAAc,gBAAgB;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAOD,IAAW,MAAM,CAAC,KAAc;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAOD,IAAW,QAAQ,CAAC,KAAc;QAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACrD,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAOD,IAAW,QAAQ,CAAC,KAAc;QAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IASD,IAAW,KAAK,CAAC,KAAa;QAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC3D,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QAtEA,YAAO,GAAG,KAAK,CAAC;QAChB,cAAS,GAAG,KAAK,CAAC;QAClB,cAAS,GAAG,KAAK,CAAC;QAqE1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC;IAClC,CAAC;IAEe,iBAAiB;QAG/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;IACvB,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;;;;;;KAUV,CAAC;IACJ,CAAC;CACF;AAzFW;IADT,kBAAkB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4DACF;AAWpC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wDAG1C;AAWD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DAI1C;AAWD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DAK1C;AAaD;IADC,QAAQ,EAAE;uDAGV","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, queryAssignedNodes } from 'lit/decorators.js';\n\nexport abstract class IgcBaseOptionLikeComponent extends LitElement {\n protected _internals: ElementInternals;\n\n protected _active = false;\n protected _disabled = false;\n protected _selected = false;\n protected _value!: string;\n\n @queryAssignedNodes({ flatten: true })\n protected _content!: Array<Element>;\n\n protected get _contentSlotText() {\n return this._content.map((node) => node.textContent).join('');\n }\n\n /**\n * Whether the item is active.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public set active(value: boolean) {\n this._active = Boolean(value);\n }\n\n public get active() {\n return this._active;\n }\n\n /**\n * Whether the item is disabled.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public set disabled(value: boolean) {\n this._disabled = Boolean(value);\n this._internals.ariaDisabled = `${this._disabled}`;\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n /**\n * Whether the item is selected.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public set selected(value: boolean) {\n this._selected = Boolean(value);\n this._internals.ariaSelected = `${this._selected}`;\n this.active = this.selected;\n }\n\n public get selected() {\n return this._selected;\n }\n\n /**\n * The current value of the item.\n * If not specified, the element's text content is used.\n *\n * @attr\n */\n @property()\n public set value(value: string) {\n this._value = value;\n }\n\n public get value(): string {\n return this._value ? this._value : this._contentSlotText;\n }\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n this._internals.role = 'option';\n }\n\n public override connectedCallback(): void {\n // R.K. Workaround for Axe accessibility unit tests.\n // I guess it does not support ElementInternals ARIAMixin state yet\n super.connectedCallback();\n this.role = 'option';\n }\n\n protected override render() {\n return html`\n <section part=\"prefix\">\n <slot name=\"prefix\"></slot>\n </section>\n <section part=\"content\">\n <slot></slot>\n </section>\n <section part=\"suffix\">\n <slot name=\"suffix\"></slot>\n </section>\n `;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { LitElement } from 'lit';
2
- import type { Constructor } from './constructor';
2
+ import type { Constructor } from './constructor.js';
3
3
  export declare class SizableInterface {
4
4
  /**
5
5
  * Determines the size of the component.
@@ -1 +1 @@
1
- {"version":3,"file":"sizable.js","sourceRoot":"","sources":["../../../../src/components/common/mixins/sizable.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAc/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,UAAa,EACb,EAAE;IACF,MAAM,cAAe,SAAQ,UAAU;QAAvC;;YASS,SAAI,GAAiC,OAAO,CAAC;QAStD,CAAC;QANW,UAAU;YAClB,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,kBAAkB,EAClB,gCAAgC,IAAI,CAAC,IAAI,IAAI,CAC9C,CAAC;QACJ,CAAC;KACF;IATQ;QADN,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDACwB;IAG1C;QADT,KAAK,CAAC,MAAM,CAAC;oDAMb;IAEH,OAAO,cAAmD,CAAC;AAC7D,CAAC,CAAC","sourcesContent":["import type { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { watch } from '../decorators/watch.js';\nimport type { Constructor } from './constructor';\n\nexport declare class SizableInterface {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n public size: 'small' | 'medium' | 'large';\n}\n\nexport const SizableMixin = <T extends Constructor<LitElement>>(\n superClass: T\n) => {\n class SizableElement extends superClass {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n @property({ reflect: true })\n public size: 'small' | 'medium' | 'large' = 'large';\n\n @watch('size')\n protected updateSize() {\n this.style.setProperty(\n '--component-size',\n `var(--ig-size, var(--ig-size-${this.size}))`\n );\n }\n }\n return SizableElement as Constructor<SizableInterface> & T;\n};\n"]}
1
+ {"version":3,"file":"sizable.js","sourceRoot":"","sources":["../../../../src/components/common/mixins/sizable.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAc/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,UAAa,EACb,EAAE;IACF,MAAM,cAAe,SAAQ,UAAU;QAAvC;;YASS,SAAI,GAAiC,OAAO,CAAC;QAStD,CAAC;QANW,UAAU;YAClB,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,kBAAkB,EAClB,gCAAgC,IAAI,CAAC,IAAI,IAAI,CAC9C,CAAC;QACJ,CAAC;KACF;IATQ;QADN,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDACwB;IAG1C;QADT,KAAK,CAAC,MAAM,CAAC;oDAMb;IAEH,OAAO,cAAmD,CAAC;AAC7D,CAAC,CAAC","sourcesContent":["import type { LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { watch } from '../decorators/watch.js';\nimport type { Constructor } from './constructor.js';\n\nexport declare class SizableInterface {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n public size: 'small' | 'medium' | 'large';\n}\n\nexport const SizableMixin = <T extends Constructor<LitElement>>(\n superClass: T\n) => {\n class SizableElement extends superClass {\n /**\n * Determines the size of the component.\n * @attr\n * @type {\"small\" | \"medium\" | \"large\"}\n *\n * @deprecated since v4.5.0. Use the `--ig-size` CSS custom property instead.\n */\n @property({ reflect: true })\n public size: 'small' | 'medium' | 'large' = 'large';\n\n @watch('size')\n protected updateSize() {\n this.style.setProperty(\n '--component-size',\n `var(--ig-size, var(--ig-size-${this.size}))`\n );\n }\n }\n return SizableElement as Constructor<SizableInterface> & T;\n};\n"]}
@@ -2,6 +2,7 @@ export interface PartNameInfo {
2
2
  readonly [name: string]: string | boolean | number;
3
3
  }
4
4
  export declare const partNameMap: (partNameInfo: PartNameInfo) => string;
5
+ export declare function noop(): void;
5
6
  export declare const asPercent: (part: number, whole: number) => number;
6
7
  export declare const clamp: (number: number, min: number, max: number) => number;
7
8
  /**
@@ -22,6 +23,9 @@ export declare function getOffset(element: HTMLElement, parent: HTMLElement): {
22
23
  bottom: number;
23
24
  };
24
25
  export declare function createCounter(): () => number;
26
+ /**
27
+ * Returns whether an element has a Left-to-Right directionality.
28
+ */
25
29
  export declare function isLTR(element: HTMLElement): boolean;
26
30
  /**
27
31
  * Builds a string from format specifiers and replacement parameters.
@@ -60,7 +64,7 @@ export declare function asNumber(value: unknown, fallback?: number): number;
60
64
  * ```
61
65
  */
62
66
  export declare function wrap(min: number, max: number, value: number): number;
63
- export declare function isDefined<T = unknown>(value: T): boolean;
67
+ export declare function isDefined<T = unknown>(value: T): value is T & ({} | null);
64
68
  export declare function iterNodes<T = Node>(root: Node, whatToShow?: keyof typeof NodeFilter, filter?: (node: T) => boolean): Generator<T>;
65
69
  export declare function getElementByIdFromRoot(root: HTMLElement, id: string): HTMLElement | null;
66
70
  export declare function isElement(node: unknown): node is Element;
@@ -3,6 +3,7 @@ export const partNameMap = (partNameInfo) => {
3
3
  .filter((key) => partNameInfo[key])
4
4
  .join(' ');
5
5
  };
6
+ export function noop() { }
6
7
  export const asPercent = (part, whole) => (part / whole) * 100;
7
8
  export const clamp = (number, min, max) => Math.max(min, Math.min(number, max));
8
9
  export function getOffset(element, parent) {
@@ -23,7 +24,7 @@ export function createCounter() {
23
24
  };
24
25
  }
25
26
  export function isLTR(element) {
26
- return getComputedStyle(element).getPropertyValue('direction') === 'ltr';
27
+ return element.matches(':dir(ltr)');
27
28
  }
28
29
  export function formatString(template, ...params) {
29
30
  const length = params.length;
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/components/common/util.ts"],"names":[],"mappings":"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","sourcesContent":["export interface PartNameInfo {\n readonly [name: string]: string | boolean | number;\n}\n\nexport const partNameMap = (partNameInfo: PartNameInfo) => {\n return Object.keys(partNameInfo)\n .filter((key) => partNameInfo[key])\n .join(' ');\n};\n\nexport const asPercent = (part: number, whole: number) => (part / whole) * 100;\n\nexport const clamp = (number: number, min: number, max: number) =>\n Math.max(min, Math.min(number, max));\n\n/**\n *\n * Returns an element's offset relative to its parent. Similar to element.offsetTop and element.offsetLeft, except the\n * parent doesn't have to be positioned relative or absolute.\n *\n * Work around for the following issues in Chromium based browsers:\n *\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1330819\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1334556\n *\n */\nexport function getOffset(element: HTMLElement, parent: HTMLElement) {\n const { top, left, bottom, right } = element.getBoundingClientRect();\n const {\n top: pTop,\n left: pLeft,\n bottom: pBottom,\n right: pRight,\n } = parent.getBoundingClientRect();\n\n return {\n top: Math.round(top - pTop),\n left: Math.round(left - pLeft),\n right: Math.round(right - pRight),\n bottom: Math.round(bottom - pBottom),\n };\n}\n\nexport function createCounter() {\n let i = 0;\n return () => {\n i++;\n return i;\n };\n}\n\nexport function isLTR(element: HTMLElement) {\n return getComputedStyle(element).getPropertyValue('direction') === 'ltr';\n}\n\n/**\n * Builds a string from format specifiers and replacement parameters.\n * Will coerce non-string parameters to their string representations.\n *\n * @example\n * ```typescript\n * formatString('{0} says \"{1}\".', 'John', 'Hello'); // 'John says \"Hello\".'\n * formatString('{1} is greater than {0}', 0, 1); // '1 is greater than 0'\n * ```\n */\nexport function formatString(template: string, ...params: unknown[]): string {\n const length = params.length;\n\n return template.replace(/{(\\d+)}/g, (match: string, index: number) =>\n index >= length ? match : `${params[index]}`\n );\n}\n\n/**\n * Parse the passed `value` as a number or return the `fallback` if it can't be done.\n *\n * @example\n * ```typescript\n * asNumber('5'); // 5\n * asNumber('3.14'); // 3.14\n * asNumber('five'); // 0\n * asNUmber('five', 5); // 5\n * ```\n */\nexport function asNumber(value: unknown, fallback = 0) {\n const parsed = Number.parseFloat(value as string);\n return Number.isNaN(parsed) ? fallback : parsed;\n}\n\n/**\n * Returns the value wrapped between the min and max bounds.\n *\n * If the value is greater than max, returns the min and vice-versa.\n * If the value is between the bounds, it is returned unchanged.\n *\n * @example\n * ```typescript\n * wrap(1, 4, 2); // 2\n * wrap(1, 4, 5); // 1\n * wrap(1, 4, -1); // 4\n * ```\n */\nexport function wrap(min: number, max: number, value: number) {\n if (value < min) {\n return max;\n }\n if (value > max) {\n return min;\n }\n\n return value;\n}\n\nexport function isDefined<T = unknown>(value: T) {\n return value !== undefined;\n}\n\nexport function* iterNodes<T = Node>(\n root: Node,\n whatToShow?: keyof typeof NodeFilter,\n filter?: (node: T) => boolean\n): Generator<T> {\n if (!isDefined(globalThis.document)) {\n return;\n }\n\n const iter = globalThis.document.createTreeWalker(\n root,\n NodeFilter[whatToShow ?? 'SHOW_ALL']\n );\n\n let node = iter.nextNode() as T;\n\n while (node) {\n if (filter) {\n if (filter(node)) {\n yield node;\n }\n } else {\n yield node;\n }\n\n node = iter.nextNode() as T;\n }\n}\n\nexport function getElementByIdFromRoot(root: HTMLElement, id: string) {\n return (root.getRootNode() as Document | ShadowRoot).getElementById(id);\n}\n\nexport function isElement(node: unknown): node is Element {\n return node instanceof Node && node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function getElementsFromEventPath<T extends Element>(event: Event) {\n return event.composedPath().filter((item) => isElement(item)) as T[];\n}\n\nexport function findElementFromEventPath<T extends Element>(\n predicate: string | ((element: Element) => boolean),\n event: Event\n) {\n const func =\n typeof predicate === 'string'\n ? (e: Element) => e.matches(predicate)\n : (e: Element) => predicate(e);\n\n return getElementsFromEventPath(event).find(func) as T | undefined;\n}\n\nexport function groupBy<T>(array: T[], key: keyof T | ((item: T) => any)) {\n const result: Record<string, T[]> = {};\n const _get = typeof key === 'function' ? key : (item: T) => item[key];\n\n for (const item of array) {\n const category = _get(item);\n const group = result[category];\n\n if (Array.isArray(group)) {\n group.push(item);\n } else {\n result[category] = [item];\n }\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/components/common/util.ts"],"names":[],"mappings":"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","sourcesContent":["export interface PartNameInfo {\n readonly [name: string]: string | boolean | number;\n}\n\nexport const partNameMap = (partNameInfo: PartNameInfo) => {\n return Object.keys(partNameInfo)\n .filter((key) => partNameInfo[key])\n .join(' ');\n};\n\nexport function noop() {}\n\nexport const asPercent = (part: number, whole: number) => (part / whole) * 100;\n\nexport const clamp = (number: number, min: number, max: number) =>\n Math.max(min, Math.min(number, max));\n\n/**\n *\n * Returns an element's offset relative to its parent. Similar to element.offsetTop and element.offsetLeft, except the\n * parent doesn't have to be positioned relative or absolute.\n *\n * Work around for the following issues in Chromium based browsers:\n *\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1330819\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1334556\n *\n */\nexport function getOffset(element: HTMLElement, parent: HTMLElement) {\n const { top, left, bottom, right } = element.getBoundingClientRect();\n const {\n top: pTop,\n left: pLeft,\n bottom: pBottom,\n right: pRight,\n } = parent.getBoundingClientRect();\n\n return {\n top: Math.round(top - pTop),\n left: Math.round(left - pLeft),\n right: Math.round(right - pRight),\n bottom: Math.round(bottom - pBottom),\n };\n}\n\nexport function createCounter() {\n let i = 0;\n return () => {\n i++;\n return i;\n };\n}\n\n/**\n * Returns whether an element has a Left-to-Right directionality.\n */\nexport function isLTR(element: HTMLElement) {\n return element.matches(':dir(ltr)');\n}\n\n/**\n * Builds a string from format specifiers and replacement parameters.\n * Will coerce non-string parameters to their string representations.\n *\n * @example\n * ```typescript\n * formatString('{0} says \"{1}\".', 'John', 'Hello'); // 'John says \"Hello\".'\n * formatString('{1} is greater than {0}', 0, 1); // '1 is greater than 0'\n * ```\n */\nexport function formatString(template: string, ...params: unknown[]): string {\n const length = params.length;\n\n return template.replace(/{(\\d+)}/g, (match: string, index: number) =>\n index >= length ? match : `${params[index]}`\n );\n}\n\n/**\n * Parse the passed `value` as a number or return the `fallback` if it can't be done.\n *\n * @example\n * ```typescript\n * asNumber('5'); // 5\n * asNumber('3.14'); // 3.14\n * asNumber('five'); // 0\n * asNUmber('five', 5); // 5\n * ```\n */\nexport function asNumber(value: unknown, fallback = 0) {\n const parsed = Number.parseFloat(value as string);\n return Number.isNaN(parsed) ? fallback : parsed;\n}\n\n/**\n * Returns the value wrapped between the min and max bounds.\n *\n * If the value is greater than max, returns the min and vice-versa.\n * If the value is between the bounds, it is returned unchanged.\n *\n * @example\n * ```typescript\n * wrap(1, 4, 2); // 2\n * wrap(1, 4, 5); // 1\n * wrap(1, 4, -1); // 4\n * ```\n */\nexport function wrap(min: number, max: number, value: number) {\n if (value < min) {\n return max;\n }\n if (value > max) {\n return min;\n }\n\n return value;\n}\n\nexport function isDefined<T = unknown>(value: T) {\n return value !== undefined;\n}\n\nexport function* iterNodes<T = Node>(\n root: Node,\n whatToShow?: keyof typeof NodeFilter,\n filter?: (node: T) => boolean\n): Generator<T> {\n if (!isDefined(globalThis.document)) {\n return;\n }\n\n const iter = globalThis.document.createTreeWalker(\n root,\n NodeFilter[whatToShow ?? 'SHOW_ALL']\n );\n\n let node = iter.nextNode() as T;\n\n while (node) {\n if (filter) {\n if (filter(node)) {\n yield node;\n }\n } else {\n yield node;\n }\n\n node = iter.nextNode() as T;\n }\n}\n\nexport function getElementByIdFromRoot(root: HTMLElement, id: string) {\n return (root.getRootNode() as Document | ShadowRoot).getElementById(id);\n}\n\nexport function isElement(node: unknown): node is Element {\n return node instanceof Node && node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function getElementsFromEventPath<T extends Element>(event: Event) {\n return event.composedPath().filter((item) => isElement(item)) as T[];\n}\n\nexport function findElementFromEventPath<T extends Element>(\n predicate: string | ((element: Element) => boolean),\n event: Event\n) {\n const func =\n typeof predicate === 'string'\n ? (e: Element) => e.matches(predicate)\n : (e: Element) => predicate(e);\n\n return getElementsFromEventPath(event).find(func) as T | undefined;\n}\n\nexport function groupBy<T>(array: T[], key: keyof T | ((item: T) => any)) {\n const result: Record<string, T[]> = {};\n const _get = typeof key === 'function' ? key : (item: T) => item[key];\n\n for (const item of array) {\n const category = _get(item);\n const group = result[category];\n\n if (Array.isArray(group)) {\n group.push(item);\n } else {\n result[category] = [item];\n }\n }\n\n return result;\n}\n"]}
@@ -7,7 +7,7 @@ export interface Validator<T = any> {
7
7
  }
8
8
  export declare const requiredValidator: Validator<{
9
9
  required: boolean;
10
- value?: string;
10
+ value?: unknown;
11
11
  }>;
12
12
  export declare const requiredNumberValidator: Validator<{
13
13
  required: boolean;
@@ -48,4 +48,12 @@ export declare const emailValidator: Validator<{
48
48
  export declare const urlValidator: Validator<{
49
49
  value: string;
50
50
  }>;
51
+ export declare const minDateValidator: Validator<{
52
+ value?: Date | null;
53
+ min?: Date | null;
54
+ }>;
55
+ export declare const maxDateValidator: Validator<{
56
+ value?: Date | null;
57
+ max?: Date | null;
58
+ }>;
51
59
  export {};
@@ -1,5 +1,7 @@
1
+ import { DateTimeUtil } from '../date-time-input/date-util.js';
1
2
  import validatorMessages from './localization/validation-en.js';
2
3
  import { asNumber, formatString, isDefined } from './util.js';
4
+ const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
3
5
  export const requiredValidator = {
4
6
  key: 'valueMissing',
5
7
  message: validatorMessages.required,
@@ -51,7 +53,6 @@ export const stepValidator = {
51
53
  ? (asNumber(value) - asNumber(min)) % asNumber(step, 1) === 0
52
54
  : true,
53
55
  };
54
- const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
55
56
  export const emailValidator = {
56
57
  key: 'typeMismatch',
57
58
  message: validatorMessages.email,
@@ -62,4 +63,18 @@ export const urlValidator = {
62
63
  message: validatorMessages.url,
63
64
  isValid: ({ value }) => URL.canParse(value),
64
65
  };
66
+ export const minDateValidator = {
67
+ key: 'rangeUnderflow',
68
+ message: ({ min }) => formatString(validatorMessages.min, min),
69
+ isValid: ({ value, min }) => min
70
+ ? !DateTimeUtil.lessThanMinValue(value ?? new Date(), min, false, true)
71
+ : true,
72
+ };
73
+ export const maxDateValidator = {
74
+ key: 'rangeOverflow',
75
+ message: ({ max }) => formatString(validatorMessages.max, max),
76
+ isValid: ({ value, max }) => max
77
+ ? !DateTimeUtil.greaterThanMaxValue(value ?? new Date(), max, false, true)
78
+ : true,
79
+ };
65
80
  //# sourceMappingURL=validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/components/common/validators.ts"],"names":[],"mappings":"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","sourcesContent":["import validatorMessages from './localization/validation-en.js';\nimport { asNumber, formatString, isDefined } from './util.js';\n\ntype ValidatorHandler<T> = (host: T) => boolean;\ntype ValidatorMessageFormat<T> = (host: T) => string;\n\nexport interface Validator<T = any> {\n key: keyof ValidityStateFlags;\n message: string | ValidatorMessageFormat<T>;\n isValid: ValidatorHandler<T>;\n}\n\nexport const requiredValidator: Validator<{\n required: boolean;\n value?: string;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, value }) => (required ? !!value : true),\n};\n\nexport const requiredNumberValidator: Validator<{\n required: boolean;\n value?: number | string;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, value }) => (required ? isDefined(value) : true),\n};\n\nexport const requiredBooleanValidator: Validator<{\n required: boolean;\n checked: boolean;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, checked }) => (required ? checked : true),\n};\n\nexport const minLengthValidator: Validator<{\n minLength: number;\n value: string;\n}> = {\n key: 'tooShort',\n message: ({ minLength }) =>\n formatString(validatorMessages.minLength, minLength),\n isValid: ({ minLength, value }) =>\n minLength ? value.length >= minLength : true,\n};\n\nexport const maxLengthValidator: Validator<{\n maxLength: number;\n value: string;\n}> = {\n key: 'tooLong',\n message: ({ maxLength }) =>\n formatString(validatorMessages.maxLength, maxLength),\n isValid: ({ maxLength, value }) =>\n maxLength ? value.length <= maxLength : true,\n};\n\nexport const patternValidator: Validator<{ pattern: string; value: string }> = {\n key: 'patternMismatch',\n message: validatorMessages.pattern,\n isValid: ({ pattern, value }) =>\n pattern ? new RegExp(pattern, 'u').test(value) : true,\n};\n\nexport const minValidator: Validator<{\n min: number | string;\n value: number | string;\n}> = {\n key: 'rangeUnderflow',\n message: ({ min }) => formatString(validatorMessages.min, min),\n isValid: ({ min, value }) =>\n isDefined(min)\n ? isDefined(value) && asNumber(value) >= asNumber(min)\n : true,\n};\n\nexport const maxValidator: Validator<{\n max: number | string;\n value: number | string;\n}> = {\n key: 'rangeOverflow',\n message: ({ max }) => formatString(validatorMessages.max, max),\n isValid: ({ max, value }) =>\n isDefined(max)\n ? isDefined(value) && asNumber(value) <= asNumber(max)\n : true,\n};\n\nexport const stepValidator: Validator<{\n min: number | string;\n step: number | string;\n value: number | string;\n}> = {\n key: 'stepMismatch',\n message: 'Value does not conform to step constraint',\n isValid: ({ min, step, value }) =>\n isDefined(step)\n ? (asNumber(value) - asNumber(min)) % asNumber(step, 1) === 0\n : true,\n};\n\nconst emailRegex =\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n\nexport const emailValidator: Validator<{ value: string }> = {\n key: 'typeMismatch',\n message: validatorMessages.email,\n isValid: ({ value }) => emailRegex.test(value),\n};\n\nexport const urlValidator: Validator<{ value: string }> = {\n key: 'typeMismatch',\n message: validatorMessages.url,\n isValid: ({ value }) => URL.canParse(value),\n};\n"]}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/components/common/validators.ts"],"names":[],"mappings":"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","sourcesContent":["import { DateTimeUtil } from '../date-time-input/date-util.js';\nimport validatorMessages from './localization/validation-en.js';\nimport { asNumber, formatString, isDefined } from './util.js';\n\ntype ValidatorHandler<T> = (host: T) => boolean;\ntype ValidatorMessageFormat<T> = (host: T) => string;\n\nexport interface Validator<T = any> {\n key: keyof ValidityStateFlags;\n message: string | ValidatorMessageFormat<T>;\n isValid: ValidatorHandler<T>;\n}\n\nconst emailRegex =\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n\nexport const requiredValidator: Validator<{\n required: boolean;\n value?: unknown;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, value }) => (required ? !!value : true),\n};\n\nexport const requiredNumberValidator: Validator<{\n required: boolean;\n value?: number | string;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, value }) => (required ? isDefined(value) : true),\n};\n\nexport const requiredBooleanValidator: Validator<{\n required: boolean;\n checked: boolean;\n}> = {\n key: 'valueMissing',\n message: validatorMessages.required,\n isValid: ({ required, checked }) => (required ? checked : true),\n};\n\nexport const minLengthValidator: Validator<{\n minLength: number;\n value: string;\n}> = {\n key: 'tooShort',\n message: ({ minLength }) =>\n formatString(validatorMessages.minLength, minLength),\n isValid: ({ minLength, value }) =>\n minLength ? value.length >= minLength : true,\n};\n\nexport const maxLengthValidator: Validator<{\n maxLength: number;\n value: string;\n}> = {\n key: 'tooLong',\n message: ({ maxLength }) =>\n formatString(validatorMessages.maxLength, maxLength),\n isValid: ({ maxLength, value }) =>\n maxLength ? value.length <= maxLength : true,\n};\n\nexport const patternValidator: Validator<{ pattern: string; value: string }> = {\n key: 'patternMismatch',\n message: validatorMessages.pattern,\n isValid: ({ pattern, value }) =>\n pattern ? new RegExp(pattern, 'u').test(value) : true,\n};\n\nexport const minValidator: Validator<{\n min: number | string;\n value: number | string;\n}> = {\n key: 'rangeUnderflow',\n message: ({ min }) => formatString(validatorMessages.min, min),\n isValid: ({ min, value }) =>\n isDefined(min)\n ? isDefined(value) && asNumber(value) >= asNumber(min)\n : true,\n};\n\nexport const maxValidator: Validator<{\n max: number | string;\n value: number | string;\n}> = {\n key: 'rangeOverflow',\n message: ({ max }) => formatString(validatorMessages.max, max),\n isValid: ({ max, value }) =>\n isDefined(max)\n ? isDefined(value) && asNumber(value) <= asNumber(max)\n : true,\n};\n\nexport const stepValidator: Validator<{\n min: number | string;\n step: number | string;\n value: number | string;\n}> = {\n key: 'stepMismatch',\n message: 'Value does not conform to step constraint',\n isValid: ({ min, step, value }) =>\n isDefined(step)\n ? (asNumber(value) - asNumber(min)) % asNumber(step, 1) === 0\n : true,\n};\n\nexport const emailValidator: Validator<{ value: string }> = {\n key: 'typeMismatch',\n message: validatorMessages.email,\n isValid: ({ value }) => emailRegex.test(value),\n};\n\nexport const urlValidator: Validator<{ value: string }> = {\n key: 'typeMismatch',\n message: validatorMessages.url,\n isValid: ({ value }) => URL.canParse(value),\n};\n\nexport const minDateValidator: Validator<{\n value?: Date | null;\n min?: Date | null;\n}> = {\n key: 'rangeUnderflow',\n message: ({ min }) => formatString(validatorMessages.min, min),\n isValid: ({ value, min }) =>\n min\n ? !DateTimeUtil.lessThanMinValue(value ?? new Date(), min, false, true)\n : true,\n};\n\nexport const maxDateValidator: Validator<{\n value?: Date | null;\n max?: Date | null;\n}> = {\n key: 'rangeOverflow',\n message: ({ max }) => formatString(validatorMessages.max, max),\n isValid: ({ value, max }) =>\n max\n ? !DateTimeUtil.greaterThanMaxValue(value ?? new Date(), max, false, true)\n : true,\n};\n"]}
@@ -0,0 +1,279 @@
1
+ import { themeSymbol } from '../../theming/theming-decorator.js';
2
+ import { type DateRangeDescriptor } from '../calendar/common/calendar.model.js';
3
+ import { type IgcCalendarResourceStrings } from '../common/i18n/calendar.resources.js';
4
+ import { IgcBaseComboBoxLikeComponent } from '../common/mixins/combo-box.js';
5
+ import type { AbstractConstructor } from '../common/mixins/constructor.js';
6
+ import { type Validator } from '../common/validators.js';
7
+ import type { DatePart } from '../date-time-input/date-util.js';
8
+ export interface IgcDatepickerEventMap {
9
+ igcOpening: CustomEvent<void>;
10
+ igcOpened: CustomEvent<void>;
11
+ igcClosing: CustomEvent<void>;
12
+ igcClosed: CustomEvent<void>;
13
+ igcChange: CustomEvent<Date>;
14
+ igcInput: CustomEvent<Date>;
15
+ }
16
+ declare const IgcDatePickerComponent_base: import("../common/mixins/constructor.js").Constructor<import("../common/mixins/form-associated-required.js").FormRequiredInterface & import("../common/mixins/form-associated.js").FormAssociatedElementInterface> & import("../common/mixins/constructor.js").Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcDatepickerEventMap>> & AbstractConstructor<IgcBaseComboBoxLikeComponent>;
17
+ /**
18
+ * igc-date-picker is a feature rich component used for entering a date through manual text input or
19
+ * choosing date values from a calendar dialog that pops up.
20
+ *
21
+ * @element igc-date-picker
22
+ *
23
+ * @slot prefix - Renders content before the input.
24
+ * @slot suffix - Renders content after the input.
25
+ * @slot helper-text - Renders content below the input.
26
+ * @slot title - Renders content in the calendar title.
27
+ * @slot clear-icon - Renders a clear icon template.
28
+ * @slot calendar-icon - Renders the icon/content for the calendar picker.
29
+ * @slot calendar-icon-open - Renders the icon/content for the picker in open state.
30
+ * @slot actions - Renders content in the action part of the picker in open state.
31
+ *
32
+ * @fires igcOpening - Emitted just before the calendar dropdown is shown.
33
+ * @fires igcOpened - Emitted after the calendar dropdown is shown.
34
+ * @fires igcClosing - Emitted just before the calendar dropdown is hidden.
35
+ * @fires igcClosed - Emitted after the calendar dropdown is hidden.
36
+ * @fires igcChange - Emitted when the user modifies and commits the elements's value.
37
+ * @fires igcInput - Emitted when when the user types in the element.
38
+ *
39
+ * @csspart label - The label wrapper that renders content above the target input.
40
+ * @csspart container - The main wrapper that holds all main input elements.
41
+ * @csspart input - The native input element.
42
+ * @csspart prefix - The prefix wrapper.
43
+ * @csspart suffix - The suffix wrapper.
44
+ * @csspart calendar-icon - The calendar icon wrapper for closed state.
45
+ * @csspart calendar-icon-open - The calendar icon wrapper for opened state.
46
+ * @csspart clear-icon - The clear icon wrapper.
47
+ * @csspart actions - The actions wrapper.
48
+ * @csspart helper-text - The helper-text wrapper that renders content below the target input.
49
+ * @csspart header - The calendar header element.
50
+ * @csspart header-title - The calendar header title element.
51
+ * @csspart header-date - The calendar header date element.
52
+ * @csspart calendar-content - The calendar content element which contains the views and navigation elements.
53
+ * @csspart navigation - The calendar navigation container element.
54
+ * @csspart months-navigation - The calendar months navigation button element.
55
+ * @csspart years-navigation - The calendar years navigation button element.
56
+ * @csspart years-range - The calendar years range element.
57
+ * @csspart navigation-buttons - The calendar navigation buttons container.
58
+ * @csspart navigation-button - The calendar previous/next navigation button.
59
+ * @csspart days-view-container - The calendar days view container element.
60
+ * @csspart days-view - The calendar days view element.
61
+ * @csspart months-view - The calendar months view element.
62
+ * @csspart years-view - The calendar years view element.
63
+ * @csspart days-row - The calendar days row element.
64
+ * @csspart calendar-label - The calendar week header label element.
65
+ * @csspart week-number - The calendar week number element.
66
+ * @csspart week-number-inner - The calendar week number inner element.
67
+ * @csspart date - The calendar date element.
68
+ * @csspart date-inner - The calendar date inner element.
69
+ * @csspart first - The calendar first selected date element in range selection.
70
+ * @csspart last - The calendar last selected date element in range selection.
71
+ * @csspart inactive - The calendar inactive date element.
72
+ * @csspart hidden - The calendar hidden date element.
73
+ * @csspart weekend - The calendar weekend date element.
74
+ * @csspart range - The calendar range selected element.
75
+ * @csspart special - The calendar special date element.
76
+ * @csspart disabled - The calendar disabled date element.
77
+ * @csspart single - The calendar single selected date element.
78
+ * @csspart preview - The calendar range selection preview date element.
79
+ * @csspart month - The calendar month element.
80
+ * @csspart month-inner - The calendar month inner element.
81
+ * @csspart year - The calendar year element.
82
+ * @csspart year-inner - The calendar year inner element.
83
+ * @csspart selected - The calendar selected state for element(s). Applies to date, month and year elements.
84
+ * @csspart current - The calendar current state for element(s). Applies to date, month and year elements.
85
+ */
86
+ export default class IgcDatePickerComponent extends IgcDatePickerComponent_base {
87
+ static readonly tagName = "igc-date-picker";
88
+ static styles: import("lit").CSSResult[];
89
+ protected static shadowRootOptions: {
90
+ delegatesFocus: boolean;
91
+ mode: ShadowRootMode;
92
+ serializable?: boolean;
93
+ slotAssignment?: SlotAssignmentMode;
94
+ };
95
+ private static readonly increment;
96
+ protected inputId: string;
97
+ private readonly [themeSymbol];
98
+ protected validators: Validator<this>[];
99
+ static register(): void;
100
+ private _value?;
101
+ private _activeDate?;
102
+ private _min?;
103
+ private _max?;
104
+ private _disabledDates?;
105
+ private _dateConstraints?;
106
+ private _displayFormat?;
107
+ private _inputFormat?;
108
+ private _rootClickController;
109
+ private get isDropDown();
110
+ private get isMaterialTheme();
111
+ private _input;
112
+ private _calendar;
113
+ private prefixes;
114
+ private suffixes;
115
+ private actions;
116
+ private helperText;
117
+ /**
118
+ * Sets the state of the datepicker dropdown.
119
+ * @attr
120
+ */
121
+ open: boolean;
122
+ /**
123
+ * The label of the datepicker.
124
+ * @attr label
125
+ */
126
+ label: string;
127
+ /**
128
+ * Determines whether the calendar is opened in a dropdown or a modal dialog
129
+ * @attr mode
130
+ */
131
+ mode: 'dropdown' | 'dialog';
132
+ /**
133
+ * Whether to allow typing in the input.
134
+ * @attr non-editable
135
+ */
136
+ nonEditable: boolean;
137
+ /**
138
+ * Makes the control a readonly field.
139
+ * @attr readonly
140
+ */
141
+ readOnly: boolean;
142
+ /**
143
+ * The value of the picker
144
+ * @attr
145
+ */
146
+ set value(value: Date | null);
147
+ get value(): Date | null;
148
+ /**
149
+ * Gets/Sets the date which is shown in the calendar picker and is highlighted.
150
+ * By default it is the current date.
151
+ */
152
+ set activeDate(value: Date);
153
+ get activeDate(): Date;
154
+ /**
155
+ * The minimum value required for the date picker to remain valid.
156
+ * @attr
157
+ */
158
+ set min(value: Date);
159
+ get min(): Date;
160
+ /**
161
+ * The maximum value required for the date picker to remain valid.
162
+ * @attr
163
+ */
164
+ set max(value: Date);
165
+ get max(): Date;
166
+ /** The orientation of the calendar header.
167
+ * @attr header-orientation
168
+ */
169
+ headerOrientation: 'vertical' | 'horizontal';
170
+ /** The orientation of the multiple months displayed in the calendar's days view.
171
+ * @attr
172
+ */
173
+ orientation: 'vertical' | 'horizontal';
174
+ /** Determines whether the calendar hides its header.
175
+ * @attr hide-header
176
+ */
177
+ hideHeader: boolean;
178
+ /**
179
+ * Controls the visibility of the dates that do not belong to the current month.
180
+ * @attr hide-outside-days
181
+ */
182
+ hideOutsideDays: boolean;
183
+ /** Gets/sets disabled dates. */
184
+ set disabledDates(dates: DateRangeDescriptor[]);
185
+ get disabledDates(): DateRangeDescriptor[];
186
+ /** Gets/sets special dates. */
187
+ specialDates: DateRangeDescriptor[];
188
+ /**
189
+ * Whether the control will have outlined appearance.
190
+ * @attr
191
+ */
192
+ outlined: boolean;
193
+ /**
194
+ * The placeholder attribute of the control.
195
+ * @attr
196
+ */
197
+ placeholder: string;
198
+ /**
199
+ * The number of months displayed in the calendar.
200
+ * @attr visible-months
201
+ */
202
+ visibleMonths: number;
203
+ /**
204
+ * Whether to show the number of the week in the calendar.
205
+ * @attr show-week-numbers
206
+ */
207
+ showWeekNumbers: boolean;
208
+ /**
209
+ * Format to display the value in when not editing.
210
+ * Defaults to the input format if not set.
211
+ * @attr display-format
212
+ */
213
+ set displayFormat(value: string);
214
+ get displayFormat(): string;
215
+ /**
216
+ * The date format to apply on the input.
217
+ * Defaults to the current locale Intl.DateTimeFormat
218
+ * @attr input-format
219
+ */
220
+ set inputFormat(value: string);
221
+ get inputFormat(): string;
222
+ /**
223
+ * The locale settings used to display the value.
224
+ * @attr
225
+ */
226
+ locale: string;
227
+ /** The prompt symbol to use for unfilled parts of the mask.
228
+ * @attr
229
+ */
230
+ prompt: string;
231
+ /** The resource strings of the calendar. */
232
+ resourceStrings: IgcCalendarResourceStrings;
233
+ protected openChange(): void;
234
+ /** Sets the start day of the week for the calendar. */
235
+ weekStart: 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday';
236
+ constructor();
237
+ connectedCallback(): void;
238
+ protected createRenderRoot(): HTMLElement | DocumentFragment;
239
+ /** Clears the input part of the component of any user input */
240
+ clear(): void;
241
+ /** Increments the passed in date part */
242
+ stepUp(datePart?: DatePart, delta?: number): void;
243
+ /** Decrements the passed in date part */
244
+ stepDown(datePart?: DatePart, delta?: number): void;
245
+ /** Selects the text in the input of the component */
246
+ select(): void;
247
+ /** Sets the text selection range in the input of the component */
248
+ setSelectionRange(start: number, end: number, direction?: 'none' | 'backward' | 'forward'): void;
249
+ setRangeText(replacement: string, start: number, end: number, mode?: 'select' | 'start' | 'end' | 'preserve'): void;
250
+ protected onEscapeKey(): Promise<void>;
251
+ protected handleFocusIn(): void;
252
+ protected handleFocusOut({ relatedTarget }: FocusEvent): void;
253
+ protected handlerCalendarIconSlotPointerDown(event: PointerEvent): void;
254
+ protected handleInputClick(event: Event): void;
255
+ protected handleAnchorClick(): Promise<void>;
256
+ private _shouldCloseCalendarDropdown;
257
+ protected handleInputChangeEvent(event: CustomEvent<Date>): void;
258
+ protected handleCalendarChangeEvent(event: CustomEvent<Date>): Promise<void>;
259
+ protected handleInputEvent(event: CustomEvent<Date>): void;
260
+ protected handleClosing(): void;
261
+ protected handleDialogClosing(event: Event): void;
262
+ protected handleDialogClosed(event: Event): void;
263
+ private setDateConstraints;
264
+ private renderClearIcon;
265
+ private renderCalendarIcon;
266
+ private renderCalendar;
267
+ protected renderActions(): import("lit-html").TemplateResult<1>;
268
+ protected renderPicker(id: string): import("lit-html").TemplateResult<1>;
269
+ private renderLabel;
270
+ private renderHelperText;
271
+ protected renderInput(id: string): import("lit-html").TemplateResult<1>;
272
+ protected render(): import("lit-html").TemplateResult<1>;
273
+ }
274
+ declare global {
275
+ interface HTMLElementTagNameMap {
276
+ 'igc-date-picker': IgcDatePickerComponent;
277
+ }
278
+ }
279
+ export {};