igniteui-webcomponents 4.0.0 → 4.1.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 (642) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/components/accordion/accordion.d.ts +4 -0
  3. package/components/accordion/accordion.js +3 -3
  4. package/components/accordion/accordion.js.map +1 -1
  5. package/components/accordion/themes/accordion.base.css.js +1 -1
  6. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  7. package/components/avatar/avatar.d.ts +16 -4
  8. package/components/avatar/avatar.js +6 -6
  9. package/components/avatar/avatar.js.map +1 -1
  10. package/components/avatar/themes/avatar.base.css.js +1 -1
  11. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  12. package/components/avatar/themes/avatar.bootstrap.css.js +1 -1
  13. package/components/avatar/themes/avatar.bootstrap.css.js.map +1 -1
  14. package/components/badge/badge.d.ts +12 -3
  15. package/components/badge/badge.js.map +1 -1
  16. package/components/badge/themes/light/badge.base.css.js +1 -1
  17. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  18. package/components/badge/themes/light/badge.bootstrap.css.js +1 -1
  19. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  20. package/components/button/button-base.d.ts +15 -3
  21. package/components/button/button-base.js.map +1 -1
  22. package/components/button/button.d.ts +4 -1
  23. package/components/button/button.js.map +1 -1
  24. package/components/button/icon-button.d.ts +16 -4
  25. package/components/button/icon-button.js.map +1 -1
  26. package/components/button/themes/button/dark/button.fluent.css.js +1 -1
  27. package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
  28. package/components/button/themes/button/light/button.base.css.js +1 -1
  29. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  30. package/components/button/themes/button/light/button.bootstrap.css.js +1 -1
  31. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  32. package/components/button/themes/button/light/button.fluent.css.js +1 -1
  33. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  34. package/components/button/themes/button/light/button.indigo.css.js +1 -1
  35. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  36. package/components/button/themes/button/light/button.material.css.js +1 -1
  37. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  38. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js +1 -1
  39. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js.map +1 -1
  40. package/components/button/themes/icon-button/light/icon-button.base.css.js +1 -1
  41. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  42. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +1 -1
  43. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  44. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +1 -1
  45. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  46. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +1 -1
  47. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  48. package/components/button/themes/icon-button/light/icon-button.material.css.js +1 -1
  49. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  50. package/components/calendar/calendar.js +3 -3
  51. package/components/calendar/calendar.js.map +1 -1
  52. package/components/calendar/common/calendar-base.js.map +1 -1
  53. package/components/calendar/common/calendar.model.d.ts +1 -1
  54. package/components/calendar/days-view/days-view.js +6 -6
  55. package/components/calendar/days-view/days-view.js.map +1 -1
  56. package/components/calendar/months-view/months-view.js +3 -3
  57. package/components/calendar/months-view/months-view.js.map +1 -1
  58. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js +1 -1
  59. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +1 -1
  60. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js +1 -1
  61. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +1 -1
  62. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js +1 -1
  63. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  64. package/components/calendar/themes/calendar.base.css.js +1 -1
  65. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  66. package/components/calendar/themes/days-view.base.css.js +1 -1
  67. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  68. package/components/calendar/themes/fluent/calendar.fluent.css.js +1 -1
  69. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  70. package/components/calendar/themes/fluent/days-view.fluent.css.js +1 -1
  71. package/components/calendar/themes/fluent/days-view.fluent.css.js.map +1 -1
  72. package/components/calendar/themes/fluent/year-month-view.fluent.css.js +1 -1
  73. package/components/calendar/themes/fluent/year-month-view.fluent.css.js.map +1 -1
  74. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  75. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  76. package/components/calendar/years-view/years-view.js +3 -3
  77. package/components/calendar/years-view/years-view.js.map +1 -1
  78. package/components/card/card.actions.d.ts +4 -1
  79. package/components/card/card.actions.js.map +1 -1
  80. package/components/card/card.content.js.map +1 -1
  81. package/components/card/card.d.ts +4 -1
  82. package/components/card/card.header.js.map +1 -1
  83. package/components/card/card.js.map +1 -1
  84. package/components/card/themes/light/card.actions.bootstrap.css.js +1 -1
  85. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  86. package/components/card/themes/light/card.actions.material.css.js +1 -1
  87. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  88. package/components/card/themes/light/card.bootstrap.css.js +1 -1
  89. package/components/card/themes/light/card.bootstrap.css.js.map +1 -1
  90. package/components/card/themes/light/card.content.bootstrap.css.js +1 -1
  91. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  92. package/components/card/themes/light/card.content.indigo.css.js +1 -1
  93. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  94. package/components/card/themes/light/card.content.material.css.js +1 -1
  95. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  96. package/components/card/themes/light/card.fluent.css.js +1 -1
  97. package/components/card/themes/light/card.fluent.css.js.map +1 -1
  98. package/components/card/themes/light/card.header.bootstrap.css.js +1 -1
  99. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  100. package/components/card/themes/light/card.header.fluent.css.js +1 -1
  101. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  102. package/components/card/themes/light/card.header.indigo.css.js +1 -1
  103. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  104. package/components/card/themes/light/card.header.material.css.js +1 -1
  105. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  106. package/components/card/themes/light/card.material.css.js +1 -1
  107. package/components/card/themes/light/card.material.css.js.map +1 -1
  108. package/components/card/themes/light/card.media.material.css.js +1 -1
  109. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  110. package/components/checkbox/checkbox-base.d.ts +31 -7
  111. package/components/checkbox/checkbox-base.js +14 -1
  112. package/components/checkbox/checkbox-base.js.map +1 -1
  113. package/components/checkbox/checkbox.d.ts +4 -1
  114. package/components/checkbox/checkbox.js +1 -0
  115. package/components/checkbox/checkbox.js.map +1 -1
  116. package/components/checkbox/switch.js +1 -0
  117. package/components/checkbox/switch.js.map +1 -1
  118. package/components/checkbox/themes/dark/checkbox.fluent.css.js +1 -1
  119. package/components/checkbox/themes/dark/checkbox.fluent.css.js.map +1 -1
  120. package/components/checkbox/themes/dark/checkbox.indigo.css.js +1 -1
  121. package/components/checkbox/themes/dark/checkbox.indigo.css.js.map +1 -1
  122. package/components/checkbox/themes/dark/switch.fluent.css.js +1 -1
  123. package/components/checkbox/themes/dark/switch.fluent.css.js.map +1 -1
  124. package/components/checkbox/themes/dark/switch.indigo.css.js +1 -1
  125. package/components/checkbox/themes/dark/switch.indigo.css.js.map +1 -1
  126. package/components/checkbox/themes/light/checkbox.base.css.js +2 -8
  127. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  128. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +1 -1
  129. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  130. package/components/checkbox/themes/light/checkbox.fluent.css.js +1 -1
  131. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  132. package/components/checkbox/themes/light/checkbox.indigo.css.js +1 -1
  133. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  134. package/components/checkbox/themes/light/checkbox.material.css.js +1 -1
  135. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  136. package/components/checkbox/themes/light/switch.base.css.js +2 -8
  137. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  138. package/components/checkbox/themes/light/switch.bootstrap.css.js +1 -1
  139. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  140. package/components/checkbox/themes/light/switch.fluent.css.js +1 -1
  141. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  142. package/components/checkbox/themes/light/switch.indigo.css.js +1 -1
  143. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  144. package/components/checkbox/themes/light/switch.material.css.js +1 -1
  145. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  146. package/components/chip/chip.d.ts +20 -5
  147. package/components/chip/chip.js.map +1 -1
  148. package/components/chip/themes/chip.base.css.js +1 -1
  149. package/components/chip/themes/chip.base.css.js.map +1 -1
  150. package/components/chip/themes/chip.bootstrap.css.js +1 -1
  151. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  152. package/components/chip/themes/chip.fluent.css.js +1 -1
  153. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  154. package/components/chip/themes/chip.indigo.css.js +1 -1
  155. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  156. package/components/chip/themes/chip.material.css.js +1 -1
  157. package/components/chip/themes/chip.material.css.js.map +1 -1
  158. package/components/combo/combo-header.d.ts +11 -0
  159. package/components/combo/combo-header.js +23 -0
  160. package/components/combo/combo-header.js.map +1 -0
  161. package/components/combo/combo-item.d.ts +22 -0
  162. package/components/combo/combo-item.js +67 -0
  163. package/components/combo/combo-item.js.map +1 -0
  164. package/components/combo/combo-list.d.ts +11 -0
  165. package/components/combo/combo-list.js +14 -0
  166. package/components/combo/combo-list.js.map +1 -0
  167. package/components/combo/combo.d.ts +254 -0
  168. package/components/combo/combo.js +518 -0
  169. package/components/combo/combo.js.map +1 -0
  170. package/components/combo/controllers/data.d.ts +17 -0
  171. package/components/combo/controllers/data.js +36 -0
  172. package/components/combo/controllers/data.js.map +1 -0
  173. package/components/combo/controllers/navigation.d.ts +43 -0
  174. package/components/combo/controllers/navigation.js +155 -0
  175. package/components/combo/controllers/navigation.js.map +1 -0
  176. package/components/combo/controllers/selection.d.ts +23 -0
  177. package/components/combo/controllers/selection.js +157 -0
  178. package/components/combo/controllers/selection.js.map +1 -0
  179. package/components/combo/operations/filter.d.ts +4 -0
  180. package/components/combo/operations/filter.js +15 -0
  181. package/components/combo/operations/filter.js.map +1 -0
  182. package/components/combo/operations/group.d.ts +9 -0
  183. package/components/combo/operations/group.js +56 -0
  184. package/components/combo/operations/group.js.map +1 -0
  185. package/components/combo/themes/dark/combo.bootstrap.css.d.ts +1 -0
  186. package/components/combo/themes/dark/combo.bootstrap.css.js +3 -0
  187. package/components/combo/themes/dark/combo.bootstrap.css.js.map +1 -0
  188. package/components/combo/themes/dark/combo.fluent.css.d.ts +1 -0
  189. package/components/combo/themes/dark/combo.fluent.css.js +3 -0
  190. package/components/combo/themes/dark/combo.fluent.css.js.map +1 -0
  191. package/components/combo/themes/dark/combo.indigo.css.d.ts +1 -0
  192. package/components/combo/themes/dark/combo.indigo.css.js +3 -0
  193. package/components/combo/themes/dark/combo.indigo.css.js.map +1 -0
  194. package/components/combo/themes/dark/combo.material.css.d.ts +1 -0
  195. package/components/combo/themes/dark/combo.material.css.js +3 -0
  196. package/components/combo/themes/dark/combo.material.css.js.map +1 -0
  197. package/components/combo/themes/light/combo.base.css.d.ts +1 -0
  198. package/components/combo/themes/light/combo.base.css.js +174 -0
  199. package/components/combo/themes/light/combo.base.css.js.map +1 -0
  200. package/components/combo/themes/light/combo.bootstrap.css.d.ts +1 -0
  201. package/components/combo/themes/light/combo.bootstrap.css.js +94 -0
  202. package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -0
  203. package/components/combo/themes/light/combo.fluent.css.d.ts +1 -0
  204. package/components/combo/themes/light/combo.fluent.css.js +70 -0
  205. package/components/combo/themes/light/combo.fluent.css.js.map +1 -0
  206. package/components/combo/themes/light/combo.indigo.css.d.ts +1 -0
  207. package/components/combo/themes/light/combo.indigo.css.js +41 -0
  208. package/components/combo/themes/light/combo.indigo.css.js.map +1 -0
  209. package/components/combo/themes/light/combo.material.css.d.ts +1 -0
  210. package/components/combo/themes/light/combo.material.css.js +84 -0
  211. package/components/combo/themes/light/combo.material.css.js.map +1 -0
  212. package/components/combo/themes/light/header/combo-header.base.css.d.ts +1 -0
  213. package/components/combo/themes/light/header/combo-header.base.css.js +66 -0
  214. package/components/combo/themes/light/header/combo-header.base.css.js.map +1 -0
  215. package/components/combo/themes/light/item/combo-item.base.css.d.ts +1 -0
  216. package/components/combo/themes/light/item/combo-item.base.css.js +135 -0
  217. package/components/combo/themes/light/item/combo-item.base.css.js.map +1 -0
  218. package/components/combo/types.d.ts +39 -0
  219. package/components/combo/types.js +2 -0
  220. package/components/combo/types.js.map +1 -0
  221. package/components/combo/utils/converters.d.ts +3 -0
  222. package/components/combo/utils/converters.js +9 -0
  223. package/components/combo/utils/converters.js.map +1 -0
  224. package/components/common/decorators/index.d.ts +9 -9
  225. package/components/common/decorators/index.js +9 -9
  226. package/components/common/decorators/index.js.map +1 -1
  227. package/components/common/definitions/defineAllComponents.js +6 -0
  228. package/components/common/definitions/defineAllComponents.js.map +1 -1
  229. package/components/common/mixins/constructor.d.ts +2 -2
  230. package/components/common/mixins/event-emitter.d.ts +2 -2
  231. package/components/common/mixins/event-emitter.js.map +1 -1
  232. package/components/common/mixins/sizable.d.ts +1 -1
  233. package/components/common/mixins/sizable.js.map +1 -1
  234. package/components/common/types.d.ts +1 -1
  235. package/components/date-time-input/date-time-input.d.ts +27 -8
  236. package/components/date-time-input/date-time-input.js +23 -22
  237. package/components/date-time-input/date-time-input.js.map +1 -1
  238. package/components/dialog/dialog.d.ts +17 -4
  239. package/components/dialog/dialog.js.map +1 -1
  240. package/components/dialog/themes/light/dialog.base.css.js +1 -2
  241. package/components/dialog/themes/light/dialog.base.css.js.map +1 -1
  242. package/components/dialog/themes/light/dialog.bootstrap.css.js +1 -1
  243. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -1
  244. package/components/dialog/themes/light/dialog.fluent.css.js +1 -1
  245. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
  246. package/components/dialog/themes/light/dialog.indigo.css.js +1 -1
  247. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -1
  248. package/components/dialog/themes/light/dialog.material.css.js +1 -1
  249. package/components/dialog/themes/light/dialog.material.css.js.map +1 -1
  250. package/components/dropdown/dropdown-group.js.map +1 -1
  251. package/components/dropdown/dropdown-header.js.map +1 -1
  252. package/components/dropdown/dropdown-item.d.ts +4 -0
  253. package/components/dropdown/dropdown-item.js +1 -1
  254. package/components/dropdown/dropdown-item.js.map +1 -1
  255. package/components/dropdown/dropdown.d.ts +30 -7
  256. package/components/dropdown/dropdown.js +27 -27
  257. package/components/dropdown/dropdown.js.map +1 -1
  258. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
  259. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
  260. package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
  261. package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
  262. package/components/dropdown/themes/dark/dropdown.indigo.css.js +1 -1
  263. package/components/dropdown/themes/dark/dropdown.indigo.css.js.map +1 -1
  264. package/components/dropdown/themes/light/dropdown-group.base.css.js +1 -1
  265. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  266. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +1 -1
  267. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  268. package/components/dropdown/themes/light/dropdown-header.base.css.js +1 -1
  269. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  270. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js +1 -1
  271. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js.map +1 -1
  272. package/components/dropdown/themes/light/dropdown-header.fluent.css.js +1 -1
  273. package/components/dropdown/themes/light/dropdown-header.fluent.css.js.map +1 -1
  274. package/components/dropdown/themes/light/dropdown-item.base.css.js +1 -1
  275. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  276. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js +1 -1
  277. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js.map +1 -1
  278. package/components/dropdown/themes/light/dropdown-item.fluent.css.js +1 -1
  279. package/components/dropdown/themes/light/dropdown-item.fluent.css.js.map +1 -1
  280. package/components/dropdown/themes/light/dropdown-item.indigo.css.js +1 -1
  281. package/components/dropdown/themes/light/dropdown-item.indigo.css.js.map +1 -1
  282. package/components/dropdown/themes/light/dropdown.base.css.js +1 -1
  283. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  284. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
  285. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  286. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
  287. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  288. package/components/dropdown/themes/light/dropdown.indigo.css.js +1 -1
  289. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  290. package/components/expansion-panel/expansion-panel.d.ts +12 -3
  291. package/components/expansion-panel/expansion-panel.js.map +1 -1
  292. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +1 -1
  293. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  294. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +1 -1
  295. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  296. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +1 -1
  297. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
  298. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +1 -1
  299. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
  300. package/components/form/form.js +1 -0
  301. package/components/form/form.js.map +1 -1
  302. package/components/icon/icon.d.ts +6 -10
  303. package/components/icon/icon.js +17 -25
  304. package/components/icon/icon.js.map +1 -1
  305. package/components/icon/icon.material.css.js +3 -3
  306. package/components/icon/icon.material.css.js.map +1 -1
  307. package/components/icon/icon.registry.js +9 -5
  308. package/components/icon/icon.registry.js.map +1 -1
  309. package/components/input/input-base.d.ts +32 -7
  310. package/components/input/input-base.js.map +1 -1
  311. package/components/input/input.d.ts +48 -11
  312. package/components/input/input.js.map +1 -1
  313. package/components/input/themes/dark/input.dark.indigo.css.js +1 -1
  314. package/components/input/themes/dark/input.dark.indigo.css.js.map +1 -1
  315. package/components/input/themes/dark/input.dark.material.css.js +1 -1
  316. package/components/input/themes/dark/input.dark.material.css.js.map +1 -1
  317. package/components/input/themes/light/input.base.css.js +8 -2
  318. package/components/input/themes/light/input.base.css.js.map +1 -1
  319. package/components/input/themes/light/input.bootstrap.css.js +32 -5
  320. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  321. package/components/input/themes/light/input.fluent.css.js +23 -5
  322. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  323. package/components/input/themes/light/input.indigo.css.js +16 -9
  324. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  325. package/components/input/themes/light/input.material.css.js +59 -37
  326. package/components/input/themes/light/input.material.css.js.map +1 -1
  327. package/components/list/list-header.js.map +1 -1
  328. package/components/list/list-item.js.map +1 -1
  329. package/components/list/list.js.map +1 -1
  330. package/components/list/themes/dark/list.bootstrap.css.js +1 -1
  331. package/components/list/themes/dark/list.bootstrap.css.js.map +1 -1
  332. package/components/list/themes/dark/list.fluent.css.js +1 -1
  333. package/components/list/themes/dark/list.fluent.css.js.map +1 -1
  334. package/components/list/themes/dark/list.indigo.css.js +1 -1
  335. package/components/list/themes/dark/list.indigo.css.js.map +1 -1
  336. package/components/list/themes/light/list-header.base.css.js +1 -1
  337. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  338. package/components/list/themes/light/list-header.indigo.css.js +1 -1
  339. package/components/list/themes/light/list-header.indigo.css.js.map +1 -1
  340. package/components/list/themes/light/list-item.base.css.js +1 -1
  341. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  342. package/components/list/themes/light/list-item.bootstrap.css.js +1 -1
  343. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  344. package/components/list/themes/light/list-item.fluent.css.js +1 -1
  345. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  346. package/components/list/themes/light/list-item.indigo.css.js +1 -1
  347. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  348. package/components/list/themes/light/list.base.css.js +1 -1
  349. package/components/list/themes/light/list.base.css.js.map +1 -1
  350. package/components/list/themes/light/list.bootstrap.css.js +1 -1
  351. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  352. package/components/mask-input/mask-input-base.d.ts +6 -7
  353. package/components/mask-input/mask-input-base.js +22 -13
  354. package/components/mask-input/mask-input-base.js.map +1 -1
  355. package/components/mask-input/mask-input.d.ts +11 -10
  356. package/components/mask-input/mask-input.js +17 -23
  357. package/components/mask-input/mask-input.js.map +1 -1
  358. package/components/mask-input/mask-parser.d.ts +3 -1
  359. package/components/mask-input/mask-parser.js +16 -0
  360. package/components/mask-input/mask-parser.js.map +1 -1
  361. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  362. package/components/nav-drawer/nav-drawer-item.d.ts +8 -2
  363. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  364. package/components/nav-drawer/nav-drawer.d.ts +8 -2
  365. package/components/nav-drawer/nav-drawer.js.map +1 -1
  366. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js +1 -1
  367. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js.map +1 -1
  368. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js +1 -1
  369. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js.map +1 -1
  370. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js +1 -1
  371. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js.map +1 -1
  372. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js +1 -1
  373. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js.map +1 -1
  374. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js +1 -1
  375. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js.map +1 -1
  376. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js +1 -1
  377. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +1 -1
  378. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +1 -1
  379. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +1 -1
  380. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js +1 -1
  381. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +1 -1
  382. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +1 -1
  383. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -1
  384. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +1 -1
  385. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -1
  386. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +1 -1
  387. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  388. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +1 -1
  389. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  390. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +1 -1
  391. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  392. package/components/navbar/navbar.js.map +1 -1
  393. package/components/navbar/themes/light/navbar.base.css.js +1 -1
  394. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  395. package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
  396. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  397. package/components/navbar/themes/light/navbar.fluent.css.js +1 -1
  398. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  399. package/components/navbar/themes/light/navbar.indigo.css.js +1 -1
  400. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  401. package/components/progress/base.d.ts +25 -6
  402. package/components/progress/base.js.map +1 -1
  403. package/components/progress/circular-gradient.d.ts +12 -3
  404. package/components/progress/circular-gradient.js.map +1 -1
  405. package/components/progress/circular-progress.js.map +1 -1
  406. package/components/progress/linear-progress.d.ts +8 -2
  407. package/components/progress/linear-progress.js.map +1 -1
  408. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  409. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  410. package/components/progress/themes/circular/circular.progress.bootstrap.css.js +1 -1
  411. package/components/progress/themes/circular/circular.progress.bootstrap.css.js.map +1 -1
  412. package/components/progress/themes/circular/circular.progress.fluent.css.js +1 -1
  413. package/components/progress/themes/circular/circular.progress.fluent.css.js.map +1 -1
  414. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  415. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  416. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +1 -1
  417. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  418. package/components/progress/themes/linear/linear.progress.fluent.css.js +1 -1
  419. package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
  420. package/components/progress/themes/linear/linear.progress.indigo.css.js +1 -1
  421. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  422. package/components/radio/radio.d.ts +35 -8
  423. package/components/radio/radio.js +15 -1
  424. package/components/radio/radio.js.map +1 -1
  425. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  426. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  427. package/components/radio/themes/dark/radio.indigo.css.js +1 -1
  428. package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
  429. package/components/radio/themes/light/radio.base.css.js +2 -8
  430. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  431. package/components/radio/themes/light/radio.bootstrap.css.js +1 -1
  432. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  433. package/components/radio/themes/light/radio.fluent.css.js +2 -1
  434. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  435. package/components/radio/themes/light/radio.indigo.css.js +1 -1
  436. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  437. package/components/radio/themes/light/radio.material.css.js +1 -1
  438. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  439. package/components/radio-group/radio-group.base.css.js +1 -1
  440. package/components/radio-group/radio-group.base.css.js.map +1 -1
  441. package/components/radio-group/radio-group.d.ts +4 -0
  442. package/components/radio-group/radio-group.js.map +1 -1
  443. package/components/rating/rating-symbol.base.css.js +1 -1
  444. package/components/rating/rating-symbol.base.css.js.map +1 -1
  445. package/components/rating/rating-symbol.d.ts +1 -0
  446. package/components/rating/rating-symbol.js +4 -0
  447. package/components/rating/rating-symbol.js.map +1 -1
  448. package/components/rating/rating.base.css.js +1 -1
  449. package/components/rating/rating.base.css.js.map +1 -1
  450. package/components/rating/rating.bootstrap.css.js +1 -1
  451. package/components/rating/rating.bootstrap.css.js.map +1 -1
  452. package/components/rating/rating.d.ts +31 -7
  453. package/components/rating/rating.fluent.css.js +1 -1
  454. package/components/rating/rating.fluent.css.js.map +1 -1
  455. package/components/rating/rating.indigo.css.js +1 -1
  456. package/components/rating/rating.indigo.css.js.map +1 -1
  457. package/components/rating/rating.js +15 -15
  458. package/components/rating/rating.js.map +1 -1
  459. package/components/select/select-group.d.ts +4 -0
  460. package/components/select/select-group.js.map +1 -1
  461. package/components/select/select.d.ts +52 -13
  462. package/components/select/select.js +17 -7
  463. package/components/select/select.js.map +1 -1
  464. package/components/select/themes/dark/select.fluent.css.js +1 -1
  465. package/components/select/themes/dark/select.fluent.css.js.map +1 -1
  466. package/components/select/themes/dark/select.indigo.css.js +1 -1
  467. package/components/select/themes/dark/select.indigo.css.js.map +1 -1
  468. package/components/select/themes/dark/select.material.css.js +1 -1
  469. package/components/select/themes/dark/select.material.css.js.map +1 -1
  470. package/components/select/themes/light/select.base.css.js +5 -1
  471. package/components/select/themes/light/select.base.css.js.map +1 -1
  472. package/components/select/themes/light/select.bootstrap.css.js +3 -5
  473. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  474. package/components/select/themes/light/select.fluent.css.js +1 -1
  475. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  476. package/components/select/themes/light/select.indigo.css.js +5 -1
  477. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  478. package/components/select/themes/light/select.material.css.js +7 -10
  479. package/components/select/themes/light/select.material.css.js.map +1 -1
  480. package/components/slider/range-slider.d.ts +4 -0
  481. package/components/slider/range-slider.js.map +1 -1
  482. package/components/slider/slider-base.d.ts +16 -0
  483. package/components/slider/slider-base.js +70 -70
  484. package/components/slider/slider-base.js.map +1 -1
  485. package/components/slider/slider.d.ts +2 -0
  486. package/components/slider/slider.js.map +1 -1
  487. package/components/slider/themes/dark/slider.bootstrap.css.js +1 -1
  488. package/components/slider/themes/dark/slider.bootstrap.css.js.map +1 -1
  489. package/components/slider/themes/dark/slider.fluent.css.js +1 -1
  490. package/components/slider/themes/dark/slider.fluent.css.js.map +1 -1
  491. package/components/slider/themes/dark/slider.indigo.css.js +1 -1
  492. package/components/slider/themes/dark/slider.indigo.css.js.map +1 -1
  493. package/components/slider/themes/light/slider.base.css.js +1 -1
  494. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  495. package/components/slider/themes/light/slider.bootstrap.css.js +1 -1
  496. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  497. package/components/slider/themes/light/slider.fluent.css.js +1 -1
  498. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  499. package/components/slider/themes/light/slider.indigo.css.js +1 -1
  500. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  501. package/components/slider/themes/light/slider.material.css.js +1 -1
  502. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  503. package/components/snackbar/snackbar.d.ts +16 -4
  504. package/components/snackbar/snackbar.js.map +1 -1
  505. package/components/snackbar/themes/dark/snackbar.indigo.css.js +1 -1
  506. package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -1
  507. package/components/snackbar/themes/light/snackbar.base.css.js +1 -1
  508. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  509. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +1 -1
  510. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
  511. package/components/snackbar/themes/light/snackbar.fluent.css.js +1 -1
  512. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
  513. package/components/snackbar/themes/light/snackbar.indigo.css.js +1 -1
  514. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  515. package/components/stepper/step.d.ts +94 -0
  516. package/components/stepper/step.js +211 -0
  517. package/components/stepper/step.js.map +1 -0
  518. package/components/stepper/stepper.common.d.ts +11 -0
  519. package/components/stepper/stepper.common.js +2 -0
  520. package/components/stepper/stepper.common.js.map +1 -0
  521. package/components/stepper/stepper.d.ts +110 -0
  522. package/components/stepper/stepper.js +345 -0
  523. package/components/stepper/stepper.js.map +1 -0
  524. package/components/stepper/themes/step/dark/step.bootstrap.css.d.ts +1 -0
  525. package/components/stepper/themes/step/dark/step.bootstrap.css.js +3 -0
  526. package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -0
  527. package/components/stepper/themes/step/dark/step.fluent.css.d.ts +1 -0
  528. package/components/stepper/themes/step/dark/step.fluent.css.js +3 -0
  529. package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -0
  530. package/components/stepper/themes/step/dark/step.indigo.css.d.ts +1 -0
  531. package/components/stepper/themes/step/dark/step.indigo.css.js +3 -0
  532. package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -0
  533. package/components/stepper/themes/step/dark/step.material.css.d.ts +1 -0
  534. package/components/stepper/themes/step/dark/step.material.css.js +3 -0
  535. package/components/stepper/themes/step/dark/step.material.css.js.map +1 -0
  536. package/components/stepper/themes/step/light/step.base.css.d.ts +1 -0
  537. package/components/stepper/themes/step/light/step.base.css.js +456 -0
  538. package/components/stepper/themes/step/light/step.base.css.js.map +1 -0
  539. package/components/stepper/themes/step/light/step.bootstrap.css.d.ts +1 -0
  540. package/components/stepper/themes/step/light/step.bootstrap.css.js +23 -0
  541. package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -0
  542. package/components/stepper/themes/step/light/step.fluent.css.d.ts +1 -0
  543. package/components/stepper/themes/step/light/step.fluent.css.js +16 -0
  544. package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -0
  545. package/components/stepper/themes/step/light/step.indigo.css.d.ts +1 -0
  546. package/components/stepper/themes/step/light/step.indigo.css.js +29 -0
  547. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -0
  548. package/components/stepper/themes/step/light/step.material.css.d.ts +1 -0
  549. package/components/stepper/themes/step/light/step.material.css.js +8 -0
  550. package/components/stepper/themes/step/light/step.material.css.js.map +1 -0
  551. package/components/stepper/themes/stepper/stepper.base.css.d.ts +1 -0
  552. package/components/stepper/themes/stepper/stepper.base.css.js +142 -0
  553. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -0
  554. package/components/stepper/themes/stepper/stepper.bootstrap.css.d.ts +1 -0
  555. package/components/stepper/themes/stepper/stepper.bootstrap.css.js +46 -0
  556. package/components/stepper/themes/stepper/stepper.bootstrap.css.js.map +1 -0
  557. package/components/stepper/themes/stepper/stepper.fluent.css.d.ts +1 -0
  558. package/components/stepper/themes/stepper/stepper.fluent.css.js +40 -0
  559. package/components/stepper/themes/stepper/stepper.fluent.css.js.map +1 -0
  560. package/components/stepper/themes/stepper/stepper.indigo.css.d.ts +1 -0
  561. package/components/stepper/themes/stepper/stepper.indigo.css.js +40 -0
  562. package/components/stepper/themes/stepper/stepper.indigo.css.js.map +1 -0
  563. package/components/tabs/tab.d.ts +12 -3
  564. package/components/tabs/tab.js +1 -1
  565. package/components/tabs/tab.js.map +1 -1
  566. package/components/tabs/tabs.d.ts +5 -1
  567. package/components/tabs/tabs.js.map +1 -1
  568. package/components/tabs/themes/dark/tab.dark.base.css.js +1 -1
  569. package/components/tabs/themes/dark/tab.dark.base.css.js.map +1 -1
  570. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js +1 -1
  571. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js.map +1 -1
  572. package/components/tabs/themes/light/tab-panel.base.css.js +1 -1
  573. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  574. package/components/tabs/themes/light/tab.base.css.js +1 -1
  575. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  576. package/components/tabs/themes/light/tab.bootstrap.css.js +1 -1
  577. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  578. package/components/tabs/themes/light/tab.fluent.css.js +1 -1
  579. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  580. package/components/tabs/themes/light/tab.indigo.css.js +1 -1
  581. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  582. package/components/tabs/themes/light/tabs.base.css.js +1 -1
  583. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  584. package/components/tabs/themes/light/tabs.bootstrap.css.js +1 -1
  585. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -1
  586. package/components/tabs/themes/light/tabs.fluent.css.js +1 -1
  587. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -1
  588. package/components/tabs/themes/light/tabs.indigo.css.js +1 -1
  589. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -1
  590. package/components/toast/themes/toast.base.css.js +1 -1
  591. package/components/toast/themes/toast.base.css.js.map +1 -1
  592. package/components/toast/themes/toast.bootstrap.css.js +1 -1
  593. package/components/toast/themes/toast.bootstrap.css.js.map +1 -1
  594. package/components/toast/themes/toast.fluent.css.js +1 -1
  595. package/components/toast/themes/toast.fluent.css.js.map +1 -1
  596. package/components/toast/themes/toast.indigo.css.js +1 -1
  597. package/components/toast/themes/toast.indigo.css.js.map +1 -1
  598. package/components/toast/toast.d.ts +13 -6
  599. package/components/toast/toast.js.map +1 -1
  600. package/components/toggle/toggle.controller.d.ts +1 -1
  601. package/components/toggle/toggle.controller.js +13 -13
  602. package/components/toggle/toggle.controller.js.map +1 -1
  603. package/components/toggle/toggle.directive.js +10 -10
  604. package/components/toggle/toggle.directive.js.map +1 -1
  605. package/components/toggle/types.d.ts +1 -1
  606. package/components/tree/themes/dark/tree-item.bootstrap.css.js +1 -1
  607. package/components/tree/themes/dark/tree-item.bootstrap.css.js.map +1 -1
  608. package/components/tree/themes/dark/tree-item.fluent.css.js +1 -1
  609. package/components/tree/themes/dark/tree-item.fluent.css.js.map +1 -1
  610. package/components/tree/themes/dark/tree-item.indigo.css.js +1 -1
  611. package/components/tree/themes/dark/tree-item.indigo.css.js.map +1 -1
  612. package/components/tree/themes/light/tree-item.base.css.js +1 -1
  613. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  614. package/components/tree/themes/light/tree-item.bootstrap.css.js +1 -1
  615. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  616. package/components/tree/themes/light/tree-item.fluent.css.js +1 -1
  617. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  618. package/components/tree/themes/light/tree-item.indigo.css.js +1 -1
  619. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  620. package/components/tree/themes/light/tree.base.css.js +1 -1
  621. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  622. package/components/tree/tree-item.d.ts +25 -6
  623. package/components/tree/tree-item.js.map +1 -1
  624. package/components/tree/tree.d.ts +12 -3
  625. package/components/tree/tree.js +8 -8
  626. package/components/tree/tree.js.map +1 -1
  627. package/custom-elements.json +870 -2
  628. package/index.d.ts +5 -0
  629. package/index.js +3 -0
  630. package/index.js.map +1 -1
  631. package/package.json +5 -3
  632. package/themes/dark/bootstrap.css +6 -2
  633. package/themes/dark/fluent.css +11 -7
  634. package/themes/dark/indigo.css +6 -2
  635. package/themes/dark/material.css +6 -2
  636. package/themes/light/bootstrap.css +1 -1
  637. package/themes/light/fluent.css +6 -6
  638. package/themes/light/indigo.css +1 -1
  639. package/themes/light/material.css +1 -1
  640. package/theming/theming-event.d.ts +1 -1
  641. package/theming/types.d.ts +2 -2
  642. package/vscode-html-custom-data.json +337 -19
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-input.js","sourceRoot":"","sources":["../../../src/components/date-time-input/date-time-input.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { live } from 'lit/directives/live.js';\nimport {\n DatePartDeltas,\n DatePartInfo,\n DateParts,\n DatePart,\n DateTimeUtil,\n} from './date-util.js';\nimport { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { IgcMaskInputBaseComponent } from '../mask-input/mask-input-base.js';\nimport { partNameMap } from '../common/util.js';\nimport { IgcInputEventMap } from '../input/input-base.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { AbstractConstructor } from '../common/mixins/constructor.js';\n\nexport interface IgcDateTimeInputEventMap\n extends Omit<IgcInputEventMap, 'igcChange'> {\n igcChange: CustomEvent<Date | null>;\n}\n\n/**\n * A date time input is an input field that lets you set and edit the date and time in a chosen input element\n * using customizable display and input formats.\n *\n * @element igc-date-time-input\n *\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot helper-text - Renders content below the input.\n *\n * @fires igcInput - Emitted when the control input receives user input.\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart container - The main wrapper that holds all main input elements.\n * @csspart input - The native input element.\n * @csspart label - The native label element.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n * @csspart helper-text - The helper text wrapper.\n */\nexport default class IgcDateTimeInputComponent extends EventEmitterMixin<\n IgcDateTimeInputEventMap,\n AbstractConstructor<IgcMaskInputBaseComponent>\n>(IgcMaskInputBaseComponent) {\n public static readonly tagName = 'igc-date-time-input';\n\n protected _defaultMask!: string;\n protected _value!: Date | null;\n\n private _oldValue: Date | null = null;\n private _inputDateParts!: DatePartInfo[];\n private _inputFormat!: string;\n private _datePartDeltas: DatePartDeltas = {\n date: 1,\n month: 1,\n year: 1,\n hours: 1,\n minutes: 1,\n seconds: 1,\n };\n\n /** The date format to apply on the input. */\n @property({ attribute: 'input-format' })\n public get inputFormat(): string {\n return this._inputFormat || this._defaultMask;\n }\n\n public set inputFormat(val: string) {\n if (val) {\n this.setMask(val);\n this._inputFormat = val;\n }\n }\n\n /** The value of the input. */\n @property({\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n @blazorTwoWayBind('igcChange', 'detail')\n public get value(): Date | null {\n return this._value;\n }\n\n public set value(val: Date | null) {\n this._value = val\n ? DateTimeUtil.isValidDate(val)\n ? val\n : DateTimeUtil.parseIsoDate(val)\n : null;\n\n this.updateMask();\n this.validate();\n }\n\n /** The minimum value required for the input to remain valid. */\n @property({\n attribute: 'min-value',\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n public minValue!: Date | null;\n\n /** The maximum value required for the input to remain valid. */\n @property({\n attribute: 'max-value',\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n public maxValue!: Date | null;\n\n /**\n * Format to display the value in when not editing.\n * Defaults to the input format if not set.\n */\n @property({ attribute: 'display-format' })\n public displayFormat!: string;\n\n /**\n * Delta values used to increment or decrement each date part on step actions.\n * All values default to `1`.\n */\n @property({ attribute: false })\n public spinDelta!: DatePartDeltas;\n\n /** Sets whether to loop over the currently spun segment. */\n @property({ type: Boolean, attribute: 'spin-loop' })\n public spinLoop = true;\n\n /** The locale settings used to display the value. */\n @property()\n public locale = 'en';\n\n @watch('locale', { waitUntilFirstUpdate: true })\n protected setDefaultMask(): void {\n if (!this._inputFormat) {\n this.updateDefaultMask();\n this.setMask(this._defaultMask);\n }\n\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('displayFormat', { waitUntilFirstUpdate: true })\n protected setDisplayFormat(): void {\n if (this.displayFormat) {\n if (this.value) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value!,\n this.locale,\n this.displayFormat,\n true\n );\n }\n }\n }\n\n @watch('prompt', { waitUntilFirstUpdate: true })\n protected promptChange(): void {\n if (!this.prompt) {\n this.prompt = this.parser.prompt;\n } else {\n this.parser.prompt = this.prompt;\n }\n }\n\n @watch('required', { waitUntilFirstUpdate: true })\n @watch('disabled', { waitUntilFirstUpdate: true })\n @watch('value', { waitUntilFirstUpdate: true })\n protected handleInvalidState(): void {\n this.updateComplete.then(\n () => (this.invalid = !this.input.checkValidity())\n );\n }\n\n @watch('maxValue')\n @watch('minValue')\n protected validate() {\n if (!this.value) {\n return null;\n }\n\n let errors = {};\n\n if (this.minValue || this.maxValue) {\n errors = DateTimeUtil.validateMinMax(\n this.value,\n this.minValue!,\n this.maxValue!,\n this.hasTimeParts,\n this.hasDateParts\n );\n\n if (Object.keys(errors).length > 0) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n return errors;\n }\n\n private get hasDateParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n\n return parts.some(\n (p) =>\n p.type === DateParts.Date ||\n p.type === DateParts.Month ||\n p.type === DateParts.Year\n );\n }\n\n private get hasTimeParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n return parts.some(\n (p) =>\n p.type === DateParts.Hours ||\n p.type === DateParts.Minutes ||\n p.type === DateParts.Seconds\n );\n }\n\n private get targetDatePart(): DatePart | undefined {\n let result;\n\n if (this.hasFocus) {\n const partType = this._inputDateParts.find(\n (p) =>\n p.start <= this.inputSelection.start &&\n this.inputSelection.start <= p.end &&\n p.type !== DateParts.Literal\n )?.type as string as DatePart;\n\n if (partType) {\n result = partType;\n }\n } else {\n if (this._inputDateParts.some((p) => p.type === DateParts.Date)) {\n result = DatePart.Date;\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Hours)) {\n result = DatePart.Hours;\n } else {\n result = this._inputDateParts[0].type as string as DatePart;\n }\n }\n\n return result;\n }\n\n private get datePartDeltas(): DatePartDeltas {\n return Object.assign({}, this._datePartDeltas, this.spinDelta);\n }\n\n constructor() {\n super();\n this.addEventListener('wheel', this.onWheel);\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateDefaultMask();\n this.setMask(this.inputFormat);\n if (this.value) {\n this.updateMask();\n }\n }\n\n /** Checks for validity of the control and shows the browser message if it's invalid. */\n public reportValidity() {\n const state = this._value\n ? Object.keys(this.validate()!).length === 0\n : this.input.reportValidity();\n\n this.invalid = !state;\n return state;\n }\n\n /** Check for validity of the control */\n public checkValidity() {\n if (this.disabled) {\n return this.input.checkValidity();\n }\n\n if (!this._value) {\n return !this.required;\n }\n\n return (\n this.input.checkValidity() && Object.keys(this.validate()!).length === 0\n );\n }\n\n /** Increments a date/time portion. */\n public stepUp(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const newValue = this.trySpinValue(targetPart, delta);\n this.value = newValue;\n this.handleInput();\n }\n\n /** Decrements a date/time portion. */\n public stepDown(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const newValue = this.trySpinValue(targetPart, delta, true);\n this.value = newValue;\n this.handleInput();\n }\n\n /** Clears the input element of user input. */\n public clear(): void {\n this.maskedValue = '';\n this.value = null;\n }\n\n protected updateMask() {\n if (this.hasFocus) {\n this.maskedValue = this.getMaskedValue();\n } else {\n if (!this.value || !DateTimeUtil.isValidDate(this.value)) {\n this.maskedValue = '';\n return;\n }\n\n const format = this.displayFormat || this.inputFormat;\n\n if (this.displayFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format,\n true\n );\n } else if (this.inputFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format\n );\n } else {\n this.maskedValue = this.value.toLocaleString();\n }\n }\n }\n\n protected handleChange() {\n this.emitEvent('igcChange', { detail: this.value });\n this.invalid = !this.checkValidity();\n }\n\n protected override handleInput() {\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n\n protected handleDragLeave() {\n if (!this.hasFocus) {\n this.updateMask();\n }\n }\n\n protected handleDragEnter() {\n if (!this.hasFocus) {\n this.maskedValue = this.getMaskedValue();\n }\n }\n\n protected updateInput(part: string, start: number, finish: number) {\n const { value, end } = this.parser.replace(\n this.maskedValue,\n part,\n start,\n finish\n );\n\n this.maskedValue = value;\n\n this.updateValue();\n this.requestUpdate();\n\n if (start !== this.inputFormat.length) {\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n\n this.updateComplete.then(() => this.input.setSelectionRange(end, end));\n }\n\n private trySpinValue(\n datePart: DatePart,\n delta?: number,\n negative = false\n ): Date {\n if (!delta) {\n // default to 1 if a delta is set to 0 or any other falsy value\n delta = this.datePartDeltas[datePart as keyof DatePartDeltas] || 1;\n }\n\n const spinValue = negative ? -Math.abs(delta) : Math.abs(delta);\n return this.spinValue(datePart, spinValue);\n }\n\n private spinValue(datePart: DatePart, delta: number): Date {\n if (!this.value || !DateTimeUtil.isValidDate(this.value)) {\n return new Date();\n }\n\n const newDate = new Date(this.value.getTime());\n let formatPart, amPmFromMask;\n switch (datePart) {\n case DatePart.Date:\n DateTimeUtil.spinDate(delta, newDate, this.spinLoop);\n break;\n case DatePart.Month:\n DateTimeUtil.spinMonth(delta, newDate, this.spinLoop);\n break;\n case DatePart.Year:\n DateTimeUtil.spinYear(delta, newDate);\n break;\n case DatePart.Hours:\n DateTimeUtil.spinHours(delta, newDate, this.spinLoop);\n break;\n case DatePart.Minutes:\n DateTimeUtil.spinMinutes(delta, newDate, this.spinLoop);\n break;\n case DatePart.Seconds:\n DateTimeUtil.spinSeconds(delta, newDate, this.spinLoop);\n break;\n case DatePart.AmPm:\n formatPart = this._inputDateParts.find(\n (dp) => dp.type === DateParts.AmPm\n );\n if (formatPart !== undefined) {\n amPmFromMask = this.maskedValue.substring(\n formatPart!.start,\n formatPart!.end\n );\n return DateTimeUtil.spinAmPm(newDate, this.value, amPmFromMask);\n }\n break;\n }\n\n return newDate;\n }\n\n private onWheel(event: WheelEvent) {\n if (!this.hasFocus) {\n return;\n }\n\n this.selection = this.inputSelection;\n\n event.preventDefault();\n event.stopPropagation();\n\n if (event.deltaY > 0) {\n this.stepDown();\n } else {\n this.stepUp();\n }\n\n this.updateComplete.then(() =>\n this.setSelectionRange(this.selection.start, this.selection.end)\n );\n }\n\n private updateDefaultMask(): void {\n this._defaultMask = DateTimeUtil.getDefaultMask(this.locale);\n }\n\n private setMask(val: string): void {\n const oldFormat = this._inputDateParts?.map((p) => p.format).join('');\n this._inputDateParts = DateTimeUtil.parseDateTimeFormat(val);\n val = this._inputDateParts.map((p) => p.format).join('');\n\n this._defaultMask = val;\n\n const newMask = (val || DateTimeUtil.DEFAULT_INPUT_FORMAT).replace(\n new RegExp(/(?=[^t])[\\w]/, 'g'),\n '0'\n );\n\n this._mask =\n newMask.indexOf('tt') !== -1\n ? newMask.replace(new RegExp('tt', 'g'), 'LL')\n : newMask;\n\n this.parser.mask = this._mask;\n this.parser.prompt = this.prompt;\n\n if (!this.placeholder || oldFormat === this.placeholder) {\n this.placeholder = val;\n }\n }\n\n private parseDate(val: string) {\n if (!val) {\n return null;\n }\n\n return DateTimeUtil.parseValueFromMask(\n val,\n this._inputDateParts,\n this.prompt\n );\n }\n\n private getMaskedValue(): string {\n let mask = this.emptyMask;\n\n if (DateTimeUtil.isValidDate(this.value)) {\n for (const part of this._inputDateParts) {\n if (part.type === DateParts.Literal) {\n continue;\n }\n\n const targetValue = DateTimeUtil.getPartValue(\n part,\n part.format.length,\n this.value\n );\n\n mask = this.parser.replace(\n mask,\n targetValue,\n part.start,\n part.end\n ).value;\n }\n return mask;\n }\n\n return this.maskedValue === '' ? mask : this.maskedValue;\n }\n\n private isComplete(): boolean {\n return this.maskedValue.indexOf(this.prompt) === -1;\n }\n\n private updateValue(): void {\n if (this.isComplete()) {\n const parsedDate = this.parseDate(this.maskedValue);\n if (DateTimeUtil.isValidDate(parsedDate)) {\n this.value = parsedDate;\n } else {\n this.value = null;\n }\n } else {\n this.value = null;\n }\n }\n\n private getNewPosition(value: string, direction = 0): number {\n const literals = this._inputDateParts.filter(\n (p) => p.type === DateParts.Literal\n );\n let cursorPos = this.selection.start;\n\n if (!direction) {\n do {\n cursorPos = cursorPos > 0 ? --cursorPos : cursorPos;\n } while (!literals.some((l) => l.end === cursorPos) && cursorPos > 0);\n return cursorPos;\n } else {\n do {\n cursorPos++;\n } while (\n !literals.some((l) => l.start === cursorPos) &&\n cursorPos < value.length\n );\n return cursorPos;\n }\n }\n\n protected override handleFocus() {\n this.hasFocus = true;\n this._oldValue = this.value;\n this.updateMask();\n this.emitEvent('igcFocus');\n }\n\n protected override handleBlur() {\n this.hasFocus = false;\n\n if (!this.isComplete() && this.maskedValue !== this.emptyMask) {\n const parse = this.parseDate(this.maskedValue);\n\n if (parse) {\n this.value = parse;\n } else {\n this.value = null;\n this.maskedValue = '';\n }\n } else {\n this.updateMask();\n }\n\n if (this._oldValue !== this.value) {\n this.handleChange();\n }\n\n this.emitEvent('igcBlur');\n }\n\n protected override handleKeydown(e: KeyboardEvent) {\n super.handleKeydown(e);\n\n const key = e.key;\n\n switch (key) {\n case 'ArrowLeft':\n case 'ArrowRight':\n if (e.ctrlKey) {\n e.preventDefault();\n const value = (e.target as HTMLInputElement).value;\n const dir = key === 'ArrowRight' ? 1 : 0;\n const pos = this.getNewPosition(value, dir);\n\n this.setSelectionRange(pos, pos);\n }\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n e.preventDefault();\n key === 'ArrowUp' ? this.stepUp() : this.stepDown();\n\n this.updateComplete.then(() =>\n this.setSelectionRange(this.selection.start, this.selection.end)\n );\n break;\n case ';':\n if (e.ctrlKey) {\n this.value = new Date();\n }\n break;\n }\n }\n\n protected override renderInput() {\n return html`<div>\n <input\n type=\"text\"\n part=${partNameMap(this.resolvePartNames('input'))}\n name=${ifDefined(this.name)}\n .value=${live(this.maskedValue)}\n .placeholder=${live(this.placeholder || this.emptyMask)}\n ?readonly=${this.readonly}\n ?disabled=${this.disabled}\n ?required=${this.required}\n @invalid=\"${this.handleInvalid}\"\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @input=${super.handleInput}\n @keydown=${this.handleKeydown}\n @cut=${this.handleCut}\n @compositionstart=${this.handleCompositionStart}\n @compositionend=${this.handleCompositionEnd}\n @dragenter=${this.handleDragEnter}\n @dragleave=${this.handleDragLeave}\n @dragstart=${this.handleDragStart}\n />\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-date-time-input': IgcDateTimeInputComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"date-time-input.js","sourceRoot":"","sources":["../../../src/components/date-time-input/date-time-input.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { live } from 'lit/directives/live.js';\nimport {\n DatePartDeltas,\n DatePartInfo,\n DateParts,\n DatePart,\n DateTimeUtil,\n} from './date-util.js';\nimport { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport {\n IgcMaskInputBaseComponent,\n MaskRange,\n} from '../mask-input/mask-input-base.js';\nimport { partNameMap } from '../common/util.js';\nimport { IgcInputEventMap } from '../input/input-base.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { AbstractConstructor } from '../common/mixins/constructor.js';\n\nexport interface IgcDateTimeInputEventMap\n extends Omit<IgcInputEventMap, 'igcChange'> {\n igcChange: CustomEvent<Date | null>;\n}\n\n/**\n * A date time input is an input field that lets you set and edit the date and time in a chosen input element\n * using customizable display and input formats.\n *\n * @element igc-date-time-input\n *\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot helper-text - Renders content below the input.\n *\n * @fires igcInput - Emitted when the control input receives user input.\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart container - The main wrapper that holds all main input elements.\n * @csspart input - The native input element.\n * @csspart label - The native label element.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n * @csspart helper-text - The helper text wrapper.\n */\nexport default class IgcDateTimeInputComponent extends EventEmitterMixin<\n IgcDateTimeInputEventMap,\n AbstractConstructor<IgcMaskInputBaseComponent>\n>(IgcMaskInputBaseComponent) {\n public static readonly tagName = 'igc-date-time-input';\n\n protected _defaultMask!: string;\n protected _value!: Date | null;\n\n private _oldValue: Date | null = null;\n private _inputDateParts!: DatePartInfo[];\n private _inputFormat!: string;\n private _datePartDeltas: DatePartDeltas = {\n date: 1,\n month: 1,\n year: 1,\n hours: 1,\n minutes: 1,\n seconds: 1,\n };\n\n /**\n * The date format to apply on the input.\n * @attr input-format\n */\n @property({ attribute: 'input-format' })\n public get inputFormat(): string {\n return this._inputFormat || this._defaultMask;\n }\n\n public set inputFormat(val: string) {\n if (val) {\n this.setMask(val);\n this._inputFormat = val;\n }\n }\n\n /**\n * The value of the input.\n * @attr\n */\n @property({\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n @blazorTwoWayBind('igcChange', 'detail')\n public get value(): Date | null {\n return this._value;\n }\n\n public set value(val: Date | null) {\n this._value = val\n ? DateTimeUtil.isValidDate(val)\n ? val\n : DateTimeUtil.parseIsoDate(val)\n : null;\n\n this.updateMask();\n this.validate();\n }\n\n /**\n * The minimum value required for the input to remain valid.\n * @attr min-value\n */\n @property({\n attribute: 'min-value',\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n public minValue!: Date | null;\n\n /**\n * The maximum value required for the input to remain valid.\n * @attr max-value\n */\n @property({\n attribute: 'max-value',\n converter: {\n fromAttribute: (value: string) =>\n !value ? null : DateTimeUtil.parseIsoDate(value),\n toAttribute: (value: Date) => value.toISOString(),\n },\n })\n public maxValue!: Date | null;\n\n /**\n * Format to display the value in when not editing.\n * Defaults to the input format if not set.\n * @attr display-format\n */\n @property({ attribute: 'display-format' })\n public displayFormat!: string;\n\n /**\n * Delta values used to increment or decrement each date part on step actions.\n * All values default to `1`.\n */\n @property({ attribute: false })\n public spinDelta!: DatePartDeltas;\n\n /**\n * Sets whether to loop over the currently spun segment.\n * @attr spin-loop\n */\n @property({ type: Boolean, attribute: 'spin-loop' })\n public spinLoop = true;\n\n /**\n * The locale settings used to display the value.\n * @attr\n */\n @property()\n public locale = 'en';\n\n @watch('locale', { waitUntilFirstUpdate: true })\n protected setDefaultMask(): void {\n if (!this._inputFormat) {\n this.updateDefaultMask();\n this.setMask(this._defaultMask);\n }\n\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('displayFormat', { waitUntilFirstUpdate: true })\n protected setDisplayFormat(): void {\n if (this.displayFormat) {\n if (this.value) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value!,\n this.locale,\n this.displayFormat,\n true\n );\n }\n }\n }\n\n @watch('prompt', { waitUntilFirstUpdate: true })\n protected promptChange(): void {\n if (!this.prompt) {\n this.prompt = this.parser.prompt;\n } else {\n this.parser.prompt = this.prompt;\n }\n }\n\n @watch('required', { waitUntilFirstUpdate: true })\n @watch('disabled', { waitUntilFirstUpdate: true })\n @watch('value', { waitUntilFirstUpdate: true })\n protected handleInvalidState(): void {\n this.updateComplete.then(\n () => (this.invalid = !this.input.checkValidity())\n );\n }\n\n @watch('maxValue')\n @watch('minValue')\n protected validate() {\n if (!this.value) {\n return null;\n }\n\n let errors = {};\n\n if (this.minValue || this.maxValue) {\n errors = DateTimeUtil.validateMinMax(\n this.value,\n this.minValue!,\n this.maxValue!,\n this.hasTimeParts,\n this.hasDateParts\n );\n\n if (Object.keys(errors).length > 0) {\n this.invalid = true;\n } else {\n this.invalid = false;\n }\n }\n\n return errors;\n }\n\n private get hasDateParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n\n return parts.some(\n (p) =>\n p.type === DateParts.Date ||\n p.type === DateParts.Month ||\n p.type === DateParts.Year\n );\n }\n\n private get hasTimeParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n return parts.some(\n (p) =>\n p.type === DateParts.Hours ||\n p.type === DateParts.Minutes ||\n p.type === DateParts.Seconds\n );\n }\n\n private get targetDatePart(): DatePart | undefined {\n let result;\n\n if (this.hasFocus) {\n const partType = this._inputDateParts.find(\n (p) =>\n p.start <= this.inputSelection.start &&\n this.inputSelection.start <= p.end &&\n p.type !== DateParts.Literal\n )?.type as string as DatePart;\n\n if (partType) {\n result = partType;\n }\n } else {\n if (this._inputDateParts.some((p) => p.type === DateParts.Date)) {\n result = DatePart.Date;\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Hours)) {\n result = DatePart.Hours;\n } else {\n result = this._inputDateParts[0].type as string as DatePart;\n }\n }\n\n return result;\n }\n\n private get datePartDeltas(): DatePartDeltas {\n return Object.assign({}, this._datePartDeltas, this.spinDelta);\n }\n\n constructor() {\n super();\n this.addEventListener('wheel', this.onWheel);\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateDefaultMask();\n this.setMask(this.inputFormat);\n if (this.value) {\n this.updateMask();\n }\n }\n\n /** Checks for validity of the control and shows the browser message if it's invalid. */\n public reportValidity() {\n const state = this._value\n ? Object.keys(this.validate()!).length === 0\n : this.input.reportValidity();\n\n this.invalid = !state;\n return state;\n }\n\n /** Check for validity of the control */\n public checkValidity() {\n if (this.disabled) {\n return this.input.checkValidity();\n }\n\n if (!this._value) {\n return !this.required;\n }\n\n return (\n this.input.checkValidity() && Object.keys(this.validate()!).length === 0\n );\n }\n\n /** Increments a date/time portion. */\n public stepUp(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const newValue = this.trySpinValue(targetPart, delta);\n this.value = newValue;\n this.handleInput();\n }\n\n /** Decrements a date/time portion. */\n public stepDown(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const newValue = this.trySpinValue(targetPart, delta, true);\n this.value = newValue;\n this.handleInput();\n }\n\n /** Clears the input element of user input. */\n public clear(): void {\n this.maskedValue = '';\n this.value = null;\n }\n\n protected updateMask() {\n if (this.hasFocus) {\n this.maskedValue = this.getMaskedValue();\n } else {\n if (!this.value || !DateTimeUtil.isValidDate(this.value)) {\n this.maskedValue = '';\n return;\n }\n\n const format = this.displayFormat || this.inputFormat;\n\n if (this.displayFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format,\n true\n );\n } else if (this.inputFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format\n );\n } else {\n this.maskedValue = this.value.toLocaleString();\n }\n }\n }\n\n protected handleChange() {\n this.emitEvent('igcChange', { detail: this.value });\n this.invalid = !this.checkValidity();\n }\n\n protected override handleInput() {\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n\n protected handleDragLeave() {\n if (!this.hasFocus) {\n this.updateMask();\n }\n }\n\n protected handleDragEnter() {\n if (!this.hasFocus) {\n this.maskedValue = this.getMaskedValue();\n }\n }\n\n protected async updateInput(string: string, range: MaskRange) {\n const { value, end } = this.parser.replace(\n this.maskedValue,\n string,\n range.start,\n range.end\n );\n\n this.maskedValue = value;\n\n this.updateValue();\n this.requestUpdate();\n\n if (range.start !== this.inputFormat.length) {\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n await this.updateComplete;\n this.input.setSelectionRange(end, end);\n }\n\n private trySpinValue(\n datePart: DatePart,\n delta?: number,\n negative = false\n ): Date {\n if (!delta) {\n // default to 1 if a delta is set to 0 or any other falsy value\n delta = this.datePartDeltas[datePart as keyof DatePartDeltas] || 1;\n }\n\n const spinValue = negative ? -Math.abs(delta) : Math.abs(delta);\n return this.spinValue(datePart, spinValue);\n }\n\n private spinValue(datePart: DatePart, delta: number): Date {\n if (!this.value || !DateTimeUtil.isValidDate(this.value)) {\n return new Date();\n }\n\n const newDate = new Date(this.value.getTime());\n let formatPart, amPmFromMask;\n switch (datePart) {\n case DatePart.Date:\n DateTimeUtil.spinDate(delta, newDate, this.spinLoop);\n break;\n case DatePart.Month:\n DateTimeUtil.spinMonth(delta, newDate, this.spinLoop);\n break;\n case DatePart.Year:\n DateTimeUtil.spinYear(delta, newDate);\n break;\n case DatePart.Hours:\n DateTimeUtil.spinHours(delta, newDate, this.spinLoop);\n break;\n case DatePart.Minutes:\n DateTimeUtil.spinMinutes(delta, newDate, this.spinLoop);\n break;\n case DatePart.Seconds:\n DateTimeUtil.spinSeconds(delta, newDate, this.spinLoop);\n break;\n case DatePart.AmPm:\n formatPart = this._inputDateParts.find(\n (dp) => dp.type === DateParts.AmPm\n );\n if (formatPart !== undefined) {\n amPmFromMask = this.maskedValue.substring(\n formatPart!.start,\n formatPart!.end\n );\n return DateTimeUtil.spinAmPm(newDate, this.value, amPmFromMask);\n }\n break;\n }\n\n return newDate;\n }\n\n private onWheel(event: WheelEvent) {\n if (!this.hasFocus) {\n return;\n }\n\n this.selection = this.inputSelection;\n\n event.preventDefault();\n event.stopPropagation();\n\n if (event.deltaY > 0) {\n this.stepDown();\n } else {\n this.stepUp();\n }\n\n this.updateComplete.then(() =>\n this.setSelectionRange(this.selection.start, this.selection.end)\n );\n }\n\n private updateDefaultMask(): void {\n this._defaultMask = DateTimeUtil.getDefaultMask(this.locale);\n }\n\n private setMask(val: string): void {\n const oldFormat = this._inputDateParts?.map((p) => p.format).join('');\n this._inputDateParts = DateTimeUtil.parseDateTimeFormat(val);\n val = this._inputDateParts.map((p) => p.format).join('');\n\n this._defaultMask = val;\n\n const newMask = (val || DateTimeUtil.DEFAULT_INPUT_FORMAT).replace(\n new RegExp(/(?=[^t])[\\w]/, 'g'),\n '0'\n );\n\n this._mask =\n newMask.indexOf('tt') !== -1\n ? newMask.replace(new RegExp('tt', 'g'), 'LL')\n : newMask;\n\n this.parser.mask = this._mask;\n this.parser.prompt = this.prompt;\n\n if (!this.placeholder || oldFormat === this.placeholder) {\n this.placeholder = val;\n }\n }\n\n private parseDate(val: string) {\n if (!val) {\n return null;\n }\n\n return DateTimeUtil.parseValueFromMask(\n val,\n this._inputDateParts,\n this.prompt\n );\n }\n\n private getMaskedValue(): string {\n let mask = this.emptyMask;\n\n if (DateTimeUtil.isValidDate(this.value)) {\n for (const part of this._inputDateParts) {\n if (part.type === DateParts.Literal) {\n continue;\n }\n\n const targetValue = DateTimeUtil.getPartValue(\n part,\n part.format.length,\n this.value\n );\n\n mask = this.parser.replace(\n mask,\n targetValue,\n part.start,\n part.end\n ).value;\n }\n return mask;\n }\n\n return this.maskedValue === '' ? mask : this.maskedValue;\n }\n\n private isComplete(): boolean {\n return this.maskedValue.indexOf(this.prompt) === -1;\n }\n\n private updateValue(): void {\n if (this.isComplete()) {\n const parsedDate = this.parseDate(this.maskedValue);\n if (DateTimeUtil.isValidDate(parsedDate)) {\n this.value = parsedDate;\n } else {\n this.value = null;\n }\n } else {\n this.value = null;\n }\n }\n\n private getNewPosition(value: string, direction = 0): number {\n const literals = this._inputDateParts.filter(\n (p) => p.type === DateParts.Literal\n );\n let cursorPos = this.selection.start;\n\n if (!direction) {\n do {\n cursorPos = cursorPos > 0 ? --cursorPos : cursorPos;\n } while (!literals.some((l) => l.end === cursorPos) && cursorPos > 0);\n return cursorPos;\n } else {\n do {\n cursorPos++;\n } while (\n !literals.some((l) => l.start === cursorPos) &&\n cursorPos < value.length\n );\n return cursorPos;\n }\n }\n\n protected override handleFocus() {\n this.hasFocus = true;\n this._oldValue = this.value;\n this.updateMask();\n this.emitEvent('igcFocus');\n }\n\n protected override handleBlur() {\n this.hasFocus = false;\n\n if (!this.isComplete() && this.maskedValue !== this.emptyMask) {\n const parse = this.parseDate(this.maskedValue);\n\n if (parse) {\n this.value = parse;\n } else {\n this.value = null;\n this.maskedValue = '';\n }\n } else {\n this.updateMask();\n }\n\n if (this._oldValue !== this.value) {\n this.handleChange();\n }\n\n this.emitEvent('igcBlur');\n }\n\n protected override handleKeydown(e: KeyboardEvent) {\n super.handleKeydown(e);\n\n const key = e.key;\n\n switch (key) {\n case 'ArrowLeft':\n case 'ArrowRight':\n if (e.ctrlKey) {\n e.preventDefault();\n const value = (e.target as HTMLInputElement).value;\n const dir = key === 'ArrowRight' ? 1 : 0;\n const pos = this.getNewPosition(value, dir);\n\n this.setSelectionRange(pos, pos);\n }\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n e.preventDefault();\n key === 'ArrowUp' ? this.stepUp() : this.stepDown();\n\n this.updateComplete.then(() =>\n this.setSelectionRange(this.selection.start, this.selection.end)\n );\n break;\n case ';':\n if (e.ctrlKey) {\n this.value = new Date();\n }\n break;\n }\n }\n\n protected override renderInput() {\n return html`\n <input\n type=\"text\"\n part=${partNameMap(this.resolvePartNames('input'))}\n name=${ifDefined(this.name)}\n .value=${live(this.maskedValue)}\n .placeholder=${live(this.placeholder || this.emptyMask)}\n ?readonly=${this.readonly}\n ?disabled=${this.disabled}\n ?required=${this.required}\n @invalid=\"${this.handleInvalid}\"\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @input=${super.handleInput}\n @keydown=${this.handleKeydown}\n @cut=${this.handleCut}\n @compositionstart=${this.handleCompositionStart}\n @compositionend=${this.handleCompositionEnd}\n @dragenter=${this.handleDragEnter}\n @dragleave=${this.handleDragLeave}\n @dragstart=${this.handleDragStart}\n />\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-date-time-input': IgcDateTimeInputComponent;\n }\n}\n"]}
@@ -28,20 +28,33 @@ export default class IgcDialogComponent extends IgcDialogComponent_base {
28
28
  private static readonly increment;
29
29
  private titleId;
30
30
  private dialog;
31
- /** Whether the dialog should be closed when pressing the 'ESCAPE' button. */
31
+ /**
32
+ * Whether the dialog should be closed when pressing the 'ESCAPE' button.
33
+ * @attr close-on-escape
34
+ */
32
35
  closeOnEscape: boolean;
33
- /** Whether the dialog should be closed when clicking outside of it. */
36
+ /**
37
+ * Whether the dialog should be closed when clicking outside of it.
38
+ * @attr close-on-outside-click
39
+ */
34
40
  closeOnOutsideClick: boolean;
35
41
  /**
36
42
  * Whether to hide the default action button for the dialog.
37
43
  *
38
44
  * When there is projected content in the `footer` slot this property
39
45
  * has no effect.
46
+ * @attr hide-default-action
40
47
  */
41
48
  hideDefaultAction: boolean;
42
- /** Whether the dialog is opened. */
49
+ /**
50
+ * Whether the dialog is opened.
51
+ * @attr
52
+ */
43
53
  open: boolean;
44
- /** Sets the title of the dialog. */
54
+ /**
55
+ * Sets the title of the dialog.
56
+ * @attr
57
+ */
45
58
  title: string;
46
59
  /** Sets the return value for the dialog. */
47
60
  returnValue: string;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../../src/components/dialog/dialog.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/dialog.base.css.js';\nimport { styles as bootstrap } from './themes/light/dialog.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dialog.fluent.css.js';\nimport { styles as indigo } from './themes/light/dialog.indigo.css.js';\nimport { styles as material } from './themes/light/dialog.material.css.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcButtonComponent from '../button/button.js';\n\ndefineComponents(IgcButtonComponent);\n\nexport interface IgcDialogEventMap {\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * Represents a Dialog component.\n *\n * @element igc-dialog\n *\n * @fires igcClosing - Emitter just before the dialog is closed.\n * @fires igcClosed - Emitted after closing the dialog.\n *\n * @slot - Renders content inside the default slot.\n * @slot title - Renders the title of the dialog header.\n * @slot footer - Renders the dialog footer.\n *\n * @csspart base - The base wrapper of the dialog.\n * @csspart title - The title container.\n * @csspart footer - The footer container.\n * @csspart overlay - The overlay.\n */\n@themes({ bootstrap, material, fluent, indigo })\n@blazorAdditionalDependencies('IgcButtonComponent')\nexport default class IgcDialogComponent extends EventEmitterMixin<\n IgcDialogEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-dialog';\n public static styles = [styles];\n\n private static readonly increment = createCounter();\n private titleId = `title-${IgcDialogComponent.increment()}`;\n\n @query('dialog', true)\n private dialog!: HTMLDialogElement;\n\n /** Whether the dialog should be closed when pressing the 'ESCAPE' button. */\n @property({ type: Boolean, attribute: 'close-on-escape' })\n public closeOnEscape = true;\n\n /** Whether the dialog should be closed when clicking outside of it. */\n @property({ type: Boolean, attribute: 'close-on-outside-click' })\n public closeOnOutsideClick = false;\n\n /**\n * Whether to hide the default action button for the dialog.\n *\n * When there is projected content in the `footer` slot this property\n * has no effect.\n */\n @property({ type: Boolean, attribute: 'hide-default-action' })\n public hideDefaultAction = false;\n\n /** Whether the dialog is opened. */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /** Sets the title of the dialog. */\n @property()\n public override title!: string;\n\n /** Sets the return value for the dialog. */\n @property({ attribute: false })\n public returnValue!: string;\n\n @watch('open', { waitUntilFirstUpdate: true })\n protected handleOpenState() {\n this.open ? this.dialog.showModal() : this.dialog.close();\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n if (this.open) {\n this.dialog.showModal();\n }\n }\n\n /** Opens the dialog. */\n public show() {\n if (this.open) {\n return;\n }\n\n this.open = true;\n }\n\n /** Closes the dialog. */\n public hide() {\n if (!this.open) {\n return;\n }\n\n this.open = false;\n }\n\n /** Toggles the open state of the dialog. */\n public toggle() {\n this.open ? this.hide() : this.show();\n }\n\n protected async hideWithEvent() {\n if (!this.open) {\n return;\n }\n\n if (!this.handleClosing()) {\n return;\n }\n\n this.open = false;\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n\n private handleCancel(event: Event) {\n event.preventDefault();\n\n if (this.closeOnEscape) {\n this.hideWithEvent();\n }\n }\n\n private handleClick({ clientX, clientY, target }: MouseEvent) {\n if (this.closeOnOutsideClick && this.dialog.isSameNode(target as Node)) {\n const { left, top, right, bottom } = this.dialog.getBoundingClientRect();\n const between = (x: number, low: number, high: number) =>\n x >= low && x <= high;\n if (!(between(clientX, left, right) && between(clientY, top, bottom))) {\n this.hideWithEvent();\n }\n }\n }\n\n private handleClosing(): boolean {\n return this.emitEvent('igcClosing', { cancelable: true });\n }\n\n protected formSubmitHandler = (e: Event) => {\n if (e instanceof SubmitEvent && e.submitter) {\n this.returnValue = (e.submitter as any)?.value || '';\n }\n if (!e.defaultPrevented) {\n this.hideWithEvent();\n }\n };\n\n private handleSlotChange() {\n // Setup submit handling for supported forms\n Array.from(this.querySelectorAll('igc-form, form'))\n .filter((each) => each.getAttribute('method') === 'dialog')\n .forEach((form) => {\n const event = /igc-form/i.test(form.tagName) ? 'igcSubmit' : 'submit';\n form.removeEventListener(event, this.formSubmitHandler);\n form.addEventListener(event, this.formSubmitHandler);\n });\n }\n\n protected override render() {\n const label = this.ariaLabel ? this.ariaLabel : undefined;\n const labelledby = label ? undefined : this.titleId;\n\n return html`\n <div part=\"backdrop\" aria-hidden=\"true\" ?hidden=${!this.open}></div>\n <dialog\n part=\"base\"\n role=\"dialog\"\n @click=${this.handleClick}\n @cancel=${this.handleCancel}\n aria-label=${ifDefined(label)}\n aria-labelledby=${ifDefined(labelledby)}\n >\n <header part=\"title\" id=${this.titleId}>\n <slot name=\"title\"><span>${this.title}</span></slot>\n </header>\n <section part=\"content\">\n <slot @slotchange=${this.handleSlotChange}></slot>\n </section>\n <footer part=\"footer\">\n <slot name=\"footer\">\n ${this.hideDefaultAction\n ? nothing\n : html`<igc-button variant=\"flat\" @click=${this.hideWithEvent}\n >OK</igc-button\n >`}\n </slot>\n </footer>\n </dialog>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dialog': IgcDialogComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../../src/components/dialog/dialog.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/dialog.base.css.js';\nimport { styles as bootstrap } from './themes/light/dialog.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dialog.fluent.css.js';\nimport { styles as indigo } from './themes/light/dialog.indigo.css.js';\nimport { styles as material } from './themes/light/dialog.material.css.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcButtonComponent from '../button/button.js';\n\ndefineComponents(IgcButtonComponent);\n\nexport interface IgcDialogEventMap {\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * Represents a Dialog component.\n *\n * @element igc-dialog\n *\n * @fires igcClosing - Emitter just before the dialog is closed.\n * @fires igcClosed - Emitted after closing the dialog.\n *\n * @slot - Renders content inside the default slot.\n * @slot title - Renders the title of the dialog header.\n * @slot footer - Renders the dialog footer.\n *\n * @csspart base - The base wrapper of the dialog.\n * @csspart title - The title container.\n * @csspart footer - The footer container.\n * @csspart overlay - The overlay.\n */\n@themes({ bootstrap, material, fluent, indigo })\n@blazorAdditionalDependencies('IgcButtonComponent')\nexport default class IgcDialogComponent extends EventEmitterMixin<\n IgcDialogEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-dialog';\n public static styles = [styles];\n\n private static readonly increment = createCounter();\n private titleId = `title-${IgcDialogComponent.increment()}`;\n\n @query('dialog', true)\n private dialog!: HTMLDialogElement;\n\n /**\n * Whether the dialog should be closed when pressing the 'ESCAPE' button.\n * @attr close-on-escape\n */\n @property({ type: Boolean, attribute: 'close-on-escape' })\n public closeOnEscape = true;\n\n /**\n * Whether the dialog should be closed when clicking outside of it.\n * @attr close-on-outside-click\n */\n @property({ type: Boolean, attribute: 'close-on-outside-click' })\n public closeOnOutsideClick = false;\n\n /**\n * Whether to hide the default action button for the dialog.\n *\n * When there is projected content in the `footer` slot this property\n * has no effect.\n * @attr hide-default-action\n */\n @property({ type: Boolean, attribute: 'hide-default-action' })\n public hideDefaultAction = false;\n\n /**\n * Whether the dialog is opened.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /**\n * Sets the title of the dialog.\n * @attr\n */\n @property()\n public override title!: string;\n\n /** Sets the return value for the dialog. */\n @property({ attribute: false })\n public returnValue!: string;\n\n @watch('open', { waitUntilFirstUpdate: true })\n protected handleOpenState() {\n this.open ? this.dialog.showModal() : this.dialog.close();\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n if (this.open) {\n this.dialog.showModal();\n }\n }\n\n /** Opens the dialog. */\n public show() {\n if (this.open) {\n return;\n }\n\n this.open = true;\n }\n\n /** Closes the dialog. */\n public hide() {\n if (!this.open) {\n return;\n }\n\n this.open = false;\n }\n\n /** Toggles the open state of the dialog. */\n public toggle() {\n this.open ? this.hide() : this.show();\n }\n\n protected async hideWithEvent() {\n if (!this.open) {\n return;\n }\n\n if (!this.handleClosing()) {\n return;\n }\n\n this.open = false;\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n\n private handleCancel(event: Event) {\n event.preventDefault();\n\n if (this.closeOnEscape) {\n this.hideWithEvent();\n }\n }\n\n private handleClick({ clientX, clientY, target }: MouseEvent) {\n if (this.closeOnOutsideClick && this.dialog.isSameNode(target as Node)) {\n const { left, top, right, bottom } = this.dialog.getBoundingClientRect();\n const between = (x: number, low: number, high: number) =>\n x >= low && x <= high;\n if (!(between(clientX, left, right) && between(clientY, top, bottom))) {\n this.hideWithEvent();\n }\n }\n }\n\n private handleClosing(): boolean {\n return this.emitEvent('igcClosing', { cancelable: true });\n }\n\n protected formSubmitHandler = (e: Event) => {\n if (e instanceof SubmitEvent && e.submitter) {\n this.returnValue = (e.submitter as any)?.value || '';\n }\n if (!e.defaultPrevented) {\n this.hideWithEvent();\n }\n };\n\n private handleSlotChange() {\n // Setup submit handling for supported forms\n Array.from(this.querySelectorAll('igc-form, form'))\n .filter((each) => each.getAttribute('method') === 'dialog')\n .forEach((form) => {\n const event = /igc-form/i.test(form.tagName) ? 'igcSubmit' : 'submit';\n form.removeEventListener(event, this.formSubmitHandler);\n form.addEventListener(event, this.formSubmitHandler);\n });\n }\n\n protected override render() {\n const label = this.ariaLabel ? this.ariaLabel : undefined;\n const labelledby = label ? undefined : this.titleId;\n\n return html`\n <div part=\"backdrop\" aria-hidden=\"true\" ?hidden=${!this.open}></div>\n <dialog\n part=\"base\"\n role=\"dialog\"\n @click=${this.handleClick}\n @cancel=${this.handleCancel}\n aria-label=${ifDefined(label)}\n aria-labelledby=${ifDefined(labelledby)}\n >\n <header part=\"title\" id=${this.titleId}>\n <slot name=\"title\"><span>${this.title}</span></slot>\n </header>\n <section part=\"content\">\n <slot @slotchange=${this.handleSlotChange}></slot>\n </section>\n <footer part=\"footer\">\n <slot name=\"footer\">\n ${this.hideDefaultAction\n ? nothing\n : html`<igc-button variant=\"flat\" @click=${this.hideWithEvent}\n >OK</igc-button\n >`}\n </slot>\n </footer>\n </dialog>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dialog': IgcDialogComponent;\n }\n}\n"]}
@@ -32,7 +32,7 @@ export const styles = css `:host {
32
32
  display: none !important;
33
33
  }
34
34
 
35
- /* stylelint-disable max-line-length */
35
+ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
36
36
  :host {
37
37
  border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 2px), 2px);
38
38
  background: hsla(var(--ig-surface-500), var(--ig-surface-a));
@@ -54,7 +54,6 @@ export const styles = css `:host {
54
54
  }
55
55
 
56
56
  [part=content] {
57
- max-width: 40ch;
58
57
  color: var(--content-color, hsla(var(--ig-gray-700), var(--ig-gray-a)));
59
58
  font-family: var(--ig-body-1-font-family);
60
59
  font-size: var(--ig-body-1-font-size);
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4HvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 2px), 2px);\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: var(--ig-surface-500-contrast);\n border-style: none;\n padding: unset;\n}\n\n[part=base] {\n background: inherit;\n color: inherit;\n border-style: inherit;\n padding: inherit;\n border: inherit;\n border-radius: inherit;\n min-width: inherit;\n -webkit-box-shadow: var(--igc-elevation-24);\n box-shadow: var(--igc-elevation-24);\n}\n\n[part=content] {\n max-width: 40ch;\n color: var(--content-color, hsla(var(--ig-gray-700), var(--ig-gray-a)));\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n margin: 0;\n}\n\n[part=title],\n[part=footer] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n font-family: var(--ig-h6-font-family);\n font-size: var(--ig-h6-font-size);\n font-weight: var(--ig-h6-font-weight);\n font-style: var(--ig-h6-font-style);\n line-height: var(--ig-h6-line-height);\n letter-spacing: var(--ig-h6-letter-spacing);\n text-transform: var(--ig-h6-text-transform);\n margin-top: var(--ig-h6-margin-top);\n margin-bottom: var(--ig-h6-margin-bottom);\n margin: 0;\n}\n\n[part=footer] {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n}\n\n::slotted(*) {\n font: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-transform: inherit;\n margin: 0;\n}\n\nslot[name=title]::slotted(:not(:last-child)),\nslot[name=footer]::slotted(:not(:last-child)) {\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\ndialog::-webkit-backdrop {\n background: none;\n}\n\ndialog::backdrop {\n background: none;\n}\n\n[part=backdrop] {\n position: fixed;\n inset: 0;\n background: hsla(var(--ig-gray-500), 0.54);\n}`;\n"]}
1
+ {"version":3,"file":"dialog.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2HvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 2px), 2px);\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: var(--ig-surface-500-contrast);\n border-style: none;\n padding: unset;\n}\n\n[part=base] {\n background: inherit;\n color: inherit;\n border-style: inherit;\n padding: inherit;\n border: inherit;\n border-radius: inherit;\n min-width: inherit;\n -webkit-box-shadow: var(--igc-elevation-24);\n box-shadow: var(--igc-elevation-24);\n}\n\n[part=content] {\n color: var(--content-color, hsla(var(--ig-gray-700), var(--ig-gray-a)));\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n margin: 0;\n}\n\n[part=title],\n[part=footer] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n font-family: var(--ig-h6-font-family);\n font-size: var(--ig-h6-font-size);\n font-weight: var(--ig-h6-font-weight);\n font-style: var(--ig-h6-font-style);\n line-height: var(--ig-h6-line-height);\n letter-spacing: var(--ig-h6-letter-spacing);\n text-transform: var(--ig-h6-text-transform);\n margin-top: var(--ig-h6-margin-top);\n margin-bottom: var(--ig-h6-margin-bottom);\n margin: 0;\n}\n\n[part=footer] {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n}\n\n::slotted(*) {\n font: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-transform: inherit;\n margin: 0;\n}\n\nslot[name=title]::slotted(:not(:last-child)),\nslot[name=footer]::slotted(:not(:last-child)) {\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\ndialog::-webkit-backdrop {\n background: none;\n}\n\ndialog::backdrop {\n background: none;\n}\n\n[part=backdrop] {\n position: fixed;\n inset: 0;\n background: hsla(var(--ig-gray-500), 0.54);\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  :host {
4
4
  border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 4px), 4px);
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 4px), 4px);\n}\n\n[part=base] {\n min-width: 18rem;\n border: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\n[part=title],\n[part=footer] {\n font-family: var(--ig-h5-font-family);\n font-size: var(--ig-h5-font-size);\n font-weight: var(--ig-h5-font-weight);\n font-style: var(--ig-h5-font-style);\n line-height: var(--ig-h5-line-height);\n letter-spacing: var(--ig-h5-letter-spacing);\n text-transform: var(--ig-h5-text-transform);\n margin-top: var(--ig-h5-margin-top);\n margin-bottom: var(--ig-h5-margin-bottom);\n margin: 0;\n padding: 1rem;\n}\n\n[part=content] {\n padding: 1rem;\n}\n\n[part=title] {\n -webkit-border-after: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n border-block-end: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n}\n\n[part=footer] {\n -webkit-border-before: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n border-block-start: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n}`;\n"]}
1
+ {"version":3,"file":"dialog.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 4px), 4px);\n}\n\n[part=base] {\n min-width: 18rem;\n border: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\n[part=title],\n[part=footer] {\n font-family: var(--ig-h5-font-family);\n font-size: var(--ig-h5-font-size);\n font-weight: var(--ig-h5-font-weight);\n font-style: var(--ig-h5-font-style);\n line-height: var(--ig-h5-line-height);\n letter-spacing: var(--ig-h5-letter-spacing);\n text-transform: var(--ig-h5-text-transform);\n margin-top: var(--ig-h5-margin-top);\n margin-bottom: var(--ig-h5-margin-bottom);\n margin: 0;\n padding: 1rem;\n}\n\n[part=content] {\n padding: 1rem;\n}\n\n[part=title] {\n -webkit-border-after: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n border-block-end: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n}\n\n[part=footer] {\n -webkit-border-before: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n border-block-start: 1px solid var(--border-color, hsla(var(--ig-gray-300), var(--ig-gray-a)));\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  [part=title] {
4
4
  padding: 1.5rem;
5
5
  -webkit-padding-before: 1rem;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;EAqBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n[part=title] {\n padding: 1.5rem;\n -webkit-padding-before: 1rem;\n padding-block-start: 1rem;\n}\n\n[part=content] {\n padding-inline: 1.5rem;\n -webkit-padding-after: 1.25rem;\n padding-block-end: 1.25rem;\n}\n\n[part=footer] {\n padding: 1.5rem;\n -webkit-padding-before: 0;\n padding-block-start: 0;\n}\n\n[part=backdrop] {\n background: rgba(255, 255, 255, 0.4);\n}`;\n"]}
1
+ {"version":3,"file":"dialog.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;EAqBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n[part=title] {\n padding: 1.5rem;\n -webkit-padding-before: 1rem;\n padding-block-start: 1rem;\n}\n\n[part=content] {\n padding-inline: 1.5rem;\n -webkit-padding-after: 1.25rem;\n padding-block-end: 1.25rem;\n}\n\n[part=footer] {\n padding: 1.5rem;\n -webkit-padding-before: 0;\n padding-block-start: 0;\n}\n\n[part=backdrop] {\n background: rgba(255, 255, 255, 0.4);\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  [part=title] {
4
4
  padding: 1rem 1.5rem;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;EAcvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n[part=title] {\n padding: 1rem 1.5rem;\n}\n\n[part=content] {\n padding-inline: 1.5rem;\n -webkit-padding-after: 0.5rem;\n padding-block-end: 0.5rem;\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n[part=footer] {\n padding: 0.5rem;\n}`;\n"]}
1
+ {"version":3,"file":"dialog.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;EAcvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n[part=title] {\n padding: 1rem 1.5rem;\n}\n\n[part=content] {\n padding-inline: 1.5rem;\n -webkit-padding-after: 0.5rem;\n padding-block-end: 0.5rem;\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n[part=footer] {\n padding: 0.5rem;\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  [part=title] {
4
4
  padding-inline: 1.5rem;
5
5
  -webkit-padding-before: 1rem;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.material.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;EAevB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n[part=title] {\n padding-inline: 1.5rem;\n -webkit-padding-before: 1rem;\n padding-block-start: 1rem;\n}\n\n[part=content] {\n padding: 0.875rem 1.5rem;\n}\n\n[part=footer] {\n padding: 0.5rem;\n -webkit-padding-before: 0;\n padding-block-start: 0;\n}`;\n"]}
1
+ {"version":3,"file":"dialog.material.css.js","sourceRoot":"","sources":["../../../../../src/components/dialog/themes/light/dialog.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;EAevB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n[part=title] {\n padding-inline: 1.5rem;\n -webkit-padding-before: 1rem;\n padding-block-start: 1rem;\n}\n\n[part=content] {\n padding: 0.875rem 1.5rem;\n}\n\n[part=footer] {\n padding: 0.5rem;\n -webkit-padding-before: 0;\n padding-block-start: 0;\n}`;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-group.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGxE,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAW/E,IAAqB,yBAAyB,GAA9C,MAAqB,yBAA0B,SAAQ,UAAU;IAW/C,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IAES,SAAS;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAE,CAAC;IACvC,CAAC;IAEkB,MAAM;;QACvB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,OAAO,CAAC,CAAC;QAExD,OAAO,IAAI,CAAA;;;KAGV,CAAC;IACJ,CAAC;CACF,CAAA;AA7BwB,iCAAO,GAAW,oBAAqB,CAAA;AAEvC,gCAAM,GAAG,MAAO,CAAA;AAMvC;IAFC,cAAc,EAAE;IAChB,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;wDACzB;AAT5B,yBAAyB;IAD7C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;GACE,yBAAyB,CA8B7C;eA9BoB,yBAAyB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { SizableInterface } from '../common/mixins/sizable.js';\nimport type IgcDropdownItemComponent from './dropdown-item';\nimport { styles } from './themes/light/dropdown-group.base.css.js';\nimport { styles as fluent } from './themes/light/dropdown-group.fluent.css.js';\n\n/**\n * @element igc-dropdown-group - A container for a group of `igc-dropdown-item` components.\n *\n * @slot label - Contains the group's label.\n * @slot - Intended to contain the items belonging to this group.\n *\n * @csspart label - The native label element.\n */\n@themes({ fluent })\nexport default class IgcDropdownGroupComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-group';\n\n public static override styles = styles;\n protected parent!: SizableInterface;\n\n /** All child `igc-dropdown-item`s. */\n @blazorSuppress()\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n public items!: Array<IgcDropdownItemComponent>;\n\n public override connectedCallback() {\n super.connectedCallback();\n\n this.setAttribute('role', 'group');\n this.parent = this.getParent();\n }\n\n protected getParent() {\n return this.closest('igc-dropdown')!;\n }\n\n protected override render() {\n this.setAttribute('size', this.parent?.size ?? 'large');\n\n return html`\n <label part=\"label\"><slot name=\"label\"></slot></label>\n <slot></slot>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-group': IgcDropdownGroupComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown-group.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGxE,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAWhE,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,UAAU;IAW/C,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IAES,SAAS;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAE,CAAC;IACvC,CAAC;IAEkB,MAAM;;QACvB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,mCAAI,OAAO,CAAC,CAAC;QAExD,OAAO,IAAI,CAAA;;;KAGV,CAAC;IACJ,CAAC;;AA5BsB,iCAAO,GAAW,oBAAoB,CAAC;AAEvC,gCAAM,GAAG,MAAM,CAAC;AAMvC;IAFC,cAAc,EAAE;IAChB,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;wDACzB;AAT5B,yBAAyB;IAD7C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;GACE,yBAAyB,CA8B7C;eA9BoB,yBAAyB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { SizableInterface } from '../common/mixins/sizable.js';\nimport type IgcDropdownItemComponent from './dropdown-item';\nimport { styles } from './themes/light/dropdown-group.base.css.js';\nimport { styles as fluent } from './themes/light/dropdown-group.fluent.css.js';\n\n/**\n * @element igc-dropdown-group - A container for a group of `igc-dropdown-item` components.\n *\n * @slot label - Contains the group's label.\n * @slot - Intended to contain the items belonging to this group.\n *\n * @csspart label - The native label element.\n */\n@themes({ fluent })\nexport default class IgcDropdownGroupComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-group';\n\n public static override styles = styles;\n protected parent!: SizableInterface;\n\n /** All child `igc-dropdown-item`s. */\n @blazorSuppress()\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n public items!: Array<IgcDropdownItemComponent>;\n\n public override connectedCallback() {\n super.connectedCallback();\n\n this.setAttribute('role', 'group');\n this.parent = this.getParent();\n }\n\n protected getParent() {\n return this.closest('igc-dropdown')!;\n }\n\n protected override render() {\n this.setAttribute('size', this.parent?.size ?? 'large');\n\n return html`\n <label part=\"label\"><slot name=\"label\"></slot></label>\n <slot></slot>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-group': IgcDropdownGroupComponent;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-header.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-header.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAQhF,IAAqB,0BAA0B,GAA/C,MAAqB,0BAA2B,SAAQ,UAAU;IAK7C,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;CACF,CAAA;AAPwB,kCAAO,GAAW,qBAAsB,CAAA;AAExC,iCAAM,GAAG,MAAO,CAAA;AAHpB,0BAA0B;IAD9C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;GACT,0BAA0B,CAQ9C;eARoB,0BAA0B","sourcesContent":["import { html, LitElement } from 'lit';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { styles } from './themes/light/dropdown-header.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-header.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown-header.fluent.css.js';\n\n/**\n * @element igc-dropdown-header - Represents a header item in a dropdown list.\n *\n * @slot - Renders the header.\n */\n@themes({ bootstrap, fluent })\nexport default class IgcDropdownHeaderComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-header';\n\n public static override styles = styles;\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-header': IgcDropdownHeaderComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown-header.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-header.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAQjE,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,UAAU;IAK7C,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;;AANsB,kCAAO,GAAW,qBAAqB,CAAC;AAExC,iCAAM,GAAG,MAAM,CAAC;AAHpB,0BAA0B;IAD9C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;GACT,0BAA0B,CAQ9C;eARoB,0BAA0B","sourcesContent":["import { html, LitElement } from 'lit';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { styles } from './themes/light/dropdown-header.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-header.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown-header.fluent.css.js';\n\n/**\n * @element igc-dropdown-header - Represents a header item in a dropdown list.\n *\n * @slot - Renders the header.\n */\n@themes({ bootstrap, fluent })\nexport default class IgcDropdownHeaderComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-header';\n\n public static override styles = styles;\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-header': IgcDropdownHeaderComponent;\n }\n}\n"]}
@@ -19,19 +19,23 @@ export default class IgcDropdownItemComponent extends LitElement {
19
19
  /**
20
20
  * Тhe current value of the item.
21
21
  * If not specified, the element's text content is used.
22
+ * @attr
22
23
  */
23
24
  get value(): string;
24
25
  set value(value: string);
25
26
  /**
26
27
  * Determines whether the item is selected.
28
+ * @attr
27
29
  */
28
30
  selected: boolean;
29
31
  /**
30
32
  * Determines whether the item is active.
33
+ * @attr
31
34
  */
32
35
  active: boolean;
33
36
  /**
34
37
  * Determines whether the item is disabled.
38
+ * @attr
35
39
  */
36
40
  disabled: boolean;
37
41
  protected selectedChange(): void;
@@ -54,7 +54,7 @@ let IgcDropdownItemComponent = class IgcDropdownItemComponent extends LitElement
54
54
  IgcDropdownItemComponent.tagName = 'igc-dropdown-item';
55
55
  IgcDropdownItemComponent.styles = styles;
56
56
  __decorate([
57
- property({ type: String })
57
+ property()
58
58
  ], IgcDropdownItemComponent.prototype, "value", null);
59
59
  __decorate([
60
60
  property({ type: Boolean, reflect: true })
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAgB9E,IAAqB,wBAAwB,GAA7C,MAAqB,wBAAyB,SAAQ,UAAU;IAAhE;;QA0BS,aAAQ,GAAG,KAAK,CAAC;QAMjB,WAAM,GAAG,KAAK,CAAC;QAMf,aAAQ,GAAG,KAAK,CAAC;IA6B1B,CAAC;IAvDC,IAAW,KAAK;;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,CAAC;IAC5D,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAqBS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAEe,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;CACF,CAAA;AAlEwB,gCAAO,GAAW,mBAAoB,CAAA;AAEtC,+BAAM,GAAG,MAAO,CAAA;AASvC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;qDAG1B;AAYD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAMxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wDACrB;AAMtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAGxB;IADC,KAAK,CAAC,UAAU,CAAC;8DAMjB;AAGD;IADC,KAAK,CAAC,UAAU,CAAC;8DAKjB;AArDkB,wBAAwB;IAD5C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,wBAAwB,CAmE5C;eAnEoB,wBAAwB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { styles } from './themes/light/dropdown-item.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-item.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown-item.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown-item.indigo.css.js';\n\n/**\n * Represents an item in a dropdown list.\n *\n * @element igc-dropdown-item\n *\n * @slot prefix - Renders content before the item's main content.\n * @slot - Renders the item's main content.\n * @slot suffix - Renders content after the item's main content.\n *\n * @csspart prefix - The prefix wrapper.\n * @csspart content - The main content wrapper.\n * @csspart suffix - The suffix wrapper.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcDropdownItemComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-item';\n\n public static override styles = styles;\n\n private _value!: string;\n\n /**\n * Тhe current value of the item.\n * If not specified, the element's text content is used.\n */\n @property({ type: String })\n public get value() {\n return this._value ? this._value : this.textContent ?? '';\n }\n\n public set value(value: string) {\n const oldVal = this._value;\n this._value = value;\n this.requestUpdate('value', oldVal);\n }\n\n /**\n * Determines whether the item is selected.\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * Determines whether the item is active.\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n /**\n * Determines whether the item is disabled.\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n @watch('selected')\n protected selectedChange() {\n this.selected\n ? this.setAttribute('aria-selected', 'true')\n : this.removeAttribute('aria-selected');\n this.active = this.selected;\n }\n\n @watch('disabled')\n protected disabledChange() {\n this.disabled\n ? this.setAttribute('aria-disabled', 'true')\n : this.removeAttribute('aria-disabled');\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n }\n\n protected override render() {\n return html`\n <section part=\"prefix\"><slot name=\"prefix\"></slot></section>\n <section part=\"content\"><slot></slot></section>\n <section part=\"suffix\"><slot name=\"suffix\"></slot></section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-item': IgcDropdownItemComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAgB/D,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,UAAU;IAAjD;;QA4BN,aAAQ,GAAG,KAAK,CAAC;QAOjB,WAAM,GAAG,KAAK,CAAC;QAOf,aAAQ,GAAG,KAAK,CAAC;IA6B1B,CAAC;IA1DC,IAAW,KAAK;;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,CAAC;IAC5D,CAAC;IAED,IAAW,KAAK,CAAC,KAAa;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAwBS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAGS,cAAc;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAEe,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;;AArEsB,gCAAO,GAAW,mBAAmB,CAAC;AAEtC,+BAAM,GAAG,MAAM,CAAC;AAUvC;IADC,QAAQ,EAAE;qDAGV;AAaD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAOxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wDACrB;AAOtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0DACnB;AAGxB;IADC,KAAK,CAAC,UAAU,CAAC;8DAMjB;AAGD;IADC,KAAK,CAAC,UAAU,CAAC;8DAKjB;AAzDkB,wBAAwB;IAD5C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,wBAAwB,CAuE5C;eAvEoB,wBAAwB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { styles } from './themes/light/dropdown-item.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown-item.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown-item.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown-item.indigo.css.js';\n\n/**\n * Represents an item in a dropdown list.\n *\n * @element igc-dropdown-item\n *\n * @slot prefix - Renders content before the item's main content.\n * @slot - Renders the item's main content.\n * @slot suffix - Renders content after the item's main content.\n *\n * @csspart prefix - The prefix wrapper.\n * @csspart content - The main content wrapper.\n * @csspart suffix - The suffix wrapper.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcDropdownItemComponent extends LitElement {\n public static readonly tagName: string = 'igc-dropdown-item';\n\n public static override styles = styles;\n\n private _value!: string;\n\n /**\n * Тhe current value of the item.\n * If not specified, the element's text content is used.\n * @attr\n */\n @property()\n public get value() {\n return this._value ? this._value : this.textContent ?? '';\n }\n\n public set value(value: string) {\n const oldVal = this._value;\n this._value = value;\n this.requestUpdate('value', oldVal);\n }\n\n /**\n * Determines whether the item is selected.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /**\n * Determines whether the item is active.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n /**\n * Determines whether the item is disabled.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n @watch('selected')\n protected selectedChange() {\n this.selected\n ? this.setAttribute('aria-selected', 'true')\n : this.removeAttribute('aria-selected');\n this.active = this.selected;\n }\n\n @watch('disabled')\n protected disabledChange() {\n this.disabled\n ? this.setAttribute('aria-disabled', 'true')\n : this.removeAttribute('aria-disabled');\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'option');\n }\n\n protected override render() {\n return html`\n <section part=\"prefix\"><slot name=\"prefix\"></slot></section>\n <section part=\"content\"><slot></slot></section>\n <section part=\"suffix\"><slot name=\"suffix\"></slot></section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown-item': IgcDropdownItemComponent;\n }\n}\n"]}
@@ -40,28 +40,51 @@ export default class IgcDropdownComponent extends IgcDropdownComponent_base impl
40
40
  protected scrollContainer: HTMLElement;
41
41
  protected items: Array<IgcDropdownItemComponent>;
42
42
  protected groups: Array<IgcDropdownGroupComponent>;
43
- /** Whether the dropdown should be kept open on selection. */
43
+ /**
44
+ * Whether the dropdown should be kept open on selection.
45
+ * @attr keep-open-on-select
46
+ */
44
47
  keepOpenOnSelect: boolean;
45
- /** Sets the open state of the component. */
48
+ /**
49
+ * Sets the open state of the component.
50
+ * @attr
51
+ */
46
52
  open: boolean;
47
53
  /** The preferred placement of the component around the target element.
48
54
  * @type {"top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end"}
55
+ * @attr
49
56
  */
50
57
  placement: IgcPlacement;
51
- /** Sets the component's positioning strategy. */
58
+ /**
59
+ * Sets the component's positioning strategy.
60
+ * @attr position-strategy
61
+ */
52
62
  positionStrategy: 'absolute' | 'fixed';
53
- /** Determines the behavior of the component during scrolling the container. */
63
+ /**
64
+ * Determines the behavior of the component during scrolling the container.
65
+ * @attr scroll-strategy
66
+ */
54
67
  scrollStrategy: 'scroll' | 'block' | 'close';
55
68
  /**
56
69
  * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.
57
70
  * When true, once enough space is detected on its preferred side, it will flip back.
71
+ * @attr
58
72
  */
59
73
  flip: boolean;
60
- /** The distance from the target element. */
74
+ /**
75
+ * The distance from the target element.
76
+ * @attr
77
+ */
61
78
  distance: number;
62
- /** Whether the component should be kept open on clicking outside of it. */
79
+ /**
80
+ * Whether the component should be kept open on clicking outside of it.
81
+ * @attr keep-open-on-outside-click
82
+ */
63
83
  keepOpenOnOutsideClick: boolean;
64
- /** Whether the dropdown's width should be the same as the target's one. */
84
+ /**
85
+ * Whether the dropdown's width should be the same as the target's one.
86
+ * @attr same-width
87
+ */
65
88
  sameWidth: boolean;
66
89
  protected toggleDirectiveChange(): void;
67
90
  protected updateOptions(): void;