igniteui-webcomponents 6.4.0-alpha.3 → 6.4.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 (398) hide show
  1. package/CHANGELOG.md +90 -2
  2. package/LICENSE +18 -10
  3. package/README.md +65 -56
  4. package/components/button/themes/button/dark/button.indigo.css.js +1 -1
  5. package/components/button/themes/button/dark/button.indigo.css.js.map +1 -1
  6. package/components/button/themes/button/dark/button.material.css.js +1 -1
  7. package/components/button/themes/button/dark/button.material.css.js.map +1 -1
  8. package/components/button/themes/button/light/button.indigo.css.js +1 -1
  9. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  10. package/components/button/themes/button/light/button.material.css.js +1 -1
  11. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  12. package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
  13. package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
  14. package/components/button/themes/button/shared/button.common.css.js +1 -1
  15. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  16. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  17. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  18. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  19. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  20. package/components/button/themes/button/shared/button.material.css.js +1 -1
  21. package/components/button/themes/button/shared/button.material.css.js.map +1 -1
  22. package/components/button-group/themes/dark/button-group.material.css.js +1 -1
  23. package/components/button-group/themes/dark/button-group.material.css.js.map +1 -1
  24. package/components/button-group/themes/light/button-group.material.css.js +1 -1
  25. package/components/button-group/themes/light/button-group.material.css.js.map +1 -1
  26. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  27. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  28. package/components/button-group/themes/shared/button/button.material.css.js +1 -1
  29. package/components/button-group/themes/shared/button/button.material.css.js.map +1 -1
  30. package/components/calendar/calendar.d.ts +5 -3
  31. package/components/calendar/calendar.js +22 -35
  32. package/components/calendar/calendar.js.map +1 -1
  33. package/components/calendar/days-view/days-view.d.ts +3 -3
  34. package/components/calendar/days-view/days-view.js +15 -22
  35. package/components/calendar/days-view/days-view.js.map +1 -1
  36. package/components/calendar/months-view/months-view.d.ts +2 -3
  37. package/components/calendar/months-view/months-view.js +9 -19
  38. package/components/calendar/months-view/months-view.js.map +1 -1
  39. package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
  40. package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
  41. package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
  42. package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
  43. package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
  44. package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
  45. package/components/calendar/themes/dark/calendar.material.css.js +1 -1
  46. package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
  47. package/components/calendar/themes/days.js +8 -23
  48. package/components/calendar/themes/days.js.map +1 -1
  49. package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
  50. package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
  51. package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
  52. package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
  53. package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
  54. package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
  55. package/components/calendar/themes/light/calendar.material.css.js +1 -1
  56. package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
  57. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  58. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  59. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  60. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  61. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
  62. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
  63. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
  64. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
  65. package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
  66. package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
  67. package/components/calendar/themes/year-month.js +8 -23
  68. package/components/calendar/themes/year-month.js.map +1 -1
  69. package/components/carousel/carousel.d.ts +2 -1
  70. package/components/carousel/carousel.js.map +1 -1
  71. package/components/chat/themes/chat.base.css.js +1 -1
  72. package/components/chat/themes/chat.base.css.js.map +1 -1
  73. package/components/chat/themes/input.base.css.js +1 -1
  74. package/components/chat/themes/input.base.css.js.map +1 -1
  75. package/components/chat/themes/shared/chat.bootstrap.css.js +1 -1
  76. package/components/chat/themes/shared/chat.bootstrap.css.js.map +1 -1
  77. package/components/chat/themes/shared/chat.fluent.css.js +1 -1
  78. package/components/chat/themes/shared/chat.fluent.css.js.map +1 -1
  79. package/components/chat/themes/shared/chat.indigo.css.js +1 -1
  80. package/components/chat/themes/shared/chat.indigo.css.js.map +1 -1
  81. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js +1 -1
  82. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js.map +1 -1
  83. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  84. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  85. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  86. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  87. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  88. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  89. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  90. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  91. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  92. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  93. package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
  94. package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
  95. package/components/chip/chip.d.ts +2 -1
  96. package/components/chip/chip.js.map +1 -1
  97. package/components/combo/combo.d.ts +3 -2
  98. package/components/combo/combo.js +7 -0
  99. package/components/combo/combo.js.map +1 -1
  100. package/components/combo/controllers/selection.js.map +1 -1
  101. package/components/combo/validators.js +2 -2
  102. package/components/combo/validators.js.map +1 -1
  103. package/components/common/controllers/async-consumer.js.map +1 -1
  104. package/components/common/controllers/focus-ring.js +1 -5
  105. package/components/common/controllers/focus-ring.js.map +1 -1
  106. package/components/common/controllers/root-click.js +46 -21
  107. package/components/common/controllers/root-click.js.map +1 -1
  108. package/components/common/i18n/EN/calendar.resources.js +4 -1
  109. package/components/common/i18n/EN/calendar.resources.js.map +1 -1
  110. package/components/common/i18n/EN/date-range-picker.resources.js.map +1 -1
  111. package/components/common/i18n/i18n-controller.js +6 -9
  112. package/components/common/i18n/i18n-controller.js.map +1 -1
  113. package/components/common/i18n/utils.d.ts +0 -12
  114. package/components/common/i18n/utils.js +0 -12
  115. package/components/common/i18n/utils.js.map +1 -1
  116. package/components/common/mixins/forms/associated.js +3 -23
  117. package/components/common/mixins/forms/associated.js.map +1 -1
  118. package/components/common/util.d.ts +5 -0
  119. package/components/common/util.js +5 -0
  120. package/components/common/util.js.map +1 -1
  121. package/components/common/validators.d.ts +2 -4
  122. package/components/common/validators.js +13 -19
  123. package/components/common/validators.js.map +1 -1
  124. package/components/date-picker/date-picker.d.ts +7 -3
  125. package/components/date-picker/date-picker.js +2 -2
  126. package/components/date-picker/date-picker.js.map +1 -1
  127. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +1 -1
  128. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -1
  129. package/components/date-picker/themes/dark/date-picker.fluent.css.js +1 -1
  130. package/components/date-picker/themes/dark/date-picker.fluent.css.js.map +1 -1
  131. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  132. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  133. package/components/date-picker/themes/dark/date-picker.material.css.js +1 -1
  134. package/components/date-picker/themes/dark/date-picker.material.css.js.map +1 -1
  135. package/components/date-picker/themes/light/date-picker.bootstrap.css.js +1 -1
  136. package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -1
  137. package/components/date-picker/themes/light/date-picker.fluent.css.js +1 -1
  138. package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -1
  139. package/components/date-picker/themes/light/date-picker.indigo.css.js +1 -1
  140. package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -1
  141. package/components/date-picker/themes/light/date-picker.material.css.js +1 -1
  142. package/components/date-picker/themes/light/date-picker.material.css.js.map +1 -1
  143. package/components/date-picker/validators.js +2 -3
  144. package/components/date-picker/validators.js.map +1 -1
  145. package/components/date-range-picker/date-range-picker.d.ts +7 -2
  146. package/components/date-range-picker/date-range-picker.js +12 -9
  147. package/components/date-range-picker/date-range-picker.js.map +1 -1
  148. package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js +1 -1
  149. package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js.map +1 -1
  150. package/components/date-range-picker/themes/dark/date-range-picker.fluent.css.js +1 -1
  151. package/components/date-range-picker/themes/dark/date-range-picker.fluent.css.js.map +1 -1
  152. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
  153. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
  154. package/components/date-range-picker/themes/dark/date-range-picker.material.css.js +1 -1
  155. package/components/date-range-picker/themes/dark/date-range-picker.material.css.js.map +1 -1
  156. package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js +1 -1
  157. package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js.map +1 -1
  158. package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js +1 -1
  159. package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js.map +1 -1
  160. package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js +1 -1
  161. package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js.map +1 -1
  162. package/components/date-range-picker/themes/light/date-range-picker.material.css.js +1 -1
  163. package/components/date-range-picker/themes/light/date-range-picker.material.css.js.map +1 -1
  164. package/components/date-range-picker/validators.js +5 -8
  165. package/components/date-range-picker/validators.js.map +1 -1
  166. package/components/date-time-input/date-time-input.d.ts +6 -2
  167. package/components/date-time-input/date-time-input.js +22 -15
  168. package/components/date-time-input/date-time-input.js.map +1 -1
  169. package/components/date-time-input/date-util.d.ts +11 -9
  170. package/components/date-time-input/date-util.js +23 -219
  171. package/components/date-time-input/date-util.js.map +1 -1
  172. package/components/dialog/dialog.d.ts +2 -0
  173. package/components/dialog/dialog.js +18 -9
  174. package/components/dialog/dialog.js.map +1 -1
  175. package/components/dialog/themes/dark/dialog.fluent.css.js +1 -1
  176. package/components/dialog/themes/dark/dialog.fluent.css.js.map +1 -1
  177. package/components/dialog/themes/light/dialog.fluent.css.js +1 -1
  178. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
  179. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  180. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  181. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  182. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  183. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +1 -1
  184. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  185. package/components/file-input/file-input.d.ts +13 -0
  186. package/components/file-input/file-input.js +27 -2
  187. package/components/file-input/file-input.js.map +1 -1
  188. package/components/input/themes/dark/input.indigo.css.js +1 -1
  189. package/components/input/themes/dark/input.indigo.css.js.map +1 -1
  190. package/components/input/themes/light/input.indigo.css.js +1 -1
  191. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  192. package/components/input/themes/light/input.shared.css.js +1 -1
  193. package/components/input/themes/light/input.shared.css.js.map +1 -1
  194. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  195. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  196. package/components/input/themes/shared/input.common.css.js +1 -1
  197. package/components/input/themes/shared/input.common.css.js.map +1 -1
  198. package/components/input/themes/shared/input.fluent.css.js +1 -1
  199. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  200. package/components/input/themes/shared/input.indigo.css.js +1 -1
  201. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  202. package/components/input/themes/shared/input.material.css.js +1 -1
  203. package/components/input/themes/shared/input.material.css.js.map +1 -1
  204. package/components/input/validators.js +3 -3
  205. package/components/input/validators.js.map +1 -1
  206. package/components/list/themes/dark/container/list.bootstrap.css.js +1 -1
  207. package/components/list/themes/dark/container/list.bootstrap.css.js.map +1 -1
  208. package/components/list/themes/light/container/list.fluent.css.js +1 -1
  209. package/components/list/themes/light/container/list.fluent.css.js.map +1 -1
  210. package/components/list/themes/shared/item/list-item.common.css.js +1 -1
  211. package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
  212. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  213. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  214. package/components/mask-input/mask-input-base.js +3 -2
  215. package/components/mask-input/mask-input-base.js.map +1 -1
  216. package/components/mask-input/mask-parser.d.ts +30 -7
  217. package/components/mask-input/mask-parser.js +70 -42
  218. package/components/mask-input/mask-parser.js.map +1 -1
  219. package/components/mask-input/validators.js +2 -2
  220. package/components/mask-input/validators.js.map +1 -1
  221. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js +1 -1
  222. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js.map +1 -1
  223. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
  224. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
  225. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js +1 -1
  226. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js.map +1 -1
  227. package/components/navbar/themes/shared/navbar.common.css.js +1 -1
  228. package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
  229. package/components/radio/themes/light/radio.material.css.js +1 -1
  230. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  231. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  232. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  233. package/components/radio/themes/shared/radio.common.css.js +1 -1
  234. package/components/radio/themes/shared/radio.common.css.js.map +1 -1
  235. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  236. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  237. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  238. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  239. package/components/radio/themes/shared/radio.material.css.js +1 -1
  240. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  241. package/components/radio/validators.js +2 -2
  242. package/components/radio/validators.js.map +1 -1
  243. package/components/rating/themes/dark/rating.indigo.css.js +1 -1
  244. package/components/rating/themes/dark/rating.indigo.css.js.map +1 -1
  245. package/components/rating/themes/light/rating.indigo.css.js +1 -1
  246. package/components/rating/themes/light/rating.indigo.css.js.map +1 -1
  247. package/components/ripple/ripple.d.ts +3 -3
  248. package/components/ripple/ripple.js +34 -31
  249. package/components/ripple/ripple.js.map +1 -1
  250. package/components/snackbar/themes/shared/snackbar.common.css.js +1 -1
  251. package/components/snackbar/themes/shared/snackbar.common.css.js.map +1 -1
  252. package/components/snackbar/themes/shared/snackbar.fluent.css.js +1 -1
  253. package/components/snackbar/themes/shared/snackbar.fluent.css.js.map +1 -1
  254. package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
  255. package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
  256. package/components/snackbar/themes/snackbar.base.css.js +1 -1
  257. package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
  258. package/components/snackbar/themes/themes.js +2 -3
  259. package/components/snackbar/themes/themes.js.map +1 -1
  260. package/components/stepper/step.js +2 -2
  261. package/components/stepper/step.js.map +1 -1
  262. package/components/stepper/themes/step/dark/step.bootstrap.css.js +1 -1
  263. package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -1
  264. package/components/stepper/themes/step/dark/step.fluent.css.js +1 -1
  265. package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -1
  266. package/components/stepper/themes/step/dark/step.indigo.css.js +1 -1
  267. package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -1
  268. package/components/stepper/themes/step/dark/step.material.css.js +1 -1
  269. package/components/stepper/themes/step/dark/step.material.css.js.map +1 -1
  270. package/components/stepper/themes/step/light/step.bootstrap.css.js +1 -1
  271. package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -1
  272. package/components/stepper/themes/step/light/step.fluent.css.js +1 -1
  273. package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -1
  274. package/components/stepper/themes/step/light/step.indigo.css.js +1 -1
  275. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -1
  276. package/components/stepper/themes/step/light/step.material.css.js +1 -1
  277. package/components/stepper/themes/step/light/step.material.css.js.map +1 -1
  278. package/components/stepper/themes/step/light/step.shared.css.js +1 -1
  279. package/components/stepper/themes/step/light/step.shared.css.js.map +1 -1
  280. package/components/stepper/themes/step/shared/step.common.css.js +1 -1
  281. package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
  282. package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
  283. package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
  284. package/components/tabs/tab-dom.js +8 -9
  285. package/components/tabs/tab-dom.js.map +1 -1
  286. package/components/tabs/themes/dark/tab.bootstrap.css.js +1 -1
  287. package/components/tabs/themes/dark/tab.bootstrap.css.js.map +1 -1
  288. package/components/tabs/themes/dark/tab.fluent.css.js +1 -1
  289. package/components/tabs/themes/dark/tab.fluent.css.js.map +1 -1
  290. package/components/tabs/themes/dark/tab.indigo.css.js +1 -1
  291. package/components/tabs/themes/dark/tab.indigo.css.js.map +1 -1
  292. package/components/tabs/themes/dark/tab.material.css.js +1 -1
  293. package/components/tabs/themes/dark/tab.material.css.js.map +1 -1
  294. package/components/tabs/themes/dark/tab.shared.css.js +1 -1
  295. package/components/tabs/themes/dark/tab.shared.css.js.map +1 -1
  296. package/components/tabs/themes/light/tab.bootstrap.css.js +1 -1
  297. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  298. package/components/tabs/themes/light/tab.fluent.css.js +1 -1
  299. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  300. package/components/tabs/themes/light/tab.indigo.css.js +1 -1
  301. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  302. package/components/tabs/themes/light/tab.material.css.js +1 -1
  303. package/components/tabs/themes/light/tab.material.css.js.map +1 -1
  304. package/components/tabs/themes/light/tab.shared.css.js +1 -1
  305. package/components/tabs/themes/light/tab.shared.css.js.map +1 -1
  306. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  307. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  308. package/components/tabs/themes/shared/tab/tab.common.css.js +1 -1
  309. package/components/tabs/themes/shared/tab/tab.common.css.js.map +1 -1
  310. package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
  311. package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
  312. package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
  313. package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
  314. package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
  315. package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
  316. package/components/tabs/themes/shared/tabs/tabs.bootstrap.css.js +1 -1
  317. package/components/tabs/themes/shared/tabs/tabs.bootstrap.css.js.map +1 -1
  318. package/components/tabs/themes/shared/tabs/tabs.common.css.js +1 -1
  319. package/components/tabs/themes/shared/tabs/tabs.common.css.js.map +1 -1
  320. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
  321. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
  322. package/components/tabs/themes/shared/tabs/tabs.material.css.js +1 -1
  323. package/components/tabs/themes/shared/tabs/tabs.material.css.js.map +1 -1
  324. package/components/tabs/themes/tabs.base.css.js +1 -1
  325. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  326. package/components/textarea/themes/dark/textarea.indigo.css.js +1 -1
  327. package/components/textarea/themes/dark/textarea.indigo.css.js.map +1 -1
  328. package/components/textarea/themes/light/textarea.indigo.css.js +1 -1
  329. package/components/textarea/themes/light/textarea.indigo.css.js.map +1 -1
  330. package/components/textarea/themes/light/textarea.shared.css.js +1 -1
  331. package/components/textarea/themes/light/textarea.shared.css.js.map +1 -1
  332. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  333. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  334. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  335. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  336. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  337. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  338. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  339. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  340. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  341. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  342. package/components/textarea/themes/textarea.base.css.js +1 -1
  343. package/components/textarea/themes/textarea.base.css.js.map +1 -1
  344. package/components/tree/themes/dark/container.bootstrap.css.js +1 -1
  345. package/components/tree/themes/dark/container.bootstrap.css.js.map +1 -1
  346. package/components/tree/themes/light/container.bootstrap.css.js +1 -1
  347. package/components/tree/themes/light/container.bootstrap.css.js.map +1 -1
  348. package/components/tree/tree-item.js +4 -0
  349. package/components/tree/tree-item.js.map +1 -1
  350. package/components/tree/tree.d.ts +14 -0
  351. package/components/tree/tree.js +23 -0
  352. package/components/tree/tree.js.map +1 -1
  353. package/components/validation-container/validation-container.d.ts +0 -1
  354. package/components/validation-container/validation-container.js +6 -9
  355. package/components/validation-container/validation-container.js.map +1 -1
  356. package/custom-elements.json +706 -1056
  357. package/igniteui-webcomponents.html-data.json +1 -1
  358. package/index.d.ts +2 -1
  359. package/index.js +2 -1
  360. package/index.js.map +1 -1
  361. package/package.json +10 -5
  362. package/web-types.json +1 -1
  363. package/components/common/localization/intl-formatters.d.ts +0 -17
  364. package/components/common/localization/intl-formatters.js +0 -46
  365. package/components/common/localization/intl-formatters.js.map +0 -1
  366. package/components/snackbar/themes/shared/snackbar.bootstrap.css.d.ts +0 -1
  367. package/components/snackbar/themes/shared/snackbar.bootstrap.css.js +0 -3
  368. package/components/snackbar/themes/shared/snackbar.bootstrap.css.js.map +0 -1
  369. package/components/validation-container/themes/dark/validator.bootstrap.css.d.ts +0 -1
  370. package/components/validation-container/themes/dark/validator.bootstrap.css.js +0 -3
  371. package/components/validation-container/themes/dark/validator.bootstrap.css.js.map +0 -1
  372. package/components/validation-container/themes/dark/validator.fluent.css.d.ts +0 -1
  373. package/components/validation-container/themes/dark/validator.fluent.css.js +0 -3
  374. package/components/validation-container/themes/dark/validator.fluent.css.js.map +0 -1
  375. package/components/validation-container/themes/dark/validator.indigo.css.d.ts +0 -1
  376. package/components/validation-container/themes/dark/validator.indigo.css.js +0 -3
  377. package/components/validation-container/themes/dark/validator.indigo.css.js.map +0 -1
  378. package/components/validation-container/themes/dark/validator.material.css.d.ts +0 -1
  379. package/components/validation-container/themes/dark/validator.material.css.js +0 -3
  380. package/components/validation-container/themes/dark/validator.material.css.js.map +0 -1
  381. package/components/validation-container/themes/light/validator.bootstrap.css.d.ts +0 -1
  382. package/components/validation-container/themes/light/validator.bootstrap.css.js +0 -3
  383. package/components/validation-container/themes/light/validator.bootstrap.css.js.map +0 -1
  384. package/components/validation-container/themes/light/validator.fluent.css.d.ts +0 -1
  385. package/components/validation-container/themes/light/validator.fluent.css.js +0 -3
  386. package/components/validation-container/themes/light/validator.fluent.css.js.map +0 -1
  387. package/components/validation-container/themes/light/validator.indigo.css.d.ts +0 -1
  388. package/components/validation-container/themes/light/validator.indigo.css.js +0 -3
  389. package/components/validation-container/themes/light/validator.indigo.css.js.map +0 -1
  390. package/components/validation-container/themes/light/validator.material.css.d.ts +0 -1
  391. package/components/validation-container/themes/light/validator.material.css.js +0 -3
  392. package/components/validation-container/themes/light/validator.material.css.js.map +0 -1
  393. package/components/validation-container/themes/light/validator.shared.css.d.ts +0 -1
  394. package/components/validation-container/themes/light/validator.shared.css.js +0 -3
  395. package/components/validation-container/themes/light/validator.shared.css.js.map +0 -1
  396. package/components/validation-container/themes/themes.d.ts +0 -2
  397. package/components/validation-container/themes/themes.js +0 -46
  398. package/components/validation-container/themes/themes.js.map +0 -1
