igniteui-webcomponents 7.2.3 → 7.3.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (980) hide show
  1. package/CHANGELOG.md +156 -0
  2. package/animations/player.d.ts +4 -11
  3. package/animations/player.js +4 -10
  4. package/animations/player.js.map +1 -1
  5. package/animations/view-transition.d.ts +44 -0
  6. package/animations/view-transition.js +81 -0
  7. package/animations/view-transition.js.map +1 -0
  8. package/components/accordion/accordion.d.ts +1 -1
  9. package/components/accordion/accordion.js +7 -6
  10. package/components/accordion/accordion.js.map +1 -1
  11. package/components/avatar/avatar.js +10 -10
  12. package/components/avatar/avatar.js.map +1 -1
  13. package/components/avatar/themes/themes.d.ts +1 -1
  14. package/components/avatar/themes/themes.js.map +1 -1
  15. package/components/badge/badge.d.ts +1 -1
  16. package/components/badge/badge.js +5 -5
  17. package/components/badge/badge.js.map +1 -1
  18. package/components/badge/themes/themes.d.ts +1 -1
  19. package/components/badge/themes/themes.js.map +1 -1
  20. package/components/banner/banner.d.ts +2 -2
  21. package/components/banner/banner.js +8 -8
  22. package/components/banner/banner.js.map +1 -1
  23. package/components/banner/themes/themes.d.ts +1 -1
  24. package/components/banner/themes/themes.js.map +1 -1
  25. package/components/button/button-base.d.ts +2 -2
  26. package/components/button/button-base.js +15 -12
  27. package/components/button/button-base.js.map +1 -1
  28. package/components/button/button.d.ts +3 -3
  29. package/components/button/button.js +2 -2
  30. package/components/button/button.js.map +1 -1
  31. package/components/button/icon-button.js +12 -12
  32. package/components/button/icon-button.js.map +1 -1
  33. package/components/button/themes/button/themes.d.ts +1 -1
  34. package/components/button/themes/button/themes.js.map +1 -1
  35. package/components/button/themes/icon-button/themes.d.ts +1 -1
  36. package/components/button/themes/icon-button/themes.js.map +1 -1
  37. package/components/button-group/button-group.d.ts +42 -21
  38. package/components/button-group/button-group.js +101 -106
  39. package/components/button-group/button-group.js.map +1 -1
  40. package/components/button-group/themes/button.d.ts +1 -1
  41. package/components/button-group/themes/button.js.map +1 -1
  42. package/components/button-group/themes/group.d.ts +1 -1
  43. package/components/button-group/themes/group.js.map +1 -1
  44. package/components/button-group/toggle-button.d.ts +17 -10
  45. package/components/button-group/toggle-button.js +28 -13
  46. package/components/button-group/toggle-button.js.map +1 -1
  47. package/components/calendar/base.d.ts +29 -10
  48. package/components/calendar/base.js +12 -15
  49. package/components/calendar/base.js.map +1 -1
  50. package/components/calendar/calendar.d.ts +39 -8
  51. package/components/calendar/calendar.js +96 -85
  52. package/components/calendar/calendar.js.map +1 -1
  53. package/components/calendar/days-view/days-view.d.ts +49 -22
  54. package/components/calendar/days-view/days-view.js +102 -163
  55. package/components/calendar/days-view/days-view.js.map +1 -1
  56. package/components/calendar/helpers.d.ts +3 -62
  57. package/components/calendar/helpers.js +6 -110
  58. package/components/calendar/helpers.js.map +1 -1
  59. package/components/calendar/months-view/months-view.d.ts +7 -21
  60. package/components/calendar/months-view/months-view.js +30 -83
  61. package/components/calendar/months-view/months-view.js.map +1 -1
  62. package/components/calendar/selection.d.ts +21 -0
  63. package/components/calendar/selection.js +42 -0
  64. package/components/calendar/selection.js.map +1 -0
  65. package/components/calendar/themes/calendar.d.ts +1 -1
  66. package/components/calendar/themes/calendar.js.map +1 -1
  67. package/components/calendar/themes/days.d.ts +1 -1
  68. package/components/calendar/themes/days.js.map +1 -1
  69. package/components/calendar/themes/year-month.d.ts +1 -1
  70. package/components/calendar/themes/year-month.js.map +1 -1
  71. package/components/calendar/types.d.ts +18 -0
  72. package/components/calendar/types.js.map +1 -1
  73. package/components/calendar/year-month-view.base.d.ts +44 -0
  74. package/components/calendar/year-month-view.base.js +89 -0
  75. package/components/calendar/year-month-view.base.js.map +1 -0
  76. package/components/calendar/years-view/years-view.d.ts +7 -20
  77. package/components/calendar/years-view/years-view.js +25 -79
  78. package/components/calendar/years-view/years-view.js.map +1 -1
  79. package/components/card/card.actions.js +2 -2
  80. package/components/card/card.actions.js.map +1 -1
  81. package/components/card/card.content.d.ts +1 -1
  82. package/components/card/card.content.js +2 -2
  83. package/components/card/card.content.js.map +1 -1
  84. package/components/card/card.d.ts +1 -1
  85. package/components/card/card.header.js +2 -2
  86. package/components/card/card.header.js.map +1 -1
  87. package/components/card/card.js +2 -2
  88. package/components/card/card.js.map +1 -1
  89. package/components/card/card.media.d.ts +1 -1
  90. package/components/card/card.media.js +1 -1
  91. package/components/card/card.media.js.map +1 -1
  92. package/components/card/themes/actions.d.ts +1 -1
  93. package/components/card/themes/actions.js.map +1 -1
  94. package/components/card/themes/container.d.ts +1 -1
  95. package/components/card/themes/container.js.map +1 -1
  96. package/components/card/themes/content.d.ts +1 -1
  97. package/components/card/themes/content.js.map +1 -1
  98. package/components/card/themes/header.d.ts +1 -1
  99. package/components/card/themes/header.js.map +1 -1
  100. package/components/carousel/animations.d.ts +1 -1
  101. package/components/carousel/animations.js +2 -2
  102. package/components/carousel/animations.js.map +1 -1
  103. package/components/carousel/carousel-indicator-container.js +4 -4
  104. package/components/carousel/carousel-indicator-container.js.map +1 -1
  105. package/components/carousel/carousel-indicator.d.ts +1 -1
  106. package/components/carousel/carousel-indicator.js +5 -5
  107. package/components/carousel/carousel-indicator.js.map +1 -1
  108. package/components/carousel/carousel-slide.d.ts +1 -1
  109. package/components/carousel/carousel-slide.js +9 -9
  110. package/components/carousel/carousel-slide.js.map +1 -1
  111. package/components/carousel/carousel.d.ts +7 -7
  112. package/components/carousel/carousel.js +40 -30
  113. package/components/carousel/carousel.js.map +1 -1
  114. package/components/carousel/themes/container.d.ts +1 -1
  115. package/components/carousel/themes/container.js.map +1 -1
  116. package/components/carousel/themes/indicator-container.d.ts +1 -1
  117. package/components/carousel/themes/indicator-container.js.map +1 -1
  118. package/components/chat/chat-input.d.ts +4 -4
  119. package/components/chat/chat-input.js +13 -12
  120. package/components/chat/chat-input.js.map +1 -1
  121. package/components/chat/chat-message.d.ts +1 -1
  122. package/components/chat/chat-message.js +7 -6
  123. package/components/chat/chat-message.js.map +1 -1
  124. package/components/chat/chat-state.d.ts +2 -2
  125. package/components/chat/chat-state.js +2 -1
  126. package/components/chat/chat-state.js.map +1 -1
  127. package/components/chat/chat.d.ts +4 -4
  128. package/components/chat/chat.js +13 -13
  129. package/components/chat/chat.js.map +1 -1
  130. package/components/chat/message-attachments.js +5 -5
  131. package/components/chat/message-attachments.js.map +1 -1
  132. package/components/chat/themes/attachments.d.ts +1 -1
  133. package/components/chat/themes/attachments.js.map +1 -1
  134. package/components/chat/themes/input.d.ts +1 -1
  135. package/components/chat/themes/input.js.map +1 -1
  136. package/components/chat/themes/message.d.ts +1 -1
  137. package/components/chat/themes/message.js.map +1 -1
  138. package/components/chat/themes/themes.d.ts +1 -1
  139. package/components/chat/themes/themes.js.map +1 -1
  140. package/components/chat/types.d.ts +2 -2
  141. package/components/chat/types.js.map +1 -1
  142. package/components/chat/utils.d.ts +1 -1
  143. package/components/chat/utils.js +3 -3
  144. package/components/chat/utils.js.map +1 -1
  145. package/components/checkbox/checkbox-base.d.ts +7 -7
  146. package/components/checkbox/checkbox-base.js +7 -7
  147. package/components/checkbox/checkbox-base.js.map +1 -1
  148. package/components/checkbox/checkbox.js +7 -6
  149. package/components/checkbox/checkbox.js.map +1 -1
  150. package/components/checkbox/switch.js +7 -6
  151. package/components/checkbox/switch.js.map +1 -1
  152. package/components/checkbox/themes/checkbox-themes.d.ts +1 -1
  153. package/components/checkbox/themes/checkbox-themes.js.map +1 -1
  154. package/components/checkbox/themes/switch-themes.d.ts +1 -1
  155. package/components/checkbox/themes/switch-themes.js.map +1 -1
  156. package/components/checkbox/validators.d.ts +1 -1
  157. package/components/checkbox/validators.js +1 -1
  158. package/components/checkbox/validators.js.map +1 -1
  159. package/components/chip/chip.d.ts +9 -3
  160. package/components/chip/chip.js +10 -6
  161. package/components/chip/chip.js.map +1 -1
  162. package/components/chip/themes/chip.base.css.js +1 -1
  163. package/components/chip/themes/chip.base.css.js.map +1 -1
  164. package/components/chip/themes/dark/chip.bootstrap.css.js +1 -1
  165. package/components/chip/themes/dark/chip.bootstrap.css.js.map +1 -1
  166. package/components/chip/themes/dark/chip.fluent.css.js +1 -1
  167. package/components/chip/themes/dark/chip.fluent.css.js.map +1 -1
  168. package/components/chip/themes/dark/chip.indigo.css.js +1 -1
  169. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
  170. package/components/chip/themes/dark/chip.material.css.js +1 -1
  171. package/components/chip/themes/dark/chip.material.css.js.map +1 -1
  172. package/components/chip/themes/light/chip.bootstrap.css.js +1 -1
  173. package/components/chip/themes/light/chip.bootstrap.css.js.map +1 -1
  174. package/components/chip/themes/light/chip.fluent.css.js +1 -1
  175. package/components/chip/themes/light/chip.fluent.css.js.map +1 -1
  176. package/components/chip/themes/light/chip.indigo.css.js +1 -1
  177. package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
  178. package/components/chip/themes/light/chip.material.css.js +1 -1
  179. package/components/chip/themes/light/chip.material.css.js.map +1 -1
  180. package/components/chip/themes/light/chip.shared.css.js +1 -1
  181. package/components/chip/themes/light/chip.shared.css.js.map +1 -1
  182. package/components/chip/themes/shared/chip.bootstrap.css.js +1 -1
  183. package/components/chip/themes/shared/chip.bootstrap.css.js.map +1 -1
  184. package/components/chip/themes/shared/chip.common.css.js +1 -1
  185. package/components/chip/themes/shared/chip.common.css.js.map +1 -1
  186. package/components/chip/themes/shared/chip.fluent.css.js +1 -1
  187. package/components/chip/themes/shared/chip.fluent.css.js.map +1 -1
  188. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  189. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  190. package/components/chip/themes/themes.d.ts +1 -1
  191. package/components/chip/themes/themes.js.map +1 -1
  192. package/components/combo/combo-header.js +2 -2
  193. package/components/combo/combo-header.js.map +1 -1
  194. package/components/combo/combo-item.d.ts +0 -2
  195. package/components/combo/combo-item.js +4 -7
  196. package/components/combo/combo-item.js.map +1 -1
  197. package/components/combo/combo.d.ts +84 -26
  198. package/components/combo/combo.js +197 -152
  199. package/components/combo/combo.js.map +1 -1
  200. package/components/combo/controllers/data.d.ts +30 -3
  201. package/components/combo/controllers/data.js +34 -9
  202. package/components/combo/controllers/data.js.map +1 -1
  203. package/components/combo/controllers/navigation.d.ts +8 -2
  204. package/components/combo/controllers/navigation.js +11 -12
  205. package/components/combo/controllers/navigation.js.map +1 -1
  206. package/components/combo/operations/filter.d.ts +17 -1
  207. package/components/combo/operations/filter.js +29 -9
  208. package/components/combo/operations/filter.js.map +1 -1
  209. package/components/combo/operations/group.js +1 -1
  210. package/components/combo/operations/group.js.map +1 -1
  211. package/components/combo/themes/combo.base.css.js +1 -1
  212. package/components/combo/themes/combo.base.css.js.map +1 -1
  213. package/components/combo/themes/themes.d.ts +1 -1
  214. package/components/combo/themes/themes.js.map +1 -1
  215. package/components/combo/types.d.ts +8 -4
  216. package/components/combo/types.js.map +1 -1
  217. package/components/combo/validators.d.ts +1 -1
  218. package/components/combo/validators.js.map +1 -1
  219. package/components/date-picker/date-picker.base.d.ts +294 -0
  220. package/components/date-picker/date-picker.base.js +480 -0
  221. package/components/date-picker/date-picker.base.js.map +1 -0
  222. package/components/date-picker/date-picker.d.ts +52 -172
  223. package/components/date-picker/date-picker.js +88 -393
  224. package/components/date-picker/date-picker.js.map +1 -1
  225. package/components/date-picker/themes/themes.d.ts +1 -1
  226. package/components/date-picker/themes/themes.js.map +1 -1
  227. package/components/date-picker/validators.d.ts +1 -1
  228. package/components/date-picker/validators.js +2 -2
  229. package/components/date-picker/validators.js.map +1 -1
  230. package/components/date-range-picker/date-range-input.d.ts +12 -14
  231. package/components/date-range-picker/date-range-input.js +42 -98
  232. package/components/date-range-picker/date-range-input.js.map +1 -1
  233. package/components/date-range-picker/date-range-mask-parser.d.ts +22 -34
  234. package/components/date-range-picker/date-range-mask-parser.js +38 -69
  235. package/components/date-range-picker/date-range-mask-parser.js.map +1 -1
  236. package/components/date-range-picker/date-range-picker.d.ts +98 -191
  237. package/components/date-range-picker/date-range-picker.js +210 -530
  238. package/components/date-range-picker/date-range-picker.js.map +1 -1
  239. package/components/date-range-picker/predefined-ranges-area.d.ts +2 -2
  240. package/components/date-range-picker/predefined-ranges-area.js +5 -5
  241. package/components/date-range-picker/predefined-ranges-area.js.map +1 -1
  242. package/components/date-range-picker/themes/ranges-themes.d.ts +1 -1
  243. package/components/date-range-picker/themes/ranges-themes.js.map +1 -1
  244. package/components/date-range-picker/themes/themes.d.ts +1 -1
  245. package/components/date-range-picker/themes/themes.js.map +1 -1
  246. package/components/date-range-picker/validators.d.ts +1 -1
  247. package/components/date-range-picker/validators.js +15 -22
  248. package/components/date-range-picker/validators.js.map +1 -1
  249. package/components/date-time-input/date-part.d.ts +18 -1
  250. package/components/date-time-input/date-part.js +10 -0
  251. package/components/date-time-input/date-part.js.map +1 -1
  252. package/components/date-time-input/date-time-input.base.d.ts +74 -12
  253. package/components/date-time-input/date-time-input.base.js +99 -27
  254. package/components/date-time-input/date-time-input.base.js.map +1 -1
  255. package/components/date-time-input/date-time-input.d.ts +13 -23
  256. package/components/date-time-input/date-time-input.js +45 -65
  257. package/components/date-time-input/date-time-input.js.map +1 -1
  258. package/components/date-time-input/datetime-mask-parser.d.ts +45 -109
  259. package/components/date-time-input/datetime-mask-parser.js +88 -139
  260. package/components/date-time-input/datetime-mask-parser.js.map +1 -1
  261. package/components/date-time-input/validators.d.ts +1 -1
  262. package/components/date-time-input/validators.js +2 -2
  263. package/components/date-time-input/validators.js.map +1 -1
  264. package/components/dialog/dialog.d.ts +2 -2
  265. package/components/dialog/dialog.js +21 -22
  266. package/components/dialog/dialog.js.map +1 -1
  267. package/components/dialog/themes/themes.d.ts +1 -1
  268. package/components/dialog/themes/themes.js.map +1 -1
  269. package/components/divider/divider.d.ts +2 -1
  270. package/components/divider/divider.js +3 -3
  271. package/components/divider/divider.js.map +1 -1
  272. package/components/divider/themes/themes.d.ts +1 -1
  273. package/components/divider/themes/themes.js.map +1 -1
  274. package/components/dropdown/dropdown-group.d.ts +10 -3
  275. package/components/dropdown/dropdown-group.js +21 -5
  276. package/components/dropdown/dropdown-group.js.map +1 -1
  277. package/components/dropdown/dropdown-header.d.ts +2 -2
  278. package/components/dropdown/dropdown-header.js +7 -2
  279. package/components/dropdown/dropdown-header.js.map +1 -1
  280. package/components/dropdown/dropdown-item.d.ts +4 -4
  281. package/components/dropdown/dropdown-item.js +3 -3
  282. package/components/dropdown/dropdown-item.js.map +1 -1
  283. package/components/dropdown/dropdown.d.ts +75 -32
  284. package/components/dropdown/dropdown.js +189 -110
  285. package/components/dropdown/dropdown.js.map +1 -1
  286. package/components/dropdown/themes/container.d.ts +1 -1
  287. package/components/dropdown/themes/container.js.map +1 -1
  288. package/components/dropdown/themes/group.d.ts +1 -1
  289. package/components/dropdown/themes/group.js.map +1 -1
  290. package/components/dropdown/themes/header.d.ts +1 -1
  291. package/components/dropdown/themes/header.js.map +1 -1
  292. package/components/dropdown/themes/item.d.ts +1 -1
  293. package/components/dropdown/themes/item.js.map +1 -1
  294. package/components/expansion-panel/expansion-panel.d.ts +14 -5
  295. package/components/expansion-panel/expansion-panel.js +10 -9
  296. package/components/expansion-panel/expansion-panel.js.map +1 -1
  297. package/components/expansion-panel/themes/themes.d.ts +1 -1
  298. package/components/expansion-panel/themes/themes.js.map +1 -1
  299. package/components/file-input/file-input.d.ts +20 -12
  300. package/components/file-input/file-input.js +17 -12
  301. package/components/file-input/file-input.js.map +1 -1
  302. package/components/file-input/themes/themes.d.ts +1 -1
  303. package/components/file-input/themes/themes.js.map +1 -1
  304. package/components/file-input/validators.d.ts +1 -1
  305. package/components/file-input/validators.js +1 -1
  306. package/components/file-input/validators.js.map +1 -1
  307. package/components/focus-trap/focus-trap.js +3 -2
  308. package/components/focus-trap/focus-trap.js.map +1 -1
  309. package/components/highlight/highlight.js +2 -2
  310. package/components/highlight/highlight.js.map +1 -1
  311. package/components/highlight/service.d.ts +4 -1
  312. package/components/highlight/service.js +23 -7
  313. package/components/highlight/service.js.map +1 -1
  314. package/components/highlight/themes/themes.d.ts +1 -1
  315. package/components/highlight/themes/themes.js.map +1 -1
  316. package/components/icon/icon-references.d.ts +3 -2
  317. package/components/icon/icon-references.js +103 -491
  318. package/components/icon/icon-references.js.map +1 -1
  319. package/components/icon/icon-state.broadcast.d.ts +14 -17
  320. package/components/icon/icon-state.broadcast.js +19 -20
  321. package/components/icon/icon-state.broadcast.js.map +1 -1
  322. package/components/icon/icon.d.ts +14 -25
  323. package/components/icon/icon.js +37 -24
  324. package/components/icon/icon.js.map +1 -1
  325. package/components/icon/icon.registry.d.ts +69 -131
  326. package/components/icon/icon.registry.js +51 -53
  327. package/components/icon/icon.registry.js.map +1 -1
  328. package/components/icon/internal-icons-lib.js +2 -2
  329. package/components/icon/internal-icons-lib.js.map +1 -1
  330. package/components/icon/registry/parser.d.ts +15 -3
  331. package/components/icon/registry/parser.js +36 -11
  332. package/components/icon/registry/parser.js.map +1 -1
  333. package/components/icon/registry/types.d.ts +55 -11
  334. package/components/icon/registry/types.js.map +1 -1
  335. package/components/icon/themes/icon.base.css.js +1 -1
  336. package/components/icon/themes/icon.base.css.js.map +1 -1
  337. package/components/icon/themes/shared/icon.common.css.js +1 -1
  338. package/components/icon/themes/shared/icon.common.css.js.map +1 -1
  339. package/components/icon/themes/themes.d.ts +1 -1
  340. package/components/icon/themes/themes.js.map +1 -1
  341. package/components/input/input-base.d.ts +12 -12
  342. package/components/input/input-base.js +13 -15
  343. package/components/input/input-base.js.map +1 -1
  344. package/components/input/input.d.ts +15 -12
  345. package/components/input/input.js +8 -8
  346. package/components/input/input.js.map +1 -1
  347. package/components/input/themes/input.base.css.js +1 -1
  348. package/components/input/themes/input.base.css.js.map +1 -1
  349. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  350. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  351. package/components/input/themes/shared/input.common.css.js +1 -1
  352. package/components/input/themes/shared/input.common.css.js.map +1 -1
  353. package/components/input/themes/shared/input.fluent.css.js +1 -1
  354. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  355. package/components/input/themes/shared/input.indigo.css.js +1 -1
  356. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  357. package/components/input/themes/shared/input.material.css.js +1 -1
  358. package/components/input/themes/shared/input.material.css.js.map +1 -1
  359. package/components/input/themes/themes.d.ts +1 -1
  360. package/components/input/themes/themes.js.map +1 -1
  361. package/components/input/validators.d.ts +1 -1
  362. package/components/input/validators.js +1 -1
  363. package/components/input/validators.js.map +1 -1
  364. package/components/list/list-header.js +3 -3
  365. package/components/list/list-header.js.map +1 -1
  366. package/components/list/list-item.js +3 -3
  367. package/components/list/list-item.js.map +1 -1
  368. package/components/list/list.js +3 -3
  369. package/components/list/list.js.map +1 -1
  370. package/components/list/themes/container.d.ts +1 -1
  371. package/components/list/themes/container.js.map +1 -1
  372. package/components/list/themes/header.d.ts +1 -1
  373. package/components/list/themes/header.js.map +1 -1
  374. package/components/list/themes/item.d.ts +1 -1
  375. package/components/list/themes/item.js.map +1 -1
  376. package/components/mask-input/mask-history.d.ts +99 -0
  377. package/components/mask-input/mask-history.js +95 -0
  378. package/components/mask-input/mask-history.js.map +1 -0
  379. package/components/mask-input/mask-input.d.ts +14 -9
  380. package/components/mask-input/mask-input.js +20 -23
  381. package/components/mask-input/mask-input.js.map +1 -1
  382. package/components/mask-input/mask-parser.d.ts +20 -2
  383. package/components/mask-input/mask-parser.js +21 -13
  384. package/components/mask-input/mask-parser.js.map +1 -1
  385. package/components/mask-input/validators.d.ts +1 -1
  386. package/components/mask-input/validators.js +1 -1
  387. package/components/mask-input/validators.js.map +1 -1
  388. package/components/nav-drawer/nav-drawer-header-item.d.ts +1 -1
  389. package/components/nav-drawer/nav-drawer-header-item.js +2 -2
  390. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  391. package/components/nav-drawer/nav-drawer-item.d.ts +2 -2
  392. package/components/nav-drawer/nav-drawer-item.js +4 -4
  393. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  394. package/components/nav-drawer/nav-drawer.d.ts +3 -3
  395. package/components/nav-drawer/nav-drawer.js +11 -14
  396. package/components/nav-drawer/nav-drawer.js.map +1 -1
  397. package/components/nav-drawer/themes/container.base.css.js +1 -1
  398. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  399. package/components/nav-drawer/themes/container.d.ts +1 -1
  400. package/components/nav-drawer/themes/container.js +2 -3
  401. package/components/nav-drawer/themes/container.js.map +1 -1
  402. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js +1 -1
  403. package/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.js.map +1 -1
  404. package/components/nav-drawer/themes/header-item.d.ts +1 -1
  405. package/components/nav-drawer/themes/header-item.js.map +1 -1
  406. package/components/nav-drawer/themes/item.d.ts +1 -1
  407. package/components/nav-drawer/themes/item.js.map +1 -1
  408. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js +1 -1
  409. package/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.js.map +1 -1
  410. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
  411. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
  412. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js +1 -1
  413. package/components/nav-drawer/themes/light/container/nav-drawer.indigo.css.js.map +1 -1
  414. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js +1 -1
  415. package/components/nav-drawer/themes/light/container/nav-drawer.shared.css.js.map +1 -1
  416. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
  417. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
  418. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
  419. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
  420. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +1 -1
  421. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -1
  422. package/components/navbar/navbar.js +2 -2
  423. package/components/navbar/navbar.js.map +1 -1
  424. package/components/navbar/themes/themes.d.ts +1 -1
  425. package/components/navbar/themes/themes.js.map +1 -1
  426. package/components/popover/popover.d.ts +10 -3
  427. package/components/popover/popover.js +114 -99
  428. package/components/popover/popover.js.map +1 -1
  429. package/components/progress/base.d.ts +1 -1
  430. package/components/progress/base.js +5 -4
  431. package/components/progress/base.js.map +1 -1
  432. package/components/progress/circular-gradient.d.ts +2 -2
  433. package/components/progress/circular-gradient.js +1 -1
  434. package/components/progress/circular-gradient.js.map +1 -1
  435. package/components/progress/circular-progress.d.ts +15 -15
  436. package/components/progress/circular-progress.js +7 -6
  437. package/components/progress/circular-progress.js.map +1 -1
  438. package/components/progress/linear-progress.d.ts +12 -12
  439. package/components/progress/linear-progress.js +4 -4
  440. package/components/progress/linear-progress.js.map +1 -1
  441. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  442. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  443. package/components/progress/themes/circular/themes.d.ts +1 -1
  444. package/components/progress/themes/circular/themes.js.map +1 -1
  445. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  446. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  447. package/components/progress/themes/linear/themes.d.ts +1 -1
  448. package/components/progress/themes/linear/themes.js.map +1 -1
  449. package/components/qr-code/model/encode.d.ts +20 -0
  450. package/components/qr-code/model/encode.js +166 -0
  451. package/components/qr-code/model/encode.js.map +1 -0
  452. package/components/qr-code/model/error-correction.d.ts +15 -0
  453. package/components/qr-code/model/error-correction.js +1114 -0
  454. package/components/qr-code/model/error-correction.js.map +1 -0
  455. package/components/qr-code/model/mask.d.ts +11 -0
  456. package/components/qr-code/model/mask.js +161 -0
  457. package/components/qr-code/model/mask.js.map +1 -0
  458. package/components/qr-code/model/matrix.d.ts +15 -0
  459. package/components/qr-code/model/matrix.js +277 -0
  460. package/components/qr-code/model/matrix.js.map +1 -0
  461. package/components/qr-code/qr-code.d.ts +134 -0
  462. package/components/qr-code/qr-code.js +221 -0
  463. package/components/qr-code/qr-code.js.map +1 -0
  464. package/components/qr-code/renderer/constants.d.ts +26 -0
  465. package/components/qr-code/renderer/constants.js +5 -0
  466. package/components/qr-code/renderer/constants.js.map +1 -0
  467. package/components/qr-code/renderer/corner.d.ts +23 -0
  468. package/components/qr-code/renderer/corner.js +25 -0
  469. package/components/qr-code/renderer/corner.js.map +1 -0
  470. package/components/qr-code/renderer/dots.d.ts +14 -0
  471. package/components/qr-code/renderer/dots.js +7 -0
  472. package/components/qr-code/renderer/dots.js.map +1 -0
  473. package/components/qr-code/renderer/helpers.d.ts +18 -0
  474. package/components/qr-code/renderer/helpers.js +158 -0
  475. package/components/qr-code/renderer/helpers.js.map +1 -0
  476. package/components/qr-code/renderer/image.d.ts +23 -0
  477. package/components/qr-code/renderer/image.js +29 -0
  478. package/components/qr-code/renderer/image.js.map +1 -0
  479. package/components/qr-code/themes/dark/qr-code.bootstrap.css.js +3 -0
  480. package/components/qr-code/themes/dark/qr-code.bootstrap.css.js.map +1 -0
  481. package/components/qr-code/themes/dark/qr-code.fluent.css.d.ts +1 -0
  482. package/components/qr-code/themes/dark/qr-code.fluent.css.js +3 -0
  483. package/components/qr-code/themes/dark/qr-code.fluent.css.js.map +1 -0
  484. package/components/qr-code/themes/dark/qr-code.indigo.css.d.ts +1 -0
  485. package/components/qr-code/themes/dark/qr-code.indigo.css.js +3 -0
  486. package/components/qr-code/themes/dark/qr-code.indigo.css.js.map +1 -0
  487. package/components/qr-code/themes/dark/qr-code.material.css.d.ts +1 -0
  488. package/components/qr-code/themes/dark/qr-code.material.css.js +3 -0
  489. package/components/qr-code/themes/dark/qr-code.material.css.js.map +1 -0
  490. package/components/qr-code/themes/light/qr-code.bootstrap.css.d.ts +1 -0
  491. package/components/qr-code/themes/light/qr-code.bootstrap.css.js +3 -0
  492. package/components/qr-code/themes/light/qr-code.bootstrap.css.js.map +1 -0
  493. package/components/qr-code/themes/light/qr-code.fluent.css.d.ts +1 -0
  494. package/components/qr-code/themes/light/qr-code.fluent.css.js +3 -0
  495. package/components/qr-code/themes/light/qr-code.fluent.css.js.map +1 -0
  496. package/components/qr-code/themes/light/qr-code.indigo.css.d.ts +1 -0
  497. package/components/qr-code/themes/light/qr-code.indigo.css.js +3 -0
  498. package/components/qr-code/themes/light/qr-code.indigo.css.js.map +1 -0
  499. package/components/qr-code/themes/light/qr-code.material.css.d.ts +1 -0
  500. package/components/qr-code/themes/light/qr-code.material.css.js +3 -0
  501. package/components/qr-code/themes/light/qr-code.material.css.js.map +1 -0
  502. package/components/qr-code/themes/light/qr-code.shared.css.d.ts +1 -0
  503. package/components/qr-code/themes/light/qr-code.shared.css.js +3 -0
  504. package/components/qr-code/themes/light/qr-code.shared.css.js.map +1 -0
  505. package/components/qr-code/themes/qr-code.base.css.d.ts +1 -0
  506. package/components/qr-code/themes/qr-code.base.css.js +3 -0
  507. package/components/qr-code/themes/qr-code.base.css.js.map +1 -0
  508. package/components/qr-code/themes/shared/qr-code.common.css.d.ts +1 -0
  509. package/components/qr-code/themes/shared/qr-code.common.css.js +3 -0
  510. package/components/qr-code/themes/shared/qr-code.common.css.js.map +1 -0
  511. package/components/qr-code/themes/themes.d.ts +2 -0
  512. package/components/qr-code/themes/themes.js +46 -0
  513. package/components/qr-code/themes/themes.js.map +1 -0
  514. package/components/qr-code/types.d.ts +16 -0
  515. package/components/qr-code/types.js +2 -0
  516. package/components/qr-code/types.js.map +1 -0
  517. package/components/radio/controller.d.ts +35 -0
  518. package/components/radio/controller.js +100 -0
  519. package/components/radio/controller.js.map +1 -0
  520. package/components/radio/radio.d.ts +26 -14
  521. package/components/radio/radio.js +47 -36
  522. package/components/radio/radio.js.map +1 -1
  523. package/components/radio/themes/themes.d.ts +1 -1
  524. package/components/radio/themes/themes.js.map +1 -1
  525. package/components/radio/validators.d.ts +1 -1
  526. package/components/radio/validators.js +5 -3
  527. package/components/radio/validators.js.map +1 -1
  528. package/components/radio-group/radio-group.d.ts +19 -10
  529. package/components/radio-group/radio-group.js +50 -41
  530. package/components/radio-group/radio-group.js.map +1 -1
  531. package/components/radio-group/themes/themes.d.ts +1 -1
  532. package/components/radio-group/themes/themes.js.map +1 -1
  533. package/components/rating/rating-symbol.d.ts +1 -1
  534. package/components/rating/rating-symbol.js +1 -1
  535. package/components/rating/rating-symbol.js.map +1 -1
  536. package/components/rating/rating.d.ts +6 -6
  537. package/components/rating/rating.js +12 -9
  538. package/components/rating/rating.js.map +1 -1
  539. package/components/rating/themes/themes.d.ts +1 -1
  540. package/components/rating/themes/themes.js.map +1 -1
  541. package/components/resize-container/resize-container.d.ts +4 -4
  542. package/components/resize-container/resize-container.js +4 -4
  543. package/components/resize-container/resize-container.js.map +1 -1
  544. package/components/resize-container/resize-controller.js +2 -2
  545. package/components/resize-container/resize-controller.js.map +1 -1
  546. package/components/resize-container/themes/themes.d.ts +1 -1
  547. package/components/resize-container/themes/themes.js.map +1 -1
  548. package/components/ripple/ripple.d.ts +1 -1
  549. package/components/ripple/ripple.js +3 -2
  550. package/components/ripple/ripple.js.map +1 -1
  551. package/components/select/select-group.d.ts +9 -2
  552. package/components/select/select-group.js +21 -5
  553. package/components/select/select-group.js.map +1 -1
  554. package/components/select/select-header.d.ts +1 -1
  555. package/components/select/select-header.js +7 -2
  556. package/components/select/select-header.js.map +1 -1
  557. package/components/select/select-item.d.ts +4 -4
  558. package/components/select/select-item.js +3 -3
  559. package/components/select/select-item.js.map +1 -1
  560. package/components/select/select.d.ts +49 -22
  561. package/components/select/select.js +132 -67
  562. package/components/select/select.js.map +1 -1
  563. package/components/select/themes/select.base.css.js +1 -1
  564. package/components/select/themes/select.base.css.js.map +1 -1
  565. package/components/select/themes/themes.d.ts +1 -1
  566. package/components/select/themes/themes.js.map +1 -1
  567. package/components/select/validators.d.ts +1 -1
  568. package/components/select/validators.js +1 -1
  569. package/components/select/validators.js.map +1 -1
  570. package/components/slider/range-slider.d.ts +2 -2
  571. package/components/slider/range-slider.js +8 -8
  572. package/components/slider/range-slider.js.map +1 -1
  573. package/components/slider/slider-base.js +18 -14
  574. package/components/slider/slider-base.js.map +1 -1
  575. package/components/slider/slider-label.js +1 -1
  576. package/components/slider/slider-label.js.map +1 -1
  577. package/components/slider/slider.d.ts +3 -3
  578. package/components/slider/slider.js +6 -6
  579. package/components/slider/slider.js.map +1 -1
  580. package/components/slider/themes/themes.d.ts +1 -1
  581. package/components/slider/themes/themes.js.map +1 -1
  582. package/components/snackbar/snackbar.d.ts +3 -3
  583. package/components/snackbar/snackbar.js +8 -8
  584. package/components/snackbar/snackbar.js.map +1 -1
  585. package/components/snackbar/themes/themes.d.ts +1 -1
  586. package/components/snackbar/themes/themes.js.map +1 -1
  587. package/components/splitter/splitter.d.ts +106 -23
  588. package/components/splitter/splitter.js +234 -147
  589. package/components/splitter/splitter.js.map +1 -1
  590. package/components/splitter/themes/themes.d.ts +1 -1
  591. package/components/splitter/themes/themes.js.map +1 -1
  592. package/components/splitter/types.d.ts +14 -3
  593. package/components/splitter/types.js.map +1 -1
  594. package/components/stepper/common/animations.d.ts +1 -1
  595. package/components/stepper/common/animations.js +2 -2
  596. package/components/stepper/common/animations.js.map +1 -1
  597. package/components/stepper/step.d.ts +1 -1
  598. package/components/stepper/step.js +7 -7
  599. package/components/stepper/step.js.map +1 -1
  600. package/components/stepper/stepper.d.ts +5 -5
  601. package/components/stepper/stepper.js +12 -9
  602. package/components/stepper/stepper.js.map +1 -1
  603. package/components/stepper/themes/step/themes.d.ts +1 -1
  604. package/components/stepper/themes/step/themes.js.map +1 -1
  605. package/components/tabs/tab-dom.d.ts +31 -28
  606. package/components/tabs/tab-dom.js +84 -34
  607. package/components/tabs/tab-dom.js.map +1 -1
  608. package/components/tabs/tab.d.ts +24 -6
  609. package/components/tabs/tab.js +34 -13
  610. package/components/tabs/tab.js.map +1 -1
  611. package/components/tabs/tabs.d.ts +36 -22
  612. package/components/tabs/tabs.js +118 -88
  613. package/components/tabs/tabs.js.map +1 -1
  614. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
  615. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
  616. package/components/tabs/themes/tab-themes.d.ts +1 -1
  617. package/components/tabs/themes/tab-themes.js.map +1 -1
  618. package/components/tabs/themes/tabs-themes.d.ts +1 -1
  619. package/components/tabs/themes/tabs-themes.js.map +1 -1
  620. package/components/tabs/themes/tabs.base.css.js +1 -1
  621. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  622. package/components/textarea/textarea.d.ts +19 -14
  623. package/components/textarea/textarea.js +22 -16
  624. package/components/textarea/textarea.js.map +1 -1
  625. package/components/textarea/themes/themes.d.ts +1 -1
  626. package/components/textarea/themes/themes.js.map +1 -1
  627. package/components/textarea/validators.d.ts +1 -1
  628. package/components/textarea/validators.js +1 -1
  629. package/components/textarea/validators.js.map +1 -1
  630. package/components/theme-provider/theme-provider.d.ts +1 -1
  631. package/components/theme-provider/theme-provider.js +2 -2
  632. package/components/theme-provider/theme-provider.js.map +1 -1
  633. package/components/tile-manager/position.d.ts +1 -1
  634. package/components/tile-manager/position.js +2 -2
  635. package/components/tile-manager/position.js.map +1 -1
  636. package/components/tile-manager/resize-state.js +4 -3
  637. package/components/tile-manager/resize-state.js.map +1 -1
  638. package/components/tile-manager/themes/container.d.ts +1 -1
  639. package/components/tile-manager/themes/container.js.map +1 -1
  640. package/components/tile-manager/themes/tile.d.ts +1 -1
  641. package/components/tile-manager/themes/tile.js.map +1 -1
  642. package/components/tile-manager/tile-ghost-util.js +1 -1
  643. package/components/tile-manager/tile-ghost-util.js.map +1 -1
  644. package/components/tile-manager/tile-manager.d.ts +1 -1
  645. package/components/tile-manager/tile-manager.js +7 -7
  646. package/components/tile-manager/tile-manager.js.map +1 -1
  647. package/components/tile-manager/tile.d.ts +4 -4
  648. package/components/tile-manager/tile.js +29 -25
  649. package/components/tile-manager/tile.js.map +1 -1
  650. package/components/toast/themes/themes.d.ts +1 -1
  651. package/components/toast/themes/themes.js.map +1 -1
  652. package/components/toast/toast.d.ts +1 -1
  653. package/components/toast/toast.js +3 -3
  654. package/components/toast/toast.js.map +1 -1
  655. package/components/tooltip/controller.d.ts +18 -16
  656. package/components/tooltip/controller.js +62 -41
  657. package/components/tooltip/controller.js.map +1 -1
  658. package/components/tooltip/service.d.ts +2 -1
  659. package/components/tooltip/service.js +10 -15
  660. package/components/tooltip/service.js.map +1 -1
  661. package/components/tooltip/themes/shared/tooltip.common.css.js +1 -1
  662. package/components/tooltip/themes/shared/tooltip.common.css.js.map +1 -1
  663. package/components/tooltip/themes/shared/tooltip.indigo.css.js +1 -1
  664. package/components/tooltip/themes/shared/tooltip.indigo.css.js.map +1 -1
  665. package/components/tooltip/themes/themes.d.ts +1 -1
  666. package/components/tooltip/themes/themes.js.map +1 -1
  667. package/components/tooltip/themes/tooltip.base.css.js +1 -1
  668. package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
  669. package/components/tooltip/tooltip.d.ts +64 -18
  670. package/components/tooltip/tooltip.js +112 -62
  671. package/components/tooltip/tooltip.js.map +1 -1
  672. package/components/tree/themes/container.base.css.js +1 -1
  673. package/components/tree/themes/container.base.css.js.map +1 -1
  674. package/components/tree/themes/container.d.ts +1 -1
  675. package/components/tree/themes/container.js.map +1 -1
  676. package/components/tree/themes/item.base.css.js +1 -1
  677. package/components/tree/themes/item.base.css.js.map +1 -1
  678. package/components/tree/themes/item.d.ts +1 -1
  679. package/components/tree/themes/item.js.map +1 -1
  680. package/components/tree/tree-item.d.ts +62 -36
  681. package/components/tree/tree-item.js +223 -233
  682. package/components/tree/tree-item.js.map +1 -1
  683. package/components/tree/tree.common.d.ts +16 -1
  684. package/components/tree/tree.common.js +40 -1
  685. package/components/tree/tree.common.js.map +1 -1
  686. package/components/tree/tree.d.ts +21 -14
  687. package/components/tree/tree.js +64 -72
  688. package/components/tree/tree.js.map +1 -1
  689. package/components/tree/tree.navigation.d.ts +39 -29
  690. package/components/tree/tree.navigation.js +140 -192
  691. package/components/tree/tree.navigation.js.map +1 -1
  692. package/components/tree/tree.selection.d.ts +32 -31
  693. package/components/tree/tree.selection.js +184 -178
  694. package/components/tree/tree.selection.js.map +1 -1
  695. package/components/types.js.map +1 -1
  696. package/components/validation-container/validation-container.d.ts +33 -6
  697. package/components/validation-container/validation-container.js +81 -70
  698. package/components/validation-container/validation-container.js.map +1 -1
  699. package/components/virtualization/engine.d.ts +92 -0
  700. package/components/virtualization/engine.js +217 -0
  701. package/components/virtualization/engine.js.map +1 -0
  702. package/components/virtualization/types.d.ts +53 -0
  703. package/components/virtualization/types.js +14 -0
  704. package/components/virtualization/types.js.map +1 -0
  705. package/components/virtualization/virtualization.d.ts +235 -0
  706. package/components/virtualization/virtualization.js +474 -0
  707. package/components/virtualization/virtualization.js.map +1 -0
  708. package/components/visually-hidden/visually-hidden.js +1 -1
  709. package/components/visually-hidden/visually-hidden.js.map +1 -1
  710. package/custom-elements.json +57500 -47242
  711. package/extras/chat-markdown-renderer.d.ts +1 -1
  712. package/extras/chat-markdown-renderer.js.map +1 -1
  713. package/igniteui-webcomponents.css-data.json +2 -2
  714. package/igniteui-webcomponents.html-data.json +1 -1
  715. package/index.d.ts +20 -15
  716. package/index.js +11 -9
  717. package/index.js.map +1 -1
  718. package/internals/abort-handler.js.map +1 -0
  719. package/internals/context.d.ts +39 -0
  720. package/{components/common → internals}/context.js +2 -1
  721. package/internals/context.js.map +1 -0
  722. package/internals/controllers/adopt-styles.d.ts +76 -0
  723. package/internals/controllers/adopt-styles.js +173 -0
  724. package/internals/controllers/adopt-styles.js.map +1 -0
  725. package/internals/controllers/aria-projection.d.ts +144 -0
  726. package/internals/controllers/aria-projection.js +138 -0
  727. package/internals/controllers/aria-projection.js.map +1 -0
  728. package/{components/common → internals}/controllers/async-consumer.js +8 -7
  729. package/internals/controllers/async-consumer.js.map +1 -0
  730. package/internals/controllers/command.js.map +1 -0
  731. package/{components/common → internals}/controllers/drag.js +3 -2
  732. package/internals/controllers/drag.js.map +1 -0
  733. package/{components/common → internals}/controllers/focus-ring.js +5 -2
  734. package/internals/controllers/focus-ring.js.map +1 -0
  735. package/{components/common → internals}/controllers/fullscreen.js +6 -3
  736. package/internals/controllers/fullscreen.js.map +1 -0
  737. package/{components/common → internals}/controllers/gestures.d.ts +1 -1
  738. package/{components/common → internals}/controllers/gestures.js +4 -4
  739. package/internals/controllers/gestures.js.map +1 -0
  740. package/{components/common → internals}/controllers/id-resolver.js +15 -21
  741. package/internals/controllers/id-resolver.js.map +1 -0
  742. package/{components/common → internals}/controllers/internals.d.ts +48 -3
  743. package/{components/common → internals}/controllers/internals.js +32 -0
  744. package/internals/controllers/internals.js.map +1 -0
  745. package/{components/common → internals}/controllers/key-bindings.d.ts +3 -6
  746. package/{components/common → internals}/controllers/key-bindings.js +43 -29
  747. package/internals/controllers/key-bindings.js.map +1 -0
  748. package/{components/common → internals}/controllers/mutation-observer.d.ts +5 -4
  749. package/internals/controllers/mutation-observer.js +74 -0
  750. package/internals/controllers/mutation-observer.js.map +1 -0
  751. package/{components/common → internals}/controllers/resize-observer.d.ts +11 -1
  752. package/{components/common → internals}/controllers/resize-observer.js +13 -2
  753. package/internals/controllers/resize-observer.js.map +1 -0
  754. package/{components/common → internals}/controllers/root-click.js +8 -13
  755. package/internals/controllers/root-click.js.map +1 -0
  756. package/{components/common → internals}/controllers/root-scroll.d.ts +11 -8
  757. package/internals/controllers/root-scroll.js +71 -0
  758. package/internals/controllers/root-scroll.js.map +1 -0
  759. package/{components/common → internals}/controllers/slot.d.ts +18 -2
  760. package/{components/common → internals}/controllers/slot.js +21 -6
  761. package/internals/controllers/slot.js.map +1 -0
  762. package/internals/date/compare.d.ts +2 -0
  763. package/internals/date/compare.js +23 -0
  764. package/internals/date/compare.js.map +1 -0
  765. package/internals/date/converters.d.ts +18 -0
  766. package/internals/date/converters.js +73 -0
  767. package/internals/date/converters.js.map +1 -0
  768. package/{components/calendar → internals/date}/model.d.ts +6 -3
  769. package/{components/calendar → internals/date}/model.js +23 -0
  770. package/internals/date/model.js.map +1 -0
  771. package/internals/decorators/blazorAdditionalDependencies.js.map +1 -0
  772. package/internals/decorators/blazorDeepImport.js.map +1 -0
  773. package/internals/decorators/blazorInclude.js.map +1 -0
  774. package/internals/decorators/blazorIndirectRender.js.map +1 -0
  775. package/internals/decorators/blazorSuppressComponent.js.map +1 -0
  776. package/internals/decorators/shadow-options.js.map +1 -0
  777. package/internals/decorators/watch.js.map +1 -0
  778. package/internals/definitions/defineAllComponents.js +153 -0
  779. package/internals/definitions/defineAllComponents.js.map +1 -0
  780. package/internals/definitions/defineComponents.js.map +1 -0
  781. package/internals/definitions/register.js.map +1 -0
  782. package/{components/common → internals}/i18n/EN/calendar.resources.js +1 -1
  783. package/internals/i18n/EN/calendar.resources.js.map +1 -0
  784. package/internals/i18n/EN/chat.resources.js.map +1 -0
  785. package/internals/i18n/EN/date-picker.resources.js.map +1 -0
  786. package/internals/i18n/EN/date-range-picker.resources.js.map +1 -0
  787. package/internals/i18n/i18n-controller.js.map +1 -0
  788. package/{components/common → internals}/i18n/utils.js +1 -1
  789. package/internals/i18n/utils.js.map +1 -0
  790. package/{components/common → internals}/mixins/alert.d.ts +2 -2
  791. package/{components/common → internals}/mixins/alert.js +3 -3
  792. package/internals/mixins/alert.js.map +1 -0
  793. package/{components/common → internals}/mixins/combo-box.d.ts +10 -2
  794. package/{components/common → internals}/mixins/combo-box.js +9 -4
  795. package/internals/mixins/combo-box.js.map +1 -0
  796. package/internals/mixins/constructor.js.map +1 -0
  797. package/internals/mixins/event-emitter.js.map +1 -0
  798. package/{components/common → internals}/mixins/forms/associated-required.js +10 -19
  799. package/internals/mixins/forms/associated-required.js.map +1 -0
  800. package/{components/common → internals}/mixins/forms/associated.d.ts +1 -1
  801. package/{components/common → internals}/mixins/forms/associated.js +66 -51
  802. package/internals/mixins/forms/associated.js.map +1 -0
  803. package/{components/common → internals}/mixins/forms/form-transformers.d.ts +1 -1
  804. package/{components/common → internals}/mixins/forms/form-transformers.js +2 -2
  805. package/internals/mixins/forms/form-transformers.js.map +1 -0
  806. package/internals/mixins/forms/form-value.js.map +1 -0
  807. package/{components/common → internals}/mixins/forms/types.d.ts +7 -7
  808. package/internals/mixins/forms/types.js.map +1 -0
  809. package/{components/common → internals}/mixins/mask-behavior.d.ts +11 -3
  810. package/{components/common → internals}/mixins/mask-behavior.js +117 -29
  811. package/internals/mixins/mask-behavior.js.map +1 -0
  812. package/{components/common → internals}/mixins/option.d.ts +0 -2
  813. package/{components/common → internals}/mixins/option.js +1 -4
  814. package/internals/mixins/option.js.map +1 -0
  815. package/internals/part-map.js.map +1 -0
  816. package/{components/common → internals}/templates/input-shell.d.ts +8 -1
  817. package/{components/common → internals}/templates/input-shell.js +14 -4
  818. package/internals/templates/input-shell.js.map +1 -0
  819. package/{components/common → internals}/templates/masked-input.d.ts +8 -2
  820. package/{components/common → internals}/templates/masked-input.js +5 -3
  821. package/internals/templates/masked-input.js.map +1 -0
  822. package/internals/utils/arrays.d.ts +53 -0
  823. package/internals/utils/arrays.js +31 -0
  824. package/internals/utils/arrays.js.map +1 -0
  825. package/internals/utils/dom.d.ts +92 -0
  826. package/internals/utils/dom.js +143 -0
  827. package/internals/utils/dom.js.map +1 -0
  828. package/internals/utils/events.d.ts +41 -0
  829. package/internals/utils/events.js +37 -0
  830. package/internals/utils/events.js.map +1 -0
  831. package/internals/utils/lit.d.ts +8 -0
  832. package/internals/utils/lit.js +15 -0
  833. package/internals/utils/lit.js.map +1 -0
  834. package/internals/utils/math.d.ts +50 -0
  835. package/internals/utils/math.js +38 -0
  836. package/internals/utils/math.js.map +1 -0
  837. package/internals/utils/objects.d.ts +25 -0
  838. package/internals/utils/objects.js +125 -0
  839. package/internals/utils/objects.js.map +1 -0
  840. package/internals/utils/strings.d.ts +44 -0
  841. package/internals/utils/strings.js +46 -0
  842. package/internals/utils/strings.js.map +1 -0
  843. package/internals/utils/types.d.ts +13 -0
  844. package/internals/utils/types.js +31 -0
  845. package/internals/utils/types.js.map +1 -0
  846. package/{components/common → internals}/validators.d.ts +1 -1
  847. package/{components/common → internals}/validators.js +4 -2
  848. package/internals/validators.js.map +1 -0
  849. package/package.json +15 -7
  850. package/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +15 -1
  851. package/themes/dark/bootstrap.css +1 -1
  852. package/themes/dark/fluent.css +1 -1
  853. package/themes/dark/indigo.css +1 -1
  854. package/themes/dark/material.css +1 -1
  855. package/themes/light/bootstrap.css +1 -1
  856. package/themes/light/fluent.css +1 -1
  857. package/themes/light/indigo.css +1 -1
  858. package/themes/light/material.css +1 -1
  859. package/theming/theming-controller.d.ts +2 -2
  860. package/theming/theming-controller.js.map +1 -1
  861. package/web-types.json +3 -3
  862. package/components/calendar/model.js.map +0 -1
  863. package/components/combo/combo-list.d.ts +0 -11
  864. package/components/combo/combo-list.js +0 -13
  865. package/components/combo/combo-list.js.map +0 -1
  866. package/components/common/abort-handler.js.map +0 -1
  867. package/components/common/context.d.ts +0 -25
  868. package/components/common/context.js.map +0 -1
  869. package/components/common/controllers/adopt-styles.d.ts +0 -124
  870. package/components/common/controllers/adopt-styles.js +0 -75
  871. package/components/common/controllers/adopt-styles.js.map +0 -1
  872. package/components/common/controllers/async-consumer.js.map +0 -1
  873. package/components/common/controllers/command.js.map +0 -1
  874. package/components/common/controllers/drag.js.map +0 -1
  875. package/components/common/controllers/focus-ring.js.map +0 -1
  876. package/components/common/controllers/fullscreen.js.map +0 -1
  877. package/components/common/controllers/gestures.js.map +0 -1
  878. package/components/common/controllers/id-resolver.js.map +0 -1
  879. package/components/common/controllers/internals.js.map +0 -1
  880. package/components/common/controllers/key-bindings.js.map +0 -1
  881. package/components/common/controllers/mutation-observer.js +0 -69
  882. package/components/common/controllers/mutation-observer.js.map +0 -1
  883. package/components/common/controllers/resize-observer.js.map +0 -1
  884. package/components/common/controllers/root-click.js.map +0 -1
  885. package/components/common/controllers/root-scroll.js +0 -63
  886. package/components/common/controllers/root-scroll.js.map +0 -1
  887. package/components/common/controllers/slot.js.map +0 -1
  888. package/components/common/decorators/blazorAdditionalDependencies.js.map +0 -1
  889. package/components/common/decorators/blazorDeepImport.js.map +0 -1
  890. package/components/common/decorators/blazorInclude.js.map +0 -1
  891. package/components/common/decorators/blazorIndirectRender.js.map +0 -1
  892. package/components/common/decorators/blazorSuppressComponent.js.map +0 -1
  893. package/components/common/decorators/shadow-options.js.map +0 -1
  894. package/components/common/decorators/watch.js.map +0 -1
  895. package/components/common/definitions/defineAllComponents.js +0 -151
  896. package/components/common/definitions/defineAllComponents.js.map +0 -1
  897. package/components/common/definitions/defineComponents.js.map +0 -1
  898. package/components/common/definitions/register.js.map +0 -1
  899. package/components/common/i18n/EN/calendar.resources.js.map +0 -1
  900. package/components/common/i18n/EN/chat.resources.js.map +0 -1
  901. package/components/common/i18n/EN/date-picker.resources.js.map +0 -1
  902. package/components/common/i18n/EN/date-range-picker.resources.js.map +0 -1
  903. package/components/common/i18n/i18n-controller.js.map +0 -1
  904. package/components/common/i18n/utils.js.map +0 -1
  905. package/components/common/mixins/alert.js.map +0 -1
  906. package/components/common/mixins/combo-box.js.map +0 -1
  907. package/components/common/mixins/constructor.js.map +0 -1
  908. package/components/common/mixins/event-emitter.js.map +0 -1
  909. package/components/common/mixins/forms/associated-required.js.map +0 -1
  910. package/components/common/mixins/forms/associated.js.map +0 -1
  911. package/components/common/mixins/forms/form-transformers.js.map +0 -1
  912. package/components/common/mixins/forms/form-value.js.map +0 -1
  913. package/components/common/mixins/forms/types.js.map +0 -1
  914. package/components/common/mixins/mask-behavior.js.map +0 -1
  915. package/components/common/mixins/option.js.map +0 -1
  916. package/components/common/part-map.js.map +0 -1
  917. package/components/common/templates/input-shell.js.map +0 -1
  918. package/components/common/templates/masked-input.js.map +0 -1
  919. package/components/common/util.d.ts +0 -196
  920. package/components/common/util.js +0 -390
  921. package/components/common/util.js.map +0 -1
  922. package/components/common/validators.js.map +0 -1
  923. package/components/icon/registry/default-map.d.ts +0 -107
  924. package/components/icon/registry/default-map.js +0 -25
  925. package/components/icon/registry/default-map.js.map +0 -1
  926. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js +0 -3
  927. package/components/nav-drawer/themes/shared/container/nav-drawer.fluent.css.js.map +0 -1
  928. package/components/radio/utils.d.ts +0 -13
  929. package/components/radio/utils.js +0 -37
  930. package/components/radio/utils.js.map +0 -1
  931. /package/components/{nav-drawer/themes/shared/container/nav-drawer.fluent.css.d.ts → qr-code/themes/dark/qr-code.bootstrap.css.d.ts} +0 -0
  932. /package/{components/common → internals}/abort-handler.d.ts +0 -0
  933. /package/{components/common → internals}/abort-handler.js +0 -0
  934. /package/{components/common → internals}/controllers/async-consumer.d.ts +0 -0
  935. /package/{components/common → internals}/controllers/command.d.ts +0 -0
  936. /package/{components/common → internals}/controllers/command.js +0 -0
  937. /package/{components/common → internals}/controllers/drag.d.ts +0 -0
  938. /package/{components/common → internals}/controllers/focus-ring.d.ts +0 -0
  939. /package/{components/common → internals}/controllers/fullscreen.d.ts +0 -0
  940. /package/{components/common → internals}/controllers/id-resolver.d.ts +0 -0
  941. /package/{components/common → internals}/controllers/root-click.d.ts +0 -0
  942. /package/{components/common → internals}/decorators/blazorAdditionalDependencies.d.ts +0 -0
  943. /package/{components/common → internals}/decorators/blazorAdditionalDependencies.js +0 -0
  944. /package/{components/common → internals}/decorators/blazorDeepImport.d.ts +0 -0
  945. /package/{components/common → internals}/decorators/blazorDeepImport.js +0 -0
  946. /package/{components/common → internals}/decorators/blazorInclude.d.ts +0 -0
  947. /package/{components/common → internals}/decorators/blazorInclude.js +0 -0
  948. /package/{components/common → internals}/decorators/blazorIndirectRender.d.ts +0 -0
  949. /package/{components/common → internals}/decorators/blazorIndirectRender.js +0 -0
  950. /package/{components/common → internals}/decorators/blazorSuppressComponent.d.ts +0 -0
  951. /package/{components/common → internals}/decorators/blazorSuppressComponent.js +0 -0
  952. /package/{components/common → internals}/decorators/shadow-options.d.ts +0 -0
  953. /package/{components/common → internals}/decorators/shadow-options.js +0 -0
  954. /package/{components/common → internals}/decorators/watch.d.ts +0 -0
  955. /package/{components/common → internals}/decorators/watch.js +0 -0
  956. /package/{components/common → internals}/definitions/defineAllComponents.d.ts +0 -0
  957. /package/{components/common → internals}/definitions/defineComponents.d.ts +0 -0
  958. /package/{components/common → internals}/definitions/defineComponents.js +0 -0
  959. /package/{components/common → internals}/definitions/register.d.ts +0 -0
  960. /package/{components/common → internals}/definitions/register.js +0 -0
  961. /package/{components/common → internals}/i18n/EN/calendar.resources.d.ts +0 -0
  962. /package/{components/common → internals}/i18n/EN/chat.resources.d.ts +0 -0
  963. /package/{components/common → internals}/i18n/EN/chat.resources.js +0 -0
  964. /package/{components/common → internals}/i18n/EN/date-picker.resources.d.ts +0 -0
  965. /package/{components/common → internals}/i18n/EN/date-picker.resources.js +0 -0
  966. /package/{components/common → internals}/i18n/EN/date-range-picker.resources.d.ts +0 -0
  967. /package/{components/common → internals}/i18n/EN/date-range-picker.resources.js +0 -0
  968. /package/{components/common → internals}/i18n/i18n-controller.d.ts +0 -0
  969. /package/{components/common → internals}/i18n/i18n-controller.js +0 -0
  970. /package/{components/common → internals}/i18n/utils.d.ts +0 -0
  971. /package/{components/common → internals}/mixins/constructor.d.ts +0 -0
  972. /package/{components/common → internals}/mixins/constructor.js +0 -0
  973. /package/{components/common → internals}/mixins/event-emitter.d.ts +0 -0
  974. /package/{components/common → internals}/mixins/event-emitter.js +0 -0
  975. /package/{components/common → internals}/mixins/forms/associated-required.d.ts +0 -0
  976. /package/{components/common → internals}/mixins/forms/form-value.d.ts +0 -0
  977. /package/{components/common → internals}/mixins/forms/form-value.js +0 -0
  978. /package/{components/common → internals}/mixins/forms/types.js +0 -0
  979. /package/{components/common → internals}/part-map.d.ts +0 -0
  980. /package/{components/common → internals}/part-map.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"mask-parser.js","sourceRoot":"","sources":["../../../src/components/mask-input/mask-parser.ts"],"names":[],"mappings":"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","sourcesContent":["/** Options for the {@link MaskParser} */\ninterface MaskOptions {\n /**\n * The mask format string (e.g., '00/00/0000' for dates, 'AAA-000' for custom IDs).\n *\n * Supported flags: a, A, C, L, 0, 9, #, &, ?.\n *\n * Use `'\\'` to escape a flag character if it should be treated as a literal.\n * @default 'CCCCCCCCCC'\n */\n format?: string;\n\n /**\n * The character used to prompt for input in unfilled mask positions.\n * Must be a single character.\n * @default '_'\n */\n promptCharacter?: string;\n}\n\n/** Internal options with all required fields */\ninterface MaskOptionsInternal {\n format: string;\n promptCharacter: string;\n}\n\n/**\n * Result type for the replace operation, containing the new masked value and the\n * ideal cursor position.\n */\ntype MaskReplaceResult = {\n value: string;\n end: number;\n};\n\nconst MASK_FLAGS = new Set('aACL09#&?');\nconst MASK_REQUIRED_FLAGS = new Set('0#LA&');\n\nconst ESCAPE_CHAR = '\\\\';\nconst DEFAULT_FORMAT = 'CCCCCCCCCC';\nconst DEFAULT_PROMPT = '_';\n\nconst ASCII_ZERO = 0x0030;\nconst DIGIT_ZERO_CODEPOINTS = [\n ASCII_ZERO, // ASCII\n 0x0660, // Arabic-Indic\n 0x06f0, // Extended Arabic-Indic\n 0x0966, // Devanagari\n 0x09e6, // Bengali\n 0x0a66, // Gurmukhi\n 0x0ae6, // Gujarati\n 0x0b66, // Oriya\n 0x0c66, // Telugu\n 0x0ce6, // Kannada\n 0x0d66, // Malayalam\n 0x0e50, // Thai\n 0x0ed0, // Lao\n 0x0f20, // Tibetan\n 0x1040, // Myanmar\n 0x17e0, // Khmer\n 0x1810, // Mongolian\n 0xff10, // Full-width\n] as const;\n\n/**\n * Precomputed map of Unicode digit codepoints to their ASCII equivalents.\n * This eliminates the need for iteration during conversion.\n */\nconst UNICODE_DIGIT_TO_ASCII = new Map<number, string>(\n DIGIT_ZERO_CODEPOINTS.flatMap((zeroCodePoint) =>\n Array.from({ length: 10 }, (_, i) => [\n zeroCodePoint + i,\n String.fromCharCode(ASCII_ZERO + i),\n ])\n )\n);\n\nfunction replaceUnicodeNumbers(text: string): string {\n const matcher = /\\p{Nd}/gu;\n\n return text.replace(matcher, (digit) => {\n return UNICODE_DIGIT_TO_ASCII.get(digit.charCodeAt(0)) ?? digit;\n });\n}\n\nconst MASK_PATTERNS = new Map<string, RegExp>([\n ['C', /[\\s\\S]/u], // Any single character (including newlines)\n ['&', /[^\\p{Separator}]/u], // Any non-separator character (excludes spaces, line/paragraph separators)\n ['a', /[\\p{Letter}\\p{Number}\\p{Separator}]/u], // Alphanumeric and separator characters (Unicode-aware)\n ['A', /[\\p{Letter}\\p{Number}]/u], // Alphanumeric (Unicode-aware)\n ['?', /[\\p{Letter}\\p{Separator}]/u], // Alphabetic and separator characters (Unicode-aware)\n ['L', /\\p{Letter}/u], // Alphabetic (Unicode-aware)\n ['0', /\\p{Number}/u], // Numeric (Unicode-aware, converted to ASCII 0-9 during processing)\n ['9', /[\\p{Number}\\p{Separator}]/u], // Numeric and separator characters (Unicode-aware)\n ['#', /[\\p{Number}\\-+]/u], // Numeric and sign characters (+, -)\n]);\n\nfunction validate(char: string, flag: string): boolean {\n return MASK_PATTERNS.get(flag)?.test(char) ?? false;\n}\n\n/** Default mask parser options */\nconst MaskDefaultOptions: MaskOptionsInternal = {\n format: DEFAULT_FORMAT,\n promptCharacter: DEFAULT_PROMPT,\n};\n\n/**\n * A class for parsing and applying masks to strings, typically for input fields.\n * It handles mask definitions, literals, character validation, and cursor positioning.\n */\nexport class MaskParser {\n protected readonly _options: MaskOptionsInternal;\n\n /** Stores literal characters and their original positions in the mask (e.g., '(', ')', '-'). */\n protected readonly _literals = new Map<number, string>();\n\n /** A Set of positions where literals occur in the `_escapedMask`. */\n protected _literalPositions = new Set<number>();\n\n /** The mask format after processing escape characters */\n protected _escapedMask = '';\n\n /** Cached array of required non-literal positions for validation */\n protected _requiredPositions: number[] = [];\n\n /**\n * Returns a set of the all the literal positions in the mask.\n * These positions are fixed characters that are not part of the input.\n */\n public get literalPositions(): ReadonlySet<number> {\n return this._literalPositions;\n }\n\n /**\n * Returns the escaped mask string.\n * This is the mask after processing any escape sequences.\n */\n public get escapedMask(): string {\n return this._escapedMask;\n }\n\n /**\n * Returns the result of applying an empty string over the mask pattern.\n */\n public get emptyMask(): string {\n return this.apply();\n }\n\n /**\n * Gets the unescaped mask string (the original format string).\n * If the mask has no escape sequences, then `mask === escapedMask`.\n */\n public get mask(): string {\n return this._options.format;\n }\n\n /**\n * Sets the mask of the parser.\n * When the mask is set, it triggers a re-parsing of the mask literals and escaped mask.\n */\n public set mask(value: string) {\n this._options.format = value || this._options.format;\n this._parseMaskLiterals();\n }\n\n /**\n * Gets the prompt character used for unfilled mask positions.\n */\n public get prompt(): string {\n return this._options.promptCharacter;\n }\n\n /**\n * Sets the prompt character. Only the first character of the provided string is used.\n * @remarks The prompt character cannot be a mask flag character.\n */\n public set prompt(value: string) {\n const char = value ? value.substring(0, 1) : this._options.promptCharacter;\n\n // Silently ignore if prompt character conflicts with mask flags\n if (MASK_FLAGS.has(char)) {\n return;\n }\n\n this._options.promptCharacter = char;\n }\n\n constructor(options?: MaskOptions) {\n this._options = { ...MaskDefaultOptions, ...options };\n this._parseMaskLiterals();\n }\n\n private _isEscapedFlag(char: string, nextChar: string): boolean {\n return char === ESCAPE_CHAR && MASK_FLAGS.has(nextChar);\n }\n\n /**\n * Parses the mask format string to identify literal characters and\n * create the escaped mask. This method is called whenever the mask format changes.\n */\n protected _parseMaskLiterals(): void {\n const mask = this.mask;\n const length = mask.length;\n const escapedMaskChars: string[] = [];\n\n let currentPos = 0;\n\n this._literals.clear();\n\n for (let i = 0; i < length; i++) {\n const [current, next] = [mask.charAt(i), mask.charAt(i + 1)];\n\n if (this._isEscapedFlag(current, next)) {\n // Escaped character - push next as a literal character and skip processing it\n this._literals.set(currentPos, next);\n escapedMaskChars.push(next);\n i++;\n } else if (MASK_FLAGS.has(current)) {\n // Regular flag character\n escapedMaskChars.push(current);\n } else {\n // Literal character\n this._literals.set(currentPos, current);\n escapedMaskChars.push(current);\n }\n\n currentPos++;\n }\n\n this._escapedMask = escapedMaskChars.join('');\n this._literalPositions = new Set(this._literals.keys());\n this._requiredPositions = this._computeRequiredPositions();\n }\n\n /**\n * Computes an array of positions in the escaped mask that correspond to\n * required input flags (e.g., '0', 'L') and are not literal characters.\n *\n * These positions must be filled for the masked string to be valid.\n */\n protected _computeRequiredPositions(): number[] {\n const literalPositions = this._literalPositions;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n const result: number[] = [];\n\n for (let i = 0; i < length; i++) {\n const char = escapedMask[i];\n if (MASK_REQUIRED_FLAGS.has(char) && !literalPositions.has(i)) {\n result.push(i);\n }\n }\n\n return result;\n }\n\n /**\n * Finds the closest non-literal position in the mask *before* the given start position.\n * Useful for backward navigation (e.g., backspace).\n *\n * @remarks\n * If no non-literal is found before `start`, return 0.\n */\n public getPreviousNonLiteralPosition(start: number): number {\n const literalPositions = this._literalPositions;\n\n for (let i = start - 1; i >= 0; i--) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return 0;\n }\n\n /**\n * Finds the closest non-literal position in the mask *after* the given start position.\n * Useful for forward navigation (e.g., arrow keys, delete key or initial cursor placement).\n *\n * @remarks\n * If no non-literal is found after `start`, return the mask length.\n */\n public getNextNonLiteralPosition(start: number): number {\n const literalPositions = this._literalPositions;\n const length = this._escapedMask.length;\n\n for (let i = Math.max(0, start); i < length; i++) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return length;\n }\n\n /**\n * Replaces a segment of the masked string with new input, simulating typing or pasting.\n * It handles clearing the selected range and inserting new characters according to the mask.\n *\n * @example\n * ```ts\n * const parser = new MaskParser({ format: '00/00/0000' });\n * const current = '__/__/____';\n * const result = parser.replace(current, '12', 0, 0);\n * // result.value = '12/__/____', result.end = 2\n * ```\n */\n public replace(\n maskString: string,\n value: string,\n start: number,\n end: number\n ): MaskReplaceResult {\n const literalPositions = this.literalPositions;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n const prompt = this.prompt;\n const endBoundary = Math.min(end, length);\n\n // Initialize the array for the masked string or get a fresh mask with prompts and/or literals\n const maskedChars = maskString ? [...maskString] : [...this.apply('')];\n\n const inputChars = Array.from(replaceUnicodeNumbers(value));\n const inputLength = inputChars.length;\n\n // Clear any non-literal positions from `start` to `endBoundary`\n for (let i = start; i < endBoundary; i++) {\n if (!literalPositions.has(i)) {\n maskedChars[i] = prompt;\n }\n }\n\n let cursor = start;\n let inputIndex = 0;\n let maskPosition = start;\n\n // Iterate through the mask starting at `start` as long as there are input characters and mask positions available\n // and start placing characters or skipping literals and invalid characters\n for (; maskPosition < length && inputIndex < inputLength; maskPosition++) {\n if (literalPositions.has(maskPosition)) {\n cursor = maskPosition + 1;\n continue;\n }\n\n const char = inputChars[inputIndex];\n\n if (validate(char, escapedMask[maskPosition]) && char !== prompt) {\n maskedChars[maskPosition] = char;\n cursor = maskPosition + 1;\n inputIndex++;\n } else {\n inputIndex++;\n maskPosition--;\n }\n }\n\n // Move the cursor to the next non-literal position or the end of the mask\n while (cursor < length && literalPositions.has(cursor)) {\n cursor++;\n }\n\n return {\n value: maskedChars.join(''),\n end: cursor,\n };\n }\n\n /**\n * Parses the masked string, extracting only the valid input characters.\n * This effectively \"unmasks\" the string, removing prompts and literals.\n */\n public parse(masked = ''): string {\n const literalPositions = this.literalPositions;\n const prompt = this.prompt;\n const length = masked.length;\n const result: string[] = [];\n\n for (let i = 0; i < length; i++) {\n const char = masked[i];\n if (!literalPositions.has(i) && char !== prompt) {\n result.push(char);\n }\n }\n\n return result.join('');\n }\n\n /**\n * Checks if the masked string is valid, specifically if all required mask positions are filled\n * with valid, non-prompt characters.\n */\n public isValidString(input = ''): boolean {\n const prompt = this.prompt;\n\n return this._requiredPositions.every((position) => {\n const char = input[position];\n return validate(char, this._escapedMask[position]) && char !== prompt;\n });\n }\n\n /**\n * Applies the mask format to an input string. This attempts to fit the input\n * into the mask from left to right, filling valid positions and skipping invalid\n * input characters.\n *\n * @example\n * ```ts\n * const parser = new MaskParser({ format: '00/00/0000' });\n * parser.apply('12252023'); // Returns '12/25/2023'\n * ```\n */\n public apply(input = ''): string {\n const literals = this._literals;\n const prompt = this.prompt;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n\n // Initialize the result array with prompt characters\n const result = new Array(length).fill(prompt);\n\n // Place all literal characters into the result array\n for (const [position, literal] of literals.entries()) {\n result[position] = literal;\n }\n\n if (!input) {\n return result.join('');\n }\n\n // Normalize Unicode digits to ASCII\n const normalizedInput = replaceUnicodeNumbers(input);\n const inputLength = normalizedInput.length;\n let inputIndex = 0;\n\n // Iterate through the mask placing input characters skipping literals and invalid ones\n for (let i = 0; i < length; i++) {\n if (inputIndex >= inputLength) {\n break;\n }\n\n if (literals.has(i)) {\n continue;\n }\n\n if (validate(normalizedInput[inputIndex], escapedMask[i])) {\n result[i] = normalizedInput[inputIndex];\n }\n\n // Always advance - invalid characters are consumed/skipped\n inputIndex++;\n }\n\n return result.join('');\n }\n}\n"]}
