igniteui-webcomponents 6.1.2 → 6.2.1

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 (502) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/LICENSE +1 -1
  3. package/README.md +13 -1
  4. package/components/accordion/accordion.js +1 -4
  5. package/components/accordion/accordion.js.map +1 -1
  6. package/components/accordion/themes/accordion.base.css.js +1 -1
  7. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  8. package/components/banner/themes/banner.base.css.js +1 -1
  9. package/components/banner/themes/banner.base.css.js.map +1 -1
  10. package/components/banner/themes/shared/banner.bootstrap.css.js +1 -1
  11. package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
  12. package/components/banner/themes/shared/banner.fluent.css.js +1 -1
  13. package/components/banner/themes/shared/banner.fluent.css.js.map +1 -1
  14. package/components/banner/themes/shared/banner.indigo.css.js +1 -1
  15. package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
  16. package/components/banner/themes/shared/banner.material.css.js +1 -1
  17. package/components/banner/themes/shared/banner.material.css.js.map +1 -1
  18. package/components/button/themes/button/button.base.css.js +1 -1
  19. package/components/button/themes/button/button.base.css.js.map +1 -1
  20. package/components/button/themes/button/shared/button.common.css.js +1 -1
  21. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  22. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  23. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  24. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  25. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  26. package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
  27. package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
  28. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
  29. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
  30. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
  31. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
  32. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
  33. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
  34. package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
  35. package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
  36. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  37. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  38. package/components/button-group/themes/shared/button/button.common.css.js +1 -1
  39. package/components/button-group/themes/shared/button/button.common.css.js.map +1 -1
  40. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  41. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  42. package/components/calendar/calendar.d.ts +1 -1
  43. package/components/calendar/days-view/days-view.js +1 -3
  44. package/components/calendar/days-view/days-view.js.map +1 -1
  45. package/components/calendar/months-view/months-view.js +1 -3
  46. package/components/calendar/months-view/months-view.js.map +1 -1
  47. package/components/calendar/themes/calendar.base.css.js +1 -1
  48. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  49. package/components/calendar/themes/days-view.base.css.js +1 -1
  50. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  51. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
  52. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
  53. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  54. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  55. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  56. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  57. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
  58. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js.map +1 -1
  59. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
  60. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
  61. package/components/calendar/themes/shared/material/calendar.material.css.js +1 -1
  62. package/components/calendar/themes/shared/material/calendar.material.css.js.map +1 -1
  63. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  64. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  65. package/components/calendar/years-view/years-view.js +1 -3
  66. package/components/calendar/years-view/years-view.js.map +1 -1
  67. package/components/card/themes/card.actions.base.css.js +1 -1
  68. package/components/card/themes/card.actions.base.css.js.map +1 -1
  69. package/components/card/themes/card.content.base.css.js +1 -1
  70. package/components/card/themes/card.content.base.css.js.map +1 -1
  71. package/components/card/themes/card.header.base.css.js +1 -1
  72. package/components/card/themes/card.header.base.css.js.map +1 -1
  73. package/components/card/themes/content.js +7 -0
  74. package/components/card/themes/content.js.map +1 -1
  75. package/components/card/themes/shared/actions/card.actions.bootstrap.css.js +1 -1
  76. package/components/card/themes/shared/actions/card.actions.bootstrap.css.js.map +1 -1
  77. package/components/card/themes/shared/actions/card.actions.indigo.css.js +1 -1
  78. package/components/card/themes/shared/actions/card.actions.indigo.css.js.map +1 -1
  79. package/components/card/themes/shared/container/card.bootstrap.css.js +1 -1
  80. package/components/card/themes/shared/container/card.bootstrap.css.js.map +1 -1
  81. package/components/card/themes/shared/container/card.indigo.css.js +1 -1
  82. package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
  83. package/components/card/themes/shared/content/card.content.bootstrap.css.js +1 -1
  84. package/components/card/themes/shared/content/card.content.bootstrap.css.js.map +1 -1
  85. package/components/card/themes/shared/content/card.content.indigo.css.d.ts +1 -0
  86. package/components/card/themes/shared/content/card.content.indigo.css.js +3 -0
  87. package/components/card/themes/shared/content/card.content.indigo.css.js.map +1 -0
  88. package/components/card/themes/shared/header/card.header.fluent.css.js +1 -1
  89. package/components/card/themes/shared/header/card.header.fluent.css.js.map +1 -1
  90. package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
  91. package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
  92. package/components/carousel/carousel-indicator.d.ts +1 -1
  93. package/components/carousel/carousel-indicator.js.map +1 -1
  94. package/components/carousel/carousel-slide.d.ts +3 -3
  95. package/components/carousel/carousel-slide.js +7 -13
  96. package/components/carousel/carousel-slide.js.map +1 -1
  97. package/components/carousel/carousel.d.ts +39 -38
  98. package/components/carousel/carousel.js +160 -156
  99. package/components/carousel/carousel.js.map +1 -1
  100. package/components/carousel/themes/carousel.base.css.js +1 -1
  101. package/components/carousel/themes/carousel.base.css.js.map +1 -1
  102. package/components/carousel/themes/shared/carousel.indigo.css.js +1 -1
  103. package/components/carousel/themes/shared/carousel.indigo.css.js.map +1 -1
  104. package/components/checkbox/checkbox-base.d.ts +3 -5
  105. package/components/checkbox/checkbox-base.js +15 -21
  106. package/components/checkbox/checkbox-base.js.map +1 -1
  107. package/components/checkbox/checkbox.d.ts +3 -4
  108. package/components/checkbox/checkbox.js +18 -17
  109. package/components/checkbox/checkbox.js.map +1 -1
  110. package/components/checkbox/switch.d.ts +0 -1
  111. package/components/checkbox/switch.js +7 -10
  112. package/components/checkbox/switch.js.map +1 -1
  113. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
  114. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
  115. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
  116. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
  117. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js +1 -1
  118. package/components/checkbox/themes/dark/switch/switch.bootstrap.css.js.map +1 -1
  119. package/components/checkbox/themes/dark/switch/switch.fluent.css.js +1 -1
  120. package/components/checkbox/themes/dark/switch/switch.fluent.css.js.map +1 -1
  121. package/components/checkbox/themes/dark/switch/switch.indigo.css.js +1 -1
  122. package/components/checkbox/themes/dark/switch/switch.indigo.css.js.map +1 -1
  123. package/components/checkbox/themes/dark/switch/switch.material.css.js +1 -1
  124. package/components/checkbox/themes/dark/switch/switch.material.css.js.map +1 -1
  125. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js +1 -1
  126. package/components/checkbox/themes/light/switch/switch.bootstrap.css.js.map +1 -1
  127. package/components/checkbox/themes/light/switch/switch.fluent.css.js +1 -1
  128. package/components/checkbox/themes/light/switch/switch.fluent.css.js.map +1 -1
  129. package/components/checkbox/themes/light/switch/switch.indigo.css.js +1 -1
  130. package/components/checkbox/themes/light/switch/switch.indigo.css.js.map +1 -1
  131. package/components/checkbox/themes/light/switch/switch.material.css.js +1 -1
  132. package/components/checkbox/themes/light/switch/switch.material.css.js.map +1 -1
  133. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  134. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  135. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js +1 -1
  136. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js.map +1 -1
  137. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  138. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  139. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  140. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  141. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  142. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  143. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  144. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  145. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  146. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  147. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  148. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  149. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  150. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  151. package/components/chip/chip.d.ts +11 -11
  152. package/components/chip/chip.js +61 -65
  153. package/components/chip/chip.js.map +1 -1
  154. package/components/chip/themes/chip.base.css.js +1 -1
  155. package/components/chip/themes/chip.base.css.js.map +1 -1
  156. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  157. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  158. package/components/combo/combo.d.ts +3 -3
  159. package/components/combo/combo.js +12 -6
  160. package/components/combo/combo.js.map +1 -1
  161. package/components/combo/controllers/navigation.js +1 -1
  162. package/components/combo/controllers/navigation.js.map +1 -1
  163. package/components/combo/themes/combo-item.base.css.js +1 -1
  164. package/components/combo/themes/combo-item.base.css.js.map +1 -1
  165. package/components/combo/themes/combo.base.css.js +1 -1
  166. package/components/combo/themes/combo.base.css.js.map +1 -1
  167. package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
  168. package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
  169. package/components/combo/themes/shared/combo.common.css.js +1 -1
  170. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  171. package/components/combo/themes/shared/combo.fluent.css.js +1 -1
  172. package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
  173. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  174. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  175. package/components/combo/themes/shared/combo.material.css.js +1 -1
  176. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  177. package/components/common/controllers/internals.d.ts +66 -2
  178. package/components/common/controllers/internals.js +21 -0
  179. package/components/common/controllers/internals.js.map +1 -1
  180. package/components/common/controllers/key-bindings.js +4 -3
  181. package/components/common/controllers/key-bindings.js.map +1 -1
  182. package/components/common/controllers/slot.d.ts +87 -0
  183. package/components/common/controllers/slot.js +75 -0
  184. package/components/common/controllers/slot.js.map +1 -0
  185. package/components/common/mixins/forms/associated.d.ts +1 -1
  186. package/components/common/mixins/forms/associated.js +91 -36
  187. package/components/common/mixins/forms/associated.js.map +1 -1
  188. package/components/common/mixins/forms/form-transformers.d.ts +21 -0
  189. package/components/common/mixins/forms/form-transformers.js +64 -0
  190. package/components/common/mixins/forms/form-transformers.js.map +1 -0
  191. package/components/common/mixins/forms/form-value.d.ts +7 -36
  192. package/components/common/mixins/forms/form-value.js +2 -64
  193. package/components/common/mixins/forms/form-value.js.map +1 -1
  194. package/components/common/mixins/forms/types.d.ts +19 -10
  195. package/components/common/mixins/forms/types.js +2 -1
  196. package/components/common/mixins/forms/types.js.map +1 -1
  197. package/components/common/util.d.ts +20 -0
  198. package/components/common/util.js +59 -1
  199. package/components/common/util.js.map +1 -1
  200. package/components/date-picker/date-picker.d.ts +1 -3
  201. package/components/date-picker/date-picker.js +13 -15
  202. package/components/date-picker/date-picker.js.map +1 -1
  203. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  204. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  205. package/components/date-picker/themes/date-picker.base.css.js +1 -1
  206. package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
  207. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  208. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  209. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  210. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  211. package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
  212. package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
  213. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  214. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  215. package/components/date-picker/themes/shared/date-picker.material.css.js +1 -1
  216. package/components/date-picker/themes/shared/date-picker.material.css.js.map +1 -1
  217. package/components/date-range-picker/date-range-picker.base.css.js +1 -1
  218. package/components/date-range-picker/date-range-picker.base.css.js.map +1 -1
  219. package/components/date-range-picker/date-range-picker.d.ts +2 -4
  220. package/components/date-range-picker/date-range-picker.js +19 -27
  221. package/components/date-range-picker/date-range-picker.js.map +1 -1
  222. package/components/date-range-picker/predefined-ranges-area.base.css.js +1 -1
  223. package/components/date-range-picker/predefined-ranges-area.base.css.js.map +1 -1
  224. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
  225. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
  226. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
  227. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
  228. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
  229. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
  230. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
  231. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
  232. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
  233. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
  234. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js +1 -1
  235. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js.map +1 -1
  236. package/components/date-time-input/date-time-input.d.ts +1 -2
  237. package/components/date-time-input/date-time-input.js +8 -8
  238. package/components/date-time-input/date-time-input.js.map +1 -1
  239. package/components/dialog/dialog.d.ts +23 -25
  240. package/components/dialog/dialog.js +108 -115
  241. package/components/dialog/dialog.js.map +1 -1
  242. package/components/dialog/themes/dark/dialog.bootstrap.css.js +1 -1
  243. package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -1
  244. package/components/dialog/themes/dialog.base.css.js +1 -1
  245. package/components/dialog/themes/dialog.base.css.js.map +1 -1
  246. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  247. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  248. package/components/dialog/themes/shared/dialog.common.css.js +1 -1
  249. package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
  250. package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
  251. package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
  252. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  253. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  254. package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
  255. package/components/dropdown/themes/dropdown-group.base.css.js.map +1 -1
  256. package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
  257. package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
  258. package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
  259. package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
  260. package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js +1 -1
  261. package/components/dropdown/themes/shared/group/dropdown-group.fluent.css.js.map +1 -1
  262. package/components/dropdown/themes/shared/header/dropdown-header.common.css.js +1 -1
  263. package/components/dropdown/themes/shared/header/dropdown-header.common.css.js.map +1 -1
  264. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
  265. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
  266. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
  267. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
  268. package/components/expansion-panel/expansion-panel.d.ts +12 -14
  269. package/components/expansion-panel/expansion-panel.js +43 -57
  270. package/components/expansion-panel/expansion-panel.js.map +1 -1
  271. package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
  272. package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
  273. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
  274. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
  275. package/components/file-input/file-input.d.ts +1 -7
  276. package/components/file-input/file-input.js +13 -21
  277. package/components/file-input/file-input.js.map +1 -1
  278. package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
  279. package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
  280. package/components/file-input/themes/shared/file-input.material.css.js +1 -1
  281. package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
  282. package/components/input/input.d.ts +1 -8
  283. package/components/input/input.js +16 -23
  284. package/components/input/input.js.map +1 -1
  285. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  286. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  287. package/components/input/themes/shared/input.common.css.js +1 -1
  288. package/components/input/themes/shared/input.common.css.js.map +1 -1
  289. package/components/input/themes/shared/input.fluent.css.js +1 -1
  290. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  291. package/components/input/themes/shared/input.indigo.css.js +1 -1
  292. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  293. package/components/input/themes/shared/input.material.css.js +1 -1
  294. package/components/input/themes/shared/input.material.css.js.map +1 -1
  295. package/components/list/themes/header.base.css.js +1 -1
  296. package/components/list/themes/header.base.css.js.map +1 -1
  297. package/components/list/themes/item.base.css.js +1 -1
  298. package/components/list/themes/item.base.css.js.map +1 -1
  299. package/components/list/themes/shared/header/list-header.indigo.css.js +1 -1
  300. package/components/list/themes/shared/header/list-header.indigo.css.js.map +1 -1
  301. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  302. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  303. package/components/mask-input/mask-input-base.js +1 -0
  304. package/components/mask-input/mask-input-base.js.map +1 -1
  305. package/components/mask-input/mask-input.d.ts +2 -3
  306. package/components/mask-input/mask-input.js +5 -8
  307. package/components/mask-input/mask-input.js.map +1 -1
  308. package/components/nav-drawer/nav-drawer-item.d.ts +3 -4
  309. package/components/nav-drawer/nav-drawer-item.js +15 -18
  310. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  311. package/components/nav-drawer/nav-drawer.d.ts +1 -2
  312. package/components/nav-drawer/nav-drawer.js +9 -11
  313. package/components/nav-drawer/nav-drawer.js.map +1 -1
  314. package/components/nav-drawer/themes/container.base.css.js +1 -1
  315. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  316. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js +1 -1
  317. package/components/nav-drawer/themes/shared/container/nav-drawer.bootstrap.css.js.map +1 -1
  318. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  319. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  320. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js +1 -1
  321. package/components/nav-drawer/themes/shared/container/nav-drawer.indigo.css.js.map +1 -1
  322. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js +1 -1
  323. package/components/nav-drawer/themes/shared/container/nav-drawer.material.css.js.map +1 -1
  324. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js +1 -1
  325. package/components/nav-drawer/themes/shared/header-item/header-item.bootstrap.css.js.map +1 -1
  326. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js +1 -1
  327. package/components/nav-drawer/themes/shared/header-item/header-item.fluent.css.js.map +1 -1
  328. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
  329. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
  330. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js +1 -1
  331. package/components/nav-drawer/themes/shared/header-item/header-item.material.css.js.map +1 -1
  332. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js +1 -1
  333. package/components/nav-drawer/themes/shared/item/item.bootstrap.css.js.map +1 -1
  334. package/components/nav-drawer/themes/shared/item/item.fluent.css.js +1 -1
  335. package/components/nav-drawer/themes/shared/item/item.fluent.css.js.map +1 -1
  336. package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
  337. package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
  338. package/components/nav-drawer/themes/shared/item/item.material.css.js +1 -1
  339. package/components/nav-drawer/themes/shared/item/item.material.css.js.map +1 -1
  340. package/components/navbar/themes/navbar.base.css.js +1 -1
  341. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  342. package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
  343. package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
  344. package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
  345. package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
  346. package/components/popover/popover.d.ts +17 -16
  347. package/components/popover/popover.js +81 -91
  348. package/components/popover/popover.js.map +1 -1
  349. package/components/progress/base.d.ts +8 -8
  350. package/components/progress/base.js +19 -23
  351. package/components/progress/base.js.map +1 -1
  352. package/components/progress/circular-gradient.js.map +1 -1
  353. package/components/progress/circular-progress.d.ts +3 -4
  354. package/components/progress/circular-progress.js +15 -18
  355. package/components/progress/circular-progress.js.map +1 -1
  356. package/components/progress/linear-progress.d.ts +1 -0
  357. package/components/progress/linear-progress.js +5 -1
  358. package/components/progress/linear-progress.js.map +1 -1
  359. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
  360. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
  361. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
  362. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
  363. package/components/radio/radio.d.ts +3 -5
  364. package/components/radio/radio.js +33 -31
  365. package/components/radio/radio.js.map +1 -1
  366. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  367. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  368. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  369. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  370. package/components/radio/themes/shared/radio.common.css.js +1 -1
  371. package/components/radio/themes/shared/radio.common.css.js.map +1 -1
  372. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  373. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  374. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  375. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  376. package/components/radio/themes/shared/radio.material.css.js +1 -1
  377. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  378. package/components/radio-group/radio-group.d.ts +4 -4
  379. package/components/radio-group/radio-group.js +24 -21
  380. package/components/radio-group/radio-group.js.map +1 -1
  381. package/components/radio-group/themes/radio-group.base.css.js +1 -1
  382. package/components/radio-group/themes/radio-group.base.css.js.map +1 -1
  383. package/components/radio-group/themes/shared/radio-group.bootstrap.css.js +1 -1
  384. package/components/radio-group/themes/shared/radio-group.bootstrap.css.js.map +1 -1
  385. package/components/radio-group/themes/shared/radio-group.fluent.css.js +1 -1
  386. package/components/radio-group/themes/shared/radio-group.fluent.css.js.map +1 -1
  387. package/components/radio-group/themes/shared/radio-group.indigo.css.js +1 -1
  388. package/components/radio-group/themes/shared/radio-group.indigo.css.js.map +1 -1
  389. package/components/radio-group/themes/shared/radio-group.material.css.js +1 -1
  390. package/components/radio-group/themes/shared/radio-group.material.css.js.map +1 -1
  391. package/components/rating/rating.d.ts +1 -2
  392. package/components/rating/rating.js +4 -4
  393. package/components/rating/rating.js.map +1 -1
  394. package/components/rating/themes/rating.base.css.js +1 -1
  395. package/components/rating/themes/rating.base.css.js.map +1 -1
  396. package/components/rating/themes/shared/rating.indigo.css.js +1 -1
  397. package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
  398. package/components/resize-container/resize-container.d.ts +1 -1
  399. package/components/select/select.d.ts +35 -38
  400. package/components/select/select.js +138 -147
  401. package/components/select/select.js.map +1 -1
  402. package/components/select/themes/dark/select.bootstrap.css.js +1 -1
  403. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
  404. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  405. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  406. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  407. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  408. package/components/select/themes/shared/select.common.css.js +1 -1
  409. package/components/select/themes/shared/select.common.css.js.map +1 -1
  410. package/components/select/themes/shared/select.fluent.css.js +1 -1
  411. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  412. package/components/select/themes/shared/select.indigo.css.js +1 -1
  413. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  414. package/components/select/themes/shared/select.material.css.js +1 -1
  415. package/components/select/themes/shared/select.material.css.js.map +1 -1
  416. package/components/slider/slider-base.js +0 -1
  417. package/components/slider/slider-base.js.map +1 -1
  418. package/components/slider/slider-label.js.map +1 -1
  419. package/components/slider/slider.d.ts +1 -2
  420. package/components/slider/slider.js +5 -2
  421. package/components/slider/slider.js.map +1 -1
  422. package/components/slider/themes/shared/slider.common.css.js +1 -1
  423. package/components/slider/themes/shared/slider.common.css.js.map +1 -1
  424. package/components/slider/themes/slider.base.css.js +1 -1
  425. package/components/slider/themes/slider.base.css.js.map +1 -1
  426. package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
  427. package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
  428. package/components/snackbar/themes/snackbar.base.css.js +1 -1
  429. package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
  430. package/components/stepper/step.d.ts +1 -1
  431. package/components/tabs/tabs.js +0 -1
  432. package/components/tabs/tabs.js.map +1 -1
  433. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  434. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  435. package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
  436. package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
  437. package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
  438. package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
  439. package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
  440. package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
  441. package/components/textarea/textarea.d.ts +14 -21
  442. package/components/textarea/textarea.js +66 -90
  443. package/components/textarea/textarea.js.map +1 -1
  444. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  445. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  446. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  447. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  448. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  449. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  450. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  451. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  452. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  453. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  454. package/components/textarea/themes/textarea.base.css.js +1 -1
  455. package/components/textarea/themes/textarea.base.css.js.map +1 -1
  456. package/components/tile-manager/position.js +2 -1
  457. package/components/tile-manager/position.js.map +1 -1
  458. package/components/tile-manager/resize-state.js +1 -1
  459. package/components/tile-manager/resize-state.js.map +1 -1
  460. package/components/tile-manager/tile.d.ts +8 -12
  461. package/components/tile-manager/tile.js +16 -37
  462. package/components/tile-manager/tile.js.map +1 -1
  463. package/components/toast/themes/shared/toast.bootstrap.css.js +1 -1
  464. package/components/toast/themes/shared/toast.bootstrap.css.js.map +1 -1
  465. package/components/toast/themes/shared/toast.common.css.js +1 -1
  466. package/components/toast/themes/shared/toast.common.css.js.map +1 -1
  467. package/components/toast/themes/shared/toast.fluent.css.js +1 -1
  468. package/components/toast/themes/shared/toast.fluent.css.js.map +1 -1
  469. package/components/toast/themes/toast.base.css.js +1 -1
  470. package/components/toast/themes/toast.base.css.js.map +1 -1
  471. package/components/tooltip/themes/tooltip.base.css.js +1 -1
  472. package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
  473. package/components/tree/themes/item.base.css.js +1 -1
  474. package/components/tree/themes/item.base.css.js.map +1 -1
  475. package/components/tree/themes/shared/item.common.css.js +1 -1
  476. package/components/tree/themes/shared/item.common.css.js.map +1 -1
  477. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  478. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  479. package/components/tree/themes/shared/item.material.css.js +1 -1
  480. package/components/tree/themes/shared/item.material.css.js.map +1 -1
  481. package/components/tree/tree.js +3 -1
  482. package/components/tree/tree.js.map +1 -1
  483. package/components/tree/tree.navigation.js +3 -3
  484. package/components/tree/tree.navigation.js.map +1 -1
  485. package/components/tree/tree.selection.js +6 -2
  486. package/components/tree/tree.selection.js.map +1 -1
  487. package/components/validation-container/validation-container.d.ts +2 -1
  488. package/components/validation-container/validation-container.js +19 -14
  489. package/components/validation-container/validation-container.js.map +1 -1
  490. package/custom-elements.json +9456 -6460
  491. package/igniteui-webcomponents.css-data.json +1 -1
  492. package/igniteui-webcomponents.html-data.json +1 -1
  493. package/package.json +1 -1
  494. package/themes/dark/bootstrap.css +1 -1
  495. package/themes/dark/fluent.css +1 -1
  496. package/themes/dark/indigo.css +1 -1
  497. package/themes/dark/material.css +1 -1
  498. package/themes/light/bootstrap.css +1 -1
  499. package/themes/light/fluent.css +1 -1
  500. package/themes/light/indigo.css +1 -1
  501. package/themes/light/material.css +1 -1
  502. package/web-types.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,gfAAgf,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{box-shadow:var(--ig-elevation-0);padding:0 .5rem}[part=base]{padding-inline:.25rem}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);line-height:normal;margin:0}`;\n"]}
1
+ {"version":3,"file":"navbar.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,usCAAusC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{box-shadow:var(--ig-elevation-0);padding:0 max(var(--is-large, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}[part=base]{padding-inline:max(var(--is-large, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom);line-height:normal;margin:0}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{min-height:3.5rem;box-shadow:var(--ig-elevation-0)}:host [name=start]::slotted(*),:host [name=end]::slotted(*){margin:initial}[part=end]{gap:.5rem}[part=base]{gap:1rem}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}::slotted(igc-icon){--size: rem(16px);padding:.375rem;margin:0}::slotted(igc-avatar){--ig-size: 2}`;
2
+ export const styles = css `:host{min-height:3.5rem;box-shadow:var(--ig-elevation-0)}:host [name=start]::slotted(*),:host [name=end]::slotted(*){margin:initial}[part=end]{gap:.5rem}[part=base]{gap:1rem}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}::slotted(igc-icon){--size: rem(16px);padding:max(var(--is-large, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-large, var(--ig-spacing, var(--ig-spacing))),var(--is-medium, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-medium, var(--ig-spacing, var(--ig-spacing))),var(--is-small, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-small, var(--ig-spacing, var(--ig-spacing))));margin:0}::slotted(igc-avatar){--ig-size: 2}`;
3
3
  //# sourceMappingURL=navbar.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2oBAA2oB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{min-height:3.5rem;box-shadow:var(--ig-elevation-0)}:host [name=start]::slotted(*),:host [name=end]::slotted(*){margin:initial}[part=end]{gap:.5rem}[part=base]{gap:1rem}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}::slotted(igc-icon){--size: rem(16px);padding:.375rem;margin:0}::slotted(igc-avatar){--ig-size: 2}`;\n"]}
