igniteui-webcomponents 4.3.1 → 4.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 (369) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/animations/presets/fade/index.d.ts +2 -2
  3. package/animations/presets/fade/index.js +4 -6
  4. package/animations/presets/fade/index.js.map +1 -1
  5. package/animations/presets/grow/index.d.ts +2 -2
  6. package/animations/presets/grow/index.js +8 -10
  7. package/animations/presets/grow/index.js.map +1 -1
  8. package/animations/presets/index.d.ts +1 -0
  9. package/animations/presets/index.js +1 -0
  10. package/animations/presets/index.js.map +1 -1
  11. package/animations/presets/slide/index.d.ts +3 -0
  12. package/animations/presets/slide/index.js +16 -0
  13. package/animations/presets/slide/index.js.map +1 -0
  14. package/components/avatar/avatar.js +5 -2
  15. package/components/avatar/avatar.js.map +1 -1
  16. package/components/avatar/themes/{light/avatar.base.css.js → avatar.base.css.js} +2 -20
  17. package/components/avatar/themes/avatar.base.css.js.map +1 -0
  18. package/components/avatar/themes/dark/{avatar.base.bootstrap.css.js → avatar.bootstrap.css.js} +1 -1
  19. package/components/avatar/themes/dark/avatar.bootstrap.css.js.map +1 -0
  20. package/components/avatar/themes/dark/avatar.fluent.css.d.ts +1 -0
  21. package/components/avatar/themes/dark/avatar.fluent.css.js +3 -0
  22. package/components/avatar/themes/dark/avatar.fluent.css.js.map +1 -0
  23. package/components/avatar/themes/dark/avatar.indigo.css.d.ts +1 -0
  24. package/components/avatar/themes/dark/avatar.indigo.css.js +3 -0
  25. package/components/avatar/themes/dark/avatar.indigo.css.js.map +1 -0
  26. package/components/avatar/themes/dark/avatar.material.css.d.ts +1 -0
  27. package/components/avatar/themes/dark/avatar.material.css.js +3 -0
  28. package/components/avatar/themes/dark/avatar.material.css.js.map +1 -0
  29. package/components/avatar/themes/light/avatar.bootstrap.css.js +17 -3
  30. package/components/avatar/themes/light/avatar.bootstrap.css.js.map +1 -1
  31. package/components/avatar/themes/light/avatar.fluent.css.d.ts +1 -0
  32. package/components/avatar/themes/light/avatar.fluent.css.js +27 -0
  33. package/components/avatar/themes/light/avatar.fluent.css.js.map +1 -0
  34. package/components/avatar/themes/light/avatar.indigo.css.d.ts +1 -0
  35. package/components/avatar/themes/light/avatar.indigo.css.js +27 -0
  36. package/components/avatar/themes/light/avatar.indigo.css.js.map +1 -0
  37. package/components/avatar/themes/light/avatar.material.css.d.ts +1 -0
  38. package/components/avatar/themes/light/avatar.material.css.js +27 -0
  39. package/components/avatar/themes/light/avatar.material.css.js.map +1 -0
  40. package/components/button/button-base.d.ts +14 -6
  41. package/components/button/button-base.js +51 -18
  42. package/components/button/button-base.js.map +1 -1
  43. package/components/button/themes/button/light/button.base.css.js +4 -4
  44. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  45. package/components/button/themes/button/light/button.bootstrap.css.js +64 -32
  46. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  47. package/components/button/themes/button/light/button.fluent.css.js +75 -40
  48. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  49. package/components/button/themes/button/light/button.indigo.css.js +86 -42
  50. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  51. package/components/button/themes/button/light/button.material.css.js +88 -38
  52. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  53. package/components/button/themes/icon-button/light/icon-button.base.css.js +2 -1
  54. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  55. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +12 -7
  56. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  57. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +4 -3
  58. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  59. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +6 -4
  60. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  61. package/components/button/themes/icon-button/light/icon-button.material.css.js +7 -4
  62. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  63. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js +2 -2
  64. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +1 -1
  65. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js +2 -2
  66. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  67. package/components/calendar/themes/calendar.base.css.js +1 -0
  68. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  69. package/components/calendar/themes/fluent/calendar.fluent.css.js +2 -1
  70. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  71. package/components/checkbox/checkbox-base.d.ts +8 -35
  72. package/components/checkbox/checkbox-base.js +28 -41
  73. package/components/checkbox/checkbox-base.js.map +1 -1
  74. package/components/checkbox/checkbox.d.ts +0 -1
  75. package/components/checkbox/checkbox.js +5 -16
  76. package/components/checkbox/checkbox.js.map +1 -1
  77. package/components/checkbox/switch.d.ts +0 -2
  78. package/components/checkbox/switch.js +4 -16
  79. package/components/checkbox/switch.js.map +1 -1
  80. package/components/checkbox/themes/light/checkbox.base.css.js +2 -1
  81. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  82. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +26 -9
  83. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  84. package/components/checkbox/themes/light/checkbox.fluent.css.js +31 -15
  85. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  86. package/components/checkbox/themes/light/checkbox.indigo.css.js +31 -13
  87. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  88. package/components/checkbox/themes/light/checkbox.material.css.js +24 -12
  89. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  90. package/components/checkbox/themes/light/switch.base.css.js +2 -1
  91. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  92. package/components/checkbox/themes/light/switch.bootstrap.css.js +12 -4
  93. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  94. package/components/checkbox/themes/light/switch.fluent.css.js +33 -15
  95. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  96. package/components/checkbox/themes/light/switch.indigo.css.js +26 -11
  97. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  98. package/components/checkbox/themes/light/switch.material.css.js +14 -7
  99. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  100. package/components/chip/themes/chip.base.css.js +0 -2
  101. package/components/chip/themes/chip.base.css.js.map +1 -1
  102. package/components/chip/themes/chip.bootstrap.css.js +2 -2
  103. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  104. package/components/chip/themes/chip.fluent.css.js +2 -2
  105. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  106. package/components/chip/themes/chip.indigo.css.js +2 -2
  107. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  108. package/components/chip/themes/chip.material.css.js +2 -2
  109. package/components/chip/themes/chip.material.css.js.map +1 -1
  110. package/components/combo/combo.d.ts +7 -32
  111. package/components/combo/combo.js +57 -49
  112. package/components/combo/combo.js.map +1 -1
  113. package/components/combo/controllers/selection.js +1 -3
  114. package/components/combo/controllers/selection.js.map +1 -1
  115. package/components/combo/themes/light/combo.bootstrap.css.js +27 -24
  116. package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -1
  117. package/components/combo/themes/light/combo.fluent.css.js +27 -24
  118. package/components/combo/themes/light/combo.fluent.css.js.map +1 -1
  119. package/components/combo/themes/light/combo.indigo.css.js +26 -23
  120. package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
  121. package/components/combo/themes/light/combo.material.css.js +32 -23
  122. package/components/combo/themes/light/combo.material.css.js.map +1 -1
  123. package/components/combo/themes/light/item/combo-item.base.css.js +0 -1
  124. package/components/combo/themes/light/item/combo-item.base.css.js.map +1 -1
  125. package/components/common/localization/validation-en.d.ts +10 -0
  126. package/components/common/localization/validation-en.js +10 -0
  127. package/components/common/localization/validation-en.js.map +1 -0
  128. package/components/common/mixins/form-associated-required.d.ts +16 -0
  129. package/components/common/mixins/form-associated-required.js +29 -0
  130. package/components/common/mixins/form-associated-required.js.map +1 -0
  131. package/components/common/mixins/form-associated.d.ts +92 -0
  132. package/components/common/mixins/form-associated.js +151 -0
  133. package/components/common/mixins/form-associated.js.map +1 -0
  134. package/components/common/util.d.ts +38 -0
  135. package/components/common/util.js +34 -0
  136. package/components/common/util.js.map +1 -1
  137. package/components/common/validators.d.ts +45 -0
  138. package/components/common/validators.js +54 -0
  139. package/components/common/validators.js.map +1 -0
  140. package/components/date-time-input/date-time-input.d.ts +30 -11
  141. package/components/date-time-input/date-time-input.js +147 -135
  142. package/components/date-time-input/date-time-input.js.map +1 -1
  143. package/components/date-time-input/date-util.d.ts +1 -0
  144. package/components/date-time-input/date-util.js +6 -3
  145. package/components/date-time-input/date-util.js.map +1 -1
  146. package/components/dialog/dialog.js +1 -1
  147. package/components/dialog/dialog.js.map +1 -1
  148. package/components/dialog/themes/light/dialog.base.css.js +1 -1
  149. package/components/dialog/themes/light/dialog.base.css.js.map +1 -1
  150. package/components/dropdown/dropdown-item.js +2 -6
  151. package/components/dropdown/dropdown-item.js.map +1 -1
  152. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
  153. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  154. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
  155. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  156. package/components/dropdown/themes/light/dropdown.indigo.css.js +1 -1
  157. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  158. package/components/dropdown/themes/light/dropdown.material.css.js +1 -1
  159. package/components/dropdown/themes/light/dropdown.material.css.js.map +1 -1
  160. package/components/dropdown/themes/light/group/dropdown-group.bootstrap.css.js +1 -1
  161. package/components/dropdown/themes/light/group/dropdown-group.bootstrap.css.js.map +1 -1
  162. package/components/dropdown/themes/light/group/dropdown-group.fluent.css.js +1 -1
  163. package/components/dropdown/themes/light/group/dropdown-group.fluent.css.js.map +1 -1
  164. package/components/dropdown/themes/light/group/dropdown-group.indigo.css.js +1 -1
  165. package/components/dropdown/themes/light/group/dropdown-group.indigo.css.js.map +1 -1
  166. package/components/dropdown/themes/light/group/dropdown-group.material.css.js +1 -1
  167. package/components/dropdown/themes/light/group/dropdown-group.material.css.js.map +1 -1
  168. package/components/dropdown/themes/light/header/dropdown-header.bootstrap.css.js +1 -1
  169. package/components/dropdown/themes/light/header/dropdown-header.bootstrap.css.js.map +1 -1
  170. package/components/dropdown/themes/light/header/dropdown-header.fluent.css.js +1 -1
  171. package/components/dropdown/themes/light/header/dropdown-header.fluent.css.js.map +1 -1
  172. package/components/dropdown/themes/light/header/dropdown-header.indigo.css.js +1 -1
  173. package/components/dropdown/themes/light/header/dropdown-header.indigo.css.js.map +1 -1
  174. package/components/dropdown/themes/light/header/dropdown-header.material.css.js +1 -1
  175. package/components/dropdown/themes/light/header/dropdown-header.material.css.js.map +1 -1
  176. package/components/dropdown/themes/light/item/dropdown-item.bootstrap.css.js +1 -1
  177. package/components/dropdown/themes/light/item/dropdown-item.bootstrap.css.js.map +1 -1
  178. package/components/dropdown/themes/light/item/dropdown-item.fluent.css.js +1 -1
  179. package/components/dropdown/themes/light/item/dropdown-item.fluent.css.js.map +1 -1
  180. package/components/dropdown/themes/light/item/dropdown-item.indigo.css.js +1 -1
  181. package/components/dropdown/themes/light/item/dropdown-item.indigo.css.js.map +1 -1
  182. package/components/dropdown/themes/light/item/dropdown-item.material.css.js +1 -1
  183. package/components/dropdown/themes/light/item/dropdown-item.material.css.js.map +1 -1
  184. package/components/expansion-panel/expansion-panel.js +1 -1
  185. package/components/expansion-panel/expansion-panel.js.map +1 -1
  186. package/components/form/form.d.ts +3 -0
  187. package/components/form/form.js.map +1 -1
  188. package/components/icon/icon.base.css.js +0 -8
  189. package/components/icon/icon.base.css.js.map +1 -1
  190. package/components/icon/light/icon.bootstrap.css.js +7 -1
  191. package/components/icon/light/icon.bootstrap.css.js.map +1 -1
  192. package/components/icon/light/icon.fluent.css.js +7 -1
  193. package/components/icon/light/icon.fluent.css.js.map +1 -1
  194. package/components/icon/light/icon.indigo.css.js +7 -1
  195. package/components/icon/light/icon.indigo.css.js.map +1 -1
  196. package/components/icon/light/icon.material.css.js +7 -1
  197. package/components/icon/light/icon.material.css.js.map +1 -1
  198. package/components/input/input-base.d.ts +10 -20
  199. package/components/input/input-base.js +19 -20
  200. package/components/input/input-base.js.map +1 -1
  201. package/components/input/input.d.ts +24 -15
  202. package/components/input/input.js +106 -48
  203. package/components/input/input.js.map +1 -1
  204. package/components/input/themes/light/input.base.css.js +0 -3
  205. package/components/input/themes/light/input.base.css.js.map +1 -1
  206. package/components/input/themes/light/input.bootstrap.css.js +7 -17
  207. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  208. package/components/input/themes/light/input.fluent.css.js +6 -19
  209. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  210. package/components/input/themes/light/input.indigo.css.js +16 -1
  211. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  212. package/components/input/themes/light/input.material.css.js +30 -11
  213. package/components/input/themes/light/input.material.css.js.map +1 -1
  214. package/components/list/themes/light/list-header.base.css.js +0 -32
  215. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  216. package/components/list/themes/light/list-item.base.css.js +1 -33
  217. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  218. package/components/list/themes/light/list-item.bootstrap.css.js +1 -1
  219. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  220. package/components/list/themes/light/list-item.fluent.css.js +1 -1
  221. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  222. package/components/list/themes/light/list-item.indigo.css.js +1 -1
  223. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  224. package/components/list/themes/light/list.base.css.js +1 -1
  225. package/components/list/themes/light/list.base.css.js.map +1 -1
  226. package/components/list/themes/light/list.bootstrap.css.js +1 -1
  227. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  228. package/components/mask-input/mask-input-base.d.ts +2 -9
  229. package/components/mask-input/mask-input-base.js +7 -12
  230. package/components/mask-input/mask-input-base.js.map +1 -1
  231. package/components/mask-input/mask-input.d.ts +5 -6
  232. package/components/mask-input/mask-input.js +42 -51
  233. package/components/mask-input/mask-input.js.map +1 -1
  234. package/components/mask-input/mask-parser.js +1 -0
  235. package/components/mask-input/mask-parser.js.map +1 -1
  236. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +2 -2
  237. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -1
  238. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +2 -2
  239. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -1
  240. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +0 -32
  241. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  242. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +1 -34
  243. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  244. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +1 -1
  245. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  246. package/components/navbar/themes/light/navbar.bootstrap.css.js +0 -32
  247. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  248. package/components/navbar/themes/light/navbar.fluent.css.js +0 -32
  249. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  250. package/components/navbar/themes/light/navbar.indigo.css.js +0 -32
  251. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  252. package/components/navbar/themes/light/navbar.material.css.js +0 -32
  253. package/components/navbar/themes/light/navbar.material.css.js.map +1 -1
  254. package/components/progress/themes/linear/linear.progress.base.css.js +1 -0
  255. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  256. package/components/progress/themes/linear/linear.progress.indigo.css.js +0 -32
  257. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  258. package/components/radio/radio.d.ts +13 -37
  259. package/components/radio/radio.js +135 -97
  260. package/components/radio/radio.js.map +1 -1
  261. package/components/radio/themes/light/radio.bootstrap.css.js +8 -36
  262. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  263. package/components/radio/themes/light/radio.fluent.css.js +0 -32
  264. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  265. package/components/radio/themes/light/radio.indigo.css.js +11 -37
  266. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  267. package/components/radio/themes/light/radio.material.css.js +1 -33
  268. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  269. package/components/radio-group/radio-group.d.ts +0 -4
  270. package/components/radio-group/radio-group.js +3 -54
  271. package/components/radio-group/radio-group.js.map +1 -1
  272. package/components/rating/dark/rating.fluent.css.d.ts +1 -0
  273. package/components/rating/dark/rating.fluent.css.js +3 -0
  274. package/components/rating/dark/rating.fluent.css.js.map +1 -0
  275. package/components/rating/rating-symbol.base.css.js +1 -1
  276. package/components/rating/rating-symbol.base.css.js.map +1 -1
  277. package/components/rating/rating.base.css.js +8 -4
  278. package/components/rating/rating.base.css.js.map +1 -1
  279. package/components/rating/rating.d.ts +10 -11
  280. package/components/rating/rating.fluent.css.js +13 -7
  281. package/components/rating/rating.fluent.css.js.map +1 -1
  282. package/components/rating/rating.js +19 -15
  283. package/components/rating/rating.js.map +1 -1
  284. package/components/select/select-item.d.ts +0 -2
  285. package/components/select/select-item.js +0 -3
  286. package/components/select/select-item.js.map +1 -1
  287. package/components/select/select.d.ts +7 -34
  288. package/components/select/select.js +27 -37
  289. package/components/select/select.js.map +1 -1
  290. package/components/select/themes/light/select.base.css.js +1 -0
  291. package/components/select/themes/light/select.base.css.js.map +1 -1
  292. package/components/select/themes/light/select.bootstrap.css.js +5 -37
  293. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  294. package/components/select/themes/light/select.fluent.css.js +5 -37
  295. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  296. package/components/select/themes/light/select.indigo.css.js +4 -36
  297. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  298. package/components/select/themes/light/select.material.css.js +14 -46
  299. package/components/select/themes/light/select.material.css.js.map +1 -1
  300. package/components/slider/slider.d.ts +4 -12
  301. package/components/slider/slider.js +16 -25
  302. package/components/slider/slider.js.map +1 -1
  303. package/components/slider/themes/light/slider.base.css.js +17 -8
  304. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  305. package/components/slider/themes/light/slider.fluent.css.js +6 -3
  306. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  307. package/components/slider/themes/light/slider.indigo.css.js +4 -1
  308. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  309. package/components/snackbar/snackbar.js +1 -1
  310. package/components/snackbar/snackbar.js.map +1 -1
  311. package/components/stepper/animations.d.ts +2 -0
  312. package/components/stepper/animations.js +22 -0
  313. package/components/stepper/animations.js.map +1 -0
  314. package/components/stepper/step.d.ts +17 -8
  315. package/components/stepper/step.js +29 -0
  316. package/components/stepper/step.js.map +1 -1
  317. package/components/stepper/stepper.d.ts +19 -3
  318. package/components/stepper/stepper.js +58 -7
  319. package/components/stepper/stepper.js.map +1 -1
  320. package/components/stepper/themes/step/light/step.base.css.js +44 -165
  321. package/components/stepper/themes/step/light/step.base.css.js.map +1 -1
  322. package/components/stepper/themes/step/light/step.bootstrap.css.js +116 -19
  323. package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -1
  324. package/components/stepper/themes/step/light/step.fluent.css.js +112 -12
  325. package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -1
  326. package/components/stepper/themes/step/light/step.indigo.css.js +112 -25
  327. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -1
  328. package/components/stepper/themes/step/light/step.material.css.js +112 -4
  329. package/components/stepper/themes/step/light/step.material.css.js.map +1 -1
  330. package/components/stepper/themes/stepper/stepper.base.css.js +2 -0
  331. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -1
  332. package/components/toast/toast.js +1 -1
  333. package/components/toast/toast.js.map +1 -1
  334. package/components/tree/themes/light/tree-item.base.css.js +0 -3
  335. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  336. package/components/tree/themes/light/tree-item.bootstrap.css.js +60 -3
  337. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  338. package/components/tree/themes/light/tree-item.fluent.css.js +58 -1
  339. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  340. package/components/tree/themes/light/tree-item.indigo.css.js +58 -1
  341. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  342. package/components/tree/themes/light/tree-item.material.css.d.ts +1 -0
  343. package/components/tree/themes/light/tree-item.material.css.js +58 -0
  344. package/components/tree/themes/light/tree-item.material.css.js.map +1 -0
  345. package/components/tree/tree-item.js +8 -6
  346. package/components/tree/tree-item.js.map +1 -1
  347. package/components/tree/tree.d.ts +0 -6
  348. package/components/tree/tree.js +0 -4
  349. package/components/tree/tree.js.map +1 -1
  350. package/components/tree/tree.navigation.js +3 -2
  351. package/components/tree/tree.navigation.js.map +1 -1
  352. package/custom-elements.json +798 -525
  353. package/package.json +3 -3
  354. package/themes/dark/bootstrap.css +274 -61
  355. package/themes/dark/fluent.css +291 -60
  356. package/themes/dark/indigo.css +508 -3
  357. package/themes/dark/material.css +244 -54
  358. package/themes/light/bootstrap.css +5 -2
  359. package/themes/light/fluent.css +5 -2
  360. package/themes/light/indigo.css +229 -2
  361. package/themes/light/material.css +5 -2
  362. package/vscode-html-custom-data.json +239 -286
  363. package/components/avatar/themes/dark/avatar.base.bootstrap.css.js.map +0 -1
  364. package/components/avatar/themes/light/avatar.base.css.js.map +0 -1
  365. package/components/common/types.d.ts +0 -1
  366. package/components/common/types.js +0 -2
  367. package/components/common/types.js.map +0 -1
  368. /package/components/avatar/themes/{light/avatar.base.css.d.ts → avatar.base.css.d.ts} +0 -0
  369. /package/components/avatar/themes/dark/{avatar.base.bootstrap.css.d.ts → avatar.bootstrap.css.d.ts} +0 -0
