igniteui-webcomponents 6.1.2 → 6.2.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 (225) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/LICENSE +1 -1
  3. package/README.md +13 -1
  4. package/components/card/themes/content.js +7 -0
  5. package/components/card/themes/content.js.map +1 -1
  6. package/components/card/themes/shared/content/card.content.indigo.css.d.ts +1 -0
  7. package/components/card/themes/shared/content/card.content.indigo.css.js +3 -0
  8. package/components/card/themes/shared/content/card.content.indigo.css.js.map +1 -0
  9. package/components/carousel/carousel-indicator.d.ts +1 -1
  10. package/components/carousel/carousel-indicator.js.map +1 -1
  11. package/components/carousel/carousel-slide.d.ts +3 -3
  12. package/components/carousel/carousel-slide.js +7 -13
  13. package/components/carousel/carousel-slide.js.map +1 -1
  14. package/components/carousel/carousel.d.ts +39 -38
  15. package/components/carousel/carousel.js +160 -153
  16. package/components/carousel/carousel.js.map +1 -1
  17. package/components/checkbox/checkbox-base.d.ts +3 -5
  18. package/components/checkbox/checkbox-base.js +15 -21
  19. package/components/checkbox/checkbox-base.js.map +1 -1
  20. package/components/checkbox/checkbox.d.ts +3 -4
  21. package/components/checkbox/checkbox.js +18 -17
  22. package/components/checkbox/checkbox.js.map +1 -1
  23. package/components/checkbox/switch.d.ts +0 -1
  24. package/components/checkbox/switch.js +7 -10
  25. package/components/checkbox/switch.js.map +1 -1
  26. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js +1 -1
  27. package/components/checkbox/themes/dark/checkbox/checkbox.bootstrap.css.js.map +1 -1
  28. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js +1 -1
  29. package/components/checkbox/themes/dark/checkbox/checkbox.fluent.css.js.map +1 -1
  30. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  31. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  32. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js +1 -1
  33. package/components/checkbox/themes/shared/checkbox/checkbox.common.css.js.map +1 -1
  34. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  35. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  36. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  37. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  38. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  39. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  40. package/components/chip/chip.d.ts +11 -11
  41. package/components/chip/chip.js +61 -65
  42. package/components/chip/chip.js.map +1 -1
  43. package/components/combo/combo.d.ts +3 -3
  44. package/components/combo/combo.js +12 -6
  45. package/components/combo/combo.js.map +1 -1
  46. package/components/combo/themes/shared/combo.common.css.js +1 -1
  47. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  48. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  49. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  50. package/components/combo/themes/shared/combo.material.css.js +1 -1
  51. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  52. package/components/common/controllers/internals.d.ts +66 -2
  53. package/components/common/controllers/internals.js +21 -0
  54. package/components/common/controllers/internals.js.map +1 -1
  55. package/components/common/controllers/slot.d.ts +87 -0
  56. package/components/common/controllers/slot.js +75 -0
  57. package/components/common/controllers/slot.js.map +1 -0
  58. package/components/common/mixins/forms/associated.d.ts +1 -1
  59. package/components/common/mixins/forms/associated.js +91 -36
  60. package/components/common/mixins/forms/associated.js.map +1 -1
  61. package/components/common/mixins/forms/form-transformers.d.ts +21 -0
  62. package/components/common/mixins/forms/form-transformers.js +64 -0
  63. package/components/common/mixins/forms/form-transformers.js.map +1 -0
  64. package/components/common/mixins/forms/form-value.d.ts +7 -36
  65. package/components/common/mixins/forms/form-value.js +2 -64
  66. package/components/common/mixins/forms/form-value.js.map +1 -1
  67. package/components/common/mixins/forms/types.d.ts +19 -10
  68. package/components/common/mixins/forms/types.js +2 -1
  69. package/components/common/mixins/forms/types.js.map +1 -1
  70. package/components/common/util.d.ts +1 -0
  71. package/components/common/util.js +3 -0
  72. package/components/common/util.js.map +1 -1
  73. package/components/date-picker/date-picker.d.ts +1 -3
  74. package/components/date-picker/date-picker.js +11 -13
  75. package/components/date-picker/date-picker.js.map +1 -1
  76. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  77. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  78. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  79. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  80. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  81. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  82. package/components/date-picker/themes/shared/date-picker.fluent.css.js +1 -1
  83. package/components/date-picker/themes/shared/date-picker.fluent.css.js.map +1 -1
  84. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  85. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  86. package/components/date-picker/themes/shared/date-picker.material.css.js +1 -1
  87. package/components/date-picker/themes/shared/date-picker.material.css.js.map +1 -1
  88. package/components/date-range-picker/date-range-picker.d.ts +1 -3
  89. package/components/date-range-picker/date-range-picker.js +19 -26
  90. package/components/date-range-picker/date-range-picker.js.map +1 -1
  91. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
  92. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
  93. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js +1 -1
  94. package/components/date-range-picker/themes/shared/date-range-picker.bootstrap.css.js.map +1 -1
  95. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js +1 -1
  96. package/components/date-range-picker/themes/shared/date-range-picker.common.css.js.map +1 -1
  97. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js +1 -1
  98. package/components/date-range-picker/themes/shared/date-range-picker.fluent.css.js.map +1 -1
  99. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js +1 -1
  100. package/components/date-range-picker/themes/shared/date-range-picker.indigo.css.js.map +1 -1
  101. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js +1 -1
  102. package/components/date-range-picker/themes/shared/date-range-picker.material.css.js.map +1 -1
  103. package/components/date-time-input/date-time-input.d.ts +1 -2
  104. package/components/date-time-input/date-time-input.js +7 -7
  105. package/components/date-time-input/date-time-input.js.map +1 -1
  106. package/components/dialog/dialog.d.ts +23 -25
  107. package/components/dialog/dialog.js +108 -115
  108. package/components/dialog/dialog.js.map +1 -1
  109. package/components/dialog/themes/dark/dialog.bootstrap.css.js +1 -1
  110. package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -1
  111. package/components/expansion-panel/expansion-panel.d.ts +12 -14
  112. package/components/expansion-panel/expansion-panel.js +43 -56
  113. package/components/expansion-panel/expansion-panel.js.map +1 -1
  114. package/components/file-input/file-input.d.ts +1 -3
  115. package/components/file-input/file-input.js +6 -11
  116. package/components/file-input/file-input.js.map +1 -1
  117. package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
  118. package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
  119. package/components/file-input/themes/shared/file-input.material.css.js +1 -1
  120. package/components/file-input/themes/shared/file-input.material.css.js.map +1 -1
  121. package/components/input/input.d.ts +1 -4
  122. package/components/input/input.js +7 -12
  123. package/components/input/input.js.map +1 -1
  124. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  125. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  126. package/components/input/themes/shared/input.common.css.js +1 -1
  127. package/components/input/themes/shared/input.common.css.js.map +1 -1
  128. package/components/input/themes/shared/input.fluent.css.js +1 -1
  129. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  130. package/components/input/themes/shared/input.indigo.css.js +1 -1
  131. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  132. package/components/input/themes/shared/input.material.css.js +1 -1
  133. package/components/input/themes/shared/input.material.css.js.map +1 -1
  134. package/components/mask-input/mask-input-base.js +1 -0
  135. package/components/mask-input/mask-input-base.js.map +1 -1
  136. package/components/mask-input/mask-input.d.ts +2 -3
  137. package/components/mask-input/mask-input.js +5 -8
  138. package/components/mask-input/mask-input.js.map +1 -1
  139. package/components/nav-drawer/nav-drawer-item.d.ts +3 -4
  140. package/components/nav-drawer/nav-drawer-item.js +15 -18
  141. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  142. package/components/nav-drawer/nav-drawer.d.ts +1 -2
  143. package/components/nav-drawer/nav-drawer.js +9 -11
  144. package/components/nav-drawer/nav-drawer.js.map +1 -1
  145. package/components/nav-drawer/themes/container.base.css.js +1 -1
  146. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  147. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  148. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  149. package/components/popover/popover.d.ts +17 -16
  150. package/components/popover/popover.js +81 -91
  151. package/components/popover/popover.js.map +1 -1
  152. package/components/progress/base.d.ts +8 -8
  153. package/components/progress/base.js +19 -23
  154. package/components/progress/base.js.map +1 -1
  155. package/components/progress/circular-gradient.js.map +1 -1
  156. package/components/progress/circular-progress.d.ts +3 -4
  157. package/components/progress/circular-progress.js +15 -18
  158. package/components/progress/circular-progress.js.map +1 -1
  159. package/components/progress/linear-progress.d.ts +1 -0
  160. package/components/progress/linear-progress.js +5 -1
  161. package/components/progress/linear-progress.js.map +1 -1
  162. package/components/radio/radio.d.ts +3 -5
  163. package/components/radio/radio.js +33 -31
  164. package/components/radio/radio.js.map +1 -1
  165. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  166. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  167. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  168. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  169. package/components/radio/themes/shared/radio.common.css.js +1 -1
  170. package/components/radio/themes/shared/radio.common.css.js.map +1 -1
  171. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  172. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  173. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  174. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  175. package/components/radio/themes/shared/radio.material.css.js +1 -1
  176. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  177. package/components/radio-group/radio-group.d.ts +4 -4
  178. package/components/radio-group/radio-group.js +24 -21
  179. package/components/radio-group/radio-group.js.map +1 -1
  180. package/components/rating/rating.d.ts +1 -2
  181. package/components/rating/rating.js +4 -3
  182. package/components/rating/rating.js.map +1 -1
  183. package/components/select/select.d.ts +35 -38
  184. package/components/select/select.js +138 -146
  185. package/components/select/select.js.map +1 -1
  186. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  187. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  188. package/components/select/themes/shared/select.common.css.js +1 -1
  189. package/components/select/themes/shared/select.common.css.js.map +1 -1
  190. package/components/select/themes/shared/select.fluent.css.js +1 -1
  191. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  192. package/components/select/themes/shared/select.indigo.css.js +1 -1
  193. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  194. package/components/select/themes/shared/select.material.css.js +1 -1
  195. package/components/select/themes/shared/select.material.css.js.map +1 -1
  196. package/components/slider/slider-label.js.map +1 -1
  197. package/components/slider/slider.d.ts +1 -2
  198. package/components/slider/slider.js +5 -2
  199. package/components/slider/slider.js.map +1 -1
  200. package/components/textarea/textarea.d.ts +13 -20
  201. package/components/textarea/textarea.js +66 -90
  202. package/components/textarea/textarea.js.map +1 -1
  203. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  204. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  205. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  206. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  207. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  208. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  209. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  210. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  211. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  212. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  213. package/components/tile-manager/position.js +2 -1
  214. package/components/tile-manager/position.js.map +1 -1
  215. package/components/tile-manager/tile.d.ts +8 -12
  216. package/components/tile-manager/tile.js +16 -37
  217. package/components/tile-manager/tile.js.map +1 -1
  218. package/components/validation-container/validation-container.d.ts +2 -1
  219. package/components/validation-container/validation-container.js +19 -14
  220. package/components/validation-container/validation-container.js.map +1 -1
  221. package/custom-elements.json +9346 -6470
  222. package/igniteui-webcomponents.css-data.json +1 -1
  223. package/igniteui-webcomponents.html-data.json +1 -1
  224. package/package.json +1 -1
  225. package/web-types.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.common.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,kmIAAkmI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--calendar-border-color: transparent}:host igc-dialog{box-shadow:none;border:none}:host igc-dialog [part=actions]{border:none}:host igc-dialog igc-calendar{box-shadow:none}:host igc-dialog[open]::part(base){box-shadow:var(--ig-elevation-24);border:.0625rem solid var(--calendar-border-color)}:host igc-dialog::part(content){padding:0}:host igc-dialog::part(footer){padding:.5rem;background:var(--content-background);border-block-start:.0625rem solid var(--actions-divider-color)}:host igc-focus-trap{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));border-radius:var(--border-radius);background:var(--content-background);box-shadow:0 0 0 .0625rem var(--calendar-border-color)}:host igc-popover::part(container){box-shadow:var(--ig-elevation-3);border-radius:var(--border-radius)}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.25rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:not([readonly])){--affix-color: var(--input-prefix-color)}:host(:not([readonly])) igc-date-time-input[readonly]{--affix-color: var(--input-prefix-color)}:host(:not([readonly])) igc-date-time-input[readonly]::part(prefix),:host(:not([readonly])) igc-date-time-input[readonly]::part(suffix){color:var(--affix-color)}:host(:not([readonly])) [part=calendar-icon],:host(:not([readonly])) [part=calendar-icon-open],:host(:not([readonly])) [part=clear-icon]{color:var(--affix-color)}:host(:not([readonly])) igc-input:focus-within{--affix-color: var(--input-prefix-color--focused)}:host(:not([readonly])) igc-input:focus-within::part(filled){--affix-color: var(--input-prefix-color--focused)}:host(:not([readonly])) ::part(filled){--affix-color: var(--input-prefix-color--filled)}:host(:not([disabled])[invalid]) ::part(helper-text),:host(:not(:disabled)[invalid]) ::part(helper-text){color:var(--error-secondary-color)}:host(:disabled),:host([disabled]){--affix-color: var-get($theme, \"disabled-text-color\")}:host(:disabled) ::part(filled),:host([disabled]) ::part(filled){--affix-color: var-get($theme, \"disabled-text-color\")}:host(:disabled) ::part(helper-text),:host(:disabled) [part=label],:host(:disabled) igc-validator,:host([disabled]) ::part(helper-text),:host([disabled]) [part=label],:host([disabled]) igc-validator{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.25rem, -1 * 3.25rem), var(--is-medium, 1) * max(2.875rem, -1 * 2.875rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));border-block-start:.0625rem solid var(--actions-divider-color)}[part=separator]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--label-color);height:var(--size)}igc-icon,::slotted(igc-icon){--component-size: var(--input-size)}`;\n"]}