1
+ {"version":3,"file":"mask-parser.js","sourceRoot":"","sources":["../../../src/components/mask-input/mask-parser.ts"],"names":[],"mappings":"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","sourcesContent":["/** Options for the {@link MaskParser} */\nexport interface MaskOptions {\n /**\n * The mask format string (e.g., '00/00/0000' for dates, 'AAA-000' for custom IDs).\n *\n * Supported flags: a, A, C, L, 0, 9, #, &, ?.\n *\n * Use `'\\'` to escape a flag character if it should be treated as a literal.\n * @default 'CCCCCCCCCC'\n */\n format?: string;\n\n /**\n * The character used to prompt for input in unfilled mask positions.\n *\n * Only the first character is used, and a mask flag is rejected in favor of the\n * default - the same rules the `prompt` accessor applies.\n * @default '_'\n */\n promptCharacter?: string;\n}\n\n/** Internal options with all required fields */\ninterface MaskOptionsInternal {\n format: string;\n promptCharacter: string;\n}\n\n/**\n * Result type for the replace operation, containing the new masked value and the\n * ideal cursor position.\n */\ntype MaskReplaceResult = {\n value: string;\n end: number;\n};\n\nconst MASK_FLAGS = new Set('aACL09#&?');\nconst MASK_REQUIRED_FLAGS = new Set('0#LA&');\n\nconst ESCAPE_CHAR = '\\\\';\nconst DEFAULT_FORMAT = 'CCCCCCCCCC';\nconst DEFAULT_PROMPT = '_';\n\nconst ASCII_ZERO = 0x0030;\nconst DIGIT_ZERO_CODEPOINTS = [\n ASCII_ZERO, // ASCII\n 0x0660, // Arabic-Indic\n 0x06f0, // Extended Arabic-Indic\n 0x0966, // Devanagari\n 0x09e6, // Bengali\n 0x0a66, // Gurmukhi\n 0x0ae6, // Gujarati\n 0x0b66, // Oriya\n 0x0c66, // Telugu\n 0x0ce6, // Kannada\n 0x0d66, // Malayalam\n 0x0e50, // Thai\n 0x0ed0, // Lao\n 0x0f20, // Tibetan\n 0x1040, // Myanmar\n 0x17e0, // Khmer\n 0x1810, // Mongolian\n 0xff10, // Full-width\n] as const;\n\n/**\n * Precomputed map of Unicode digit codepoints to their ASCII equivalents.\n * This eliminates the need for iteration during conversion.\n */\nconst UNICODE_DIGIT_TO_ASCII = new Map<number, string>(\n DIGIT_ZERO_CODEPOINTS.flatMap((zeroCodePoint) =>\n Array.from({ length: 10 }, (_, i) => [\n zeroCodePoint + i,\n String.fromCharCode(ASCII_ZERO + i),\n ])\n )\n);\n\n/**\n * Narrows a prompt down to the single character the parser will actually use.\n *\n * Falls back to `current` when the prompt is empty or collides with a mask flag - a flag\n * standing in for an unfilled position could not be told apart from one the user typed.\n */\nfunction normalizePrompt(value: string | undefined, current: string): string {\n const char = value ? value.substring(0, 1) : current;\n return MASK_FLAGS.has(char) ? current : char;\n}\n\nfunction replaceUnicodeNumbers(text: string): string {\n const matcher = /\\p{Nd}/gu;\n\n return text.replace(matcher, (digit) => {\n return UNICODE_DIGIT_TO_ASCII.get(digit.charCodeAt(0)) ?? digit;\n });\n}\n\nconst MASK_PATTERNS = new Map<string, RegExp>([\n ['C', /[\\s\\S]/u], // Any single character (including newlines)\n ['&', /[^\\p{Separator}]/u], // Any non-separator character (excludes spaces, line/paragraph separators)\n ['a', /[\\p{Letter}\\p{Number}\\p{Separator}]/u], // Alphanumeric and separator characters (Unicode-aware)\n ['A', /[\\p{Letter}\\p{Number}]/u], // Alphanumeric (Unicode-aware)\n ['?', /[\\p{Letter}\\p{Separator}]/u], // Alphabetic and separator characters (Unicode-aware)\n ['L', /\\p{Letter}/u], // Alphabetic (Unicode-aware)\n ['0', /\\p{Number}/u], // Numeric (Unicode-aware, converted to ASCII 0-9 during processing)\n ['9', /[\\p{Number}\\p{Separator}]/u], // Numeric and separator characters (Unicode-aware)\n ['#', /[\\p{Number}\\-+]/u], // Numeric and sign characters (+, -)\n]);\n\nfunction validate(char: string, flag: string): boolean {\n return MASK_PATTERNS.get(flag)?.test(char) ?? false;\n}\n\n/**\n * A class for parsing and applying masks to strings, typically for input fields.\n * It handles mask definitions, literals, character validation, and cursor positioning.\n */\nexport class MaskParser {\n protected readonly _options: MaskOptionsInternal;\n\n /** Stores literal characters and their original positions in the mask (e.g., '(', ')', '-'). */\n protected readonly _literals = new Map<number, string>();\n\n /** A Set of positions where literals occur in the `_escapedMask`. */\n protected _literalPositions = new Set<number>();\n\n /** The mask format after processing escape characters */\n protected _escapedMask = '';\n\n /** Cached array of required non-literal positions for validation */\n protected _requiredPositions: number[] = [];\n\n /**\n * Declared without an initializer on purpose. With `useDefineForClassFields: false`\n * nothing is emitted for it, so {@link _invalidate} can safely run from the\n * constructor - before subclass fields exist.\n */\n private _emptyMask?: string;\n\n /**\n * Returns a set of the all the literal positions in the mask.\n * These positions are fixed characters that are not part of the input.\n */\n public get literalPositions(): ReadonlySet<number> {\n return this._literalPositions;\n }\n\n /**\n * Returns the escaped mask string.\n * This is the mask after processing any escape sequences.\n */\n public get escapedMask(): string {\n return this._escapedMask;\n }\n\n /**\n * Returns the result of applying an empty string over the mask pattern.\n */\n public get emptyMask(): string {\n this._emptyMask ??= this.apply();\n return this._emptyMask;\n }\n\n /**\n * Gets the unescaped mask string (the original format string).\n * If the mask has no escape sequences, then `mask === escapedMask`.\n */\n public get mask(): string {\n return this._options.format;\n }\n\n /**\n * Sets the mask of the parser.\n * When the mask is set, it triggers a re-parsing of the mask literals and escaped mask.\n */\n public set mask(value: string) {\n this._options.format = value || this._options.format;\n this._parseMaskLiterals();\n }\n\n /**\n * Gets the prompt character used for unfilled mask positions.\n */\n public get prompt(): string {\n return this._options.promptCharacter;\n }\n\n /**\n * Sets the prompt character. Only the first character of the provided string is used.\n * @remarks The prompt character cannot be a mask flag character.\n */\n public set prompt(value: string) {\n this._options.promptCharacter = normalizePrompt(\n value,\n this._options.promptCharacter\n );\n this._invalidate();\n }\n\n constructor(options?: MaskOptions) {\n this._options = {\n format: options?.format || DEFAULT_FORMAT,\n promptCharacter: normalizePrompt(\n options?.promptCharacter,\n DEFAULT_PROMPT\n ),\n };\n this._parseMaskLiterals();\n }\n\n private _isEscapedFlag(char: string, nextChar: string): boolean {\n return char === ESCAPE_CHAR && MASK_FLAGS.has(nextChar);\n }\n\n /**\n * The pattern the literal parser consumes. Subclasses whose public format is not itself\n * a mask pattern - date formats, for instance - translate it here.\n */\n protected _toMaskFormat(format: string): string {\n return format;\n }\n\n /**\n * Drops everything derived from the mask. Runs on every mask *and* prompt change, and\n * from the constructor, so overrides must not touch fields with initializers.\n */\n protected _invalidate(): void {\n this._emptyMask = undefined;\n }\n\n /**\n * Parses the mask format string to identify literal characters and\n * create the escaped mask. This method is called whenever the mask format changes.\n */\n protected _parseMaskLiterals(): void {\n const mask = this._toMaskFormat(this._options.format);\n const length = mask.length;\n const escapedMaskChars: string[] = [];\n\n let currentPos = 0;\n\n this._literals.clear();\n\n for (let i = 0; i < length; i++) {\n const [current, next] = [mask.charAt(i), mask.charAt(i + 1)];\n\n if (this._isEscapedFlag(current, next)) {\n // Escaped character - push next as a literal character and skip processing it\n this._literals.set(currentPos, next);\n escapedMaskChars.push(next);\n i++;\n } else if (MASK_FLAGS.has(current)) {\n // Regular flag character\n escapedMaskChars.push(current);\n } else {\n // Literal character\n this._literals.set(currentPos, current);\n escapedMaskChars.push(current);\n }\n\n currentPos++;\n }\n\n this._escapedMask = escapedMaskChars.join('');\n this._literalPositions = new Set(this._literals.keys());\n this._requiredPositions = this._computeRequiredPositions();\n this._invalidate();\n }\n\n /**\n * Computes an array of positions in the escaped mask that correspond to\n * required input flags (e.g., '0', 'L') and are not literal characters.\n *\n * These positions must be filled for the masked string to be valid.\n */\n protected _computeRequiredPositions(): number[] {\n const literalPositions = this._literalPositions;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n const result: number[] = [];\n\n for (let i = 0; i < length; i++) {\n const char = escapedMask[i];\n if (MASK_REQUIRED_FLAGS.has(char) && !literalPositions.has(i)) {\n result.push(i);\n }\n }\n\n return result;\n }\n\n /**\n * Finds the closest non-literal position in the mask *before* the given start position.\n * Useful for backward navigation (e.g., backspace).\n *\n * @remarks\n * If no non-literal is found before `start`, return 0.\n */\n public getPreviousNonLiteralPosition(start: number): number {\n const literalPositions = this._literalPositions;\n\n for (let i = start - 1; i >= 0; i--) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return 0;\n }\n\n /**\n * Finds the closest non-literal position in the mask *after* the given start position.\n * Useful for forward navigation (e.g., arrow keys, delete key or initial cursor placement).\n *\n * @remarks\n * If no non-literal is found after `start`, return the mask length.\n */\n public getNextNonLiteralPosition(start: number): number {\n const literalPositions = this._literalPositions;\n const length = this._escapedMask.length;\n\n for (let i = Math.max(0, start); i < length; i++) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return length;\n }\n\n /**\n * Replaces a segment of the masked string with new input, simulating typing or pasting.\n * It handles clearing the selected range and inserting new characters according to the mask.\n *\n * @example\n * ```ts\n * const parser = new MaskParser({ format: '00/00/0000' });\n * const current = '__/__/____';\n * const result = parser.replace(current, '12', 0, 0);\n * // result.value = '12/__/____', result.end = 2\n * ```\n */\n public replace(\n maskString: string,\n value: string,\n start: number,\n end: number\n ): MaskReplaceResult {\n const literalPositions = this.literalPositions;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n const prompt = this.prompt;\n const endBoundary = Math.min(end, length);\n\n // Initialize the array for the masked string or get a fresh mask with prompts and/or literals\n const maskedChars = maskString ? [...maskString] : [...this.emptyMask];\n\n const inputChars = Array.from(replaceUnicodeNumbers(value));\n const inputLength = inputChars.length;\n\n // Clear any non-literal positions from `start` to `endBoundary`\n for (let i = start; i < endBoundary; i++) {\n if (!literalPositions.has(i)) {\n maskedChars[i] = prompt;\n }\n }\n\n let cursor = start;\n let inputIndex = 0;\n let maskPosition = start;\n\n // Iterate through the mask starting at `start` as long as there are input characters and mask positions available\n // and start placing characters or skipping literals and invalid characters\n for (; maskPosition < length && inputIndex < inputLength; maskPosition++) {\n if (literalPositions.has(maskPosition)) {\n cursor = maskPosition + 1;\n continue;\n }\n\n const char = inputChars[inputIndex];\n\n if (validate(char, escapedMask[maskPosition]) && char !== prompt) {\n maskedChars[maskPosition] = char;\n cursor = maskPosition + 1;\n inputIndex++;\n } else {\n inputIndex++;\n maskPosition--;\n }\n }\n\n // Move the cursor to the next non-literal position or the end of the mask\n while (cursor < length && literalPositions.has(cursor)) {\n cursor++;\n }\n\n return {\n value: maskedChars.join(''),\n end: cursor,\n };\n }\n\n /**\n * Parses the masked string, extracting only the valid input characters.\n * This effectively \"unmasks\" the string, removing prompts and literals.\n */\n public parse(masked = ''): string {\n const literalPositions = this.literalPositions;\n const prompt = this.prompt;\n const length = masked.length;\n const result: string[] = [];\n\n for (let i = 0; i < length; i++) {\n const char = masked[i];\n if (!literalPositions.has(i) && char !== prompt) {\n result.push(char);\n }\n }\n\n return result.join('');\n }\n\n /**\n * Checks if the masked string is valid, specifically if all required mask positions are filled\n * with valid, non-prompt characters.\n */\n public isValidString(input = ''): boolean {\n const prompt = this.prompt;\n\n return this._requiredPositions.every((position) => {\n const char = input[position];\n return validate(char, this._escapedMask[position]) && char !== prompt;\n });\n }\n\n /**\n * Applies the mask format to an input string. This attempts to fit the input\n * into the mask from left to right, filling valid positions and skipping invalid\n * input characters.\n *\n * @example\n * ```ts\n * const parser = new MaskParser({ format: '00/00/0000' });\n * parser.apply('12252023'); // Returns '12/25/2023'\n * ```\n */\n public apply(input = ''): string {\n const literals = this._literals;\n const prompt = this.prompt;\n const escapedMask = this._escapedMask;\n const length = escapedMask.length;\n\n // Initialize the result array with prompt characters\n const result = new Array(length).fill(prompt);\n\n // Place all literal characters into the result array\n for (const [position, literal] of literals.entries()) {\n result[position] = literal;\n }\n\n if (!input) {\n return result.join('');\n }\n\n // Normalize Unicode digits to ASCII\n const normalizedInput = replaceUnicodeNumbers(input);\n const inputLength = normalizedInput.length;\n let inputIndex = 0;\n\n // Iterate through the mask placing input characters skipping literals and invalid ones\n for (let i = 0; i < length; i++) {\n if (inputIndex >= inputLength) {\n break;\n }\n\n if (literals.has(i)) {\n continue;\n }\n\n if (validate(normalizedInput[inputIndex], escapedMask[i])) {\n result[i] = normalizedInput[inputIndex];\n }\n\n // Always advance - invalid characters are consumed/skipped\n inputIndex++;\n }\n\n return result.join('');\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
- import { type Validator } from '../common/validators.js';
1
+ import { type Validator } from '#internals/validators.js';
2
2
  import type IgcMaskInputComponent from './mask-input.js';
3
3
  export declare const maskValidators: Validator<IgcMaskInputComponent>[];
@@ -1,5 +1,5 @@
1
1
  import { ValidationResourceStringsEN } from 'igniteui-i18n-core';
2
- import { requiredValidator } from '../common/validators.js';
2
+ import { requiredValidator } from '#internals/validators.js';
3
3
  export const maskValidators = [
4
4
  requiredValidator,
5
5
  {
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/components/mask-input/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,yBAAyB,CAAC;AAG5E,MAAM,CAAC,MAAM,cAAc,GAAuC;IAChE,iBAAiB;IACjB;QACE,GAAG,EAAE,UAAU;QACf,OAAO,EAAE,2BAA2B,CAAC,qBAAsB;QAC3D,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE;KAC7C;CACF,CAAC","sourcesContent":["import { ValidationResourceStringsEN } from 'igniteui-i18n-core';\nimport { requiredValidator, type Validator } from '../common/validators.js';\nimport type IgcMaskInputComponent from './mask-input.js';\n\nexport const maskValidators: Validator<IgcMaskInputComponent>[] = [\n requiredValidator,\n {\n key: 'badInput',\n message: ValidationResourceStringsEN.mask_validation_error!,\n isValid: (host) => host.isValidMaskPattern(),\n },\n];\n"]}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/components/mask-input/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,0BAA0B,CAAC;AAG7E,MAAM,CAAC,MAAM,cAAc,GAAuC;IAChE,iBAAiB;IACjB;QACE,GAAG,EAAE,UAAU;QACf,OAAO,EAAE,2BAA2B,CAAC,qBAAsB;QAC3D,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE;KAC7C;CACF,CAAC","sourcesContent":["import { ValidationResourceStringsEN } from 'igniteui-i18n-core';\nimport { requiredValidator, type Validator } from '#internals/validators.js';\nimport type IgcMaskInputComponent from './mask-input.js';\n\nexport const maskValidators: Validator<IgcMaskInputComponent>[] = [\n requiredValidator,\n {\n key: 'badInput',\n message: ValidationResourceStringsEN.mask_validation_error!,\n isValid: (host) => host.isValidMaskPattern(),\n },\n];\n"]}
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from 'lit';
2
2
  /**
3
- * A wrapper for navigation drawer's header.
3
+ * Represents a navigation drawer header item.
4
4
  * @element igc-nav-drawer-header-item
5
5
  *
6
6
  * @slot - Renders the header content
@@ -1,6 +1,6 @@
1
1
  import { html, LitElement } from 'lit';
2
- import { addThemingController } from '../../theming/theming-controller.js';
3
- import { registerComponent } from '../common/definitions/register.js';
2
+ import { registerComponent } from '#internals/definitions/register.js';
3
+ import { addThemingController } from '#theming/theming-controller.js';
4
4
  import { styles } from './themes/header-item.base.css.js';
5
5
  import { all } from './themes/header-item.js';
6
6
  import { styles as shared } from './themes/shared/header-item/header-item.common.css.js';
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer-header-item.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer-header-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uDAAuD,CAAC;AAQzF,MAAM,CAAC,OAAO,OAAO,+BAAgC,SAAQ,UAAU;aAC9C,YAAO,GAAG,4BAA4B,CAAC;aACvC,WAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG1C,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,+BAA+B,CAAC,CAAC;IACrD,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\n\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { styles } from './themes/header-item.base.css.js';\nimport { all } from './themes/header-item.js';\nimport { styles as shared } from './themes/shared/header-item/header-item.common.css.js';\n\n/**\n * A wrapper for navigation drawer's header.\n * @element igc-nav-drawer-header-item\n *\n * @slot - Renders the header content\n */\nexport default class IgcNavDrawerHeaderItemComponent extends LitElement {\n public static readonly tagName = 'igc-nav-drawer-header-item';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcNavDrawerHeaderItemComponent);\n }\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer-header-item': IgcNavDrawerHeaderItemComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"nav-drawer-header-item.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer-header-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uDAAuD,CAAC;AAQzF,MAAM,CAAC,OAAO,OAAO,+BAAgC,SAAQ,UAAU;aAC9C,YAAO,GAAG,4BAA4B,CAAC;aACvC,WAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG1C,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,+BAA+B,CAAC,CAAC;IACrD,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { registerComponent } from '#internals/definitions/register.js';\nimport { addThemingController } from '#theming/theming-controller.js';\nimport { styles } from './themes/header-item.base.css.js';\nimport { all } from './themes/header-item.js';\nimport { styles as shared } from './themes/shared/header-item/header-item.common.css.js';\n\n/**\n * Represents a navigation drawer header item.\n * @element igc-nav-drawer-header-item\n *\n * @slot - Renders the header content\n */\nexport default class IgcNavDrawerHeaderItemComponent extends LitElement {\n public static readonly tagName = 'igc-nav-drawer-header-item';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcNavDrawerHeaderItemComponent);\n }\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer-header-item': IgcNavDrawerHeaderItemComponent;\n }\n}\n"]}
@@ -18,12 +18,12 @@ export default class IgcNavDrawerItemComponent extends LitElement {
18
18
  private readonly _slots;
19
19
  private _hasContent;
20
20
  /**
21
- * Determines whether the drawer is disabled.
21
+ * Determines whether the drawer item is disabled.
22
22
  * @attr
23
23
  */
24
24
  disabled: boolean;
25
25
  /**
26
- * Determines whether the drawer is active.
26
+ * Determines whether the drawer item is active.
27
27
  * @attr
28
28
  */
29
29
  active: boolean;
@@ -6,10 +6,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement } from 'lit';
8
8
  import { property, state } from 'lit/decorators.js';
9
- import { addThemingController } from '../../theming/theming-controller.js';
10
- import { addSlotController, setSlots } from '../common/controllers/slot.js';
11
- import { registerComponent } from '../common/definitions/register.js';
12
- import { partMap } from '../common/part-map.js';
9
+ import { addSlotController, setSlots } from '#internals/controllers/slot.js';
10
+ import { registerComponent } from '#internals/definitions/register.js';
11
+ import { partMap } from '#internals/part-map.js';
12
+ import { addThemingController } from '#theming/theming-controller.js';
13
13
  import { styles } from './themes/item.base.css.js';
14
14
  import { all } from './themes/item.js';
15
15
  import { styles as shared } from './themes/shared/item/item.common.css.js';
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer-item.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,yCAAyC,CAAC;AAc3E,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,UAAU;aACxC,YAAO,GAAG,qBAAqB,AAAxB,CAAyB;aAChC,WAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,AAAnB,CAAoB;IAG1C,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAwBD;QACE,KAAK,EAAE,CAAC;QAvBO,WAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE;YAChD,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;YAClC,QAAQ,EAAE,IAAI,CAAC,iBAAiB;SACjC,CAAC,CAAC;QAGK,gBAAW,GAAG,IAAI,CAAC;QAOpB,aAAQ,GAAG,KAAK,CAAC;QAOjB,WAAM,GAAG,KAAK,CAAC;QAIpB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAES,iBAAiB;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAEkB,MAAM;QACvB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAA;kBACG,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oCAC9B,SAAS;;;;;;;KAOxC,CAAC;IACJ,CAAC;;AAtCO;IADP,KAAK,EAAE;8DACmB;AAOpB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2DACnB;AAOjB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yDACrB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addSlotController, setSlots } from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { partMap } from '../common/part-map.js';\nimport { styles } from './themes/item.base.css.js';\nimport { all } from './themes/item.js';\nimport { styles as shared } from './themes/shared/item/item.common.css.js';\n\n/**\n * Represents a navigation drawer item.\n *\n * @element igc-nav-drawer-item\n *\n * @slot content - The content slot for the drawer item.\n * @slot icon - The slot for the icon of the drawer item.\n *\n * @csspart base - The base wrapper of the drawer item.\n * @csspart icon - The icon container.\n * @csspart content - The content container.\n */\nexport default class IgcNavDrawerItemComponent extends LitElement {\n public static readonly tagName = 'igc-nav-drawer-item';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcNavDrawerItemComponent);\n }\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('content', 'icon'),\n onChange: this._handleSlotChange,\n });\n\n @state()\n private _hasContent = true;\n\n /**\n * Determines whether the drawer is disabled.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Determines whether the drawer is active.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected _handleSlotChange(): void {\n this._hasContent = this._slots.hasAssignedElements('content');\n }\n\n protected override render() {\n const hasNoIcon = !this._slots.hasAssignedNodes('icon', true);\n\n return html`\n <div part=${partMap({ base: true, mini: !this._hasContent })}>\n <span part=\"icon\" ?hidden=${hasNoIcon}>\n <slot name=\"icon\"></slot>\n </span>\n <span part=\"content\">\n <slot name=\"content\"></slot>\n </span>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer-item': IgcNavDrawerItemComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"nav-drawer-item.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,yCAAyC,CAAC;AAc3E,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,UAAU;aACxC,YAAO,GAAG,qBAAqB,AAAxB,CAAyB;aAChC,WAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,AAAnB,CAAoB;IAG1C,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAwBD;QACE,KAAK,EAAE,CAAC;QAvBO,WAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE;YAChD,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;YAClC,QAAQ,EAAE,IAAI,CAAC,iBAAiB;SACjC,CAAC,CAAC;QAGK,gBAAW,GAAG,IAAI,CAAC;QAOpB,aAAQ,GAAG,KAAK,CAAC;QAOjB,WAAM,GAAG,KAAK,CAAC;QAIpB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;IAES,iBAAiB;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAEkB,MAAM;QACvB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAA;kBACG,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oCAC9B,SAAS;;;;;;;KAOxC,CAAC;IACJ,CAAC;;AAtCO;IADP,KAAK,EAAE;8DACmB;AAOpB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2DACnB;AAOjB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yDACrB","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { addSlotController, setSlots } from '#internals/controllers/slot.js';\nimport { registerComponent } from '#internals/definitions/register.js';\nimport { partMap } from '#internals/part-map.js';\nimport { addThemingController } from '#theming/theming-controller.js';\nimport { styles } from './themes/item.base.css.js';\nimport { all } from './themes/item.js';\nimport { styles as shared } from './themes/shared/item/item.common.css.js';\n\n/**\n * Represents a navigation drawer item.\n *\n * @element igc-nav-drawer-item\n *\n * @slot content - The content slot for the drawer item.\n * @slot icon - The slot for the icon of the drawer item.\n *\n * @csspart base - The base wrapper of the drawer item.\n * @csspart icon - The icon container.\n * @csspart content - The content container.\n */\nexport default class IgcNavDrawerItemComponent extends LitElement {\n public static readonly tagName = 'igc-nav-drawer-item';\n public static override styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcNavDrawerItemComponent);\n }\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('content', 'icon'),\n onChange: this._handleSlotChange,\n });\n\n @state()\n private _hasContent = true;\n\n /**\n * Determines whether the drawer item is disabled.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Determines whether the drawer item is active.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public active = false;\n\n constructor() {\n super();\n addThemingController(this, all);\n }\n\n protected _handleSlotChange(): void {\n this._hasContent = this._slots.hasAssignedElements('content');\n }\n\n protected override render() {\n const hasNoIcon = !this._slots.hasAssignedNodes('icon', true);\n\n return html`\n <div part=${partMap({ base: true, mini: !this._hasContent })}>\n <span part=\"icon\" ?hidden=${hasNoIcon}>\n <slot name=\"icon\"></slot>\n </span>\n <span part=\"content\">\n <slot name=\"content\"></slot>\n </span>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer-item': IgcNavDrawerItemComponent;\n }\n}\n"]}
@@ -1,11 +1,11 @@
1
1
  import { LitElement, type PropertyValues } from 'lit';
2
- import type { Constructor } from '../common/mixins/constructor.js';
2
+ import type { Constructor } from '#internals/mixins/constructor.js';
3
3
  import type { NavDrawerPosition } from '../types.js';
4
4
  export interface IgcNavDrawerComponentEventMap {
5
5
  igcClosing: CustomEvent<void>;
6
6
  igcClosed: CustomEvent<void>;
7
7
  }
8
- declare const IgcNavDrawerComponent_base: Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcNavDrawerComponentEventMap>> & Constructor<LitElement>;
8
+ declare const IgcNavDrawerComponent_base: Constructor<import("#internals/mixins/event-emitter.js").EventEmitterInterface<IgcNavDrawerComponentEventMap>> & Constructor<LitElement>;
9
9
  /**
10
10
  * A side navigation container that provides
11
11
  * quick access between views within an application.
@@ -72,7 +72,7 @@ export default class IgcNavDrawerComponent extends IgcNavDrawerComponent_base {
72
72
  /**
73
73
  * Determines whether the drawer should remain open when the Escape key is pressed.
74
74
  *
75
- * This attribute is only applicable when the drawer is in a non-relative position,
75
+ * This is only applicable when the drawer is in a non-relative position,
76
76
  * as the Escape key does not trigger the closing of relative drawers.
77
77
  *
78
78
  * @attr keep-open-on-escape
@@ -9,13 +9,14 @@ import { property } from 'lit/decorators.js';
9
9
  import { cache } from 'lit/directives/cache.js';
10
10
  import { ifDefined } from 'lit/directives/if-defined.js';
11
11
  import { createRef, ref } from 'lit/directives/ref.js';
12
- import { addThemingController } from '../../theming/theming-controller.js';
13
- import { addCommandController } from '../common/controllers/command.js';
14
- import { addSlotController, setSlots } from '../common/controllers/slot.js';
15
- import { registerComponent } from '../common/definitions/register.js';
16
- import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
17
- import { partMap } from '../common/part-map.js';
18
- import { bindIf, isPopoverOpen, numberInRangeInclusive, } from '../common/util.js';
12
+ import { addCommandController } from '#internals/controllers/command.js';
13
+ import { addSlotController, setSlots } from '#internals/controllers/slot.js';
14
+ import { registerComponent } from '#internals/definitions/register.js';
15
+ import { EventEmitterMixin } from '#internals/mixins/event-emitter.js';
16
+ import { partMap } from '#internals/part-map.js';
17
+ import { isPointInsideElement, isPopoverOpen } from '#internals/utils/dom.js';
18
+ import { bindIf } from '#internals/utils/lit.js';
19
+ import { addThemingController } from '#theming/theming-controller.js';
19
20
  import IgcNavDrawerHeaderItemComponent from './nav-drawer-header-item.js';
20
21
  import IgcNavDrawerItemComponent from './nav-drawer-item.js';
21
22
  import { styles } from './themes/container.base.css.js';
@@ -107,13 +108,9 @@ export default class IgcNavDrawerComponent extends EventEmitterMixin(LitElement)
107
108
  }
108
109
  }
109
110
  _handleClick({ clientX, clientY, target }) {
110
- if (this._dialog === target) {
111
- const rect = this._dialog.getBoundingClientRect();
112
- const inX = numberInRangeInclusive(clientX, rect.left, rect.right);
113
- const inY = numberInRangeInclusive(clientY, rect.top, rect.bottom);
114
- if (!(inX && inY)) {
115
- this._closeWithEvent();
116
- }
111
+ if (this._dialog === target &&
112
+ !isPointInsideElement(this._dialog, clientX, clientY)) {
113
+ this._closeWithEvent();
117
114
  }
118
115
  }
119
116
  _emitClosing() {
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, type PropertyValues } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport { addCommandController } from '../common/controllers/command.js';\nimport { addSlotController, setSlots } from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { partMap } from '../common/part-map.js';\nimport {\n bindIf,\n isPopoverOpen,\n numberInRangeInclusive,\n} from '../common/util.js';\nimport type { NavDrawerPosition } from '../types.js';\nimport IgcNavDrawerHeaderItemComponent from './nav-drawer-header-item.js';\nimport IgcNavDrawerItemComponent from './nav-drawer-item.js';\nimport { styles } from './themes/container.base.css.js';\nimport { all } from './themes/container.js';\nimport { styles as shared } from './themes/shared/container/nav-drawer.common.css.js';\n\nexport interface IgcNavDrawerComponentEventMap {\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * A side navigation container that provides\n * quick access between views within an application.\n *\n * For non-relative positions (`start`, `end`, `top`, `bottom`) the drawer is\n * rendered as a native `<dialog>` element, providing modal semantics, automatic\n * focus trapping, and a backdrop. For the `relative` position it is rendered\n * inline as a `<nav>` landmark.\n *\n * When content is provided in the `mini` slot, a compact icon-only variant is\n * always displayed alongside the main drawer (hidden only while the full drawer\n * is open).\n *\n * The component integrates with the\n * [Invoker Commands API](https://developer.mozilla.org/en-US/docs/Web/API/Invoker_Commands_API):\n * an Ignite button or a native `<button>` with `command=\"--show\"` / `\"--hide\"` / `\"--toggle\"`\n * and `commandfor` pointing to this element will call the corresponding method\n * declaratively without any JavaScript.\n *\n * @element igc-nav-drawer\n *\n * @fires igcClosing - Emitted just before the drawer is closed by a user interaction. Cancelable —\n * call `event.preventDefault()` to abort the closing sequence.\n * @fires igcClosed - Emitted just after the drawer is closed by a user interaction.\n *\n * @slot - Renders the main navigation content of the drawer.\n * @slot mini - Renders the compact mini variant of the drawer.\n *\n * @csspart base - The base wrapper of the drawer.\n * @csspart main - The main content container of the drawer.\n * @csspart mini - The mini variant container of the drawer.\n */\nexport default class IgcNavDrawerComponent extends EventEmitterMixin<\n IgcNavDrawerComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-nav-drawer';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(\n IgcNavDrawerComponent,\n IgcNavDrawerHeaderItemComponent,\n IgcNavDrawerItemComponent\n );\n }\n\n //#region Internal state\n\n private readonly _dialogRef = createRef<HTMLDialogElement>();\n private readonly _miniRef = createRef<HTMLElement>();\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('mini'),\n onChange: this._handleMiniState,\n });\n\n private get _dialog(): HTMLDialogElement | undefined {\n return this._dialogRef.value;\n }\n\n private get _mini(): HTMLElement | undefined {\n return this._miniRef.value;\n }\n\n private get _hasMiniContent(): boolean {\n return this._slots.hasAssignedElements('mini');\n }\n\n private get _isRelative(): boolean {\n return this.position === 'relative';\n }\n\n //#endregion\n\n //#region Public properties\n\n /**\n * Sets the position of the drawer.\n *\n * - `start` — anchored to the inline-start edge (default).\n * - `end` — anchored to the inline-end edge.\n * - `top` — anchored to the block-start edge.\n * - `bottom` — anchored to the block-end edge.\n * - `relative` — rendered inline within the page flow; no modal backdrop.\n *\n * @attr position\n * @default 'start'\n */\n @property({ reflect: true })\n public position: NavDrawerPosition = 'start';\n\n /**\n * Whether the drawer is open.\n *\n * @attr open\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /**\n * Determines whether the drawer should remain open when the Escape key is pressed.\n *\n * This attribute is only applicable when the drawer is in a non-relative position,\n * as the Escape key does not trigger the closing of relative drawers.\n *\n * @attr keep-open-on-escape\n * @default false\n */\n @property({ type: Boolean, attribute: 'keep-open-on-escape' })\n public keepOpenOnEscape = false;\n\n /**\n * Sets an accessible label for the drawer.\n *\n * In non-relative positions this label is applied to the modal `<dialog>` element.\n * In `relative` position it labels the `<nav>` landmark.\n *\n * When multiple navigation landmarks exist on the page each should receive a\n * distinct label so screen-reader users can differentiate between them.\n *\n * @attr label\n */\n @property()\n public label?: string;\n\n //#endregion\n\n //#region Lit Lifecycle\n\n constructor() {\n super();\n\n addThemingController(this, all);\n addCommandController(this)\n .set('--show', this.show)\n .set('--hide', this.hide)\n .set('--toggle', this.toggle);\n }\n\n protected override update(properties: PropertyValues<this>): void {\n if (properties.has('position') && this._isRelative) {\n this._dialog?.close();\n if (isPopoverOpen(this._mini)) {\n this._mini?.hidePopover();\n }\n }\n\n super.update(properties);\n }\n\n protected override updated(properties: PropertyValues<this>): void {\n if (properties.has('open') || properties.has('position')) {\n this._handleOpenState();\n this._handleMiniState();\n }\n }\n\n //#endregion\n\n //#region Event handlers\n\n private _handleOpenState(): void {\n if (this._isRelative) {\n return;\n }\n\n this.open ? this._dialog?.showModal() : this._dialog?.close();\n }\n\n private _handleMiniState(): void {\n if (this._isRelative) {\n return;\n }\n\n const mini = this._mini;\n if (!mini) {\n return;\n }\n\n const popOverOpen = isPopoverOpen(mini);\n\n if (!this._hasMiniContent || this.open) {\n if (popOverOpen) {\n mini.hidePopover();\n }\n } else if (!popOverOpen) {\n mini.showPopover();\n }\n }\n\n private _handleCancel(event: Event): void {\n event.preventDefault();\n\n if (!this.keepOpenOnEscape) {\n this._closeWithEvent();\n }\n }\n\n private _handleClose(): void {\n if (this.open) {\n this._dialog?.showModal();\n }\n }\n\n private _handleClick({ clientX, clientY, target }: PointerEvent): void {\n if (this._dialog === target) {\n const rect = this._dialog.getBoundingClientRect();\n const inX = numberInRangeInclusive(clientX, rect.left, rect.right);\n const inY = numberInRangeInclusive(clientY, rect.top, rect.bottom);\n\n if (!(inX && inY)) {\n this._closeWithEvent();\n }\n }\n }\n\n //#endregion\n\n //#region Internal API\n\n private _emitClosing(): boolean {\n return this.emitEvent('igcClosing', { cancelable: true });\n }\n\n private async _closeWithEvent(): Promise<boolean> {\n if (!(this.open && this._emitClosing())) {\n return false;\n }\n\n this.open = false;\n await this.updateComplete;\n\n this.emitEvent('igcClosed');\n return true;\n }\n\n //#endregion\n\n //#region Public API\n\n /** Opens the drawer. Returns `true` if the operation was successful, `false` if the drawer was already open. */\n public async show(): Promise<boolean> {\n if (this.open) {\n return false;\n }\n\n this.open = true;\n await this.updateComplete;\n\n return true;\n }\n\n /** Closes the drawer. Returns `true` if the operation was successful, `false` if the drawer was already closed. */\n public async hide(): Promise<boolean> {\n if (!this.open) {\n return false;\n }\n\n this.open = false;\n await this.updateComplete;\n\n return true;\n }\n\n /** Toggles the open state of the drawer. Delegates to `show()` or `hide()` depending on the current state. */\n public toggle(): Promise<boolean> {\n return this.open ? this.hide() : this.show();\n }\n\n //#endregion\n\n private _renderMiniVariant() {\n return html`\n <nav\n ${ref(this._miniRef)}\n aria-label=${ifDefined(this.label)}\n part=${partMap({\n mini: true,\n hidden: !this._hasMiniContent,\n })}\n .inert=${this.open || !this._hasMiniContent}\n .popover=${!this._isRelative ? 'manual' : null}\n >\n <slot name=\"mini\"></slot>\n </nav>\n `;\n }\n\n private _renderContent() {\n return html`\n <div part=\"main\">\n <slot></slot>\n </div>\n `;\n }\n\n private _renderDialog() {\n return html`\n <dialog\n ${ref(this._dialogRef)}\n part=\"base\"\n aria-modal=\"true\"\n aria-label=${ifDefined(this.label)}\n @click=${this._handleClick}\n @cancel=${this._handleCancel}\n @close=${bindIf(this.keepOpenOnEscape, this._handleClose)}\n >\n ${this._renderContent()}\n </dialog>\n ${this._renderMiniVariant()}\n `;\n }\n\n private _renderRelative() {\n return html`\n <nav part=\"base\" aria-label=${ifDefined(this.label)} .inert=${!this.open}>\n ${this._renderContent()}\n </nav>\n ${this._renderMiniVariant()}\n `;\n }\n\n protected override render() {\n return html`${cache(\n this._isRelative ? this._renderRelative() : this._renderDialog()\n )}`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer': IgcNavDrawerComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"nav-drawer.js","sourceRoot":"","sources":["../../../src/components/nav-drawer/nav-drawer.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, type PropertyValues } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\nimport { addCommandController } from '#internals/controllers/command.js';\nimport { addSlotController, setSlots } from '#internals/controllers/slot.js';\nimport { registerComponent } from '#internals/definitions/register.js';\nimport type { Constructor } from '#internals/mixins/constructor.js';\nimport { EventEmitterMixin } from '#internals/mixins/event-emitter.js';\nimport { partMap } from '#internals/part-map.js';\nimport { isPointInsideElement, isPopoverOpen } from '#internals/utils/dom.js';\nimport { bindIf } from '#internals/utils/lit.js';\nimport { addThemingController } from '#theming/theming-controller.js';\nimport type { NavDrawerPosition } from '../types.js';\nimport IgcNavDrawerHeaderItemComponent from './nav-drawer-header-item.js';\nimport IgcNavDrawerItemComponent from './nav-drawer-item.js';\nimport { styles } from './themes/container.base.css.js';\nimport { all } from './themes/container.js';\nimport { styles as shared } from './themes/shared/container/nav-drawer.common.css.js';\n\nexport interface IgcNavDrawerComponentEventMap {\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n}\n\n/**\n * A side navigation container that provides\n * quick access between views within an application.\n *\n * For non-relative positions (`start`, `end`, `top`, `bottom`) the drawer is\n * rendered as a native `<dialog>` element, providing modal semantics, automatic\n * focus trapping, and a backdrop. For the `relative` position it is rendered\n * inline as a `<nav>` landmark.\n *\n * When content is provided in the `mini` slot, a compact icon-only variant is\n * always displayed alongside the main drawer (hidden only while the full drawer\n * is open).\n *\n * The component integrates with the\n * [Invoker Commands API](https://developer.mozilla.org/en-US/docs/Web/API/Invoker_Commands_API):\n * an Ignite button or a native `<button>` with `command=\"--show\"` / `\"--hide\"` / `\"--toggle\"`\n * and `commandfor` pointing to this element will call the corresponding method\n * declaratively without any JavaScript.\n *\n * @element igc-nav-drawer\n *\n * @fires igcClosing - Emitted just before the drawer is closed by a user interaction. Cancelable —\n * call `event.preventDefault()` to abort the closing sequence.\n * @fires igcClosed - Emitted just after the drawer is closed by a user interaction.\n *\n * @slot - Renders the main navigation content of the drawer.\n * @slot mini - Renders the compact mini variant of the drawer.\n *\n * @csspart base - The base wrapper of the drawer.\n * @csspart main - The main content container of the drawer.\n * @csspart mini - The mini variant container of the drawer.\n */\nexport default class IgcNavDrawerComponent extends EventEmitterMixin<\n IgcNavDrawerComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-nav-drawer';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(\n IgcNavDrawerComponent,\n IgcNavDrawerHeaderItemComponent,\n IgcNavDrawerItemComponent\n );\n }\n\n //#region Internal state\n\n private readonly _dialogRef = createRef<HTMLDialogElement>();\n private readonly _miniRef = createRef<HTMLElement>();\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('mini'),\n onChange: this._handleMiniState,\n });\n\n private get _dialog(): HTMLDialogElement | undefined {\n return this._dialogRef.value;\n }\n\n private get _mini(): HTMLElement | undefined {\n return this._miniRef.value;\n }\n\n private get _hasMiniContent(): boolean {\n return this._slots.hasAssignedElements('mini');\n }\n\n private get _isRelative(): boolean {\n return this.position === 'relative';\n }\n\n //#endregion\n\n //#region Public properties\n\n /**\n * Sets the position of the drawer.\n *\n * - `start` — anchored to the inline-start edge (default).\n * - `end` — anchored to the inline-end edge.\n * - `top` — anchored to the block-start edge.\n * - `bottom` — anchored to the block-end edge.\n * - `relative` — rendered inline within the page flow; no modal backdrop.\n *\n * @attr position\n * @default 'start'\n */\n @property({ reflect: true })\n public position: NavDrawerPosition = 'start';\n\n /**\n * Whether the drawer is open.\n *\n * @attr open\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /**\n * Determines whether the drawer should remain open when the Escape key is pressed.\n *\n * This is only applicable when the drawer is in a non-relative position,\n * as the Escape key does not trigger the closing of relative drawers.\n *\n * @attr keep-open-on-escape\n * @default false\n */\n @property({ type: Boolean, attribute: 'keep-open-on-escape' })\n public keepOpenOnEscape = false;\n\n /**\n * Sets an accessible label for the drawer.\n *\n * In non-relative positions this label is applied to the modal `<dialog>` element.\n * In `relative` position it labels the `<nav>` landmark.\n *\n * When multiple navigation landmarks exist on the page each should receive a\n * distinct label so screen-reader users can differentiate between them.\n *\n * @attr label\n */\n @property()\n public label?: string;\n\n //#endregion\n\n //#region Lit Lifecycle\n\n constructor() {\n super();\n\n addThemingController(this, all);\n addCommandController(this)\n .set('--show', this.show)\n .set('--hide', this.hide)\n .set('--toggle', this.toggle);\n }\n\n protected override update(properties: PropertyValues<this>): void {\n if (properties.has('position') && this._isRelative) {\n this._dialog?.close();\n if (isPopoverOpen(this._mini)) {\n this._mini?.hidePopover();\n }\n }\n\n super.update(properties);\n }\n\n protected override updated(properties: PropertyValues<this>): void {\n if (properties.has('open') || properties.has('position')) {\n this._handleOpenState();\n this._handleMiniState();\n }\n }\n\n //#endregion\n\n //#region Event handlers\n\n private _handleOpenState(): void {\n if (this._isRelative) {\n return;\n }\n\n this.open ? this._dialog?.showModal() : this._dialog?.close();\n }\n\n private _handleMiniState(): void {\n if (this._isRelative) {\n return;\n }\n\n const mini = this._mini;\n if (!mini) {\n return;\n }\n\n const popOverOpen = isPopoverOpen(mini);\n\n if (!this._hasMiniContent || this.open) {\n if (popOverOpen) {\n mini.hidePopover();\n }\n } else if (!popOverOpen) {\n mini.showPopover();\n }\n }\n\n private _handleCancel(event: Event): void {\n event.preventDefault();\n\n if (!this.keepOpenOnEscape) {\n this._closeWithEvent();\n }\n }\n\n private _handleClose(): void {\n if (this.open) {\n this._dialog?.showModal();\n }\n }\n\n private _handleClick({ clientX, clientY, target }: PointerEvent): void {\n if (\n this._dialog === target &&\n !isPointInsideElement(this._dialog, clientX, clientY)\n ) {\n this._closeWithEvent();\n }\n }\n\n //#endregion\n\n //#region Internal API\n\n private _emitClosing(): boolean {\n return this.emitEvent('igcClosing', { cancelable: true });\n }\n\n private async _closeWithEvent(): Promise<boolean> {\n if (!(this.open && this._emitClosing())) {\n return false;\n }\n\n this.open = false;\n await this.updateComplete;\n\n this.emitEvent('igcClosed');\n return true;\n }\n\n //#endregion\n\n //#region Public API\n\n /** Opens the drawer. Returns `true` if the operation was successful, `false` if the drawer was already open. */\n public async show(): Promise<boolean> {\n if (this.open) {\n return false;\n }\n\n this.open = true;\n await this.updateComplete;\n\n return true;\n }\n\n /** Closes the drawer. Returns `true` if the operation was successful, `false` if the drawer was already closed. */\n public async hide(): Promise<boolean> {\n if (!this.open) {\n return false;\n }\n\n this.open = false;\n await this.updateComplete;\n\n return true;\n }\n\n /** Toggles the open state of the drawer. Delegates to `show()` or `hide()` depending on the current state. */\n public toggle(): Promise<boolean> {\n return this.open ? this.hide() : this.show();\n }\n\n //#endregion\n\n private _renderMiniVariant() {\n return html`\n <nav\n ${ref(this._miniRef)}\n aria-label=${ifDefined(this.label)}\n part=${partMap({\n mini: true,\n hidden: !this._hasMiniContent,\n })}\n .inert=${this.open || !this._hasMiniContent}\n .popover=${!this._isRelative ? 'manual' : null}\n >\n <slot name=\"mini\"></slot>\n </nav>\n `;\n }\n\n private _renderContent() {\n return html`\n <div part=\"main\">\n <slot></slot>\n </div>\n `;\n }\n\n private _renderDialog() {\n return html`\n <dialog\n ${ref(this._dialogRef)}\n part=\"base\"\n aria-modal=\"true\"\n aria-label=${ifDefined(this.label)}\n @click=${this._handleClick}\n @cancel=${this._handleCancel}\n @close=${bindIf(this.keepOpenOnEscape, this._handleClose)}\n >\n ${this._renderContent()}\n </dialog>\n ${this._renderMiniVariant()}\n `;\n }\n\n private _renderRelative() {\n return html`\n <nav part=\"base\" aria-label=${ifDefined(this.label)} .inert=${!this.open}>\n ${this._renderContent()}\n </nav>\n ${this._renderMiniVariant()}\n `;\n }\n\n protected override render() {\n return html`${cache(\n this._isRelative ? this._renderRelative() : this._renderDialog()\n )}`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-nav-drawer': IgcNavDrawerComponent;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{--menu-full-width: 15rem;--menu-height: 50vh;--transition-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);--transition-duration: 0.35s;display:flex;flex-shrink:0;font-family:var(--ig-font-family)}:host [part=base],:host [part=mini]{--ig-scrollbar-size: rem(8px);margin:unset;border:unset;outline-style:none;height:100%;min-height:100%;overflow-x:hidden}:host [part=mini]{width:var(--menu-mini-width);transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:display,translate,overlay}:host [part=mini]::backdrop{display:none}:host [part=base]{box-sizing:border-box;width:var(--menu-full-width);padding:unset;transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:translate,opacity,overlay,display}:host [part=base]::backdrop{transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:opacity,display;opacity:0}:host [part=base]:open::backdrop{opacity:1}@starting-style{:host [part=base]:open::backdrop{opacity:0}}:host [part=main]{width:100%}:host([position=start]) [part=base],:host([position=start]) [part=mini]{border:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;margin-inline-end:auto}:host([position=end]) [part=base],:host([position=end]) [part=mini]{border:none;border-inline-start-style:solid;border-inline-start-width:.0625rem;margin-inline-start:auto}:host([position=start]),:host([dir=rtl][position=end]){--dir: calc(var(--ig-dir, 1) * -1)}:host([position=end]),:host([dir=rtl][position=start]){--dir: calc(var(--ig-dir, 1) * 1)}:host([position=top]) [part=base],:host([position=bottom]) [part=base]{height:var(--menu-height);min-height:initial;min-width:100vw;margin:revert}:host([position=top]) [part=mini],:host([position=bottom]) [part=mini]{display:none;transition:none}:host([position=top]) [part=base]{top:0;bottom:auto;border:none;border-block-end-style:solid;border-block-end-width:.0625rem}:host([position=top]) [part=base]:not(:open){translate:0 calc(var(--menu-height)*-1)}:host([position=top]) [part=base]:open{translate:0}@starting-style{:host([position=top]) [part=base]:open{translate:0 calc(var(--menu-height)*-1)}}:host([position=bottom]) [part=base]{top:auto;bottom:0;border:none;border-block-start-style:solid;border-block-start-width:.0625rem}:host([position=bottom]) [part=base]:not(:open){translate:0 var(--menu-height)}:host([position=bottom]) [part=base]:open{translate:0}@starting-style{:host([position=bottom]) [part=base]:open{translate:0 var(--menu-height)}}:host(:where([position=start],[position=end])) [part=base]{border-inline-end-style:solid;border-inline-end-width:.0625rem}:host(:where([position=start],[position=end])) [part=base]:not(:open){translate:calc(200%*var(--dir)) 0}:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:calc(200%*var(--dir)) 0}}:host(:where([position=start],[position=end])) [part=base]:open+[part~=mini]{translate:calc(200%*var(--dir)) 0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:open{translate:calc(200%*var(--dir)) 0}}@supports not selector(:open){:host [part=base]{transition-property:translate,opacity}:host [part=base]::backdrop{transition-property:opacity}:host([open]) [part=base]::backdrop{opacity:1}@starting-style{:host([open]) [part=base]::backdrop{opacity:0}}:host([open][position=top]) [part=base]{translate:0}@starting-style{:host([open][position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}}:host(:not([open])[position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}:host([open][position=bottom]) [part=base]{translate:0}@starting-style{:host([open][position=bottom]) [part=base]{translate:0 var(--menu-height)}}:host(:not([open])[position=bottom]) [part=base]{translate:0 var(--menu-height)}@starting-style{:host([open]:where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host(:not([open]):where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host([position=relative]):has([part=mini]){--transition-duration: 0.2s}:host([position=relative]) [part=base]{position:relative;box-shadow:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:margin,border}:host([position=relative]) [part=mini]{position:relative;border-inline-end-width:.0625rem;border-inline-end-style:solid;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:width,min-width,padding,border;order:-1;z-index:1}:host(:not([open])[position=relative]) [part=base]{margin-inline-start:calc(var(--menu-full-width)*-1);border-color:rgba(0,0,0,0);overflow:hidden}:host(:not([open])[position=relative]) [part=mini]{transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=base]:has(+[part=mini]){transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=mini]{width:0;min-width:0;padding-inline:0;border-color:rgba(0,0,0,0)}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{--menu-height: 50vh;--transition-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);--transition-duration: 0.35s;display:flex;flex-shrink:0;font-family:var(--ig-font-family)}:host [part=base],:host [part=mini]{--ig-scrollbar-size: rem(8px);margin:unset;border:unset;outline-style:none;height:100%;min-height:100%;overflow-x:hidden}:host [part=mini]{width:var(--size--mini);transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:display,translate,overlay}:host [part=mini]::backdrop{display:none}:host [part=base]{box-sizing:border-box;width:var(--size);padding:unset;transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:translate,opacity,overlay,display}:host [part=base]::backdrop{transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:opacity,display;opacity:0}:host [part=base]:open::backdrop{opacity:1}@starting-style{:host [part=base]:open::backdrop{opacity:0}}:host [part=main]{width:100%}:host([position=start]) [part=base],:host([position=start]) [part=mini]{border:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;margin-inline-end:auto}:host([position=end]) [part=base],:host([position=end]) [part=mini]{border:none;border-inline-start-style:solid;border-inline-start-width:.0625rem;margin-inline-start:auto}:host([position=start]),:host([dir=rtl][position=end]){--dir: calc(var(--ig-dir, 1) * -1)}:host([position=end]),:host([dir=rtl][position=start]){--dir: calc(var(--ig-dir, 1) * 1)}:host([position=top]) [part=base],:host([position=bottom]) [part=base]{height:var(--menu-height);min-height:initial;min-width:100vw;margin:revert}:host([position=top]) [part=mini],:host([position=bottom]) [part=mini]{display:none;transition:none}:host([position=top]) [part=base]{top:0;bottom:auto;border:none;border-block-end-style:solid;border-block-end-width:.0625rem}:host([position=top]) [part=base]:not(:open){translate:0 calc(var(--menu-height)*-1)}:host([position=top]) [part=base]:open{translate:0}@starting-style{:host([position=top]) [part=base]:open{translate:0 calc(var(--menu-height)*-1)}}:host([position=bottom]) [part=base]{top:auto;bottom:0;border:none;border-block-start-style:solid;border-block-start-width:.0625rem}:host([position=bottom]) [part=base]:not(:open){translate:0 var(--menu-height)}:host([position=bottom]) [part=base]:open{translate:0}@starting-style{:host([position=bottom]) [part=base]:open{translate:0 var(--menu-height)}}:host(:where([position=start],[position=end])) [part=base]{border-inline-end-style:solid;border-inline-end-width:.0625rem}:host(:where([position=start],[position=end])) [part=base]:not(:open){translate:calc(200%*var(--dir)) 0}:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:calc(200%*var(--dir)) 0}}:host(:where([position=start],[position=end])) [part=base]:open+[part~=mini]{translate:calc(200%*var(--dir)) 0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:open{translate:calc(200%*var(--dir)) 0}}@supports not selector(:open){:host [part=base]{transition-property:translate,opacity}:host [part=base]::backdrop{transition-property:opacity}:host([open]) [part=base]::backdrop{opacity:1}@starting-style{:host([open]) [part=base]::backdrop{opacity:0}}:host([open][position=top]) [part=base]{translate:0}@starting-style{:host([open][position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}}:host(:not([open])[position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}:host([open][position=bottom]) [part=base]{translate:0}@starting-style{:host([open][position=bottom]) [part=base]{translate:0 var(--menu-height)}}:host(:not([open])[position=bottom]) [part=base]{translate:0 var(--menu-height)}@starting-style{:host([open]:where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host(:not([open]):where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host([position=relative]):has([part=mini]){--transition-duration: 0.2s}:host([position=relative]) [part=base]{position:relative;box-shadow:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:margin,border}:host([position=relative]) [part=mini]{position:relative;border-inline-end-width:.0625rem;border-inline-end-style:solid;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:width,min-width,padding,border;order:-1;z-index:1}:host(:not([open])[position=relative]) [part=base]{margin-inline-start:calc(var(--size)*-1);border-color:rgba(0,0,0,0);overflow:hidden}:host(:not([open])[position=relative]) [part=mini]{transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=base]:has(+[part=mini]){transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=mini]{width:0;min-width:0;padding-inline:0;border-color:rgba(0,0,0,0)}`;
3
3
  //# sourceMappingURL=container.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.base.css.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/container.base.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,+vMAA+vM,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{--menu-full-width: 15rem;--menu-height: 50vh;--transition-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);--transition-duration: 0.35s;display:flex;flex-shrink:0;font-family:var(--ig-font-family)}:host [part=base],:host [part=mini]{--ig-scrollbar-size: rem(8px);margin:unset;border:unset;outline-style:none;height:100%;min-height:100%;overflow-x:hidden}:host [part=mini]{width:var(--menu-mini-width);transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:display,translate,overlay}:host [part=mini]::backdrop{display:none}:host [part=base]{box-sizing:border-box;width:var(--menu-full-width);padding:unset;transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:translate,opacity,overlay,display}:host [part=base]::backdrop{transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:opacity,display;opacity:0}:host [part=base]:open::backdrop{opacity:1}@starting-style{:host [part=base]:open::backdrop{opacity:0}}:host [part=main]{width:100%}:host([position=start]) [part=base],:host([position=start]) [part=mini]{border:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;margin-inline-end:auto}:host([position=end]) [part=base],:host([position=end]) [part=mini]{border:none;border-inline-start-style:solid;border-inline-start-width:.0625rem;margin-inline-start:auto}:host([position=start]),:host([dir=rtl][position=end]){--dir: calc(var(--ig-dir, 1) * -1)}:host([position=end]),:host([dir=rtl][position=start]){--dir: calc(var(--ig-dir, 1) * 1)}:host([position=top]) [part=base],:host([position=bottom]) [part=base]{height:var(--menu-height);min-height:initial;min-width:100vw;margin:revert}:host([position=top]) [part=mini],:host([position=bottom]) [part=mini]{display:none;transition:none}:host([position=top]) [part=base]{top:0;bottom:auto;border:none;border-block-end-style:solid;border-block-end-width:.0625rem}:host([position=top]) [part=base]:not(:open){translate:0 calc(var(--menu-height)*-1)}:host([position=top]) [part=base]:open{translate:0}@starting-style{:host([position=top]) [part=base]:open{translate:0 calc(var(--menu-height)*-1)}}:host([position=bottom]) [part=base]{top:auto;bottom:0;border:none;border-block-start-style:solid;border-block-start-width:.0625rem}:host([position=bottom]) [part=base]:not(:open){translate:0 var(--menu-height)}:host([position=bottom]) [part=base]:open{translate:0}@starting-style{:host([position=bottom]) [part=base]:open{translate:0 var(--menu-height)}}:host(:where([position=start],[position=end])) [part=base]{border-inline-end-style:solid;border-inline-end-width:.0625rem}:host(:where([position=start],[position=end])) [part=base]:not(:open){translate:calc(200%*var(--dir)) 0}:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:calc(200%*var(--dir)) 0}}:host(:where([position=start],[position=end])) [part=base]:open+[part~=mini]{translate:calc(200%*var(--dir)) 0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:open{translate:calc(200%*var(--dir)) 0}}@supports not selector(:open){:host [part=base]{transition-property:translate,opacity}:host [part=base]::backdrop{transition-property:opacity}:host([open]) [part=base]::backdrop{opacity:1}@starting-style{:host([open]) [part=base]::backdrop{opacity:0}}:host([open][position=top]) [part=base]{translate:0}@starting-style{:host([open][position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}}:host(:not([open])[position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}:host([open][position=bottom]) [part=base]{translate:0}@starting-style{:host([open][position=bottom]) [part=base]{translate:0 var(--menu-height)}}:host(:not([open])[position=bottom]) [part=base]{translate:0 var(--menu-height)}@starting-style{:host([open]:where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host(:not([open]):where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host([position=relative]):has([part=mini]){--transition-duration: 0.2s}:host([position=relative]) [part=base]{position:relative;box-shadow:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:margin,border}:host([position=relative]) [part=mini]{position:relative;border-inline-end-width:.0625rem;border-inline-end-style:solid;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:width,min-width,padding,border;order:-1;z-index:1}:host(:not([open])[position=relative]) [part=base]{margin-inline-start:calc(var(--menu-full-width)*-1);border-color:rgba(0,0,0,0);overflow:hidden}:host(:not([open])[position=relative]) [part=mini]{transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=base]:has(+[part=mini]){transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=mini]{width:0;min-width:0;padding-inline:0;border-color:rgba(0,0,0,0)}`;\n "]}
1
+ {"version":3,"file":"container.base.css.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/container.base.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2sMAA2sM,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{--menu-height: 50vh;--transition-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);--transition-duration: 0.35s;display:flex;flex-shrink:0;font-family:var(--ig-font-family)}:host [part=base],:host [part=mini]{--ig-scrollbar-size: rem(8px);margin:unset;border:unset;outline-style:none;height:100%;min-height:100%;overflow-x:hidden}:host [part=mini]{width:var(--size--mini);transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:display,translate,overlay}:host [part=mini]::backdrop{display:none}:host [part=base]{box-sizing:border-box;width:var(--size);padding:unset;transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:translate,opacity,overlay,display}:host [part=base]::backdrop{transition-behavior:allow-discrete;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:opacity,display;opacity:0}:host [part=base]:open::backdrop{opacity:1}@starting-style{:host [part=base]:open::backdrop{opacity:0}}:host [part=main]{width:100%}:host([position=start]) [part=base],:host([position=start]) [part=mini]{border:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;margin-inline-end:auto}:host([position=end]) [part=base],:host([position=end]) [part=mini]{border:none;border-inline-start-style:solid;border-inline-start-width:.0625rem;margin-inline-start:auto}:host([position=start]),:host([dir=rtl][position=end]){--dir: calc(var(--ig-dir, 1) * -1)}:host([position=end]),:host([dir=rtl][position=start]){--dir: calc(var(--ig-dir, 1) * 1)}:host([position=top]) [part=base],:host([position=bottom]) [part=base]{height:var(--menu-height);min-height:initial;min-width:100vw;margin:revert}:host([position=top]) [part=mini],:host([position=bottom]) [part=mini]{display:none;transition:none}:host([position=top]) [part=base]{top:0;bottom:auto;border:none;border-block-end-style:solid;border-block-end-width:.0625rem}:host([position=top]) [part=base]:not(:open){translate:0 calc(var(--menu-height)*-1)}:host([position=top]) [part=base]:open{translate:0}@starting-style{:host([position=top]) [part=base]:open{translate:0 calc(var(--menu-height)*-1)}}:host([position=bottom]) [part=base]{top:auto;bottom:0;border:none;border-block-start-style:solid;border-block-start-width:.0625rem}:host([position=bottom]) [part=base]:not(:open){translate:0 var(--menu-height)}:host([position=bottom]) [part=base]:open{translate:0}@starting-style{:host([position=bottom]) [part=base]:open{translate:0 var(--menu-height)}}:host(:where([position=start],[position=end])) [part=base]{border-inline-end-style:solid;border-inline-end-width:.0625rem}:host(:where([position=start],[position=end])) [part=base]:not(:open){translate:calc(200%*var(--dir)) 0}:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:not(:open)+[part~=mini]{translate:calc(200%*var(--dir)) 0}}:host(:where([position=start],[position=end])) [part=base]:open+[part~=mini]{translate:calc(200%*var(--dir)) 0}@starting-style{:host(:where([position=start],[position=end])) [part=base]:open{translate:calc(200%*var(--dir)) 0}}@supports not selector(:open){:host [part=base]{transition-property:translate,opacity}:host [part=base]::backdrop{transition-property:opacity}:host([open]) [part=base]::backdrop{opacity:1}@starting-style{:host([open]) [part=base]::backdrop{opacity:0}}:host([open][position=top]) [part=base]{translate:0}@starting-style{:host([open][position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}}:host(:not([open])[position=top]) [part=base]{translate:0 calc(var(--menu-height)*-1)}:host([open][position=bottom]) [part=base]{translate:0}@starting-style{:host([open][position=bottom]) [part=base]{translate:0 var(--menu-height)}}:host(:not([open])[position=bottom]) [part=base]{translate:0 var(--menu-height)}@starting-style{:host([open]:where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host(:not([open]):where([position=start],[position=end])) [part=base]{translate:calc(200%*var(--dir)) 0}}:host([position=relative]):has([part=mini]){--transition-duration: 0.2s}:host([position=relative]) [part=base]{position:relative;box-shadow:none;border-inline-end-style:solid;border-inline-end-width:.0625rem;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:margin,border}:host([position=relative]) [part=mini]{position:relative;border-inline-end-width:.0625rem;border-inline-end-style:solid;transition-duration:var(--transition-duration);transition-timing-function:var(--transition-function);transition-property:width,min-width,padding,border;order:-1;z-index:1}:host(:not([open])[position=relative]) [part=base]{margin-inline-start:calc(var(--size)*-1);border-color:rgba(0,0,0,0);overflow:hidden}:host(:not([open])[position=relative]) [part=mini]{transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=base]:has(+[part=mini]){transition-delay:var(--transition-duration)}:host([open][position=relative]) [part=mini]{width:0;min-width:0;padding-inline:0;border-color:rgba(0,0,0,0)}`;\n "]}
@@ -1,2 +1,2 @@
1
- import type { Themes } from '../../../theming/types.js';
1
+ import type { Themes } from '#theming/types.js';
2
2
  export declare const all: Themes;