1
+ {"version":3,"file":"navbar.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/navbar/themes/shared/navbar.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,o9BAAo9B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{min-height:3.5rem;box-shadow:var(--ig-elevation-0)}:host [name=start]::slotted(*),:host [name=end]::slotted(*){margin:initial}[part=end]{gap:.5rem}[part=base]{gap:1rem}::slotted(*){font-family:var(--ig-h5-font-family, var(--ig-font-family));font-size:var(--ig-h5-font-size);font-weight:var(--ig-h5-font-weight);font-style:var(--ig-h5-font-style);line-height:var(--ig-h5-line-height);letter-spacing:var(--ig-h5-letter-spacing);text-transform:var(--ig-h5-text-transform);margin-top:var(--ig-h5-margin-top);margin-bottom:var(--ig-h5-margin-bottom)}::slotted(igc-icon){--size: rem(16px);padding:max(var(--is-large, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-large, var(--ig-spacing, var(--ig-spacing))),var(--is-medium, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-medium, var(--ig-spacing, var(--ig-spacing))),var(--is-small, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-small, var(--ig-spacing, var(--ig-spacing))));margin:0}::slotted(igc-avatar){--ig-size: 2}`;\n"]}
@@ -1,4 +1,4 @@
1
- import { LitElement } from 'lit';
1
+ import { LitElement, type PropertyValues } from 'lit';
2
2
  /**
3
3
  * Describes the preferred placement of a toggle component.
4
4
  */
