igniteui-webcomponents 4.2.2 → 4.3.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +2 -6
  3. package/components/accordion/accordion.js +2 -1
  4. package/components/accordion/accordion.js.map +1 -1
  5. package/components/avatar/avatar.js +2 -2
  6. package/components/avatar/avatar.js.map +1 -1
  7. package/components/avatar/themes/dark/avatar.base.bootstrap.css.js +13 -0
  8. package/components/avatar/themes/dark/avatar.base.bootstrap.css.js.map +1 -0
  9. package/components/avatar/themes/{avatar.base.css.js → light/avatar.base.css.js} +23 -8
  10. package/components/avatar/themes/light/avatar.base.css.js.map +1 -0
  11. package/components/avatar/themes/light/avatar.bootstrap.css.js +24 -0
  12. package/components/avatar/themes/light/avatar.bootstrap.css.js.map +1 -0
  13. package/components/badge/badge.js.map +1 -1
  14. package/components/badge/themes/light/badge.base.css.js +4 -5
  15. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  16. package/components/button/button-base.js.map +1 -1
  17. package/components/button/button.js.map +1 -1
  18. package/components/button/icon-button.js +1 -1
  19. package/components/button/icon-button.js.map +1 -1
  20. package/components/button/themes/button/dark/button.bootstrap.css.js +13 -0
  21. package/components/button/themes/button/dark/button.bootstrap.css.js.map +1 -0
  22. package/components/button/themes/button/dark/button.fluent.css.js +11 -1
  23. package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
  24. package/components/button/themes/button/dark/button.indigo.css.d.ts +1 -0
  25. package/components/button/themes/button/dark/button.indigo.css.js +13 -0
  26. package/components/button/themes/button/dark/button.indigo.css.js.map +1 -0
  27. package/components/button/themes/button/dark/button.material.css.d.ts +1 -0
  28. package/components/button/themes/button/dark/button.material.css.js +13 -0
  29. package/components/button/themes/button/dark/button.material.css.js.map +1 -0
  30. package/components/button/themes/button/light/button.base.css.js +6 -57
  31. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  32. package/components/button/themes/button/light/button.bootstrap.css.js +227 -71
  33. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  34. package/components/button/themes/button/light/button.fluent.css.js +287 -70
  35. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  36. package/components/button/themes/button/light/button.indigo.css.js +280 -78
  37. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  38. package/components/button/themes/button/light/button.material.css.js +280 -170
  39. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  40. package/components/button/themes/icon-button/light/icon-button.base.css.js +10 -8
  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 +24 -0
  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 +16 -0
  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 +9 -0
  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 +7 -0
  49. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  50. package/components/calendar/calendar.js.map +1 -1
  51. package/components/calendar/common/calendar-base.d.ts +7 -3
  52. package/components/calendar/common/calendar-base.js +24 -2
  53. package/components/calendar/common/calendar-base.js.map +1 -1
  54. package/components/calendar/days-view/days-view.js.map +1 -1
  55. package/components/calendar/months-view/months-view.js.map +1 -1
  56. package/components/calendar/themes/calendar.base.css.js +4 -5
  57. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  58. package/components/calendar/themes/fluent/calendar.fluent.css.js +4 -5
  59. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  60. package/components/calendar/years-view/years-view.js.map +1 -1
  61. package/components/card/card.actions.js.map +1 -1
  62. package/components/card/card.content.js.map +1 -1
  63. package/components/card/card.header.js.map +1 -1
  64. package/components/card/card.js.map +1 -1
  65. package/components/card/card.media.js +2 -1
  66. package/components/card/card.media.js.map +1 -1
  67. package/components/card/themes/light/card.actions.bootstrap.css.js +4 -5
  68. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  69. package/components/card/themes/light/card.actions.material.css.js +4 -5
  70. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  71. package/components/card/themes/light/card.content.bootstrap.css.js +5 -8
  72. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  73. package/components/card/themes/light/card.content.indigo.css.js +5 -8
  74. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  75. package/components/card/themes/light/card.content.material.css.js +5 -8
  76. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  77. package/components/card/themes/light/card.header.bootstrap.css.js +4 -8
  78. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  79. package/components/card/themes/light/card.header.fluent.css.js +4 -8
  80. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  81. package/components/card/themes/light/card.header.indigo.css.js +4 -8
  82. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  83. package/components/card/themes/light/card.header.material.css.js +4 -8
  84. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  85. package/components/card/themes/light/card.material.css.js +15 -5
  86. package/components/card/themes/light/card.material.css.js.map +1 -1
  87. package/components/card/themes/light/card.media.material.css.js +4 -5
  88. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  89. package/components/checkbox/checkbox-base.js.map +1 -1
  90. package/components/checkbox/checkbox.js.map +1 -1
  91. package/components/checkbox/switch.js.map +1 -1
  92. package/components/checkbox/themes/dark/checkbox.bootstrap.css.d.ts +1 -0
  93. package/components/checkbox/themes/dark/checkbox.bootstrap.css.js +13 -0
  94. package/components/checkbox/themes/dark/checkbox.bootstrap.css.js.map +1 -0
  95. package/components/checkbox/themes/dark/checkbox.fluent.css.js +11 -1
  96. package/components/checkbox/themes/dark/checkbox.fluent.css.js.map +1 -1
  97. package/components/checkbox/themes/dark/checkbox.indigo.css.js +11 -1
  98. package/components/checkbox/themes/dark/checkbox.indigo.css.js.map +1 -1
  99. package/components/checkbox/themes/dark/checkbox.material.css.d.ts +1 -0
  100. package/components/checkbox/themes/dark/checkbox.material.css.js +13 -0
  101. package/components/checkbox/themes/dark/checkbox.material.css.js.map +1 -0
  102. package/components/checkbox/themes/dark/switch.bootstrap.css.d.ts +1 -0
  103. package/components/checkbox/themes/dark/switch.bootstrap.css.js +13 -0
  104. package/components/checkbox/themes/dark/switch.bootstrap.css.js.map +1 -0
  105. package/components/checkbox/themes/dark/switch.fluent.css.js +11 -1
  106. package/components/checkbox/themes/dark/switch.fluent.css.js.map +1 -1
  107. package/components/checkbox/themes/dark/switch.indigo.css.js +11 -1
  108. package/components/checkbox/themes/dark/switch.indigo.css.js.map +1 -1
  109. package/components/checkbox/themes/dark/switch.material.css.d.ts +1 -0
  110. package/components/checkbox/themes/dark/switch.material.css.js +13 -0
  111. package/components/checkbox/themes/dark/switch.material.css.js.map +1 -0
  112. package/components/checkbox/themes/light/checkbox.base.css.js +15 -51
  113. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  114. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +122 -46
  115. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  116. package/components/checkbox/themes/light/checkbox.fluent.css.js +170 -87
  117. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  118. package/components/checkbox/themes/light/checkbox.indigo.css.js +134 -49
  119. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  120. package/components/checkbox/themes/light/checkbox.material.css.js +146 -18
  121. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  122. package/components/checkbox/themes/light/switch.base.css.js +29 -56
  123. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  124. package/components/checkbox/themes/light/switch.bootstrap.css.js +146 -95
  125. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  126. package/components/checkbox/themes/light/switch.fluent.css.js +142 -80
  127. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  128. package/components/checkbox/themes/light/switch.indigo.css.js +152 -97
  129. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  130. package/components/checkbox/themes/light/switch.material.css.js +169 -37
  131. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  132. package/components/chip/chip.js.map +1 -1
  133. package/components/chip/themes/chip.base.css.js +4 -5
  134. package/components/chip/themes/chip.base.css.js.map +1 -1
  135. package/components/chip/themes/chip.bootstrap.css.js +4 -5
  136. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  137. package/components/chip/themes/chip.fluent.css.js +5 -5
  138. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  139. package/components/chip/themes/chip.indigo.css.js +4 -5
  140. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  141. package/components/chip/themes/chip.material.css.js +5 -5
  142. package/components/chip/themes/chip.material.css.js.map +1 -1
  143. package/components/combo/combo-header.js.map +1 -1
  144. package/components/combo/combo-item.d.ts +5 -0
  145. package/components/combo/combo-item.js.map +1 -1
  146. package/components/combo/combo-list.js +2 -1
  147. package/components/combo/combo-list.js.map +1 -1
  148. package/components/combo/combo.d.ts +50 -4
  149. package/components/combo/combo.js +57 -26
  150. package/components/combo/combo.js.map +1 -1
  151. package/components/combo/controllers/data.js +9 -5
  152. package/components/combo/controllers/data.js.map +1 -1
  153. package/components/combo/controllers/selection.d.ts +2 -1
  154. package/components/combo/controllers/selection.js +14 -2
  155. package/components/combo/controllers/selection.js.map +1 -1
  156. package/components/combo/operations/filter.d.ts +3 -1
  157. package/components/combo/operations/filter.js +10 -7
  158. package/components/combo/operations/filter.js.map +1 -1
  159. package/components/combo/operations/group.d.ts +2 -2
  160. package/components/combo/operations/group.js +8 -5
  161. package/components/combo/operations/group.js.map +1 -1
  162. package/components/combo/themes/light/combo.base.css.js +4 -5
  163. package/components/combo/themes/light/combo.base.css.js.map +1 -1
  164. package/components/combo/themes/light/header/combo-header.base.css.js +4 -5
  165. package/components/combo/themes/light/header/combo-header.base.css.js.map +1 -1
  166. package/components/combo/themes/light/item/combo-item.base.css.js +4 -5
  167. package/components/combo/themes/light/item/combo-item.base.css.js.map +1 -1
  168. package/components/combo/types.d.ts +5 -4
  169. package/components/combo/types.js.map +1 -1
  170. package/components/common/mixins/sizable.js.map +1 -1
  171. package/components/date-time-input/date-time-input.js +2 -1
  172. package/components/date-time-input/date-time-input.js.map +1 -1
  173. package/components/date-time-input/date-util.js +2 -1
  174. package/components/date-time-input/date-util.js.map +1 -1
  175. package/components/dialog/dialog.d.ts +8 -1
  176. package/components/dialog/dialog.js +12 -3
  177. package/components/dialog/dialog.js.map +1 -1
  178. package/components/dialog/themes/light/dialog.base.css.js +5 -13
  179. package/components/dialog/themes/light/dialog.base.css.js.map +1 -1
  180. package/components/dropdown/dropdown-group.js.map +1 -1
  181. package/components/dropdown/dropdown-header.js.map +1 -1
  182. package/components/dropdown/dropdown-item.js.map +1 -1
  183. package/components/dropdown/dropdown.js +2 -0
  184. package/components/dropdown/dropdown.js.map +1 -1
  185. package/components/dropdown/themes/light/dropdown-group.base.css.js +4 -5
  186. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  187. package/components/dropdown/themes/light/dropdown-header.base.css.js +4 -5
  188. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  189. package/components/dropdown/themes/light/dropdown-item.base.css.js +4 -5
  190. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  191. package/components/dropdown/themes/light/dropdown.base.css.js +4 -5
  192. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  193. package/components/expansion-panel/expansion-panel.d.ts +1 -0
  194. package/components/expansion-panel/expansion-panel.js.map +1 -1
  195. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +4 -5
  196. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  197. package/components/form/form.js +2 -1
  198. package/components/form/form.js.map +1 -1
  199. package/components/icon/dark/icon.bootstrap.css.d.ts +1 -0
  200. package/components/icon/dark/icon.bootstrap.css.js +13 -0
  201. package/components/icon/dark/icon.bootstrap.css.js.map +1 -0
  202. package/components/icon/dark/icon.fluent.css.d.ts +1 -0
  203. package/components/{avatar/themes/avatar.bootstrap.css.js → icon/dark/icon.fluent.css.js} +11 -5
  204. package/components/icon/dark/icon.fluent.css.js.map +1 -0
  205. package/components/icon/dark/icon.indigo.css.d.ts +1 -0
  206. package/components/icon/dark/icon.indigo.css.js +13 -0
  207. package/components/icon/dark/icon.indigo.css.js.map +1 -0
  208. package/components/icon/dark/icon.material.css.d.ts +1 -0
  209. package/components/icon/dark/icon.material.css.js +13 -0
  210. package/components/icon/dark/icon.material.css.js.map +1 -0
  211. package/components/icon/icon.base.css.d.ts +1 -0
  212. package/components/icon/{icon.material.css.js → icon.base.css.js} +11 -13
  213. package/components/icon/icon.base.css.js.map +1 -0
  214. package/components/icon/icon.js +12 -3
  215. package/components/icon/icon.js.map +1 -1
  216. package/components/icon/light/icon.bootstrap.css.d.ts +1 -0
  217. package/components/icon/light/icon.bootstrap.css.js +58 -0
  218. package/components/icon/light/icon.bootstrap.css.js.map +1 -0
  219. package/components/icon/light/icon.fluent.css.d.ts +1 -0
  220. package/components/icon/light/icon.fluent.css.js +58 -0
  221. package/components/icon/light/icon.fluent.css.js.map +1 -0
  222. package/components/icon/light/icon.indigo.css.d.ts +1 -0
  223. package/components/icon/light/icon.indigo.css.js +58 -0
  224. package/components/icon/light/icon.indigo.css.js.map +1 -0
  225. package/components/icon/light/icon.material.css.d.ts +1 -0
  226. package/components/icon/light/icon.material.css.js +58 -0
  227. package/components/icon/light/icon.material.css.js.map +1 -0
  228. package/components/input/input-base.js.map +1 -1
  229. package/components/input/input.js +2 -1
  230. package/components/input/input.js.map +1 -1
  231. package/components/input/themes/light/input.base.css.js +4 -5
  232. package/components/input/themes/light/input.base.css.js.map +1 -1
  233. package/components/list/list-header.js.map +1 -1
  234. package/components/list/list-item.js.map +1 -1
  235. package/components/list/list.js.map +1 -1
  236. package/components/list/themes/light/list-header.base.css.js +4 -5
  237. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  238. package/components/list/themes/light/list-item.base.css.js +4 -5
  239. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  240. package/components/list/themes/light/list.base.css.js +4 -5
  241. package/components/list/themes/light/list.base.css.js.map +1 -1
  242. package/components/mask-input/mask-input-base.js.map +1 -1
  243. package/components/mask-input/mask-input.js +2 -1
  244. package/components/mask-input/mask-input.js.map +1 -1
  245. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  246. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  247. package/components/nav-drawer/nav-drawer.js.map +1 -1
  248. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +4 -5
  249. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  250. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +4 -5
  251. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  252. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +4 -5
  253. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  254. package/components/navbar/navbar.js +3 -2
  255. package/components/navbar/navbar.js.map +1 -1
  256. package/components/navbar/themes/dark/navbar.bootstrap.css.d.ts +1 -0
  257. package/components/navbar/themes/dark/navbar.bootstrap.css.js +13 -0
  258. package/components/navbar/themes/dark/navbar.bootstrap.css.js.map +1 -0
  259. package/components/navbar/themes/dark/navbar.fluent.css.d.ts +1 -0
  260. package/components/navbar/themes/dark/navbar.fluent.css.js +13 -0
  261. package/components/navbar/themes/dark/navbar.fluent.css.js.map +1 -0
  262. package/components/navbar/themes/dark/navbar.indigo.css.d.ts +1 -0
  263. package/components/navbar/themes/dark/navbar.indigo.css.js +13 -0
  264. package/components/navbar/themes/dark/navbar.indigo.css.js.map +1 -0
  265. package/components/navbar/themes/dark/navbar.material.css.d.ts +1 -0
  266. package/components/navbar/themes/dark/navbar.material.css.js +13 -0
  267. package/components/navbar/themes/dark/navbar.material.css.js.map +1 -0
  268. package/components/navbar/themes/light/navbar.bootstrap.css.js +60 -6
  269. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  270. package/components/navbar/themes/light/navbar.fluent.css.js +66 -1
  271. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  272. package/components/navbar/themes/light/navbar.indigo.css.js +63 -3
  273. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  274. package/components/navbar/themes/light/navbar.material.css.d.ts +1 -0
  275. package/components/navbar/themes/light/navbar.material.css.js +67 -0
  276. package/components/navbar/themes/light/navbar.material.css.js.map +1 -0
  277. package/components/navbar/themes/navbar.base.css.d.ts +1 -0
  278. package/components/navbar/themes/{light/navbar.base.css.js → navbar.base.css.js} +9 -11
  279. package/components/navbar/themes/navbar.base.css.js.map +1 -0
  280. package/components/progress/base.js.map +1 -1
  281. package/components/progress/circular-gradient.js +2 -1
  282. package/components/progress/circular-gradient.js.map +1 -1
  283. package/components/progress/circular-progress.js.map +1 -1
  284. package/components/progress/linear-progress.js.map +1 -1
  285. package/components/progress/themes/circular/circular.progress.base.css.js +4 -5
  286. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  287. package/components/progress/themes/linear/linear.progress.base.css.js +4 -5
  288. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  289. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +4 -5
  290. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  291. package/components/progress/themes/linear/linear.progress.indigo.css.js +4 -5
  292. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  293. package/components/radio/radio.js +6 -3
  294. package/components/radio/radio.js.map +1 -1
  295. package/components/radio/themes/dark/radio.bootstrap.css.d.ts +1 -0
  296. package/components/radio/themes/dark/radio.bootstrap.css.js +13 -0
  297. package/components/radio/themes/dark/radio.bootstrap.css.js.map +1 -0
  298. package/components/radio/themes/dark/radio.fluent.css.js +11 -1
  299. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  300. package/components/radio/themes/dark/radio.indigo.css.js +11 -1
  301. package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
  302. package/components/radio/themes/dark/radio.material.css.js +11 -1
  303. package/components/radio/themes/dark/radio.material.css.js.map +1 -1
  304. package/components/radio/themes/light/radio.base.css.js +22 -41
  305. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  306. package/components/radio/themes/light/radio.bootstrap.css.js +100 -30
  307. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  308. package/components/radio/themes/light/radio.fluent.css.js +156 -71
  309. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  310. package/components/radio/themes/light/radio.indigo.css.js +104 -56
  311. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  312. package/components/radio/themes/light/radio.material.css.js +129 -16
  313. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  314. package/components/radio-group/radio-group.base.css.js +4 -5
  315. package/components/radio-group/radio-group.base.css.js.map +1 -1
  316. package/components/radio-group/radio-group.js.map +1 -1
  317. package/components/rating/rating-symbol.base.css.js +4 -5
  318. package/components/rating/rating-symbol.base.css.js.map +1 -1
  319. package/components/rating/rating-symbol.js +2 -1
  320. package/components/rating/rating-symbol.js.map +1 -1
  321. package/components/rating/rating.base.css.js +4 -5
  322. package/components/rating/rating.base.css.js.map +1 -1
  323. package/components/rating/rating.js.map +1 -1
  324. package/components/ripple/ripple.js +2 -1
  325. package/components/ripple/ripple.js.map +1 -1
  326. package/components/ripple/ripple.material.css.js +4 -5
  327. package/components/ripple/ripple.material.css.js.map +1 -1
  328. package/components/select/select-group.js +2 -1
  329. package/components/select/select-group.js.map +1 -1
  330. package/components/select/select-header.js +2 -1
  331. package/components/select/select-header.js.map +1 -1
  332. package/components/select/select-item.js +2 -1
  333. package/components/select/select-item.js.map +1 -1
  334. package/components/select/select.d.ts +2 -0
  335. package/components/select/select.js +7 -4
  336. package/components/select/select.js.map +1 -1
  337. package/components/select/themes/light/select.base.css.js +4 -5
  338. package/components/select/themes/light/select.base.css.js.map +1 -1
  339. package/components/slider/range-slider.js +2 -1
  340. package/components/slider/range-slider.js.map +1 -1
  341. package/components/slider/slider-base.js.map +1 -1
  342. package/components/slider/slider-label.js +2 -1
  343. package/components/slider/slider-label.js.map +1 -1
  344. package/components/slider/slider.js +2 -1
  345. package/components/slider/slider.js.map +1 -1
  346. package/components/slider/themes/light/slider.base.css.js +4 -5
  347. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  348. package/components/snackbar/snackbar.js.map +1 -1
  349. package/components/snackbar/themes/light/snackbar.base.css.js +4 -5
  350. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  351. package/components/stepper/step.js.map +1 -1
  352. package/components/stepper/stepper.d.ts +1 -1
  353. package/components/stepper/stepper.js +12 -3
  354. package/components/stepper/stepper.js.map +1 -1
  355. package/components/stepper/themes/step/light/step.base.css.js +7 -5
  356. package/components/stepper/themes/step/light/step.base.css.js.map +1 -1
  357. package/components/stepper/themes/stepper/stepper.base.css.js +13 -6
  358. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -1
  359. package/components/stepper/themes/stepper/stepper.bootstrap.css.js +4 -5
  360. package/components/stepper/themes/stepper/stepper.bootstrap.css.js.map +1 -1
  361. package/components/stepper/themes/stepper/stepper.fluent.css.js +4 -5
  362. package/components/stepper/themes/stepper/stepper.fluent.css.js.map +1 -1
  363. package/components/stepper/themes/stepper/stepper.indigo.css.js +4 -5
  364. package/components/stepper/themes/stepper/stepper.indigo.css.js.map +1 -1
  365. package/components/tabs/tab-panel.js +2 -1
  366. package/components/tabs/tab-panel.js.map +1 -1
  367. package/components/tabs/tab.js.map +1 -1
  368. package/components/tabs/tabs.js +1 -1
  369. package/components/tabs/tabs.js.map +1 -1
  370. package/components/tabs/themes/light/tab-panel.base.css.js +12 -8
  371. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  372. package/components/tabs/themes/light/tab.base.css.js +5 -8
  373. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  374. package/components/tabs/themes/light/tabs.base.css.js +29 -6
  375. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  376. package/components/toast/toast.js.map +1 -1
  377. package/components/toggle/toggle.directive.js +2 -1
  378. package/components/toggle/toggle.directive.js.map +1 -1
  379. package/components/tree/themes/light/tree-item.base.css.js +4 -5
  380. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  381. package/components/tree/themes/light/tree.base.css.js +4 -5
  382. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  383. package/components/tree/tree-item.js.map +1 -1
  384. package/components/tree/tree.js.map +1 -1
  385. package/custom-elements.json +60 -38
  386. package/index.d.ts +1 -1
  387. package/index.js +1 -0
  388. package/index.js.map +1 -1
  389. package/package.json +4 -4
  390. package/themes/dark/bootstrap.css +318 -0
  391. package/themes/dark/fluent.css +301 -23
  392. package/themes/dark/indigo.css +305 -12
  393. package/themes/dark/material.css +327 -6
  394. package/themes/light/bootstrap.css +108 -0
  395. package/themes/light/fluent.css +108 -0
  396. package/themes/light/indigo.css +108 -0
  397. package/themes/light/material.css +108 -0
  398. package/vscode-html-custom-data.json +26 -32
  399. package/components/avatar/themes/avatar.base.css.js.map +0 -1
  400. package/components/avatar/themes/avatar.bootstrap.css.js.map +0 -1
  401. package/components/combo/utils/converters.d.ts +0 -3
  402. package/components/combo/utils/converters.js +0 -9
  403. package/components/combo/utils/converters.js.map +0 -1
  404. package/components/icon/icon.material.css.js.map +0 -1
  405. package/components/navbar/themes/light/navbar.base.css.js.map +0 -1
  406. /package/components/avatar/themes/{avatar.base.css.d.ts → dark/avatar.base.bootstrap.css.d.ts} +0 -0
  407. /package/components/avatar/themes/{avatar.bootstrap.css.d.ts → light/avatar.base.css.d.ts} +0 -0
  408. /package/components/{icon/icon.material.css.d.ts → avatar/themes/light/avatar.bootstrap.css.d.ts} +0 -0
  409. /package/components/{navbar/themes/light/navbar.base.css.d.ts → button/themes/button/dark/button.bootstrap.css.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.base.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuGvB,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 --icon-size: max(var(--is-large, 1) * max(1.5rem, -1 * 1.5rem), var(--is-medium, 1) * max(1.25rem, -1 * 1.25rem), var(--is-small, 1) * max(1rem, -1 * 1rem));\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n height: -webkit-fit-content;\n height: -moz-fit-content;\n height: fit-content;\n}\n\n::slotted(:not(igc-ripple)) {\n --icon-size: max(var(--is-large, 1) * max(1.5rem, -1 * 1.5rem), var(--is-medium, 1) * max(1.25rem, -1 * 1.25rem), var(--is-small, 1) * max(1rem, -1 * 1rem));\n font-size: var(--icon-size) !important;\n vertical-align: middle;\n pointer-events: none;\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 50%), 50%);\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 -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n border: none;\n outline-style: none;\n background: transparent;\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(5px, -1 * 5px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(4px, -1 * 4px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n cursor: pointer;\n -webkit-transition: background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n transition: background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n -o-transition: box-shadow 0.2s ease-in, background 0.15s ease-out;\n transition: box-shadow 0.2s ease-in, background 0.15s ease-out;\n transition: box-shadow 0.2s ease-in, background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n -webkit-transition-delay: 0.05s;\n -o-transition-delay: 0.05s;\n transition-delay: 0.05s;\n font-size: var(--icon-size);\n line-height: 1;\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}\n\n:host([disabled]) {\n pointer-events: none;\n}`;\n"]}
1
+ {"version":3,"file":"icon-button.base.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyGvB,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: 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 --icon-size: 1.125rem;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n width: -webkit-fit-content;\n width: -moz-fit-content;\n width: fit-content;\n height: -webkit-fit-content;\n height: -moz-fit-content;\n height: fit-content;\n}\n\n::slotted(:not(igc-ripple)) {\n --icon-size: 1.125rem;\n font-size: var(--icon-size) !important;\n vertical-align: middle;\n pointer-events: none;\n}\n\n[part=icon] {\n --size: 1.125rem;\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 50%), 50%);\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 -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n border: none;\n outline-style: none;\n background: transparent;\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(5px, -1 * 5px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(4px, -1 * 4px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n cursor: pointer;\n -webkit-transition: background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n transition: background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n -o-transition: box-shadow 0.2s ease-in, background 0.15s ease-out;\n transition: box-shadow 0.2s ease-in, background 0.15s ease-out;\n transition: box-shadow 0.2s ease-in, background 0.15s ease-out, -webkit-box-shadow 0.2s ease-in;\n -webkit-transition-delay: 0.05s;\n -o-transition-delay: 0.05s;\n transition-delay: 0.05s;\n font-size: var(--icon-size);\n line-height: 1;\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}\n\n:host([disabled]) {\n pointer-events: none;\n}`;\n"]}
@@ -25,6 +25,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
25
25
  -webkit-box-shadow: none;
26
26
  box-shadow: none;
27
27
  }
