igniteui-webcomponents 7.2.3 → 7.3.0-beta.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 (980) hide show
  1. package/CHANGELOG.md +156 -0
  2. package/animations/player.d.ts +4 -11
  3. package/animations/player.js +4 -10
  4. package/animations/player.js.map +1 -1
  5. package/animations/view-transition.d.ts +44 -0
  6. package/animations/view-transition.js +81 -0
  7. package/animations/view-transition.js.map +1 -0
  8. package/components/accordion/accordion.d.ts +1 -1
  9. package/components/accordion/accordion.js +7 -6
  10. package/components/accordion/accordion.js.map +1 -1
  11. package/components/avatar/avatar.js +10 -10
  12. package/components/avatar/avatar.js.map +1 -1
  13. package/components/avatar/themes/themes.d.ts +1 -1
  14. package/components/avatar/themes/themes.js.map +1 -1
  15. package/components/badge/badge.d.ts +1 -1
  16. package/components/badge/badge.js +5 -5
  17. package/components/badge/badge.js.map +1 -1
  18. package/components/badge/themes/themes.d.ts +1 -1
  19. package/components/badge/themes/themes.js.map +1 -1
  20. package/components/banner/banner.d.ts +2 -2
  21. package/components/banner/banner.js +8 -8
  22. package/components/banner/banner.js.map +1 -1
  23. package/components/banner/themes/themes.d.ts +1 -1
  24. package/components/banner/themes/themes.js.map +1 -1
  25. package/components/button/button-base.d.ts +2 -2
  26. package/components/button/button-base.js +15 -12
  27. package/components/button/button-base.js.map +1 -1
  28. package/components/button/button.d.ts +3 -3
  29. package/components/button/button.js +2 -2
  30. package/components/button/button.js.map +1 -1
  31. package/components/button/icon-button.js +12 -12
  32. package/components/button/icon-button.js.map +1 -1
  33. package/components/button/themes/button/themes.d.ts +1 -1
  34. package/components/button/themes/button/themes.js.map +1 -1
  35. package/components/button/themes/icon-button/themes.d.ts +1 -1
  36. package/components/button/themes/icon-button/themes.js.map +1 -1
  37. package/components/button-group/button-group.d.ts +42 -21
  38. package/components/button-group/button-group.js +101 -106
  39. package/components/button-group/button-group.js.map +1 -1
  40. package/components/button-group/themes/button.d.ts +1 -1
  41. package/components/button-group/themes/button.js.map +1 -1
  42. package/components/button-group/themes/group.d.ts +1 -1
  43. package/components/button-group/themes/group.js.map +1 -1
  44. package/components/button-group/toggle-button.d.ts +17 -10
  45. package/components/button-group/toggle-button.js +28 -13
  46. package/components/button-group/toggle-button.js.map +1 -1
  47. package/components/calendar/base.d.ts +29 -10
  48. package/components/calendar/base.js +12 -15
  49. package/components/calendar/base.js.map +1 -1
  50. package/components/calendar/calendar.d.ts +39 -8
  51. package/components/calendar/calendar.js +96 -85
  52. package/components/calendar/calendar.js.map +1 -1
  53. package/components/calendar/days-view/days-view.d.ts +49 -22
  54. package/components/calendar/days-view/days-view.js +102 -163
  55. package/components/calendar/days-view/days-view.js.map +1 -1
  56. package/components/calendar/helpers.d.ts +3 -62
  57. package/components/calendar/helpers.js +6 -110
  58. package/components/calendar/helpers.js.map +1 -1
  59. package/components/calendar/months-view/months-view.d.ts +7 -21
  60. package/components/calendar/months-view/months-view.js +30 -83
  61. package/components/calendar/months-view/months-view.js.map +1 -1
  62. package/components/calendar/selection.d.ts +21 -0
  63. package/components/calendar/selection.js +42 -0
  64. package/components/calendar/selection.js.map +1 -0
  65. package/components/calendar/themes/calendar.d.ts +1 -1
  66. package/components/calendar/themes/calendar.js.map +1 -1
  67. package/components/calendar/themes/days.d.ts +1 -1
  68. package/components/calendar/themes/days.js.map +1 -1
  69. package/components/calendar/themes/year-month.d.ts +1 -1
  70. package/components/calendar/themes/year-month.js.map +1 -1
  71. package/components/calendar/types.d.ts +18 -0
  72. package/components/calendar/types.js.map +1 -1
  73. package/components/calendar/year-month-view.base.d.ts +44 -0
  74. package/components/calendar/year-month-view.base.js +89 -0
  75. package/components/calendar/year-month-view.base.js.map +1 -0
  76. package/components/calendar/years-view/years-view.d.ts +7 -20
  77. package/components/calendar/years-view/years-view.js +25 -79
  78. package/components/calendar/years-view/years-view.js.map +1 -1
  79. package/components/card/card.actions.js +2 -2
  80. package/components/card/card.actions.js.map +1 -1
  81. package/components/card/card.content.d.ts +1 -1
  82. package/components/card/card.content.js +2 -2
  83. package/components/card/card.content.js.map +1 -1
  84. package/components/card/card.d.ts +1 -1
  85. package/components/card/card.header.js +2 -2
  86. package/components/card/card.header.js.map +1 -1
  87. package/components/card/card.js +2 -2
  88. package/components/card/card.js.map +1 -1
  89. package/components/card/card.media.d.ts +1 -1
  90. package/components/card/card.media.js +1 -1
  91. package/components/card/card.media.js.map +1 -1
  92. package/components/card/themes/actions.d.ts +1 -1
  93. package/components/card/themes/actions.js.map +1 -1
  94. package/components/card/themes/container.d.ts +1 -1
  95. package/components/card/themes/container.js.map +1 -1
  96. package/components/card/themes/content.d.ts +1 -1
  97. package/components/card/themes/content.js.map +1 -1
  98. package/components/card/themes/header.d.ts +1 -1
  99. package/components/card/themes/header.js.map +1 -1
  100. package/components/carousel/animations.d.ts +1 -1
  101. package/components/carousel/animations.js +2 -2
  102. package/components/carousel/animations.js.map +1 -1
  103. package/components/carousel/carousel-indicator-container.js +4 -4
  104. package/components/carousel/carousel-indicator-container.js.map +1 -1
  105. package/components/carousel/carousel-indicator.d.ts +1 -1
  106. package/components/carousel/carousel-indicator.js +5 -5
  107. package/components/carousel/carousel-indicator.js.map +1 -1
  108. package/components/carousel/carousel-slide.d.ts +1 -1
  109. package/components/carousel/carousel-slide.js +9 -9
  110. package/components/carousel/carousel-slide.js.map +1 -1
  111. package/components/carousel/carousel.d.ts +7 -7
  112. package/components/carousel/carousel.js +40 -30
  113. package/components/carousel/carousel.js.map +1 -1
  114. package/components/carousel/themes/container.d.ts +1 -1
  115. package/components/carousel/themes/container.js.map +1 -1
  116. package/components/carousel/themes/indicator-container.d.ts +1 -1
  117. package/components/carousel/themes/indicator-container.js.map +1 -1
  118. package/components/chat/chat-input.d.ts +4 -4
  119. package/components/chat/chat-input.js +13 -12
  120. package/components/chat/chat-input.js.map +1 -1
  121. package/components/chat/chat-message.d.ts +1 -1
  122. package/components/chat/chat-message.js +7 -6
  123. package/components/chat/chat-message.js.map +1 -1
  124. package/components/chat/chat-state.d.ts +2 -2
  125. package/components/chat/chat-state.js +2 -1
  126. package/components/chat/chat-state.js.map +1 -1
  127. package/components/chat/chat.d.ts +4 -4
  128. package/components/chat/chat.js +13 -13
  129. package/components/chat/chat.js.map +1 -1
  130. package/components/chat/message-attachments.js +5 -5
  131. package/components/chat/message-attachments.js.map +1 -1
  132. package/components/chat/themes/attachments.d.ts +1 -1
  133. package/components/chat/themes/attachments.js.map +1 -1
  134. package/components/chat/themes/input.d.ts +1 -1
  135. package/components/chat/themes/input.js.map +1 -1
  136. package/components/chat/themes/message.d.ts +1 -1
  137. package/components/chat/themes/message.js.map +1 -1
  138. package/components/chat/themes/themes.d.ts +1 -1
  139. package/components/chat/themes/themes.js.map +1 -1
  140. package/components/chat/types.d.ts +2 -2
  141. package/components/chat/types.js.map +1 -1
  142. package/components/chat/utils.d.ts +1 -1
  143. package/components/chat/utils.js +3 -3
  144. package/components/chat/utils.js.map +1 -1
  145. package/components/checkbox/checkbox-base.d.ts +7 -7
  146. package/components/checkbox/checkbox-base.js +7 -7
  147. package/components/checkbox/checkbox-base.js.map +1 -1
  148. package/components/checkbox/checkbox.js +7 -6
  149. package/components/checkbox/checkbox.js.map +1 -1
  150. package/components/checkbox/switch.js +7 -6
  151. package/components/checkbox/switch.js.map +1 -1
  152. package/components/checkbox/themes/checkbox-themes.d.ts +1 -1
  153. package/components/checkbox/themes/checkbox-themes.js.map +1 -1
  154. package/components/checkbox/themes/switch-themes.d.ts +1 -1
  155. package/components/checkbox/themes/switch-themes.js.map +1 -1
  156. package/components/checkbox/validators.d.ts +1 -1
  157. package/components/checkbox/validators.js +1 -1
  158. package/components/checkbox/validators.js.map +1 -1
  159. package/components/chip/chip.d.ts +9 -3
  160. package/components/chip/chip.js +10 -6
  161. package/components/chip/chip.js.map +1 -1
  162. package/components/chip/themes/chip.base.css.js +1 -1
  163. package/components/chip/themes/chip.base.css.js.map +1 -1
  164. package/components/chip/themes/dark/chip.bootstrap.css.js +1 -1
  165. package/components/chip/themes/dark/chip.bootstrap.css.js.map +1 -1
  166. package/components/chip/themes/dark/chip.fluent.css.js +1 -1
  167. package/components/chip/themes/dark/chip.fluent.css.js.map +1 -1
  168. package/components/chip/themes/dark/chip.indigo.css.js +1 -1
  169. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
  170. package/components/chip/themes/dark/chip.material.css.js +1 -1
  171. package/components/chip/themes/dark/chip.material.css.js.map +1 -1
  172. package/components/chip/themes/light/chip.bootstrap.css.js +1 -1
  173. package/components/chip/themes/light/chip.bootstrap.css.js.map +1 -1
  174. package/components/chip/themes/light/chip.fluent.css.js +1 -1
  175. package/components/chip/themes/light/chip.fluent.css.js.map +1 -1
  176. package/components/chip/themes/light/chip.indigo.css.js +1 -1
  177. package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
  178. package/components/chip/themes/light/chip.material.css.js +1 -1
  179. package/components/chip/themes/light/chip.material.css.js.map +1 -1
  180. package/components/chip/themes/light/chip.shared.css.js +1 -1
  181. package/components/chip/themes/light/chip.shared.css.js.map +1 -1
  182. package/components/chip/themes/shared/chip.bootstrap.css.js +1 -1
  183. package/components/chip/themes/shared/chip.bootstrap.css.js.map +1 -1
  184. package/components/chip/themes/shared/chip.common.css.js +1 -1
  185. package/components/chip/themes/shared/chip.common.css.js.map +1 -1
  186. package/components/chip/themes/shared/chip.fluent.css.js +1 -1
  187. package/components/chip/themes/shared/chip.fluent.css.js.map +1 -1
  188. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  189. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  190. package/components/chip/themes/themes.d.ts +1 -1
  191. package/components/chip/themes/themes.js.map +1 -1
  192. package/components/combo/combo-header.js +2 -2
  193. package/components/combo/combo-header.js.map +1 -1
  194. package/components/combo/combo-item.d.ts +0 -2
  195. package/components/combo/combo-item.js +4 -7
  196. package/components/combo/combo-item.js.map +1 -1
  197. package/components/combo/combo.d.ts +84 -26
  198. package/components/combo/combo.js +197 -152
  199. package/components/combo/combo.js.map +1 -1
  200. package/components/combo/controllers/data.d.ts +30 -3
  201. package/components/combo/controllers/data.js +34 -9
  202. package/components/combo/controllers/data.js.map +1 -1
  203. package/components/combo/controllers/navigation.d.ts +8 -2
  204. package/components/combo/controllers/navigation.js +11 -12
  205. package/components/combo/controllers/navigation.js.map +1 -1
  206. package/components/combo/operations/filter.d.ts +17 -1
  207. package/components/combo/operations/filter.js +29 -9
  208. package/components/combo/operations/filter.js.map +1 -1
  209. package/components/combo/operations/group.js +1 -1
  210. package/components/combo/operations/group.js.map +1 -1
  211. package/components/combo/themes/combo.base.css.js +1 -1
  212. package/components/combo/themes/combo.base.css.js.map +1 -1
  213. package/components/combo/themes/themes.d.ts +1 -1
  214. package/components/combo/themes/themes.js.map +1 -1
  215. package/components/combo/types.d.ts +8 -4
  216. package/components/combo/types.js.map +1 -1
  217. package/components/combo/validators.d.ts +1 -1
  218. package/components/combo/validators.js.map +1 -1
  219. package/components/date-picker/date-picker.base.d.ts +294 -0
  220. package/components/date-picker/date-picker.base.js +480 -0
  221. package/components/date-picker/date-picker.base.js.map +1 -0
  222. package/components/date-picker/date-picker.d.ts +52 -172
  223. package/components/date-picker/date-picker.js +88 -393
  224. package/components/date-picker/date-picker.js.map +1 -1
  225. package/components/date-picker/themes/themes.d.ts +1 -1
  226. package/components/date-picker/themes/themes.js.map +1 -1
  227. package/components/date-picker/validators.d.ts +1 -1
  228. package/components/date-picker/validators.js +2 -2
  229. package/components/date-picker/validators.js.map +1 -1
  230. package/components/date-range-picker/date-range-input.d.ts +12 -14
  231. package/components/date-range-picker/date-range-input.js +42 -98
  232. package/components/date-range-picker/date-range-input.js.map +1 -1
  233. package/components/date-range-picker/date-range-mask-parser.d.ts +22 -34
  234. package/components/date-range-picker/date-range-mask-parser.js +38 -69
  235. package/components/date-range-picker/date-range-mask-parser.js.map +1 -1
  236. package/components/date-range-picker/date-range-picker.d.ts +98 -191
  237. package/components/date-range-picker/date-range-picker.js +210 -530
  238. package/components/date-range-picker/date-range-picker.js.map +1 -1
  239. package/components/date-range-picker/predefined-ranges-area.d.ts +2 -2
  240. package/components/date-range-picker/predefined-ranges-area.js +5 -5
  241. package/components/date-range-picker/predefined-ranges-area.js.map +1 -1
  242. package/components/date-range-picker/themes/ranges-themes.d.ts +1 -1
  243. package/components/date-range-picker/themes/ranges-themes.js.map +1 -1
  244. package/components/date-range-picker/themes/themes.d.ts +1 -1
  245. package/components/date-range-picker/themes/themes.js.map +1 -1
  246. package/components/date-range-picker/validators.d.ts +1 -1
  247. package/components/date-range-picker/validators.js +15 -22
  248. package/components/date-range-picker/validators.js.map +1 -1
  249. package/components/date-time-input/date-part.d.ts +18 -1
  250. package/components/date-time-input/date-part.js +10 -0
  251. package/components/date-time-input/date-part.js.map +1 -1
  252. package/components/date-time-input/date-time-input.base.d.ts +74 -12
  253. package/components/date-time-input/date-time-input.base.js +99 -27
  254. package/components/date-time-input/date-time-input.base.js.map +1 -1
  255. package/components/date-time-input/date-time-input.d.ts +13 -23
  256. package/components/date-time-input/date-time-input.js +45 -65
  257. package/components/date-time-input/date-time-input.js.map +1 -1
  258. package/components/date-time-input/datetime-mask-parser.d.ts +45 -109
  259. package/components/date-time-input/datetime-mask-parser.js +88 -139
  260. package/components/date-time-input/datetime-mask-parser.js.map +1 -1
  261. package/components/date-time-input/validators.d.ts +1 -1
  262. package/components/date-time-input/validators.js +2 -2
  263. package/components/date-time-input/validators.js.map +1 -1
  264. package/components/dialog/dialog.d.ts +2 -2
  265. package/components/dialog/dialog.js +21 -22
  266. package/components/dialog/dialog.js.map +1 -1
  267. package/components/dialog/themes/themes.d.ts +1 -1
  268. package/components/dialog/themes/themes.js.map +1 -1
  269. package/components/divider/divider.d.ts +2 -1
  270. package/components/divider/divider.js +3 -3
  271. package/components/divider/divider.js.map +1 -1
  272. package/components/divider/themes/themes.d.ts +1 -1
  273. package/components/divider/themes/themes.js.map +1 -1
  274. package/components/dropdown/dropdown-group.d.ts +10 -3
  275. package/components/dropdown/dropdown-group.js +21 -5
  276. package/components/dropdown/dropdown-group.js.map +1 -1
  277. package/components/dropdown/dropdown-header.d.ts +2 -2
  278. package/components/dropdown/dropdown-header.js +7 -2
  279. package/components/dropdown/dropdown-header.js.map +1 -1
  280. package/components/dropdown/dropdown-item.d.ts +4 -4
  281. package/components/dropdown/dropdown-item.js +3 -3
  282. package/components/dropdown/dropdown-item.js.map +1 -1
  283. package/components/dropdown/dropdown.d.ts +75 -32
  284. package/components/dropdown/dropdown.js +189 -110
  285. package/components/dropdown/dropdown.js.map +1 -1
  286. package/components/dropdown/themes/container.d.ts +1 -1
  287. package/components/dropdown/themes/container.js.map +1 -1
  288. package/components/dropdown/themes/group.d.ts +1 -1
  289. package/components/dropdown/themes/group.js.map +1 -1
  290. package/components/dropdown/themes/header.d.ts +1 -1
  291. package/components/dropdown/themes/header.js.map +1 -1
  292. package/components/dropdown/themes/item.d.ts +1 -1
  293. package/components/dropdown/themes/item.js.map +1 -1
  294. package/components/expansion-panel/expansion-panel.d.ts +14 -5
  295. package/components/expansion-panel/expansion-panel.js +10 -9
  296. package/components/expansion-panel/expansion-panel.js.map +1 -1
  297. package/components/expansion-panel/themes/themes.d.ts +1 -1
  298. package/components/expansion-panel/themes/themes.js.map +1 -1
  299. package/components/file-input/file-input.d.ts +20 -12
  300. package/components/file-input/file-input.js +17 -12
  301. package/components/file-input/file-input.js.map +1 -1
  302. package/components/file-input/themes/themes.d.ts +1 -1
  303. package/components/file-input/themes/themes.js.map +1 -1
  304. package/components/file-input/validators.d.ts +1 -1
  305. package/components/file-input/validators.js +1 -1
  306. package/components/file-input/validators.js.map +1 -1
  307. package/components/focus-trap/focus-trap.js +3 -2
  308. package/components/focus-trap/focus-trap.js.map +1 -1
  309. package/components/highlight/highlight.js +2 -2
  310. package/components/highlight/highlight.js.map +1 -1
  311. package/components/highlight/service.d.ts +4 -1
  312. package/components/highlight/service.js +23 -7
  313. package/components/highlight/service.js.map +1 -1
  314. package/components/highlight/themes/themes.d.ts +1 -1
  315. package/components/highlight/themes/themes.js.map +1 -1
  316. package/components/icon/icon-references.d.ts +3 -2
  317. package/components/icon/icon-references.js +103 -491
  318. package/components/icon/icon-references.js.map +1 -1
  319. package/components/icon/icon-state.broadcast.d.ts +14 -17
  320. package/components/icon/icon-state.broadcast.js +19 -20
  321. package/components/icon/icon-state.broadcast.js.map +1 -1
  322. package/components/icon/icon.d.ts +14 -25
  323. package/components/icon/icon.js +37 -24
  324. package/components/icon/icon.js.map +1 -1
  325. package/components/icon/icon.registry.d.ts +69 -131
  326. package/components/icon/icon.registry.js +51 -53
  327. package/components/icon/icon.registry.js.map +1 -1
  328. package/components/icon/internal-icons-lib.js +2 -2
  329. package/components/icon/internal-icons-lib.js.map +1 -1
  330. package/components/icon/registry/parser.d.ts +15 -3
  331. package/components/icon/registry/parser.js +36 -11
  332. package/components/icon/registry/parser.js.map +1 -1
  333. package/components/icon/registry/types.d.ts +55 -11
  334. package/components/icon/registry/types.js.map +1 -1
  335. package/components/icon/themes/icon.base.css.js +1 -1
  336. package/components/icon/themes/icon.base.css.js.map +1 -1
  337. package/components/icon/themes/shared/icon.common.css.js +1 -1
  338. package/components/icon/themes/shared/icon.common.css.js.map +1 -1
  339. package/components/icon/themes/themes.d.ts +1 -1
  340. package/components/icon/themes/themes.js.map +1 -1
  341. package/components/input/input-base.d.ts +12 -12
  342. package/components/input/input-base.js +13 -15
  343. package/components/input/input-base.js.map +1 -1
  344. package/components/input/input.d.ts +15 -12
  345. package/components/input/input.js +8 -8
  346. package/components/input/input.js.map +1 -1
  347. package/components/input/themes/input.base.css.js +1 -1
  348. package/components/input/themes/input.base.css.js.map +1 -1
  349. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  350. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  351. package/components/input/themes/shared/input.common.css.js +1 -1
  352. package/components/input/themes/shared/input.common.css.js.map +1 -1
  353. package/components/input/themes/shared/input.fluent.css.js +1 -1
  354. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  355. package/components/input/themes/shared/input.indigo.css.js +1 -1
  356. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  357. package/components/input/themes/shared/input.material.css.js +1 -1
  358. package/components/input/themes/shared/input.material.css.js.map +1 -1
  359. package/components/input/themes/themes.d.ts +1 -1
  360. package/components/input/themes/themes.js.map +1 -1
  361. package/components/input/validators.d.ts +1 -1
  362. package/components/input/validators.js +1 -1
  363. package/components/input/validators.js.map +1 -1
  364. package/components/list/list-header.js +3 -3
  365. package/components/list/list-header.js.map +1 -1
  366. package/components/list/list-item.js +3 -3
  367. package/components/list/list-item.js.map +1 -1
  368. package/components/list/list.js +3 -3
  369. package/components/list/list.js.map +1 -1
  370. package/components/list/themes/container.d.ts +1 -1
  371. package/components/list/themes/container.js.map +1 -1
  372. package/components/list/themes/header.d.ts +1 -1
  373. package/components/list/themes/header.js.map +1 -1
  374. package/components/list/themes/item.d.ts +1 -1
  375. package/components/list/themes/item.js.map +1 -1
  376. package/components/mask-input/mask-history.d.ts +99 -0
  377. package/components/mask-input/mask-history.js +95 -0
  378. package/components/mask-input/mask-history.js.map +1 -0
  379. package/components/mask-input/mask-input.d.ts +14 -9
  380. package/components/mask-input/mask-input.js +20 -23
  381. package/components/mask-input/mask-input.js.map +1 -1
  382. package/components/mask-input/mask-parser.d.ts +20 -2
  383. package/components/mask-input/mask-parser.js +21 -13
  384. package/components/mask-input/mask-parser.js.map +1 -1
  385. package/components/mask-input/validators.d.ts +1 -1
  386. package/components/mask-input/validators.js +1 -1
  387. package/components/mask-input/validators.js.map +1 -1
  388. package/components/nav-drawer/nav-drawer-header-item.d.ts +1 -1
  389. package/components/nav-drawer/nav-drawer-header-item.js +2 -2
  390. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  391. package/components/nav-drawer/nav-drawer-item.d.ts +2 -2
  392. package/components/nav-drawer/nav-drawer-item.js +4 -4
  393. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  394. package/components/nav-drawer/nav-drawer.d.ts +3 -3
  395. package/components/nav-drawer/nav-drawer.js +11 -14
  396. package/components/nav-drawer/nav-drawer.js.map +1 -1
  397. package/components/nav-drawer/themes/container.base.css.js +1 -1
  398. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  399. package/components/nav-drawer/themes/container.d.ts +1 -1
  400. package/components/nav-drawer/themes/container.js +2 -3
  401. package/components/nav-drawer/themes/container.js.map +1 -1
  402. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js +1 -1
  403. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js.map +1 -1
  404. package/components/nav-drawer/themes/header-item.d.ts +1 -1
  405. package/components/nav-drawer/themes/header-item.js.map +1 -1
  406. package/components/nav-drawer/themes/item.d.ts +1 -1
  407. package/components/nav-drawer/themes/item.js.map +1 -1
  408. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js +1 -1
  409. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js.map +1 -1
  410. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
  411. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
  412. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js +1 -1
  413. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js.map +1 -1
  414. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js +1 -1
  415. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js.map +1 -1
  416. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
  417. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
  418. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
  419. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
  420. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +1 -1
  421. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -1
  422. package/components/navbar/navbar.js +2 -2
  423. package/components/navbar/navbar.js.map +1 -1
  424. package/components/navbar/themes/themes.d.ts +1 -1
  425. package/components/navbar/themes/themes.js.map +1 -1
  426. package/components/popover/popover.d.ts +10 -3
  427. package/components/popover/popover.js +114 -99
  428. package/components/popover/popover.js.map +1 -1
  429. package/components/progress/base.d.ts +1 -1
  430. package/components/progress/base.js +5 -4
  431. package/components/progress/base.js.map +1 -1
  432. package/components/progress/circular-gradient.d.ts +2 -2
  433. package/components/progress/circular-gradient.js +1 -1
  434. package/components/progress/circular-gradient.js.map +1 -1
  435. package/components/progress/circular-progress.d.ts +15 -15
  436. package/components/progress/circular-progress.js +7 -6
  437. package/components/progress/circular-progress.js.map +1 -1
  438. package/components/progress/linear-progress.d.ts +12 -12
  439. package/components/progress/linear-progress.js +4 -4
  440. package/components/progress/linear-progress.js.map +1 -1
  441. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  442. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  443. package/components/progress/themes/circular/themes.d.ts +1 -1
  444. package/components/progress/themes/circular/themes.js.map +1 -1
  445. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  446. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  447. package/components/progress/themes/linear/themes.d.ts +1 -1
  448. package/components/progress/themes/linear/themes.js.map +1 -1
  449. package/components/qr-code/model/encode.d.ts +20 -0
  450. package/components/qr-code/model/encode.js +166 -0
  451. package/components/qr-code/model/encode.js.map +1 -0
  452. package/components/qr-code/model/error-correction.d.ts +15 -0
  453. package/components/qr-code/model/error-correction.js +1114 -0
  454. package/components/qr-code/model/error-correction.js.map +1 -0
  455. package/components/qr-code/model/mask.d.ts +11 -0
  456. package/components/qr-code/model/mask.js +161 -0
  457. package/components/qr-code/model/mask.js.map +1 -0
  458. package/components/qr-code/model/matrix.d.ts +15 -0
  459. package/components/qr-code/model/matrix.js +277 -0
  460. package/components/qr-code/model/matrix.js.map +1 -0
  461. package/components/qr-code/qr-code.d.ts +134 -0
  462. package/components/qr-code/qr-code.js +221 -0
  463. package/components/qr-code/qr-code.js.map +1 -0
  464. package/components/qr-code/renderer/constants.d.ts +26 -0
  465. package/components/qr-code/renderer/constants.js +5 -0
  466. package/components/qr-code/renderer/constants.js.map +1 -0
  467. package/components/qr-code/renderer/corner.d.ts +23 -0
  468. package/components/qr-code/renderer/corner.js +25 -0
  469. package/components/qr-code/renderer/corner.js.map +1 -0
  470. package/components/qr-code/renderer/dots.d.ts +14 -0
  471. package/components/qr-code/renderer/dots.js +7 -0
  472. package/components/qr-code/renderer/dots.js.map +1 -0
  473. package/components/qr-code/renderer/helpers.d.ts +18 -0
  474. package/components/qr-code/renderer/helpers.js +158 -0
  475. package/components/qr-code/renderer/helpers.js.map +1 -0
  476. package/components/qr-code/renderer/image.d.ts +23 -0
  477. package/components/qr-code/renderer/image.js +29 -0
  478. package/components/qr-code/renderer/image.js.map +1 -0
  479. package/components/qr-code/themes/dark/qr-code.bootstrap.css.js +3 -0
  480. package/components/qr-code/themes/dark/qr-code.bootstrap.css.js.map +1 -0
  481. package/components/qr-code/themes/dark/qr-code.fluent.css.d.ts +1 -0
  482. package/components/qr-code/themes/dark/qr-code.fluent.css.js +3 -0
  483. package/components/qr-code/themes/dark/qr-code.fluent.css.js.map +1 -0
  484. package/components/qr-code/themes/dark/qr-code.indigo.css.d.ts +1 -0
  485. package/components/qr-code/themes/dark/qr-code.indigo.css.js +3 -0
  486. package/components/qr-code/themes/dark/qr-code.indigo.css.js.map +1 -0
  487. package/components/qr-code/themes/dark/qr-code.material.css.d.ts +1 -0
  488. package/components/qr-code/themes/dark/qr-code.material.css.js +3 -0
  489. package/components/qr-code/themes/dark/qr-code.material.css.js.map +1 -0
  490. package/components/qr-code/themes/light/qr-code.bootstrap.css.d.ts +1 -0
  491. package/components/qr-code/themes/light/qr-code.bootstrap.css.js +3 -0
  492. package/components/qr-code/themes/light/qr-code.bootstrap.css.js.map +1 -0
  493. package/components/qr-code/themes/light/qr-code.fluent.css.d.ts +1 -0
  494. package/components/qr-code/themes/light/qr-code.fluent.css.js +3 -0
  495. package/components/qr-code/themes/light/qr-code.fluent.css.js.map +1 -0
  496. package/components/qr-code/themes/light/qr-code.indigo.css.d.ts +1 -0
  497. package/components/qr-code/themes/light/qr-code.indigo.css.js +3 -0
  498. package/components/qr-code/themes/light/qr-code.indigo.css.js.map +1 -0
  499. package/components/qr-code/themes/light/qr-code.material.css.d.ts +1 -0
  500. package/components/qr-code/themes/light/qr-code.material.css.js +3 -0
  501. package/components/qr-code/themes/light/qr-code.material.css.js.map +1 -0
  502. package/components/qr-code/themes/light/qr-code.shared.css.d.ts +1 -0
  503. package/components/qr-code/themes/light/qr-code.shared.css.js +3 -0
  504. package/components/qr-code/themes/light/qr-code.shared.css.js.map +1 -0
  505. package/components/qr-code/themes/qr-code.base.css.d.ts +1 -0
  506. package/components/qr-code/themes/qr-code.base.css.js +3 -0
  507. package/components/qr-code/themes/qr-code.base.css.js.map +1 -0
  508. package/components/qr-code/themes/shared/qr-code.common.css.d.ts +1 -0
  509. package/components/qr-code/themes/shared/qr-code.common.css.js +3 -0
  510. package/components/qr-code/themes/shared/qr-code.common.css.js.map +1 -0
  511. package/components/qr-code/themes/themes.d.ts +2 -0
  512. package/components/qr-code/themes/themes.js +46 -0
  513. package/components/qr-code/themes/themes.js.map +1 -0
  514. package/components/qr-code/types.d.ts +16 -0
  515. package/components/qr-code/types.js +2 -0
  516. package/components/qr-code/types.js.map +1 -0
  517. package/components/radio/controller.d.ts +35 -0
  518. package/components/radio/controller.js +100 -0
  519. package/components/radio/controller.js.map +1 -0
  520. package/components/radio/radio.d.ts +26 -14
  521. package/components/radio/radio.js +47 -36
  522. package/components/radio/radio.js.map +1 -1
  523. package/components/radio/themes/themes.d.ts +1 -1
  524. package/components/radio/themes/themes.js.map +1 -1
  525. package/components/radio/validators.d.ts +1 -1
  526. package/components/radio/validators.js +5 -3
  527. package/components/radio/validators.js.map +1 -1
  528. package/components/radio-group/radio-group.d.ts +19 -10
  529. package/components/radio-group/radio-group.js +50 -41
  530. package/components/radio-group/radio-group.js.map +1 -1
  531. package/components/radio-group/themes/themes.d.ts +1 -1
  532. package/components/radio-group/themes/themes.js.map +1 -1
  533. package/components/rating/rating-symbol.d.ts +1 -1
  534. package/components/rating/rating-symbol.js +1 -1
  535. package/components/rating/rating-symbol.js.map +1 -1
  536. package/components/rating/rating.d.ts +6 -6
  537. package/components/rating/rating.js +12 -9
  538. package/components/rating/rating.js.map +1 -1
  539. package/components/rating/themes/themes.d.ts +1 -1
  540. package/components/rating/themes/themes.js.map +1 -1
  541. package/components/resize-container/resize-container.d.ts +4 -4
  542. package/components/resize-container/resize-container.js +4 -4
  543. package/components/resize-container/resize-container.js.map +1 -1
  544. package/components/resize-container/resize-controller.js +2 -2
  545. package/components/resize-container/resize-controller.js.map +1 -1
  546. package/components/resize-container/themes/themes.d.ts +1 -1
  547. package/components/resize-container/themes/themes.js.map +1 -1
  548. package/components/ripple/ripple.d.ts +1 -1
  549. package/components/ripple/ripple.js +3 -2
  550. package/components/ripple/ripple.js.map +1 -1
  551. package/components/select/select-group.d.ts +9 -2
  552. package/components/select/select-group.js +21 -5
  553. package/components/select/select-group.js.map +1 -1
  554. package/components/select/select-header.d.ts +1 -1
  555. package/components/select/select-header.js +7 -2
  556. package/components/select/select-header.js.map +1 -1
  557. package/components/select/select-item.d.ts +4 -4
  558. package/components/select/select-item.js +3 -3
  559. package/components/select/select-item.js.map +1 -1
  560. package/components/select/select.d.ts +49 -22
  561. package/components/select/select.js +132 -67
  562. package/components/select/select.js.map +1 -1
  563. package/components/select/themes/select.base.css.js +1 -1
  564. package/components/select/themes/select.base.css.js.map +1 -1
  565. package/components/select/themes/themes.d.ts +1 -1
  566. package/components/select/themes/themes.js.map +1 -1
  567. package/components/select/validators.d.ts +1 -1
  568. package/components/select/validators.js +1 -1
  569. package/components/select/validators.js.map +1 -1
  570. package/components/slider/range-slider.d.ts +2 -2
  571. package/components/slider/range-slider.js +8 -8
  572. package/components/slider/range-slider.js.map +1 -1
  573. package/components/slider/slider-base.js +18 -14
  574. package/components/slider/slider-base.js.map +1 -1
  575. package/components/slider/slider-label.js +1 -1
  576. package/components/slider/slider-label.js.map +1 -1
  577. package/components/slider/slider.d.ts +3 -3
  578. package/components/slider/slider.js +6 -6
  579. package/components/slider/slider.js.map +1 -1
  580. package/components/slider/themes/themes.d.ts +1 -1
  581. package/components/slider/themes/themes.js.map +1 -1
  582. package/components/snackbar/snackbar.d.ts +3 -3
  583. package/components/snackbar/snackbar.js +8 -8
  584. package/components/snackbar/snackbar.js.map +1 -1
  585. package/components/snackbar/themes/themes.d.ts +1 -1
  586. package/components/snackbar/themes/themes.js.map +1 -1
  587. package/components/splitter/splitter.d.ts +106 -23
  588. package/components/splitter/splitter.js +234 -147
  589. package/components/splitter/splitter.js.map +1 -1
  590. package/components/splitter/themes/themes.d.ts +1 -1
  591. package/components/splitter/themes/themes.js.map +1 -1
  592. package/components/splitter/types.d.ts +14 -3
  593. package/components/splitter/types.js.map +1 -1
  594. package/components/stepper/common/animations.d.ts +1 -1
  595. package/components/stepper/common/animations.js +2 -2
  596. package/components/stepper/common/animations.js.map +1 -1
  597. package/components/stepper/step.d.ts +1 -1
  598. package/components/stepper/step.js +7 -7
  599. package/components/stepper/step.js.map +1 -1
  600. package/components/stepper/stepper.d.ts +5 -5
  601. package/components/stepper/stepper.js +12 -9
  602. package/components/stepper/stepper.js.map +1 -1
  603. package/components/stepper/themes/step/themes.d.ts +1 -1
  604. package/components/stepper/themes/step/themes.js.map +1 -1
  605. package/components/tabs/tab-dom.d.ts +31 -28
  606. package/components/tabs/tab-dom.js +84 -34
  607. package/components/tabs/tab-dom.js.map +1 -1
  608. package/components/tabs/tab.d.ts +24 -6
  609. package/components/tabs/tab.js +34 -13
  610. package/components/tabs/tab.js.map +1 -1
  611. package/components/tabs/tabs.d.ts +36 -22
  612. package/components/tabs/tabs.js +118 -88
  613. package/components/tabs/tabs.js.map +1 -1
  614. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
  615. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
  616. package/components/tabs/themes/tab-themes.d.ts +1 -1
  617. package/components/tabs/themes/tab-themes.js.map +1 -1
  618. package/components/tabs/themes/tabs-themes.d.ts +1 -1
  619. package/components/tabs/themes/tabs-themes.js.map +1 -1
  620. package/components/tabs/themes/tabs.base.css.js +1 -1
  621. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  622. package/components/textarea/textarea.d.ts +19 -14
  623. package/components/textarea/textarea.js +22 -16
  624. package/components/textarea/textarea.js.map +1 -1
  625. package/components/textarea/themes/themes.d.ts +1 -1
  626. package/components/textarea/themes/themes.js.map +1 -1
  627. package/components/textarea/validators.d.ts +1 -1
  628. package/components/textarea/validators.js +1 -1
  629. package/components/textarea/validators.js.map +1 -1
  630. package/components/theme-provider/theme-provider.d.ts +1 -1
  631. package/components/theme-provider/theme-provider.js +2 -2
  632. package/components/theme-provider/theme-provider.js.map +1 -1
  633. package/components/tile-manager/position.d.ts +1 -1
  634. package/components/tile-manager/position.js +2 -2
  635. package/components/tile-manager/position.js.map +1 -1
  636. package/components/tile-manager/resize-state.js +4 -3
  637. package/components/tile-manager/resize-state.js.map +1 -1
  638. package/components/tile-manager/themes/container.d.ts +1 -1
  639. package/components/tile-manager/themes/container.js.map +1 -1
  640. package/components/tile-manager/themes/tile.d.ts +1 -1
  641. package/components/tile-manager/themes/tile.js.map +1 -1
  642. package/components/tile-manager/tile-ghost-util.js +1 -1
  643. package/components/tile-manager/tile-ghost-util.js.map +1 -1
  644. package/components/tile-manager/tile-manager.d.ts +1 -1
  645. package/components/tile-manager/tile-manager.js +7 -7
  646. package/components/tile-manager/tile-manager.js.map +1 -1
  647. package/components/tile-manager/tile.d.ts +4 -4
  648. package/components/tile-manager/tile.js +29 -25
  649. package/components/tile-manager/tile.js.map +1 -1
  650. package/components/toast/themes/themes.d.ts +1 -1
  651. package/components/toast/themes/themes.js.map +1 -1
  652. package/components/toast/toast.d.ts +1 -1
  653. package/components/toast/toast.js +3 -3
  654. package/components/toast/toast.js.map +1 -1
  655. package/components/tooltip/controller.d.ts +18 -16
  656. package/components/tooltip/controller.js +62 -41
  657. package/components/tooltip/controller.js.map +1 -1
  658. package/components/tooltip/service.d.ts +2 -1
  659. package/components/tooltip/service.js +10 -15
  660. package/components/tooltip/service.js.map +1 -1
  661. package/components/tooltip/themes/shared/tooltip.common.css.js +1 -1
  662. package/components/tooltip/themes/shared/tooltip.common.css.js.map +1 -1
  663. package/components/tooltip/themes/shared/tooltip.indigo.css.js +1 -1
  664. package/components/tooltip/themes/shared/tooltip.indigo.css.js.map +1 -1
  665. package/components/tooltip/themes/themes.d.ts +1 -1
  666. package/components/tooltip/themes/themes.js.map +1 -1
  667. package/components/tooltip/themes/tooltip.base.css.js +1 -1
  668. package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
  669. package/components/tooltip/tooltip.d.ts +64 -18
  670. package/components/tooltip/tooltip.js +112 -62
  671. package/components/tooltip/tooltip.js.map +1 -1
  672. package/components/tree/themes/container.base.css.js +1 -1
  673. package/components/tree/themes/container.base.css.js.map +1 -1
  674. package/components/tree/themes/container.d.ts +1 -1
  675. package/components/tree/themes/container.js.map +1 -1
  676. package/components/tree/themes/item.base.css.js +1 -1
  677. package/components/tree/themes/item.base.css.js.map +1 -1
  678. package/components/tree/themes/item.d.ts +1 -1
  679. package/components/tree/themes/item.js.map +1 -1
  680. package/components/tree/tree-item.d.ts +62 -36
  681. package/components/tree/tree-item.js +223 -233
  682. package/components/tree/tree-item.js.map +1 -1
  683. package/components/tree/tree.common.d.ts +16 -1
  684. package/components/tree/tree.common.js +40 -1
  685. package/components/tree/tree.common.js.map +1 -1
  686. package/components/tree/tree.d.ts +21 -14
  687. package/components/tree/tree.js +64 -72
  688. package/components/tree/tree.js.map +1 -1
  689. package/components/tree/tree.navigation.d.ts +39 -29
  690. package/components/tree/tree.navigation.js +140 -192
  691. package/components/tree/tree.navigation.js.map +1 -1
  692. package/components/tree/tree.selection.d.ts +32 -31
  693. package/components/tree/tree.selection.js +184 -178
  694. package/components/tree/tree.selection.js.map +1 -1
  695. package/components/types.js.map +1 -1
  696. package/components/validation-container/validation-container.d.ts +33 -6
  697. package/components/validation-container/validation-container.js +81 -70
  698. package/components/validation-container/validation-container.js.map +1 -1
  699. package/components/virtualization/engine.d.ts +92 -0
  700. package/components/virtualization/engine.js +217 -0
  701. package/components/virtualization/engine.js.map +1 -0
  702. package/components/virtualization/types.d.ts +53 -0
  703. package/components/virtualization/types.js +14 -0
  704. package/components/virtualization/types.js.map +1 -0
  705. package/components/virtualization/virtualization.d.ts +235 -0
  706. package/components/virtualization/virtualization.js +474 -0
  707. package/components/virtualization/virtualization.js.map +1 -0
  708. package/components/visually-hidden/visually-hidden.js +1 -1
  709. package/components/visually-hidden/visually-hidden.js.map +1 -1
  710. package/custom-elements.json +57500 -47242
  711. package/extras/chat-markdown-renderer.d.ts +1 -1
  712. package/extras/chat-markdown-renderer.js.map +1 -1
  713. package/igniteui-webcomponents.css-data.json +2 -2
  714. package/igniteui-webcomponents.html-data.json +1 -1
  715. package/index.d.ts +20 -15
  716. package/index.js +11 -9
  717. package/index.js.map +1 -1
  718. package/internals/abort-handler.js.map +1 -0
  719. package/internals/context.d.ts +39 -0
  720. package/{components/common → internals}/context.js +2 -1
  721. package/internals/context.js.map +1 -0
  722. package/internals/controllers/adopt-styles.d.ts +76 -0
  723. package/internals/controllers/adopt-styles.js +173 -0
  724. package/internals/controllers/adopt-styles.js.map +1 -0
  725. package/internals/controllers/aria-projection.d.ts +144 -0
  726. package/internals/controllers/aria-projection.js +138 -0
  727. package/internals/controllers/aria-projection.js.map +1 -0
  728. package/{components/common → internals}/controllers/async-consumer.js +8 -7
  729. package/internals/controllers/async-consumer.js.map +1 -0
  730. package/internals/controllers/command.js.map +1 -0
  731. package/{components/common → internals}/controllers/drag.js +3 -2
  732. package/internals/controllers/drag.js.map +1 -0
  733. package/{components/common → internals}/controllers/focus-ring.js +5 -2
  734. package/internals/controllers/focus-ring.js.map +1 -0
  735. package/{components/common → internals}/controllers/fullscreen.js +6 -3
  736. package/internals/controllers/fullscreen.js.map +1 -0
  737. package/{components/common → internals}/controllers/gestures.d.ts +1 -1
  738. package/{components/common → internals}/controllers/gestures.js +4 -4
  739. package/internals/controllers/gestures.js.map +1 -0
  740. package/{components/common → internals}/controllers/id-resolver.js +15 -21
  741. package/internals/controllers/id-resolver.js.map +1 -0
  742. package/{components/common → internals}/controllers/internals.d.ts +48 -3
  743. package/{components/common → internals}/controllers/internals.js +32 -0
  744. package/internals/controllers/internals.js.map +1 -0
  745. package/{components/common → internals}/controllers/key-bindings.d.ts +3 -6
  746. package/{components/common → internals}/controllers/key-bindings.js +43 -29
  747. package/internals/controllers/key-bindings.js.map +1 -0
  748. package/{components/common → internals}/controllers/mutation-observer.d.ts +5 -4
  749. package/internals/controllers/mutation-observer.js +74 -0
  750. package/internals/controllers/mutation-observer.js.map +1 -0
  751. package/{components/common → internals}/controllers/resize-observer.d.ts +11 -1
  752. package/{components/common → internals}/controllers/resize-observer.js +13 -2
  753. package/internals/controllers/resize-observer.js.map +1 -0
  754. package/{components/common → internals}/controllers/root-click.js +8 -13
  755. package/internals/controllers/root-click.js.map +1 -0
  756. package/{components/common → internals}/controllers/root-scroll.d.ts +11 -8
  757. package/internals/controllers/root-scroll.js +71 -0
  758. package/internals/controllers/root-scroll.js.map +1 -0
  759. package/{components/common → internals}/controllers/slot.d.ts +18 -2
  760. package/{components/common → internals}/controllers/slot.js +21 -6
  761. package/internals/controllers/slot.js.map +1 -0
  762. package/internals/date/compare.d.ts +2 -0
  763. package/internals/date/compare.js +23 -0
  764. package/internals/date/compare.js.map +1 -0
  765. package/internals/date/converters.d.ts +18 -0
  766. package/internals/date/converters.js +73 -0
  767. package/internals/date/converters.js.map +1 -0
  768. package/{components/calendar → internals/date}/model.d.ts +6 -3
  769. package/{components/calendar → internals/date}/model.js +23 -0
  770. package/internals/date/model.js.map +1 -0
  771. package/internals/decorators/blazorAdditionalDependencies.js.map +1 -0
  772. package/internals/decorators/blazorDeepImport.js.map +1 -0
  773. package/internals/decorators/blazorInclude.js.map +1 -0
  774. package/internals/decorators/blazorIndirectRender.js.map +1 -0
  775. package/internals/decorators/blazorSuppressComponent.js.map +1 -0
  776. package/internals/decorators/shadow-options.js.map +1 -0
  777. package/internals/decorators/watch.js.map +1 -0
  778. package/internals/definitions/defineAllComponents.js +153 -0
  779. package/internals/definitions/defineAllComponents.js.map +1 -0
  780. package/internals/definitions/defineComponents.js.map +1 -0
  781. package/internals/definitions/register.js.map +1 -0
  782. package/{components/common → internals}/i18n/EN/calendar.resources.js +1 -1
  783. package/internals/i18n/EN/calendar.resources.js.map +1 -0
  784. package/internals/i18n/EN/chat.resources.js.map +1 -0
  785. package/internals/i18n/EN/date-picker.resources.js.map +1 -0
  786. package/internals/i18n/EN/date-range-picker.resources.js.map +1 -0
  787. package/internals/i18n/i18n-controller.js.map +1 -0
  788. package/{components/common → internals}/i18n/utils.js +1 -1
  789. package/internals/i18n/utils.js.map +1 -0
  790. package/{components/common → internals}/mixins/alert.d.ts +2 -2
  791. package/{components/common → internals}/mixins/alert.js +3 -3
  792. package/internals/mixins/alert.js.map +1 -0
  793. package/{components/common → internals}/mixins/combo-box.d.ts +10 -2
  794. package/{components/common → internals}/mixins/combo-box.js +9 -4
  795. package/internals/mixins/combo-box.js.map +1 -0
  796. package/internals/mixins/constructor.js.map +1 -0
  797. package/internals/mixins/event-emitter.js.map +1 -0
  798. package/{components/common → internals}/mixins/forms/associated-required.js +10 -19
  799. package/internals/mixins/forms/associated-required.js.map +1 -0
  800. package/{components/common → internals}/mixins/forms/associated.d.ts +1 -1
  801. package/{components/common → internals}/mixins/forms/associated.js +66 -51
  802. package/internals/mixins/forms/associated.js.map +1 -0
  803. package/{components/common → internals}/mixins/forms/form-transformers.d.ts +1 -1
  804. package/{components/common → internals}/mixins/forms/form-transformers.js +2 -2
  805. package/internals/mixins/forms/form-transformers.js.map +1 -0
  806. package/internals/mixins/forms/form-value.js.map +1 -0
  807. package/{components/common → internals}/mixins/forms/types.d.ts +7 -7
  808. package/internals/mixins/forms/types.js.map +1 -0
  809. package/{components/common → internals}/mixins/mask-behavior.d.ts +11 -3
  810. package/{components/common → internals}/mixins/mask-behavior.js +117 -29
  811. package/internals/mixins/mask-behavior.js.map +1 -0
  812. package/{components/common → internals}/mixins/option.d.ts +0 -2
  813. package/{components/common → internals}/mixins/option.js +1 -4
  814. package/internals/mixins/option.js.map +1 -0
  815. package/internals/part-map.js.map +1 -0
  816. package/{components/common → internals}/templates/input-shell.d.ts +8 -1
  817. package/{components/common → internals}/templates/input-shell.js +14 -4
  818. package/internals/templates/input-shell.js.map +1 -0
  819. package/{components/common → internals}/templates/masked-input.d.ts +8 -2
  820. package/{components/common → internals}/templates/masked-input.js +5 -3
  821. package/internals/templates/masked-input.js.map +1 -0
  822. package/internals/utils/arrays.d.ts +53 -0
  823. package/internals/utils/arrays.js +31 -0
  824. package/internals/utils/arrays.js.map +1 -0
  825. package/internals/utils/dom.d.ts +92 -0
  826. package/internals/utils/dom.js +143 -0
  827. package/internals/utils/dom.js.map +1 -0
  828. package/internals/utils/events.d.ts +41 -0
  829. package/internals/utils/events.js +37 -0
  830. package/internals/utils/events.js.map +1 -0
  831. package/internals/utils/lit.d.ts +8 -0
  832. package/internals/utils/lit.js +15 -0
  833. package/internals/utils/lit.js.map +1 -0
  834. package/internals/utils/math.d.ts +50 -0
  835. package/internals/utils/math.js +38 -0
  836. package/internals/utils/math.js.map +1 -0
  837. package/internals/utils/objects.d.ts +25 -0
  838. package/internals/utils/objects.js +125 -0
  839. package/internals/utils/objects.js.map +1 -0
  840. package/internals/utils/strings.d.ts +44 -0
  841. package/internals/utils/strings.js +46 -0
  842. package/internals/utils/strings.js.map +1 -0
  843. package/internals/utils/types.d.ts +13 -0
  844. package/internals/utils/types.js +31 -0
  845. package/internals/utils/types.js.map +1 -0
  846. package/{components/common → internals}/validators.d.ts +1 -1
  847. package/{components/common → internals}/validators.js +4 -2
  848. package/internals/validators.js.map +1 -0
  849. package/package.json +15 -7
  850. package/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +15 -1
  851. package/themes/dark/bootstrap.css +1 -1
  852. package/themes/dark/fluent.css +1 -1
  853. package/themes/dark/indigo.css +1 -1
  854. package/themes/dark/material.css +1 -1
  855. package/themes/light/bootstrap.css +1 -1
  856. package/themes/light/fluent.css +1 -1
  857. package/themes/light/indigo.css +1 -1
  858. package/themes/light/material.css +1 -1
  859. package/theming/theming-controller.d.ts +2 -2
  860. package/theming/theming-controller.js.map +1 -1
  861. package/web-types.json +3 -3
  862. package/components/calendar/model.js.map +0 -1
  863. package/components/combo/combo-list.d.ts +0 -11
  864. package/components/combo/combo-list.js +0 -13
  865. package/components/combo/combo-list.js.map +0 -1
  866. package/components/common/abort-handler.js.map +0 -1
  867. package/components/common/context.d.ts +0 -25
  868. package/components/common/context.js.map +0 -1
  869. package/components/common/controllers/adopt-styles.d.ts +0 -124
  870. package/components/common/controllers/adopt-styles.js +0 -75
  871. package/components/common/controllers/adopt-styles.js.map +0 -1
  872. package/components/common/controllers/async-consumer.js.map +0 -1
  873. package/components/common/controllers/command.js.map +0 -1
  874. package/components/common/controllers/drag.js.map +0 -1
  875. package/components/common/controllers/focus-ring.js.map +0 -1
  876. package/components/common/controllers/fullscreen.js.map +0 -1
  877. package/components/common/controllers/gestures.js.map +0 -1
  878. package/components/common/controllers/id-resolver.js.map +0 -1
  879. package/components/common/controllers/internals.js.map +0 -1
  880. package/components/common/controllers/key-bindings.js.map +0 -1
  881. package/components/common/controllers/mutation-observer.js +0 -69
  882. package/components/common/controllers/mutation-observer.js.map +0 -1
  883. package/components/common/controllers/resize-observer.js.map +0 -1
  884. package/components/common/controllers/root-click.js.map +0 -1
  885. package/components/common/controllers/root-scroll.js +0 -63
  886. package/components/common/controllers/root-scroll.js.map +0 -1
  887. package/components/common/controllers/slot.js.map +0 -1
  888. package/components/common/decorators/blazorAdditionalDependencies.js.map +0 -1
  889. package/components/common/decorators/blazorDeepImport.js.map +0 -1
  890. package/components/common/decorators/blazorInclude.js.map +0 -1
  891. package/components/common/decorators/blazorIndirectRender.js.map +0 -1
  892. package/components/common/decorators/blazorSuppressComponent.js.map +0 -1
  893. package/components/common/decorators/shadow-options.js.map +0 -1
  894. package/components/common/decorators/watch.js.map +0 -1
  895. package/components/common/definitions/defineAllComponents.js +0 -151
  896. package/components/common/definitions/defineAllComponents.js.map +0 -1
  897. package/components/common/definitions/defineComponents.js.map +0 -1
  898. package/components/common/definitions/register.js.map +0 -1
  899. package/components/common/i18n/EN/calendar.resources.js.map +0 -1
  900. package/components/common/i18n/EN/chat.resources.js.map +0 -1
  901. package/components/common/i18n/EN/date-picker.resources.js.map +0 -1
  902. package/components/common/i18n/EN/date-range-picker.resources.js.map +0 -1
  903. package/components/common/i18n/i18n-controller.js.map +0 -1
  904. package/components/common/i18n/utils.js.map +0 -1
  905. package/components/common/mixins/alert.js.map +0 -1
  906. package/components/common/mixins/combo-box.js.map +0 -1
  907. package/components/common/mixins/constructor.js.map +0 -1
  908. package/components/common/mixins/event-emitter.js.map +0 -1
  909. package/components/common/mixins/forms/associated-required.js.map +0 -1
  910. package/components/common/mixins/forms/associated.js.map +0 -1
  911. package/components/common/mixins/forms/form-transformers.js.map +0 -1
  912. package/components/common/mixins/forms/form-value.js.map +0 -1
  913. package/components/common/mixins/forms/types.js.map +0 -1
  914. package/components/common/mixins/mask-behavior.js.map +0 -1
  915. package/components/common/mixins/option.js.map +0 -1
  916. package/components/common/part-map.js.map +0 -1
  917. package/components/common/templates/input-shell.js.map +0 -1
  918. package/components/common/templates/masked-input.js.map +0 -1
  919. package/components/common/util.d.ts +0 -196
  920. package/components/common/util.js +0 -390
  921. package/components/common/util.js.map +0 -1
  922. package/components/common/validators.js.map +0 -1
  923. package/components/icon/registry/default-map.d.ts +0 -107
  924. package/components/icon/registry/default-map.js +0 -25
  925. package/components/icon/registry/default-map.js.map +0 -1
  926. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js +0 -3
  927. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js.map +0 -1
  928. package/components/radio/utils.d.ts +0 -13
  929. package/components/radio/utils.js +0 -37
  930. package/components/radio/utils.js.map +0 -1
  931. /package/components/{nav-drawer/themes/shared/container/nav-drawer.fluent.css.d.ts → qr-code/themes/dark/qr-code.bootstrap.css.d.ts} +0 -0
  932. /package/{components/common → internals}/abort-handler.d.ts +0 -0
  933. /package/{components/common → internals}/abort-handler.js +0 -0
  934. /package/{components/common → internals}/controllers/async-consumer.d.ts +0 -0
  935. /package/{components/common → internals}/controllers/command.d.ts +0 -0
  936. /package/{components/common → internals}/controllers/command.js +0 -0
  937. /package/{components/common → internals}/controllers/drag.d.ts +0 -0
  938. /package/{components/common → internals}/controllers/focus-ring.d.ts +0 -0
  939. /package/{components/common → internals}/controllers/fullscreen.d.ts +0 -0
  940. /package/{components/common → internals}/controllers/id-resolver.d.ts +0 -0
  941. /package/{components/common → internals}/controllers/root-click.d.ts +0 -0
  942. /package/{components/common → internals}/decorators/blazorAdditionalDependencies.d.ts +0 -0
  943. /package/{components/common → internals}/decorators/blazorAdditionalDependencies.js +0 -0
  944. /package/{components/common → internals}/decorators/blazorDeepImport.d.ts +0 -0
  945. /package/{components/common → internals}/decorators/blazorDeepImport.js +0 -0
  946. /package/{components/common → internals}/decorators/blazorInclude.d.ts +0 -0
  947. /package/{components/common → internals}/decorators/blazorInclude.js +0 -0
  948. /package/{components/common → internals}/decorators/blazorIndirectRender.d.ts +0 -0
  949. /package/{components/common → internals}/decorators/blazorIndirectRender.js +0 -0
  950. /package/{components/common → internals}/decorators/blazorSuppressComponent.d.ts +0 -0
  951. /package/{components/common → internals}/decorators/blazorSuppressComponent.js +0 -0
  952. /package/{components/common → internals}/decorators/shadow-options.d.ts +0 -0
  953. /package/{components/common → internals}/decorators/shadow-options.js +0 -0
  954. /package/{components/common → internals}/decorators/watch.d.ts +0 -0
  955. /package/{components/common → internals}/decorators/watch.js +0 -0
  956. /package/{components/common → internals}/definitions/defineAllComponents.d.ts +0 -0
  957. /package/{components/common → internals}/definitions/defineComponents.d.ts +0 -0
  958. /package/{components/common → internals}/definitions/defineComponents.js +0 -0
  959. /package/{components/common → internals}/definitions/register.d.ts +0 -0
  960. /package/{components/common → internals}/definitions/register.js +0 -0
  961. /package/{components/common → internals}/i18n/EN/calendar.resources.d.ts +0 -0
  962. /package/{components/common → internals}/i18n/EN/chat.resources.d.ts +0 -0
  963. /package/{components/common → internals}/i18n/EN/chat.resources.js +0 -0
  964. /package/{components/common → internals}/i18n/EN/date-picker.resources.d.ts +0 -0
  965. /package/{components/common → internals}/i18n/EN/date-picker.resources.js +0 -0
  966. /package/{components/common → internals}/i18n/EN/date-range-picker.resources.d.ts +0 -0
  967. /package/{components/common → internals}/i18n/EN/date-range-picker.resources.js +0 -0
  968. /package/{components/common → internals}/i18n/i18n-controller.d.ts +0 -0
  969. /package/{components/common → internals}/i18n/i18n-controller.js +0 -0
  970. /package/{components/common → internals}/i18n/utils.d.ts +0 -0
  971. /package/{components/common → internals}/mixins/constructor.d.ts +0 -0
  972. /package/{components/common → internals}/mixins/constructor.js +0 -0
  973. /package/{components/common → internals}/mixins/event-emitter.d.ts +0 -0
  974. /package/{components/common → internals}/mixins/event-emitter.js +0 -0
  975. /package/{components/common → internals}/mixins/forms/associated-required.d.ts +0 -0
  976. /package/{components/common → internals}/mixins/forms/form-value.d.ts +0 -0
  977. /package/{components/common → internals}/mixins/forms/form-value.js +0 -0
  978. /package/{components/common → internals}/mixins/forms/types.js +0 -0
  979. /package/{components/common → internals}/part-map.d.ts +0 -0
  980. /package/{components/common → internals}/part-map.js +0 -0