@@ -10,7 +10,6 @@ import { styles as indigoLight } from './light/container/nav-drawer.indigo.css.j
10
10
  import { styles as materialLight } from './light/container/nav-drawer.material.css.js';
11
11
  import { styles as sharedLight } from './light/container/nav-drawer.shared.css.js';
12
12
  import { styles as bootstrap } from './shared/container/nav-drawer.bootstrap.css.js';
13
- import { styles as fluent } from './shared/container/nav-drawer.fluent.css.js';
14
13
  import { styles as indigo } from './shared/container/nav-drawer.indigo.css.js';
15
14
  import { styles as material } from './shared/container/nav-drawer.material.css.js';
16
15
  const light = {
@@ -24,7 +23,7 @@ const light = {
24
23
  ${material} ${materialLight}
25
24
  `,
26
25
  fluent: css `
27
- ${fluent} ${fluentLight}
26
+ ${fluentLight}
28
27
  `,
29
28
  indigo: css `
30
29
  ${indigo} ${indigoLight}
@@ -41,7 +40,7 @@ const dark = {
41
40
  ${material} ${materialDark}
42
41
  `,
43
42
  fluent: css `
44
- ${fluent} ${fluentDark}
43
+ ${fluentDark}
45
44
  `,
46
45
  indigo: css `
47
46
  ${indigo} ${indigoDark}
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEnF,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AAEnF,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG,CAAA;MACP,WAAW;GACd;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,cAAc;GAC9B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,aAAa;GAC5B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,MAAM,EAAE,GAAG,CAAA;MACP,UAAU;GACb;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,aAAa;GAC7B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,YAAY;GAC3B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/container/nav-drawer.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/container/nav-drawer.fluent.css.js';\nimport { styles as indigoDark } from './dark/container/nav-drawer.indigo.css.js';\nimport { styles as materialDark } from './dark/container/nav-drawer.material.css.js';\nimport { styles as sharedDark } from './dark/container/nav-drawer.shared.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/container/nav-drawer.bootstrap.css.js';\nimport { styles as fluentLight } from './light/container/nav-drawer.fluent.css.js';\nimport { styles as indigoLight } from './light/container/nav-drawer.indigo.css.js';\nimport { styles as materialLight } from './light/container/nav-drawer.material.css.js';\nimport { styles as sharedLight } from './light/container/nav-drawer.shared.css.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/container/nav-drawer.bootstrap.css.js';\nimport { styles as fluent } from './shared/container/nav-drawer.fluent.css.js';\nimport { styles as indigo } from './shared/container/nav-drawer.indigo.css.js';\nimport { styles as material } from './shared/container/nav-drawer.material.css.js';\n\nconst light = {\n shared: css`\n ${sharedLight}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapLight}\n `,\n material: css`\n ${material} ${materialLight}\n `,\n fluent: css`\n ${fluent} ${fluentLight}\n `,\n indigo: css`\n ${indigo} ${indigoLight}\n `,\n};\n\nconst dark = {\n shared: css`\n ${sharedDark}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapDark}\n `,\n material: css`\n ${material} ${materialDark}\n `,\n fluent: css`\n ${fluent} ${fluentDark}\n `,\n indigo: css`\n ${indigo} ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,+CAA+C,CAAC;AACzF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEnF,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AAEnF,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG,CAAA;MACP,WAAW;GACd;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,cAAc;GAC9B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,aAAa;GAC5B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,WAAW;GACd;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,MAAM,EAAE,GAAG,CAAA;MACP,UAAU;GACb;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,aAAa;GAC7B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,YAAY;GAC3B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,UAAU;GACb;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '#theming/types.js';\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/container/nav-drawer.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/container/nav-drawer.fluent.css.js';\nimport { styles as indigoDark } from './dark/container/nav-drawer.indigo.css.js';\nimport { styles as materialDark } from './dark/container/nav-drawer.material.css.js';\nimport { styles as sharedDark } from './dark/container/nav-drawer.shared.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/container/nav-drawer.bootstrap.css.js';\nimport { styles as fluentLight } from './light/container/nav-drawer.fluent.css.js';\nimport { styles as indigoLight } from './light/container/nav-drawer.indigo.css.js';\nimport { styles as materialLight } from './light/container/nav-drawer.material.css.js';\nimport { styles as sharedLight } from './light/container/nav-drawer.shared.css.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/container/nav-drawer.bootstrap.css.js';\nimport { styles as indigo } from './shared/container/nav-drawer.indigo.css.js';\nimport { styles as material } from './shared/container/nav-drawer.material.css.js';\n\nconst light = {\n shared: css`\n ${sharedLight}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapLight}\n `,\n material: css`\n ${material} ${materialLight}\n `,\n fluent: css`\n ${fluentLight}\n `,\n indigo: css`\n ${indigo} ${indigoLight}\n `,\n};\n\nconst dark = {\n shared: css`\n ${sharedDark}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapDark}\n `,\n material: css`\n ${material} ${materialDark}\n `,\n fluent: css`\n ${fluentDark}\n `,\n indigo: css`\n ${indigo} ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--elevation: var(--ig-nav-drawer-elevation, var(--ig-elevation-0));--background: var(--ig-nav-drawer-background, var(--ig-surface-500));--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-200));--item-disabled-icon-color: var(--ig-nav-drawer-item-disabled-icon-color, var(--ig-gray-200));--border-radius: var(--ig-nav-drawer-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0) * 2.25rem), 2.25rem));--ig-theme-variant: dark;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme-variant: light}`;
2
+ export const styles = css `:host{--elevation: var(--ig-nav-drawer-elevation, var(--ig-elevation-0));--size: var(--ig-nav-drawer-size, 15rem);--size--mini: var(--ig-nav-drawer-size--mini, 3.5rem);--background: var(--ig-nav-drawer-background, var(--ig-surface-500));--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-200));--item-disabled-icon-color: var(--ig-nav-drawer-item-disabled-icon-color, var(--ig-gray-200));--border-radius: var(--ig-nav-drawer-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0) * 2.25rem), 2.25rem));--ig-theme-variant: dark;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme-variant: light}`;
3
3
  //# sourceMappingURL=nav-drawer.shared.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qlBAAqlB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--elevation: var(--ig-nav-drawer-elevation, var(--ig-elevation-0));--background: var(--ig-nav-drawer-background, var(--ig-surface-500));--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-200));--item-disabled-icon-color: var(--ig-nav-drawer-item-disabled-icon-color, var(--ig-gray-200));--border-radius: var(--ig-nav-drawer-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0) * 2.25rem), 2.25rem));--ig-theme-variant: dark;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme-variant: light}`;\n "]}
1
+ {"version":3,"file":"nav-drawer.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/dark/container/nav-drawer.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,orBAAorB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--elevation: var(--ig-nav-drawer-elevation, var(--ig-elevation-0));--size: var(--ig-nav-drawer-size, 15rem);--size--mini: var(--ig-nav-drawer-size--mini, 3.5rem);--background: var(--ig-nav-drawer-background, var(--ig-surface-500));--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-200));--item-disabled-icon-color: var(--ig-nav-drawer-item-disabled-icon-color, var(--ig-gray-200));--border-radius: var(--ig-nav-drawer-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0) * 2.25rem), 2.25rem));--ig-theme-variant: dark;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme-variant: light}`;\n "]}
@@ -1,2 +1,2 @@
1
- import type { Themes } from '../../../theming/types.js';
1
+ import type { Themes } from '#theming/types.js';
2
2
  export declare const all: Themes;
@@ -1 +1 @@
1
- {"version":3,"file":"header-item.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/header-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAEtF,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\nimport type { Themes } from '../../../theming/types.js';\n\n// Shared Styles\nimport { styles as bootstrap } from './shared/header-item/header-item.bootstrap.css.js';\nimport { styles as fluent } from './shared/header-item/header-item.fluent.css.js';\nimport { styles as indigo } from './shared/header-item/header-item.indigo.css.js';\nimport { styles as material } from './shared/header-item/header-item.material.css.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
1
+ {"version":3,"file":"header-item.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/header-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAEtF,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\nimport type { Themes } from '#theming/types.js';\n\n// Shared Styles\nimport { styles as bootstrap } from './shared/header-item/header-item.bootstrap.css.js';\nimport { styles as fluent } from './shared/header-item/header-item.fluent.css.js';\nimport { styles as indigo } from './shared/header-item/header-item.indigo.css.js';\nimport { styles as material } from './shared/header-item/header-item.material.css.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
@@ -1,2 +1,2 @@
1
- import type { Themes } from '../../../theming/types.js';
1
+ import type { Themes } from '#theming/types.js';
2
2
  export declare const all: Themes;
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/item/item.bootstrap.css.js';\nimport { styles as fluent } from './shared/item/item.fluent.css.js';\nimport { styles as indigo } from './shared/item/item.indigo.css.js';\nimport { styles as material } from './shared/item/item.material.css.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
1
+ {"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/nav-drawer/themes/item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '#theming/types.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/item/item.bootstrap.css.js';\nimport { styles as fluent } from './shared/item/item.fluent.css.js';\nimport { styles as indigo } from './shared/item/item.indigo.css.js';\nimport { styles as material } from './shared/item/item.material.css.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--item-border-radius: var(--ig-nav-drawer-item-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-gray-900));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-900));--item-hover-background: var(--ig-nav-drawer-item-hover-background, hsl(from var(--ig-gray-200) h s l/0.8));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-primary-500));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-900-contrast));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-900-contrast));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-300));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-gray-900));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-900));--ig-theme: bootstrap;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: bootstrap;--ig-theme-variant: light}`;
2
+ export const styles = css `:host{--size--mini: var(--ig-nav-drawer-size--mini, 5.5rem);--item-border-radius: var(--ig-nav-drawer-item-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-gray-900));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-900));--item-hover-background: var(--ig-nav-drawer-item-hover-background, hsl(from var(--ig-gray-200) h s l/0.8));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-primary-500));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-900-contrast));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-900-contrast));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-300));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-gray-900));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-900));--ig-theme: bootstrap;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: bootstrap;--ig-theme-variant: light}`;
3
3
  //# sourceMappingURL=nav-drawer.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8sCAA8sC,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--item-border-radius: var(--ig-nav-drawer-item-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-gray-900));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-900));--item-hover-background: var(--ig-nav-drawer-item-hover-background, hsl(from var(--ig-gray-200) h s l/0.8));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-primary-500));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-900-contrast));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-900-contrast));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-300));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-gray-900));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-900));--ig-theme: bootstrap;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: bootstrap;--ig-theme-variant: light}`;\n "]}
1
+ {"version":3,"file":"nav-drawer.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.bootstrap.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,owCAAowC,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--size--mini: var(--ig-nav-drawer-size--mini, 5.5rem);--item-border-radius: var(--ig-nav-drawer-item-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-gray-900));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-900));--item-hover-background: var(--ig-nav-drawer-item-hover-background, hsl(from var(--ig-gray-200) h s l/0.8));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-primary-500));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-900-contrast));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-900-contrast));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-300));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-gray-900));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-900));--ig-theme: bootstrap;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: bootstrap;--ig-theme-variant: light}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--item-border-radius: var(--ig-nav-drawer-item-border-radius, 0);--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-primary-600));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-800));--item-hover-background: var(--ig-nav-drawer-item-hover-background, var(--ig-gray-100));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-gray-200));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-700));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-gray-900));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-200));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-primary-500));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: fluent;--ig-theme-variant: light}`;
2
+ export const styles = css `:host{--size--mini: var(--ig-nav-drawer-size--mini, 2.5rem);--item-border-radius: var(--ig-nav-drawer-item-border-radius, 0);--item-hover-icon-color: var(--ig-nav-drawer-item-hover-icon-color, var(--ig-primary-600));--item-hover-text-color: var(--ig-nav-drawer-item-hover-text-color, var(--ig-gray-800));--item-hover-background: var(--ig-nav-drawer-item-hover-background, var(--ig-gray-100));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, var(--ig-gray-200));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-700));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-gray-900));--border-color: var(--ig-nav-drawer-border-color, var(--ig-gray-200));--item-icon-color: var(--ig-nav-drawer-item-icon-color, var(--ig-primary-500));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--ig-theme-variant: light;--background-color: var(--ig-overlay-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: fluent;--ig-theme-variant: light}`;
3
3
  //# sourceMappingURL=nav-drawer.fluent.css.js.map