28
+ [part=base] igc-icon {
29
+ color: hsla(var(--ig-primary-500), var(--ig-primary-a));
30
+ }
28
31
 
29
32
  :host([variant=contained]) [part=base] {
30
33
  color: var(--ig-primary-600-contrast);
@@ -38,6 +41,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
38
41
  -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);
39
42
  box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);
40
43
  }
44
+ :host([variant=contained]) [part=base] igc-icon {
45
+ color: var(--ig-primary-600-contrast);
46
+ }
41
47
 
42
48
  :host([variant=outlined]) [part=base] {
43
49
  -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-500), var(--ig-primary-a));
@@ -47,26 +53,44 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
47
53
  color: var(--ig-primary-600-contrast);
48
54
  background: hsla(var(--ig-primary-600), var(--ig-primary-a));
49
55
  }
56
+ :host([variant=outlined]) [part=base]:hover igc-icon {
57
+ color: var(--ig-primary-600-contrast);
58
+ }
50
59
  :host([variant=outlined]) [part=base]:focus, :host([variant=outlined]) [part=base]:active {
51
60
  color: var(--ig-primary-600-contrast);
52
61
  background: hsla(var(--ig-primary-600), var(--ig-primary-a));
53
62
  -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);
54
63
  box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);
55
64
  }