@@ -7,33 +7,28 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var IgcDateRangePickerComponent_1;
8
8
  import { CalendarResourceStringsEN, DateRangePickerResourceStringsEN, getDateFormatter, } from 'igniteui-i18n-core';
9
9
  import { html, nothing } from 'lit';
10
- import { property, query, queryAll, queryAssignedElements, } from 'lit/decorators.js';
10
+ import { property, query, queryAll, state } from 'lit/decorators.js';
11
11
  import { cache } from 'lit/directives/cache.js';
12
12
  import { ifDefined } from 'lit/directives/if-defined.js';
13
13
  import { live } from 'lit/directives/live.js';
14
- import { addThemingController } from '../../theming/theming-controller.js';
15
- import IgcCalendarComponent, { focusActiveDate } from '../calendar/calendar.js';
16
- import { convertToDate, convertToDateRange, createDateConstraints, } from '../calendar/helpers.js';
17
- import { CalendarDay } from '../calendar/model.js';
18
- import { addKeybindings, altKey, arrowDown, arrowUp, escapeKey, } from '../common/controllers/key-bindings.js';
19
- import { addRootClickController } from '../common/controllers/root-click.js';
20
- import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
21
- import { shadowOptions } from '../common/decorators/shadow-options.js';
22
- import { watch } from '../common/decorators/watch.js';
23
- import { registerComponent } from '../common/definitions/register.js';
24
- import { addI18nController, getDateTimeFormat, getDefaultDateTimeFormat, } from '../common/i18n/i18n-controller.js';
25
- import { IgcComboBoxBaseLikeComponent } from '../common/mixins/combo-box.js';
26
- import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
27
- import { FormAssociatedRequiredMixin } from '../common/mixins/forms/associated-required.js';
28
- import { FormValueDateRangeTransformers } from '../common/mixins/forms/form-transformers.js';
29
- import { createFormValueState } from '../common/mixins/forms/form-value.js';
30
- import { addSafeEventListener, asNumber, clamp, equal, getElementFromPath, isEmpty, } from '../common/util.js';
14
+ import { addAriaProjector } from '#internals/controllers/aria-projection.js';
15
+ import { addSlotController, setSlots } from '#internals/controllers/slot.js';
16
+ import { convertToDateRange } from '#internals/date/converters.js';
17
+ import { CalendarDay } from '#internals/date/model.js';
18
+ import { blazorAdditionalDependencies } from '#internals/decorators/blazorAdditionalDependencies.js';
19
+ import { shadowOptions } from '#internals/decorators/shadow-options.js';
20
+ import { registerComponent } from '#internals/definitions/register.js';
21
+ import { addI18nController, getDateTimeFormat, getDefaultDateTimeFormat, } from '#internals/i18n/i18n-controller.js';
22
+ import { EventEmitterMixin } from '#internals/mixins/event-emitter.js';
23
+ import { FormValueDateRangeTransformers } from '#internals/mixins/forms/form-transformers.js';
24
+ import { createFormValueState } from '#internals/mixins/forms/form-value.js';
25
+ import { firstOf, isEmpty, lastOf } from '#internals/utils/arrays.js';
26
+ import { bindIf } from '#internals/utils/lit.js';
27
+ import { asNumber, clamp } from '#internals/utils/math.js';
28
+ import { createIdGenerator } from '#internals/utils/strings.js';
29
+ import { addThemingController } from '#theming/theming-controller.js';
30
+ import { IgcDatePickerBaseComponent, pickerDependencies, } from '../date-picker/date-picker.base.js';
31
31
  import IgcDateTimeInputComponent from '../date-time-input/date-time-input.js';