@@ -7,19 +7,30 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { LitElement } from 'lit';
8
8
  import { property, query, queryAssignedNodes, state } from 'lit/decorators.js';
9
9
  import { alternateName } from '../common/decorators/alternateName.js';
10
+ import { watch } from '../common/decorators/watch.js';
10
11
  import { blazorDeepImport } from '../common/decorators/blazorDeepImport.js';
11
12
  import { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';
12
13
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
13
- let IgcCheckboxBaseComponent = class IgcCheckboxBaseComponent extends EventEmitterMixin(LitElement) {
14
+ import { requiredBooleanValidator } from '../common/validators.js';
15
+ import { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';
16
+ let IgcCheckboxBaseComponent = class IgcCheckboxBaseComponent extends FormAssociatedRequiredMixin(EventEmitterMixin(LitElement)) {
14
17
  constructor() {
15
- super(...arguments);
18
+ super();
19
+ this.validators = [requiredBooleanValidator];
16
20
  this.focused = false;
17
21
  this.hideLabel = false;
18
- this.disabled = false;
19
22
  this.checked = false;
20
- this.required = false;
21
- this.invalid = false;
22
23
  this.labelPosition = 'after';
24
+ this.addEventListener('keyup', this.handleKeyUp);
25
+ }
26
+ checkedChanged() {
27
+ const value = this.value || 'on';
28
+ this.checked ? this.setFormValue(value, value) : this.setFormValue(null);
29
+ this.updateValidity();
30
+ this.setInvalidState();
31
+ }
32
+ handleChange() {
33
+ this.invalid = !this.checkValidity();
23
34
  }
24
35
  click() {
25
36
  this.input.click();
@@ -30,21 +41,16 @@ let IgcCheckboxBaseComponent = class IgcCheckboxBaseComponent extends EventEmitt
30
41
  blur() {
31
42
  this.input.blur();
32
43
  }
33
- reportValidity() {
34
- return this.input.reportValidity();
35
- }
36
- checkValidity() {
37
- return this.input.checkValidity();
38
- }
39
- setCustomValidity(message) {
40
- this.input.setCustomValidity(message);
41
- this.invalid = !this.input.checkValidity();
44
+ handleClick() {
45
+ this.checked = !this.checked;
46
+ this.emitEvent('igcChange', { detail: this.checked });
42
47
  }
43
48
  handleBlur() {
44
49
  this.emitEvent('igcBlur');
45
50
  this.focused = false;
46
51
  }
47
52
  handleFocus() {
53
+ this._dirty = true;
48
54
  this.emitEvent('igcFocus');
49
55
  }
50
56
  handleMouseDown(event) {
@@ -52,24 +58,13 @@ let IgcCheckboxBaseComponent = class IgcCheckboxBaseComponent extends EventEmitt
52
58
  this.input.focus();
53
59
  this.focused = false;
54
60
  }
55
- connectedCallback() {
56
- super.connectedCallback();
57
- this.addEventListener('keyup', this.handleKeyUp);
58
- }
59
- disconnectedCallback() {
60
- this.removeEventListener('keyup', this.handleKeyUp);
61
- super.disconnectedCallback();
62
- }
63
61
  handleKeyUp() {
64
62
  if (!this.focused) {
65
63
  this.focused = true;
66
64
  }
67
65
  }
68
- async firstUpdated() {
69
- if (this.label.length === 0) {
70
- this.hideLabel = true;
71
- }
72
- await this.updateComplete;
66
+ handleSlotChange() {
67
+ this.hideLabel = this.label.length < 1;
73
68
  }
74
69
  };
75
70
  __decorate([
@@ -84,31 +79,23 @@ __decorate([
84
79
  __decorate([
85
80
  state()
86
81
  ], IgcCheckboxBaseComponent.prototype, "hideLabel", void 0);
87
- __decorate([
88
- property()
89
- ], IgcCheckboxBaseComponent.prototype, "name", void 0);
90
82
  __decorate([
91
83
  property()
92
84
  ], IgcCheckboxBaseComponent.prototype, "value", void 0);
93
- __decorate([
94
- property({ type: Boolean, reflect: true })
95
- ], IgcCheckboxBaseComponent.prototype, "disabled", void 0);
96
85
  __decorate([
97
86
  property({ type: Boolean }),
98
87
  blazorTwoWayBind('igcChange', 'detail')
99
88
  ], IgcCheckboxBaseComponent.prototype, "checked", void 0);
100
- __decorate([
101
- property({ type: Boolean, reflect: true })
102
- ], IgcCheckboxBaseComponent.prototype, "required", void 0);
103
- __decorate([
104
- property({ type: Boolean, reflect: true })
105
- ], IgcCheckboxBaseComponent.prototype, "invalid", void 0);
106
89
  __decorate([
107
90
  property({ reflect: true, attribute: 'label-position' })
108
91
  ], IgcCheckboxBaseComponent.prototype, "labelPosition", void 0);
109
92
  __decorate([
110
- property({ reflect: true, attribute: 'aria-labelledby' })
111
- ], IgcCheckboxBaseComponent.prototype, "ariaLabelledby", void 0);
93
+ watch('checked')
94
+ ], IgcCheckboxBaseComponent.prototype, "checkedChanged", null);
95
+ __decorate([
96
+ watch('focused', { waitUntilFirstUpdate: true }),
97
+ watch('indeterminate', { waitUntilFirstUpdate: true })
98
+ ], IgcCheckboxBaseComponent.prototype, "handleChange", null);
112
99
  __decorate([
113
100
  alternateName('focusComponent')
114
101
  ], IgcCheckboxBaseComponent.prototype, "focus", null);
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-base.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox-base.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement } from 'lit';\nimport { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { alternateName } from '../common/decorators/alternateName.js';\nimport { blazorDeepImport } from '../common/decorators/blazorDeepImport.js';\nimport { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\n\nexport interface IgcCheckboxEventMap {\n igcChange: CustomEvent<boolean>;\n igcFocus: CustomEvent<void>;\n igcBlur: CustomEvent<void>;\n}\n\n@blazorDeepImport\nexport class IgcCheckboxBaseComponent extends EventEmitterMixin<\n IgcCheckboxEventMap,\n Constructor<LitElement>\n>(LitElement) {\n @query('input[type=\"checkbox\"]', true)\n protected input!: HTMLInputElement;\n\n @queryAssignedNodes({ flatten: true })\n protected label!: Array<Node>;\n\n @state()\n protected focused = false;\n\n @state()\n protected hideLabel = false;\n\n /**\n * The name attribute of the control.\n * @attr\n */\n @property()\n public name!: string;\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public value!: string;\n\n /**\n * Disables the control.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * The checked state of the control.\n * @attr\n */\n @property({ type: Boolean })\n @blazorTwoWayBind('igcChange', 'detail')\n public checked = false;\n\n /**\n * Makes the control a required field.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /**\n * Controls the validity of the control.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /**\n * The label position of the control.\n * @attr label-position\n */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n /** Sets the aria-labelledby attribute for the control. */\n @property({ reflect: true, attribute: 'aria-labelledby' })\n public ariaLabelledby!: string;\n\n /** Simulates a click on the control. */\n public override click() {\n this.input.click();\n }\n\n /** Sets focus on the control. */\n @alternateName('focusComponent')\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the control. */\n @alternateName('blurComponent')\n public override blur() {\n this.input.blur();\n }\n\n /** Checks for validity of the control and shows the browser message if it invalid. */\n public reportValidity() {\n return this.input.reportValidity();\n }\n\n /** Checks for validity of the control and emits the invalid event if it invalid. */\n public checkValidity() {\n return this.input.checkValidity();\n }\n\n /**\n * Sets a custom validation message for the control.\n * As long as `message` is not empty, the control is considered invalid.\n */\n public setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.invalid = !this.input.checkValidity();\n }\n\n protected handleBlur() {\n this.emitEvent('igcBlur');\n this.focused = false;\n }\n\n protected handleFocus() {\n this.emitEvent('igcFocus');\n }\n\n protected handleMouseDown(event: PointerEvent) {\n event.preventDefault();\n this.input.focus();\n this.focused = false;\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('keyup', this.handleKeyUp);\n }\n\n public override disconnectedCallback() {\n this.removeEventListener('keyup', this.handleKeyUp);\n super.disconnectedCallback();\n }\n\n protected handleKeyUp() {\n if (!this.focused) {\n this.focused = true;\n }\n }\n\n protected override async firstUpdated() {\n if (this.label.length === 0) {\n this.hideLabel = true;\n }\n\n await this.updateComplete;\n }\n}\n"]}
1
+ {"version":3,"file":"checkbox-base.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox-base.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement } from 'lit';\nimport { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { alternateName } from '../common/decorators/alternateName.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { blazorDeepImport } from '../common/decorators/blazorDeepImport.js';\nimport { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\n\nimport { Validator, requiredBooleanValidator } from '../common/validators.js';\nimport { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';\n\nexport interface IgcCheckboxEventMap {\n igcChange: CustomEvent<boolean>;\n igcFocus: CustomEvent<void>;\n igcBlur: CustomEvent<void>;\n}\n\n@blazorDeepImport\nexport class IgcCheckboxBaseComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<IgcCheckboxEventMap, Constructor<LitElement>>(LitElement)\n) {\n protected override validators: Validator<this>[] = [requiredBooleanValidator];\n\n @query('input[type=\"checkbox\"]', true)\n protected input!: HTMLInputElement;\n\n @queryAssignedNodes({ flatten: true })\n protected label!: Array<Node>;\n\n @state()\n protected focused = false;\n\n @state()\n protected hideLabel = false;\n\n /**\n * The value attribute of the control.\n * @attr\n */\n @property()\n public value!: string;\n\n /**\n * The checked state of the control.\n * @attr\n */\n @property({ type: Boolean })\n @blazorTwoWayBind('igcChange', 'detail')\n public checked = false;\n\n /**\n * The label position of the control.\n * @attr label-position\n */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n constructor() {\n super();\n this.addEventListener('keyup', this.handleKeyUp);\n }\n\n @watch('checked')\n protected checkedChanged() {\n const value = this.value || 'on';\n this.checked ? this.setFormValue(value, value) : this.setFormValue(null);\n this.updateValidity();\n this.setInvalidState();\n }\n\n @watch('focused', { waitUntilFirstUpdate: true })\n @watch('indeterminate', { waitUntilFirstUpdate: true })\n protected handleChange() {\n this.invalid = !this.checkValidity();\n }\n\n /** Simulates a click on the control. */\n public override click() {\n this.input.click();\n }\n\n /** Sets focus on the control. */\n @alternateName('focusComponent')\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the control. */\n @alternateName('blurComponent')\n public override blur() {\n this.input.blur();\n }\n\n protected handleClick() {\n this.checked = !this.checked;\n this.emitEvent('igcChange', { detail: this.checked });\n }\n\n protected handleBlur() {\n this.emitEvent('igcBlur');\n this.focused = false;\n }\n\n protected handleFocus() {\n this._dirty = true;\n this.emitEvent('igcFocus');\n }\n\n protected handleMouseDown(event: PointerEvent) {\n event.preventDefault();\n this.input.focus();\n this.focused = false;\n }\n\n protected handleKeyUp() {\n if (!this.focused) {\n this.focused = true;\n }\n }\n\n protected handleSlotChange() {\n this.hideLabel = this.label.length < 1;\n }\n}\n"]}
@@ -27,7 +27,6 @@ export default class IgcCheckboxComponent extends IgcCheckboxBaseComponent {
27
27
  */
28
28
  indeterminate: boolean;
29
29
  protected handleClick(): void;
30
- protected handleChange(): void;
31
30
  protected render(): import("lit-html").TemplateResult<1>;
32
31
  }
33
32
  declare global {
@@ -10,7 +10,6 @@ import { property } from 'lit/decorators.js';
10
10
  import { ifDefined } from 'lit/directives/if-defined.js';
11
11
  import { live } from 'lit/directives/live.js';
12
12
  import { themes } from '../../theming/theming-decorator.js';
13
- import { watch } from '../common/decorators/watch.js';
14
13
  import { createCounter, partNameMap } from '../common/util.js';
15
14
  import { IgcCheckboxBaseComponent } from './checkbox-base.js';
16
15
  import { styles } from './themes/light/checkbox.base.css.js';
@@ -26,14 +25,11 @@ let IgcCheckboxComponent = IgcCheckboxComponent_1 = class IgcCheckboxComponent e
26
25
  this.indeterminate = false;
27
26
  }
28
27
  handleClick() {
29
- this.checked = !this.checked;
30
28
  this.indeterminate = false;
31
- this.emitEvent('igcChange', { detail: this.checked });
32
- }
33
- handleChange() {
34
- this.invalid = !this.input.checkValidity();
29
+ super.handleClick();
35
30
  }
36
31
  render() {
32
+ const labelledBy = this.getAttribute('aria-labelledby');
37
33
  return html `
38
34
  <label
39
35
  part=${partNameMap({
@@ -57,9 +53,7 @@ let IgcCheckboxComponent = IgcCheckboxComponent_1 = class IgcCheckboxComponent e
57
53
  ? 'mixed'
58
54
  : this.checked}
59
55
  aria-disabled=${this.disabled ? 'true' : 'false'}
60
- aria-labelledby=${this.ariaLabelledby
61
- ? this.ariaLabelledby
62
- : this.labelId}
56
+ aria-labelledby=${labelledBy ? labelledBy : this.labelId}
63
57
  @click=${this.handleClick}
64
58
  @blur=${this.handleBlur}
65
59
  @focus=${this.handleFocus}
@@ -72,11 +66,11 @@ let IgcCheckboxComponent = IgcCheckboxComponent_1 = class IgcCheckboxComponent e
72
66
  </span>
73
67
  </span>
74
68
  <span
75
- .hidden="${this.hideLabel}"
69
+ .hidden=${this.hideLabel}
76
70
  part=${partNameMap({ label: true, checked: this.checked })}
77
71
  id=${this.labelId}
78
72
  >
79
- <slot></slot>
73
+ <slot @slotchange=${this.handleSlotChange}></slot>
80
74
  </span>
81
75
  </label>
82
76
  `;
@@ -88,11 +82,6 @@ IgcCheckboxComponent.increment = createCounter();
88
82
  __decorate([
89
83
  property({ type: Boolean, reflect: true })
90
84
  ], IgcCheckboxComponent.prototype, "indeterminate", void 0);
91
- __decorate([
92
- watch('checked', { waitUntilFirstUpdate: true }),
93
- watch('focused', { waitUntilFirstUpdate: true }),
94
- watch('indeterminate', { waitUntilFirstUpdate: true })
95
- ], IgcCheckboxComponent.prototype, "handleChange", null);
96
85
  IgcCheckboxComponent = IgcCheckboxComponent_1 = __decorate([
97
86
  themes({ material, bootstrap, fluent, indigo })
98
87
  ], IgcCheckboxComponent);
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { createCounter, partNameMap } from '../common/util.js';\nimport { IgcCheckboxBaseComponent } from './checkbox-base.js';\nimport { styles } from './themes/light/checkbox.base.css.js';\nimport { styles as bootstrap } from './themes/light/checkbox.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/checkbox.fluent.css.js';\nimport { styles as indigo } from './themes/light/checkbox.indigo.css.js';\nimport { styles as material } from './themes/light/checkbox.material.css.js';\n\n/**\n * A check box allowing single values to be selected/deselected.\n *\n * @element igc-checkbox\n *\n * @slot - The checkbox label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The base wrapper of the checkbox.\n * @csspart control - The checkbox control.\n * @csspart label - The checkbox label.\n * @csspart indicator - The checkbox icon.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcCheckboxComponent extends IgcCheckboxBaseComponent {\n public static readonly tagName = 'igc-checkbox';\n protected static styles = styles;\n\n private static readonly increment = createCounter();\n private inputId = `checkbox-${IgcCheckboxComponent.increment()}`;\n private labelId = `checkbox-label-${this.inputId}`;\n\n /**\n * Draws the checkbox in indeterminate state.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public indeterminate = false;\n\n protected handleClick() {\n this.checked = !this.checked;\n this.indeterminate = false;\n this.emitEvent('igcChange', { detail: this.checked });\n }\n\n @watch('checked', { waitUntilFirstUpdate: true })\n @watch('focused', { waitUntilFirstUpdate: true })\n @watch('indeterminate', { waitUntilFirstUpdate: true })\n protected handleChange() {\n this.invalid = !this.input.checkValidity();\n }\n\n protected override render() {\n return html`\n <label\n part=${partNameMap({\n base: true,\n checked: this.checked,\n focused: this.focused,\n })}\n for=${this.inputId}\n @pointerdown=${this.handleMouseDown}\n >\n <input\n id=${this.inputId}\n type=\"checkbox\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(this.checked)}\n .indeterminate=${live(this.indeterminate)}\n aria-checked=${this.indeterminate && !this.checked\n ? 'mixed'\n : this.checked}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${this.ariaLabelledby\n ? this.ariaLabelledby\n : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n <span part=${partNameMap({ control: true, checked: this.checked })}>\n <span part=${partNameMap({ indicator: true, checked: this.checked })}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M4.1,12.7 9,17.6 20.3,6.3\" />\n </svg>\n </span>\n </span>\n <span\n .hidden=\"${this.hideLabel}\"\n part=${partNameMap({ label: true, checked: this.checked })}\n id=${this.labelId}\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-checkbox': IgcCheckboxComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { createCounter, partNameMap } from '../common/util.js';\nimport { IgcCheckboxBaseComponent } from './checkbox-base.js';\nimport { styles } from './themes/light/checkbox.base.css.js';\nimport { styles as bootstrap } from './themes/light/checkbox.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/checkbox.fluent.css.js';\nimport { styles as indigo } from './themes/light/checkbox.indigo.css.js';\nimport { styles as material } from './themes/light/checkbox.material.css.js';\n\n/**\n * A check box allowing single values to be selected/deselected.\n *\n * @element igc-checkbox\n *\n * @slot - The checkbox label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The base wrapper of the checkbox.\n * @csspart control - The checkbox control.\n * @csspart label - The checkbox label.\n * @csspart indicator - The checkbox icon.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcCheckboxComponent extends IgcCheckboxBaseComponent {\n public static readonly tagName = 'igc-checkbox';\n protected static styles = styles;\n\n private static readonly increment = createCounter();\n private inputId = `checkbox-${IgcCheckboxComponent.increment()}`;\n private labelId = `checkbox-label-${this.inputId}`;\n\n /**\n * Draws the checkbox in indeterminate state.\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public indeterminate = false;\n\n protected override handleClick() {\n this.indeterminate = false;\n super.handleClick();\n }\n\n protected override render() {\n const labelledBy = this.getAttribute('aria-labelledby');\n\n return html`\n <label\n part=${partNameMap({\n base: true,\n checked: this.checked,\n focused: this.focused,\n })}\n for=${this.inputId}\n @pointerdown=${this.handleMouseDown}\n >\n <input\n id=${this.inputId}\n type=\"checkbox\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(this.checked)}\n .indeterminate=${live(this.indeterminate)}\n aria-checked=${this.indeterminate && !this.checked\n ? 'mixed'\n : this.checked}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${labelledBy ? labelledBy : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n <span part=${partNameMap({ control: true, checked: this.checked })}>\n <span part=${partNameMap({ indicator: true, checked: this.checked })}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M4.1,12.7 9,17.6 20.3,6.3\" />\n </svg>\n </span>\n </span>\n <span\n .hidden=${this.hideLabel}\n part=${partNameMap({ label: true, checked: this.checked })}\n id=${this.labelId}\n >\n <slot @slotchange=${this.handleSlotChange}></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-checkbox': IgcCheckboxComponent;\n }\n}\n"]}
@@ -21,8 +21,6 @@ export default class IgcSwitchComponent extends IgcCheckboxBaseComponent {
21
21
  private static readonly increment;
22
22
  private inputId;
23
23
  private labelId;
24
- private handleClick;
25
- protected handleChange(): void;
26
24
  protected render(): import("lit-html").TemplateResult<1>;
27
25
  }
28
26
  declare global {
@@ -9,7 +9,6 @@ import { html } from 'lit';
9
9
  import { ifDefined } from 'lit/directives/if-defined.js';
10
10
  import { live } from 'lit/directives/live.js';
11
11
  import { themes } from '../../theming/theming-decorator.js';
12
- import { watch } from '../common/decorators/watch.js';
13
12
  import { createCounter, partNameMap } from '../common/util.js';
14
13
  import { IgcCheckboxBaseComponent } from './checkbox-base.js';
15
14
  import { styles } from './themes/light/switch.base.css.js';
@@ -23,14 +22,8 @@ let IgcSwitchComponent = IgcSwitchComponent_1 = class IgcSwitchComponent extends
23
22
  this.inputId = `switch-${IgcSwitchComponent_1.increment()}`;
24
23
  this.labelId = `switch-label-${this.inputId}`;
25
24
  }
26
- handleClick() {
27
- this.checked = !this.checked;
28
- this.emitEvent('igcChange', { detail: this.checked });
29
- }
30
- handleChange() {
31
- this.invalid = !this.input.checkValidity();
32
- }
33
25
  render() {
26
+ const labelledBy = this.getAttribute('aria-labelledby');
34
27
  return html `
35
28
  <label
36
29
  part=${partNameMap({ base: true, checked: this.checked })}
@@ -47,9 +40,7 @@ let IgcSwitchComponent = IgcSwitchComponent_1 = class IgcSwitchComponent extends
47
40
  .checked=${live(this.checked)}
48
41
  aria-checked=${this.checked ? 'true' : 'false'}
49
42
  aria-disabled=${this.disabled ? 'true' : 'false'}
50
- aria-labelledby=${this.ariaLabelledby
51
- ? this.ariaLabelledby
52
- : this.labelId}
43
+ aria-labelledby=${labelledBy ? labelledBy : this.labelId}
53
44
  @click=${this.handleClick}
54
45
  @blur=${this.handleBlur}
55
46
  @focus=${this.handleFocus}
@@ -66,11 +57,11 @@ let IgcSwitchComponent = IgcSwitchComponent_1 = class IgcSwitchComponent extends
66
57
  ></span>
67
58
  </span>
68
59
  <span
69
- .hidden="${this.hideLabel}"
60
+ .hidden=${this.hideLabel}
70
61
  part=${partNameMap({ label: true, checked: this.checked })}
71
62
  id=${this.labelId}
72
63
  >
73
- <slot></slot>
64
+ <slot @slotchange=${this.handleSlotChange}></slot>
74
65
  </span>
75
66
  </label>
76
67
  `;
@@ -79,9 +70,6 @@ let IgcSwitchComponent = IgcSwitchComponent_1 = class IgcSwitchComponent extends
79
70
  IgcSwitchComponent.tagName = 'igc-switch';
80
71
  IgcSwitchComponent.styles = styles;
81
72
  IgcSwitchComponent.increment = createCounter();
82
- __decorate([
83
- watch('checked', { waitUntilFirstUpdate: true })
84
- ], IgcSwitchComponent.prototype, "handleChange", null);
85
73
  IgcSwitchComponent = IgcSwitchComponent_1 = __decorate([
86
74
  themes({ material, bootstrap, fluent, indigo })
87
75
  ], IgcSwitchComponent);
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/checkbox/switch.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { createCounter, partNameMap } from '../common/util.js';\nimport { IgcCheckboxBaseComponent } from './checkbox-base.js';\nimport { styles } from './themes/light/switch.base.css.js';\nimport { styles as bootstrap } from './themes/light/switch.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/switch.fluent.css.js';\nimport { styles as indigo } from './themes/light/switch.indigo.css.js';\nimport { styles as material } from './themes/light/switch.material.css.js';\n\n/**\n * Similar to a checkbox, a switch controls the state of a single setting on or off.\n *\n * @element igc-switch\n *\n * @slot - The switch label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The base wrapper of the switch.\n * @csspart control - The switch control.\n * @csspart thumb - The position indicator of the switch.\n * @csspart label - The switch label.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcSwitchComponent extends IgcCheckboxBaseComponent {\n public static readonly tagName = 'igc-switch';\n public static styles = styles;\n private static readonly increment = createCounter();\n\n private inputId = `switch-${IgcSwitchComponent.increment()}`;\n private labelId = `switch-label-${this.inputId}`;\n\n private handleClick() {\n this.checked = !this.checked;\n this.emitEvent('igcChange', { detail: this.checked });\n }\n\n @watch('checked', { waitUntilFirstUpdate: true })\n protected handleChange() {\n this.invalid = !this.input.checkValidity();\n }\n\n protected override render() {\n return html`\n <label\n part=${partNameMap({ base: true, checked: this.checked })}\n for=${this.inputId}\n @pointerdown=${this.handleMouseDown}\n >\n <input\n id=${this.inputId}\n type=\"checkbox\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(this.checked)}\n aria-checked=${this.checked ? 'true' : 'false'}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${this.ariaLabelledby\n ? this.ariaLabelledby\n : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n <span\n part=${partNameMap({\n control: true,\n checked: this.checked,\n focused: this.focused,\n })}\n >\n <span\n part=${partNameMap({ thumb: true, checked: this.checked })}\n ></span>\n </span>\n <span\n .hidden=\"${this.hideLabel}\"\n part=${partNameMap({ label: true, checked: this.checked })}\n id=${this.labelId}\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-switch': IgcSwitchComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/checkbox/switch.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAmB3E,IAAqB,kBAAkB,0BAAvC,MAAqB,kBAAmB,SAAQ,wBAAwB;IAAxE;;QAKU,YAAO,GAAG,UAAU,oBAAkB,CAAC,SAAS,EAAE,EAAE,CAAC;QACrD,YAAO,GAAG,gBAAgB,IAAI,CAAC,OAAO,EAAE,CAAC;IA+CnD,CAAC;IA7CoB,MAAM;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAExD,OAAO,IAAI,CAAA;;eAEA,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;cACnD,IAAI,CAAC,OAAO;uBACH,IAAI,CAAC,eAAe;;;eAG5B,IAAI,CAAC,OAAO;;iBAEV,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;kBACnB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;sBACjB,IAAI,CAAC,QAAQ;sBACb,IAAI,CAAC,QAAQ;qBACd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;yBACd,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;0BAC9B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;4BAC9B,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;mBAC/C,IAAI,CAAC,WAAW;kBACjB,IAAI,CAAC,UAAU;mBACd,IAAI,CAAC,WAAW;;;iBAGlB,WAAW,CAAC;YACjB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;;;mBAGO,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;;;;oBAIlD,IAAI,CAAC,SAAS;iBACjB,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;eACrD,IAAI,CAAC,OAAO;;8BAEG,IAAI,CAAC,gBAAgB;;;KAG9C,CAAC;IACJ,CAAC;;AAnDsB,0BAAO,GAAG,YAAY,AAAf,CAAgB;AAChC,yBAAM,GAAG,MAAM,AAAT,CAAU;AACN,4BAAS,GAAG,aAAa,EAAE,AAAlB,CAAmB;AAHjC,kBAAkB;IADtC,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GAC3B,kBAAkB,CAqDtC;eArDoB,kBAAkB","sourcesContent":["import { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { createCounter, partNameMap } from '../common/util.js';\nimport { IgcCheckboxBaseComponent } from './checkbox-base.js';\nimport { styles } from './themes/light/switch.base.css.js';\nimport { styles as bootstrap } from './themes/light/switch.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/switch.fluent.css.js';\nimport { styles as indigo } from './themes/light/switch.indigo.css.js';\nimport { styles as material } from './themes/light/switch.material.css.js';\n\n/**\n * Similar to a checkbox, a switch controls the state of a single setting on or off.\n *\n * @element igc-switch\n *\n * @slot - The switch label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The base wrapper of the switch.\n * @csspart control - The switch control.\n * @csspart thumb - The position indicator of the switch.\n * @csspart label - The switch label.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcSwitchComponent extends IgcCheckboxBaseComponent {\n public static readonly tagName = 'igc-switch';\n public static styles = styles;\n private static readonly increment = createCounter();\n\n private inputId = `switch-${IgcSwitchComponent.increment()}`;\n private labelId = `switch-label-${this.inputId}`;\n\n protected override render() {\n const labelledBy = this.getAttribute('aria-labelledby');\n\n return html`\n <label\n part=${partNameMap({ base: true, checked: this.checked })}\n for=${this.inputId}\n @pointerdown=${this.handleMouseDown}\n >\n <input\n id=${this.inputId}\n type=\"checkbox\"\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n .required=${this.required}\n .disabled=${this.disabled}\n .checked=${live(this.checked)}\n aria-checked=${this.checked ? 'true' : 'false'}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-labelledby=${labelledBy ? labelledBy : this.labelId}\n @click=${this.handleClick}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n />\n <span\n part=${partNameMap({\n control: true,\n checked: this.checked,\n focused: this.focused,\n })}\n >\n <span\n part=${partNameMap({ thumb: true, checked: this.checked })}\n ></span>\n </span>\n <span\n .hidden=${this.hideLabel}\n part=${partNameMap({ label: true, checked: this.checked })}\n id=${this.labelId}\n >\n <slot @slotchange=${this.handleSlotChange}></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-switch': IgcSwitchComponent;\n }\n}\n"]}
@@ -145,7 +145,8 @@ label {
145
145
  transform: rotate(45deg) scale(0.45) translateX(-0.25rem);
146
146
  }
147
147
 
148
- :host([disabled]) {
148
+ :host([disabled]),
149
+ :host(:disabled) {
149
150
  -webkit-user-select: none;
150
151
  -moz-user-select: none;
151
152
  -ms-user-select: none;
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.base.css.js","sourceRoot":"","sources":["../../../../../src/components/checkbox/themes/light/checkbox.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+JvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-family: var(--ig-font-family);\n}\n\ninput[type=checkbox] {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n border: none;\n clip: rect(0, 0, 0, 0);\n outline: 0;\n pointer-events: none;\n overflow: hidden;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n[part~=control] {\n --size: 1.25rem;\n position: relative;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n[part~=control]::after {\n position: absolute;\n content: \"\";\n left: 50%;\n top: 50%;\n -webkit-transform: translate(-50%, -50%);\n -ms-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n width: var(--size);\n height: var(--size);\n -webkit-transition: all 0.15s ease-in;\n transition: all 0.15s ease-in;\n}\n\n[part~=label] {\n display: inline-block;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n word-wrap: break-all;\n -webkit-transition: color 0.2s ease-in-out;\n transition: color 0.2s ease-in-out;\n}\n\n[part~=indicator] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n inset: 0;\n stroke-linecap: square;\n stroke-width: 3;\n stroke-dasharray: 24;\n stroke-dashoffset: 24;\n fill: none;\n opacity: 0;\n z-index: 1;\n -webkit-transform: scale(0.45);\n -ms-transform: scale(0.45);\n transform: scale(0.45);\n -webkit-transform-origin: center;\n -ms-transform-origin: center;\n transform-origin: center;\n}\n[part~=indicator] svg {\n width: 100%;\n height: 100%;\n}\n\nlabel {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n cursor: pointer;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n gap: 0.5rem;\n}\n\n[part=\"indicator checked\"] {\n -webkit-transition: all 0.2s ease-out;\n transition: all 0.2s ease-out;\n stroke-dashoffset: 0;\n opacity: 1;\n}\n\n:host([indeterminate]) [part~=indicator] {\n stroke-dashoffset: 41;\n opacity: 1;\n -webkit-transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n -ms-transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n}\n\n:host([disabled]) {\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: initial;\n pointer-events: none;\n}\n\n:host([label-position=before]) [part~=label] {\n -webkit-box-ordinal-group: 0;\n -ms-flex-order: -1;\n order: -1;\n}`;\n"]}
1
+ {"version":3,"file":"checkbox.base.css.js","sourceRoot":"","sources":["../../../../../src/components/checkbox/themes/light/checkbox.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgKvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-family: var(--ig-font-family);\n}\n\ninput[type=checkbox] {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n border: none;\n clip: rect(0, 0, 0, 0);\n outline: 0;\n pointer-events: none;\n overflow: hidden;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n[part~=control] {\n --size: 1.25rem;\n position: relative;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n[part~=control]::after {\n position: absolute;\n content: \"\";\n left: 50%;\n top: 50%;\n -webkit-transform: translate(-50%, -50%);\n -ms-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n width: var(--size);\n height: var(--size);\n -webkit-transition: all 0.15s ease-in;\n transition: all 0.15s ease-in;\n}\n\n[part~=label] {\n display: inline-block;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n word-wrap: break-all;\n -webkit-transition: color 0.2s ease-in-out;\n transition: color 0.2s ease-in-out;\n}\n\n[part~=indicator] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n inset: 0;\n stroke-linecap: square;\n stroke-width: 3;\n stroke-dasharray: 24;\n stroke-dashoffset: 24;\n fill: none;\n opacity: 0;\n z-index: 1;\n -webkit-transform: scale(0.45);\n -ms-transform: scale(0.45);\n transform: scale(0.45);\n -webkit-transform-origin: center;\n -ms-transform-origin: center;\n transform-origin: center;\n}\n[part~=indicator] svg {\n width: 100%;\n height: 100%;\n}\n\nlabel {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n cursor: pointer;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n gap: 0.5rem;\n}\n\n[part=\"indicator checked\"] {\n -webkit-transition: all 0.2s ease-out;\n transition: all 0.2s ease-out;\n stroke-dashoffset: 0;\n opacity: 1;\n}\n\n:host([indeterminate]) [part~=indicator] {\n stroke-dashoffset: 41;\n opacity: 1;\n -webkit-transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n -ms-transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n transform: rotate(45deg) scale(0.45) translateX(-0.25rem);\n}\n\n:host([disabled]),\n:host(:disabled) {\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: initial;\n pointer-events: none;\n}\n\n:host([label-position=before]) [part~=label] {\n -webkit-box-ordinal-group: 0;\n -ms-flex-order: -1;\n order: -1;\n}`;\n"]}
@@ -115,26 +115,32 @@ export const styles = css `:host {
115
115
  transform: rotate(45deg) translateX(-0.075rem) scale(0.7);
116
116
  }
117
117
 
118
- :host(:not([disabled])[invalid]) [part~=label] {
118
+ :host(:not([disabled])[invalid]) [part~=label],
119
+ :host(:not(:disabled)[invalid]) [part~=label] {
119
120
  color: var(--error-color);
120
121
  }
121
- :host(:not([disabled])[invalid]) [part~=control]::after {
122
+ :host(:not([disabled])[invalid]) [part~=control]::after,
123
+ :host(:not(:disabled)[invalid]) [part~=control]::after {
122
124
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);
123
125
  box-shadow: inset 0 0 0 0.0625rem var(--error-color);
124
126
  border-color: var(--error-color);
125
127
  }
126
- :host(:not([disabled])[invalid]) [part="control checked"]::after {
128
+ :host(:not([disabled])[invalid]) [part="control checked"]::after,
129
+ :host(:not(:disabled)[invalid]) [part="control checked"]::after {
127
130
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);
128
131
  box-shadow: inset 0 0 0 0.0625rem var(--error-color);
129
132
  background: var(--error-color);
130
133
  }
131
134
  :host(:not([disabled])[invalid]):focus-within [part~=control],
132
- :host(:not([disabled])[invalid]):focus-within [part="control checked"] {
135
+ :host(:not([disabled])[invalid]):focus-within [part="control checked"],
136
+ :host(:not(:disabled)[invalid]):focus-within [part~=control],
137
+ :host(:not(:disabled)[invalid]):focus-within [part="control checked"] {
133
138
  -webkit-box-shadow: 0 0 0 0.25rem var(--error-color);
134
139
  box-shadow: 0 0 0 0.25rem var(--error-color);
135
140
  }
136
141
 
137
- :host(:not([disabled])[invalid][indeterminate]) [part~=control]::after {
142
+ :host(:not([disabled])[invalid][indeterminate]) [part~=control]::after,
143
+ :host(:not(:disabled)[invalid][indeterminate]) [part~=control]::after {
138
144
  background: var(--error-color);
139
145
  }
140
146
 
@@ -150,21 +156,32 @@ export const styles = css `:host {
150
156
  }
151
157
 
152
158
  :host(:focus-within:not([disabled])[invalid]) [part~=control],
153
- :host(:not([disabled])[invalid]) [part~=focused] [part~=control] {
159
+ :host(:focus-within:not(:disabled)[invalid]) [part~=control],
160
+ :host(:not([disabled])[invalid]) [part~=focused] [part~=control],
161
+ :host(:not(:disabled)[invalid]) [part~=focused] [part~=control] {
154
162
  -webkit-box-shadow: 0 0 0 0.25rem var(--error-color-hover);
155
163
  box-shadow: 0 0 0 0.25rem var(--error-color-hover);
156
164
  }
157
165
 
158
- :host([disabled]) [part~=label] {
166
+ :host([disabled]) [part~=label],
167
+ :host(:disabled) [part~=label] {
159
168
  color: var(--disabled-color-label);
160
169
  }
161
- :host([disabled]) [part="control checked"]::after {
170
+ :host([disabled]) [part~=control]::after,
171
+ :host(:disabled) [part~=control]::after {
172
+ -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color-label);
173
+ box-shadow: inset 0 0 0 0.0625rem var(--disabled-color-label);
174
+ border-color: var(--disabled-color-label);
175
+ }
176
+ :host([disabled]) [part="control checked"]::after,
177
+ :host(:disabled) [part="control checked"]::after {
162
178
  background: var(--disabled-color);
163
179
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
164
180
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
165
181
  }
166
182
 
167
- :host([disabled][indeterminate]) [part=control]::after {
183
+ :host([disabled][indeterminate]) [part=control]::after,
184
+ :host(:disabled[indeterminate]) [part=control]::after {
168
185
  background: var(--disabled-color);
169
186
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
170
187
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/checkbox/themes/light/checkbox.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyKvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --tick-color: var(--ig-checkbox-tick-color, hsla(var(--ig-gray-50), var(--ig-gray-a)));\n --tick-color-hover: var(--ig-checkbox-tick-color-hover, hsla(var(--ig-gray-50), var(--ig-gray-a)));\n --label-color: var(--ig-checkbox-label-color, hsla(var(--ig-gray-900), var(--ig-gray-a)));\n --empty-color: var(--ig-checkbox-empty-color, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --fill-color: var(--ig-checkbox-fill-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --fill-color-hover: var(--ig-checkbox-fill-color-hover, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --disabled-color: var(--ig-checkbox-disabled-color, hsla(var(--ig-primary-200), var(--ig-primary-a)));\n --disabled-indeterminate-color: var(--ig-checkbox-disabled-indeterminate-color, hsla(var(--ig-secondary-100), var(--ig-secondary-a)));\n --disabled-color-label: var(--ig-checkbox-disabled-color-label, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n --error-color: var(--ig-checkbox-error-color, hsla(var(--ig-error-500), var(--ig-error-a)));\n --error-color-hover: var(--ig-checkbox-error-color-hover, hsla(var(--ig-error-100), var(--ig-error-a)));\n --border-radius: var(--ig-checkbox-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.4) * 0.625rem), 0.625rem));\n --border-radius-ripple: var(--ig-checkbox-border-radius-ripple, 0.25rem, 0rem, 1.5rem);\n --focus-outline-color: var(--ig-checkbox-focus-outline-color, hsla(var(--ig-primary-200), var(--ig-primary-a)));\n --ripple-radius: var(--ig-checkbox-ripple-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));\n}\n\n[part~=control] {\n --size: 1rem;\n border-radius: var(--ripple-radius);\n width: var(--size);\n height: var(--size);\n min-width: var(--size);\n -webkit-transition: background-color 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out;\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n}\n[part~=control]::after {\n border-radius: var(--border-radius);\n width: inherit;\n height: inherit;\n min-width: inherit;\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--empty-color);\n box-shadow: inset 0 0 0 0.0625rem var(--empty-color);\n -webkit-transition: none;\n transition: none;\n}\n\n[part~=indicator] {\n stroke-width: 3;\n -webkit-transform: scale(0.7);\n -ms-transform: scale(0.7);\n transform: scale(0.7);\n -webkit-transition: none;\n transition: none;\n stroke: white;\n}\n\n[part~=label] {\n font-family: var(--ig-body-2-font-family, var(--ig-font-family));\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n -webkit-transition: none;\n transition: none;\n color: var(--label-color);\n}\n\n[part=\"control checked\"]::after {\n background: var(--fill-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n\n:host([indeterminate]) [part~=control]::after {\n background: var(--fill-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n:host([indeterminate]) [part~=indicator] {\n stroke-dashoffset: 41;\n opacity: 1;\n -webkit-transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n -ms-transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n}\n\n:host(:not([disabled])[invalid]) [part~=label] {\n color: var(--error-color);\n}\n:host(:not([disabled])[invalid]) [part~=control]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n border-color: var(--error-color);\n}\n:host(:not([disabled])[invalid]) [part=\"control checked\"]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n background: var(--error-color);\n}\n:host(:not([disabled])[invalid]):focus-within [part~=control],\n:host(:not([disabled])[invalid]):focus-within [part=\"control checked\"] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--error-color);\n box-shadow: 0 0 0 0.25rem var(--error-color);\n}\n\n:host(:not([disabled])[invalid][indeterminate]) [part~=control]::after {\n background: var(--error-color);\n}\n\n:host(:focus-within) [part~=control],\n[part~=focused] [part~=control] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--focus-outline-color);\n box-shadow: 0 0 0 0.25rem var(--focus-outline-color);\n}\n:host(:focus-within) [part~=control]::after,\n[part~=focused] [part~=control]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n\n:host(:focus-within:not([disabled])[invalid]) [part~=control],\n:host(:not([disabled])[invalid]) [part~=focused] [part~=control] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--error-color-hover);\n box-shadow: 0 0 0 0.25rem var(--error-color-hover);\n}\n\n:host([disabled]) [part~=label] {\n color: var(--disabled-color-label);\n}\n:host([disabled]) [part=\"control checked\"]::after {\n background: var(--disabled-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n}\n\n:host([disabled][indeterminate]) [part=control]::after {\n background: var(--disabled-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n}`;\n"]}
1
+ {"version":3,"file":"checkbox.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/checkbox/themes/light/checkbox.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0LvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --tick-color: var(--ig-checkbox-tick-color, hsla(var(--ig-gray-50), var(--ig-gray-a)));\n --tick-color-hover: var(--ig-checkbox-tick-color-hover, hsla(var(--ig-gray-50), var(--ig-gray-a)));\n --label-color: var(--ig-checkbox-label-color, hsla(var(--ig-gray-900), var(--ig-gray-a)));\n --empty-color: var(--ig-checkbox-empty-color, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --fill-color: var(--ig-checkbox-fill-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --fill-color-hover: var(--ig-checkbox-fill-color-hover, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --disabled-color: var(--ig-checkbox-disabled-color, hsla(var(--ig-primary-200), var(--ig-primary-a)));\n --disabled-indeterminate-color: var(--ig-checkbox-disabled-indeterminate-color, hsla(var(--ig-secondary-100), var(--ig-secondary-a)));\n --disabled-color-label: var(--ig-checkbox-disabled-color-label, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n --error-color: var(--ig-checkbox-error-color, hsla(var(--ig-error-500), var(--ig-error-a)));\n --error-color-hover: var(--ig-checkbox-error-color-hover, hsla(var(--ig-error-100), var(--ig-error-a)));\n --border-radius: var(--ig-checkbox-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.4) * 0.625rem), 0.625rem));\n --border-radius-ripple: var(--ig-checkbox-border-radius-ripple, 0.25rem, 0rem, 1.5rem);\n --focus-outline-color: var(--ig-checkbox-focus-outline-color, hsla(var(--ig-primary-200), var(--ig-primary-a)));\n --ripple-radius: var(--ig-checkbox-ripple-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.1666666667) * 1.5rem), 1.5rem));\n}\n\n[part~=control] {\n --size: 1rem;\n border-radius: var(--ripple-radius);\n width: var(--size);\n height: var(--size);\n min-width: var(--size);\n -webkit-transition: background-color 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out;\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n}\n[part~=control]::after {\n border-radius: var(--border-radius);\n width: inherit;\n height: inherit;\n min-width: inherit;\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--empty-color);\n box-shadow: inset 0 0 0 0.0625rem var(--empty-color);\n -webkit-transition: none;\n transition: none;\n}\n\n[part~=indicator] {\n stroke-width: 3;\n -webkit-transform: scale(0.7);\n -ms-transform: scale(0.7);\n transform: scale(0.7);\n -webkit-transition: none;\n transition: none;\n stroke: white;\n}\n\n[part~=label] {\n font-family: var(--ig-body-2-font-family, var(--ig-font-family));\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n -webkit-transition: none;\n transition: none;\n color: var(--label-color);\n}\n\n[part=\"control checked\"]::after {\n background: var(--fill-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n\n:host([indeterminate]) [part~=control]::after {\n background: var(--fill-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n:host([indeterminate]) [part~=indicator] {\n stroke-dashoffset: 41;\n opacity: 1;\n -webkit-transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n -ms-transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n transform: rotate(45deg) translateX(-0.075rem) scale(0.7);\n}\n\n:host(:not([disabled])[invalid]) [part~=label],\n:host(:not(:disabled)[invalid]) [part~=label] {\n color: var(--error-color);\n}\n:host(:not([disabled])[invalid]) [part~=control]::after,\n:host(:not(:disabled)[invalid]) [part~=control]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n border-color: var(--error-color);\n}\n:host(:not([disabled])[invalid]) [part=\"control checked\"]::after,\n:host(:not(:disabled)[invalid]) [part=\"control checked\"]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n box-shadow: inset 0 0 0 0.0625rem var(--error-color);\n background: var(--error-color);\n}\n:host(:not([disabled])[invalid]):focus-within [part~=control],\n:host(:not([disabled])[invalid]):focus-within [part=\"control checked\"],\n:host(:not(:disabled)[invalid]):focus-within [part~=control],\n:host(:not(:disabled)[invalid]):focus-within [part=\"control checked\"] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--error-color);\n box-shadow: 0 0 0 0.25rem var(--error-color);\n}\n\n:host(:not([disabled])[invalid][indeterminate]) [part~=control]::after,\n:host(:not(:disabled)[invalid][indeterminate]) [part~=control]::after {\n background: var(--error-color);\n}\n\n:host(:focus-within) [part~=control],\n[part~=focused] [part~=control] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--focus-outline-color);\n box-shadow: 0 0 0 0.25rem var(--focus-outline-color);\n}\n:host(:focus-within) [part~=control]::after,\n[part~=focused] [part~=control]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n box-shadow: inset 0 0 0 0.0625rem var(--fill-color);\n}\n\n:host(:focus-within:not([disabled])[invalid]) [part~=control],\n:host(:focus-within:not(:disabled)[invalid]) [part~=control],\n:host(:not([disabled])[invalid]) [part~=focused] [part~=control],\n:host(:not(:disabled)[invalid]) [part~=focused] [part~=control] {\n -webkit-box-shadow: 0 0 0 0.25rem var(--error-color-hover);\n box-shadow: 0 0 0 0.25rem var(--error-color-hover);\n}\n\n:host([disabled]) [part~=label],\n:host(:disabled) [part~=label] {\n color: var(--disabled-color-label);\n}\n:host([disabled]) [part~=control]::after,\n:host(:disabled) [part~=control]::after {\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color-label);\n box-shadow: inset 0 0 0 0.0625rem var(--disabled-color-label);\n border-color: var(--disabled-color-label);\n}\n:host([disabled]) [part=\"control checked\"]::after,\n:host(:disabled) [part=\"control checked\"]::after {\n background: var(--disabled-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n}\n\n:host([disabled][indeterminate]) [part=control]::after,\n:host(:disabled[indeterminate]) [part=control]::after {\n background: var(--disabled-color);\n -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);\n}`;\n"]}
@@ -46,6 +46,7 @@ export const styles = css `:host {
46
46
  --border-radius: var(--ig-checkbox-border-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.2) * 0.625rem), 0.625rem));
47
47
  --border-radius-ripple: var(--ig-checkbox-border-radius-ripple, 0.125rem, 0rem, 1.5rem);
48
48
  --focus-outline-color: var(--ig-checkbox-focus-outline-color, hsla(var(--ig-gray-800), var(--ig-gray-a)));
49
+ --ripple-radius: var(--ig-checkbox-ripple-radius, clamp(0rem, calc(var(--ig-radius-factor, 0.0833333333) * 1.5rem), 1.5rem));
49
50
  }
50
51
 
51
52
  [part~=control] {
@@ -179,26 +180,32 @@ export const styles = css `:host {
179
180
  background: var(--error-color-hover);
180
181
  }
181
182
 
182
- :host(:not([disabled])[invalid][indeterminate]) [part~=control]::before {
183
+ :host(:not([disabled])[invalid][indeterminate]) [part~=control]::before,
184
+ :host(:not(:disabled)[invalid][indeterminate]) [part~=control]::before {
183
185
  background: var(--error-color);
184
186
  }
185
- :host(:not([disabled])[invalid][indeterminate]) [part~=control]::after {
187
+ :host(:not([disabled])[invalid][indeterminate]) [part~=control]::after,
188
+ :host(:not(:disabled)[invalid][indeterminate]) [part~=control]::after {
186
189
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color);
187
190
  box-shadow: inset 0 0 0 0.0625rem var(--error-color);
188
191
  background: transparent;
189
192
  }
190
- :host(:not([disabled])[invalid][indeterminate]):hover [part~=control]::before {
193
+ :host(:not([disabled])[invalid][indeterminate]):hover [part~=control]::before,
194
+ :host(:not(:disabled)[invalid][indeterminate]):hover [part~=control]::before {
191
195
  background: var(--error-color-hover);
192
196
  }
193
- :host(:not([disabled])[invalid][indeterminate]):hover [part~=control]::after {
197
+ :host(:not([disabled])[invalid][indeterminate]):hover [part~=control]::after,
198
+ :host(:not(:disabled)[invalid][indeterminate]):hover [part~=control]::after {
194
199
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color-hover);
195
200
  box-shadow: inset 0 0 0 0.0625rem var(--error-color-hover);
196
201
  background: transparent;
197
202
  }
198
- :host(:not([disabled])[invalid][indeterminate]):focus-within [part~=control]::before {
203
+ :host(:not([disabled])[invalid][indeterminate]):focus-within [part~=control]::before,
204
+ :host(:not(:disabled)[invalid][indeterminate]):focus-within [part~=control]::before {
199
205
  background: var(--error-color-hover);
200
206
  }
201
- :host(:not([disabled])[invalid][indeterminate]):focus-within [part~=control]::after {
207
+ :host(:not([disabled])[invalid][indeterminate]):focus-within [part~=control]::after,
208
+ :host(:not(:disabled)[invalid][indeterminate]):focus-within [part~=control]::after {
202
209
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--error-color-hover);
203
210
  box-shadow: inset 0 0 0 0.0625rem var(--error-color-hover);
204
211
  background: transparent;
@@ -224,38 +231,47 @@ export const styles = css `:host {
224
231
  height: calc(100% + (0.125rem * 2));
225
232
  }
226
233
 
227
- :host([disabled]) [part~=label] {
234
+ :host([disabled]) [part~=label],
235
+ :host(:disabled) [part~=label] {
228
236
  color: var(--disabled-color-label);
229
237
  }
230
- :host([disabled]) [part~=control]::after {
238
+ :host([disabled]) [part~=control]::after,
239
+ :host(:disabled) [part~=control]::after {
231
240
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
232
241
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
233
242
  }
234
- :host([disabled]) [part="control checked"]::after {
243
+ :host([disabled]) [part="control checked"]::after,
244
+ :host(:disabled) [part="control checked"]::after {
235
245
  background: var(--disabled-color);
236
246
  }
237
247
 
238
- :host([disabled][indeterminate]) [part~=control]::before {
248
+ :host([disabled][indeterminate]) [part~=control]::before,
249
+ :host(:disabled[indeterminate]) [part~=control]::before {
239
250
  background: var(--disabled-color);
240
251
  }
241
- :host([disabled][indeterminate]) [part~=control]::after {
252
+ :host([disabled][indeterminate]) [part~=control]::after,
253
+ :host(:disabled[indeterminate]) [part~=control]::after {
242
254
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
243
255
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
244
256
  background: transparent;
245
257
  }
246
258
 
247
- :host([disabled][invalid]) [part~=control]::after {
259
+ :host([disabled][invalid]) [part~=control]::after,
260
+ :host(:disabled[invalid]) [part~=control]::after {
248
261
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
249
262
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
250
263
  }
251
- :host([disabled][invalid]) [part="control checked"]::after {
264
+ :host([disabled][invalid]) [part="control checked"]::after,
265
+ :host(:disabled[invalid]) [part="control checked"]::after {
252
266
  background: var(--disabled-color);
253
267
  }
254
268
 
255
- :host([disabled][invalid][indeterminate]) [part~=control]::before {
269
+ :host([disabled][invalid][indeterminate]) [part~=control]::before,
270
+ :host(:disabled[invalid][indeterminate]) [part~=control]::before {
256
271
  background: var(--disabled-color);
257
272
  }
258
- :host([disabled][invalid][indeterminate]) [part~=control]::after {
273
+ :host([disabled][invalid][indeterminate]) [part~=control]::after,
274
+ :host(:disabled[invalid][indeterminate]) [part~=control]::after {
259
275
  -webkit-box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
260
276
  box-shadow: inset 0 0 0 0.0625rem var(--disabled-color);
261
277
  background: transparent;