@@ -1,7 +1,41 @@
1
1
  const MASK_FLAGS = new Set('aACL09#&?');
2
2
  const MASK_REQUIRED_FLAGS = new Set('0#LA&');
3
+ const ESCAPE_CHAR = '\\';
4
+ const DEFAULT_FORMAT = 'CCCCCCCCCC';
5
+ const DEFAULT_PROMPT = '_';
6
+ const ASCII_ZERO = 0x0030;
7
+ const DIGIT_ZERO_CODEPOINTS = [
8
+ ASCII_ZERO,
9
+ 0x0660,
10
+ 0x06f0,
11
+ 0x0966,
12
+ 0x09e6,
13
+ 0x0a66,
14
+ 0x0ae6,
15
+ 0x0b66,
16
+ 0x0c66,
17
+ 0x0ce6,
18
+ 0x0d66,
19
+ 0x0e50,
20
+ 0x0ed0,
21
+ 0x0f20,
22
+ 0x1040,
23
+ 0x17e0,
24
+ 0x1810,
25
+ 0xff10,
26
+ ];
27
+ const UNICODE_DIGIT_TO_ASCII = new Map(DIGIT_ZERO_CODEPOINTS.flatMap((zeroCodePoint) => Array.from({ length: 10 }, (_, i) => [
28
+ zeroCodePoint + i,
29
+ String.fromCharCode(ASCII_ZERO + i),
30
+ ])));
31
+ function replaceUnicodeNumbers(text) {
32
+ const matcher = /\p{Nd}/gu;
33
+ return text.replace(matcher, (digit) => {
34
+ return UNICODE_DIGIT_TO_ASCII.get(digit.charCodeAt(0)) ?? digit;
35
+ });
36
+ }
3
37
  const MASK_PATTERNS = new Map([
4
- ['C', /(?!^$)/u],
38
+ ['C', /[\s\S]/u],
5
39
  ['&', /[^\p{Separator}]/u],
6
40
  ['a', /[\p{Letter}\p{Number}\p{Separator}]/u],
7
41
  ['A', /[\p{Letter}\p{Number}]/u],
@@ -11,26 +45,12 @@ const MASK_PATTERNS = new Map([
11
45
  ['9', /[\p{Number}\p{Separator}]/u],
12
46
  ['#', /[\p{Number}\-+]/u],
13
47
  ]);
14
- function replaceIMENumbers(string) {
15
- return string.replace(/[0123456789]/g, (num) => ({
16
- '1': '1',
17
- '2': '2',
18
- '3': '3',
19
- '4': '4',
20
- '5': '5',
21
- '6': '6',
22
- '7': '7',
23
- '8': '8',
24
- '9': '9',
25
- '0': '0',
26
- })[num]);
27
- }
28
48
  function validate(char, flag) {
29
49
  return MASK_PATTERNS.get(flag)?.test(char) ?? false;
30
50
  }
31
51
  const MaskDefaultOptions = {
32
- format: 'CCCCCCCCCC',
33
- promptCharacter: '_',
52
+ format: DEFAULT_FORMAT,
53
+ promptCharacter: DEFAULT_PROMPT,
34
54
  };
35
55
  export class MaskParser {
36
56
  get literalPositions() {
@@ -53,17 +73,23 @@ export class MaskParser {
53
73
  return this._options.promptCharacter;
54
74
  }
55
75
  set prompt(value) {
56
- this._options.promptCharacter = value
57
- ? value.substring(0, 1)
58
- : this._options.promptCharacter;
76
+ const char = value ? value.substring(0, 1) : this._options.promptCharacter;
77
+ if (MASK_FLAGS.has(char)) {
78
+ return;
79
+ }
80
+ this._options.promptCharacter = char;
59
81
  }
60
82
  constructor(options) {
61
83
  this._literals = new Map();
62
84
  this._literalPositions = new Set();
63
85
  this._escapedMask = '';
86
+ this._requiredPositions = [];
64
87
  this._options = { ...MaskDefaultOptions, ...options };
65
88
  this._parseMaskLiterals();
66
89
  }
90
+ _isEscapedFlag(char, nextChar) {
91
+ return char === ESCAPE_CHAR && MASK_FLAGS.has(nextChar);
92
+ }
67
93
  _parseMaskLiterals() {
68
94
  const mask = this.mask;
69
95
  const length = mask.length;
@@ -72,7 +98,7 @@ export class MaskParser {
72
98
  this._literals.clear();
73
99
  for (let i = 0; i < length; i++) {
74
100
  const [current, next] = [mask.charAt(i), mask.charAt(i + 1)];
75
- if (current === '\\' && MASK_FLAGS.has(next)) {
101
+ if (this._isEscapedFlag(current, next)) {
76
102
  this._literals.set(currentPos, next);
77
103
  escapedMaskChars.push(next);
78
104
  i++;
@@ -88,9 +114,10 @@ export class MaskParser {
88
114
  }
89
115
  this._escapedMask = escapedMaskChars.join('');
90
116
  this._literalPositions = new Set(this._literals.keys());
117
+ this._requiredPositions = this._computeRequiredPositions();
91
118
  }
92
- _getRequiredNonLiteralPositions() {
93
- const literalPositions = this.literalPositions;
119
+ _computeRequiredPositions() {
120
+ const literalPositions = this._literalPositions;
94
121
  const escapedMask = this._escapedMask;
95
122
  const length = escapedMask.length;
96
123
  const result = [];
@@ -103,32 +130,32 @@ export class MaskParser {
103
130
  return result;
104
131
  }
105
132
  getPreviousNonLiteralPosition(start) {
106
- const literalPositions = this.literalPositions;
107
- for (let i = start; i > 0; i--) {
133
+ const literalPositions = this._literalPositions;
134
+ for (let i = start - 1; i >= 0; i--) {
108
135
  if (!literalPositions.has(i)) {
109
136
  return i;
110
137
  }
111
138
  }
112
- return start;
139
+ return 0;
113
140
  }
114
141
  getNextNonLiteralPosition(start) {
115
- const literalPositions = this.literalPositions;
142
+ const literalPositions = this._literalPositions;
116
143
  const length = this._escapedMask.length;
117
- for (let i = start; i < length; i++) {
144
+ for (let i = Math.max(0, start); i < length; i++) {
118
145
  if (!literalPositions.has(i)) {
119
146
  return i;
120
147
  }
121
148
  }
122
- return start;
149
+ return length;
123
150
  }
124
151
  replace(maskString, value, start, end) {
125
152
  const literalPositions = this.literalPositions;
126
153
  const escapedMask = this._escapedMask;
127
- const length = this._escapedMask.length;
154
+ const length = escapedMask.length;
128
155
  const prompt = this.prompt;
129
156
  const endBoundary = Math.min(end, length);
130
- const maskedChars = Array.from(maskString || this.apply(''));
131
- const inputChars = Array.from(replaceIMENumbers(value));
157
+ const maskedChars = maskString ? [...maskString] : [...this.apply('')];
158
+ const inputChars = Array.from(replaceUnicodeNumbers(value));
132
159
  const inputLength = inputChars.length;
133
160
  for (let i = start; i < endBoundary; i++) {
134
161
  if (!literalPositions.has(i)) {
@@ -166,20 +193,20 @@ export class MaskParser {
166
193
  const literalPositions = this.literalPositions;
167
194
  const prompt = this.prompt;
168
195
  const length = masked.length;
169
- let result = '';
196
+ const result = [];
170
197
  for (let i = 0; i < length; i++) {
171
198
  const char = masked[i];
172
199
  if (!literalPositions.has(i) && char !== prompt) {
173
- result += char;
200
+ result.push(char);
174
201
  }
175
202
  }
176
- return result;
203
+ return result.join('');
177
204
  }
178
205
  isValidString(input = '') {
179
206
  const prompt = this.prompt;
180
- return this._getRequiredNonLiteralPositions().every((position) => {
181
- const char = input.charAt(position);
182
- return (validate(char, this._escapedMask.charAt(position)) && char !== prompt);
207
+ return this._requiredPositions.every((position) => {
208
+ const char = input[position];
209
+ return validate(char, this._escapedMask[position]) && char !== prompt;
183
210
  });
184
211
  }
185
212
  apply(input = '') {
@@ -187,14 +214,15 @@ export class MaskParser {
187
214
  const prompt = this.prompt;
188
215
  const escapedMask = this._escapedMask;
189
216
  const length = escapedMask.length;
190
- const inputLength = input.length;
191
- const result = new Array(escapedMask.length).fill(prompt);
217
+ const result = new Array(length).fill(prompt);
192
218
  for (const [position, literal] of literals.entries()) {
193
219
  result[position] = literal;
194
220
  }
195
221
  if (!input) {
196
222
  return result.join('');
197
223
  }
224
+ const normalizedInput = replaceUnicodeNumbers(input);
225
+ const inputLength = normalizedInput.length;
198
226
  let inputIndex = 0;
199
227
  for (let i = 0; i < length; i++) {
200
228
  if (inputIndex >= inputLength) {
@@ -203,8 +231,8 @@ export class MaskParser {
203
231
  if (literals.has(i)) {
204
232
  continue;
205
233
  }
206
- if (validate(input.charAt(inputIndex), escapedMask.charAt(i))) {
207
- result[i] = input.charAt(inputIndex);
234
+ if (validate(normalizedInput[inputIndex], escapedMask[i])) {
235
+ result[i] = normalizedInput[inputIndex];
208
236
  }
209
237
  inputIndex++;
210
238
  }
@@ -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/**\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 MASK_PATTERNS = new Map([\n ['C', /(?!^$)/u], // Non-empty (any character that is not an empty string)\n ['&', /[^\\p{Separator}]/u], // Any non-whitespace character (Unicode-aware)\n ['a', /[\\p{Letter}\\p{Number}\\p{Separator}]/u], // Alphanumeric and whitespace (Unicode-aware)\n ['A', /[\\p{Letter}\\p{Number}]/u], // Alphanumeric (Unicode-aware)\n ['?', /[\\p{Letter}\\p{Separator}]/u], // Alpha and whitespace (Unicode-aware)\n ['L', /\\p{Letter}/u], // Alphabetic (Unicode-aware)\n ['0', /\\p{Number}/u], // Numeric (0-9) (Unicode-aware)\n ['9', /[\\p{Number}\\p{Separator}]/u], // Numeric and whitespace (Unicode-aware)\n ['#', /[\\p{Number}\\-+]/u], // Numeric and sign characters (+, -)\n]);\n\nfunction replaceIMENumbers(string: string): string {\n return string.replace(\n /[0123456789]/g,\n (num) =>\n ({\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n '0': '0',\n })[num] as string\n );\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: MaskOptions = {\n format: 'CCCCCCCCCC',\n promptCharacter: '_',\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: MaskOptions;\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 /**\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(): Set<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 */\n public set prompt(value: string) {\n this._options.promptCharacter = value\n ? value.substring(0, 1)\n : this._options.promptCharacter;\n }\n\n constructor(options?: MaskOptions) {\n this._options = { ...MaskDefaultOptions, ...options };\n this._parseMaskLiterals();\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 (current === '\\\\' && MASK_FLAGS.has(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 }\n\n /**\n * Gets 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 _getRequiredNonLiteralPositions(): 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 `start`.\n */\n public getPreviousNonLiteralPosition(start: number): number {\n const literalPositions = this.literalPositions;\n\n for (let i = start; i > 0; i--) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return start;\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 `start`.\n */\n public getNextNonLiteralPosition(start: number): number {\n const literalPositions = this.literalPositions;\n const length = this._escapedMask.length;\n\n for (let i = start; i < length; i++) {\n if (!literalPositions.has(i)) {\n return i;\n }\n }\n\n return start;\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 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 = this._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 = Array.from(maskString || this.apply(''));\n\n const inputChars = Array.from(replaceIMENumbers(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\n let result = '';\n\n for (let i = 0; i < length; i++) {\n const char = masked[i];\n if (!literalPositions.has(i) && char !== prompt) {\n result += char;\n }\n }\n\n return result;\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._getRequiredNonLiteralPositions().every((position) => {\n const char = input.charAt(position);\n return (\n validate(char, this._escapedMask.charAt(position)) && char !== prompt\n );\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 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 const inputLength = input.length;\n\n // Initialize the result array with prompt characters\n const result = new Array(escapedMask.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 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(input.charAt(inputIndex), escapedMask.charAt(i))) {\n result[i] = input.charAt(inputIndex);\n }\n\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} */\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,10 +1,10 @@
1
- import { validationResourcesKeys } from '../common/i18n/utils.js';
1
+ import { ValidationResourceStringsEN } from 'igniteui-i18n-core';
2
2
  import { requiredValidator } from '../common/validators.js';
3
3
  export const maskValidators = [
4
4
  requiredValidator,
5
5
  {
6
6
  key: 'badInput',
7
- messageResourceKey: validationResourcesKeys.mask,
7
+ message: ValidationResourceStringsEN.mask_validation_error,
8
8
  isValid: ({ _parser, _maskedValue }) => _parser.isValidString(_maskedValue),
9
9
  },
10
10
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/components/mask-input/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,yBAAyB,CAAC;AAG5E,MAAM,CAAC,MAAM,cAAc,GAAuC;IAChE,iBAAiB;IACjB;QACE,GAAG,EAAE,UAAU;QACf,kBAAkB,EAAE,uBAAuB,CAAC,IAAI;QAEhD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC;KAC5E;CACF,CAAC","sourcesContent":["import { validationResourcesKeys } from '../common/i18n/utils.js';\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 messageResourceKey: validationResourcesKeys.mask,\n // @ts-expect-error - protected access\n isValid: ({ _parser, _maskedValue }) => _parser.isValidString(_maskedValue),\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,yBAAyB,CAAC;AAG5E,MAAM,CAAC,MAAM,cAAc,GAAuC;IAChE,iBAAiB;IACjB;QACE,GAAG,EAAE,UAAU;QACf,OAAO,EAAE,2BAA2B,CAAC,qBAAsB;QAE3D,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC;KAC5E;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 // @ts-expect-error - protected access\n isValid: ({ _parser, _maskedValue }) => _parser.isValidString(_maskedValue),\n },\n];\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-100));--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, hsl(from var(--ig-gray-200) h s l/0.12));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-gray-300) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-50));--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-200));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--background-color: var(--ig-nav-drawer-background-color, rgba(0, 0, 0, 0.4));--ig-theme: fluent}`;
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-100));--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, hsl(from var(--ig-gray-200) h s l/0.12));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-gray-300) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-50));--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-200));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--ig-theme: fluent}`;
3
3
  //# sourceMappingURL=nav-drawer.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6jCAA6jC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport 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-100));--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, hsl(from var(--ig-gray-200) h s l/0.12));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-gray-300) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-50));--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-200));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--background-color: var(--ig-nav-drawer-background-color, rgba(0, 0, 0, 0.4));--ig-theme: fluent}`;\n"]}
1
+ {"version":3,"file":"nav-drawer.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,++BAA++B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport 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-100));--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, hsl(from var(--ig-gray-200) h s l/0.12));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-800));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-gray-300) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-50));--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-200));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-800));--ig-theme: fluent;--ig-theme: fluent}`;\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;--background-color: var(--ig-nav-drawer-background-color, rgba(255, 255, 255, 0.4));--ig-theme: fluent}`;
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;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: fluent}`;
3
3
  //# sourceMappingURL=nav-drawer.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0hCAA0hC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport 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;--background-color: var(--ig-nav-drawer-background-color, rgba(255, 255, 255, 0.4));--ig-theme: fluent}`;\n"]}
1
+ {"version":3,"file":"nav-drawer.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yiCAAyiC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport 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;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: fluent}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-500));--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, var(--ig-gray-200));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-primary-500) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-500));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-500));--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-700));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-700));--ig-theme: material;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: material}`;
2
+ export const styles = css `:host{--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-500));--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, var(--ig-gray-200));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-primary-500) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-800));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-800));--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-700));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-700));--ig-theme: material;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: material}`;
3
3
  //# sourceMappingURL=nav-drawer.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-drawer.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wuCAAwuC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-500));--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, var(--ig-gray-200));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-primary-500) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-500));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-500));--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-700));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-700));--ig-theme: material;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: material}`;\n"]}
1
+ {"version":3,"file":"nav-drawer.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/nav-drawer/themes/light/container/nav-drawer.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wuCAAwuC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--item-disabled-text-color: var(--ig-nav-drawer-item-disabled-text-color, var(--ig-gray-500));--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, var(--ig-gray-200));--item-text-color: var(--ig-nav-drawer-item-text-color, var(--ig-gray-900));--item-active-background: var(--ig-nav-drawer-item-active-background, hsl(from var(--ig-primary-500) h s l/0.12));--item-active-icon-color: var(--ig-nav-drawer-item-active-icon-color, var(--ig-primary-800));--item-active-text-color: var(--ig-nav-drawer-item-active-text-color, var(--ig-primary-800));--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-700));--item-header-text-color: var(--ig-nav-drawer-item-header-text-color, var(--ig-gray-700));--ig-theme: material;--background-color: var(--ig-nav-drawer-background-color, hsl(from var(--ig-gray-500) h s l/0.54));--ig-theme: material}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{background:var(--background);color:var(--text-color);border-bottom:.0625rem solid var(--border-color);box-shadow:var(--ig-elevation-4)}::slotted(igc-icon){color:var(--idle-icon-color)}::slotted(igc-icon:hover){color:var(--hover-icon-color)}`;
2
+ export const styles = css `:host{background:var(--background);color:var(--text-color);border-bottom:.0625rem solid var(--border-color);box-shadow:var(--elevation)}::slotted(igc-icon){color:var(--idle-icon-color)}::slotted(igc-icon:hover){color:var(--hover-icon-color)}`;
3
3
  //# sourceMappingURL=navbar.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.common.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wPAAwP,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{background:var(--background);color:var(--text-color);border-bottom:.0625rem solid var(--border-color);box-shadow:var(--ig-elevation-4)}::slotted(igc-icon){color:var(--idle-icon-color)}::slotted(igc-icon:hover){color:var(--hover-icon-color)}`;\n"]}
1
+ {"version":3,"file":"navbar.common.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,mPAAmP,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{background:var(--background);color:var(--text-color);border-bottom:.0625rem solid var(--border-color);box-shadow:var(--elevation)}::slotted(igc-icon){color:var(--idle-icon-color)}::slotted(igc-icon:hover){color:var(--hover-icon-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--fill-color: var(--ig-radio-fill-color, var(--ig-secondary-500));--focus-outline-color: var(--ig-radio-focus-outline-color, transparent);--fill-hover-border-color: var(--ig-radio-fill-hover-border-color, var(--ig-secondary-500));--empty-color: var(--ig-radio-empty-color, var(--ig-gray-600));--fill-color-hover: var(--ig-radio-fill-color-hover, var(--ig-secondary-500));--error-color-hover: var(--ig-radio-error-color-hover, var(--ig-error-500));--ig-theme: material}`;
2
+ export const styles = css `:host{--fill-color: var(--ig-radio-fill-color, var(--ig-secondary-500));--error-color: var(--ig-radio-error-color, var(--ig-error-800));--focus-outline-color: var(--ig-radio-focus-outline-color, transparent);--fill-hover-border-color: var(--ig-radio-fill-hover-border-color, var(--ig-secondary-500));--empty-color: var(--ig-radio-empty-color, var(--ig-gray-600));--fill-color-hover: var(--ig-radio-fill-color-hover, var(--ig-secondary-500));--error-color-hover: var(--ig-radio-error-color-hover, var(--ig-error-800));--ig-theme: material}`;
3
3
  //# sourceMappingURL=radio.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.material.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4dAA4d,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--fill-color: var(--ig-radio-fill-color, var(--ig-secondary-500));--focus-outline-color: var(--ig-radio-focus-outline-color, transparent);--fill-hover-border-color: var(--ig-radio-fill-hover-border-color, var(--ig-secondary-500));--empty-color: var(--ig-radio-empty-color, var(--ig-gray-600));--fill-color-hover: var(--ig-radio-fill-color-hover, var(--ig-secondary-500));--error-color-hover: var(--ig-radio-error-color-hover, var(--ig-error-500));--ig-theme: material}`;\n"]}
1
+ {"version":3,"file":"radio.material.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4hBAA4hB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--fill-color: var(--ig-radio-fill-color, var(--ig-secondary-500));--error-color: var(--ig-radio-error-color, var(--ig-error-800));--focus-outline-color: var(--ig-radio-focus-outline-color, transparent);--fill-hover-border-color: var(--ig-radio-fill-hover-border-color, var(--ig-secondary-500));--empty-color: var(--ig-radio-empty-color, var(--ig-gray-600));--fill-color-hover: var(--ig-radio-fill-color-hover, var(--ig-secondary-500));--error-color-hover: var(--ig-radio-error-color-hover, var(--ig-error-800));--ig-theme: material}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host::part(base){transition:none}:host ::part(helper-text){font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.25rem, auto)}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=base]{gap:.5rem}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);background:var(--empty-fill-color);transition:rgba(0,0,0,0)}[part~=control]::before,[part~=control]::after{transition:none;border-radius:calc(var(--size)/2)}[part~=control]::before{transform:translate(-50%, -50%) scale(0.4375)}[part~=control]::after{width:inherit;height:inherit;min-width:inherit;border:.0625rem solid var(--empty-color)}[part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color)}[part~=focused] [part=control]::after{border-color:var(--focus-border-color)}[part="control checked"]::after{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]::before{border-color:var(--fill-hover-border-color);background:var(--fill-hover-border-color)}:host(:hover) [part=control]::after{border-color:var(--hover-color)}:host(:hover) [part="control checked"]::after{background:var(--fill-color-hover);border-color:var(--fill-color-hover)}:host(:hover) [part~=focused] [part=control]::after{border-color:hsl(from var(--focus-border-color) h calc(s * 1.12) calc(l * 0.82))}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::after{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part~=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part~=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::after{background:var(--error-color-hover)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{background:var(--disabled-fill-color);border-color:var(--disabled-fill-color)}`;
2
+ export const styles = css `:host::part(base){transition:none}:host ::part(helper-text){font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.25rem, auto)}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=base]{gap:.5rem}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:rgba(0,0,0,0)}[part~=control]::before,[part~=control]::after{transition:none;border-radius:calc(var(--size)/2)}[part~=control]::before{transform:translate(-50%, -50%) scale(0.4375)}[part~=control]::after{width:inherit;height:inherit;min-width:inherit;border:.0625rem solid var(--empty-color)}[part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color)}[part~=focused] [part=control]::after{border-color:var(--focus-border-color)}[part="control checked"]::after{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]::before{border-color:var(--fill-hover-border-color);background:var(--fill-hover-border-color)}:host(:hover) [part=control]::after{border-color:var(--hover-color)}:host(:hover) [part="control checked"]::after{background:var(--fill-color-hover);border-color:var(--fill-color-hover)}:host(:hover) [part="control checked"]::before{background:var(--fill-hover-border-color)}:host(:hover) [part~=focused] [part=control]::after{border-color:hsl(from var(--focus-border-color) h calc(s * 1.12) calc(l * 0.82))}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::after{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::after{background:var(--error-color-hover)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--fill-hover-border-color);border-color:var(--fill-hover-border-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{background:var(--disabled-fill-color)}`;
3
3
  //# sourceMappingURL=radio.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qkHAAqkH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host::part(base){transition:none}:host ::part(helper-text){font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.25rem, auto)}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=base]{gap:.5rem}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);background:var(--empty-fill-color);transition:rgba(0,0,0,0)}[part~=control]::before,[part~=control]::after{transition:none;border-radius:calc(var(--size)/2)}[part~=control]::before{transform:translate(-50%, -50%) scale(0.4375)}[part~=control]::after{width:inherit;height:inherit;min-width:inherit;border:.0625rem solid var(--empty-color)}[part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color)}[part~=focused] [part=control]::after{border-color:var(--focus-border-color)}[part=\"control checked\"]::after{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]::before{border-color:var(--fill-hover-border-color);background:var(--fill-hover-border-color)}:host(:hover) [part=control]::after{border-color:var(--hover-color)}:host(:hover) [part=\"control checked\"]::after{background:var(--fill-color-hover);border-color:var(--fill-color-hover)}:host(:hover) [part~=focused] [part=control]::after{border-color:hsl(from var(--focus-border-color) h calc(s * 1.12) calc(l * 0.82))}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::after{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part~=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part~=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::after{background:var(--error-color-hover)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{background:var(--disabled-fill-color);border-color:var(--disabled-fill-color)}`;\n"]}
1
+ {"version":3,"file":"radio.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,y+GAAy+G,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host::part(base){transition:none}:host ::part(helper-text){font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.25rem, auto)}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=base]{gap:.5rem}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:rgba(0,0,0,0)}[part~=control]::before,[part~=control]::after{transition:none;border-radius:calc(var(--size)/2)}[part~=control]::before{transform:translate(-50%, -50%) scale(0.4375)}[part~=control]::after{width:inherit;height:inherit;min-width:inherit;border:.0625rem solid var(--empty-color)}[part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color)}[part~=focused] [part=control]::after{border-color:var(--focus-border-color)}[part=\"control checked\"]::after{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]::before{border-color:var(--fill-hover-border-color);background:var(--fill-hover-border-color)}:host(:hover) [part=control]::after{border-color:var(--hover-color)}:host(:hover) [part=\"control checked\"]::after{background:var(--fill-color-hover);border-color:var(--fill-color-hover)}:host(:hover) [part=\"control checked\"]::before{background:var(--fill-hover-border-color)}:host(:hover) [part~=focused] [part=control]::after{border-color:hsl(from var(--focus-border-color) h calc(s * 1.12) calc(l * 0.82))}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::after{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::after{background:var(--error-color-hover)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--fill-hover-border-color);border-color:var(--fill-hover-border-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{background:var(--disabled-fill-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=label]{color:var(--label-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--disabled-label-color)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--error-color)}`;
2
+ export const styles = css `[part~=label]{color:var(--label-color)}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=control]{background:var(--empty-fill-color)}:host(:hover) [part="control checked"]::before{background:var(--fill-color-hover);border:.125rem solid var(--fill-hover-border-color)}:host(:hover) [part="control checked"]::after{border-color:var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part~=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part~=control]::after{border-color:var(--error-color-hover)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--disabled-label-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-fill-color);border-color:var(--disabled-fill-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{border-color:var(--disabled-fill-color)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--error-color)}`;
3
3
  //# sourceMappingURL=radio.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.common.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,kRAAkR,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{color:var(--label-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--disabled-label-color)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--error-color)}`;\n"]}
1
+ {"version":3,"file":"radio.common.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0sCAA0sC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{color:var(--label-color)}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=control]{background:var(--empty-fill-color)}:host(:hover) [part=\"control checked\"]::before{background:var(--fill-color-hover);border:.125rem solid var(--fill-hover-border-color)}:host(:hover) [part=\"control checked\"]::after{border-color:var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part~=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part~=control]::after{border-color:var(--error-color-hover)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--disabled-label-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-fill-color);border-color:var(--disabled-fill-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{border-color:var(--disabled-fill-color)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--error-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host [part~=base]{transition-duration:.1s;gap:.5rem}:host [part~=control]{border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:none}:host [part~=control]::before,:host [part~=control]::after{border-radius:calc(var(--size)/2);width:var(--size);height:var(--size);inset-inline-start:0;top:0;transform:none}:host [part~=control]::before{backface-visibility:hidden;transform:scale(0);transition:all .2s ease-in;z-index:1}:host [part~=control]::after{border:.0625rem solid var(--empty-color)}:host [part="control checked"]::before{border-color:var(--fill-color);background:var(--fill-color);transform:scale(0.5)}:host [part="control checked"]::after{border-color:var(--fill-color)}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.125rem;left:-0.125rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.125rem*2);height:calc(100% + 0.125rem*2)}[part~=focused] [part=control]::before{background:var(--hover-color)}:host(:hover) [part=control]::before{background:var(--hover-color);transform:scale(0.5)}:host(:hover) [part="control checked"]::after{border-color:var(--fill-hover-border-color)}:host(:hover) [part="control checked"]::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::before,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::before{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;
2
+ export const styles = css `:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host [part~=base]{transition-duration:.1s;gap:.5rem}:host [part~=control]{border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:none}:host [part~=control]::before,:host [part~=control]::after{border-radius:calc(var(--size)/2);width:var(--size);height:var(--size);inset-inline-start:0;top:0;transform:none}:host [part~=control]::before{backface-visibility:hidden;transform:scale(0);transition:all .2s ease-in;z-index:1}:host [part~=control]::after{border:.0625rem solid var(--empty-color)}:host [part="control checked"]::before{border-color:var(--fill-color);background:var(--fill-color);transform:scale(0.5)}:host [part="control checked"]::after{border-color:var(--fill-color)}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.125rem;left:-0.125rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.125rem*2);height:calc(100% + 0.125rem*2)}[part~=focused] [part=control]::before{background:var(--hover-color)}:host(:hover) [part=control]::before{background:var(--hover-color);transform:scale(0.5)}:host(:hover) [part="control checked"]::after{border-color:var(--fill-hover-border-color)}:host(:hover) [part="control checked"]::before{background:var(--fill-color-hover);border:.0625rem solid var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::before{background:var(--error-color-hover);border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::before,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::before{background:var(--error-color)}`;
3
3
  //# sourceMappingURL=radio.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0uIAA0uI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host [part~=base]{transition-duration:.1s;gap:.5rem}:host [part~=control]{border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:none}:host [part~=control]::before,:host [part~=control]::after{border-radius:calc(var(--size)/2);width:var(--size);height:var(--size);inset-inline-start:0;top:0;transform:none}:host [part~=control]::before{backface-visibility:hidden;transform:scale(0);transition:all .2s ease-in;z-index:1}:host [part~=control]::after{border:.0625rem solid var(--empty-color)}:host [part=\"control checked\"]::before{border-color:var(--fill-color);background:var(--fill-color);transform:scale(0.5)}:host [part=\"control checked\"]::after{border-color:var(--fill-color)}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.125rem;left:-0.125rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.125rem*2);height:calc(100% + 0.125rem*2)}[part~=focused] [part=control]::before{background:var(--hover-color)}:host(:hover) [part=control]::before{background:var(--hover-color);transform:scale(0.5)}:host(:hover) [part=\"control checked\"]::after{border-color:var(--fill-hover-border-color)}:host(:hover) [part=\"control checked\"]::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::before,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::before{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;\n"]}
1
+ {"version":3,"file":"radio.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,20HAA20H,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host [part~=base]{transition-duration:.1s;gap:.5rem}:host [part~=control]{border-radius:var(--size);width:var(--size);height:var(--size);min-width:var(--size);transition:none}:host [part~=control]::before,:host [part~=control]::after{border-radius:calc(var(--size)/2);width:var(--size);height:var(--size);inset-inline-start:0;top:0;transform:none}:host [part~=control]::before{backface-visibility:hidden;transform:scale(0);transition:all .2s ease-in;z-index:1}:host [part~=control]::after{border:.0625rem solid var(--empty-color)}:host [part=\"control checked\"]::before{border-color:var(--fill-color);background:var(--fill-color);transform:scale(0.5)}:host [part=\"control checked\"]::after{border-color:var(--fill-color)}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.125rem;left:-0.125rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.125rem*2);height:calc(100% + 0.125rem*2)}[part~=focused] [part=control]::before{background:var(--hover-color)}:host(:hover) [part=control]::before{background:var(--hover-color);transform:scale(0.5)}:host(:hover) [part=\"control checked\"]::after{border-color:var(--fill-hover-border-color)}:host(:hover) [part=\"control checked\"]::before{background:var(--fill-color-hover);border:.0625rem solid var(--fill-hover-border-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=control]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=control]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::before{background:var(--error-color-hover);border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=control]::after,:host(:not(:disabled):state(ig-invalid)) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=focused] [part=control]::before,:host(:not(:disabled):state(ig-invalid)) [part=focused] [part=control]::before{background:var(--error-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part="control checked"]::after{border-color:var(--fill-color)}[part="control checked"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]:hover::after{border-color:var(--fill-hover-border-color)}[part="control checked"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled]):state(ig-invalid)) [part~=base]:hover [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=label],:host(:not(:disabled):state(ig-invalid)) [part=label]{color:var(--label-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]:hover::after,:host(:not(:disabled):state(ig-invalid)) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]:hover::after,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]:hover::before,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part="control checked"],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-fill-color)}`;
2
+ export const styles = css `:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}:host(:hover) [part~=control]::after{border:.125rem solid var(--hover-color)}:host(:hover) [part="control checked"]::after{border-color:var(--fill-hover-border-color)}[part~=base]{gap:.5rem}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part="control checked"]::after{border-color:var(--fill-color)}[part="control checked"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]:hover::after{border-color:var(--fill-hover-border-color)}[part="control checked"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled]):state(ig-invalid)) [part~=base]:hover [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--label-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::after,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid)) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part="control checked"],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part="control checked"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part="control checked"]::before{background:var(--error-color-hover);border-color:var(--error-color-hover)}`;
3
3
  //# sourceMappingURL=radio.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,62IAA62I,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}[part=\"control checked\"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]:hover::after{border-color:var(--fill-hover-border-color)}[part=\"control checked\"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled]):state(ig-invalid)) [part~=base]:hover [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=label],:host(:not(:disabled):state(ig-invalid)) [part=label]{color:var(--label-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]:hover::after,:host(:not(:disabled):state(ig-invalid)) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]:hover::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]:hover::before,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part=\"control checked\"],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-fill-color)}`;\n"]}
1
+ {"version":3,"file":"radio.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,gpHAAgpH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);margin-block-start:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));grid-auto-rows:minmax(1.125rem, auto)}:host(:hover) [part~=control]::after{border:.125rem solid var(--hover-color)}:host(:hover) [part=\"control checked\"]::after{border-color:var(--fill-hover-border-color)}[part~=base]{gap:.5rem}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}[part=\"control checked\"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]:hover::after{border-color:var(--fill-hover-border-color)}[part=\"control checked\"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled]):state(ig-invalid)) [part~=base]:hover [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled]):state(ig-invalid)) [part~=label],:host(:not(:disabled):state(ig-invalid)) [part~=label]{color:var(--label-color)}:host(:not([disabled]):state(ig-invalid)) [part=control]::after,:host(:not(:disabled):state(ig-invalid)) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::after,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::after{border-color:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid)) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part~=control],:host(:not([disabled]):state(ig-invalid)) [part~=focused] [part=\"control checked\"],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part~=control],:host(:not(:disabled):state(ig-invalid)) [part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host(:not([disabled]):state(ig-invalid):hover) [part=\"control checked\"]::before,:host(:not(:disabled):state(ig-invalid):hover) [part=\"control checked\"]::before{background:var(--error-color-hover);border-color:var(--error-color-hover)}`;\n"]}