32
- import IgcDialogComponent from '../dialog/dialog.js';
33
- import IgcFocusTrapComponent from '../focus-trap/focus-trap.js';
34
- import IgcIconComponent from '../icon/icon.js';
35
- import IgcPopoverComponent from '../popover/popover.js';
36
- import IgcValidationContainerComponent from '../validation-container/validation-container.js';
37
32
  import IgcDateRangeInputComponent from './date-range-input.js';
38
33
  import { DateRangePosition } from './date-range-mask-parser.js';
39
34
  import { styles } from './date-range-picker.base.css.js';
@@ -41,153 +36,162 @@ import IgcPredefinedRangesAreaComponent from './predefined-ranges-area.js';
41
36
  import { styles as shared } from './themes/shared/date-range-picker.common.css.js';
42
37
  import { all } from './themes/themes.js';
43
38
  import { dateRangeValidators, isCompleteDateRange } from './validators.js';
44
- let nextId = 1;
45
- let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends FormAssociatedRequiredMixin(EventEmitterMixin(IgcComboBoxBaseLikeComponent)) {
39
+ const nextId = createIdGenerator('date-range-picker');
40
+ const Slots = setSlots('prefix', 'prefix-start', 'prefix-end', 'suffix', 'suffix-start', 'suffix-end', 'helper-text', 'bad-input', 'value-missing', 'range-overflow', 'range-underflow', 'custom-error', 'invalid', 'title', 'header-date', 'clear-icon', 'clear-icon-start', 'clear-icon-end', 'calendar-icon', 'calendar-icon-start', 'calendar-icon-end', 'calendar-icon-open', 'calendar-icon-open-start', 'calendar-icon-open-end', 'actions', 'separator');
41
+ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends EventEmitterMixin(IgcDatePickerBaseComponent) {
46
42
  static { IgcDateRangePickerComponent_1 = this; }
47
43
  static { this.tagName = 'igc-date-range-picker'; }
48
44
  static { this.styles = [styles, shared]; }
49
45
  static register() {
50
- registerComponent(IgcDateRangePickerComponent_1, IgcDateRangeInputComponent, IgcCalendarComponent, IgcDateTimeInputComponent, IgcFocusTrapComponent, IgcIconComponent, IgcPopoverComponent, IgcDialogComponent, IgcValidationContainerComponent, IgcPredefinedRangesAreaComponent);
46
+ registerComponent(IgcDateRangePickerComponent_1, IgcDateRangeInputComponent, IgcDateTimeInputComponent, IgcPredefinedRangesAreaComponent, ...pickerDependencies);
51
47
  }
52
48
  get __validators() {
53
49
  return dateRangeValidators;
54
50
  }
55
- get _isDropDown() {
56
- return this.mode === 'dropdown';
51
+ get _editors() {
52
+ return this.useTwoInputs ? Array.from(this._inputs) : [this._input];
53
+ }
54
+ get _startEditor() {
55
+ return firstOf(this._editors);
57
56
  }
58
57
  get _firstDefinedInRange() {
59
58
  return this.value?.start ?? this.value?.end ?? null;
60
59
  }
61
- set value(value) {
62
- this._formValue.setValueAndFormState(convertToDateRange(value));
63
- this._setCalendarRangeValues();
60
+ get _value() {
61
+ return this.value;
64
62
  }
65
- get value() {
66
- return this._formValue.value;
63
+ set _value(value) {
64
+ this.value = value;
67
65
  }
68
- set locale(value) {
69
- this._i18nController.locale = value;
66
+ get _hasValue() {
67
+ return this._firstDefinedInRange !== null;
70
68
  }
71
- get locale() {
72
- return this._i18nController.locale;
69
+ get _calendarSelection() {
70
+ return 'range';
73
71
  }
74
- set resourceStrings(value) {
75
- this._i18nController.resourceStrings = value;
72
+ get _calendarValues() {
73
+ return this._calendarRange;
76
74
  }
77
- get resourceStrings() {
78
- return this._i18nController.resourceStrings;
75
+ get _defaultActiveDate() {
76
+ return this._firstDefinedInRange;
79
77
  }
80
- set placeholder(value) {
81
- this._placeholder = value;
78
+ get _selectDateLabel() {
79
+ return this.resourceStrings.calendar_select_date;
82
80
  }
83
- get placeholder() {
84
- const rangePlaceholder = `${this.inputFormat} - ${this.inputFormat}`;
85
- return this._placeholder ?? rangePlaceholder;
81
+ get _defaultDisplayFormat() {
82
+ return this._inputFormat ?? this._localeDisplayFormat;
86
83
  }
87
- set displayFormat(value) {
88
- this._displayFormat = value;
84
+ get _defaultInputFormat() {
85
+ return this._defaultMask;
89
86
  }
90
- get displayFormat() {
91
- return (this._displayFormat ?? this._inputFormat ?? this._defaultDisplayFormat);
87
+ get _projectionTarget() {
88
+ return this._input ?? this._inputs?.[0] ?? null;
92
89
  }
93
- set inputFormat(value) {
94
- this._inputFormat = value;
90
+ _focusInput() {
91
+ this._startEditor.focus();
95
92
  }
96
- get inputFormat() {
97
- return this._inputFormat ?? this._defaultMask;
93
+ _focusAndSelectInput() {
94
+ this.useTwoInputs ? this._inputs[0].select() : this._input.focus();
98
95
  }
99
- set min(value) {
100
- this._min = convertToDate(value);
101
- this._setDateConstraints();
102
- this._validate();
96
+ _canCloseOnSelect() {
97
+ return this._calendar.values.length > 1;
103
98
  }
104
- get min() {
105
- return this._min;
99
+ _handleDismiss() {
100
+ if (!this._isDropDown) {
101
+ this._revertValue();
102
+ }
106
103
  }
107
- set max(value) {
108
- this._max = convertToDate(value);
109
- this._setDateConstraints();
110
- this._validate();
104
+ _syncCalendarOnToggle() {
105
+ this._setCalendarActiveDateAndViewIndex();
111
106
  }
112
- get max() {
113
- return this._max;
107
+ _clearEditors() {
108
+ for (const editor of this._editors) {
109
+ editor?.clear();
110
+ }
114
111
  }
115
- set disabledDates(dates) {
116
- this._disabledDates = dates;
117
- this._setDateConstraints();
118
- this._validate();
112
+ _onDialogClosing() {
113
+ this._emitChangeIfDirty();
119
114
  }
120
- get disabledDates() {
121
- return this._disabledDates;
115
+ _commitsCalendarSelection() {
116
+ return this._isDropDown;
122
117
  }
123
- get visibleMonths() {
124
- return this._visibleMonths;
118
+ _valueFromCalendarSelection(dates) {
119
+ return isEmpty(dates)
120
+ ? { start: null, end: null }
121
+ : { start: firstOf(dates), end: lastOf(dates) };
122
+ }
123
+ set value(value) {
124
+ this._formValue.setValueAndFormState(convertToDateRange(value));
125
+ this._setCalendarRangeValues();
126
+ }
127
+ get value() {
128
+ return this._formValue.value;
125
129
  }
126
130
  set visibleMonths(value) {
127
131
  this._visibleMonths = clamp(asNumber(value, 2), 1, 2);
128
132
  }
129
- set activeDate(value) {
130
- this._activeDate = convertToDate(value);
133
+ get visibleMonths() {
134
+ return this._visibleMonths;
135
+ }
136
+ set resourceStrings(value) {
137
+ this._i18nController.resourceStrings = value;
138
+ }
139
+ get resourceStrings() {
140
+ return this._i18nController.resourceStrings;
141
+ }
142
+ set placeholder(value) {
143
+ this._placeholder = value;
131
144
  }
132
- get activeDate() {
133
- return this._activeDate ?? this._calendar?.activeDate;
145
+ get placeholder() {
146
+ const rangePlaceholder = `${this.inputFormat} - ${this.inputFormat}`;
147
+ return this._placeholder ?? rangePlaceholder;
134
148
  }
135
149
  constructor() {
136
150
  super();
137
- this._inputId = `date-range-picker-${nextId++}`;
151
+ this._inputId = nextId();
138
152
  this._themes = addThemingController(this, all);
139
- this._formValue = createFormValueState(this, {
140
- initialValue: { start: null, end: null },
141
- transformers: FormValueDateRangeTransformers,
142
- });
143
- this._rootClickController = addRootClickController(this, {
144
- onHide: this._handleClosing,
153
+ this._slots = addSlotController(this, {
154
+ slots: Slots,
145
155
  });
146
156
  this._i18nController = addI18nController(this, {
147
157
  defaultEN: Object.assign({}, DateRangePickerResourceStringsEN, CalendarResourceStringsEN),
148
158
  resourceMapName: 'date-range-picker',
149
159
  onResourceChange: this._updateDefaultMask,
150
160
  });
151
- this._activeDate = null;
152
- this._min = null;
153
- this._max = null;
154
- this._disabledDates = [];
155
- this._dateConstraints = [];
156
- this._oldValue = null;
161
+ this._formValue = createFormValueState(this, {
162
+ initialValue: { start: null, end: null },
163
+ transformers: FormValueDateRangeTransformers,
164
+ });
157
165
  this._visibleMonths = 2;
166
+ this._calendarRange = null;
158
167
  this.customRanges = [];
159
- this.mode = 'dropdown';
160
168
  this.useTwoInputs = false;
161
169
  this.usePredefinedRanges = false;
162
- this.readOnly = false;
163
- this.nonEditable = false;
164
- this.outlined = false;
165
170
  this.labelStart = '';
166
171
  this.labelEnd = '';
167
172
  this.placeholderStart = '';
168
173
  this.placeholderEnd = '';
169
- this.prompt = '_';
170
- this.headerOrientation = 'horizontal';
171
- this.orientation = 'horizontal';
172
- this.hideHeader = false;
173
- this.showWeekNumbers = false;
174
- this.hideOutsideDays = false;
175
- this.weekStart = 'sunday';
176
- addSafeEventListener(this, 'focusout', this._handleFocusOut);
177
- addKeybindings(this, {
178
- skip: () => this.disabled || this.readOnly,
179
- })
180
- .set([altKey, arrowDown], this._handleAnchorClick)
181
- .set([altKey, arrowUp], this._onEscapeKey)
182
- .set(escapeKey, this._onEscapeKey);
183
- }
184
- createRenderRoot() {
185
- const root = super.createRenderRoot();
186
- root.addEventListener('slotchange', () => this.requestUpdate());
187
- return root;
174
+ addAriaProjector(this, {
175
+ target: () => this._inputs[1] ?? null,
176
+ state: () => ({ hasPopup: 'dialog' }),
177
+ });
178
+ }
179
+ willUpdate(changedProperties) {
180
+ super.willUpdate(changedProperties);
181
+ if (changedProperties.has('locale')) {
182
+ this._updateDefaultMask();
183
+ }
184
+ if (changedProperties.has('mode') && !this._isDropDown) {
185
+ this.keepOpenOnSelect = true;
186
+ }
187
+ if (changedProperties.has('useTwoInputs')) {
188
+ this._syncEditors();
189
+ }
190
+ else if (changedProperties.has('mode')) {
191
+ this._syncCalendarRange();
192
+ }
188
193
  }
189
194
  firstUpdated() {
190
- this._setCalendarRangeValues();
191
195
  this._delegateInputsValidity();
192
196
  }
193
197
  formResetCallback() {
@@ -195,75 +199,20 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
195
199
  this._setCalendarRangeValues();
196
200
  }
197
201
  hasDateParts() {
198
- return this.useTwoInputs
199
- ? this._inputs[0].hasDateParts()
200
- : this._input.hasDateParts();
202
+ return this._startEditor.hasDateParts();
201
203
  }
202
204
  hasTimeParts() {
203
- return this.useTwoInputs
204
- ? this._inputs[0].hasTimeParts()
205
- : this._input.hasTimeParts();
206
- }
207
- clear() {
208
- this._oldValue = this.value;
209
- this.value = null;
210
- if (this.useTwoInputs) {
211
- this._inputs[0]?.clear();
212
- this._inputs[1]?.clear();
213
- }
214
- else {
215
- this._input.value = null;
216
- this._input?.clear();
217
- }
205
+ return this._startEditor.hasTimeParts();
218
206
  }
219
207
  select(value) {
220
208
  this._select(value);
221
209
  }
222
- _openChange() {
223
- this._rootClickController.update();
224
- if (this.open) {
225
- this._oldValue = this.value;
226
- }
227
- }
228
- _updateDefaultMask() {
229
- this._defaultMask = getDefaultDateTimeFormat(this.locale);
230
- this._defaultDisplayFormat = getDateFormatter().getLocaleDateTimeFormat(this.locale);
231
- }
232
- async _updateDateRange() {
233
- await this._calendar?.updateComplete;
234
- this._setCalendarRangeValues();
235
- this._delegateInputsValidity();
236
- }
237
- async _modeChanged() {
238
- if (!this._isDropDown) {
239
- this.keepOpenOnSelect = true;
240
- }
241
- await this._calendar?.updateComplete;
242
- this._setCalendarRangeValues();
243
- }
244
- _handleClosing() {
245
- this._hide(true);
246
- }
247
- _handleDialogClosing(event) {
248
- event.stopPropagation();
249
- if (!equal(this.value, this._oldValue)) {
250
- this.emitEvent('igcChange', { detail: this.value });
251
- this._oldValue = this.value;
252
- }
253
- this._hide(true);
254
- }
255
- _handleDialogClosed(event) {
256
- event.stopPropagation();
257
- }
258
210
  _dialogCancel() {
259
211
  this._revertValue();
260
212
  this._hide(true);
261
213
  }
262
214
  _dialogDone() {
263
- if (!equal(this.value, this._oldValue)) {
264
- this.emitEvent('igcChange', { detail: this.value });
265
- this._oldValue = this.value;
266
- }
215
+ this._emitChangeIfDirty();
267
216
  this._hide(true);
268
217
  }
269
218
  _handleInput(event) {
@@ -273,24 +222,19 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
273
222
  return;
274
223
  }
275
224
  const input = event.target;
276
- const newValue = input.value ? CalendarDay.from(input.value).native : null;
277
- this.value = this._getUpdatedDateRange(input, newValue);
225
+ const draft = input._uncommittedValue;
226
+ const newValue = draft ? CalendarDay.from(draft).native : null;
227
+ const range = this._getUpdatedDateRange(input, newValue);
228
+ this._setCalendarRangeValues(range);
278
229
  this._calendar.activeDate =
279
- newValue ?? this._firstDefinedInRange ?? this._calendar.activeDate;
280
- this.emitEvent('igcInput', { detail: this.value });
230
+ newValue ?? range.start ?? range.end ?? this._calendar.activeDate;
231
+ this.emitEvent('igcInput', { detail: range });
281
232
  }
282
233
  _handleInputChange(event) {
283
234
  event.stopPropagation();
284
235
  const input = event.target;
285
236
  const newValue = input.value ? CalendarDay.from(input.value).native : null;
286
- const updatedRange = this._getUpdatedDateRange(input, newValue);
287
- const { start, end } = this._swapDates(updatedRange) ?? {
288
- start: null,
289
- end: null,
290
- };
291
- this._setCalendarRangeValues();
292
- this.value = { start, end };
293
- this.emitEvent('igcChange', { detail: this.value });
237
+ this._commitRange(this._getUpdatedDateRange(input, newValue));
294
238
  }
295
239
  async _handleDateRangeInput(event) {
296
240
  event.stopPropagation();
@@ -299,68 +243,26 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
299
243
  return;
300
244
  }
301
245
  const input = event.target;
302
- const newValue = input.value;
303
- this.value = newValue;
304
- this._calendar.activeDate = newValue?.start;
305
- this.emitEvent('igcInput', { detail: this.value });
246
+ const draft = input._uncommittedValue;
247
+ this._setCalendarRangeValues(draft);
248
+ this._calendar.activeDate = draft?.start;
249
+ this.emitEvent('igcInput', { detail: draft });
306
250
  }
307
251
  _handleDateRangeInputChange(event) {
308
252
  event.stopPropagation();
309
- const input = event.target;
310
- const newValue = input.value;
311
- const { start, end } = this._swapDates(newValue) ?? {
312
- start: null,
313
- end: null,
314
- };
315
- this._setCalendarRangeValues();
316
- this.value = { start, end };
317
- this.emitEvent('igcChange', { detail: this.value });
318
- }
319
- _handleFocusOut({ relatedTarget }) {
320
- if (!this.contains(relatedTarget)) {
321
- this._handleBlur();
322
- }
253
+ this._commitRange(event.target.value);
323
254
  }
324
- _handleInputClick(event) {
325
- if (getElementFromPath('input', event)) {
326
- this._handleAnchorClick();
327
- }
328
- }
329
- async _onEscapeKey() {
330
- if (await this._hide(true)) {
331
- if (!this._isDropDown) {
332
- this._revertValue();
333
- }
334
- this.useTwoInputs ? this._inputs[0].focus() : this._input.focus();
335
- }
336
- }
337
- async _handleAnchorClick() {
338
- super._handleAnchorClick();
339
- this._setCalendarActiveDateAndViewIndex();
340
- await this.updateComplete;
341
- this._calendar[focusActiveDate]({ preventScroll: true });
255
+ _updateDefaultMask() {
256
+ this._defaultMask = getDefaultDateTimeFormat(this.locale);
257
+ this._localeDisplayFormat = getDateFormatter().getLocaleDateTimeFormat(this.locale);
342
258
  }
343
- async _handleCalendarChangeEvent(event) {
344
- event.stopPropagation();
345
- this._setTouchedState();
346
- if (this.readOnly) {
347
- await this._calendar.updateComplete;
348
- const dateRange = [this.value?.start, this.value?.end];
349
- this._calendar.values = dateRange?.map((d) => d ?? '');
350
- return;
351
- }
352
- const rangeValues = event.target.values;
353
- this.value = {
354
- start: rangeValues[0],
355
- end: rangeValues[rangeValues.length - 1],
356
- };
357
- if (this._isDropDown) {
358
- this.emitEvent('igcChange', { detail: this.value });
359
- }
360
- this._shouldCloseCalendarDropdown();
259
+ async _syncCalendarRange() {
260
+ await this._calendar?.updateComplete;
261
+ this._setCalendarRangeValues();
361
262
  }
362
- _handleCalendarIconSlotPointerDown(event) {
363
- event.preventDefault();
263
+ async _syncEditors() {
264
+ await this._syncCalendarRange();
265
+ this._delegateInputsValidity();
364
266
  }
365
267
  _revertValue() {
366
268
  this.value = this._oldValue;
@@ -372,37 +274,38 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
372
274
  this._calendar[activeDaysViewIndex] = 0;
373
275
  }
374
276
  _getUpdatedDateRange(input, newValue) {
375
- const { start = null, end = null } = this.value ?? {};
376
- return input === this._inputs[0]
377
- ? { start: newValue, end }
378
- : { start, end: newValue };
277
+ const [startInput, endInput] = this._inputs;
278
+ return input === startInput
279
+ ? { start: newValue, end: endInput?._uncommittedValue ?? null }
280
+ : { start: startInput?._uncommittedValue ?? null, end: newValue };
379
281
  }
380
282
  _delegateInputsValidity() {
381
- const inputs = this.useTwoInputs ? this._inputs : [this._input];
382
- inputs.forEach((input) => {
283
+ for (const input of this._editors) {
383
284
  input.checkValidity = () => !this._pristine ? this.checkValidity() : true;
384
285
  input.reportValidity = () => !this._pristine ? this.reportValidity() : true;
385
- });
386
- }
387
- _setDateConstraints() {
388
- this._dateConstraints =
389
- createDateConstraints(this.min, this.max, this.disabledDates) ?? [];
390
- }
391
- _setCalendarRangeValues() {
392
- if (!this._calendar) {
393
- return;
394
286
  }
395
- if (isCompleteDateRange(this.value)) {
396
- this._calendar.values =
397
- CalendarDay.compare(this.value.start, this.value.end) === 0
398
- ? [this.value.start]
399
- : [this.value.start, this.value.end];
400
- this._calendar.activeDate = this._firstDefinedInRange;
287
+ }
288
+ _setCalendarRangeValues(range = this.value) {
289
+ if (isCompleteDateRange(range)) {
290
+ this._calendarRange =
291
+ CalendarDay.compare(range.start, range.end) === 0
292
+ ? [range.start]
293
+ : [range.start, range.end];
294
+ if (this._calendar) {
295
+ this._calendar.activeDate = range.start;
296
+ }
401
297
  return;
402
298
  }
403
- this._calendar.values = this._firstDefinedInRange
404
- ? [this._firstDefinedInRange]
405
- : null;
299
+ const first = range?.start ?? range?.end ?? null;
300
+ this._calendarRange = first ? [first] : null;
301
+ }
302
+ _commitRange(range) {
303
+ const { start, end } = (range && this._swapDates(range)) ?? {
304
+ start: null,
305
+ end: null,
306
+ };
307
+ this.value = { start, end };
308
+ this.emitEvent('igcChange', { detail: this.value });
406
309
  }
407
310
  _swapDates(range) {
408
311
  return isCompleteDateRange(range) &&
@@ -410,13 +313,6 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
410
313
  ? { start: range.end, end: range.start }
411
314
  : range;
412
315
  }
413
- async _shouldCloseCalendarDropdown() {
414
- if (!this.keepOpenOnSelect &&
415
- this._calendar.values.length > 1 &&
416
- (await this._hide(true))) {
417
- return this.useTwoInputs ? this._inputs[0].select() : this._input.focus();
418
- }
419
- }
420
316
  _select(value, emitEvent = false) {
421
317
  this.value = value;
422
318
  this._calendar.activeDate =
@@ -427,88 +323,8 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
427
323
  this._hide(true);
428
324
  }
429
325
  }
430
- _renderClearIcon(picker = DateRangePosition.Start) {
431
- const clearIcon = this.useTwoInputs ? `clear-icon-${picker}` : 'clear-icon';
432
- return this._firstDefinedInRange
433
- ? html `
434
- <span
435
- slot="suffix"
436
- part=${clearIcon}
437
- @click=${this.readOnly ? nothing : this.clear}
438
- >
439
- <slot name=${clearIcon}>
440
- <igc-icon
441
- name="input_clear"
442
- collection="default"
443
- aria-hidden="true"
444
- ></igc-icon>
445
- </slot>
446
- </span>
447
- `
448
- : nothing;
449
- }
450
- _renderCalendarIcon(picker = DateRangePosition.Start) {
451
- const defaultIcon = html `
452
- <igc-icon name="today" collection="default" aria-hidden="true"></igc-icon>
453
- `;
454
- const state = this.open ? 'calendar-icon-open' : 'calendar-icon';
455
- const calendarIcon = this.useTwoInputs ? `${state}-${picker}` : state;
456
- return html `
457
- <span
458
- slot="prefix"
459
- part=${calendarIcon}
460
- @pointerdown=${this._handleCalendarIconSlotPointerDown}
461
- @click=${this.readOnly ? nothing : this._handleAnchorClick}
462
- >
463
- <slot name=${calendarIcon}>${defaultIcon}</slot>
464
- </span>
465
- `;
466
- }
467
- _renderCalendarSlots() {
468
- if (this._isDropDown) {
469
- return nothing;
470
- }
471
- const hasHeaderDate = isEmpty(this._headerDateSlotItems)
472
- ? ''
473
- : 'header-date';
474
- return html `
475
- <slot name="title" slot="title">
476
- ${this.resourceStrings.calendar_select_date}
477
- </slot>
478
- <slot name="header-date" slot=${hasHeaderDate}></slot>
479
- `;
480
- }
481
- _renderCalendar(id) {
482
- const hideHeader = this._isDropDown ? true : this.hideHeader;
483
- return html `
484
- <igc-calendar
485
- aria-labelledby=${id}
486
- role="dialog"
487
- selection="range"
488
- .inert=${!this.open || this.disabled}
489
- ?show-week-numbers=${this.showWeekNumbers}
490
- ?hide-outside-days=${this.hideOutsideDays}
491
- ?hide-header=${hideHeader}
492
- .activeDate=${this.activeDate ?? this._firstDefinedInRange}
493
- .headerOrientation=${this.headerOrientation}
494
- .orientation=${this.orientation}
495
- .visibleMonths=${this._visibleMonths}
496
- .disabledDates=${this._dateConstraints}
497
- .specialDates=${this.specialDates}
498
- .weekStart=${this.weekStart}
499
- @igcChange=${this._handleCalendarChangeEvent}
500
- exportparts="header, header-title, header-date, content: calendar-content, navigation, months-navigation,
501
- years-navigation, years-range, navigation-buttons, navigation-button, days-view-container,
502
- days-view, months-view, years-view, days-row, label: calendar-label, week-number, week-number-inner, date,
503
- date-inner, first, last, inactive, hidden, weekend, range, special, disabled, single, preview,
504
- month, month-inner, year, year-inner, selected, current"
505
- >
506
- ${this._renderCalendarSlots()}
507
- </igc-calendar>
508
- `;
509
- }
510
326
  _renderActions() {
511
- const hasActions = !isEmpty(this._actions);
327
+ const hasActions = this._slots.hasAssignedElements('actions');
512
328
  const slot = this._isDropDown || hasActions ? undefined : 'footer';
513
329
  return html `
514
330
  <div part="actions" ?hidden=${!hasActions} slot=${ifDefined(slot)}>
@@ -530,71 +346,44 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
530
346
  `
531
347
  : nothing;
532
348
  }
533
- _renderPicker(id) {
534
- const isIndigo = this._themes.theme === 'indigo';
349
+ _renderPickerContent(id) {
535
350
  return this._isDropDown
536
- ? html `
537
- <igc-popover ?open=${this.open} anchor=${id} flip shift>
538
- <igc-focus-trap ?disabled=${!this.open || this.disabled}>
539
- ${this._renderCalendar(id)} ${this._renderPredefinedRanges()}
540
- ${this._renderActions()}
541
- </igc-focus-trap>
542
- </igc-popover>
543
- `
544
- : html `
545
- <igc-dialog
546
- aria-label=${ifDefined(this.resourceStrings.calendar_select_date)}
547
- role="dialog"
548
- ?open=${this.open}
549
- ?close-on-outside-click=${!this.keepOpenOnOutsideClick}
550
- hide-default-action
551
- @igcClosing=${this._handleDialogClosing}
552
- @igcClosed=${this._handleDialogClosed}
553
- exportparts="base: dialog-base, title, footer, overlay"
554
- >
555
- ${this._renderCalendar(id)} ${this._renderActions()}
556
- ${this._renderPredefinedRanges()}
557
- <igc-button
558
- slot="footer"
559
- @click=${this._dialogCancel}
560
- variant=${isIndigo ? 'outlined' : 'flat'}
561
- >${this.resourceStrings
562
- .date_range_picker_cancel_button}</igc-button
563
- >
564
- <igc-button
565
- slot="footer"
566
- @click=${this._dialogDone}
567
- variant=${isIndigo ? 'contained' : 'flat'}
568
- >${this.resourceStrings.date_range_picker_done_button}</igc-button
569
- >
570
- </igc-dialog>
571
- `;
572
- }
573
- _renderHelperText() {
574
- return IgcValidationContainerComponent.create(this);
351
+ ? html `${this._renderCalendar(id)} ${this._renderPredefinedRanges()}
352
+ ${this._renderActions()}`
353
+ : html `${this._renderCalendar(id)} ${this._renderActions()}
354
+ ${this._renderPredefinedRanges()}`;
355
+ }
356
+ _renderDialogFooter() {
357
+ const isIndigo = this._themes.theme === 'indigo';
358
+ return html `
359
+ <igc-button
360
+ slot="footer"
361
+ @click=${this._dialogCancel}
362
+ variant=${isIndigo ? 'outlined' : 'flat'}
363
+ >${this.resourceStrings.date_range_picker_cancel_button}</igc-button
364
+ >
365
+ <igc-button
366
+ slot="footer"
367
+ @click=${this._dialogDone}
368
+ variant=${isIndigo ? 'contained' : 'flat'}
369
+ >${this.resourceStrings.date_range_picker_done_button}</igc-button
370
+ >
371
+ `;
575
372
  }
576
373
  _renderInput(id, picker = DateRangePosition.Start) {
577
- const readOnly = !this._isDropDown || this.readOnly || this.nonEditable;
578
- const placeholder = picker === 'start' ? this.placeholderStart : this.placeholderEnd;
579
- const label = picker === 'start' ? this.labelStart : this.labelEnd;
374
+ const isStart = picker === DateRangePosition.Start;
375
+ const placeholder = isStart ? this.placeholderStart : this.placeholderEnd;
376
+ const label = isStart ? this.labelStart : this.labelEnd;
580
377
  const format = getDateTimeFormat(this._displayFormat);
581
- const value = picker === 'start' ? this.value?.start : this.value?.end;
582
- const prefixes = picker === DateRangePosition.Start
583
- ? this._startPrefixes
584
- : this._endPrefixes;
585
- const suffixes = picker === DateRangePosition.Start
586
- ? this._startSuffixes
587
- : this._endSuffixes;
588
- const prefix = isEmpty(prefixes) ? undefined : 'prefix';
589
- const suffix = isEmpty(suffixes) ? undefined : 'suffix';
378
+ const value = isStart ? this.value?.start : this.value?.end;
379
+ const hasClickHandler = !(this._isDropDown || this.readOnly);
590
380
  return html `
591
381
  <igc-date-time-input
592
382
  id=${id}
593
- aria-haspopup="dialog"
594
383
  input-format=${ifDefined(this._inputFormat)}
595
384
  display-format=${ifDefined(format)}
596
385
  ?disabled=${this.disabled}
597
- ?readonly=${readOnly}
386
+ ?readonly=${this._isEditorReadOnly}
598
387
  .value=${value ?? null}
599
388
  .locale=${live(this.locale)}
600
389
  .prompt=${this.prompt}
@@ -607,15 +396,10 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
607
396
  @igcChange=${this._handleInputChange}
608
397
  @igcInput=${this._handleInput}
609
398
  @keydown=${this._handleEnterKeydown}
610
- @click=${this._isDropDown || this.readOnly
611
- ? nothing
612
- : this._handleInputClick}
399
+ @click=${bindIf(hasClickHandler, this._handleInputClick)}
613
400
  exportparts="input, label, prefix, suffix"
614
401
  >
615
- ${this._renderCalendarIcon(picker)}
616
- <slot name=${`prefix-${picker}`} slot=${ifDefined(prefix)}></slot>
617
- ${this._renderClearIcon(picker)}
618
- <slot name=${`suffix-${picker}`} slot=${ifDefined(suffix)}></slot>
402
+ ${this._renderEditorSlots(`-${picker}`)}
619
403
  </igc-date-time-input>
620
404
  `;
621
405
  }
@@ -634,18 +418,15 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
634
418
  `;
635
419
  }
636
420
  _renderSingleInput(id) {
637
- const readOnly = !this._isDropDown || this.readOnly || this.nonEditable;
638
- const format = getDateTimeFormat(this.displayFormat) ?? this._defaultDisplayFormat;
639
- const prefix = isEmpty(this._prefixes) ? undefined : 'prefix';
640
- const suffix = isEmpty(this._suffixes) ? undefined : 'suffix';
421
+ const format = getDateTimeFormat(this.displayFormat) ?? this._localeDisplayFormat;
422
+ const hasClickHandler = !(this._isDropDown || this.readOnly);
641
423
  return html `
642
424
  <igc-date-range-input
643
425
  id=${id}
644
426
  .value=${live(this.value)}
645
427
  .placeholder=${this.placeholder}
646
- aria-haspopup="dialog"
647
428
  label=${this.label}
648
- ?readonly=${readOnly}
429
+ ?readonly=${this._isEditorReadOnly}
649
430
  ?required=${this.required}
650
431
  .outlined=${this.outlined}
651
432
  ?invalid=${live(this.invalid)}
@@ -657,15 +438,10 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
657
438
  @igcInput=${this._handleDateRangeInput}
658
439
  @igcChange=${this._handleDateRangeInputChange}
659
440
  @keydown=${this._handleEnterKeydown}
660
- @click=${this._isDropDown || this.readOnly
661
- ? nothing
662
- : this._handleInputClick}
441
+ @click=${bindIf(hasClickHandler, this._handleInputClick)}
663
442
  exportparts="input, label, prefix, suffix"
664
443
  >
665
- ${this._renderCalendarIcon()}
666
- <slot name="prefix" slot=${ifDefined(prefix)}></slot>
667
- ${this._renderClearIcon()}
668
- <slot name="suffix" slot=${ifDefined(suffix)}></slot>
444
+ ${this._renderEditorSlots()}
669
445
  </igc-date-range-input>
670
446
  ${this._renderHelperText()} ${this._renderPicker(id)}
671
447
  `;
@@ -677,48 +453,24 @@ let IgcDateRangePickerComponent = class IgcDateRangePickerComponent extends Form
677
453
  : this._renderInputs(`${id}-start`, `${id}-end`))}`;
678
454
  }
679
455
  };
456
+ __decorate([
457
+ state()
458
+ ], IgcDateRangePickerComponent.prototype, "_calendarRange", void 0);
680
459
  __decorate([
681
460
  queryAll(IgcDateTimeInputComponent.tagName)
682
461
  ], IgcDateRangePickerComponent.prototype, "_inputs", void 0);
683
462
  __decorate([
684
463
  query(IgcDateRangeInputComponent.tagName)
685
464
  ], IgcDateRangePickerComponent.prototype, "_input", void 0);
686
- __decorate([
687
- query(IgcCalendarComponent.tagName)
688
- ], IgcDateRangePickerComponent.prototype, "_calendar", void 0);
689
- __decorate([
690
- queryAssignedElements({ slot: 'prefix' })
691
- ], IgcDateRangePickerComponent.prototype, "_prefixes", void 0);
692
- __decorate([
693
- queryAssignedElements({ slot: 'prefix-start' })
694
- ], IgcDateRangePickerComponent.prototype, "_startPrefixes", void 0);
695
- __decorate([
696
- queryAssignedElements({ slot: 'prefix-end' })
697
- ], IgcDateRangePickerComponent.prototype, "_endPrefixes", void 0);
698
- __decorate([
699
- queryAssignedElements({ slot: 'suffix' })
700
- ], IgcDateRangePickerComponent.prototype, "_suffixes", void 0);
701
- __decorate([
702
- queryAssignedElements({ slot: 'suffix-start' })
703
- ], IgcDateRangePickerComponent.prototype, "_startSuffixes", void 0);
704
- __decorate([
705
- queryAssignedElements({ slot: 'suffix-end' })
706
- ], IgcDateRangePickerComponent.prototype, "_endSuffixes", void 0);
707
- __decorate([
708
- queryAssignedElements({ slot: 'actions' })
709
- ], IgcDateRangePickerComponent.prototype, "_actions", void 0);
710
- __decorate([
711
- queryAssignedElements({ slot: 'header-date' })
712
- ], IgcDateRangePickerComponent.prototype, "_headerDateSlotItems", void 0);
713
465
  __decorate([
714
466
  property({ converter: convertToDateRange })
715
467
  ], IgcDateRangePickerComponent.prototype, "value", null);
468
+ __decorate([
469
+ property({ type: Number, attribute: 'visible-months' })
470
+ ], IgcDateRangePickerComponent.prototype, "visibleMonths", null);
716
471
  __decorate([
717
472
  property({ attribute: false })
718
473
  ], IgcDateRangePickerComponent.prototype, "customRanges", void 0);
719
- __decorate([
720
- property()
721
- ], IgcDateRangePickerComponent.prototype, "mode", void 0);
722
474
  __decorate([
723
475
  property({ type: Boolean, reflect: true, attribute: 'use-two-inputs' })
724
476
  ], IgcDateRangePickerComponent.prototype, "useTwoInputs", void 0);
@@ -729,24 +481,9 @@ __decorate([
729
481
  attribute: 'use-predefined-ranges',
730
482
  })
731
483
  ], IgcDateRangePickerComponent.prototype, "usePredefinedRanges", void 0);
732
- __decorate([
733
- property()
734
- ], IgcDateRangePickerComponent.prototype, "locale", null);
735
484
  __decorate([
736
485
  property({ attribute: false })
737
486
  ], IgcDateRangePickerComponent.prototype, "resourceStrings", null);
738
- __decorate([
739
- property({ type: Boolean, reflect: true, attribute: 'readonly' })
740
- ], IgcDateRangePickerComponent.prototype, "readOnly", void 0);
741
- __decorate([
742
- property({ type: Boolean, reflect: true, attribute: 'non-editable' })
743
- ], IgcDateRangePickerComponent.prototype, "nonEditable", void 0);
744
- __decorate([
745
- property({ type: Boolean, reflect: true })
746
- ], IgcDateRangePickerComponent.prototype, "outlined", void 0);
747
- __decorate([
748
- property()
749
- ], IgcDateRangePickerComponent.prototype, "label", void 0);
750
487
  __decorate([
751
488
  property({ attribute: 'label-start' })
752
489
  ], IgcDateRangePickerComponent.prototype, "labelStart", void 0);
@@ -762,63 +499,6 @@ __decorate([
762
499
  __decorate([
763
500
  property({ attribute: 'placeholder-end' })
764
501
  ], IgcDateRangePickerComponent.prototype, "placeholderEnd", void 0);
765
- __decorate([
766
- property()
767
- ], IgcDateRangePickerComponent.prototype, "prompt", void 0);
768
- __decorate([
769
- property({ attribute: 'display-format' })
770
- ], IgcDateRangePickerComponent.prototype, "displayFormat", null);
771
- __decorate([
772
- property({ attribute: 'input-format' })
773
- ], IgcDateRangePickerComponent.prototype, "inputFormat", null);
774
- __decorate([
775
- property({ converter: convertToDate })
776
- ], IgcDateRangePickerComponent.prototype, "min", null);
777
- __decorate([
778
- property({ converter: convertToDate })
779
- ], IgcDateRangePickerComponent.prototype, "max", null);
780
- __decorate([
781
- property({ attribute: false })
782
- ], IgcDateRangePickerComponent.prototype, "disabledDates", null);
783
- __decorate([
784
- property({ type: Number, attribute: 'visible-months' })
785
- ], IgcDateRangePickerComponent.prototype, "visibleMonths", null);
786
- __decorate([
787
- property({ attribute: 'header-orientation', reflect: true })
788
- ], IgcDateRangePickerComponent.prototype, "headerOrientation", void 0);
789
- __decorate([
790
- property()
791
- ], IgcDateRangePickerComponent.prototype, "orientation", void 0);
792
- __decorate([
793
- property({ type: Boolean, reflect: true, attribute: 'hide-header' })
794
- ], IgcDateRangePickerComponent.prototype, "hideHeader", void 0);
795
- __decorate([
796
- property({ attribute: 'active-date', converter: convertToDate })
797
- ], IgcDateRangePickerComponent.prototype, "activeDate", null);
798
- __decorate([
799
- property({ type: Boolean, reflect: true, attribute: 'show-week-numbers' })
800
- ], IgcDateRangePickerComponent.prototype, "showWeekNumbers", void 0);
801
- __decorate([
802
- property({ type: Boolean, reflect: true, attribute: 'hide-outside-days' })
803
- ], IgcDateRangePickerComponent.prototype, "hideOutsideDays", void 0);
804
- __decorate([
805
- property({ attribute: false })
806
- ], IgcDateRangePickerComponent.prototype, "specialDates", void 0);
807
- __decorate([
808
- property({ attribute: 'week-start' })
809
- ], IgcDateRangePickerComponent.prototype, "weekStart", void 0);
810
- __decorate([
811
- watch('open')
812
- ], IgcDateRangePickerComponent.prototype, "_openChange", null);
813
- __decorate([
814
- watch('locale')
815
- ], IgcDateRangePickerComponent.prototype, "_updateDefaultMask", null);
816
- __decorate([
817
- watch('useTwoInputs')
818
- ], IgcDateRangePickerComponent.prototype, "_updateDateRange", null);
819
- __decorate([
820
- watch('mode')
821
- ], IgcDateRangePickerComponent.prototype, "_modeChanged", null);
822
502
  IgcDateRangePickerComponent = IgcDateRangePickerComponent_1 = __decorate([
823
503
  blazorAdditionalDependencies('IgcCalendarComponent, IgcDateTimeInputComponent, IgcDialogComponent, IgcIconComponent, IgcChipComponent, IgcInputComponent'),
824
504
  shadowOptions({ delegatesFocus: true })