@@ -14,11 +14,12 @@ export type PopoverPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bot
14
14
  export default class IgcPopoverComponent extends LitElement {
15
15
  static readonly tagName = "igc-popover";
16
16
  static styles: import("lit").CSSResult;
17
+ private static _oppositeArrowSide;
17
18
  static register(): void;
18
- private dispose?;
19
- private target?;
20
- private _container;
21
- private _anchors;
19
+ private _dispose?;
20
+ private _target?;
21
+ private readonly _slots;
22
+ private readonly _container;
22
23
  /**
23
24
  * Pass an IDREF or an DOM element reference to use as the
24
25
  * anchor target for the floating element.
@@ -65,20 +66,20 @@ export default class IgcPopoverComponent extends LitElement {
65
66
  * Virtual padding for the resolved overflow detection offsets in pixels.
66
67
  */
67
68
  shiftPadding: number;
68
- protected anchorChange(): void;
69
- protected openChange(): void;
70
- protected floatingPropChange(): void;
71
- connectedCallback(): Promise<void>;
69
+ protected update(properties: PropertyValues<this>): void;
70
+ /** @internal */
71
+ connectedCallback(): void;
72
+ /** @internal */
72
73
  disconnectedCallback(): void;
73
- protected show(): void;
74
- protected hide(): Promise<void>;
75
- private _showPopover;
76
- private _hidePopover;
77
- private _createMiddleware;
74
+ private _handleSlotChange;
75
+ private _setOpenState;
76
+ private _setPopoverState;
77
+ private _setDispose;
78
+ private _clearDispose;
78
79
  private _updateState;
80
+ private _createMiddleware;
79
81
  private _updatePosition;
80
- private _positionArrow;
81
- private _anchorSlotChange;
82
+ private _updateArrowPosition;
82
83
  protected render(): import("lit-html").TemplateResult<1>;
83
84
  }