1
+ {"version":3,"file":"date-range-picker.common.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,knIAAknI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--component-size: var(--ig-size, var(--default-size));--calendar-border-color: transparent}:host igc-dialog{box-shadow:none;border:none}:host igc-dialog [part=actions]{border:none}:host igc-dialog igc-calendar{box-shadow:none}:host igc-dialog[open]::part(base){box-shadow:var(--ig-elevation-24);border:.0625rem solid var(--calendar-border-color)}:host igc-dialog::part(content){padding:0}:host igc-dialog::part(footer){padding:.5rem;background:var(--content-background);border-block-start:.0625rem solid var(--actions-divider-color)}:host igc-focus-trap{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);--component-size: var(--ig-size, var(--default-size));border-radius:var(--border-radius);background:var(--content-background);box-shadow:0 0 0 .0625rem var(--calendar-border-color)}:host igc-popover::part(container){box-shadow:var(--ig-elevation-3);border-radius:var(--border-radius)}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.25rem;padding-inline:max(var(--is-large, 1)*max(1.125rem, -1 * 1.125rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)),var(--is-medium, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)),var(--is-small, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)))}:host(:not([readonly])){--affix-color: var(--input-prefix-color)}:host(:not([readonly])) igc-date-time-input[readonly]{--affix-color: var(--input-prefix-color)}:host(:not([readonly])) igc-date-time-input[readonly]::part(prefix),:host(:not([readonly])) igc-date-time-input[readonly]::part(suffix){color:var(--affix-color)}:host(:not([readonly])) [part=calendar-icon],:host(:not([readonly])) [part=calendar-icon-open],:host(:not([readonly])) [part=clear-icon]{color:var(--affix-color)}:host(:not([readonly])) igc-input:focus-within{--affix-color: var(--input-prefix-color--focused)}:host(:not([readonly])) igc-input:focus-within::part(filled){--affix-color: var(--input-prefix-color--focused)}:host(:not([readonly])) ::part(filled){--affix-color: var(--input-prefix-color--filled)}:host(:not([disabled],[readonly]):state(ig-invalid)) ::part(helper-text),:host(:not(:disabled,[readonly]):state(ig-invalid)) ::part(helper-text){color:var(--error-secondary-color)}:host(:disabled),:host([disabled]){--affix-color: var(--disabled-text-color)}:host(:disabled) ::part(filled),:host([disabled]) ::part(filled){--affix-color: var(--disabled-text-color)}:host(:disabled) ::part(helper-text),:host(:disabled) [part=label],:host(:disabled) igc-validator,:host([disabled]) ::part(helper-text),:host([disabled]) [part=label],:host([disabled]) igc-validator{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.25rem, -1 * 3.25rem), var(--is-medium, 1) * max(2.875rem, -1 * 2.875rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));border-block-start:.0625rem solid var(--actions-divider-color)}[part=separator]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--label-color);height:var(--size)}igc-icon,::slotted(igc-icon){--component-size: var(--input-size)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--calendar-border-color: transparent}:host igc-dialog[open]::part(base){border-radius:0}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.3125rem;padding-inline-start:0}:host([required]) ::part(label)::after{color:var(--error-secondary-color)}:host(:not([disabled])[readonly]) igc-input::part(prefix),:host(:not([disabled])[readonly]) igc-input::part(suffix),:host(:not([disabled])[readonly]) igc-date-time-input::part(prefix),:host(:not([disabled])[readonly]) igc-date-time-input::part(suffix){background:rgba(0,0,0,0)}:host(:not([readonly],[invalid],[disabled])) igc-input[readonly]:not(:focus):hover::part(container)::before{color:var(--hover-border-color)}:host(:disabled) ::part(label)::after,:host([disabled]) ::part(label)::after{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.375rem, -1 * 3.375rem), var(--is-medium, 1) * max(3rem, -1 * 3rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem))}`;
2
+ export const styles = css `:host{--calendar-border-color: transparent}:host igc-dialog[open]::part(base){border-radius:0}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.3125rem;padding-inline-start:0}:host([required]) ::part(label)::after{color:var(--error-secondary-color)}:host(:not([disabled])[readonly]) igc-input::part(prefix),:host(:not([disabled])[readonly]) igc-input::part(suffix),:host(:not([disabled])[readonly]) igc-date-time-input::part(prefix),:host(:not([disabled])[readonly]) igc-date-time-input::part(suffix){background:rgba(0,0,0,0)}:host(:not([readonly],[disabled])) igc-input[readonly]:not(:focus):hover::part(container)::before{color:var(--hover-border-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::before{box-shadow:inset 0 0 0 var(--input-border-size) var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input:focus-within::part(container)::before{box-shadow:inset 0 0 0 calc(var(--input-border-size) + 0.0625rem) var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid):focus-within) igc-input::part(container)::before{box-shadow:inset 0 0 0 calc(var(--input-border-size) + 0.0625rem) var(--error-secondary-color)}:host(:disabled) ::part(label)::after,:host([disabled]) ::part(label)::after{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.375rem, -1 * 3.375rem), var(--is-medium, 1) * max(3rem, -1 * 3rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem))}`;
3
3
  //# sourceMappingURL=date-range-picker.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,g5CAAg5C,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--calendar-border-color: transparent}:host igc-dialog[open]::part(base){border-radius:0}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.3125rem;padding-inline-start:0}:host([required]) ::part(label)::after{color:var(--error-secondary-color)}:host(:not([disabled])[readonly]) igc-input::part(prefix),:host(:not([disabled])[readonly]) igc-input::part(suffix),:host(:not([disabled])[readonly]) igc-date-time-input::part(prefix),:host(:not([disabled])[readonly]) igc-date-time-input::part(suffix){background:rgba(0,0,0,0)}:host(:not([readonly],[invalid],[disabled])) igc-input[readonly]:not(:focus):hover::part(container)::before{color:var(--hover-border-color)}:host(:disabled) ::part(label)::after,:host([disabled]) ::part(label)::after{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.375rem, -1 * 3.375rem), var(--is-medium, 1) * max(3rem, -1 * 3rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem))}`;\n"]}
1
+ {"version":3,"file":"date-range-picker.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,01EAA01E,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--calendar-border-color: transparent}:host igc-dialog[open]::part(base){border-radius:0}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(1.125rem, auto);margin-block-start:.3125rem;padding-inline-start:0}:host([required]) ::part(label)::after{color:var(--error-secondary-color)}:host(:not([disabled])[readonly]) igc-input::part(prefix),:host(:not([disabled])[readonly]) igc-input::part(suffix),:host(:not([disabled])[readonly]) igc-date-time-input::part(prefix),:host(:not([disabled])[readonly]) igc-date-time-input::part(suffix){background:rgba(0,0,0,0)}:host(:not([readonly],[disabled])) igc-input[readonly]:not(:focus):hover::part(container)::before{color:var(--hover-border-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::before{box-shadow:inset 0 0 0 var(--input-border-size) var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container)::before,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input:focus-within::part(container)::before{box-shadow:inset 0 0 0 calc(var(--input-border-size) + 0.0625rem) var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid):focus-within) igc-input::part(container)::before{box-shadow:inset 0 0 0 calc(var(--input-border-size) + 0.0625rem) var(--error-secondary-color)}:host(:disabled) ::part(label)::after,:host([disabled]) ::part(label)::after{color:var(--disabled-text-color)}[part=actions]{min-height:max(var(--is-large, 1) * max(3.375rem, -1 * 3.375rem), var(--is-medium, 1) * max(3rem, -1 * 3rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem))}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--calendar-border-color: var(--ig-gray-400)}:host igc-dialog[open]::part(base){border-radius:.375rem;box-shadow:var(--ig-elevation-5)}:host igc-dialog::part(footer){padding:.5rem 1rem;gap:.5rem}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(0.9375rem, auto);padding-inline-start:0}[part=actions]{min-height:max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.75rem, -1 * 2.75rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));padding:.5rem 1rem}:host(:not([invalid])[readonly]) igc-input::part(container),:host(:not([invalid])[readonly]) igc-date-time-input::part(container){border-color:var(--disabled-text-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(container){background:var(--box-background-hover)}:host(:not([readonly]):hover) igc-input[readonly]::part(filled){color:var(--filled-text-hover-color)}:host(:not([readonly],[invalid]):hover) igc-input[readonly]::part(container){border-color:var(--hover-bottom-line-color)}:host(:not([disabled])[invalid]) ::part(helper-text),:host(:not(:disabled)[invalid]) ::part(helper-text){color:var(--helper-text-color)}`;
2
+ export const styles = css `:host{--calendar-border-color: var(--ig-gray-400)}:host igc-dialog[open]::part(base){border-radius:.375rem;box-shadow:var(--ig-elevation-5)}:host igc-dialog::part(footer){padding:.5rem 1rem;gap:.5rem}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(0.9375rem, auto);padding-inline-start:0}[part=actions]{min-height:max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.75rem, -1 * 2.75rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));padding:.5rem 1rem}:host([readonly]) igc-input::part(container),:host([readonly]) igc-date-time-input::part(container){border-color:var(--disabled-text-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(container),:host(:not([readonly]):hover) igc-date-time-input:hover::part(container){background:var(--box-background-hover);border-color:var(--hover-bottom-line-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(filled),:host(:not([readonly]):hover) igc-date-time-input:hover::part(filled){color:var(--filled-text-hover-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container){border-color:var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::after{background:var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) ::part(helper-text),:host(:not(:disabled,[readonly]):state(ig-invalid)) ::part(helper-text),:host(:not([disabled],[readonly]):state(ig-invalid):hover) ::part(helper-text),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) ::part(helper-text){color:var(--helper-text-color)}`;
3
3
  //# sourceMappingURL=date-range-picker.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ihDAAihD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--calendar-border-color: var(--ig-gray-400)}:host igc-dialog[open]::part(base){border-radius:.375rem;box-shadow:var(--ig-elevation-5)}:host igc-dialog::part(footer){padding:.5rem 1rem;gap:.5rem}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(0.9375rem, auto);padding-inline-start:0}[part=actions]{min-height:max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.75rem, -1 * 2.75rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));padding:.5rem 1rem}:host(:not([invalid])[readonly]) igc-input::part(container),:host(:not([invalid])[readonly]) igc-date-time-input::part(container){border-color:var(--disabled-text-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(container){background:var(--box-background-hover)}:host(:not([readonly]):hover) igc-input[readonly]::part(filled){color:var(--filled-text-hover-color)}:host(:not([readonly],[invalid]):hover) igc-input[readonly]::part(container){border-color:var(--hover-bottom-line-color)}:host(:not([disabled])[invalid]) ::part(helper-text),:host(:not(:disabled)[invalid]) ::part(helper-text){color:var(--helper-text-color)}`;\n"]}
1
+ {"version":3,"file":"date-range-picker.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4vGAA4vG,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--calendar-border-color: var(--ig-gray-400)}:host igc-dialog[open]::part(base){border-radius:.375rem;box-shadow:var(--ig-elevation-5)}:host igc-dialog::part(footer){padding:.5rem 1rem;gap:.5rem}:host ::part(helper-text){font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom);color:var(--helper-text-color);grid-auto-rows:minmax(0.9375rem, auto);padding-inline-start:0}[part=actions]{min-height:max(var(--is-large, 1) * max(3rem, -1 * 3rem), var(--is-medium, 1) * max(2.75rem, -1 * 2.75rem), var(--is-small, 1) * max(2.5rem, -1 * 2.5rem));padding:.5rem 1rem}:host([readonly]) igc-input::part(container),:host([readonly]) igc-date-time-input::part(container){border-color:var(--disabled-text-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(container),:host(:not([readonly]):hover) igc-date-time-input:hover::part(container){background:var(--box-background-hover);border-color:var(--hover-bottom-line-color)}:host(:not([readonly]):hover) igc-input[readonly]::part(filled),:host(:not([readonly]):hover) igc-date-time-input:hover::part(filled){color:var(--filled-text-hover-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container),:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-input::part(container),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container){border-color:var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-input::part(container)::after,:host(:not([disabled],[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-input::part(container)::after,:host(:not(:disabled,[readonly]):state(ig-invalid):hover) igc-date-time-input::part(container)::after{background:var(--error-secondary-color)}:host(:not([disabled],[readonly]):state(ig-invalid)) ::part(helper-text),:host(:not(:disabled,[readonly]):state(ig-invalid)) ::part(helper-text),:host(:not([disabled],[readonly]):state(ig-invalid):hover) ::part(helper-text),:host(:not(:disabled,[readonly]):state(ig-invalid):hover) ::part(helper-text){color:var(--helper-text-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(start),:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(end),:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(filler),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(start),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(end),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(filler){border-color:var(--border-color)}:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(notch),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(notch){border-bottom-color:var(--border-color)}:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(start),:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(end),:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(filler){border-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(notch){border-bottom-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(start),:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(end),:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(filler){border-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(notch){border-bottom-color:var(--focused-border-color)}:host(:not([outlined],[disabled])[readonly]) igc-input::part(container),:host(:not([outlined],[disabled])[readonly]) igc-date-time-input::part(container){background:var(--box-background-focus)}:host(:not([outlined],[invalid])[readonly]:hover) igc-input::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:hover) igc-input::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:focus-within) igc-input::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:focus-within) igc-input::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:hover::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:hover::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:focus-within::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:focus-within::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined])[invalid][readonly]:hover) igc-input::part(container),:host(:not([outlined])[invalid][readonly]:focus-within) igc-input::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined])[invalid][readonly]:hover) igc-input::part(container)::after,:host(:not([outlined])[invalid][readonly]:focus-within) igc-input::part(container)::after{border-color:var(--error-secondary-color)}:host(:not([outlined])[readonly][invalid]) igc-date-time-input:hover::part(container),:host(:not([outlined])[readonly][invalid]) igc-date-time-input:focus-within::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined])[readonly][invalid]) igc-date-time-input:hover::part(container)::after,:host(:not([outlined])[readonly][invalid]) igc-date-time-input:focus-within::part(container)::after{border-color:var(--error-secondary-color)}`;
2
+ export const styles = css `:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(start),:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(end),:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(filler),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(start),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(end),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(filler){border-color:var(--border-color)}:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(notch),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(notch){border-bottom-color:var(--border-color)}:host(:not([outlined],[disabled])[readonly]) igc-input::part(container),:host(:not([outlined],[disabled])[readonly]) igc-date-time-input::part(container){background:var(--box-background-focus)}:host(:not([outlined])[readonly]:hover) igc-date-time-input::part(container),:host(:not([outlined])[readonly]:hover) igc-input::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined])[readonly]:hover) igc-date-time-input::part(container)::after,:host(:not([outlined])[readonly]:hover) igc-input::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]:focus-within) igc-input::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]:focus-within) igc-input::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:hover::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:hover::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:focus-within::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:focus-within::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(label),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(label){color:var(--error-secondary-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input:focus-within::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input:focus-within::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container)::after{background:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(label),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(label){color:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(start),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(end),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(filler),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(start),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(end),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(filler){border-color:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid))::part(notch){border-bottom-color:var(--error-secondary-color)}`;
3
3
  //# sourceMappingURL=date-range-picker.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.material.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0mHAA0mH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(start),:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(end),:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(filler),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(start),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(end),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(filler){border-color:var(--border-color)}:host(:not([invalid])[outlined][readonly]:hover) igc-input::part(notch),:host(:not([invalid])[outlined][readonly]:hover) igc-date-time-input::part(notch){border-bottom-color:var(--border-color)}:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(start),:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(end),:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(filler){border-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]:focus-within) igc-input::part(notch){border-bottom-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(start),:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(end),:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(filler){border-color:var(--focused-border-color)}:host(:not([invalid])[outlined][readonly]) igc-date-time-input:focus-within::part(notch){border-bottom-color:var(--focused-border-color)}:host(:not([outlined],[disabled])[readonly]) igc-input::part(container),:host(:not([outlined],[disabled])[readonly]) igc-date-time-input::part(container){background:var(--box-background-focus)}:host(:not([outlined],[invalid])[readonly]:hover) igc-input::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:hover) igc-input::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:focus-within) igc-input::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]:focus-within) igc-input::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:hover::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:hover::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:focus-within::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined],[invalid])[readonly]) igc-date-time-input:focus-within::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined])[invalid][readonly]:hover) igc-input::part(container),:host(:not([outlined])[invalid][readonly]:focus-within) igc-input::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined])[invalid][readonly]:hover) igc-input::part(container)::after,:host(:not([outlined])[invalid][readonly]:focus-within) igc-input::part(container)::after{border-color:var(--error-secondary-color)}:host(:not([outlined])[readonly][invalid]) igc-date-time-input:hover::part(container),:host(:not([outlined])[readonly][invalid]) igc-date-time-input:focus-within::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined])[readonly][invalid]) igc-date-time-input:hover::part(container)::after,:host(:not([outlined])[readonly][invalid]) igc-date-time-input:focus-within::part(container)::after{border-color:var(--error-secondary-color)}`;\n"]}
1
+ {"version":3,"file":"date-range-picker.material.css.js","sourceRoot":"","sources":["../../../../../src/components/date-range-picker/themes/shared/date-range-picker.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,krIAAkrI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(start),:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(end),:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(filler),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(start),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(end),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(filler){border-color:var(--border-color)}:host(:not(:focus-within)[outlined][readonly]:hover) igc-input::part(notch),:host(:not(:focus-within)[outlined][readonly]:hover) igc-date-time-input::part(notch){border-bottom-color:var(--border-color)}:host(:not([outlined],[disabled])[readonly]) igc-input::part(container),:host(:not([outlined],[disabled])[readonly]) igc-date-time-input::part(container){background:var(--box-background-focus)}:host(:not([outlined])[readonly]:hover) igc-date-time-input::part(container),:host(:not([outlined])[readonly]:hover) igc-input::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined])[readonly]:hover) igc-date-time-input::part(container)::after,:host(:not([outlined])[readonly]:hover) igc-input::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]:focus-within) igc-input::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]:focus-within) igc-input::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:hover::part(container){border-bottom-color:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:hover::part(container)::after{background:var(--idle-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:focus-within::part(container){border-bottom-color:var(--focused-bottom-line-color)}:host(:not(:state(ig-invalid),[outlined])[readonly]) igc-date-time-input:focus-within::part(container)::after{background:var(--focused-bottom-line-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(label),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(label){color:var(--error-secondary-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input:focus-within::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container),:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container){border-color:var(--error-secondary-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-input:focus-within::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input::part(container)::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) igc-date-time-input:focus-within::part(container)::after{background:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(label),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(label){color:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(start),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(end),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-input::part(filler),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(start),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(end),:host(:not([disabled],[readonly])[outlined]:state(ig-invalid)) igc-date-time-input::part(filler){border-color:var(--error-secondary-color)}:host(:not([disabled],[readonly])[outlined]:state(ig-invalid))::part(notch){border-bottom-color:var(--error-secondary-color)}`;\n"]}
@@ -1,5 +1,4 @@
1
1
  import type { AbstractConstructor } from '../common/mixins/constructor.js';
2
- import { type FormValueOf } from '../common/mixins/forms/form-value.js';
3
2
  import type { IgcInputComponentEventMap } from '../input/input-base.js';
4
3
  import { IgcMaskInputBaseComponent, type MaskRange } from '../mask-input/mask-input-base.js';
5
4
  import { DatePart, type DatePartDeltas } from './date-util.js';
@@ -36,7 +35,7 @@ export default class IgcDateTimeInputComponent extends IgcDateTimeInputComponent
36
35
  static readonly tagName = "igc-date-time-input";
37
36
  static register(): void;
38
37
  protected get __validators(): import("../common/validators.js").Validator<IgcDateTimeInputComponent>[];
39
- protected readonly _formValue: FormValueOf<Date | null>;
38
+ protected readonly _formValue: import("../common/mixins/forms/form-value.js").FormValue<Date | null>;
40
39
  protected _defaultMask: string;
41
40
  private _oldValue;
42
41
  private _min;
@@ -13,7 +13,8 @@ import { addKeybindings, arrowDown, arrowLeft, arrowRight, arrowUp, ctrlKey, } f
13
13
  import { watch } from '../common/decorators/watch.js';
14
14
  import { registerComponent } from '../common/definitions/register.js';
15
15
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
16
- import { createFormValueState, defaultDateTimeTransformers, } from '../common/mixins/forms/form-value.js';
16
+ import { FormValueDateTimeTransformers } from '../common/mixins/forms/form-transformers.js';
17
+ import { createFormValueState } from '../common/mixins/forms/form-value.js';
17
18
  import { partMap } from '../common/part-map.js';
18
19
  import { IgcMaskInputBaseComponent, } from '../mask-input/mask-input-base.js';
19
20
  import IgcValidationContainerComponent from '../validation-container/validation-container.js';
@@ -44,18 +45,17 @@ class IgcDateTimeInputComponent extends EventEmitterMixin(IgcMaskInputBaseCompon
44
45
  set value(value) {
45
46
  this._formValue.setValueAndFormState(value);
46
47
  this.updateMask();
47
- this._validate();
48
48
  }
49
49
  set min(value) {
50
50
  this._min = convertToDate(value);
51
- this._updateValidity();
51
+ this._validate();
52
52
  }
53
53
  get min() {
54
54
  return this._min;
55
55
  }
56
56
  set max(value) {
57
57
  this._max = convertToDate(value);
58
- this._updateValidity();
58
+ this._validate();
59
59
  }
60
60
  get max() {
61
61
  return this._max;
@@ -124,7 +124,7 @@ class IgcDateTimeInputComponent extends EventEmitterMixin(IgcMaskInputBaseCompon
124
124
  super();
125
125
  this._formValue = createFormValueState(this, {
126
126
  initialValue: null,
127
- transformers: defaultDateTimeTransformers,
127
+ transformers: FormValueDateTimeTransformers,
128
128
  });
129
129
  this._oldValue = null;
130
130
  this._min = null;
@@ -153,7 +153,6 @@ class IgcDateTimeInputComponent extends EventEmitterMixin(IgcMaskInputBaseCompon
153
153
  super.connectedCallback();
154
154
  this.updateDefaultMask();
155
155
  this.setMask(this.inputFormat);
156
- this._updateValidity();
157
156
  if (this.value) {
158
157
  this.updateMask();
159
158
  }
@@ -208,6 +207,7 @@ class IgcDateTimeInputComponent extends EventEmitterMixin(IgcMaskInputBaseCompon
208
207
  }
209
208
  }
210
209
  handleInput() {
210
+ this._setTouchedState();
211
211
  this.emitEvent('igcInput', { detail: this.value?.toString() });
212
212
  }
213
213
  handleDragLeave() {
@@ -381,7 +381,7 @@ class IgcDateTimeInputComponent extends EventEmitterMixin(IgcMaskInputBaseCompon
381
381
  if (!(this.readOnly || isSameValue)) {
382
382
  this.emitEvent('igcChange', { detail: this.value });
383
383
  }
384
- this.checkValidity();
384
+ super._handleBlur();
385
385
  }
386
386
  navigateParts(delta) {
387
387
  const position = this.getNewPosition(this.input.value, delta);
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-input.js","sourceRoot":"","sources":["../../../src/components/date-time-input/date-time-input.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { eventOptions, property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\n\nimport { convertToDate } from '../calendar/helpers.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n ctrlKey,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport {\n createFormValueState,\n defaultDateTimeTransformers,\n type FormValueOf,\n} from '../common/mixins/forms/form-value.js';\nimport { partMap } from '../common/part-map.js';\nimport type { IgcInputComponentEventMap } from '../input/input-base.js';\nimport {\n IgcMaskInputBaseComponent,\n type MaskRange,\n} from '../mask-input/mask-input-base.js';\nimport IgcValidationContainerComponent from '../validation-container/validation-container.js';\nimport {\n DatePart,\n type DatePartDeltas,\n type DatePartInfo,\n DateParts,\n DateTimeUtil,\n} from './date-util.js';\nimport { dateTimeInputValidators } from './validators.js';\n\nexport interface IgcDateTimeInputComponentEventMap\n extends Omit<IgcInputComponentEventMap, 'igcChange'> {\n igcChange: CustomEvent<Date | null>;\n}\n\n/**\n * A date time input is an input field that lets you set and edit the date and time in a chosen input element\n * using customizable display and input formats.\n *\n * @element igc-date-time-input\n *\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot helper-text - Renders content below the input.\n * @slot value-missing - Renders content when the required validation fails.\n * @slot range-overflow - Renders content when the max validation fails.\n * @slot range-underflow - Renders content when the min validation fails.\n * @slot custom-error - Renders content when setCustomValidity(message) is set.\n * @slot invalid - Renders content when the component is in invalid state (validity.valid = false).\n *\n * @fires igcInput - Emitted when the control input receives user input.\n * @fires igcChange - Emitted when the control's checked state changes.\n *\n * @csspart container - The main wrapper that holds all main input elements.\n * @csspart input - The native input element.\n * @csspart label - The native label element.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n * @csspart helper-text - The helper text wrapper.\n */\nexport default class IgcDateTimeInputComponent extends EventEmitterMixin<\n IgcDateTimeInputComponentEventMap,\n AbstractConstructor<IgcMaskInputBaseComponent>\n>(IgcMaskInputBaseComponent) {\n public static readonly tagName = 'igc-date-time-input';\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcDateTimeInputComponent,\n IgcValidationContainerComponent\n );\n }\n\n protected override get __validators() {\n return dateTimeInputValidators;\n }\n\n protected override readonly _formValue: FormValueOf<Date | null> =\n createFormValueState(this, {\n initialValue: null,\n transformers: defaultDateTimeTransformers,\n });\n\n protected _defaultMask!: string;\n private _oldValue: Date | null = null;\n private _min: Date | null = null;\n private _max: Date | null = null;\n\n private _inputDateParts!: DatePartInfo[];\n private _inputFormat!: string;\n private _datePartDeltas: DatePartDeltas = {\n date: 1,\n month: 1,\n year: 1,\n hours: 1,\n minutes: 1,\n seconds: 1,\n };\n\n /**\n * The date format to apply on the input.\n * @attr input-format\n */\n @property({ attribute: 'input-format' })\n public get inputFormat(): string {\n return this._inputFormat || this._defaultMask;\n }\n\n public set inputFormat(val: string) {\n if (val) {\n this.setMask(val);\n this._inputFormat = val;\n if (this.value) {\n this.updateMask();\n }\n }\n }\n\n public get value(): Date | null {\n return this._formValue.value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The value of the input.\n * @attr\n */\n @property({ converter: convertToDate })\n public set value(value: Date | string | null | undefined) {\n this._formValue.setValueAndFormState(value as Date | null);\n this.updateMask();\n this._validate();\n }\n\n /**\n * The minimum value required for the input to remain valid.\n * @attr\n */\n @property({ converter: convertToDate })\n public set min(value: Date | string | null | undefined) {\n this._min = convertToDate(value);\n this._updateValidity();\n }\n\n public get min(): Date | null {\n return this._min;\n }\n\n /**\n * The maximum value required for the input to remain valid.\n * @attr\n */\n @property({ converter: convertToDate })\n public set max(value: Date | string | null | undefined) {\n this._max = convertToDate(value);\n this._updateValidity();\n }\n\n public get max(): Date | null {\n return this._max;\n }\n\n /**\n * Format to display the value in when not editing.\n * Defaults to the input format if not set.\n * @attr display-format\n */\n @property({ attribute: 'display-format' })\n public displayFormat!: string;\n\n /**\n * Delta values used to increment or decrement each date part on step actions.\n * All values default to `1`.\n */\n @property({ attribute: false })\n public spinDelta!: DatePartDeltas;\n\n /**\n * Sets whether to loop over the currently spun segment.\n * @attr spin-loop\n */\n @property({ type: Boolean, attribute: 'spin-loop' })\n public spinLoop = true;\n\n /**\n * The locale settings used to display the value.\n * @attr\n */\n @property()\n public locale = 'en';\n\n @watch('locale', { waitUntilFirstUpdate: true })\n protected setDefaultMask(): void {\n if (!this._inputFormat) {\n this.updateDefaultMask();\n this.setMask(this._defaultMask);\n }\n\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('displayFormat', { waitUntilFirstUpdate: true })\n protected setDisplayFormat(): void {\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('prompt', { waitUntilFirstUpdate: true })\n protected promptChange(): void {\n if (!this.prompt) {\n this.prompt = this.parser.prompt;\n } else {\n this.parser.prompt = this.prompt;\n }\n }\n\n protected get hasDateParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n\n return parts.some(\n (p) =>\n p.type === DateParts.Date ||\n p.type === DateParts.Month ||\n p.type === DateParts.Year\n );\n }\n\n protected get hasTimeParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n return parts.some(\n (p) =>\n p.type === DateParts.Hours ||\n p.type === DateParts.Minutes ||\n p.type === DateParts.Seconds\n );\n }\n\n private get targetDatePart(): DatePart | undefined {\n let result: DatePart | undefined;\n\n if (this.focused) {\n const partType = this._inputDateParts.find(\n (p) =>\n p.start <= this.inputSelection.start &&\n this.inputSelection.start <= p.end &&\n p.type !== DateParts.Literal\n )?.type as string as DatePart;\n\n if (partType) {\n result = partType;\n }\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Date)) {\n result = DatePart.Date;\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Hours)) {\n result = DatePart.Hours;\n } else {\n result = this._inputDateParts[0].type as string as DatePart;\n }\n\n return result;\n }\n\n private get datePartDeltas(): DatePartDeltas {\n return Object.assign({}, this._datePartDeltas, this.spinDelta);\n }\n\n constructor() {\n super();\n\n addKeybindings(this, {\n skip: () => this.readOnly,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set([ctrlKey, ';'], this.setToday)\n .set(arrowUp, this.keyboardSpin.bind(this, 'up'))\n .set(arrowDown, this.keyboardSpin.bind(this, 'down'))\n .set([ctrlKey, arrowLeft], this.navigateParts.bind(this, 0))\n .set([ctrlKey, arrowRight], this.navigateParts.bind(this, 1));\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateDefaultMask();\n this.setMask(this.inputFormat);\n this._updateValidity();\n if (this.value) {\n this.updateMask();\n }\n }\n\n /** Increments a date/time portion. */\n public stepUp(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const { start, end } = this.inputSelection;\n const newValue = this.trySpinValue(targetPart, delta);\n this.value = newValue;\n this.updateComplete.then(() => this.input.setSelectionRange(start, end));\n }\n\n /** Decrements a date/time portion. */\n public stepDown(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const { start, end } = this.inputSelection;\n const newValue = this.trySpinValue(targetPart, delta, true);\n this.value = newValue;\n this.updateComplete.then(() => this.input.setSelectionRange(start, end));\n }\n\n /** Clears the input element of user input. */\n public clear(): void {\n this.maskedValue = '';\n this.value = null;\n }\n\n protected setToday() {\n this.value = new Date();\n this.handleInput();\n }\n\n protected updateMask() {\n if (this.focused) {\n this.maskedValue = this.getMaskedValue();\n } else {\n if (!DateTimeUtil.isValidDate(this.value)) {\n this.maskedValue = '';\n return;\n }\n\n const format = this.displayFormat || this.inputFormat;\n\n if (this.displayFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format,\n true\n );\n } else if (this.inputFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format\n );\n } else {\n this.maskedValue = this.value.toLocaleString();\n }\n }\n }\n\n protected override handleInput() {\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n\n protected handleDragLeave() {\n if (!this.focused) {\n this.updateMask();\n }\n }\n\n protected handleDragEnter() {\n if (!this.focused) {\n this.maskedValue = this.getMaskedValue();\n }\n }\n\n protected async updateInput(string: string, range: MaskRange) {\n const { value, end } = this.parser.replace(\n this.maskedValue,\n string,\n range.start,\n range.end\n );\n\n this.maskedValue = value;\n\n this.updateValue();\n this.requestUpdate();\n\n if (range.start !== this.inputFormat.length) {\n this.handleInput();\n }\n await this.updateComplete;\n this.input.setSelectionRange(end, end);\n }\n\n private trySpinValue(\n datePart: DatePart,\n delta?: number,\n negative = false\n ): Date {\n // default to 1 if a delta is set to 0 or any other falsy value\n const _delta =\n delta || this.datePartDeltas[datePart as keyof DatePartDeltas] || 1;\n\n const spinValue = negative ? -Math.abs(_delta) : Math.abs(_delta);\n return this.spinValue(datePart, spinValue);\n }\n\n private spinValue(datePart: DatePart, delta: number): Date {\n if (!(this.value && DateTimeUtil.isValidDate(this.value))) {\n return new Date();\n }\n\n const newDate = new Date(this.value.getTime());\n let formatPart: DatePartInfo | undefined;\n let amPmFromMask: string;\n\n switch (datePart) {\n case DatePart.Date:\n DateTimeUtil.spinDate(delta, newDate, this.spinLoop);\n break;\n case DatePart.Month:\n DateTimeUtil.spinMonth(delta, newDate, this.spinLoop);\n break;\n case DatePart.Year:\n DateTimeUtil.spinYear(delta, newDate);\n break;\n case DatePart.Hours:\n DateTimeUtil.spinHours(delta, newDate, this.spinLoop);\n break;\n case DatePart.Minutes:\n DateTimeUtil.spinMinutes(delta, newDate, this.spinLoop);\n break;\n case DatePart.Seconds:\n DateTimeUtil.spinSeconds(delta, newDate, this.spinLoop);\n break;\n case DatePart.AmPm:\n formatPart = this._inputDateParts.find(\n (dp) => dp.type === DateParts.AmPm\n );\n if (formatPart !== undefined) {\n amPmFromMask = this.maskedValue.substring(\n formatPart!.start,\n formatPart!.end\n );\n return DateTimeUtil.spinAmPm(newDate, this.value, amPmFromMask);\n }\n break;\n }\n\n return newDate;\n }\n\n @eventOptions({ passive: false })\n private async onWheel(event: WheelEvent) {\n if (!this.focused || this.readOnly) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n const { start, end } = this.inputSelection;\n event.deltaY > 0 ? this.stepDown() : this.stepUp();\n this.handleInput();\n\n await this.updateComplete;\n this.setSelectionRange(start, end);\n }\n\n private updateDefaultMask(): void {\n this._defaultMask = DateTimeUtil.getDefaultMask(this.locale);\n }\n\n private setMask(string: string): void {\n const oldFormat = this._inputDateParts?.map((p) => p.format).join('');\n this._inputDateParts = DateTimeUtil.parseDateTimeFormat(string);\n const value = this._inputDateParts.map((p) => p.format).join('');\n\n this._defaultMask = value;\n\n const newMask = (value || DateTimeUtil.DEFAULT_INPUT_FORMAT).replace(\n new RegExp(/(?=[^t])[\\w]/, 'g'),\n '0'\n );\n\n this._mask = newMask.includes('tt')\n ? newMask.replace(/tt/g, 'LL')\n : newMask;\n\n this.parser.mask = this._mask;\n this.parser.prompt = this.prompt;\n\n if (!this.placeholder || oldFormat === this.placeholder) {\n this.placeholder = value;\n }\n }\n\n private parseDate(val: string) {\n return val\n ? DateTimeUtil.parseValueFromMask(val, this._inputDateParts, this.prompt)\n : null;\n }\n\n private getMaskedValue(): string {\n let mask = this.emptyMask;\n\n if (DateTimeUtil.isValidDate(this.value)) {\n for (const part of this._inputDateParts) {\n if (part.type === DateParts.Literal) {\n continue;\n }\n\n const targetValue = DateTimeUtil.getPartValue(\n part,\n part.format.length,\n this.value\n );\n\n mask = this.parser.replace(\n mask,\n targetValue,\n part.start,\n part.end\n ).value;\n }\n return mask;\n }\n\n return this.maskedValue === '' ? mask : this.maskedValue;\n }\n\n private isComplete(): boolean {\n return !this.maskedValue.includes(this.prompt);\n }\n\n private updateValue(): void {\n if (this.isComplete()) {\n const parsedDate = this.parseDate(this.maskedValue);\n this.value = DateTimeUtil.isValidDate(parsedDate) ? parsedDate : null;\n } else {\n this.value = null;\n }\n }\n\n protected override _updateSetRangeTextValue() {\n this.updateValue();\n }\n\n private getNewPosition(value: string, direction = 0): number {\n const cursorPos = this.selection.start;\n\n if (!direction) {\n // Last literal before the current cursor position or start of input value\n const part = this._inputDateParts.findLast(\n (part) => part.type === DateParts.Literal && part.end < cursorPos\n );\n return part?.end ?? 0;\n }\n\n // First literal after the current cursor position or end of input value\n const part = this._inputDateParts.find(\n (part) => part.type === DateParts.Literal && part.start > cursorPos\n );\n return part?.start ?? value.length;\n }\n\n protected async handleFocus() {\n this.focused = true;\n\n if (this.readOnly) {\n return;\n }\n\n this._oldValue = this.value;\n const areFormatsDifferent = this.displayFormat !== this.inputFormat;\n\n if (!this.value) {\n this.maskedValue = this.emptyMask;\n await this.updateComplete;\n this.select();\n } else if (areFormatsDifferent) {\n this.updateMask();\n }\n }\n\n protected handleBlur() {\n const isEmptyMask = this.maskedValue === this.emptyMask;\n\n this.focused = false;\n\n if (!(this.isComplete() || isEmptyMask)) {\n const parse = this.parseDate(this.maskedValue);\n\n if (parse) {\n this.value = parse;\n } else {\n this.value = null;\n this.maskedValue = '';\n }\n } else {\n this.updateMask();\n }\n\n const isSameValue = this._oldValue === this.value;\n\n if (!(this.readOnly || isSameValue)) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n\n this.checkValidity();\n }\n\n protected navigateParts(delta: number) {\n const position = this.getNewPosition(this.input.value, delta);\n this.setSelectionRange(position, position);\n }\n\n protected async keyboardSpin(direction: 'up' | 'down') {\n direction === 'up' ? this.stepUp() : this.stepDown();\n this.handleInput();\n await this.updateComplete;\n this.setSelectionRange(this.selection.start, this.selection.end);\n }\n\n protected override renderInput() {\n return html`\n <input\n type=\"text\"\n part=${partMap(this.resolvePartNames('input'))}\n name=${ifDefined(this.name)}\n .value=${live(this.maskedValue)}\n .placeholder=${live(this.placeholder || this.emptyMask)}\n ?readonly=${this.readOnly}\n ?disabled=${this.disabled}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @input=${super.handleInput}\n @wheel=${this.onWheel}\n @keydown=${super.handleKeydown}\n @click=${this.handleClick}\n @cut=${this.handleCut}\n @compositionstart=${this.handleCompositionStart}\n @compositionend=${this.handleCompositionEnd}\n @dragenter=${this.handleDragEnter}\n @dragleave=${this.handleDragLeave}\n @dragstart=${this.handleDragStart}\n />\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-date-time-input': IgcDateTimeInputComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"date-time-input.js","sourceRoot":"","sources":["../../../src/components/date-time-input/date-time-input.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { eventOptions, property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\n\nimport { convertToDate } from '../calendar/helpers.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n ctrlKey,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormValueDateTimeTransformers } from '../common/mixins/forms/form-transformers.js';\nimport { createFormValueState } from '../common/mixins/forms/form-value.js';\nimport { partMap } from '../common/part-map.js';\nimport type { IgcInputComponentEventMap } from '../input/input-base.js';\nimport {\n IgcMaskInputBaseComponent,\n type MaskRange,\n} from '../mask-input/mask-input-base.js';\nimport IgcValidationContainerComponent from '../validation-container/validation-container.js';\nimport {\n DatePart,\n type DatePartDeltas,\n type DatePartInfo,\n DateParts,\n DateTimeUtil,\n} from './date-util.js';\nimport { dateTimeInputValidators } from './validators.js';\n\nexport interface IgcDateTimeInputComponentEventMap\n extends Omit<IgcInputComponentEventMap, 'igcChange'> {\n igcChange: CustomEvent<Date | null>;\n}\n\n/**\n * A date time input is an input field that lets you set and edit the date and time in a chosen input element\n * using customizable display and input formats.\n *\n * @element igc-date-time-input\n *\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot helper-text - Renders content below the input.\n * @slot value-missing - Renders content when the required validation fails.\n * @slot range-overflow - Renders content when the max validation fails.\n * @slot range-underflow - Renders content when the min validation fails.\n * @slot custom-error - Renders content when setCustomValidity(message) is set.\n * @slot invalid - Renders content when the component is in invalid state (validity.valid = false).\n *\n * @fires igcInput - Emitted when the control input receives user input.\n * @fires igcChange - Emitted when the control's checked state changes.\n *\n * @csspart container - The main wrapper that holds all main input elements.\n * @csspart input - The native input element.\n * @csspart label - The native label element.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n * @csspart helper-text - The helper text wrapper.\n */\nexport default class IgcDateTimeInputComponent extends EventEmitterMixin<\n IgcDateTimeInputComponentEventMap,\n AbstractConstructor<IgcMaskInputBaseComponent>\n>(IgcMaskInputBaseComponent) {\n public static readonly tagName = 'igc-date-time-input';\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcDateTimeInputComponent,\n IgcValidationContainerComponent\n );\n }\n\n protected override get __validators() {\n return dateTimeInputValidators;\n }\n\n protected override readonly _formValue = createFormValueState(this, {\n initialValue: null,\n transformers: FormValueDateTimeTransformers,\n });\n\n protected _defaultMask!: string;\n private _oldValue: Date | null = null;\n private _min: Date | null = null;\n private _max: Date | null = null;\n\n private _inputDateParts!: DatePartInfo[];\n private _inputFormat!: string;\n private _datePartDeltas: DatePartDeltas = {\n date: 1,\n month: 1,\n year: 1,\n hours: 1,\n minutes: 1,\n seconds: 1,\n };\n\n /**\n * The date format to apply on the input.\n * @attr input-format\n */\n @property({ attribute: 'input-format' })\n public get inputFormat(): string {\n return this._inputFormat || this._defaultMask;\n }\n\n public set inputFormat(val: string) {\n if (val) {\n this.setMask(val);\n this._inputFormat = val;\n if (this.value) {\n this.updateMask();\n }\n }\n }\n\n public get value(): Date | null {\n return this._formValue.value;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The value of the input.\n * @attr\n */\n @property({ converter: convertToDate })\n public set value(value: Date | string | null | undefined) {\n this._formValue.setValueAndFormState(value as Date | null);\n this.updateMask();\n }\n\n /**\n * The minimum value required for the input to remain valid.\n * @attr\n */\n @property({ converter: convertToDate })\n public set min(value: Date | string | null | undefined) {\n this._min = convertToDate(value);\n this._validate();\n }\n\n public get min(): Date | null {\n return this._min;\n }\n\n /**\n * The maximum value required for the input to remain valid.\n * @attr\n */\n @property({ converter: convertToDate })\n public set max(value: Date | string | null | undefined) {\n this._max = convertToDate(value);\n this._validate();\n }\n\n public get max(): Date | null {\n return this._max;\n }\n\n /**\n * Format to display the value in when not editing.\n * Defaults to the input format if not set.\n * @attr display-format\n */\n @property({ attribute: 'display-format' })\n public displayFormat!: string;\n\n /**\n * Delta values used to increment or decrement each date part on step actions.\n * All values default to `1`.\n */\n @property({ attribute: false })\n public spinDelta!: DatePartDeltas;\n\n /**\n * Sets whether to loop over the currently spun segment.\n * @attr spin-loop\n */\n @property({ type: Boolean, attribute: 'spin-loop' })\n public spinLoop = true;\n\n /**\n * The locale settings used to display the value.\n * @attr\n */\n @property()\n public locale = 'en';\n\n @watch('locale', { waitUntilFirstUpdate: true })\n protected setDefaultMask(): void {\n if (!this._inputFormat) {\n this.updateDefaultMask();\n this.setMask(this._defaultMask);\n }\n\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('displayFormat', { waitUntilFirstUpdate: true })\n protected setDisplayFormat(): void {\n if (this.value) {\n this.updateMask();\n }\n }\n\n @watch('prompt', { waitUntilFirstUpdate: true })\n protected promptChange(): void {\n if (!this.prompt) {\n this.prompt = this.parser.prompt;\n } else {\n this.parser.prompt = this.prompt;\n }\n }\n\n protected get hasDateParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n\n return parts.some(\n (p) =>\n p.type === DateParts.Date ||\n p.type === DateParts.Month ||\n p.type === DateParts.Year\n );\n }\n\n protected get hasTimeParts(): boolean {\n const parts =\n this._inputDateParts ||\n DateTimeUtil.parseDateTimeFormat(this.inputFormat);\n return parts.some(\n (p) =>\n p.type === DateParts.Hours ||\n p.type === DateParts.Minutes ||\n p.type === DateParts.Seconds\n );\n }\n\n private get targetDatePart(): DatePart | undefined {\n let result: DatePart | undefined;\n\n if (this.focused) {\n const partType = this._inputDateParts.find(\n (p) =>\n p.start <= this.inputSelection.start &&\n this.inputSelection.start <= p.end &&\n p.type !== DateParts.Literal\n )?.type as string as DatePart;\n\n if (partType) {\n result = partType;\n }\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Date)) {\n result = DatePart.Date;\n } else if (this._inputDateParts.some((p) => p.type === DateParts.Hours)) {\n result = DatePart.Hours;\n } else {\n result = this._inputDateParts[0].type as string as DatePart;\n }\n\n return result;\n }\n\n private get datePartDeltas(): DatePartDeltas {\n return Object.assign({}, this._datePartDeltas, this.spinDelta);\n }\n\n constructor() {\n super();\n\n addKeybindings(this, {\n skip: () => this.readOnly,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set([ctrlKey, ';'], this.setToday)\n .set(arrowUp, this.keyboardSpin.bind(this, 'up'))\n .set(arrowDown, this.keyboardSpin.bind(this, 'down'))\n .set([ctrlKey, arrowLeft], this.navigateParts.bind(this, 0))\n .set([ctrlKey, arrowRight], this.navigateParts.bind(this, 1));\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.updateDefaultMask();\n this.setMask(this.inputFormat);\n if (this.value) {\n this.updateMask();\n }\n }\n\n /** Increments a date/time portion. */\n public stepUp(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const { start, end } = this.inputSelection;\n const newValue = this.trySpinValue(targetPart, delta);\n this.value = newValue;\n this.updateComplete.then(() => this.input.setSelectionRange(start, end));\n }\n\n /** Decrements a date/time portion. */\n public stepDown(datePart?: DatePart, delta?: number): void {\n const targetPart = datePart || this.targetDatePart;\n\n if (!targetPart) {\n return;\n }\n\n const { start, end } = this.inputSelection;\n const newValue = this.trySpinValue(targetPart, delta, true);\n this.value = newValue;\n this.updateComplete.then(() => this.input.setSelectionRange(start, end));\n }\n\n /** Clears the input element of user input. */\n public clear(): void {\n this.maskedValue = '';\n this.value = null;\n }\n\n protected setToday() {\n this.value = new Date();\n this.handleInput();\n }\n\n protected updateMask() {\n if (this.focused) {\n this.maskedValue = this.getMaskedValue();\n } else {\n if (!DateTimeUtil.isValidDate(this.value)) {\n this.maskedValue = '';\n return;\n }\n\n const format = this.displayFormat || this.inputFormat;\n\n if (this.displayFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format,\n true\n );\n } else if (this.inputFormat) {\n this.maskedValue = DateTimeUtil.formatDate(\n this.value,\n this.locale,\n format\n );\n } else {\n this.maskedValue = this.value.toLocaleString();\n }\n }\n }\n\n protected override handleInput() {\n this._setTouchedState();\n this.emitEvent('igcInput', { detail: this.value?.toString() });\n }\n\n protected handleDragLeave() {\n if (!this.focused) {\n this.updateMask();\n }\n }\n\n protected handleDragEnter() {\n if (!this.focused) {\n this.maskedValue = this.getMaskedValue();\n }\n }\n\n protected async updateInput(string: string, range: MaskRange) {\n const { value, end } = this.parser.replace(\n this.maskedValue,\n string,\n range.start,\n range.end\n );\n\n this.maskedValue = value;\n\n this.updateValue();\n this.requestUpdate();\n\n if (range.start !== this.inputFormat.length) {\n this.handleInput();\n }\n await this.updateComplete;\n this.input.setSelectionRange(end, end);\n }\n\n private trySpinValue(\n datePart: DatePart,\n delta?: number,\n negative = false\n ): Date {\n // default to 1 if a delta is set to 0 or any other falsy value\n const _delta =\n delta || this.datePartDeltas[datePart as keyof DatePartDeltas] || 1;\n\n const spinValue = negative ? -Math.abs(_delta) : Math.abs(_delta);\n return this.spinValue(datePart, spinValue);\n }\n\n private spinValue(datePart: DatePart, delta: number): Date {\n if (!(this.value && DateTimeUtil.isValidDate(this.value))) {\n return new Date();\n }\n\n const newDate = new Date(this.value.getTime());\n let formatPart: DatePartInfo | undefined;\n let amPmFromMask: string;\n\n switch (datePart) {\n case DatePart.Date:\n DateTimeUtil.spinDate(delta, newDate, this.spinLoop);\n break;\n case DatePart.Month:\n DateTimeUtil.spinMonth(delta, newDate, this.spinLoop);\n break;\n case DatePart.Year:\n DateTimeUtil.spinYear(delta, newDate);\n break;\n case DatePart.Hours:\n DateTimeUtil.spinHours(delta, newDate, this.spinLoop);\n break;\n case DatePart.Minutes:\n DateTimeUtil.spinMinutes(delta, newDate, this.spinLoop);\n break;\n case DatePart.Seconds:\n DateTimeUtil.spinSeconds(delta, newDate, this.spinLoop);\n break;\n case DatePart.AmPm:\n formatPart = this._inputDateParts.find(\n (dp) => dp.type === DateParts.AmPm\n );\n if (formatPart !== undefined) {\n amPmFromMask = this.maskedValue.substring(\n formatPart!.start,\n formatPart!.end\n );\n return DateTimeUtil.spinAmPm(newDate, this.value, amPmFromMask);\n }\n break;\n }\n\n return newDate;\n }\n\n @eventOptions({ passive: false })\n private async onWheel(event: WheelEvent) {\n if (!this.focused || this.readOnly) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n const { start, end } = this.inputSelection;\n event.deltaY > 0 ? this.stepDown() : this.stepUp();\n this.handleInput();\n\n await this.updateComplete;\n this.setSelectionRange(start, end);\n }\n\n private updateDefaultMask(): void {\n this._defaultMask = DateTimeUtil.getDefaultMask(this.locale);\n }\n\n private setMask(string: string): void {\n const oldFormat = this._inputDateParts?.map((p) => p.format).join('');\n this._inputDateParts = DateTimeUtil.parseDateTimeFormat(string);\n const value = this._inputDateParts.map((p) => p.format).join('');\n\n this._defaultMask = value;\n\n const newMask = (value || DateTimeUtil.DEFAULT_INPUT_FORMAT).replace(\n new RegExp(/(?=[^t])[\\w]/, 'g'),\n '0'\n );\n\n this._mask = newMask.includes('tt')\n ? newMask.replace(/tt/g, 'LL')\n : newMask;\n\n this.parser.mask = this._mask;\n this.parser.prompt = this.prompt;\n\n if (!this.placeholder || oldFormat === this.placeholder) {\n this.placeholder = value;\n }\n }\n\n private parseDate(val: string) {\n return val\n ? DateTimeUtil.parseValueFromMask(val, this._inputDateParts, this.prompt)\n : null;\n }\n\n private getMaskedValue(): string {\n let mask = this.emptyMask;\n\n if (DateTimeUtil.isValidDate(this.value)) {\n for (const part of this._inputDateParts) {\n if (part.type === DateParts.Literal) {\n continue;\n }\n\n const targetValue = DateTimeUtil.getPartValue(\n part,\n part.format.length,\n this.value\n );\n\n mask = this.parser.replace(\n mask,\n targetValue,\n part.start,\n part.end\n ).value;\n }\n return mask;\n }\n\n return this.maskedValue === '' ? mask : this.maskedValue;\n }\n\n private isComplete(): boolean {\n return !this.maskedValue.includes(this.prompt);\n }\n\n private updateValue(): void {\n if (this.isComplete()) {\n const parsedDate = this.parseDate(this.maskedValue);\n this.value = DateTimeUtil.isValidDate(parsedDate) ? parsedDate : null;\n } else {\n this.value = null;\n }\n }\n\n protected override _updateSetRangeTextValue() {\n this.updateValue();\n }\n\n private getNewPosition(value: string, direction = 0): number {\n const cursorPos = this.selection.start;\n\n if (!direction) {\n // Last literal before the current cursor position or start of input value\n const part = this._inputDateParts.findLast(\n (part) => part.type === DateParts.Literal && part.end < cursorPos\n );\n return part?.end ?? 0;\n }\n\n // First literal after the current cursor position or end of input value\n const part = this._inputDateParts.find(\n (part) => part.type === DateParts.Literal && part.start > cursorPos\n );\n return part?.start ?? value.length;\n }\n\n protected async handleFocus() {\n this.focused = true;\n\n if (this.readOnly) {\n return;\n }\n\n this._oldValue = this.value;\n const areFormatsDifferent = this.displayFormat !== this.inputFormat;\n\n if (!this.value) {\n this.maskedValue = this.emptyMask;\n await this.updateComplete;\n this.select();\n } else if (areFormatsDifferent) {\n this.updateMask();\n }\n }\n\n protected handleBlur() {\n const isEmptyMask = this.maskedValue === this.emptyMask;\n\n this.focused = false;\n\n if (!(this.isComplete() || isEmptyMask)) {\n const parse = this.parseDate(this.maskedValue);\n\n if (parse) {\n this.value = parse;\n } else {\n this.value = null;\n this.maskedValue = '';\n }\n } else {\n this.updateMask();\n }\n\n const isSameValue = this._oldValue === this.value;\n\n if (!(this.readOnly || isSameValue)) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n\n super._handleBlur();\n }\n\n protected navigateParts(delta: number) {\n const position = this.getNewPosition(this.input.value, delta);\n this.setSelectionRange(position, position);\n }\n\n protected async keyboardSpin(direction: 'up' | 'down') {\n direction === 'up' ? this.stepUp() : this.stepDown();\n this.handleInput();\n await this.updateComplete;\n this.setSelectionRange(this.selection.start, this.selection.end);\n }\n\n protected override renderInput() {\n return html`\n <input\n type=\"text\"\n part=${partMap(this.resolvePartNames('input'))}\n name=${ifDefined(this.name)}\n .value=${live(this.maskedValue)}\n .placeholder=${live(this.placeholder || this.emptyMask)}\n ?readonly=${this.readOnly}\n ?disabled=${this.disabled}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @input=${super.handleInput}\n @wheel=${this.onWheel}\n @keydown=${super.handleKeydown}\n @click=${this.handleClick}\n @cut=${this.handleCut}\n @compositionstart=${this.handleCompositionStart}\n @compositionend=${this.handleCompositionEnd}\n @dragenter=${this.handleDragEnter}\n @dragleave=${this.handleDragLeave}\n @dragstart=${this.handleDragStart}\n />\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-date-time-input': IgcDateTimeInputComponent;\n }\n}\n"]}
@@ -10,37 +10,34 @@ declare const IgcDialogComponent_base: Constructor<import("../common/mixins/even
10
10
  *
11
11
  * @element igc-dialog
12
12
  *
13
- * @fires igcClosing - Emitter just before the dialog is closed.
13
+ * @fires igcClosing - Emitter just before the dialog is closed. Cancelable.
14
14
  * @fires igcClosed - Emitted after closing the dialog.
15
15
  *
16
- * @slot - Renders content inside the default slot.
17
- * @slot title - Renders the title of the dialog header.
16
+ * @slot - Renders content inside the default slot of the dialog.
17
+ * @slot title - Renders content in the title slot of the dialog header.
18
18
  * @slot message - Renders the message content of the dialog.
19
- * @slot footer - Renders the dialog footer.
19
+ * @slot footer - Renders content in the dialog footer.
20
20
  *
21
21
  * @csspart base - The base wrapper of the dialog.
22
- * @csspart title - The title container.
23
- * @csspart footer - The footer container.
24
- * @csspart overlay - The overlay.
22
+ * @csspart title - The title container of the dialog.
23
+ * @csspart footer - The footer container of the dialog.
24
+ * @csspart overlay - The backdrop overlay of the dialog.
25
25
  */
26
26
  export default class IgcDialogComponent extends IgcDialogComponent_base {
27
27
  static readonly tagName = "igc-dialog";
28
28
  static styles: import("lit").CSSResult[];
29
29
  static register(): void;
30
- private static readonly increment;
31
- private titleId;
32
- private dialogRef;
33
- private animationPlayer;
30
+ private readonly _titleId;
31
+ private readonly _slots;
32
+ private readonly _dialogRef;
33
+ private readonly _player;
34
34
  /**
35
35
  * Backdrop animation helper.
36
36
  */
37
- private animating;
38
- private get dialog();
39
- private titleElements;
40
- private messageElements;
41
- private footerElements;
37
+ private _animating;
38
+ private get _dialog();
42
39
  /**
43
- * Whether the dialog should be kept open when pressing the 'ESCAPE' button.
40
+ * Whether the dialog should be kept open when pressing the 'Escape' button.
44
41
  * @attr keep-open-on-escape
45
42
  */
46
43
  keepOpenOnEscape: boolean;
@@ -69,23 +66,24 @@ export default class IgcDialogComponent extends IgcDialogComponent_base {
69
66
  title: string;
70
67
  /** Sets the return value for the dialog. */
71
68
  returnValue: string;
72
- protected handleOpenState(): void;
73
69
  constructor();
74
- protected createRenderRoot(): HTMLElement | DocumentFragment;
75
70
  protected firstUpdated(): void;
76
- private toggleAnimation;
71
+ protected _handleOpenState(): void;
72
+ private _emitClosing;
77
73
  private _hide;
74
+ protected _handleFormSubmit(event: SubmitEvent): void;
75
+ private _handleCancel;
76
+ private _handleClick;
78
77
  /** Opens the dialog. */
79
78
  show(): Promise<boolean>;
80
79
  /** Closes the dialog. */
81
80
  hide(): Promise<boolean>;
82
81
  /** Toggles the open state of the dialog. */
83
82
  toggle(): Promise<boolean>;
84
- private handleCancel;
85
- private handleClick;
86
- private emitClosing;
87
- protected formSubmitHandler: (e: SubmitEvent) => void;
88
- private handleContentChange;
83
+ protected _renderBackdrop(): import("lit-html").TemplateResult<1>;
84
+ protected _renderHeader(): import("lit-html").TemplateResult<1>;
85
+ protected _renderContent(): import("lit-html").TemplateResult<1>;
86
+ protected _renderFooter(): import("lit-html").TemplateResult<1>;
89
87
  protected render(): import("lit-html").TemplateResult<1>;
90
88
  }
91
89
  declare global {