65
+ :host([variant=outlined]) [part=base]:focus igc-icon, :host([variant=outlined]) [part=base]:active igc-icon {
66
+ color: var(--ig-primary-600-contrast);
67
+ }
68
+ :host([variant=outlined]) igc-icon {
69
+ color: hsla(var(--ig-primary-500), var(--ig-primary-a));
70
+ }
56
71
 
57
72
  :host([disabled]) [part=base] {
58
73
  color: hsla(var(--ig-primary-100), var(--ig-primary-a));
59
74
  background: transparent;
60
75
  }
76
+ :host([disabled]) igc-icon {
77
+ color: hsla(var(--ig-primary-100), var(--ig-primary-a));
78
+ }
61
79
 
62
80
  :host([disabled][variant=contained]) [part=base] {
63
81
  background: hsla(var(--ig-primary-100), var(--ig-primary-a));
64
82
  color: hsla(var(--ig-primary-300), var(--ig-primary-a));
65
83
  }
84
+ :host([disabled][variant=contained]) igc-icon {
85
+ color: hsla(var(--ig-primary-300), var(--ig-primary-a));
86
+ }
66
87
 
67
88
  :host([disabled][variant=outlined]) [part=base] {
68
89
  color: hsla(var(--ig-primary-100), var(--ig-primary-a));
69
90
  -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));
70
91
  box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));
92
+ }
93
+ :host([disabled][variant=outlined]) igc-icon {
94
+ color: hsla(var(--ig-primary-100), var(--ig-primary-a));
71
95
  }`;
72
96
  //# sourceMappingURL=icon-button.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEvB,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 --size: max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.375rem, -1 * 2.375rem), var(--is-small, 1) * max(1.9375rem, -1 * 1.9375rem));\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.25rem), 0.25rem);\n width: var(--size);\n height: var(--size);\n -webkit-transition: color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n transition: color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n -o-transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out;\n transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out;\n transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n padding: max(var(--is-large, 1) * max(12px, -1 * 12px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(9px, -1 * 9px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(7.5px, -1 * 7.5px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]:hover {\n color: hsla(var(--ig-primary-800), var(--ig-primary-a));\n}\n[part=base]:focus, [part=base]:active {\n color: hsla(var(--ig-primary-600), var(--ig-primary-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus, :host([variant=contained]) [part=base]:active {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-500), var(--ig-primary-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=outlined]) [part=base]:hover {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n}\n:host([variant=outlined]) [part=base]:focus, :host([variant=outlined]) [part=base]:active {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n background: transparent;\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-primary-100), var(--ig-primary-a));\n color: hsla(var(--ig-primary-300), var(--ig-primary-a));\n}\n\n:host([disabled][variant=outlined]) [part=base] {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));\n}`;\n"]}
1
+ {"version":3,"file":"icon-button.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6FvB,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 --size: max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.375rem, -1 * 2.375rem), var(--is-small, 1) * max(1.9375rem, -1 * 1.9375rem));\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.25rem), 0.25rem);\n width: var(--size);\n height: var(--size);\n -webkit-transition: color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n transition: color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n -o-transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out;\n transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out;\n transition: box-shadow 0.15s ease-out, color 0.15s ease-out, background 0.15s ease-out, -webkit-box-shadow 0.15s ease-out;\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n padding: max(var(--is-large, 1) * max(12px, -1 * 12px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(9px, -1 * 9px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(7.5px, -1 * 7.5px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]:hover {\n color: hsla(var(--ig-primary-800), var(--ig-primary-a));\n}\n[part=base]:focus, [part=base]:active {\n color: hsla(var(--ig-primary-600), var(--ig-primary-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n[part=base] igc-icon {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus, :host([variant=contained]) [part=base]:active {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n}\n:host([variant=contained]) [part=base] igc-icon {\n color: var(--ig-primary-600-contrast);\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-500), var(--ig-primary-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=outlined]) [part=base]:hover {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n}\n:host([variant=outlined]) [part=base]:hover igc-icon {\n color: var(--ig-primary-600-contrast);\n}\n:host([variant=outlined]) [part=base]:focus, :host([variant=outlined]) [part=base]:active {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n box-shadow: 0 0 0 0.25rem hsla(var(--ig-primary-200), 0.5);\n}\n:host([variant=outlined]) [part=base]:focus igc-icon, :host([variant=outlined]) [part=base]:active igc-icon {\n color: var(--ig-primary-600-contrast);\n}\n:host([variant=outlined]) igc-icon {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n background: transparent;\n}\n:host([disabled]) igc-icon {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-primary-100), var(--ig-primary-a));\n color: hsla(var(--ig-primary-300), var(--ig-primary-a));\n}\n:host([disabled][variant=contained]) igc-icon {\n color: hsla(var(--ig-primary-300), var(--ig-primary-a));\n}\n\n:host([disabled][variant=outlined]) [part=base] {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-primary-100), var(--ig-primary-a));\n}\n:host([disabled][variant=outlined]) igc-icon {\n color: hsla(var(--ig-primary-100), var(--ig-primary-a));\n}`;\n"]}
@@ -38,6 +38,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
38
38
  -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));
39
39
  box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));
40
40
  }
41
+ [part=base] igc-icon {
42
+ color: hsla(var(--ig-primary-500), var(--ig-primary-a));
43
+ }
41
44
 
42
45
  :host([variant=contained]) [part=base] {
43
46
  color: var(--text-color, var(--ig-primary-600-contrast));
@@ -54,6 +57,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
54
57
  -webkit-box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);
55
58
  box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);
56
59
  }
60
+ :host([variant=contained]) igc-icon {
61
+ color: var(--text-color, var(--ig-primary-600-contrast));
62
+ }
57
63
 
58
64
  :host([variant=outlined]) [part=base] {
59
65
  color: hsla(var(--ig-gray-900), var(--ig-gray-a));
@@ -69,14 +75,24 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
69
75
  :host([variant=outlined]) [part=base]:focus:active {
70
76
  background: hsla(var(--ig-gray-200), var(--ig-gray-a));
71
77
  }
78
+ :host([variant=outlined]) igc-icon {
79
+ color: hsla(var(--ig-gray-900), var(--ig-gray-a));
80
+ }
72
81
 
73
82
  :host([disabled]) [part=base] {
74
83
  color: hsla(var(--ig-gray-400), var(--ig-gray-a));
75
84
  background: hsla(var(--ig-gray-100), var(--ig-gray-a));
76
85
  }
86
+ :host([disabled]) igc-icon {
87
+ color: hsla(var(--ig-gray-400), var(--ig-gray-a));
88
+ }
77
89
 
78
90
  :host([disabled][variant=contained]) [part=base],
79
91
  :host([disabled][variant=outlined]) [part=base] {
80
92
  color: hsla(var(--ig-gray-500), var(--ig-gray-a));
93
+ }
94
+ :host([disabled][variant=contained]) igc-icon,
95
+ :host([disabled][variant=outlined]) igc-icon {
96
+ color: hsla(var(--ig-gray-500), var(--ig-gray-a));
81
97
  }`;
82
98
  //# sourceMappingURL=icon-button.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+EvB,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 --size: max(var(--is-large, 1) * max(2.375rem, -1 * 2.375rem), var(--is-medium, 1) * max(2rem, -1 * 2rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem));\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);\n background: transparent;\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n -webkit-transition: color 0.15s ease-out, background 0.15s ease-out;\n -o-transition: color 0.15s ease-out, background 0.15s ease-out;\n transition: color 0.15s ease-out, background 0.15s ease-out;\n -webkit-box-shadow: none;\n box-shadow: none;\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(7px, -1 * 7px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(4px, -1 * 4px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]::after {\n position: absolute;\n content: \"\";\n pointer-events: none;\n top: 2px;\n left: 2px;\n width: calc(100% - 4px);\n height: calc(100% - 4px);\n}\n[part=base]:hover {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n[part=base]:active {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n background: hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n[part=base]:focus-visible::after {\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--text-color, var(--ig-primary-600-contrast));\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: var(--hover-background, hsla(var(--ig-primary-600), var(--ig-primary-a)));\n}\n:host([variant=contained]) [part=base]:active {\n color: var(--ig-primary-800-contrast);\n background: hsla(var(--ig-primary-800), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus-visible::after {\n -webkit-box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);\n box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);\n}\n\n:host([variant=outlined]) [part=base] {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n -webkit-box-shadow: 0 0 0 1px hsla(var(--ig-gray-700), var(--ig-gray-a));\n box-shadow: 0 0 0 1px hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus {\n background: transparent;\n}\n:host([variant=outlined]) [part=base]:hover, :host([variant=outlined]) [part=base]:focus:hover {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus:active {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n\n:host([disabled][variant=contained]) [part=base],\n:host([disabled][variant=outlined]) [part=base] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"icon-button.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+FvB,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 --size: max(var(--is-large, 1) * max(2.375rem, -1 * 2.375rem), var(--is-medium, 1) * max(2rem, -1 * 2rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem));\n}\n\n[part=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);\n background: transparent;\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n -webkit-transition: color 0.15s ease-out, background 0.15s ease-out;\n -o-transition: color 0.15s ease-out, background 0.15s ease-out;\n transition: color 0.15s ease-out, background 0.15s ease-out;\n -webkit-box-shadow: none;\n box-shadow: none;\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(7px, -1 * 7px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(4px, -1 * 4px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]::after {\n position: absolute;\n content: \"\";\n pointer-events: none;\n top: 2px;\n left: 2px;\n width: calc(100% - 4px);\n height: calc(100% - 4px);\n}\n[part=base]:hover {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n[part=base]:active {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n background: hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n[part=base]:focus-visible::after {\n -webkit-box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n box-shadow: 0 0 0 0.0625rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n[part=base] igc-icon {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--text-color, var(--ig-primary-600-contrast));\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: var(--hover-background, hsla(var(--ig-primary-600), var(--ig-primary-a)));\n}\n:host([variant=contained]) [part=base]:active {\n color: var(--ig-primary-800-contrast);\n background: hsla(var(--ig-primary-800), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus-visible::after {\n -webkit-box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);\n box-shadow: 0 0 0 0.0625rem var(--ig-primary-600-contrast);\n}\n:host([variant=contained]) igc-icon {\n color: var(--text-color, var(--ig-primary-600-contrast));\n}\n\n:host([variant=outlined]) [part=base] {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n -webkit-box-shadow: 0 0 0 1px hsla(var(--ig-gray-700), var(--ig-gray-a));\n box-shadow: 0 0 0 1px hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus {\n background: transparent;\n}\n:host([variant=outlined]) [part=base]:hover, :host([variant=outlined]) [part=base]:focus:hover {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus:active {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n:host([variant=outlined]) igc-icon {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n:host([disabled]) igc-icon {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n\n:host([disabled][variant=contained]) [part=base],\n:host([disabled][variant=outlined]) [part=base] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n:host([disabled][variant=contained]) igc-icon,\n:host([disabled][variant=outlined]) igc-icon {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}`;\n"]}
@@ -25,6 +25,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
25
25
  -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));
26
26
  box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));
27
27
  }
28
+ [part=base] igc-icon {
29
+ color: hsla(var(--ig-gray-700), var(--ig-gray-a));
30
+ }
28
31
 
29
32
  :host([variant=contained]) [part=base] {
30
33
  color: var(--ig-primary-600-contrast);
@@ -38,6 +41,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
38
41
  -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));
39
42
  box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));
40
43
  }