84
85
  declare global {
@@ -6,14 +6,18 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { arrow, autoUpdate, computePosition, flip, inline, limitShift, offset, shift, size, } from '@floating-ui/dom';
8
8
  import { html, LitElement } from 'lit';
9
- import { property, query, queryAssignedElements } from 'lit/decorators.js';
10
- import { watch } from '../common/decorators/watch.js';
9
+ import { property, query } from 'lit/decorators.js';
10
+ import { addSlotController, setSlots, } from '../common/controllers/slot.js';
11
11
  import { registerComponent } from '../common/definitions/register.js';
12
- import { first, getElementByIdFromRoot, isEmpty, isString, roundByDPR, } from '../common/util.js';
12
+ import { first, getElementByIdFromRoot, isString, roundByDPR, setStyles, } from '../common/util.js';
13
13
  import { styles } from './themes/light/popover.base.css.js';
14
14
  class IgcPopoverComponent extends LitElement {
15
15
  constructor() {
16
16
  super(...arguments);
17
+ this._slots = addSlotController(this, {
18
+ slots: setSlots('anchor'),
19
+ onChange: this._handleSlotChange,
20
+ });
17
21
  this.arrow = null;
18
22
  this.arrowOffset = 0;
19
23
  this.inline = false;
@@ -28,56 +32,74 @@ class IgcPopoverComponent extends LitElement {
28
32
  static register() {
29
33
  registerComponent(IgcPopoverComponent);
30
34
  }
31
- anchorChange() {
32
- const newTarget = isString(this.anchor)
33
- ? getElementByIdFromRoot(this, this.anchor)
34
- : this.anchor;
35
- if (newTarget) {
36
- this.target = newTarget;
37
- this._updateState();
35
+ update(properties) {
36
+ if (properties.has('anchor')) {
37
+ const target = isString(this.anchor)
38
+ ? getElementByIdFromRoot(this, this.anchor)
39
+ : this.anchor;
40
+ if (target) {
41
+ this._target = target;
42
+ }
43
+ }
44
+ if (this.hasUpdated && properties.has('open')) {
45
+ this._setOpenState(this.open);
38
46
  }
39
- }
40
- openChange() {
41
- this.open ? this.show() : this.hide();
42
- }
43
- floatingPropChange() {
44
47
  this._updateState();
48
+ super.update(properties);
45
49
  }
46
- async connectedCallback() {
50
+ connectedCallback() {
47
51
  super.connectedCallback();
48
- await this.updateComplete;
49
- if (this.open) {
50
- this.show();
51
- }
52
+ this.updateComplete.then(() => {
53
+ this._setOpenState(this.open);
54
+ });
52
55
  }
53
56
  disconnectedCallback() {
54
- this.hide();
55
57
  super.disconnectedCallback();
58
+ this._setOpenState(false);
59
+ }
60
+ _handleSlotChange({ isDefault, }) {
61
+ if (isDefault) {
62
+ return;
63
+ }
64
+ const possibleTarget = first(this._slots.getAssignedElements('anchor', { flatten: true }));
65
+ if (this.anchor || !possibleTarget) {
66
+ return;
67
+ }
68
+ this._target = possibleTarget;
69
+ this._updateState();
70
+ }
71
+ _setOpenState(state) {
72
+ state ? this._setDispose() : this._clearDispose();
73
+ this._setPopoverState(state);
74
+ }
75
+ _setPopoverState(open) {
76
+ if (!this._target) {
77
+ return;
78
+ }
79
+ open ? this._container?.showPopover() : this._container?.hidePopover();
56
80
  }
57
- show() {
58
- if (!this.target) {
81
+ _setDispose() {
82
+ if (!this._target) {
59
83
  return;
60
84
  }
61
- this._showPopover();
62
- this.dispose = autoUpdate(this.target, this._container, this._updatePosition.bind(this));
85
+ this._dispose = autoUpdate(this._target, this._container, this._updatePosition.bind(this));
63
86
  }
64
- async hide() {
65
- this._hidePopover();
87
+ _clearDispose() {
66
88
  return new Promise((resolve) => {
67
- this.dispose?.();
68
- this.dispose = undefined;
89
+ this._dispose?.();
90
+ this._dispose = undefined;
69
91
  resolve();
70
92
  });
71
93
  }
72
- _showPopover() {
73
- this._container?.showPopover();
74
- }
75
- _hidePopover() {
76
- this._container?.hidePopover();
94
+ async _updateState() {
95
+ if (this.open) {
96
+ await this._clearDispose();
97
+ this._setDispose();
98
+ }
77
99
  }
78
100
  _createMiddleware() {
79
101
  const middleware = [];
80
- const styles = this._container.style;
102
+ const container = this._container;
81
103
  if (this.offset) {
82
104
  middleware.push(offset(this.offset));
83
105
  }
@@ -98,67 +120,49 @@ class IgcPopoverComponent extends LitElement {
98
120
  }
99
121
  if (this.sameWidth) {
100
122
  middleware.push(size({
101
- apply: ({ rects }) => {
102
- Object.assign(styles, { width: `${rects.reference.width}px` });
103
- },
123
+ apply: ({ rects }) => setStyles(container, { width: `${rects.reference.width}px` }),
104
124
  }));
105
125
  }
106
126
  else {
107
- Object.assign(styles, { width: '' });
127
+ setStyles(container, { width: '' });
108
128
  }
109
129
  return middleware;
110
130
  }
111
- async _updateState() {
112
- if (this.open) {
113
- await this.hide();
114
- this.show();
115
- }
116
- }
117
131
  async _updatePosition() {
118
- if (!(this.open && this.target)) {
132
+ if (!(this.open && this._target)) {
119
133
  return;
120
134
  }
121
- const { x, y, middlewareData, placement } = await computePosition(this.target, this._container, {
135
+ const { x, y, middlewareData, placement } = await computePosition(this._target, this._container, {
122
136
  placement: this.placement ?? 'bottom-start',
123
137
  middleware: this._createMiddleware(),
124
138
  strategy: 'absolute',
125
139
  });
126
- Object.assign(this._container.style, {
127
- left: 0,
128
- top: 0,
140
+ setStyles(this._container, {
141
+ left: '0',
142
+ top: '0',
129
143
  transform: `translate(${roundByDPR(x)}px,${roundByDPR(y)}px)`,
130
144
  });
131
- this._positionArrow(placement, middlewareData);
145
+ this._updateArrowPosition(placement, middlewareData);
132
146
  }
133
- _positionArrow(placement, data) {
147
+ _updateArrowPosition(placement, data) {
134
148
  if (!(data.arrow && this.arrow)) {
135
149
  return;
136
150
  }
137
151
  const { x, y } = data.arrow;
152
+ const arrow = this.arrow;
153
+ const offset = this.arrowOffset;
138
154
  const currentPlacement = first(placement.split('-'));
139
- const staticSide = {
140
- top: 'bottom',
141
- right: 'left',
142
- bottom: 'top',
143
- left: 'right',
144
- }[currentPlacement];
145
- this.arrow.part = currentPlacement;
146
- Object.assign(this.arrow.style, {
147
- left: x != null ? `${roundByDPR(x + this.arrowOffset)}px` : '',
148
- top: y != null ? `${roundByDPR(y + this.arrowOffset)}px` : '',
155
+ const staticSide = IgcPopoverComponent._oppositeArrowSide.get(currentPlacement);
156
+ arrow.part = currentPlacement;
157
+ setStyles(arrow, {
158
+ left: x != null ? `${roundByDPR(x + offset)}px` : '',
159
+ top: y != null ? `${roundByDPR(y + offset)}px` : '',
149
160
  [staticSide]: '-4px',
150
161
  });
151
162
  }
152
- _anchorSlotChange() {
153
- if (this.anchor || isEmpty(this._anchors)) {
154
- return;
155
- }
156
- this.target = this._anchors[0];
157
- this._updateState();
158
- }
159
163
  render() {
160
164
  return html `
161
- <slot name="anchor" @slotchange=${this._anchorSlotChange}></slot>
165
+ <slot name="anchor"></slot>
162
166
  <div id="container" part="container" popover="manual">
163
167
  <slot></slot>
164
168
  </div>
@@ -167,13 +171,16 @@ class IgcPopoverComponent extends LitElement {
167
171
  }
168
172
  IgcPopoverComponent.tagName = 'igc-popover';
169
173
  IgcPopoverComponent.styles = styles;
174
+ IgcPopoverComponent._oppositeArrowSide = new Map(Object.entries({
175
+ top: 'bottom',
176
+ right: 'left',
177
+ bottom: 'top',
178
+ left: 'right',
179
+ }));
170
180
  export default IgcPopoverComponent;
171
181
  __decorate([
172
- query('#container')
182
+ query('#container', true)
173
183
  ], IgcPopoverComponent.prototype, "_container", void 0);
174
- __decorate([
175
- queryAssignedElements({ slot: 'anchor', flatten: true })
176
- ], IgcPopoverComponent.prototype, "_anchors", void 0);
177
184
  __decorate([
178
185
  property()
179
186
  ], IgcPopoverComponent.prototype, "anchor", void 0);
@@ -207,21 +214,4 @@ __decorate([
207
214
  __decorate([
208
215
  property({ type: Number, attribute: 'shift-padding' })
209
216
  ], IgcPopoverComponent.prototype, "shiftPadding", void 0);
210
- __decorate([
211
- watch('anchor')
212
- ], IgcPopoverComponent.prototype, "anchorChange", null);
213
- __decorate([
214
- watch('open', { waitUntilFirstUpdate: true })
215
- ], IgcPopoverComponent.prototype, "openChange", null);
216
- __decorate([
217
- watch('arrow', { waitUntilFirstUpdate: true }),
218
- watch('arrowOffset', { waitUntilFirstUpdate: true }),
219
- watch('flip', { waitUntilFirstUpdate: true }),
220
- watch('inline', { waitUntilFirstUpdate: true }),
221
- watch('offset', { waitUntilFirstUpdate: true }),
222
- watch('placement', { waitUntilFirstUpdate: true }),
223
- watch('sameWidth', { waitUntilFirstUpdate: true }),
224
- watch('shift', { waitUntilFirstUpdate: true }),
225
- watch('shiftPadding', { waitUntilFirstUpdate: true })
226
- ], IgcPopoverComponent.prototype, "floatingPropChange", null);
227
217
  //# sourceMappingURL=popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../../src/components/popover/popover.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n inline,\n limitShift,\n type Middleware,\n type MiddlewareData,\n offset,\n type Placement,\n shift,\n size,\n} from '@floating-ui/dom';\nimport { html, LitElement } from 'lit';\nimport { property, query, queryAssignedElements } from 'lit/decorators.js';\n\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n first,\n getElementByIdFromRoot,\n isEmpty,\n isString,\n roundByDPR,\n} from '../common/util.js';\nimport { styles } from './themes/light/popover.base.css.js';\n\n/**\n * Describes the preferred placement of a toggle component.\n */\nexport type PopoverPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end';\n\n/* blazorSuppress */\n/**\n * @element igc-popover\n *\n * @slot - Content of the popover.\n * @slot anchor - The element the popover will be anchored to.\n *\n * @csspart container - The container wrapping the slotted content in the popover.\n */\nexport default class IgcPopoverComponent extends LitElement {\n public static readonly tagName = 'igc-popover';\n public static override styles = styles;\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcPopoverComponent);\n }\n\n private dispose?: ReturnType<typeof autoUpdate>;\n private target?: Element;\n\n @query('#container')\n private _container!: HTMLElement;\n\n @queryAssignedElements({ slot: 'anchor', flatten: true })\n private _anchors!: HTMLElement[];\n\n /**\n * Pass an IDREF or an DOM element reference to use as the\n * anchor target for the floating element.\n */\n @property()\n public anchor?: Element | string;\n\n /**\n * Element to render as an \"arrow\" element for the current popover.\n */\n @property({ attribute: false })\n public arrow: HTMLElement | null = null;\n\n /** Additional offset to apply to the arrow element if enabled. */\n @property({ type: Number, attribute: 'arrow-offset' })\n public arrowOffset = 0;\n\n /**\n * Improves positioning for inline reference elements that span over multiple lines.\n * Useful for tooltips or similar components.\n */\n @property({ type: Boolean, reflect: true })\n public inline = false;\n\n /**\n * When enabled this changes the placement of the floating element in order to keep it\n * in view along the main axis.\n */\n @property({ type: Boolean, reflect: true })\n public flip = false;\n\n /**\n * Placement modifier which translates the floating element along the main axis.\n */\n @property({ type: Number })\n public offset = 0;\n\n /**\n * The visibility state of the popover component.\n */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /**\n * Where to place the floating element relative to the parent anchor element.\n */\n @property()\n public placement: PopoverPlacement = 'bottom-start';\n\n /**\n * When enabled the floating element will match the width of its parent anchor element.\n */\n @property({ type: Boolean, reflect: true, attribute: 'same-width' })\n public sameWidth = false;\n\n /**\n * When enabled this tries to shift the floating element along the main axis\n * keeping it in view, preventing overflow while maintaining the desired placement.\n */\n @property({ type: Boolean, reflect: true })\n public shift = false;\n\n /**\n * Virtual padding for the resolved overflow detection offsets in pixels.\n */\n @property({ type: Number, attribute: 'shift-padding' })\n public shiftPadding = 0;\n\n @watch('anchor')\n protected anchorChange() {\n const newTarget = isString(this.anchor)\n ? getElementByIdFromRoot(this, this.anchor)\n : this.anchor;\n\n if (newTarget) {\n this.target = newTarget;\n this._updateState();\n }\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n protected openChange() {\n this.open ? this.show() : this.hide();\n }\n\n @watch('arrow', { waitUntilFirstUpdate: true })\n @watch('arrowOffset', { waitUntilFirstUpdate: true })\n @watch('flip', { waitUntilFirstUpdate: true })\n @watch('inline', { waitUntilFirstUpdate: true })\n @watch('offset', { waitUntilFirstUpdate: true })\n @watch('placement', { waitUntilFirstUpdate: true })\n @watch('sameWidth', { waitUntilFirstUpdate: true })\n @watch('shift', { waitUntilFirstUpdate: true })\n @watch('shiftPadding', { waitUntilFirstUpdate: true })\n protected floatingPropChange() {\n this._updateState();\n }\n\n public override async connectedCallback() {\n super.connectedCallback();\n\n await this.updateComplete;\n if (this.open) {\n this.show();\n }\n }\n\n public override disconnectedCallback() {\n this.hide();\n super.disconnectedCallback();\n }\n\n protected show() {\n if (!this.target) {\n return;\n }\n\n this._showPopover();\n\n this.dispose = autoUpdate(\n this.target,\n this._container,\n this._updatePosition.bind(this)\n );\n }\n\n protected async hide(): Promise<void> {\n this._hidePopover();\n\n return new Promise((resolve) => {\n this.dispose?.();\n this.dispose = undefined;\n resolve();\n });\n }\n\n private _showPopover() {\n this._container?.showPopover();\n }\n\n private _hidePopover() {\n this._container?.hidePopover();\n }\n\n private _createMiddleware(): Middleware[] {\n const middleware: Middleware[] = [];\n const styles = this._container.style;\n\n if (this.offset) {\n middleware.push(offset(this.offset));\n }\n\n if (this.inline) {\n middleware.push(inline());\n }\n\n if (this.shift) {\n middleware.push(\n shift({\n padding: this.shiftPadding,\n limiter: limitShift(),\n })\n );\n }\n\n if (this.arrow) {\n middleware.push(arrow({ element: this.arrow }));\n }\n\n if (this.flip) {\n middleware.push(flip());\n }\n\n if (this.sameWidth) {\n middleware.push(\n size({\n apply: ({ rects }) => {\n Object.assign(styles, { width: `${rects.reference.width}px` });\n },\n })\n );\n } else {\n Object.assign(styles, { width: '' });\n }\n\n return middleware;\n }\n\n private async _updateState() {\n if (this.open) {\n await this.hide();\n this.show();\n }\n }\n\n private async _updatePosition() {\n if (!(this.open && this.target)) {\n return;\n }\n\n const { x, y, middlewareData, placement } = await computePosition(\n this.target,\n this._container,\n {\n placement: this.placement ?? 'bottom-start',\n middleware: this._createMiddleware(),\n strategy: 'absolute',\n }\n );\n\n Object.assign(this._container.style, {\n left: 0,\n top: 0,\n transform: `translate(${roundByDPR(x)}px,${roundByDPR(y)}px)`,\n });\n\n this._positionArrow(placement, middlewareData);\n }\n\n private _positionArrow(placement: Placement, data: MiddlewareData) {\n if (!(data.arrow && this.arrow)) {\n return;\n }\n\n const { x, y } = data.arrow;\n\n // The current placement of the popover along the x/y axis\n const currentPlacement = first(placement.split('-'));\n\n // The opposite side where the arrow element should render based on the `currentPlacement`\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[currentPlacement]!;\n\n this.arrow.part = currentPlacement;\n\n Object.assign(this.arrow.style, {\n left: x != null ? `${roundByDPR(x + this.arrowOffset)}px` : '',\n top: y != null ? `${roundByDPR(y + this.arrowOffset)}px` : '',\n [staticSide]: '-4px',\n });\n }\n\n private _anchorSlotChange() {\n if (this.anchor || isEmpty(this._anchors)) {\n return;\n }\n\n this.target = this._anchors[0];\n this._updateState();\n }\n\n protected override render() {\n return html`\n <slot name=\"anchor\" @slotchange=${this._anchorSlotChange}></slot>\n <div id=\"container\" part=\"container\" popover=\"manual\">\n <slot></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-popover': IgcPopoverComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../../src/components/popover/popover.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n inline,\n limitShift,\n type Middleware,\n type MiddlewareData,\n offset,\n type Placement,\n shift,\n size,\n} from '@floating-ui/dom';\nimport { html, LitElement, type PropertyValues } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport {\n addSlotController,\n type SlotChangeCallbackParameters,\n setSlots,\n} from '../common/controllers/slot.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n first,\n getElementByIdFromRoot,\n isString,\n roundByDPR,\n setStyles,\n} from '../common/util.js';\nimport { styles } from './themes/light/popover.base.css.js';\n\n/**\n * Describes the preferred placement of a toggle component.\n */\nexport type PopoverPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end';\n\n/* blazorSuppress */\n/**\n * @element igc-popover\n *\n * @slot - Content of the popover.\n * @slot anchor - The element the popover will be anchored to.\n *\n * @csspart container - The container wrapping the slotted content in the popover.\n */\nexport default class IgcPopoverComponent extends LitElement {\n public static readonly tagName = 'igc-popover';\n public static override styles = styles;\n\n private static _oppositeArrowSide = new Map(\n Object.entries({\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n })\n );\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcPopoverComponent);\n }\n\n //#region Internal properties and state\n\n private _dispose?: ReturnType<typeof autoUpdate>;\n private _target?: Element;\n\n private readonly _slots = addSlotController(this, {\n slots: setSlots('anchor'),\n onChange: this._handleSlotChange,\n });\n\n @query('#container', true)\n private readonly _container!: HTMLElement;\n\n //#endregion\n\n //#region Public attributes and properties\n\n /**\n * Pass an IDREF or an DOM element reference to use as the\n * anchor target for the floating element.\n */\n @property()\n public anchor?: Element | string;\n\n /**\n * Element to render as an \"arrow\" element for the current popover.\n */\n @property({ attribute: false })\n public arrow: HTMLElement | null = null;\n\n /** Additional offset to apply to the arrow element if enabled. */\n @property({ type: Number, attribute: 'arrow-offset' })\n public arrowOffset = 0;\n\n /**\n * Improves positioning for inline reference elements that span over multiple lines.\n * Useful for tooltips or similar components.\n */\n @property({ type: Boolean, reflect: true })\n public inline = false;\n\n /**\n * When enabled this changes the placement of the floating element in order to keep it\n * in view along the main axis.\n */\n @property({ type: Boolean, reflect: true })\n public flip = false;\n\n /**\n * Placement modifier which translates the floating element along the main axis.\n */\n @property({ type: Number })\n public offset = 0;\n\n /**\n * The visibility state of the popover component.\n */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /**\n * Where to place the floating element relative to the parent anchor element.\n */\n @property()\n public placement: PopoverPlacement = 'bottom-start';\n\n /**\n * When enabled the floating element will match the width of its parent anchor element.\n */\n @property({ type: Boolean, reflect: true, attribute: 'same-width' })\n public sameWidth = false;\n\n /**\n * When enabled this tries to shift the floating element along the main axis\n * keeping it in view, preventing overflow while maintaining the desired placement.\n */\n @property({ type: Boolean, reflect: true })\n public shift = false;\n\n /**\n * Virtual padding for the resolved overflow detection offsets in pixels.\n */\n @property({ type: Number, attribute: 'shift-padding' })\n public shiftPadding = 0;\n\n //#endregion\n\n //#region Life-cycle hooks\n\n protected override update(properties: PropertyValues<this>): void {\n if (properties.has('anchor')) {\n const target = isString(this.anchor)\n ? getElementByIdFromRoot(this, this.anchor)\n : this.anchor;\n\n if (target) {\n this._target = target;\n }\n }\n\n if (this.hasUpdated && properties.has('open')) {\n this._setOpenState(this.open);\n }\n\n this._updateState();\n super.update(properties);\n }\n\n /** @internal */\n public override connectedCallback(): void {\n super.connectedCallback();\n this.updateComplete.then(() => {\n this._setOpenState(this.open);\n });\n }\n\n /** @internal */\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n this._setOpenState(false);\n }\n\n //#endregion\n\n private _handleSlotChange({\n isDefault,\n }: SlotChangeCallbackParameters<unknown>): void {\n if (isDefault) {\n return;\n }\n\n const possibleTarget = first(\n this._slots.getAssignedElements('anchor', { flatten: true })\n );\n\n if (this.anchor || !possibleTarget) {\n return;\n }\n\n this._target = possibleTarget;\n this._updateState();\n }\n\n //#region Internal open state API\n private _setOpenState(state: boolean): void {\n state ? this._setDispose() : this._clearDispose();\n this._setPopoverState(state);\n }\n\n private _setPopoverState(open: boolean): void {\n if (!this._target) {\n return;\n }\n open ? this._container?.showPopover() : this._container?.hidePopover();\n }\n\n private _setDispose(): void {\n if (!this._target) {\n return;\n }\n\n this._dispose = autoUpdate(\n this._target,\n this._container,\n this._updatePosition.bind(this)\n );\n }\n\n private _clearDispose(): Promise<void> {\n return new Promise((resolve) => {\n this._dispose?.();\n this._dispose = undefined;\n resolve();\n });\n }\n\n private async _updateState(): Promise<void> {\n if (this.open) {\n await this._clearDispose();\n this._setDispose();\n }\n }\n\n //#endregion\n\n //#region Internal position API\n\n private _createMiddleware(): Middleware[] {\n const middleware: Middleware[] = [];\n const container = this._container;\n\n if (this.offset) {\n middleware.push(offset(this.offset));\n }\n\n if (this.inline) {\n middleware.push(inline());\n }\n\n if (this.shift) {\n middleware.push(\n shift({\n padding: this.shiftPadding,\n limiter: limitShift(),\n })\n );\n }\n\n if (this.arrow) {\n middleware.push(arrow({ element: this.arrow }));\n }\n\n if (this.flip) {\n middleware.push(flip());\n }\n\n if (this.sameWidth) {\n middleware.push(\n size({\n apply: ({ rects }) =>\n setStyles(container, { width: `${rects.reference.width}px` }),\n })\n );\n } else {\n setStyles(container, { width: '' });\n }\n\n return middleware;\n }\n\n private async _updatePosition(): Promise<void> {\n if (!(this.open && this._target)) {\n return;\n }\n\n const { x, y, middlewareData, placement } = await computePosition(\n this._target,\n this._container,\n {\n placement: this.placement ?? 'bottom-start',\n middleware: this._createMiddleware(),\n strategy: 'absolute',\n }\n );\n\n setStyles(this._container, {\n left: '0',\n top: '0',\n transform: `translate(${roundByDPR(x)}px,${roundByDPR(y)}px)`,\n });\n\n this._updateArrowPosition(placement, middlewareData);\n }\n\n private _updateArrowPosition(placement: Placement, data: MiddlewareData) {\n if (!(data.arrow && this.arrow)) {\n return;\n }\n\n const { x, y } = data.arrow;\n const arrow = this.arrow;\n const offset = this.arrowOffset;\n\n // The current placement of the popover along the x/y axis\n const currentPlacement = first(placement.split('-'));\n\n // The opposite side where the arrow element should render based on the `currentPlacement`\n const staticSide =\n IgcPopoverComponent._oppositeArrowSide.get(currentPlacement)!;\n\n arrow.part = currentPlacement;\n\n setStyles(arrow, {\n left: x != null ? `${roundByDPR(x + offset)}px` : '',\n top: y != null ? `${roundByDPR(y + offset)}px` : '',\n [staticSide]: '-4px',\n });\n }\n\n //#endregion\n\n protected override render() {\n return html`\n <slot name=\"anchor\"></slot>\n <div id=\"container\" part=\"container\" popover=\"manual\">\n <slot></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-popover': IgcPopoverComponent;\n }\n}\n"]}
@@ -1,9 +1,10 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { StyleInfo } from 'lit/directives/style-map.js';
3
+ import type { SlotController } from '../common/controllers/slot.js';
3
4
  import type { StyleVariant } from '../types.js';
4
5
  export declare abstract class IgcProgressBaseComponent extends LitElement {
5
6
  private readonly _internals;
6
- protected _assignedElements: HTMLElement[];
7
+ protected abstract _slots: SlotController<any>;
7
8
  protected _base: HTMLElement;
8
9
  protected _percentage: number;
9
10
  protected _progress: number;
@@ -47,14 +48,13 @@ export declare abstract class IgcProgressBaseComponent extends LitElement {
47
48
  * @attr label-format
48
49
  */
49
50
  labelFormat: string;
50
- protected indeterminateChange(): void;
51
- protected maxChange(): void;
52
- protected valueChange(): void;
53
- protected createRenderRoot(): HTMLElement | DocumentFragment;
51
+ protected _indeterminateChange(): void;
52
+ protected _maxChange(): void;
53
+ protected _valueChange(): void;
54
54
  protected updated(): void;
55
55
  private _updateARIA;
56
56
  private _updateProgress;
57
- protected renderLabel(): import("lit-html").TemplateResult<1>;
58
- protected renderLabelFormat(): string;
59
- protected renderDefaultSlot(): import("lit-html").TemplateResult<1>;
57
+ protected _renderLabel(): import("lit-html").TemplateResult<1>;
58
+ protected _renderLabelFormat(): string;
59
+ protected _renderDefaultSlot(): import("lit-html").TemplateResult<1>;
60
60
  }
@@ -5,11 +5,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { html, LitElement, nothing } from 'lit';
8
- import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
8
+ import { property, query, state } from 'lit/decorators.js';
9
9
  import { addInternalsController } from '../common/controllers/internals.js';
10
10
  import { watch } from '../common/decorators/watch.js';
11
11
  import { partMap } from '../common/part-map.js';
12
- import { asPercent, clamp, formatString, isEmpty } from '../common/util.js';
12
+ import { asPercent, clamp, formatString } from '../common/util.js';
13
13
  export class IgcProgressBaseComponent extends LitElement {
14
14
  constructor() {
15
15
  super(...arguments);
@@ -36,12 +36,12 @@ export class IgcProgressBaseComponent extends LitElement {
36
36
  this.indeterminate = false;
37
37
  this.hideLabel = false;
38
38
  }
39
- indeterminateChange() {
39
+ _indeterminateChange() {
40
40
  if (!this.indeterminate) {
41
41
  this._updateProgress();
42
42
  }
43
43
  }
44
- maxChange() {
44
+ _maxChange() {
45
45
  this.max = Math.max(0, this.max);
46
46
  if (this.value > this.max) {
47
47
  this.value = this.max;
@@ -50,22 +50,19 @@ export class IgcProgressBaseComponent extends LitElement {
50
50
  this._updateProgress();
51
51
  }
52
52
  }
53
- valueChange() {
53
+ _valueChange() {
54
54
  this.value = clamp(this.value, 0, this.max);
55
55
  if (!this.indeterminate) {
56
56
  this._updateProgress();
57
57
  }
58
58
  }
59
- createRenderRoot() {
60
- const root = super.createRenderRoot();
61
- root.addEventListener('slotchange', () => this.requestUpdate());
62
- return root;
63
- }
64
59
  updated() {
65
60
  this._updateARIA();
66
61
  }
67
62
  _updateARIA() {
68
- const text = this.labelFormat ? this.renderLabelFormat() : `${this.value}%`;
63
+ const text = this.labelFormat
64
+ ? this._renderLabelFormat()
65
+ : `${this.value}%`;
69
66
  this._internals.setARIA({
70
67
  ariaValueMax: this.max.toString(),
71
68
  ariaValueNow: this.indeterminate ? null : this.value.toString(),
@@ -83,30 +80,29 @@ export class IgcProgressBaseComponent extends LitElement {
83
80
  '--_transition-duration': `${this.animationDuration}ms`,
84
81
  };
85
82
  }
86
- renderLabel() {
83
+ _renderLabel() {
87
84
  const parts = {
88
85
  label: true,
89
86
  value: true,
90
87
  fraction: this._hasFraction,
91
88
  };
92
89
  return this.labelFormat
93
- ? html `<span part=${partMap(parts)}>${this.renderLabelFormat()}</span>`
90
+ ? html `<span part=${partMap(parts)}>${this._renderLabelFormat()}</span>`
94
91
  : html `<span part=${partMap({ ...parts, counter: true })}></span>`;
95
92
  }
96
- renderLabelFormat() {
93
+ _renderLabelFormat() {
97
94
  return formatString(this.labelFormat, this.value, this.max);
98
95
  }
99
- renderDefaultSlot() {
100
- const hideDefaultLabel = this.indeterminate || this.hideLabel || !isEmpty(this._assignedElements);
96
+ _renderDefaultSlot() {
97
+ const hideDefaultLabel = this.indeterminate ||
98
+ this.hideLabel ||
99
+ this._slots.hasAssignedElements('[default]');
101
100
  return html `
102
101
  <slot part="label"></slot>
103
- ${hideDefaultLabel ? nothing : this.renderLabel()}
102
+ ${hideDefaultLabel ? nothing : this._renderLabel()}
104
103
  `;
105
104
  }
106
105
  }
107
- __decorate([
108
- queryAssignedElements()
109
- ], IgcProgressBaseComponent.prototype, "_assignedElements", void 0);
110
106
  __decorate([
111
107
  query('[part="base"]', true)
112
108
  ], IgcProgressBaseComponent.prototype, "_base", void 0);
@@ -145,11 +141,11 @@ __decorate([
145
141
  ], IgcProgressBaseComponent.prototype, "labelFormat", void 0);
146
142
  __decorate([
147
143
  watch('indeterminate')
148
- ], IgcProgressBaseComponent.prototype, "indeterminateChange", null);
144
+ ], IgcProgressBaseComponent.prototype, "_indeterminateChange", null);
149
145
  __decorate([
150
146
  watch('max')
151
- ], IgcProgressBaseComponent.prototype, "maxChange", null);
147
+ ], IgcProgressBaseComponent.prototype, "_maxChange", null);
152
148
  __decorate([
153
149
  watch('value')
154
- ], IgcProgressBaseComponent.prototype, "valueChange", null);
150
+ ], IgcProgressBaseComponent.prototype, "_valueChange", null);
155
151
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/components/progress/base.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport type { StyleInfo } from 'lit/directives/style-map.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { partMap } from '../common/part-map.js';\nimport { asPercent, clamp, formatString, isEmpty } from '../common/util.js';\nimport type { StyleVariant } from '../types.js';\n\nexport abstract class IgcProgressBaseComponent extends LitElement {\n private readonly _internals = addInternalsController(this, {\n initialARIA: {\n role: 'progressbar',\n ariaValueMin: '0',\n ariaValueNow: '0',\n },\n });\n\n @queryAssignedElements()\n protected _assignedElements!: HTMLElement[];\n\n @query('[part=\"base\"]', true)\n protected _base!: HTMLElement;\n\n @state()\n protected _percentage = 0;\n\n @state()\n protected _progress = 0;\n\n @state()\n protected _hasFraction = false;\n\n @state()\n protected _styleInfo: StyleInfo = {\n '--_progress-whole': '0.00',\n '--_progress-integer': '0',\n '--_progress-fraction': '0',\n '--_transition-duration': '0ms',\n };\n\n /**\n * Maximum value of the control.\n * @attr\n */\n @property({ type: Number })\n public max = 100;\n\n /**\n * The value of the control.\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * The variant of the control.\n * @attr\n */\n @property({ reflect: true })\n public variant: StyleVariant = 'primary';\n\n /**\n * Animation duration in milliseconds.\n * @attr animation-duration\n */\n @property({ type: Number, attribute: 'animation-duration' })\n public animationDuration = 500;\n\n /**\n * The indeterminate state of the control.\n * @attr\n */\n @property({ type: Boolean, reflect: false })\n public indeterminate = false;\n\n /**\n * Shows/hides the label of the control.\n * @attr hide-label\n */\n @property({ type: Boolean, attribute: 'hide-label', reflect: false })\n public hideLabel = false;\n\n /**\n * Format string for the default label of the control.\n * Placeholders:\n * {0} - current value of the control.\n * {1} - max value of the control.\n * @attr label-format\n */\n @property({ attribute: 'label-format' })\n public labelFormat!: string;\n\n @watch('indeterminate')\n protected indeterminateChange() {\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('max')\n protected maxChange() {\n this.max = Math.max(0, this.max);\n if (this.value > this.max) {\n this.value = this.max;\n }\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('value')\n protected valueChange() {\n this.value = clamp(this.value, 0, this.max);\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n protected override createRenderRoot() {\n const root = super.createRenderRoot();\n root.addEventListener('slotchange', () => this.requestUpdate());\n return root;\n }\n\n protected override updated() {\n this._updateARIA();\n }\n\n private _updateARIA() {\n const text = this.labelFormat ? this.renderLabelFormat() : `${this.value}%`;\n\n this._internals.setARIA({\n ariaValueMax: this.max.toString(),\n ariaValueNow: this.indeterminate ? null : this.value.toString(),\n ariaValueText: this.indeterminate ? null : text,\n });\n }\n\n private _updateProgress() {\n const percentage = asPercent(this.value, Math.max(1, this.max));\n const fractionValue = Math.round((percentage % 1) * 100);\n this._hasFraction = fractionValue > 0;\n\n this._styleInfo = {\n '--_progress-whole': percentage.toFixed(2),\n '--_progress-integer': Math.floor(percentage),\n '--_progress-fraction': fractionValue,\n '--_transition-duration': `${this.animationDuration}ms`,\n };\n }\n\n protected renderLabel() {\n const parts = {\n label: true,\n value: true,\n fraction: this._hasFraction,\n };\n\n return this.labelFormat\n ? html`<span part=${partMap(parts)}>${this.renderLabelFormat()}</span>`\n : html`<span part=${partMap({ ...parts, counter: true })}></span>`;\n }\n\n protected renderLabelFormat() {\n return formatString(this.labelFormat, this.value, this.max);\n }\n\n protected renderDefaultSlot() {\n const hideDefaultLabel =\n this.indeterminate || this.hideLabel || !isEmpty(this._assignedElements);\n\n return html`\n <slot part=\"label\"></slot>\n ${hideDefaultLabel ? nothing : this.renderLabel()}\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/components/progress/base.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport type { StyleInfo } from 'lit/directives/style-map.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport type { SlotController } from '../common/controllers/slot.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { partMap } from '../common/part-map.js';\nimport { asPercent, clamp, formatString } from '../common/util.js';\nimport type { StyleVariant } from '../types.js';\n\nexport abstract class IgcProgressBaseComponent extends LitElement {\n private readonly _internals = addInternalsController(this, {\n initialARIA: {\n role: 'progressbar',\n ariaValueMin: '0',\n ariaValueNow: '0',\n },\n });\n\n protected abstract _slots: SlotController<any>;\n\n @query('[part=\"base\"]', true)\n protected _base!: HTMLElement;\n\n @state()\n protected _percentage = 0;\n\n @state()\n protected _progress = 0;\n\n @state()\n protected _hasFraction = false;\n\n @state()\n protected _styleInfo: StyleInfo = {\n '--_progress-whole': '0.00',\n '--_progress-integer': '0',\n '--_progress-fraction': '0',\n '--_transition-duration': '0ms',\n };\n\n /**\n * Maximum value of the control.\n * @attr\n */\n @property({ type: Number })\n public max = 100;\n\n /**\n * The value of the control.\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * The variant of the control.\n * @attr\n */\n @property({ reflect: true })\n public variant: StyleVariant = 'primary';\n\n /**\n * Animation duration in milliseconds.\n * @attr animation-duration\n */\n @property({ type: Number, attribute: 'animation-duration' })\n public animationDuration = 500;\n\n /**\n * The indeterminate state of the control.\n * @attr\n */\n @property({ type: Boolean, reflect: false })\n public indeterminate = false;\n\n /**\n * Shows/hides the label of the control.\n * @attr hide-label\n */\n @property({ type: Boolean, attribute: 'hide-label', reflect: false })\n public hideLabel = false;\n\n /**\n * Format string for the default label of the control.\n * Placeholders:\n * {0} - current value of the control.\n * {1} - max value of the control.\n * @attr label-format\n */\n @property({ attribute: 'label-format' })\n public labelFormat!: string;\n\n @watch('indeterminate')\n protected _indeterminateChange(): void {\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('max')\n protected _maxChange(): void {\n this.max = Math.max(0, this.max);\n if (this.value > this.max) {\n this.value = this.max;\n }\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n @watch('value')\n protected _valueChange(): void {\n this.value = clamp(this.value, 0, this.max);\n\n if (!this.indeterminate) {\n this._updateProgress();\n }\n }\n\n protected override updated(): void {\n this._updateARIA();\n }\n\n private _updateARIA(): void {\n const text = this.labelFormat\n ? this._renderLabelFormat()\n : `${this.value}%`;\n\n this._internals.setARIA({\n ariaValueMax: this.max.toString(),\n ariaValueNow: this.indeterminate ? null : this.value.toString(),\n ariaValueText: this.indeterminate ? null : text,\n });\n }\n\n private _updateProgress(): void {\n const percentage = asPercent(this.value, Math.max(1, this.max));\n const fractionValue = Math.round((percentage % 1) * 100);\n this._hasFraction = fractionValue > 0;\n\n this._styleInfo = {\n '--_progress-whole': percentage.toFixed(2),\n '--_progress-integer': Math.floor(percentage),\n '--_progress-fraction': fractionValue,\n '--_transition-duration': `${this.animationDuration}ms`,\n };\n }\n\n protected _renderLabel() {\n const parts = {\n label: true,\n value: true,\n fraction: this._hasFraction,\n };\n\n return this.labelFormat\n ? html`<span part=${partMap(parts)}>${this._renderLabelFormat()}</span>`\n : html`<span part=${partMap({ ...parts, counter: true })}></span>`;\n }\n\n protected _renderLabelFormat(): string {\n return formatString(this.labelFormat, this.value, this.max);\n }\n\n protected _renderDefaultSlot() {\n const hideDefaultLabel =\n this.indeterminate ||\n this.hideLabel ||\n this._slots.hasAssignedElements('[default]');\n\n return html`\n <slot part=\"label\"></slot>\n ${hideDefaultLabel ? nothing : this._renderLabel()}\n `;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"circular-gradient.js","sourceRoot":"","sources":["../../../src/components/progress/circular-gradient.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAWtE,MAAqB,4BAA6B,SAAQ,UAAU;IAApE;;QAaS,WAAM,GAAG,IAAI,CAAC;QAOd,UAAK,GAAG,OAAO,CAAC;QAOhB,YAAO,GAAG,CAAC,CAAC;IAKrB,CAAC;IA5BQ,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,4BAA4B,CAAC,CAAC;IAClD,CAAC;IAuBkB,MAAM;QACvB,OAAO,OAAO,CAAC;IACjB,CAAC;;AA9BsB,oCAAO,GAAG,uBAAuB,AAA1B,CAA2B;eADtC,4BAA4B;AAaxC;IADN,QAAQ,EAAE;4DACU;AAOd;IADN,QAAQ,EAAE;2DACY;AAOhB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6DACR","sourcesContent":["import { LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport { registerComponent } from '../common/definitions/register.js';\n\n/**\n * Used for defining gradient stops in the igc-circular-progress.\n * For each `igc-circular-gradient` defined as `gradient` slot of `igc-circular-progress` element would be created a SVG stop element.\n * The values passed as `color`, `offset` and `opacity` would be set as\n * `stop-color`, `offset` and `stop-opacity` of the SVG element without further validations.\n *\n * @element igc-circular-gradient\n *\n */\nexport default class IgcCircularGradientComponent extends LitElement {\n public static readonly tagName = 'igc-circular-gradient';\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcCircularGradientComponent);\n }\n\n /**\n * Defines where the gradient stop is placed along the gradient vector\n * @attr\n */\n @property()\n public offset = '0%';\n\n /**\n * Defines the color of the gradient stop\n * @attr\n */\n @property()\n public color = 'black';\n\n /**\n * Defines the opacity of the gradient stop\n * @attr\n */\n @property({ type: Number })\n public opacity = 1;\n\n protected override render() {\n return nothing;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-circular-gradient': IgcCircularGradientComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"circular-gradient.js","sourceRoot":"","sources":["../../../src/components/progress/circular-gradient.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAWtE,MAAqB,4BAA6B,SAAQ,UAAU;IAApE;;QAaS,WAAM,GAAG,IAAI,CAAC;QAOd,UAAK,GAAG,OAAO,CAAC;QAOhB,YAAO,GAAG,CAAC,CAAC;IAKrB,CAAC;IA5BQ,MAAM,CAAC,QAAQ;QACpB,iBAAiB,CAAC,4BAA4B,CAAC,CAAC;IAClD,CAAC;IAuBkB,MAAM;QACvB,OAAO,OAAO,CAAC;IACjB,CAAC;;AA9BsB,oCAAO,GAAG,uBAAuB,AAA1B,CAA2B;eADtC,4BAA4B;AAaxC;IADN,QAAQ,EAAE;4DACU;AAOd;IADN,QAAQ,EAAE;2DACY;AAOhB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6DACR","sourcesContent":["import { LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { registerComponent } from '../common/definitions/register.js';\n\n/**\n * Used for defining gradient stops in the igc-circular-progress.\n * For each `igc-circular-gradient` defined as `gradient` slot of `igc-circular-progress` element would be created a SVG stop element.\n * The values passed as `color`, `offset` and `opacity` would be set as\n * `stop-color`, `offset` and `stop-opacity` of the SVG element without further validations.\n *\n * @element igc-circular-gradient\n *\n */\nexport default class IgcCircularGradientComponent extends LitElement {\n public static readonly tagName = 'igc-circular-gradient';\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcCircularGradientComponent);\n }\n\n /**\n * Defines where the gradient stop is placed along the gradient vector\n * @attr\n */\n @property()\n public offset = '0%';\n\n /**\n * Defines the color of the gradient stop\n * @attr\n */\n @property()\n public color = 'black';\n\n /**\n * Defines the opacity of the gradient stop\n * @attr\n */\n @property({ type: Number })\n public opacity = 1;\n\n protected override render() {\n return nothing;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-circular-gradient': IgcCircularGradientComponent;\n }\n}\n"]}
@@ -25,12 +25,11 @@ import { IgcProgressBaseComponent } from './base.js';
25
25
  export default class IgcCircularProgressComponent extends IgcProgressBaseComponent {
26
26
  static readonly tagName = "igc-circular-progress";
27
27
  static styles: import("lit").CSSResult[];
28
- private static readonly increment;
29
28
  static register(): void;
30
- private _gradientId;
31
- private _assignedGradients;
29
+ private readonly _gradientId;
30
+ protected readonly _slots: import("../common/controllers/slot.js").SlotController<"[default]" | "gradient">;
32
31
  constructor();
33
- protected renderSvg(): import("lit-html").TemplateResult<2>;
32
+ protected _renderSvg(): import("lit-html").TemplateResult<2>;
34
33
  protected render(): import("lit-html").TemplateResult<1>;
35
34
  }
36
35
  declare global {