44
+ :host([variant=contained]) igc-icon {
45
+ color: var(--ig-primary-600-contrast);
46
+ }
41
47
 
42
48
  :host([variant=outlined]) [part=base] {
43
49
  -webkit-box-shadow: none;
@@ -68,6 +74,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
68
74
  -webkit-box-shadow: none;
69
75
  box-shadow: none;
70
76
  }
77
+ :host([disabled]) igc-icon {
78
+ color: hsla(var(--ig-gray-400), var(--ig-gray-a));
79
+ }
71
80
 
72
81
  :host([disabled][variant=contained]) [part=base] {
73
82
  background: hsla(var(--ig-gray-100), var(--ig-gray-a));
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyEvB,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 --size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(2rem, -1 * 2rem), var(--is-small, 1) * max(1.75rem, -1 * 1.75rem));\n}\n\n[part=base] {\n -webkit-transition: color 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -o-transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(6px, -1 * 6px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]:hover {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n}\n[part=base]:focus, [part=base]:active {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus, :host([variant=contained]) [part=base]:active {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n:host([variant=outlined]) [part=base]::after {\n position: absolute;\n content: \"\";\n -webkit-box-shadow: inset 0 0 0 0.125rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n box-shadow: inset 0 0 0 0.125rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n width: 100%;\n height: 100%;\n border-radius: inherit;\n}\n:host([variant=outlined]) [part=base]:hover {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus, :host([variant=outlined]) [part=base]:active {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"icon-button.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkFvB,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 --size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(2rem, -1 * 2rem), var(--is-small, 1) * max(1.75rem, -1 * 1.75rem));\n}\n\n[part=base] {\n -webkit-transition: color 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -o-transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, background 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(6px, -1 * 6px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part=base]:hover {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n}\n[part=base]:focus, [part=base]:active {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n[part=base] igc-icon {\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host([variant=contained]) [part=base] {\n color: var(--ig-primary-600-contrast);\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:hover {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n}\n:host([variant=contained]) [part=base]:focus, :host([variant=contained]) [part=base]:active {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-primary-200), var(--ig-primary-a));\n}\n:host([variant=contained]) igc-icon {\n color: var(--ig-primary-600-contrast);\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n:host([variant=outlined]) [part=base]::after {\n position: absolute;\n content: \"\";\n -webkit-box-shadow: inset 0 0 0 0.125rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n box-shadow: inset 0 0 0 0.125rem hsla(var(--ig-gray-500), var(--ig-gray-a));\n width: 100%;\n height: 100%;\n border-radius: inherit;\n}\n:host([variant=outlined]) [part=base]:hover {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n:host([variant=outlined]) [part=base]:focus, :host([variant=outlined]) [part=base]:active {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n -webkit-box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: 0 0 0 0.1875rem hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n:host([disabled]) igc-icon {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
@@ -8,6 +8,10 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
8
8
  width: var(--size);
9
9
  height: var(--size);
10
10
  padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(6px, -1 * 6px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
11
+ color: hsla(var(--ig-gray-900), var(--ig-gray-a));
12
+ }
13
+ [part=base] igc-icon {
14
+ color: hsla(var(--ig-gray-900), var(--ig-gray-a));
11
15
  }
12
16
 
13
17
  :host([variant=contained]) [part=base] {
@@ -35,6 +39,9 @@ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-
35
39
  :host([disabled]) [part=base] {
36
40
  color: hsla(var(--ig-gray-500), var(--ig-gray-a));
37
41
  }
42
+ :host([disabled]) igc-icon {
43
+ color: hsla(var(--ig-gray-500), var(--ig-gray-a));
44
+ }
38
45
 
39
46
  :host([disabled][variant=contained]) [part=base] {
40
47
  background: hsla(var(--ig-gray-100), var(--ig-gray-a));
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CvB,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 --size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem));\n}\n\n[part=base] {\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(6px, -1 * 6px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n\n:host([variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host(:focus-within) [part=base] {\n -webkit-transition: none;\n -o-transition: none;\n transition: none;\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-400), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n\n:host([variant=contained]:focus-within) [part=base] {\n background: hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n\n:host([disabled][variant=outlined]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-100), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-100), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"icon-button.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/button/themes/icon-button/light/icon-button.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoDvB,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 --size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.875rem, -1 * 1.875rem), var(--is-small, 1) * max(1.5rem, -1 * 1.5rem));\n}\n\n[part=base] {\n width: var(--size);\n height: var(--size);\n padding: max(var(--is-large, 1) * max(6px, -1 * 6px) * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * max(6px, -1 * 6px) * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * max(6px, -1 * 6px) * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n[part=base] igc-icon {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n:host([variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n\n:host([variant=outlined]) [part=base] {\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-300), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host(:focus-within) [part=base] {\n -webkit-transition: none;\n -o-transition: none;\n transition: none;\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-400), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n\n:host([variant=contained]:focus-within) [part=base] {\n background: hsla(var(--ig-gray-300), var(--ig-gray-a));\n}\n\n:host([disabled]) [part=base] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n:host([disabled]) igc-icon {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n:host([disabled][variant=contained]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n\n:host([disabled][variant=outlined]) [part=base] {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-100), var(--ig-gray-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-gray-100), var(--ig-gray-a));\n}`;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../../src/components/calendar/calendar.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property, query, queryAll, state } from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport {\n IgcCalendarResourceStringEN,\n IgcCalendarResourceStrings,\n} from '../common/i18n/calendar.resources.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { partNameMap } from '../common/util.js';\nimport {\n IgcCalendarBaseComponent,\n IgcCalendarBaseEventMap,\n MONTHS_PER_ROW,\n YEARS_PER_ROW,\n} from './common/calendar-base.js';\nimport { ICalendarDate, TimeDeltaInterval } from './common/calendar.model.js';\nimport { calculateYearsRangeStart, setDateSafe } from './common/utils.js';\nimport { styles as bootstrap } from './themes/bootstrap/calendar.bootstrap.css.js';\nimport { styles } from './themes/calendar.base.css.js';\nimport { styles as fluent } from './themes/fluent/calendar.fluent.css.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcYearsViewComponent from './years-view/years-view.js';\nimport IgcDaysViewComponent from './days-view/days-view.js';\nimport IgcMonthsViewComponent from './months-view/months-view.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport { Theme, ThemeController } from '../../theming/types.js';\n\ndefineComponents(\n IgcIconComponent,\n IgcDaysViewComponent,\n IgcMonthsViewComponent,\n IgcYearsViewComponent\n);\n\n/**\n * Represents a calendar that lets users\n * to select a date value in a variety of different ways.\n *\n * @element igc-calendar\n *\n * @slot - The default slot for the calendar.\n * @slot title - Renders the title of the calendar header.\n *\n * @fires igcChange - Emitted when calendar changes its value.\n *\n * @csspart content - The content container.\n * @csspart days-view - The days view container.\n * @csspart months-view - The months view container.\n * @csspart years-view - The years view container.\n * @csspart header - The header container.\n * @csspart header-title - The header title container.\n * @csspart header-date - The header date container.\n * @csspart navigation - The navigation container.\n * @csspart months-navigation - The months navigation container.\n * @csspart years-navigation - The years navigation container.\n * @csspart years-range - The years range container.\n * @csspart navigation-buttons - The navigation buttons container.\n * @csspart navigation-button - The navigation button container.\n * @csspart navigation-button vertical - The navigation button container\n * when calendar orientation is vertical.\n * @csspart days-view-container - The days view container.\n */\n@themes({\n bootstrap,\n fluent,\n})\nexport default class IgcCalendarComponent extends SizableMixin(\n EventEmitterMixin<\n IgcCalendarBaseEventMap,\n Constructor<IgcCalendarBaseComponent>\n >(IgcCalendarBaseComponent)\n) {\n public static styles = styles;\n public static readonly tagName = 'igc-calendar';\n private formatterMonth!: Intl.DateTimeFormat;\n private formatterWeekday!: Intl.DateTimeFormat;\n private formatterMonthDay!: Intl.DateTimeFormat;\n protected themeController!: ThemeController;\n private theme!: Theme;\n\n @state()\n private rangePreviewDate?: Date;\n\n @state()\n private activeDaysViewIndex = 0;\n\n @queryAll('igc-days-view')\n private daysViews!: NodeList;\n\n @query('igc-months-view')\n private monthsView!: IgcMonthsViewComponent;\n\n @query('igc-years-view')\n private yearsView!: IgcYearsViewComponent;\n\n /** Controls the visibility of the dates that do not belong to the current month. */\n @property({ type: Boolean, attribute: 'hide-outside-days' })\n public hideOutsideDays = false;\n\n /** Determines whether the calendar hides its header. Even if set to false, the header is not displayed for `multiple` selection. */\n @property({ type: Boolean, attribute: 'hide-header' })\n public hideHeader = false;\n\n /** The orientation of the header. */\n @property({ attribute: 'header-orientation', reflect: true })\n public headerOrientation: 'vertical' | 'horizontal' = 'horizontal';\n\n /** The orientation of the multiple months displayed in days view. */\n @property()\n public orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n /** The number of months displayed in days view. */\n @property({ type: Number, attribute: 'visible-months' })\n public visibleMonths = 1;\n\n /** The active view. */\n @property({ attribute: 'active-view' })\n public activeView: 'days' | 'months' | 'years' = 'days';\n\n /** The options used to format the months and the weekdays in the calendar views. */\n @property({ attribute: false })\n public formatOptions: Pick<Intl.DateTimeFormatOptions, 'month' | 'weekday'> =\n {\n month: 'long',\n weekday: 'narrow',\n };\n\n /** The resource strings. */\n @property({ attribute: false })\n public resourceStrings: IgcCalendarResourceStrings =\n IgcCalendarResourceStringEN;\n\n @watch('formatOptions')\n @watch('locale')\n protected formattersChange() {\n this.initFormatters();\n }\n\n protected themeAdopted(controller: ThemeController) {\n this.themeController = controller;\n }\n\n protected override willUpdate() {\n this.theme = this.themeController.theme;\n }\n\n constructor() {\n super();\n this.initFormatters();\n }\n\n private get yearPerPage() {\n return this.size === 'small' ? 18 : 15;\n }\n\n private get previousButtonLabel() {\n return this.activeView === 'days'\n ? this.resourceStrings.previousMonth\n : this.activeView === 'months'\n ? this.resourceStrings.previousYear\n : this.activeView === 'years'\n ? this.resourceStrings.previousYears.replace(\n '{0}',\n this.yearPerPage.toString()\n )\n : '';\n }\n\n private get nextButtonLabel() {\n return this.activeView === 'days'\n ? this.resourceStrings.nextMonth\n : this.activeView === 'months'\n ? this.resourceStrings.nextYear\n : this.activeView === 'years'\n ? this.resourceStrings.nextYears.replace(\n '{0}',\n this.yearPerPage.toString()\n )\n : '';\n }\n\n private monthSelectLabel(activeDate: Date) {\n return (\n activeDate.toLocaleString(this.locale, {\n month: 'long',\n }) +\n ', ' +\n this.resourceStrings.selectMonth\n );\n }\n\n private yearSelectLabel(activeDate: Date) {\n return activeDate.getFullYear() + ', ' + this.resourceStrings.selectYear;\n }\n\n private handleKeyDown = (event: KeyboardEvent) => {\n const tagName = (event.target as HTMLElement).tagName.toLowerCase();\n\n if (\n tagName !== 'igc-days-view' &&\n tagName !== 'igc-months-view' &&\n tagName !== 'igc-years-view'\n ) {\n return;\n }\n\n switch (event.key) {\n case 'PageDown':\n event.preventDefault();\n\n if (event.shiftKey && this.activeView === 'days') {\n this.nextYear();\n } else {\n this.navigateNext();\n }\n\n if (this.activeView === 'days') {\n this.focusActiveDate();\n }\n break;\n case 'PageUp':\n event.preventDefault();\n\n if (event.shiftKey && this.activeView === 'days') {\n this.previousYear();\n } else {\n this.navigatePrevious();\n }\n\n if (this.activeView === 'days') {\n this.focusActiveDate();\n }\n break;\n case 'Home':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const firstDaysView = this.daysViews[0] as IgcDaysViewComponent;\n const activeDate = firstDaysView.activeDate;\n const date = new Date(activeDate);\n date.setDate(1);\n this.activeDate = date;\n this.activeDaysViewIndex = 0;\n } else if (this.activeView === 'months') {\n const date = new Date(this.activeDate);\n date.setMonth(0);\n this.activeDate = date;\n } else if (this.activeView === 'years') {\n const startYear = calculateYearsRangeStart(\n this.activeDate,\n this.yearPerPage\n );\n const date = new Date(this.activeDate);\n date.setDate(1);\n date.setFullYear(startYear);\n setDateSafe(date, this.activeDate.getDate());\n this.activeDate = date;\n }\n\n this.focusActiveDate();\n break;\n case 'End':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const index = this.daysViews.length - 1;\n const lastDaysView = this.daysViews[index] as IgcDaysViewComponent;\n const activeDate = lastDaysView.activeDate;\n const date = new Date(activeDate);\n date.setDate(1);\n date.setMonth(date.getMonth() + 1);\n date.setDate(0);\n this.activeDate = date;\n this.activeDaysViewIndex = index;\n } else if (this.activeView === 'months') {\n const date = new Date(this.activeDate);\n date.setMonth(11);\n this.activeDate = date;\n } else if (this.activeView === 'years') {\n const startYear = calculateYearsRangeStart(\n this.activeDate,\n this.yearPerPage\n );\n const date = new Date(this.activeDate);\n date.setDate(1);\n date.setFullYear(startYear + this.yearPerPage - 1);\n setDateSafe(date, this.activeDate.getDate());\n this.activeDate = date;\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowLeft':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Day,\n -1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex > 0 ? this.activeDaysViewIndex - 1 : 0;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.previousMonth();\n } else if (this.activeView === 'years') {\n this.previousYear();\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowRight':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Day,\n 1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex === this.visibleMonths - 1\n ? this.activeDaysViewIndex\n : this.activeDaysViewIndex + 1;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.nextMonth();\n } else if (this.activeView === 'years') {\n this.nextYear();\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowUp':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Week,\n -1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex > 0 ? this.activeDaysViewIndex - 1 : 0;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n -MONTHS_PER_ROW\n );\n } else if (this.activeView === 'years') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n -YEARS_PER_ROW\n );\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowDown':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Week,\n 1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex === this.visibleMonths - 1\n ? this.activeDaysViewIndex\n : this.activeDaysViewIndex + 1;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n MONTHS_PER_ROW\n );\n } else if (this.activeView === 'years') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n YEARS_PER_ROW\n );\n }\n\n this.focusActiveDate();\n break;\n }\n };\n\n private async focusActiveDate() {\n await this.updateComplete;\n\n if (this.activeView === 'days') {\n const daysView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n daysView.focusActiveDate();\n } else if (this.activeView === 'months') {\n this.monthsView.focusActiveDate();\n } else if (this.activeView === 'years') {\n this.yearsView.focusActiveDate();\n }\n }\n\n private initFormatters() {\n this.formatterMonth = new Intl.DateTimeFormat(this.locale, {\n month: this.formatOptions.month,\n });\n this.formatterWeekday = new Intl.DateTimeFormat(this.locale, {\n weekday: 'short',\n });\n this.formatterMonthDay = new Intl.DateTimeFormat(this.locale, {\n month: 'short',\n day: 'numeric',\n });\n }\n\n private formattedMonth(value: Date) {\n return this.formatterMonth.format(value);\n }\n\n private changeValue(event: CustomEvent<void>) {\n event.stopPropagation();\n\n const daysView = event.target as IgcDaysViewComponent;\n let newValue;\n\n if (this.selection === 'single') {\n this.value = daysView.value;\n newValue = this.value;\n } else {\n this.values = daysView.values;\n newValue = this.values;\n }\n\n this.emitEvent('igcChange', { detail: newValue });\n }\n\n private changeMonth(event: CustomEvent<void>) {\n event.stopPropagation();\n this.activeDate = (event.target as IgcMonthsViewComponent).value;\n this.activeView = 'days';\n\n this.focusActiveDate();\n }\n\n private changeYear(event: CustomEvent<void>) {\n event.stopPropagation();\n this.activeDate = (event.target as IgcYearsViewComponent).value;\n this.activeView = 'months';\n\n this.focusActiveDate();\n }\n\n private switchToMonths(daysViewIndex: number) {\n this.activateDaysView(daysViewIndex);\n this.activeView = 'months';\n }\n\n private switchToYears(daysViewIndex: number) {\n if (this.activeView === 'days') {\n this.activateDaysView(daysViewIndex);\n }\n this.activeView = 'years';\n }\n\n private activateDaysView(daysViewIndex: number) {\n const activeDaysView = this.daysViews[\n daysViewIndex\n ] as IgcDaysViewComponent;\n this.activeDate = activeDaysView.activeDate;\n this.activeDaysViewIndex = daysViewIndex;\n }\n\n private activeDateChanged(event: CustomEvent<ICalendarDate>) {\n const day = event.detail;\n const daysViews = Array.from(this.daysViews);\n\n this.activeDaysViewIndex = daysViews.indexOf(event.target as Node);\n this.activeDate = day.date;\n\n if (!day.isCurrentMonth) {\n this.focusActiveDate();\n }\n }\n\n private rangePreviewDateChange(event: CustomEvent<Date>) {\n this.rangePreviewDate = event.detail;\n }\n\n private nextMonth() {\n this.activeDate = this.calendarModel.getNextMonth(this.activeDate);\n }\n\n private previousMonth() {\n this.activeDate = this.calendarModel.getPrevMonth(this.activeDate);\n }\n\n private nextYear() {\n this.activeDate = this.calendarModel.getNextYear(this.activeDate);\n }\n\n private previousYear() {\n this.activeDate = this.calendarModel.getPrevYear(this.activeDate);\n }\n\n private nextYearsPage() {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n this.yearPerPage\n );\n }\n\n private previousYearsPage() {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n -this.yearPerPage\n );\n }\n\n private navigateNext() {\n if (this.activeView === 'days') {\n this.nextMonth();\n } else if (this.activeView === 'months') {\n this.nextYear();\n } else if (this.activeView === 'years') {\n this.nextYearsPage();\n }\n }\n\n private navigatePrevious() {\n if (this.activeView === 'days') {\n this.previousMonth();\n } else if (this.activeView === 'months') {\n this.previousYear();\n } else if (this.activeView === 'years') {\n this.previousYearsPage();\n }\n }\n\n private renderNavigation(\n activeDate?: Date,\n renderButtons = true,\n daysViewIndex = 0\n ) {\n activeDate = activeDate ?? this.activeDate;\n\n let startYear = undefined;\n let endYear = undefined;\n const prev_icon =\n this.theme === 'fluent' ? 'arrow_upward' : 'navigate_before';\n const next_icon =\n this.theme === 'fluent' ? 'arrow_downward' : 'navigate_next';\n\n if (this.activeView === 'years') {\n startYear = calculateYearsRangeStart(activeDate, this.yearPerPage);\n endYear = startYear + this.yearPerPage - 1;\n }\n\n return html`<div part=\"navigation\">\n <div>\n ${this.activeView === 'days'\n ? html`<button\n part=\"months-navigation\"\n aria-label=${this.monthSelectLabel(activeDate)}\n @click=${() => this.switchToMonths(daysViewIndex)}\n >\n ${this.formattedMonth(activeDate)}\n </button>`\n : ''}\n ${this.activeView === 'days' || this.activeView === 'months'\n ? html`<span class=\"aria-off-screen\" aria-live=\"polite\">\n ${this.activeView === 'days'\n ? activeDate.toLocaleString(this.locale, {\n month: 'long',\n year: 'numeric',\n })\n : activeDate.getFullYear()}\n </span>\n <button\n part=\"years-navigation\"\n aria-label=${this.yearSelectLabel(activeDate)}\n @click=${() => this.switchToYears(daysViewIndex)}\n >\n ${activeDate.getFullYear()}\n </button>`\n : ''}\n ${this.activeView === 'years'\n ? html`<span part=\"years-range\" aria-live=\"polite\"\n >${`${startYear} - ${endYear}`}</span\n >`\n : ''}\n </div>\n ${renderButtons\n ? html`<div part=\"navigation-buttons\">\n <button\n part=${partNameMap({\n 'navigation-button': true,\n vertical: this.orientation === 'vertical',\n })}\n aria-label=${this.previousButtonLabel}\n @click=${this.navigatePrevious}\n >\n <igc-icon\n aria-hidden=\"true\"\n name=${prev_icon}\n collection=\"internal\"\n ></igc-icon>\n </button>\n <button\n part=${partNameMap({\n 'navigation-button': true,\n vertical: this.orientation === 'vertical',\n })}\n aria-label=${this.nextButtonLabel}\n @click=${this.navigateNext}\n >\n <igc-icon\n aria-hidden=\"true\"\n name=${next_icon}\n collection=\"internal\"\n ></igc-icon>\n </button>\n </div>`\n : ''}\n </div>`;\n }\n\n private renderHeader() {\n if (this.hideHeader || this.selection === 'multiple') {\n return '';\n }\n\n return html`<div part=\"header\">\n <h5 part=\"header-title\">\n <slot name=\"title\"\n >${this.selection === 'single'\n ? this.resourceStrings.selectDate\n : this.resourceStrings.selectRange}</slot\n >\n </h5>\n <h2 part=\"header-date\">${this.renderHeaderDate()}</h2>\n </div>`;\n }\n\n private renderHeaderDate() {\n if (this.selection === 'single') {\n const date = this.value;\n return html`${date\n ? html`${this.formatterWeekday.format(date)},${this\n .headerOrientation === 'vertical'\n ? html`<br />`\n : ' '}${this.formatterMonthDay.format(date)}`\n : this.resourceStrings.selectedDate}`;\n }\n\n const dates = this.values;\n\n return html`<span\n >${dates && dates.length\n ? this.formatterMonthDay.format(dates[0])\n : this.resourceStrings.startDate}</span\n >\n <span> - </span>\n <span\n >${dates && dates.length > 1\n ? this.formatterMonthDay.format(dates[dates.length - 1])\n : this.resourceStrings.endDate}</span\n >`;\n }\n\n protected override render() {\n const activeDates: Date[] = [];\n const monthsCount = this.visibleMonths > 1 ? this.visibleMonths : 1;\n\n for (let i = 0; i < monthsCount; i++) {\n activeDates.push(\n this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n i - this.activeDaysViewIndex\n )\n );\n }\n\n return html`\n ${this.renderHeader()}\n <div\n part=\"content\"\n style=${styleMap({\n display: 'flex',\n flexGrow: '1',\n flexDirection:\n this.activeView === 'days'\n ? this.orientation === 'horizontal'\n ? 'row'\n : 'column'\n : 'column',\n })}\n @keydown=${this.handleKeyDown}\n >\n ${this.activeView === 'days'\n ? activeDates.map(\n (activeDate, i) => html`<div part=\"days-view-container\">\n ${this.renderNavigation(\n activeDate,\n this.orientation === 'horizontal'\n ? i === activeDates.length - 1\n : i === 0,\n i\n )}\n <igc-days-view\n part=\"days-view\"\n .active=${this.activeDaysViewIndex === i}\n .activeDate=${activeDate}\n .weekStart=${this.weekStart}\n .weekDayFormat=${this.formatOptions.weekday as\n | 'long'\n | 'short'\n | 'narrow'\n | undefined}\n .locale=${this.locale}\n .selection=${this.selection}\n .value=${this.value}\n .values=${this.values}\n .hideLeadingDays=${this.hideOutsideDays || i !== 0}\n .hideTrailingDays=${this.hideOutsideDays ||\n i !== activeDates.length - 1}\n .showWeekNumbers=${this.showWeekNumbers}\n .disabledDates=${this.disabledDates}\n .specialDates=${this.specialDates}\n .rangePreviewDate=${this.rangePreviewDate}\n .resourceStrings=${this.resourceStrings}\n exportparts=\"days-row, label, date-inner, week-number-inner, week-number, date, first, last, selected, inactive, hidden, current, weekend, range, special, disabled, single, preview\"\n @igcChange=${this.changeValue}\n @igcActiveDateChange=${this.activeDateChanged}\n @igcRangePreviewDateChange=${this.rangePreviewDateChange}\n ></igc-days-view>\n </div>`\n )\n : ''}\n ${this.activeView === 'months'\n ? html` ${this.renderNavigation()}\n <igc-months-view\n part=\"months-view\"\n .value=${this.activeDate}\n .locale=${this.locale}\n .monthFormat=${this.formatOptions.month as\n | 'long'\n | 'numeric'\n | 'short'\n | 'narrow'\n | '2-digit'\n | undefined}\n exportparts=\"month, selected, month-inner, current\"\n @igcChange=${this.changeMonth}\n ></igc-months-view>`\n : ''}\n ${this.activeView === 'years'\n ? html`${this.renderNavigation()}\n <igc-years-view\n part=\"years-view\"\n .value=${this.activeDate}\n .yearsPerPage=${this.yearPerPage}\n exportparts=\"year, selected, year-inner, current\"\n @igcChange=${this.changeYear}\n ></igc-years-view>`\n : ''}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-calendar': IgcCalendarComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../../src/components/calendar/calendar.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EACL,2BAA2B,GAE5B,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,wBAAwB,EAExB,cAAc,EACd,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAiB,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,qBAAqB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,oBAAoB,MAAM,0BAA0B,CAAC;AAC5D,OAAO,sBAAsB,MAAM,8BAA8B,CAAC;AAClE,OAAO,gBAAgB,MAAM,iBAAiB,CAAC;AAG/C,gBAAgB,CACd,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,CACtB,CAAC;AAkCF,IAAqB,oBAAoB,GAAzC,MAAqB,oBAAqB,SAAQ,YAAY,CAC5D,iBAAiB,CAGf,wBAAwB,CAAC,CAC5B;IA+DW,gBAAgB;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAES,YAAY,CAAC,UAA2B;QAChD,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;IACpC,CAAC;IAEkB,UAAU;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IAC1C,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QA/DF,wBAAmB,GAAG,CAAC,CAAC;QAazB,oBAAe,GAAG,KAAK,CAAC;QAIxB,eAAU,GAAG,KAAK,CAAC;QAInB,sBAAiB,GAA8B,YAAY,CAAC;QAI5D,gBAAW,GAA8B,YAAY,CAAC;QAItD,kBAAa,GAAG,CAAC,CAAC;QAIlB,eAAU,GAAgC,MAAM,CAAC;QAIjD,kBAAa,GAClB;YACE,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,QAAQ;SAClB,CAAC;QAIG,oBAAe,GACpB,2BAA2B,CAAC;QAiEtB,kBAAa,GAAG,CAAC,KAAoB,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAI,KAAK,CAAC,MAAsB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAEpE,IACE,OAAO,KAAK,eAAe;gBAC3B,OAAO,KAAK,iBAAiB;gBAC7B,OAAO,KAAK,gBAAgB,EAC5B;gBACA,OAAO;aACR;YAED,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,UAAU;oBACb,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;qBACjB;yBAAM;wBACL,IAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;oBAED,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,IAAI,CAAC,eAAe,EAAE,CAAC;qBACxB;oBACD,MAAM;gBACR,KAAK,QAAQ;oBACX,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAChD,IAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;yBAAM;wBACL,IAAI,CAAC,gBAAgB,EAAE,CAAC;qBACzB;oBAED,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,IAAI,CAAC,eAAe,EAAE,CAAC;qBACxB;oBACD,MAAM;gBACR,KAAK,MAAM;oBACT,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAyB,CAAC;wBAChE,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;wBAC5C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;wBAClC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;wBACvB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;qBAC9B;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACjB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,MAAM,SAAS,GAAG,wBAAwB,CACxC,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,CACjB,CAAC;wBACF,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBACvC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;wBAC5B,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;gBACR,KAAK,KAAK;oBACR,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;wBACxC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAyB,CAAC;wBACnE,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;wBAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;wBAClC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;wBACnC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;wBACvB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;qBAClC;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;wBAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,MAAM,SAAS,GAAG,wBAAwB,CACxC,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,CACjB,CAAC;wBACF,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBACvC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;wBACnD,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;gBACR,KAAK,WAAW;oBACd,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CACvC,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,GAAG,EACrB,CAAC,CAAC,CACH,CAAC;wBAEF,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE;4BAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAClC,IAAI,CAAC,mBAAmB,CACD,CAAC;4BAC1B,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC;4BAEjD,IAAI,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE;gCAClD,IAAI,CAAC,mBAAmB;oCACtB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;6BACnE;yBACF;wBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,IAAI,CAAC,aAAa,EAAE,CAAC;qBACtB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,IAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;gBACR,KAAK,YAAY;oBACf,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CACvC,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,GAAG,EACrB,CAAC,CACF,CAAC;wBAEF,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE;4BAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAClC,IAAI,CAAC,mBAAmB,CACD,CAAC;4BAC1B,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC;4BAEjD,IAAI,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE;gCAClD,IAAI,CAAC,mBAAmB;oCACtB,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,aAAa,GAAG,CAAC;wCACjD,CAAC,CAAC,IAAI,CAAC,mBAAmB;wCAC1B,CAAC,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;6BACpC;yBACF;wBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,IAAI,CAAC,SAAS,EAAE,CAAC;qBAClB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;qBACjB;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;gBACR,KAAK,SAAS;oBACZ,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CACvC,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,CAAC,CAAC,CACH,CAAC;wBAEF,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE;4BAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAClC,IAAI,CAAC,mBAAmB,CACD,CAAC;4BAC1B,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC;4BAEjD,IAAI,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE;gCAClD,IAAI,CAAC,mBAAmB;oCACtB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;6BACnE;yBACF;wBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,KAAK,EACvB,CAAC,cAAc,CAChB,CAAC;qBACH;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,CAAC,aAAa,CACf,CAAC;qBACH;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;gBACR,KAAK,WAAW;oBACd,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CACvC,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,CAAC,CACF,CAAC;wBAEF,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE;4BAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAClC,IAAI,CAAC,mBAAmB,CACD,CAAC;4BAC1B,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC;4BAEjD,IAAI,eAAe,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE;gCAClD,IAAI,CAAC,mBAAmB;oCACtB,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,aAAa,GAAG,CAAC;wCACjD,CAAC,CAAC,IAAI,CAAC,mBAAmB;wCAC1B,CAAC,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;6BACpC;yBACF;wBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;qBACxB;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;wBACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,KAAK,EACvB,cAAc,CACf,CAAC;qBACH;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;wBACtC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,aAAa,CACd,CAAC;qBACH;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM;aACT;QACH,CAAC,CAAC;QA7RA,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,IAAY,WAAW;QACrB,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,CAAC;IAED,IAAY,mBAAmB;QAC7B,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM;YAC/B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa;YACpC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ;gBAC9B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY;gBACnC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,OAAO;oBAC7B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,OAAO,CACxC,KAAK,EACL,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAC5B;oBACH,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,IAAY,eAAe;QACzB,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM;YAC/B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS;YAChC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ;gBAC9B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ;gBAC/B,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,OAAO;oBAC7B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,CACpC,KAAK,EACL,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAC5B;oBACH,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAEO,gBAAgB,CAAC,UAAgB;QACvC,OAAO,CACL,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE;YACrC,KAAK,EAAE,MAAM;SACd,CAAC;YACF,IAAI;YACJ,IAAI,CAAC,eAAe,CAAC,WAAW,CACjC,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,UAAgB;QACtC,OAAO,UAAU,CAAC,WAAW,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;IAC3E,CAAC;IAkPO,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,cAAc,CAAC;QAE1B,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAC7B,IAAI,CAAC,mBAAmB,CACD,CAAC;YAC1B,QAAQ,CAAC,eAAe,EAAE,CAAC;SAC5B;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;YACvC,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;SACnC;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;SAClC;IACH,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE;YACzD,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE;YAC3D,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5D,KAAK,EAAE,OAAO;YACd,GAAG,EAAE,SAAS;SACf,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,KAAW;QAChC,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAEO,WAAW,CAAC,KAAwB;QAC1C,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAA8B,CAAC;QACtD,IAAI,QAAQ,CAAC;QAEb,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;YAC/B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC5B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;SACvB;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC9B,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;SACxB;QAED,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IAEO,WAAW,CAAC,KAAwB;QAC1C,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAI,KAAK,CAAC,MAAiC,CAAC,KAAK,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAEzB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,UAAU,CAAC,KAAwB;QACzC,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAI,KAAK,CAAC,MAAgC,CAAC,KAAK,CAAC;QAChE,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;QAE3B,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,cAAc,CAAC,aAAqB;QAC1C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAEO,aAAa,CAAC,aAAqB;QACzC,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;YAC9B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;SACtC;QACD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,aAAqB;QAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CACnC,aAAa,CACU,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;QAC5C,IAAI,CAAC,mBAAmB,GAAG,aAAa,CAAC;IAC3C,CAAC;IAEO,iBAAiB,CAAC,KAAiC;QACzD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE7C,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,MAAc,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;QAE3B,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAEO,sBAAsB,CAAC,KAAwB;QACrD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC;IACvC,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC;IAEO,QAAQ;QACd,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC5C,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,IAAI,EACtB,CAAC,IAAI,CAAC,WAAW,CAClB,CAAC;IACJ,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;YAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;YACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;YACtC,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAEO,gBAAgB;QACtB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;YAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;YACvC,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB;aAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;YACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC1B;IACH,CAAC;IAEO,gBAAgB,CACtB,UAAiB,EACjB,aAAa,GAAG,IAAI,EACpB,aAAa,GAAG,CAAC;QAEjB,UAAU,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,IAAI,CAAC,UAAU,CAAC;QAE3C,IAAI,SAAS,GAAG,SAAS,CAAC;QAC1B,IAAI,OAAO,GAAG,SAAS,CAAC;QACxB,MAAM,SAAS,GACb,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC;QAC/D,MAAM,SAAS,GACb,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC;QAE/D,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;YAC/B,SAAS,GAAG,wBAAwB,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACnE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;SAC5C;QAED,OAAO,IAAI,CAAA;;UAEL,IAAI,CAAC,UAAU,KAAK,MAAM;YAC1B,CAAC,CAAC,IAAI,CAAA;;2BAEW,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;uBACrC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;;gBAE/C,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;sBACzB;YACZ,CAAC,CAAC,EAAE;UACJ,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ;YAC1D,CAAC,CAAC,IAAI,CAAA;kBACE,IAAI,CAAC,UAAU,KAAK,MAAM;gBAC1B,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE;oBACrC,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,SAAS;iBAChB,CAAC;gBACJ,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE;;;;6BAIf,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;yBACpC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;;kBAE9C,UAAU,CAAC,WAAW,EAAE;wBAClB;YACd,CAAC,CAAC,EAAE;UACJ,IAAI,CAAC,UAAU,KAAK,OAAO;YAC3B,CAAC,CAAC,IAAI,CAAA;iBACC,GAAG,SAAS,MAAM,OAAO,EAAE;cAC9B;YACJ,CAAC,CAAC,EAAE;;QAEN,aAAa;YACb,CAAC,CAAC,IAAI,CAAA;;qBAEO,WAAW,CAAC;gBACjB,mBAAmB,EAAE,IAAI;gBACzB,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;aAC1C,CAAC;2BACW,IAAI,CAAC,mBAAmB;uBAC5B,IAAI,CAAC,gBAAgB;;;;uBAIrB,SAAS;;;;;qBAKX,WAAW,CAAC;gBACjB,mBAAmB,EAAE,IAAI;gBACzB,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;aAC1C,CAAC;2BACW,IAAI,CAAC,eAAe;uBACxB,IAAI,CAAC,YAAY;;;;uBAIjB,SAAS;;;;iBAIf;YACT,CAAC,CAAC,EAAE;WACD,CAAC;IACV,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACpD,OAAO,EAAE,CAAC;SACX;QAED,OAAO,IAAI,CAAA;;;aAGF,IAAI,CAAC,SAAS,KAAK,QAAQ;YAC5B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU;YACjC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW;;;+BAGf,IAAI,CAAC,gBAAgB,EAAE;WAC3C,CAAC;IACV,CAAC;IAEO,gBAAgB;QACtB,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,OAAO,IAAI,CAAA,GAAG,IAAI;gBAChB,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI;qBAC9C,iBAAiB,KAAK,UAAU;oBACjC,CAAC,CAAC,IAAI,CAAA,QAAQ;oBACd,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBACjD,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;SACzC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,OAAO,IAAI,CAAA;WACJ,KAAK,IAAI,KAAK,CAAC,MAAM;YACtB,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS;;;;WAI/B,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO;QAChC,CAAC;IACP,CAAC;IAEkB,MAAM;QACvB,MAAM,WAAW,GAAW,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;YACpC,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,aAAa,CAAC,SAAS,CAC1B,IAAI,CAAC,UAAU,EACf,iBAAiB,CAAC,KAAK,EACvB,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAC7B,CACF,CAAC;SACH;QAED,OAAO,IAAI,CAAA;QACP,IAAI,CAAC,YAAY,EAAE;;;gBAGX,QAAQ,CAAC;YACf,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,GAAG;YACb,aAAa,EACX,IAAI,CAAC,UAAU,KAAK,MAAM;gBACxB,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,YAAY;oBACjC,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,QAAQ;gBACZ,CAAC,CAAC,QAAQ;SACf,CAAC;mBACS,IAAI,CAAC,aAAa;;UAE3B,IAAI,CAAC,UAAU,KAAK,MAAM;YAC1B,CAAC,CAAC,WAAW,CAAC,GAAG,CACb,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAA;kBACnB,IAAI,CAAC,gBAAgB,CACrB,UAAU,EACV,IAAI,CAAC,WAAW,KAAK,YAAY;gBAC/B,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,EACX,CAAC,CACF;;;4BAGW,IAAI,CAAC,mBAAmB,KAAK,CAAC;gCAC1B,UAAU;+BACX,IAAI,CAAC,SAAS;mCACV,IAAI,CAAC,aAAa,CAAC,OAIvB;4BACH,IAAI,CAAC,MAAM;+BACR,IAAI,CAAC,SAAS;2BAClB,IAAI,CAAC,KAAK;4BACT,IAAI,CAAC,MAAM;qCACF,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC;sCAC9B,IAAI,CAAC,eAAe;gBACxC,CAAC,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC;qCACT,IAAI,CAAC,eAAe;mCACtB,IAAI,CAAC,aAAa;kCACnB,IAAI,CAAC,YAAY;sCACb,IAAI,CAAC,gBAAgB;qCACtB,IAAI,CAAC,eAAe;;+BAE1B,IAAI,CAAC,WAAW;yCACN,IAAI,CAAC,iBAAiB;+CAChB,IAAI,CAAC,sBAAsB;;qBAErD,CACR;YACH,CAAC,CAAC,EAAE;UACJ,IAAI,CAAC,UAAU,KAAK,QAAQ;YAC5B,CAAC,CAAC,IAAI,CAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;;;yBAGlB,IAAI,CAAC,UAAU;0BACd,IAAI,CAAC,MAAM;+BACN,IAAI,CAAC,aAAa,CAAC,KAMrB;;6BAEA,IAAI,CAAC,WAAW;kCACX;YACxB,CAAC,CAAC,EAAE;UACJ,IAAI,CAAC,UAAU,KAAK,OAAO;YAC3B,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,gBAAgB,EAAE;;;yBAGjB,IAAI,CAAC,UAAU;gCACR,IAAI,CAAC,WAAW;;6BAEnB,IAAI,CAAC,UAAU;iCACX;YACvB,CAAC,CAAC,EAAE;;KAET,CAAC;IACJ,CAAC;;AA1uBa,2BAAM,GAAG,MAAM,AAAT,CAAU;AACP,4BAAO,GAAG,cAAc,AAAjB,CAAkB;AAQxC;IADP,KAAK,EAAE;8DACwB;AAGxB;IADP,KAAK,EAAE;iEACwB;AAGxB;IADP,QAAQ,CAAC,eAAe,CAAC;uDACG;AAGrB;IADP,KAAK,CAAC,iBAAiB,CAAC;wDACmB;AAGpC;IADP,KAAK,CAAC,gBAAgB,CAAC;uDACkB;AAInC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;6DAC7B;AAIxB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;wDAC5B;AAInB;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;+DACM;AAI5D;IADN,QAAQ,EAAE;yDACkD;AAItD;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;2DAC/B;AAIlB;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;wDACiB;AAIjD;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;2DAK3B;AAIG;IADN,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;6DAED;AAIpB;IAFT,KAAK,CAAC,eAAe,CAAC;IACtB,KAAK,CAAC,QAAQ,CAAC;4DAGf;AAtEkB,oBAAoB;IAJxC,MAAM,CAAC;QACN,SAAS;QACT,MAAM;KACP,CAAC;GACmB,oBAAoB,CAivBxC;eAjvBoB,oBAAoB","sourcesContent":["import { html } from 'lit';\nimport { property, query, queryAll, state } from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport {\n IgcCalendarResourceStringEN,\n IgcCalendarResourceStrings,\n} from '../common/i18n/calendar.resources.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { partNameMap } from '../common/util.js';\nimport {\n IgcCalendarBaseComponent,\n IgcCalendarBaseEventMap,\n MONTHS_PER_ROW,\n YEARS_PER_ROW,\n} from './common/calendar-base.js';\nimport { ICalendarDate, TimeDeltaInterval } from './common/calendar.model.js';\nimport { calculateYearsRangeStart, setDateSafe } from './common/utils.js';\nimport { styles as bootstrap } from './themes/bootstrap/calendar.bootstrap.css.js';\nimport { styles } from './themes/calendar.base.css.js';\nimport { styles as fluent } from './themes/fluent/calendar.fluent.css.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcYearsViewComponent from './years-view/years-view.js';\nimport IgcDaysViewComponent from './days-view/days-view.js';\nimport IgcMonthsViewComponent from './months-view/months-view.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport { Theme, ThemeController } from '../../theming/types.js';\n\ndefineComponents(\n IgcIconComponent,\n IgcDaysViewComponent,\n IgcMonthsViewComponent,\n IgcYearsViewComponent\n);\n\n/**\n * Represents a calendar that lets users\n * to select a date value in a variety of different ways.\n *\n * @element igc-calendar\n *\n * @slot - The default slot for the calendar.\n * @slot title - Renders the title of the calendar header.\n *\n * @fires igcChange - Emitted when calendar changes its value.\n *\n * @csspart content - The content container.\n * @csspart days-view - The days view container.\n * @csspart months-view - The months view container.\n * @csspart years-view - The years view container.\n * @csspart header - The header container.\n * @csspart header-title - The header title container.\n * @csspart header-date - The header date container.\n * @csspart navigation - The navigation container.\n * @csspart months-navigation - The months navigation container.\n * @csspart years-navigation - The years navigation container.\n * @csspart years-range - The years range container.\n * @csspart navigation-buttons - The navigation buttons container.\n * @csspart navigation-button - The navigation button container.\n * @csspart navigation-button vertical - The navigation button container\n * when calendar orientation is vertical.\n * @csspart days-view-container - The days view container.\n */\n@themes({\n bootstrap,\n fluent,\n})\nexport default class IgcCalendarComponent extends SizableMixin(\n EventEmitterMixin<\n IgcCalendarBaseEventMap,\n Constructor<IgcCalendarBaseComponent>\n >(IgcCalendarBaseComponent)\n) {\n public static styles = styles;\n public static readonly tagName = 'igc-calendar';\n private formatterMonth!: Intl.DateTimeFormat;\n private formatterWeekday!: Intl.DateTimeFormat;\n private formatterMonthDay!: Intl.DateTimeFormat;\n protected themeController!: ThemeController;\n private theme!: Theme;\n\n @state()\n private rangePreviewDate?: Date;\n\n @state()\n private activeDaysViewIndex = 0;\n\n @queryAll('igc-days-view')\n private daysViews!: NodeList;\n\n @query('igc-months-view')\n private monthsView!: IgcMonthsViewComponent;\n\n @query('igc-years-view')\n private yearsView!: IgcYearsViewComponent;\n\n /** Controls the visibility of the dates that do not belong to the current month. */\n @property({ type: Boolean, attribute: 'hide-outside-days' })\n public hideOutsideDays = false;\n\n /** Determines whether the calendar hides its header. Even if set to false, the header is not displayed for `multiple` selection. */\n @property({ type: Boolean, attribute: 'hide-header' })\n public hideHeader = false;\n\n /** The orientation of the header. */\n @property({ attribute: 'header-orientation', reflect: true })\n public headerOrientation: 'vertical' | 'horizontal' = 'horizontal';\n\n /** The orientation of the multiple months displayed in days view. */\n @property()\n public orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n /** The number of months displayed in days view. */\n @property({ type: Number, attribute: 'visible-months' })\n public visibleMonths = 1;\n\n /** The active view. */\n @property({ attribute: 'active-view' })\n public activeView: 'days' | 'months' | 'years' = 'days';\n\n /** The options used to format the months and the weekdays in the calendar views. */\n @property({ attribute: false })\n public formatOptions: Pick<Intl.DateTimeFormatOptions, 'month' | 'weekday'> =\n {\n month: 'long',\n weekday: 'narrow',\n };\n\n /** The resource strings. */\n @property({ attribute: false })\n public resourceStrings: IgcCalendarResourceStrings =\n IgcCalendarResourceStringEN;\n\n @watch('formatOptions')\n @watch('locale')\n protected formattersChange() {\n this.initFormatters();\n }\n\n protected themeAdopted(controller: ThemeController) {\n this.themeController = controller;\n }\n\n protected override willUpdate() {\n this.theme = this.themeController.theme;\n }\n\n constructor() {\n super();\n this.initFormatters();\n }\n\n private get yearPerPage() {\n return this.size === 'small' ? 18 : 15;\n }\n\n private get previousButtonLabel() {\n return this.activeView === 'days'\n ? this.resourceStrings.previousMonth\n : this.activeView === 'months'\n ? this.resourceStrings.previousYear\n : this.activeView === 'years'\n ? this.resourceStrings.previousYears.replace(\n '{0}',\n this.yearPerPage.toString()\n )\n : '';\n }\n\n private get nextButtonLabel() {\n return this.activeView === 'days'\n ? this.resourceStrings.nextMonth\n : this.activeView === 'months'\n ? this.resourceStrings.nextYear\n : this.activeView === 'years'\n ? this.resourceStrings.nextYears.replace(\n '{0}',\n this.yearPerPage.toString()\n )\n : '';\n }\n\n private monthSelectLabel(activeDate: Date) {\n return (\n activeDate.toLocaleString(this.locale, {\n month: 'long',\n }) +\n ', ' +\n this.resourceStrings.selectMonth\n );\n }\n\n private yearSelectLabel(activeDate: Date) {\n return activeDate.getFullYear() + ', ' + this.resourceStrings.selectYear;\n }\n\n private handleKeyDown = (event: KeyboardEvent) => {\n const tagName = (event.target as HTMLElement).tagName.toLowerCase();\n\n if (\n tagName !== 'igc-days-view' &&\n tagName !== 'igc-months-view' &&\n tagName !== 'igc-years-view'\n ) {\n return;\n }\n\n switch (event.key) {\n case 'PageDown':\n event.preventDefault();\n\n if (event.shiftKey && this.activeView === 'days') {\n this.nextYear();\n } else {\n this.navigateNext();\n }\n\n if (this.activeView === 'days') {\n this.focusActiveDate();\n }\n break;\n case 'PageUp':\n event.preventDefault();\n\n if (event.shiftKey && this.activeView === 'days') {\n this.previousYear();\n } else {\n this.navigatePrevious();\n }\n\n if (this.activeView === 'days') {\n this.focusActiveDate();\n }\n break;\n case 'Home':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const firstDaysView = this.daysViews[0] as IgcDaysViewComponent;\n const activeDate = firstDaysView.activeDate;\n const date = new Date(activeDate);\n date.setDate(1);\n this.activeDate = date;\n this.activeDaysViewIndex = 0;\n } else if (this.activeView === 'months') {\n const date = new Date(this.activeDate);\n date.setMonth(0);\n this.activeDate = date;\n } else if (this.activeView === 'years') {\n const startYear = calculateYearsRangeStart(\n this.activeDate,\n this.yearPerPage\n );\n const date = new Date(this.activeDate);\n date.setDate(1);\n date.setFullYear(startYear);\n setDateSafe(date, this.activeDate.getDate());\n this.activeDate = date;\n }\n\n this.focusActiveDate();\n break;\n case 'End':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const index = this.daysViews.length - 1;\n const lastDaysView = this.daysViews[index] as IgcDaysViewComponent;\n const activeDate = lastDaysView.activeDate;\n const date = new Date(activeDate);\n date.setDate(1);\n date.setMonth(date.getMonth() + 1);\n date.setDate(0);\n this.activeDate = date;\n this.activeDaysViewIndex = index;\n } else if (this.activeView === 'months') {\n const date = new Date(this.activeDate);\n date.setMonth(11);\n this.activeDate = date;\n } else if (this.activeView === 'years') {\n const startYear = calculateYearsRangeStart(\n this.activeDate,\n this.yearPerPage\n );\n const date = new Date(this.activeDate);\n date.setDate(1);\n date.setFullYear(startYear + this.yearPerPage - 1);\n setDateSafe(date, this.activeDate.getDate());\n this.activeDate = date;\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowLeft':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Day,\n -1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex > 0 ? this.activeDaysViewIndex - 1 : 0;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.previousMonth();\n } else if (this.activeView === 'years') {\n this.previousYear();\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowRight':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Day,\n 1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex === this.visibleMonths - 1\n ? this.activeDaysViewIndex\n : this.activeDaysViewIndex + 1;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.nextMonth();\n } else if (this.activeView === 'years') {\n this.nextYear();\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowUp':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Week,\n -1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex > 0 ? this.activeDaysViewIndex - 1 : 0;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n -MONTHS_PER_ROW\n );\n } else if (this.activeView === 'years') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n -YEARS_PER_ROW\n );\n }\n\n this.focusActiveDate();\n break;\n case 'ArrowDown':\n event.preventDefault();\n\n if (this.activeView === 'days') {\n const date = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Week,\n 1\n );\n\n if (this.visibleMonths > 1) {\n const activeDayView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n const activeMonthDate = activeDayView.activeDate;\n\n if (activeMonthDate.getMonth() !== date.getMonth()) {\n this.activeDaysViewIndex =\n this.activeDaysViewIndex === this.visibleMonths - 1\n ? this.activeDaysViewIndex\n : this.activeDaysViewIndex + 1;\n }\n }\n this.activeDate = date;\n } else if (this.activeView === 'months') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n MONTHS_PER_ROW\n );\n } else if (this.activeView === 'years') {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n YEARS_PER_ROW\n );\n }\n\n this.focusActiveDate();\n break;\n }\n };\n\n private async focusActiveDate() {\n await this.updateComplete;\n\n if (this.activeView === 'days') {\n const daysView = this.daysViews[\n this.activeDaysViewIndex\n ] as IgcDaysViewComponent;\n daysView.focusActiveDate();\n } else if (this.activeView === 'months') {\n this.monthsView.focusActiveDate();\n } else if (this.activeView === 'years') {\n this.yearsView.focusActiveDate();\n }\n }\n\n private initFormatters() {\n this.formatterMonth = new Intl.DateTimeFormat(this.locale, {\n month: this.formatOptions.month,\n });\n this.formatterWeekday = new Intl.DateTimeFormat(this.locale, {\n weekday: 'short',\n });\n this.formatterMonthDay = new Intl.DateTimeFormat(this.locale, {\n month: 'short',\n day: 'numeric',\n });\n }\n\n private formattedMonth(value: Date) {\n return this.formatterMonth.format(value);\n }\n\n private changeValue(event: CustomEvent<void>) {\n event.stopPropagation();\n\n const daysView = event.target as IgcDaysViewComponent;\n let newValue;\n\n if (this.selection === 'single') {\n this.value = daysView.value;\n newValue = this.value;\n } else {\n this.values = daysView.values;\n newValue = this.values;\n }\n\n this.emitEvent('igcChange', { detail: newValue });\n }\n\n private changeMonth(event: CustomEvent<void>) {\n event.stopPropagation();\n this.activeDate = (event.target as IgcMonthsViewComponent).value;\n this.activeView = 'days';\n\n this.focusActiveDate();\n }\n\n private changeYear(event: CustomEvent<void>) {\n event.stopPropagation();\n this.activeDate = (event.target as IgcYearsViewComponent).value;\n this.activeView = 'months';\n\n this.focusActiveDate();\n }\n\n private switchToMonths(daysViewIndex: number) {\n this.activateDaysView(daysViewIndex);\n this.activeView = 'months';\n }\n\n private switchToYears(daysViewIndex: number) {\n if (this.activeView === 'days') {\n this.activateDaysView(daysViewIndex);\n }\n this.activeView = 'years';\n }\n\n private activateDaysView(daysViewIndex: number) {\n const activeDaysView = this.daysViews[\n daysViewIndex\n ] as IgcDaysViewComponent;\n this.activeDate = activeDaysView.activeDate;\n this.activeDaysViewIndex = daysViewIndex;\n }\n\n private activeDateChanged(event: CustomEvent<ICalendarDate>) {\n const day = event.detail;\n const daysViews = Array.from(this.daysViews);\n\n this.activeDaysViewIndex = daysViews.indexOf(event.target as Node);\n this.activeDate = day.date;\n\n if (!day.isCurrentMonth) {\n this.focusActiveDate();\n }\n }\n\n private rangePreviewDateChange(event: CustomEvent<Date>) {\n this.rangePreviewDate = event.detail;\n }\n\n private nextMonth() {\n this.activeDate = this.calendarModel.getNextMonth(this.activeDate);\n }\n\n private previousMonth() {\n this.activeDate = this.calendarModel.getPrevMonth(this.activeDate);\n }\n\n private nextYear() {\n this.activeDate = this.calendarModel.getNextYear(this.activeDate);\n }\n\n private previousYear() {\n this.activeDate = this.calendarModel.getPrevYear(this.activeDate);\n }\n\n private nextYearsPage() {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n this.yearPerPage\n );\n }\n\n private previousYearsPage() {\n this.activeDate = this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Year,\n -this.yearPerPage\n );\n }\n\n private navigateNext() {\n if (this.activeView === 'days') {\n this.nextMonth();\n } else if (this.activeView === 'months') {\n this.nextYear();\n } else if (this.activeView === 'years') {\n this.nextYearsPage();\n }\n }\n\n private navigatePrevious() {\n if (this.activeView === 'days') {\n this.previousMonth();\n } else if (this.activeView === 'months') {\n this.previousYear();\n } else if (this.activeView === 'years') {\n this.previousYearsPage();\n }\n }\n\n private renderNavigation(\n activeDate?: Date,\n renderButtons = true,\n daysViewIndex = 0\n ) {\n activeDate = activeDate ?? this.activeDate;\n\n let startYear = undefined;\n let endYear = undefined;\n const prev_icon =\n this.theme === 'fluent' ? 'arrow_upward' : 'navigate_before';\n const next_icon =\n this.theme === 'fluent' ? 'arrow_downward' : 'navigate_next';\n\n if (this.activeView === 'years') {\n startYear = calculateYearsRangeStart(activeDate, this.yearPerPage);\n endYear = startYear + this.yearPerPage - 1;\n }\n\n return html`<div part=\"navigation\">\n <div>\n ${this.activeView === 'days'\n ? html`<button\n part=\"months-navigation\"\n aria-label=${this.monthSelectLabel(activeDate)}\n @click=${() => this.switchToMonths(daysViewIndex)}\n >\n ${this.formattedMonth(activeDate)}\n </button>`\n : ''}\n ${this.activeView === 'days' || this.activeView === 'months'\n ? html`<span class=\"aria-off-screen\" aria-live=\"polite\">\n ${this.activeView === 'days'\n ? activeDate.toLocaleString(this.locale, {\n month: 'long',\n year: 'numeric',\n })\n : activeDate.getFullYear()}\n </span>\n <button\n part=\"years-navigation\"\n aria-label=${this.yearSelectLabel(activeDate)}\n @click=${() => this.switchToYears(daysViewIndex)}\n >\n ${activeDate.getFullYear()}\n </button>`\n : ''}\n ${this.activeView === 'years'\n ? html`<span part=\"years-range\" aria-live=\"polite\"\n >${`${startYear} - ${endYear}`}</span\n >`\n : ''}\n </div>\n ${renderButtons\n ? html`<div part=\"navigation-buttons\">\n <button\n part=${partNameMap({\n 'navigation-button': true,\n vertical: this.orientation === 'vertical',\n })}\n aria-label=${this.previousButtonLabel}\n @click=${this.navigatePrevious}\n >\n <igc-icon\n aria-hidden=\"true\"\n name=${prev_icon}\n collection=\"internal\"\n ></igc-icon>\n </button>\n <button\n part=${partNameMap({\n 'navigation-button': true,\n vertical: this.orientation === 'vertical',\n })}\n aria-label=${this.nextButtonLabel}\n @click=${this.navigateNext}\n >\n <igc-icon\n aria-hidden=\"true\"\n name=${next_icon}\n collection=\"internal\"\n ></igc-icon>\n </button>\n </div>`\n : ''}\n </div>`;\n }\n\n private renderHeader() {\n if (this.hideHeader || this.selection === 'multiple') {\n return '';\n }\n\n return html`<div part=\"header\">\n <h5 part=\"header-title\">\n <slot name=\"title\"\n >${this.selection === 'single'\n ? this.resourceStrings.selectDate\n : this.resourceStrings.selectRange}</slot\n >\n </h5>\n <h2 part=\"header-date\">${this.renderHeaderDate()}</h2>\n </div>`;\n }\n\n private renderHeaderDate() {\n if (this.selection === 'single') {\n const date = this.value;\n return html`${date\n ? html`${this.formatterWeekday.format(date)},${this\n .headerOrientation === 'vertical'\n ? html`<br />`\n : ' '}${this.formatterMonthDay.format(date)}`\n : this.resourceStrings.selectedDate}`;\n }\n\n const dates = this.values;\n\n return html`<span\n >${dates && dates.length\n ? this.formatterMonthDay.format(dates[0])\n : this.resourceStrings.startDate}</span\n >\n <span> - </span>\n <span\n >${dates && dates.length > 1\n ? this.formatterMonthDay.format(dates[dates.length - 1])\n : this.resourceStrings.endDate}</span\n >`;\n }\n\n protected override render() {\n const activeDates: Date[] = [];\n const monthsCount = this.visibleMonths > 1 ? this.visibleMonths : 1;\n\n for (let i = 0; i < monthsCount; i++) {\n activeDates.push(\n this.calendarModel.timedelta(\n this.activeDate,\n TimeDeltaInterval.Month,\n i - this.activeDaysViewIndex\n )\n );\n }\n\n return html`\n ${this.renderHeader()}\n <div\n part=\"content\"\n style=${styleMap({\n display: 'flex',\n flexGrow: '1',\n flexDirection:\n this.activeView === 'days'\n ? this.orientation === 'horizontal'\n ? 'row'\n : 'column'\n : 'column',\n })}\n @keydown=${this.handleKeyDown}\n >\n ${this.activeView === 'days'\n ? activeDates.map(\n (activeDate, i) => html`<div part=\"days-view-container\">\n ${this.renderNavigation(\n activeDate,\n this.orientation === 'horizontal'\n ? i === activeDates.length - 1\n : i === 0,\n i\n )}\n <igc-days-view\n part=\"days-view\"\n .active=${this.activeDaysViewIndex === i}\n .activeDate=${activeDate}\n .weekStart=${this.weekStart}\n .weekDayFormat=${this.formatOptions.weekday as\n | 'long'\n | 'short'\n | 'narrow'\n | undefined}\n .locale=${this.locale}\n .selection=${this.selection}\n .value=${this.value}\n .values=${this.values}\n .hideLeadingDays=${this.hideOutsideDays || i !== 0}\n .hideTrailingDays=${this.hideOutsideDays ||\n i !== activeDates.length - 1}\n .showWeekNumbers=${this.showWeekNumbers}\n .disabledDates=${this.disabledDates}\n .specialDates=${this.specialDates}\n .rangePreviewDate=${this.rangePreviewDate}\n .resourceStrings=${this.resourceStrings}\n exportparts=\"days-row, label, date-inner, week-number-inner, week-number, date, first, last, selected, inactive, hidden, current, weekend, range, special, disabled, single, preview\"\n @igcChange=${this.changeValue}\n @igcActiveDateChange=${this.activeDateChanged}\n @igcRangePreviewDateChange=${this.rangePreviewDateChange}\n ></igc-days-view>\n </div>`\n )\n : ''}\n ${this.activeView === 'months'\n ? html` ${this.renderNavigation()}\n <igc-months-view\n part=\"months-view\"\n .value=${this.activeDate}\n .locale=${this.locale}\n .monthFormat=${this.formatOptions.month as\n | 'long'\n | 'numeric'\n | 'short'\n | 'narrow'\n | '2-digit'\n | undefined}\n exportparts=\"month, selected, month-inner, current\"\n @igcChange=${this.changeMonth}\n ></igc-months-view>`\n : ''}\n ${this.activeView === 'years'\n ? html`${this.renderNavigation()}\n <igc-years-view\n part=\"years-view\"\n .value=${this.activeDate}\n .yearsPerPage=${this.yearPerPage}\n exportparts=\"year, selected, year-inner, current\"\n @igcChange=${this.changeYear}\n ></igc-years-view>`\n : ''}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-calendar': IgcCalendarComponent;\n }\n}\n"]}
@@ -6,14 +6,16 @@ export interface IgcCalendarBaseEventMap {
6
6
  igcChange: CustomEvent<Date | Date[]>;
7
7
  }
8
8
  export declare class IgcCalendarBaseComponent extends LitElement {
9
+ private _activeDate;
10
+ private _activeDateSetFlag;
9
11
  protected calendarModel: Calendar;
10
12
  /**
11
- * Тhe current value of the calendar.
13
+ * The current value of the calendar.
12
14
  * Used when selection is set to single.
13
15
  */
14
16
  value?: Date;
15
17
  /**
16
- * Тhe current values of the calendar.
18
+ * The current values of the calendar.
17
19
  * Used when selection is set to multiple or range.
18
20
  */
19
21
  values?: Date[];
@@ -24,7 +26,8 @@ export declare class IgcCalendarBaseComponent extends LitElement {
24
26
  /** Sets the start day of the week. */
25
27
  weekStart: 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday';
26
28
  /** Sets the date which is shown in view and is highlighted. By default it is the current date. */
27
- activeDate: Date;
29
+ set activeDate(val: Date);
30
+ get activeDate(): Date;
28
31
  /** Sets the locale used for formatting and displaying the dates in the calendar. */
29
32
  locale: string;
30
33
  /** Gets/sets disabled dates. */
@@ -33,4 +36,5 @@ export declare class IgcCalendarBaseComponent extends LitElement {
33
36
  specialDates: DateRangeDescriptor[];
34
37
  protected weekStartChange(): void;
35
38
  protected selectionChange(): void;
39
+ protected firstUpdated(): Promise<void>;
36
40
  }
@@ -17,19 +17,41 @@ export const YEARS_PER_ROW = 3;
17
17
  let IgcCalendarBaseComponent = class IgcCalendarBaseComponent extends LitElement {
18
18
  constructor() {
19
19
  super(...arguments);
20
+ this._activeDate = new Date();
21
+ this._activeDateSetFlag = false;
20
22
  this.calendarModel = new Calendar();
21
23
  this.selection = 'single';
22
24
  this.showWeekNumbers = false;
23
25
  this.weekStart = 'sunday';
24
- this.activeDate = new Date();
25
26
  this.locale = 'en';
26
27
  }
28
+ set activeDate(val) {
29
+ const oldVal = this._activeDate;
30
+ this._activeDate = val;
31
+ this._activeDateSetFlag = true;
32
+ this.requestUpdate('activeDate', oldVal);
33
+ }
34
+ get activeDate() {
35
+ return this._activeDate;
36
+ }
27
37
  weekStartChange() {
28
38
  this.calendarModel.firstWeekDay = getWeekDayNumber(this.weekStart);
29
39
  }
30
40
  selectionChange() {
31
41
  this.value = undefined;
32
42
  }
43
+ async firstUpdated() {
44
+ var _a;
45
+ if (this._activeDateSetFlag) {
46
+ return;
47
+ }
48
+ if (this.selection === 'single') {
49
+ this.activeDate = (_a = this.value) !== null && _a !== void 0 ? _a : this.activeDate;
50
+ }
51
+ else {
52
+ this.activeDate = this.values ? this.values[0] : this.activeDate;
53
+ }
54
+ }
33
55
  };
34
56
  __decorate([
35
57
  blazorSuppress(),
@@ -73,7 +95,7 @@ __decorate([
73
95
  toAttribute: (value) => value.toISOString(),
74
96
  },
75
97
  })
76
- ], IgcCalendarBaseComponent.prototype, "activeDate", void 0);
98
+ ], IgcCalendarBaseComponent.prototype, "activeDate", null);
77
99
  __decorate([
78
100
  property()
79
101
  ], IgcCalendarBaseComponent.prototype, "locale", void 0);