igniteui-webcomponents 7.3.0-beta.1 → 7.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +30 -0
  3. package/components/avatar/avatar.d.ts +1 -2
  4. package/components/avatar/avatar.js +4 -8
  5. package/components/avatar/avatar.js.map +1 -1
  6. package/components/badge/badge.d.ts +6 -1
  7. package/components/badge/badge.js +8 -5
  8. package/components/badge/badge.js.map +1 -1
  9. package/components/badge/themes/badge.base.css.js +1 -1
  10. package/components/badge/themes/badge.base.css.js.map +1 -1
  11. package/components/chip/chip.d.ts +30 -14
  12. package/components/chip/chip.js +54 -48
  13. package/components/chip/chip.js.map +1 -1
  14. package/components/chip/themes/chip.base.css.js +1 -1
  15. package/components/chip/themes/chip.base.css.js.map +1 -1
  16. package/components/chip/themes/dark/chip.bootstrap.css.js +1 -1
  17. package/components/chip/themes/dark/chip.bootstrap.css.js.map +1 -1
  18. package/components/chip/themes/dark/chip.fluent.css.js +1 -1
  19. package/components/chip/themes/dark/chip.fluent.css.js.map +1 -1
  20. package/components/chip/themes/dark/chip.indigo.css.js +1 -1
  21. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
  22. package/components/chip/themes/dark/chip.material.css.js +1 -1
  23. package/components/chip/themes/dark/chip.material.css.js.map +1 -1
  24. package/components/chip/themes/light/chip.bootstrap.css.js +1 -1
  25. package/components/chip/themes/light/chip.bootstrap.css.js.map +1 -1
  26. package/components/chip/themes/light/chip.fluent.css.js +1 -1
  27. package/components/chip/themes/light/chip.fluent.css.js.map +1 -1
  28. package/components/chip/themes/light/chip.indigo.css.js +1 -1
  29. package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
  30. package/components/chip/themes/light/chip.material.css.js +1 -1
  31. package/components/chip/themes/light/chip.material.css.js.map +1 -1
  32. package/components/chip/themes/shared/chip.bootstrap.css.js +1 -1
  33. package/components/chip/themes/shared/chip.bootstrap.css.js.map +1 -1
  34. package/components/chip/themes/shared/chip.common.css.js +1 -1
  35. package/components/chip/themes/shared/chip.common.css.js.map +1 -1
  36. package/components/chip/themes/shared/chip.fluent.css.js +1 -1
  37. package/components/chip/themes/shared/chip.fluent.css.js.map +1 -1
  38. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  39. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  40. package/components/color-picker/color-picker.d.ts +261 -0
  41. package/components/color-picker/color-picker.js +620 -0
  42. package/components/color-picker/color-picker.js.map +1 -0
  43. package/components/color-picker/common.d.ts +37 -0
  44. package/components/color-picker/common.js +55 -0
  45. package/components/color-picker/common.js.map +1 -0
  46. package/components/color-picker/converters.d.ts +18 -0
  47. package/components/color-picker/converters.js +173 -0
  48. package/components/color-picker/converters.js.map +1 -0
  49. package/components/color-picker/model.d.ts +120 -0
  50. package/components/color-picker/model.js +174 -0
  51. package/components/color-picker/model.js.map +1 -0
  52. package/components/color-picker/picker-canvas.d.ts +95 -0
  53. package/components/color-picker/picker-canvas.js +155 -0
  54. package/components/color-picker/picker-canvas.js.map +1 -0
  55. package/components/color-picker/themes/color-picker.base.css.js +3 -0
  56. package/components/color-picker/themes/color-picker.base.css.js.map +1 -0
  57. package/components/color-picker/themes/dark/color-picker.bootstrap.css.js +3 -0
  58. package/components/color-picker/themes/dark/color-picker.bootstrap.css.js.map +1 -0
  59. package/components/color-picker/themes/dark/color-picker.fluent.css.js +3 -0
  60. package/components/color-picker/themes/dark/color-picker.fluent.css.js.map +1 -0
  61. package/components/color-picker/themes/dark/color-picker.indigo.css.js +3 -0
  62. package/components/color-picker/themes/dark/color-picker.indigo.css.js.map +1 -0
  63. package/components/color-picker/themes/dark/color-picker.material.css.js +3 -0
  64. package/components/color-picker/themes/dark/color-picker.material.css.js.map +1 -0
  65. package/components/color-picker/themes/light/color-picker.bootstrap.css.js +3 -0
  66. package/components/color-picker/themes/light/color-picker.bootstrap.css.js.map +1 -0
  67. package/components/color-picker/themes/light/color-picker.fluent.css.js +3 -0
  68. package/components/color-picker/themes/light/color-picker.fluent.css.js.map +1 -0
  69. package/components/color-picker/themes/light/color-picker.indigo.css.js +3 -0
  70. package/components/color-picker/themes/light/color-picker.indigo.css.js.map +1 -0
  71. package/components/color-picker/themes/light/color-picker.material.css.js +3 -0
  72. package/components/color-picker/themes/light/color-picker.material.css.js.map +1 -0
  73. package/components/color-picker/themes/light/color-picker.shared.css.js +3 -0
  74. package/components/color-picker/themes/light/color-picker.shared.css.js.map +1 -0
  75. package/components/{resize-container/themes/resize-container.base.css.js → color-picker/themes/picker-canvas.base.css.js} +2 -2
  76. package/components/color-picker/themes/picker-canvas.base.css.js.map +1 -0
  77. package/components/color-picker/themes/shared/color-picker.bootstrap.css.js +3 -0
  78. package/components/color-picker/themes/shared/color-picker.bootstrap.css.js.map +1 -0
  79. package/components/color-picker/themes/shared/color-picker.common.css.d.ts +1 -0
  80. package/components/color-picker/themes/shared/color-picker.common.css.js +3 -0
  81. package/components/color-picker/themes/shared/color-picker.common.css.js.map +1 -0
  82. package/components/color-picker/themes/shared/color-picker.fluent.css.d.ts +1 -0
  83. package/components/color-picker/themes/shared/color-picker.fluent.css.js +3 -0
  84. package/components/color-picker/themes/shared/color-picker.fluent.css.js.map +1 -0
  85. package/components/color-picker/themes/shared/color-picker.indigo.css.d.ts +1 -0
  86. package/components/color-picker/themes/shared/color-picker.indigo.css.js +3 -0
  87. package/components/color-picker/themes/shared/color-picker.indigo.css.js.map +1 -0
  88. package/components/color-picker/themes/shared/color-picker.material.css.d.ts +1 -0
  89. package/components/color-picker/themes/shared/color-picker.material.css.js +3 -0
  90. package/components/color-picker/themes/shared/color-picker.material.css.js.map +1 -0
  91. package/components/color-picker/themes/themes.js +50 -0
  92. package/components/color-picker/themes/themes.js.map +1 -0
  93. package/components/color-picker/validators.d.ts +3 -0
  94. package/components/color-picker/validators.js +5 -0
  95. package/components/color-picker/validators.js.map +1 -0
  96. package/components/date-picker/date-picker.base.d.ts +1 -1
  97. package/components/icon/icon-references.js +1 -0
  98. package/components/icon/icon-references.js.map +1 -1
  99. package/components/icon/internal-icons-lib.js +3 -0
  100. package/components/icon/internal-icons-lib.js.map +1 -1
  101. package/components/input/themes/shared/input.material.css.js +1 -1
  102. package/components/input/themes/shared/input.material.css.js.map +1 -1
  103. package/components/textarea/textarea.d.ts +2 -15
  104. package/components/textarea/textarea.js +48 -93
  105. package/components/textarea/textarea.js.map +1 -1
  106. package/components/tile-manager/position.d.ts +2 -9
  107. package/components/tile-manager/position.js +27 -42
  108. package/components/tile-manager/position.js.map +1 -1
  109. package/components/tile-manager/resize-state.d.ts +11 -22
  110. package/components/tile-manager/resize-state.js +60 -119
  111. package/components/tile-manager/resize-state.js.map +1 -1
  112. package/components/tile-manager/resize-util.d.ts +3 -7
  113. package/components/tile-manager/resize-util.js +65 -72
  114. package/components/tile-manager/resize-util.js.map +1 -1
  115. package/components/tile-manager/serializer.d.ts +1 -1
  116. package/components/tile-manager/serializer.js +9 -10
  117. package/components/tile-manager/serializer.js.map +1 -1
  118. package/components/tile-manager/themes/shared/tile/tile.common.css.js +1 -1
  119. package/components/tile-manager/themes/shared/tile/tile.common.css.js.map +1 -1
  120. package/components/tile-manager/themes/tile.base.css.js +1 -1
  121. package/components/tile-manager/themes/tile.base.css.js.map +1 -1
  122. package/components/tile-manager/tile-ghost-util.js +16 -20
  123. package/components/tile-manager/tile-ghost-util.js.map +1 -1
  124. package/components/tile-manager/tile-manager.d.ts +5 -2
  125. package/components/tile-manager/tile-manager.js +27 -23
  126. package/components/tile-manager/tile-manager.js.map +1 -1
  127. package/components/tile-manager/tile.d.ts +32 -18
  128. package/components/tile-manager/tile.js +181 -161
  129. package/components/tile-manager/tile.js.map +1 -1
  130. package/components/tile-manager/types.d.ts +1 -5
  131. package/components/tile-manager/types.js.map +1 -1
  132. package/components/types.d.ts +2 -0
  133. package/components/types.js.map +1 -1
  134. package/custom-elements.json +25375 -22692
  135. package/igniteui-webcomponents.css-data.json +1 -1
  136. package/igniteui-webcomponents.html-data.json +1 -1
  137. package/index.d.ts +2 -0
  138. package/index.js +1 -0
  139. package/index.js.map +1 -1
  140. package/internals/definitions/defineAllComponents.js +2 -0
  141. package/internals/definitions/defineAllComponents.js.map +1 -1
  142. package/internals/directives/drag.d.ts +144 -0
  143. package/internals/directives/drag.js +278 -0
  144. package/internals/directives/drag.js.map +1 -0
  145. package/internals/directives/resize.d.ts +109 -0
  146. package/internals/directives/resize.js +214 -0
  147. package/internals/directives/resize.js.map +1 -0
  148. package/internals/templates/input-shell.d.ts +12 -1
  149. package/internals/templates/input-shell.js +17 -10
  150. package/internals/templates/input-shell.js.map +1 -1
  151. package/internals/utils/dom.d.ts +2 -0
  152. package/internals/utils/dom.js +3 -0
  153. package/internals/utils/dom.js.map +1 -1
  154. package/internals/utils/events.d.ts +2 -0
  155. package/internals/utils/events.js +3 -0
  156. package/internals/utils/events.js.map +1 -1
  157. package/package.json +3 -1
  158. package/skills/README.md +1 -0
  159. package/web-types.json +2 -2
  160. package/components/resize-container/default-ghost.d.ts +0 -5
  161. package/components/resize-container/default-ghost.js +0 -20
  162. package/components/resize-container/default-ghost.js.map +0 -1
  163. package/components/resize-container/resize-container.d.ts +0 -60
  164. package/components/resize-container/resize-container.js +0 -156
  165. package/components/resize-container/resize-container.js.map +0 -1
  166. package/components/resize-container/resize-controller.d.ts +0 -46
  167. package/components/resize-container/resize-controller.js +0 -195
  168. package/components/resize-container/resize-controller.js.map +0 -1
  169. package/components/resize-container/themes/dark/resize-indicator.bootstrap.css.js +0 -3
  170. package/components/resize-container/themes/dark/resize-indicator.bootstrap.css.js.map +0 -1
  171. package/components/resize-container/themes/dark/resize-indicator.fluent.css.js +0 -3
  172. package/components/resize-container/themes/dark/resize-indicator.fluent.css.js.map +0 -1
  173. package/components/resize-container/themes/dark/resize-indicator.indigo.css.js +0 -3
  174. package/components/resize-container/themes/dark/resize-indicator.indigo.css.js.map +0 -1
  175. package/components/resize-container/themes/dark/resize-indicator.material.css.js +0 -3
  176. package/components/resize-container/themes/dark/resize-indicator.material.css.js.map +0 -1
  177. package/components/resize-container/themes/dark/resize-indicator.shared.css.js +0 -3
  178. package/components/resize-container/themes/dark/resize-indicator.shared.css.js.map +0 -1
  179. package/components/resize-container/themes/light/resize-indicator.bootstrap.css.js +0 -3
  180. package/components/resize-container/themes/light/resize-indicator.bootstrap.css.js.map +0 -1
  181. package/components/resize-container/themes/light/resize-indicator.fluent.css.js +0 -3
  182. package/components/resize-container/themes/light/resize-indicator.fluent.css.js.map +0 -1
  183. package/components/resize-container/themes/light/resize-indicator.indigo.css.js +0 -3
  184. package/components/resize-container/themes/light/resize-indicator.indigo.css.js.map +0 -1
  185. package/components/resize-container/themes/light/resize-indicator.material.css.js +0 -3
  186. package/components/resize-container/themes/light/resize-indicator.material.css.js.map +0 -1
  187. package/components/resize-container/themes/light/resize-indicator.shared.css.js +0 -3
  188. package/components/resize-container/themes/light/resize-indicator.shared.css.js.map +0 -1
  189. package/components/resize-container/themes/resize-container.base.css.js.map +0 -1
  190. package/components/resize-container/themes/shared/resize-container.common.css.js +0 -3
  191. package/components/resize-container/themes/shared/resize-container.common.css.js.map +0 -1
  192. package/components/resize-container/themes/themes.js +0 -47
  193. package/components/resize-container/themes/themes.js.map +0 -1
  194. package/components/resize-container/types.d.ts +0 -40
  195. package/components/resize-container/types.js +0 -2
  196. package/components/resize-container/types.js.map +0 -1
  197. package/internals/controllers/drag.d.ts +0 -166
  198. package/internals/controllers/drag.js +0 -283
  199. package/internals/controllers/drag.js.map +0 -1
  200. /package/components/{resize-container/themes/dark/resize-indicator.bootstrap.css.d.ts → color-picker/themes/color-picker.base.css.d.ts} +0 -0
  201. /package/components/{resize-container/themes/dark/resize-indicator.fluent.css.d.ts → color-picker/themes/dark/color-picker.bootstrap.css.d.ts} +0 -0
  202. /package/components/{resize-container/themes/dark/resize-indicator.indigo.css.d.ts → color-picker/themes/dark/color-picker.fluent.css.d.ts} +0 -0
  203. /package/components/{resize-container/themes/dark/resize-indicator.material.css.d.ts → color-picker/themes/dark/color-picker.indigo.css.d.ts} +0 -0
  204. /package/components/{resize-container/themes/dark/resize-indicator.shared.css.d.ts → color-picker/themes/dark/color-picker.material.css.d.ts} +0 -0
  205. /package/components/{resize-container/themes/light/resize-indicator.bootstrap.css.d.ts → color-picker/themes/light/color-picker.bootstrap.css.d.ts} +0 -0
  206. /package/components/{resize-container/themes/light/resize-indicator.fluent.css.d.ts → color-picker/themes/light/color-picker.fluent.css.d.ts} +0 -0
  207. /package/components/{resize-container/themes/light/resize-indicator.indigo.css.d.ts → color-picker/themes/light/color-picker.indigo.css.d.ts} +0 -0
  208. /package/components/{resize-container/themes/light/resize-indicator.material.css.d.ts → color-picker/themes/light/color-picker.material.css.d.ts} +0 -0
  209. /package/components/{resize-container/themes/light/resize-indicator.shared.css.d.ts → color-picker/themes/light/color-picker.shared.css.d.ts} +0 -0
  210. /package/components/{resize-container/themes/resize-container.base.css.d.ts → color-picker/themes/picker-canvas.base.css.d.ts} +0 -0
  211. /package/components/{resize-container/themes/shared/resize-container.common.css.d.ts → color-picker/themes/shared/color-picker.bootstrap.css.d.ts} +0 -0
  212. /package/components/{resize-container → color-picker}/themes/themes.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"input.material.css.js","sourceRoot":"","sources":["../../../../../src/components/input/themes/shared/input.material.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wjyBAAwjyB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{translate:0 -50%}:host([outlined]:not([readonly]):focus-within) [part=label],:is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],[part~=filled]+[part=notch] [part=label]{translate:0 -50%}:host(:not([type=search]):disabled[outlined]) input:-moz-placeholder+[part=notch], :host(:not([type=search])[disabled][outlined]) input:-moz-placeholder+[part=notch], :host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) input:-moz-placeholder+[part=notch], :host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) input:-moz-placeholder+[part=notch], :host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) input:-moz-placeholder+[part=notch], :host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) input:-moz-placeholder+[part=notch], :host(:not([type=search])[outlined]:hover) input:-moz-placeholder+[part=notch], :host input:-moz-placeholder+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:disabled) [part~=filled]+[part=notch],:host([disabled]) [part~=filled]+[part=notch],:host(:not([type=search]):disabled[outlined]) input:placeholder-shown+[part=notch],:host(:not([type=search]):disabled[outlined]) [part~=filled]+[part=notch],:host(:not([type=search])[disabled][outlined]) input:placeholder-shown+[part=notch],:host(:not([type=search])[disabled][outlined]) [part~=filled]+[part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) input:placeholder-shown+[part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) [part~=filled]+[part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) input:placeholder-shown+[part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) [part~=filled]+[part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) input:placeholder-shown+[part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) [part~=filled]+[part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) input:placeholder-shown+[part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part~=filled]+[part=notch],:host(:not([type=search])[outlined]:hover) input:placeholder-shown+[part=notch],:host(:not([type=search])[outlined]:hover) [part~=filled]+[part=notch],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part~=filled]+[part=notch],:host([outlined]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch],:host([outlined]) [part~=filled]+[part=notch],:host input:placeholder-shown+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}[part=end]>[part=suffix] ::slotted(*),[part=start]>[part=prefix] ::slotted(*){display:inline-flex;align-items:center;width:-moz-max-content;width:max-content;height:100%}:host{--component-size: var(--ig-size, var(--default-size));--input-size: var(--component-size);--affix-padding: max(var(--is-large, 1) * max(1rem, -1 * 1rem) * var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))), var(--is-medium, 1) * max(0.875rem, -1 * 0.875rem) * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))), var(--is-small, 1) * max(0.75rem, -1 * 0.75rem) * var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}:host ::part(helper-text){grid-auto-rows:minmax(1.125rem, auto);padding-inline:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}[part=prefix] ::slotted(*),[part=suffix] ::slotted(*){color:inherit}:is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{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)}:is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],[part~=filled]+[part=notch] [part=label]{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)}[part~=input]{background:rgba(0,0,0,0);padding:0 max(var(--is-large, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));font-size:1rem;grid-area:1/2/span 1/span 2}[part~=\"input filled\"]{--input-text-color: var(--filled-text-color);color:var(--input-text-color)}[part=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--idle-secondary-color);transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),translate 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1),font-size 150ms cubic-bezier(0.4, 0, 0.2, 1);text-overflow:ellipsis;overflow:hidden;will-change:font-size,color,transform,translate}[part^=container]{grid-template-columns:auto auto 1fr auto}[part~=input],[part^=container]{height:var(--size)}[part=start]{border-start-start-radius:var(--box-border-radius);justify-content:flex-start;grid-area:1/1}[part=notch]{display:flex;align-items:center;width:auto;min-width:0;height:100%;grid-area:1/2;padding:0 max(var(--is-large, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));overflow:visible}[part=notch]:empty{display:none}[part=filler]{grid-area:1/3}[part=end]{border-start-end-radius:var(--box-border-radius);justify-content:flex-end;grid-area:1/4}[part=start],[part=end]{display:flex;min-width:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem),var(--is-medium, 1)*max(0.625rem, -1 * 0.625rem),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem));height:var(--size);overflow:hidden}:host(:focus-within) [part=label]{color:var(--focused-secondary-color)}:host(:not([readonly]):focus-within) [part=label]{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);translate:0 -73%}:host([outlined]:not([readonly]):focus-within) [part=label]{align-self:start}:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch] [part=label]{translate:0;font-size:initial}:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch] [part=label]{translate:0;font-size:initial}:host(:not([outlined])) [part=prefix],:host(:not([outlined])) [part=suffix]{max-height:calc(100% - 0.0625rem)}:host(:not([outlined])) [part=label]{inset-inline-start:.125rem}:host(:not([outlined])) [part~=container]{background:var(--box-background);border-bottom:1px solid var(--idle-bottom-line-color);border-start-end-radius:var(--box-border-radius);border-start-start-radius:var(--box-border-radius);transition:border-bottom-width 150ms cubic-bezier(0.4, 0, 0.2, 1)}:host(:not([outlined])) [part~=container]::after{position:absolute;content:\"\";width:100%;height:.125rem;left:0;right:0;bottom:-1px;background:var(--idle-bottom-line-color);transform:scaleX(0);transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}:host(:not([outlined])) [part~=labelled] [part~=input]{padding-top:1.25rem;padding-bottom:.375rem}:host(:not([outlined])) :is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{translate:0 -73%}:host(:not([outlined])) :is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host(:not([outlined])) [part~=filled]+[part=notch] [part=label]{translate:0 -73%}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]) [part~=container]{background:var(--box-background-focus)}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]:hover) [part~=container]{background:var(--box-background-focus);border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]:hover) [part~=container]::after{background:var(--idle-bottom-line-color)}:host(:not([outlined]):hover) [part~=container]{background:var(--box-background-hover);border-bottom-color:var(--hover-bottom-line-color)}:host(:not([outlined]):hover) [part~=container]::after{background:var(--hover-bottom-line-color)}:host(:not([outlined]):focus-within) [part~=container],:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part~=container]{background:var(--box-background-focus);border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined]):focus-within) [part~=container]::after,:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part~=container]::after{background:var(--focused-bottom-line-color);transform:scaleX(1);opacity:1}:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part=label]{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);translate:0 -73%}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) [part~=container],:host(:not([outlined],[disabled],[readonly]):state(ig-invalid):focus-within) [part~=container],:host(:not([disabled],[outlined])[data-role=combobox]:state(ig-invalid)) [part~=container],:host(:not([disabled],[outlined])[data-role=combobox]:state(ig-invalid):focus-within) [part~=container]{border-color:var(--error-secondary-color)}:host(:not([outlined],[disabled],[readonly]):state(ig-invalid)) [part~=container]::after,:host(:not([outlined],[disabled],[readonly]):state(ig-invalid):focus-within) [part~=container]::after,:host(:not([disabled],[outlined])[data-role=combobox]:state(ig-invalid)) [part~=container]::after,:host(:not([disabled],[outlined])[data-role=combobox]:state(ig-invalid):focus-within) [part~=container]::after{background:var(--error-secondary-color)}:host(:not([outlined])[disabled]) [part~=container],:host(:not([outlined]):disabled) [part~=container]{background:var(--box-disabled-background);border-block-end-color:var(--disabled-bottom-line-color);border-bottom-style:dashed}:host([type=search]) [part^=container]{background:var(--search-background);border-bottom:none;box-shadow:var(--search-resting-elevation);border-radius:var(--search-border-radius);overflow:hidden}:host([type=search]) [part^=container]:focus-within{background:var(--search-background)}:host([type=search]) [part^=container]:focus-within::after{display:none}:host([type=search]) [part=prefix],:host([type=search]) [part=suffix]{max-height:100%}:host(:not([readonly])[type=search]:hover) [part^=container],:host([type=search]:focus-within) [part^=container]{box-shadow:var(--search-hover-elevation);background:var(--search-background)}:host([readonly][type=search]:hover) [part^=container],:host([readonly][type=search]:focus-within) [part^=container]{background:var(--search-background)}:host([outlined][type=search]) [part~=labelled] [part~=input]{padding-top:max(var(--is-large, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));padding-bottom:max(var(--is-large, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))))}:host([outlined][type=search]) [part=notch]{border:none}:host([outlined][type=search]:focus-within) [part=notch] [part=label]{translate:0 -73%}:host(:disabled[type=search]) [part^=container],:host([disabled][type=search]) [part^=container]{background:var(--search-disabled-background);box-shadow:var(--search-disabled-elevation);border:none}:host(:not([type=search])[outlined]) [part^=container]{border-radius:var(--border-border-radius);background:var(--border-background)}:host(:not([type=search])[outlined]) [part=start]{border-style:solid;border-color:var(--border-color);border-inline-start-width:.0625rem;border-inline-end-width:0;border-block-start-width:.0625rem;border-block-end-width:.0625rem;border-start-start-radius:var(--border-border-radius);border-end-start-radius:var(--border-border-radius)}:host(:not([type=search])[outlined]) [part=filler]{border-width:.0625rem;border-style:solid;border-color:var(--border-color);border-left:none;border-right:none}:host(:not([type=search])[outlined]) [part=end]{border-style:solid;border-color:var(--border-color);border-inline-start-width:0;border-inline-end-width:.0625rem;border-block-start-width:.0625rem;border-block-end-width:.0625rem;border-start-end-radius:var(--border-border-radius);border-end-end-radius:var(--border-border-radius)}:host([outlined]) [part=notch]{border-width:.0625rem;border-style:solid;border-color:var(--border-color);border-left:none;border-right:none}:host([outlined]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host([outlined]) [part~=filled]+[part=notch] [part=label]{align-self:start}:host([outlined]) [part~=container]:has(input:-moz-placeholder) [part=label]{align-self:start}:host([outlined]) [part~=container]:has(input:placeholder-shown) [part=label]{align-self:start}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=notch],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=start],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=end],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=filler]{border-color:var(--border-color)}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=notch],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=start],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=end],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=filler]{border-color:var(--focused-border-color)}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch] [part=label]{translate:0;font-size:initial;align-self:center}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch] [part=label]{translate:0;font-size:initial;align-self:center}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:hover) [part=notch],:host(:not([type=search])[outlined]:hover) [part=start],:host(:not([type=search])[outlined]:hover) [part=end],:host(:not([type=search])[outlined]:hover) [part=filler]{border-color:var(--hover-border-color)}:host([outlined]:is([type=date],[type=time],[type=datetime-local],[type=week],[type=month])) [part=label]{transition:none}:host([outlined]:is([type=date],[type=time],[type=datetime-local],[type=week],[type=month])) [part=notch]{border-block-start-color:rgba(0,0,0,0) !important}:host(:not([type=search])[outlined]:focus-within) [part=start]{border-color:var(--focused-border-color);border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host(:not([type=search])[outlined]:focus-within) [part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:focus-within) input:-moz-placeholder+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus-within) input:placeholder-shown+[part=notch],:host(:not([type=search])[outlined]:focus-within) [part~=filled]+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus-within) [part=filler]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:focus-within) [part=end]{border-color:var(--focused-border-color);border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host(:not([type=search],[data-haspopup=dialog],[data-role=combobox])[outlined]:focus-within) [part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus) [part=suffix],:host(:not([type=search])[outlined]:focus-within) [part=suffix]{margin-inline-end:-0.0625rem}:host(:not([type=search])[outlined]:focus) [part=prefix],:host(:not([type=search])[outlined]:focus-within) [part=prefix]{margin-inline-start:-0.0625rem}:host(:not([type=search])[outlined]:focus) [part=suffix] ::slotted(*),:host(:not([type=search])[outlined]:focus) [part=prefix] ::slotted(*),:host(:not([type=search])[outlined]:focus-within) [part=suffix] ::slotted(*),:host(:not([type=search])[outlined]:focus-within) [part=prefix] ::slotted(*){padding-block:max(var(--is-large, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.625rem, -1 * 0.625rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))))}:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) [part=start],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) [part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) [part=filler],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid)) [part=end],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) [part=start],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) [part=notch],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) [part=filler],:host(:not([type=search],[readonly])[outlined]:state(ig-invalid):focus-within) [part=end],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) [part=start],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) [part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) [part=filler],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid)) [part=end],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=start],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=notch],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=filler],:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=end]{border-color:var(--error-secondary-color)}:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-width:.125rem}:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-width:.125rem}:host(:not([type=search])[outlined]:state(ig-invalid):focus-within) [part=notch],:host([data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch], :host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch],:host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) [part=notch],:host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) [part=notch]{border-block-start-color:rgba(0,0,0,0)}:host(:not([disabled],[readonly]):state(ig-invalid)) [part=label],:host(:not([disabled])[data-role=combobox]:state(ig-invalid)) [part=label]{color:var(--error-secondary-color)}:host(:not([type=search]):disabled[outlined]) [part=start],:host(:not([type=search]):disabled[outlined]) [part=filler],:host(:not([type=search]):disabled[outlined]) [part=notch],:host(:not([type=search]):disabled[outlined]) [part=end],:host(:not([type=search])[disabled][outlined]) [part=start],:host(:not([type=search])[disabled][outlined]) [part=filler],:host(:not([type=search])[disabled][outlined]) [part=notch],:host(:not([type=search])[disabled][outlined]) [part=end]{border-color:var(--disabled-border-color)}:host(:not([type=search]):disabled[outlined]) [part~=container],:host(:not([type=search])[disabled][outlined]) [part~=container]{background:var(--border-disabled-background)}:host(:disabled) [part~=input],:host(:disabled) [part=label],:host(:disabled) [part=prefix],:host(:disabled) [part=suffix],:host(:disabled) ::part(helper-text),:host([disabled]) [part~=input],:host([disabled]) [part=label],:host([disabled]) [part=prefix],:host([disabled]) [part=suffix],:host([disabled]) ::part(helper-text){color:var(--disabled-text-color)}:host(:disabled) [part=start],:host(:disabled) [part=filler],:host(:disabled) [part=notch],:host(:disabled) [part=end],:host([disabled]) [part=start],:host([disabled]) [part=filler],:host([disabled]) [part=notch],:host([disabled]) [part=end]{color:var(--disabled-text-color)}`;\n "]}
1
+ {"version":3,"file":"input.material.css.js","sourceRoot":"","sources":["../../../../../src/components/input/themes/shared/input.material.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ug0BAAug0B,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{translate:0 -50%}:host([outlined]:not([readonly]):focus-within) [part=label],:is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],[part~=filled]+[part=notch] [part=label]{translate:0 -50%}[part=end]>[part=suffix] ::slotted(*),[part=start]>[part=prefix] ::slotted(*){display:inline-flex;align-items:center;width:-moz-max-content;width:max-content;height:100%}:host{--component-size: var(--ig-size, var(--default-size));--input-size: var(--component-size);--affix-padding: max(var(--is-large, 1) * max(1rem, -1 * 1rem) * var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))), var(--is-medium, 1) * max(0.875rem, -1 * 0.875rem) * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))), var(--is-small, 1) * max(0.75rem, -1 * 0.75rem) * var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}:host input:-moz-placeholder+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host input:placeholder-shown+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host ::part(helper-text){grid-auto-rows:minmax(1.125rem, auto);padding-inline:max(var(--is-large, 1)*max(1rem, -1 * 1rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))))}[part=prefix] ::slotted(*),[part=suffix] ::slotted(*){color:inherit}:is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{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)}:is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],[part~=filled]+[part=notch] [part=label]{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)}[part~=input]{background:rgba(0,0,0,0);padding:0 max(var(--is-large, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));font-size:1rem;grid-area:1/2/span 1/span 2}[part~=\"input filled\"]{--input-text-color: var(--filled-text-color);color:var(--input-text-color)}[part=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--idle-secondary-color);transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),translate 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1),font-size 150ms cubic-bezier(0.4, 0, 0.2, 1);text-overflow:ellipsis;overflow:hidden;will-change:font-size,color,transform,translate}[part^=container]{grid-template-columns:auto auto 1fr auto}[part~=input],[part^=container]{height:var(--size)}[part=start]{border-start-start-radius:var(--box-border-radius);justify-content:flex-start;grid-area:1/1}[part=notch]{display:flex;align-items:center;width:auto;min-width:0;height:100%;grid-area:1/2;padding:0 max(var(--is-large, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.25rem, -1 * 0.25rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));overflow:visible}[part=notch]:empty{display:none}[part=filler]{grid-area:1/3}[part=end]{border-start-end-radius:var(--box-border-radius);justify-content:flex-end;grid-area:1/4}[part=start],[part=end]{display:flex;min-width:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem),var(--is-medium, 1)*max(0.625rem, -1 * 0.625rem),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem));height:var(--size);overflow:hidden}:host(:focus-within) [part=label]{color:var(--focused-secondary-color)}:host(:not([readonly]):focus-within) [part=label]{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);translate:0 -73%}:host([outlined]:not([readonly]):focus-within) [part=label]{align-self:start}:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch] [part=label]{translate:0;font-size:initial}:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host([readonly]:not([outlined]):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch] [part=label]{translate:0;font-size:initial}:host(:not([outlined])) [part=prefix],:host(:not([outlined])) [part=suffix]{max-height:calc(100% - 0.0625rem)}:host(:not([outlined])) [part=label]{inset-inline-start:.125rem}:host(:not([outlined])) [part~=container]{background:var(--box-background);border-bottom:1px solid var(--idle-bottom-line-color);border-start-end-radius:var(--box-border-radius);border-start-start-radius:var(--box-border-radius);transition:border-bottom-width 150ms cubic-bezier(0.4, 0, 0.2, 1)}:host(:not([outlined])) [part~=container]::after{position:absolute;content:\"\";width:100%;height:.125rem;left:0;right:0;bottom:-1px;background:var(--idle-bottom-line-color);transform:scaleX(0);transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}:host(:not([outlined])) [part~=labelled] [part~=input]{padding-top:1.25rem;padding-bottom:.375rem}:host(:not([outlined])) :is(input:-moz-placeholder,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label]{translate:0 -73%}:host(:not([outlined])) :is(input:placeholder-shown,input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host(:not([outlined])) [part~=filled]+[part=notch] [part=label]{translate:0 -73%}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]) [part~=container]{background:var(--box-background-focus)}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]:hover) [part~=container]{background:var(--box-background-focus);border-bottom-color:var(--idle-bottom-line-color)}:host(:not([outlined],[type=search],[data-haspopup=dialog],[data-role=combobox])[readonly]:hover) [part~=container]::after{background:var(--idle-bottom-line-color)}:host(:not([outlined]):hover) [part~=container]{background:var(--box-background-hover);border-bottom-color:var(--hover-bottom-line-color)}:host(:not([outlined]):hover) [part~=container]::after{background:var(--hover-bottom-line-color)}:host(:not([outlined]):focus-within) [part~=container],:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part~=container]{background:var(--box-background-focus);border-bottom-color:var(--focused-bottom-line-color)}:host(:not([outlined]):focus-within) [part~=container]::after,:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part~=container]::after{background:var(--focused-bottom-line-color);transform:scaleX(1);opacity:1}:host(:not([outlined],[data-haspopup=dialog],[data-role=combobox])[readonly]:focus-within) [part=label]{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);translate:0 -73%}:host(:not([outlined],[disabled],:disabled,[readonly]):state(ig-invalid)) [part~=container],:host(:not([outlined],[disabled],:disabled,[readonly]):state(ig-invalid):focus-within) [part~=container],:host(:not([disabled],:disabled,[outlined])[data-role=combobox]:state(ig-invalid)) [part~=container],:host(:not([disabled],:disabled,[outlined])[data-role=combobox]:state(ig-invalid):focus-within) [part~=container]{border-color:var(--error-secondary-color)}:host(:not([outlined],[disabled],:disabled,[readonly]):state(ig-invalid)) [part~=container]::after,:host(:not([outlined],[disabled],:disabled,[readonly]):state(ig-invalid):focus-within) [part~=container]::after,:host(:not([disabled],:disabled,[outlined])[data-role=combobox]:state(ig-invalid)) [part~=container]::after,:host(:not([disabled],:disabled,[outlined])[data-role=combobox]:state(ig-invalid):focus-within) [part~=container]::after{background:var(--error-secondary-color)}:host(:not([outlined])[disabled]) [part~=container],:host(:not([outlined]):disabled) [part~=container]{background:var(--box-disabled-background);border-block-end-color:var(--disabled-bottom-line-color);border-bottom-style:dashed}:host([type=search]) [part^=container]{background:var(--search-background);border-bottom:none;box-shadow:var(--search-resting-elevation);border-radius:var(--search-border-radius);overflow:hidden}:host([type=search]) [part^=container]:focus-within{background:var(--search-background)}:host([type=search]) [part^=container]:focus-within::after{display:none}:host([type=search]) [part=prefix],:host([type=search]) [part=suffix]{max-height:100%}:host(:not([readonly])[type=search]:hover) [part^=container],:host([type=search]:focus-within) [part^=container]{box-shadow:var(--search-hover-elevation);background:var(--search-background)}:host([readonly][type=search]:hover) [part^=container],:host([readonly][type=search]:focus-within) [part^=container]{background:var(--search-background)}:host([outlined][type=search]) [part~=labelled] [part~=input]{padding-top:max(var(--is-large, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(1.25rem, -1 * 1.25rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));padding-bottom:max(var(--is-large, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.375rem, -1 * 0.375rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))))}:host([outlined][type=search]) [part=notch]{border:none}:host([outlined][type=search]:focus-within) [part=notch] [part=label]{translate:0 -73%}:host(:disabled[type=search]) [part^=container],:host([disabled][type=search]) [part^=container]{background:var(--search-disabled-background);box-shadow:var(--search-disabled-elevation);border:none}:host(:not([type=search])[outlined]) [part^=container]{border-radius:var(--border-border-radius);background:var(--border-background)}:host(:not([type=search])[outlined]) [part=start]{border-style:solid;border-color:var(--border-color);border-inline-start-width:.0625rem;border-inline-end-width:0;border-block-start-width:.0625rem;border-block-end-width:.0625rem;border-start-start-radius:var(--border-border-radius);border-end-start-radius:var(--border-border-radius)}:host(:not([type=search])[outlined]) [part=filler]{border-width:.0625rem;border-style:solid;border-color:var(--border-color);border-left:none;border-right:none}:host(:not([type=search])[outlined]) [part=end]{border-style:solid;border-color:var(--border-color);border-inline-start-width:0;border-inline-end-width:.0625rem;border-block-start-width:.0625rem;border-block-end-width:.0625rem;border-start-end-radius:var(--border-border-radius);border-end-end-radius:var(--border-border-radius)}:host([outlined]) [part=notch]{border-width:.0625rem;border-style:solid;border-color:var(--border-color);border-left:none;border-right:none}:host([outlined]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch],:host([outlined]) [part~=filled]+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined]) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=week],input[type=month])+[part=notch] [part=label],:host([outlined]) [part~=filled]+[part=notch] [part=label]{align-self:start}:host([outlined]) [part~=container]:has(input:-moz-placeholder) [part=label]{align-self:start}:host([outlined]) [part~=container]:has(input:placeholder-shown) [part=label]{align-self:start}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=notch],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=start],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=end],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part=filler]{border-color:var(--border-color)}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:hover) [part~=filled]+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=notch],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=start],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=end],:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=filler]{border-color:var(--focused-border-color)}:host(:not([data-haspopup=dialog],[data-role=combobox])[outlined][readonly]:focus-within) [part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch] [part=label]{translate:0;font-size:initial;align-self:center}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch] [part=label]{translate:0;font-size:initial;align-self:center}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not(:state(ig-invalid),[type=search])[readonly][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:hover) [part=notch],:host(:not([type=search])[outlined]:hover) [part=start],:host(:not([type=search])[outlined]:hover) [part=end],:host(:not([type=search])[outlined]:hover) [part=filler]{border-color:var(--hover-border-color)}:host(:not([type=search])[outlined]:hover) input:-moz-placeholder+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:hover) input:placeholder-shown+[part=notch],:host(:not([type=search])[outlined]:hover) [part~=filled]+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined]:is([type=date],[type=time],[type=datetime-local],[type=week],[type=month])) [part=label]{transition:none}:host([outlined]:is([type=date],[type=time],[type=datetime-local],[type=week],[type=month])) [part=notch]{border-block-start-color:rgba(0,0,0,0) !important}:host(:not([type=search])[outlined]:focus-within) [part=start]{border-color:var(--focused-border-color);border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host(:not([type=search])[outlined]:focus-within) [part=notch]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:focus-within) input:-moz-placeholder+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus-within) input:placeholder-shown+[part=notch],:host(:not([type=search])[outlined]:focus-within) [part~=filled]+[part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus-within) [part=filler]{border-width:.125rem;border-color:var(--focused-border-color)}:host(:not([type=search])[outlined]:focus-within) [part=end]{border-color:var(--focused-border-color);border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host(:not([type=search],[data-haspopup=dialog],[data-role=combobox])[outlined]:focus-within) [part=notch]{border-width:.125rem;border-color:var(--focused-border-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search])[outlined]:focus) [part=suffix],:host(:not([type=search])[outlined]:focus-within) [part=suffix]{margin-inline-end:-0.0625rem}:host(:not([type=search])[outlined]:focus) [part=prefix],:host(:not([type=search])[outlined]:focus-within) [part=prefix]{margin-inline-start:-0.0625rem}:host(:not([type=search])[outlined]:focus) [part=suffix] ::slotted(*),:host(:not([type=search])[outlined]:focus) [part=prefix] ::slotted(*),:host(:not([type=search])[outlined]:focus-within) [part=suffix] ::slotted(*),:host(:not([type=search])[outlined]:focus-within) [part=prefix] ::slotted(*){padding-block:max(var(--is-large, 1)*max(0.875rem, -1 * 0.875rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.625rem, -1 * 0.625rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))))}:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) [part=start],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) [part=notch],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) [part=filler],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) [part=end],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) [part=start],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) [part=notch],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) [part=filler],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) [part=end],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) [part=start],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) [part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) [part=filler],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) [part=end],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=start],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=filler],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=end]{border-color:var(--error-secondary-color)}:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) input:-moz-placeholder+[part=notch], :host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) input:-moz-placeholder+[part=notch], :host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) input:-moz-placeholder+[part=notch], :host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) input:-moz-placeholder+[part=notch]{border-color:var(--error-secondary-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) input:placeholder-shown+[part=notch],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid)) [part~=filled]+[part=notch],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) input:placeholder-shown+[part=notch],:host(:not([type=search],[readonly],[disabled],:disabled)[outlined]:state(ig-invalid):focus-within) [part~=filled]+[part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) input:placeholder-shown+[part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid)) [part~=filled]+[part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) input:placeholder-shown+[part=notch],:host(:not([disabled],:disabled)[data-role=combobox][outlined]:state(ig-invalid):focus-within) [part~=filled]+[part=notch]{border-color:var(--error-secondary-color);border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-width:.125rem}:host(:not([disabled])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-width:.125rem}:host(:not([type=search])[outlined]:state(ig-invalid):focus-within) [part=notch],:host([data-role=combobox][outlined]:state(ig-invalid):focus-within) [part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch], :host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:-moz-placeholder)+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch],:host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) input:not(:placeholder-shown)+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([disabled],[readonly])[data-role=combobox][outlined]:focus-within) :not([part~=filled]) [part=notch],:host(:not([disabled],[readonly])[data-role=combobox][outlined]:state(ig-invalid):focus-within) :not([part~=filled]) [part=notch]{border-block-start-color:rgba(0,0,0,0)}:host(:not([disabled],:disabled,[readonly]):state(ig-invalid)) [part=label],:host(:not([disabled],:disabled)[data-role=combobox]:state(ig-invalid)) [part=label]{color:var(--error-secondary-color)}:host(:not([type=search]):disabled[outlined]) [part=start],:host(:not([type=search]):disabled[outlined]) [part=filler],:host(:not([type=search]):disabled[outlined]) [part=notch],:host(:not([type=search]):disabled[outlined]) [part=end],:host(:not([type=search])[disabled][outlined]) [part=start],:host(:not([type=search])[disabled][outlined]) [part=filler],:host(:not([type=search])[disabled][outlined]) [part=notch],:host(:not([type=search])[disabled][outlined]) [part=end]{border-color:var(--disabled-border-color)}:host(:not([type=search]):disabled[outlined]) [part~=container],:host(:not([type=search])[disabled][outlined]) [part~=container]{background:var(--border-disabled-background)}:host(:not([type=search]):disabled[outlined]) input:-moz-placeholder+[part=notch], :host(:not([type=search])[disabled][outlined]) input:-moz-placeholder+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:not([type=search]):disabled[outlined]) input:placeholder-shown+[part=notch],:host(:not([type=search]):disabled[outlined]) [part~=filled]+[part=notch],:host(:not([type=search])[disabled][outlined]) input:placeholder-shown+[part=notch],:host(:not([type=search])[disabled][outlined]) [part~=filled]+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}:host(:disabled) [part~=input],:host(:disabled) [part=label],:host(:disabled) [part=prefix],:host(:disabled) [part=suffix],:host(:disabled) ::part(helper-text),:host([disabled]) [part~=input],:host([disabled]) [part=label],:host([disabled]) [part=prefix],:host([disabled]) [part=suffix],:host([disabled]) ::part(helper-text){color:var(--disabled-text-color)}:host(:disabled) [part=start],:host(:disabled) [part=filler],:host(:disabled) [part=notch],:host(:disabled) [part=end],:host([disabled]) [part=start],:host([disabled]) [part=filler],:host([disabled]) [part=notch],:host([disabled]) [part=end]{color:var(--disabled-text-color)}:host(:disabled) [part~=filled]+[part=notch],:host([disabled]) [part~=filled]+[part=notch]{border-top:.0625rem solid rgba(0,0,0,0)}`;\n "]}
@@ -1,5 +1,4 @@
1
- import { LitElement, nothing, type PropertyValues } from 'lit';
2
- import { type InferSlotNames } from '#internals/controllers/slot.js';
1
+ import { LitElement, type PropertyValues } from 'lit';
3
2
  import type { Constructor } from '#internals/mixins/constructor.js';
4
3
  import type { RangeTextSelectMode, SelectionRangeDirection, TextareaResize } from '../types.js';
5
4
  export interface IgcTextareaComponentEventMap {
@@ -8,7 +7,6 @@ export interface IgcTextareaComponentEventMap {
8
7
  focus: FocusEvent;
9
8
  blur: FocusEvent;
10
9
  }
11
- declare const Slots: readonly ["[default]", "prefix", "suffix", "helper-text", "value-missing", "too-long", "too-short", "custom-error", "invalid"];
12
10
  declare const IgcTextareaComponent_base: Constructor<import("../../internals/mixins/forms/types.js").FormRequiredInterface & import("../../internals/mixins/forms/types.js").FormAssociatedElementInterface> & Constructor<import("#internals/mixins/event-emitter.js").EventEmitterInterface<IgcTextareaComponentEventMap>> & Constructor<LitElement>;
13
11
  /**
14
12
  * Represents a multi-line plain-text editing control,
@@ -49,7 +47,7 @@ export default class IgcTextareaComponent extends IgcTextareaComponent_base {
49
47
  * native textarea. See {@link addAriaTarget}.
50
48
  */
51
49
  private readonly _ariaTarget;
52
- private readonly _input;
50
+ private readonly _input?;
53
51
  protected get __validators(): import("../../internals/validators.js").Validator<IgcTextareaComponent>[];
54
52
  protected readonly _formValue: import("#internals/mixins/forms/form-value.js").FormValue<string>;
55
53
  /**
@@ -157,14 +155,7 @@ export default class IgcTextareaComponent extends IgcTextareaComponent_base {
157
155
  validateOnly: boolean;
158
156
  constructor();
159
157
  protected updated(props: PropertyValues<this>): void;
160
- private _setAutoHeight;
161
158
  protected _setAreaHeight(): void;
162
- protected _resolvePartNames(): {
163
- container: boolean;
164
- prefixed: boolean;
165
- suffixed: boolean;
166
- filled: boolean;
167
- };
168
159
  private _handleSlotChange;
169
160
  protected _handleInput(): void;
170
161
  protected _handleChange(): void;
@@ -176,10 +167,6 @@ export default class IgcTextareaComponent extends IgcTextareaComponent_base {
176
167
  setRangeText(replacement: string, start: number, end: number, selectMode?: RangeTextSelectMode): void;
177
168
  scrollTo(options?: ScrollToOptions | undefined): void;
178
169
  scrollTo(x: number, y: number): void;
179
- protected _renderSlot(name: InferSlotNames<typeof Slots>): import("lit-html").TemplateResult<1>;
180
- protected _renderLabel(): typeof nothing | import("lit-html").TemplateResult<1>;
181
- protected _renderStandard(): import("lit-html").TemplateResult<1>;
182
- protected _renderMaterial(): import("lit-html").TemplateResult<1>;
183
170
  protected _renderInput(): import("lit-html").TemplateResult<1>;
184
171
  protected render(): import("lit-html/directive.js").DirectiveResult<typeof import("lit-html/directives/cache.js").CacheDirective>;
185
172
  }
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  var IgcTextareaComponent_1;
8
- import { html, LitElement, nothing } from 'lit';
8
+ import { html, LitElement } from 'lit';
9
9
  import { property, query } from 'lit/decorators.js';
10
10
  import { cache } from 'lit/directives/cache.js';
11
11
  import { ifDefined } from 'lit/directives/if-defined.js';
@@ -19,7 +19,7 @@ import { registerComponent } from '#internals/definitions/register.js';
19
19
  import { EventEmitterMixin } from '#internals/mixins/event-emitter.js';
20
20
  import { FormAssociatedRequiredMixin } from '#internals/mixins/forms/associated-required.js';
21
21
  import { createFormValueState } from '#internals/mixins/forms/form-value.js';
22
- import { partMap } from '#internals/part-map.js';
22
+ import { renderInputShell, resolveInputPartNames, } from '#internals/templates/input-shell.js';
23
23
  import { addSafeEventListener } from '#internals/utils/events.js';
24
24
  import { asNumber } from '#internals/utils/math.js';
25
25
  import { createIdGenerator } from '#internals/utils/strings.js';
@@ -81,119 +81,68 @@ let IgcTextareaComponent = class IgcTextareaComponent extends FormAssociatedRequ
81
81
  this._setAreaHeight();
82
82
  }
83
83
  }
84
- _setAutoHeight() {
85
- const { borderTopWidth, borderBottomWidth } = getComputedStyle(this._input);
86
- return (this._input.scrollHeight +
87
- asNumber(borderTopWidth) +
88
- asNumber(borderBottomWidth));
89
- }
90
84
  _setAreaHeight() {
91
- if (this.resize === 'auto') {
92
- this._input.style.height = 'auto';
93
- this._input.style.height = `${this._setAutoHeight()}px`;
85
+ const input = this._input;
86
+ if (!input) {
87
+ return;
94
88
  }
95
- else {
96
- Object.assign(this._input.style, { height: undefined });
89
+ if (this.resize !== 'auto') {
90
+ input.style.removeProperty('height');
91
+ return;
97
92
  }
98
- }
99
- _resolvePartNames() {
100
- return {
101
- container: true,
102
- prefixed: this._slots.hasAssignedElements('prefix', {
103
- selector: ':not([hidden])',
104
- }),
105
- suffixed: this._slots.hasAssignedElements('suffix', {
106
- selector: ':not([hidden])',
107
- }),
108
- filled: !!this.value,
109
- };
93
+ input.style.height = 'auto';
94
+ const { borderTopWidth, borderBottomWidth } = getComputedStyle(input);
95
+ const height = input.scrollHeight +
96
+ asNumber(borderTopWidth) +
97
+ asNumber(borderBottomWidth);
98
+ input.style.height = `${height}px`;
110
99
  }
111
100
  _handleSlotChange({ isDefault, }) {
112
- if (isDefault) {
113
- const value = this._slots
114
- .getAssignedNodes('[default]', true)
115
- .map((node) => node.textContent?.trim())
116
- .filter((node) => Boolean(node))
117
- .join('\r\n');
118
- if (value !== this.value) {
119
- this.value = value;
120
- }
101
+ if (!isDefault) {
102
+ return;
103
+ }
104
+ const value = this._slots
105
+ .getAssignedNodes('[default]', true)
106
+ .map((node) => node.textContent?.trim())
107
+ .filter(Boolean)
108
+ .join('\r\n');
109
+ if (value === this.value) {
110
+ return;
111
+ }
112
+ if (this._pristine) {
113
+ this.defaultValue = value;
114
+ }
115
+ else {
116
+ this.value = value;
121
117
  }
122
118
  }
123
119
  _handleInput() {
124
- this._commitValue(this._input.value, 'igcInput');
120
+ this._commitValue(this._input?.value ?? '', 'igcInput');
125
121
  }
126
122
  _handleChange() {
127
- this._commitValue(this._input.value, 'igcChange');
123
+ this._commitValue(this._input?.value ?? '', 'igcChange');
128
124
  }
129
125
  select() {
130
- this._input.select();
126
+ this._input?.select();
131
127
  }
132
128
  setSelectionRange(start, end, direction = 'none') {
133
- this._input.setSelectionRange(start, end, direction);
129
+ this._input?.setSelectionRange(start, end, direction);
134
130
  }
135
131
  setRangeText(replacement, start, end, selectMode = 'preserve') {
136
- this._input.setRangeText(replacement, start, end, selectMode);
137
- this.value = this._input.value;
132
+ this._input?.setRangeText(replacement, start, end, selectMode);
133
+ this.value = this._input?.value ?? '';
138
134
  }
139
135
  scrollTo(x, y) {
140
136
  x != null && y != null
141
- ? this._input.scrollTo(x, y)
142
- : this._input.scrollTo(x);
143
- }
144
- _renderSlot(name) {
145
- const isHidden = !this._slots.hasAssignedElements(name, {
146
- selector: ':not([hidden])',
147
- });
148
- return html `
149
- <div part=${name} ?hidden=${isHidden}>
150
- <slot name=${name}></slot>
151
- </div>
152
- `;
153
- }
154
- _renderLabel() {
155
- return this.label
156
- ? html `
157
- <label part="label" for=${this.id || this._inputId}>
158
- ${this.label}
159
- </label>
160
- `
161
- : nothing;
162
- }
163
- _renderStandard() {
164
- return html `
165
- ${this._renderLabel()}
166
- <div part=${partMap(this._resolvePartNames())}>
167
- ${this._renderSlot('prefix')} ${this._renderInput()}
168
- ${this._renderSlot('suffix')}
169
- </div>
170
- ${this._renderValidationContainer()}
171
- `;
172
- }
173
- _renderMaterial() {
174
- return html `
175
- <div
176
- part=${partMap({
177
- ...this._resolvePartNames(),
178
- labelled: !!this.label,
179
- placeholder: !!this.placeholder,
180
- })}
181
- >
182
- <div part="start">${this._renderSlot('prefix')}</div>
183
- ${this._renderInput()}
184
- <div part="notch">${this._renderLabel()}</div>
185
- <div part="filler"></div>
186
- <div part="end">${this._renderSlot('suffix')}</div>
187
- </div>
188
- ${this._renderValidationContainer()}
189
- `;
137
+ ? this._input?.scrollTo(x, y)
138
+ : this._input?.scrollTo(x);
190
139
  }
191
140
  _renderInput() {
192
141
  return html `
193
142
  <slot style="display: none"></slot>
194
143
  <textarea
195
144
  ${ariaBindings(this._ariaTarget.resolveBindings())}
196
- id=${this.id || this._inputId}
145
+ id=${this._inputId}
197
146
  part="input"
198
147
  style=${styleMap({
199
148
  resize: this.resize === 'auto' ? 'none' : this.resize,
@@ -217,9 +166,15 @@ let IgcTextareaComponent = class IgcTextareaComponent extends FormAssociatedRequ
217
166
  `;
218
167
  }
219
168
  render() {
220
- return cache(this._themes.theme === 'material'
221
- ? this._renderMaterial()
222
- : this._renderStandard());
169
+ return cache(renderInputShell(this, {
170
+ theme: this._themes.theme,
171
+ label: this.label,
172
+ labelId: this._inputId,
173
+ containerParts: resolveInputPartNames(this._slots, 'container', !!this.value),
174
+ materialParts: { placeholder: !!this.placeholder },
175
+ hideEmptyAffixes: true,
176
+ renderInput: this._renderInput,
177
+ }));
223
178
  }
224
179
  };
225
180
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing, type PropertyValues } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport {\n addAriaTarget,\n ariaBindings,\n} from '#internals/controllers/aria-projection.js';\nimport { createResizeObserverController } from '#internals/controllers/resize-observer.js';\nimport {\n addSlotController,\n type InferSlotNames,\n type SlotChangeCallbackParameters,\n setSlots,\n} from '#internals/controllers/slot.js';\nimport { shadowOptions } from '#internals/decorators/shadow-options.js';\nimport { registerComponent } from '#internals/definitions/register.js';\nimport type { Constructor } from '#internals/mixins/constructor.js';\nimport { EventEmitterMixin } from '#internals/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '#internals/mixins/forms/associated-required.js';\nimport { createFormValueState } from '#internals/mixins/forms/form-value.js';\nimport { partMap } from '#internals/part-map.js';\nimport { addSafeEventListener } from '#internals/utils/events.js';\nimport { asNumber } from '#internals/utils/math.js';\nimport { createIdGenerator } from '#internals/utils/strings.js';\nimport { addThemingController } from '#theming/theming-controller.js';\nimport type {\n RangeTextSelectMode,\n SelectionRangeDirection,\n TextareaResize,\n} from '../types.js';\nimport IgcValidationContainerComponent from '../validation-container/validation-container.js';\nimport { styles as shared } from './themes/shared/textarea.common.css.js';\nimport { styles } from './themes/textarea.base.css.js';\nimport { all } from './themes/themes.js';\nimport { textAreaValidators } from './validators.js';\n\nexport interface IgcTextareaComponentEventMap {\n igcInput: CustomEvent<string>;\n igcChange: CustomEvent<string>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n}\n\nconst nextId = createIdGenerator('textarea');\nconst Slots = setSlots(\n 'prefix',\n 'suffix',\n 'helper-text',\n 'value-missing',\n 'too-long',\n 'too-short',\n 'custom-error',\n 'invalid'\n);\n\n/**\n * Represents a multi-line plain-text editing control,\n * useful when you want to allow users to enter a sizeable amount of free-form text,\n * for example a comment on a review or feedback form.\n *\n * @element igc-textarea\n *\n * @slot - Text content from the default slot will be used as the value of the component.\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 too-long - Renders content when the maxlength validation fails.\n * @slot too-short - Renders content when the minlength 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 receives user input.\n * @fires igcChange - Emitted when the a change to the control value is committed by the user.\n *\n * @csspart container - The main wrapper that holds all main input elements of the textarea.\n * @csspart input - The native input element of the textarea.\n * @csspart label - The native label element of the textarea.\n * @csspart prefix - The prefix wrapper of the textarea.\n * @csspart suffix - The suffix wrapper of the textarea.\n * @csspart helper-text - The helper text wrapper of the textarea.\n */\n@shadowOptions({ delegatesFocus: true })\nexport default class IgcTextareaComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<IgcTextareaComponentEventMap, Constructor<LitElement>>(\n LitElement\n )\n) {\n public static readonly tagName = 'igc-textarea';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcTextareaComponent, IgcValidationContainerComponent);\n }\n\n //#region Private properties and state\n\n private readonly _inputId = nextId();\n\n private readonly _themes = addThemingController(this, all);\n\n private readonly _slots = addSlotController(this, {\n slots: Slots,\n onChange: this._handleSlotChange,\n });\n\n /**\n * Receives ARIA semantics projected by a composite host onto the inner\n * native textarea. See {@link addAriaTarget}.\n */\n private readonly _ariaTarget = addAriaTarget(this, {\n labels: () => this._internals.labels,\n description: () =>\n this._slots.hasAssignedElements('helper-text')\n ? this.renderRoot.querySelector('#helper-text')\n : null,\n });\n\n @query('textarea')\n private readonly _input!: HTMLTextAreaElement;\n\n protected override get __validators() {\n return textAreaValidators;\n }\n\n protected override readonly _formValue = createFormValueState(this, {\n initialValue: '',\n });\n\n //#endregion\n\n //#region Public properties and attributes\n\n /**\n * Specifies what permission, if any, the browser has to provide automated assistance in filling out form field values,\n * as well as guidance to the browser as to the type of information expected in the field.\n * Refer to [this page](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for additional information.\n *\n * @attr\n */\n @property()\n public autocomplete!: string;\n\n /**\n * Controls whether and how text input is automatically capitalized as it is entered/edited by the user.\n *\n * [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize).\n *\n * @attr\n */\n @property()\n public override autocapitalize!: string;\n\n /**\n * Hints at the type of data that might be entered by the user while editing the element or its contents.\n * This allows a browser to display an appropriate virtual keyboard.\n *\n * [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode)\n *\n * @attr inputmode\n */\n @property({ attribute: 'inputmode' })\n public override inputMode!: string;\n\n /**\n * The label for the control.\n *\n * @attr\n */\n @property()\n public label!: string;\n\n /**\n * The maximum number of characters (UTF-16 code units) that the user can enter.\n * If this value isn't specified, the user can enter an unlimited number of characters.\n *\n * @attr maxlength\n */\n @property({ type: Number, attribute: 'maxlength' })\n public maxLength!: number;\n\n /**\n * The minimum number of characters (UTF-16 code units) required that the user should enter.\n *\n * @attr minlength\n */\n @property({ type: Number, attribute: 'minlength' })\n public minLength!: number;\n\n /**\n * Whether the control will have outlined appearance.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public outlined = false;\n\n /**\n * The placeholder text of the control.\n *\n * @attr\n */\n @property()\n public placeholder!: string;\n\n /**\n * Makes the control a readonly field.\n *\n * @attr readonly\n */\n @property({ type: Boolean, reflect: true, attribute: 'readonly' })\n public readOnly = false;\n\n /**\n * Controls whether the control can be resized.\n * When `auto` is set, the control will try to expand and fit its content.\n *\n * @attr\n */\n @property()\n public resize: TextareaResize = 'vertical';\n\n /**\n * The number of visible text lines for the control. If it is specified, it must be a positive integer.\n * If it is not specified, the default value is 3.\n *\n * @attr\n */\n @property({ type: Number })\n public rows = 3;\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The value of the component\n *\n * @attr\n */\n @property()\n public set value(value: string) {\n this._formValue.setValueAndFormState(value);\n }\n\n public get value(): string {\n return this._formValue.value;\n }\n\n /**\n * Controls whether the element may be checked for spelling errors.\n *\n * @attr\n */\n @property({\n type: Boolean,\n converter: {\n fromAttribute: (value) => !(!value || value === 'false'),\n toAttribute: (value) => (value ? 'true' : 'false'),\n },\n })\n public override spellcheck = true;\n\n /**\n * Indicates how the control should wrap the value for form submission.\n * Refer to [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea#attributes)\n * for explanation of the available values.\n *\n * @attr\n */\n @property()\n public wrap: 'hard' | 'soft' | 'off' = 'soft';\n\n /**\n * Enables validation rules to be evaluated without restricting user input. This applies to the `maxLength` property\n * when it is defined.\n *\n * @attr validate-only\n */\n @property({ type: Boolean, reflect: true, attribute: 'validate-only' })\n public validateOnly = false;\n\n //#endregion\n\n //#region Life-cycle hooks\n\n constructor() {\n super();\n\n createResizeObserverController(this, {\n callback: this._setAreaHeight,\n });\n\n addSafeEventListener(this, 'blur', this._handleBlur);\n }\n\n protected override updated(props: PropertyValues<this>): void {\n if (props.has('rows') || props.has('resize') || props.has('value')) {\n this._setAreaHeight();\n }\n }\n\n //#endregion\n\n //#region Internal methods\n\n private _setAutoHeight(): number {\n const { borderTopWidth, borderBottomWidth } = getComputedStyle(this._input);\n return (\n this._input.scrollHeight +\n asNumber(borderTopWidth) +\n asNumber(borderBottomWidth)\n );\n }\n\n protected _setAreaHeight(): void {\n if (this.resize === 'auto') {\n this._input.style.height = 'auto';\n this._input.style.height = `${this._setAutoHeight()}px`;\n } else {\n Object.assign(this._input.style, { height: undefined });\n }\n }\n\n protected _resolvePartNames() {\n return {\n container: true,\n prefixed: this._slots.hasAssignedElements('prefix', {\n selector: ':not([hidden])',\n }),\n suffixed: this._slots.hasAssignedElements('suffix', {\n selector: ':not([hidden])',\n }),\n filled: !!this.value,\n };\n }\n\n //#endregion\n\n //#region Event handlers\n\n private _handleSlotChange({\n isDefault,\n }: SlotChangeCallbackParameters<InferSlotNames<typeof Slots>>): void {\n if (isDefault) {\n const value = this._slots\n .getAssignedNodes('[default]', true)\n .map((node) => node.textContent?.trim())\n .filter((node) => Boolean(node))\n .join('\\r\\n');\n\n if (value !== this.value) {\n this.value = value;\n }\n }\n }\n\n protected _handleInput(): void {\n this._commitValue(this._input.value, 'igcInput');\n }\n\n protected _handleChange(): void {\n this._commitValue(this._input.value, 'igcChange');\n }\n\n //#endregion\n\n //#region Public methods\n\n /** Selects all text within the control. */\n public select(): void {\n this._input.select();\n }\n\n /* blazorSuppress */\n /** Sets the text selection range of the control */\n public setSelectionRange(\n start: number,\n end: number,\n direction: SelectionRangeDirection = 'none'\n ): void {\n this._input.setSelectionRange(start, end, direction);\n }\n\n /* blazorSuppress */\n /** Replaces the selected text in the control. */\n public setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: RangeTextSelectMode = 'preserve'\n ): void {\n this._input.setRangeText(replacement, start, end, selectMode);\n this.value = this._input.value;\n }\n\n /* blazorSuppress */\n public override scrollTo(options?: ScrollToOptions | undefined): void;\n /* blazorSuppress */\n public override scrollTo(x: number, y: number): void;\n public override scrollTo(x?: unknown, y?: unknown): void {\n x != null && y != null\n ? this._input.scrollTo(x as number, y as number)\n : this._input.scrollTo(x as ScrollToOptions);\n }\n\n //#endregion\n\n //#region Renderers\n\n protected _renderSlot(name: InferSlotNames<typeof Slots>) {\n const isHidden = !this._slots.hasAssignedElements(name, {\n selector: ':not([hidden])',\n });\n\n return html`\n <div part=${name} ?hidden=${isHidden}>\n <slot name=${name}></slot>\n </div>\n `;\n }\n\n protected _renderLabel() {\n return this.label\n ? html`\n <label part=\"label\" for=${this.id || this._inputId}>\n ${this.label}\n </label>\n `\n : nothing;\n }\n\n protected _renderStandard() {\n return html`\n ${this._renderLabel()}\n <div part=${partMap(this._resolvePartNames())}>\n ${this._renderSlot('prefix')} ${this._renderInput()}\n ${this._renderSlot('suffix')}\n </div>\n ${this._renderValidationContainer()}\n `;\n }\n\n protected _renderMaterial() {\n return html`\n <div\n part=${partMap({\n ...this._resolvePartNames(),\n labelled: !!this.label,\n placeholder: !!this.placeholder,\n })}\n >\n <div part=\"start\">${this._renderSlot('prefix')}</div>\n ${this._renderInput()}\n <div part=\"notch\">${this._renderLabel()}</div>\n <div part=\"filler\"></div>\n <div part=\"end\">${this._renderSlot('suffix')}</div>\n </div>\n ${this._renderValidationContainer()}\n `;\n }\n\n protected _renderInput() {\n return html`\n <slot style=\"display: none\"></slot>\n <textarea\n ${ariaBindings(this._ariaTarget.resolveBindings())}\n id=${this.id || this._inputId}\n part=\"input\"\n style=${styleMap({\n resize: this.resize === 'auto' ? 'none' : this.resize,\n })}\n @input=${this._handleInput}\n @change=${this._handleChange}\n placeholder=${ifDefined(this.placeholder)}\n .rows=${this.rows}\n .value=${live(this.value)}\n .wrap=${this.wrap}\n autocomplete=${ifDefined(this.autocomplete as any)}\n autocapitalize=${ifDefined(this.autocapitalize as any)}\n inputmode=${ifDefined(this.inputMode)}\n spellcheck=${ifDefined(this.spellcheck)}\n minlength=${ifDefined(this.minLength)}\n maxlength=${ifDefined(this.validateOnly ? undefined : this.maxLength)}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readOnly}\n ></textarea>\n `;\n }\n\n protected override render() {\n return cache(\n this._themes.theme === 'material'\n ? this._renderMaterial()\n : this._renderStandard()\n );\n }\n\n //#endregion\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-textarea': IgcTextareaComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, type PropertyValues } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport {\n addAriaTarget,\n ariaBindings,\n} from '#internals/controllers/aria-projection.js';\nimport { createResizeObserverController } from '#internals/controllers/resize-observer.js';\nimport {\n addSlotController,\n type InferSlotNames,\n type SlotChangeCallbackParameters,\n setSlots,\n} from '#internals/controllers/slot.js';\nimport { shadowOptions } from '#internals/decorators/shadow-options.js';\nimport { registerComponent } from '#internals/definitions/register.js';\nimport type { Constructor } from '#internals/mixins/constructor.js';\nimport { EventEmitterMixin } from '#internals/mixins/event-emitter.js';\nimport { FormAssociatedRequiredMixin } from '#internals/mixins/forms/associated-required.js';\nimport { createFormValueState } from '#internals/mixins/forms/form-value.js';\nimport {\n renderInputShell,\n resolveInputPartNames,\n} from '#internals/templates/input-shell.js';\nimport { addSafeEventListener } from '#internals/utils/events.js';\nimport { asNumber } from '#internals/utils/math.js';\nimport { createIdGenerator } from '#internals/utils/strings.js';\nimport { addThemingController } from '#theming/theming-controller.js';\nimport type {\n RangeTextSelectMode,\n SelectionRangeDirection,\n TextareaResize,\n} from '../types.js';\nimport IgcValidationContainerComponent from '../validation-container/validation-container.js';\nimport { styles as shared } from './themes/shared/textarea.common.css.js';\nimport { styles } from './themes/textarea.base.css.js';\nimport { all } from './themes/themes.js';\nimport { textAreaValidators } from './validators.js';\n\nexport interface IgcTextareaComponentEventMap {\n igcInput: CustomEvent<string>;\n igcChange: CustomEvent<string>;\n // For analyzer meta only:\n /* skipWCPrefix */\n focus: FocusEvent;\n /* skipWCPrefix */\n blur: FocusEvent;\n}\n\nconst nextId = createIdGenerator('textarea');\nconst Slots = setSlots(\n 'prefix',\n 'suffix',\n 'helper-text',\n 'value-missing',\n 'too-long',\n 'too-short',\n 'custom-error',\n 'invalid'\n);\n\n/**\n * Represents a multi-line plain-text editing control,\n * useful when you want to allow users to enter a sizeable amount of free-form text,\n * for example a comment on a review or feedback form.\n *\n * @element igc-textarea\n *\n * @slot - Text content from the default slot will be used as the value of the component.\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 too-long - Renders content when the maxlength validation fails.\n * @slot too-short - Renders content when the minlength 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 receives user input.\n * @fires igcChange - Emitted when the a change to the control value is committed by the user.\n *\n * @csspart container - The main wrapper that holds all main input elements of the textarea.\n * @csspart input - The native input element of the textarea.\n * @csspart label - The native label element of the textarea.\n * @csspart prefix - The prefix wrapper of the textarea.\n * @csspart suffix - The suffix wrapper of the textarea.\n * @csspart helper-text - The helper text wrapper of the textarea.\n */\n@shadowOptions({ delegatesFocus: true })\nexport default class IgcTextareaComponent extends FormAssociatedRequiredMixin(\n EventEmitterMixin<IgcTextareaComponentEventMap, Constructor<LitElement>>(\n LitElement\n )\n) {\n public static readonly tagName = 'igc-textarea';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcTextareaComponent, IgcValidationContainerComponent);\n }\n\n //#region Private properties and state\n\n private readonly _inputId = nextId();\n\n private readonly _themes = addThemingController(this, all);\n\n private readonly _slots = addSlotController(this, {\n slots: Slots,\n onChange: this._handleSlotChange,\n });\n\n /**\n * Receives ARIA semantics projected by a composite host onto the inner\n * native textarea. See {@link addAriaTarget}.\n */\n private readonly _ariaTarget = addAriaTarget(this, {\n labels: () => this._internals.labels,\n description: () =>\n this._slots.hasAssignedElements('helper-text')\n ? this.renderRoot.querySelector('#helper-text')\n : null,\n });\n\n @query('textarea')\n private readonly _input?: HTMLTextAreaElement;\n\n protected override get __validators() {\n return textAreaValidators;\n }\n\n protected override readonly _formValue = createFormValueState(this, {\n initialValue: '',\n });\n\n //#endregion\n\n //#region Public properties and attributes\n\n /**\n * Specifies what permission, if any, the browser has to provide automated assistance in filling out form field values,\n * as well as guidance to the browser as to the type of information expected in the field.\n * Refer to [this page](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for additional information.\n *\n * @attr\n */\n @property()\n public autocomplete!: string;\n\n /**\n * Controls whether and how text input is automatically capitalized as it is entered/edited by the user.\n *\n * [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize).\n *\n * @attr\n */\n @property()\n public override autocapitalize!: string;\n\n /**\n * Hints at the type of data that might be entered by the user while editing the element or its contents.\n * This allows a browser to display an appropriate virtual keyboard.\n *\n * [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode)\n *\n * @attr inputmode\n */\n @property({ attribute: 'inputmode' })\n public override inputMode!: string;\n\n /**\n * The label for the control.\n *\n * @attr\n */\n @property()\n public label!: string;\n\n /**\n * The maximum number of characters (UTF-16 code units) that the user can enter.\n * If this value isn't specified, the user can enter an unlimited number of characters.\n *\n * @attr maxlength\n */\n @property({ type: Number, attribute: 'maxlength' })\n public maxLength!: number;\n\n /**\n * The minimum number of characters (UTF-16 code units) required that the user should enter.\n *\n * @attr minlength\n */\n @property({ type: Number, attribute: 'minlength' })\n public minLength!: number;\n\n /**\n * Whether the control will have outlined appearance.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public outlined = false;\n\n /**\n * The placeholder text of the control.\n *\n * @attr\n */\n @property()\n public placeholder!: string;\n\n /**\n * Makes the control a readonly field.\n *\n * @attr readonly\n */\n @property({ type: Boolean, reflect: true, attribute: 'readonly' })\n public readOnly = false;\n\n /**\n * Controls whether the control can be resized.\n * When `auto` is set, the control will try to expand and fit its content.\n *\n * @attr\n */\n @property()\n public resize: TextareaResize = 'vertical';\n\n /**\n * The number of visible text lines for the control. If it is specified, it must be a positive integer.\n * If it is not specified, the default value is 3.\n *\n * @attr\n */\n @property({ type: Number })\n public rows = 3;\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The value of the component\n *\n * @attr\n */\n @property()\n public set value(value: string) {\n this._formValue.setValueAndFormState(value);\n }\n\n public get value(): string {\n return this._formValue.value;\n }\n\n /**\n * Controls whether the element may be checked for spelling errors.\n *\n * @attr\n */\n @property({\n type: Boolean,\n converter: {\n fromAttribute: (value) => !(!value || value === 'false'),\n toAttribute: (value) => (value ? 'true' : 'false'),\n },\n })\n public override spellcheck = true;\n\n /**\n * Indicates how the control should wrap the value for form submission.\n * Refer to [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea#attributes)\n * for explanation of the available values.\n *\n * @attr\n */\n @property()\n public wrap: 'hard' | 'soft' | 'off' = 'soft';\n\n /**\n * Enables validation rules to be evaluated without restricting user input. This applies to the `maxLength` property\n * when it is defined.\n *\n * @attr validate-only\n */\n @property({ type: Boolean, reflect: true, attribute: 'validate-only' })\n public validateOnly = false;\n\n //#endregion\n\n //#region Life-cycle hooks\n\n constructor() {\n super();\n\n createResizeObserverController(this, {\n callback: this._setAreaHeight,\n });\n\n addSafeEventListener(this, 'blur', this._handleBlur);\n }\n\n protected override updated(props: PropertyValues<this>): void {\n if (props.has('rows') || props.has('resize') || props.has('value')) {\n this._setAreaHeight();\n }\n }\n\n //#endregion\n\n //#region Internal methods\n\n protected _setAreaHeight(): void {\n const input = this._input;\n\n if (!input) {\n return;\n }\n\n if (this.resize !== 'auto') {\n input.style.removeProperty('height');\n return;\n }\n\n input.style.height = 'auto';\n\n const { borderTopWidth, borderBottomWidth } = getComputedStyle(input);\n const height =\n input.scrollHeight +\n asNumber(borderTopWidth) +\n asNumber(borderBottomWidth);\n\n input.style.height = `${height}px`;\n }\n\n //#endregion\n\n //#region Event handlers\n\n private _handleSlotChange({\n isDefault,\n }: SlotChangeCallbackParameters<InferSlotNames<typeof Slots>>): void {\n if (!isDefault) {\n return;\n }\n\n const value = this._slots\n .getAssignedNodes('[default]', true)\n .map((node) => node.textContent?.trim())\n .filter(Boolean)\n .join('\\r\\n');\n\n if (value === this.value) {\n return;\n }\n\n if (this._pristine) {\n this.defaultValue = value;\n } else {\n this.value = value;\n }\n }\n\n protected _handleInput(): void {\n this._commitValue(this._input?.value ?? '', 'igcInput');\n }\n\n protected _handleChange(): void {\n this._commitValue(this._input?.value ?? '', 'igcChange');\n }\n\n //#endregion\n\n //#region Public methods\n\n /** Selects all text within the control. */\n public select(): void {\n this._input?.select();\n }\n\n /* blazorSuppress */\n /** Sets the text selection range of the control */\n public setSelectionRange(\n start: number,\n end: number,\n direction: SelectionRangeDirection = 'none'\n ): void {\n this._input?.setSelectionRange(start, end, direction);\n }\n\n /* blazorSuppress */\n /** Replaces the selected text in the control. */\n public setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: RangeTextSelectMode = 'preserve'\n ): void {\n this._input?.setRangeText(replacement, start, end, selectMode);\n this.value = this._input?.value ?? '';\n }\n\n /* blazorSuppress */\n public override scrollTo(options?: ScrollToOptions | undefined): void;\n /* blazorSuppress */\n public override scrollTo(x: number, y: number): void;\n public override scrollTo(x?: unknown, y?: unknown): void {\n x != null && y != null\n ? this._input?.scrollTo(x as number, y as number)\n : this._input?.scrollTo(x as ScrollToOptions);\n }\n\n //#endregion\n\n //#region Renderers\n\n protected _renderInput() {\n return html`\n <slot style=\"display: none\"></slot>\n <textarea\n ${ariaBindings(this._ariaTarget.resolveBindings())}\n id=${this._inputId}\n part=\"input\"\n style=${styleMap({\n resize: this.resize === 'auto' ? 'none' : this.resize,\n })}\n @input=${this._handleInput}\n @change=${this._handleChange}\n placeholder=${ifDefined(this.placeholder)}\n .rows=${this.rows}\n .value=${live(this.value)}\n .wrap=${this.wrap}\n autocomplete=${ifDefined(this.autocomplete as any)}\n autocapitalize=${ifDefined(this.autocapitalize as any)}\n inputmode=${ifDefined(this.inputMode)}\n spellcheck=${ifDefined(this.spellcheck)}\n minlength=${ifDefined(this.minLength)}\n maxlength=${ifDefined(this.validateOnly ? undefined : this.maxLength)}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readOnly}\n ></textarea>\n `;\n }\n\n protected override render() {\n return cache(\n renderInputShell(this, {\n theme: this._themes.theme,\n label: this.label,\n labelId: this._inputId,\n containerParts: resolveInputPartNames(\n this._slots,\n 'container',\n !!this.value\n ),\n materialParts: { placeholder: !!this.placeholder },\n hideEmptyAffixes: true,\n renderInput: this._renderInput,\n })\n );\n }\n\n //#endregion\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-textarea': IgcTextareaComponent;\n }\n}\n"]}
@@ -1,8 +1,7 @@
1
1
  import type IgcTileManagerComponent from './tile-manager.js';
2
2
  import type IgcTileComponent from './tile.js';
3
3
  declare class TilesState {
4
- private _nextEmptyPosition;
5
- manager: IgcTileManagerComponent;
4
+ private readonly _manager;
6
5
  private get _tiles();
7
6
  /**
8
7
  * Returns the current tiles of the tile manager sorted by their position.
@@ -19,16 +18,10 @@ declare class TilesState {
19
18
  adjustTileGridPosition(): void;
20
19
  remove(tile: IgcTileComponent): void;
21
20
  }
22
- type TileDragStackEntry = {
23
- tile: IgcTileComponent;
24
- position: number;
25
- column?: number | null;
26
- row?: number | null;
27
- };
28
21
  declare class TileDragStack {
29
22
  private _stack;
30
23
  peek(): IgcTileComponent;
31
- pop(): TileDragStackEntry | undefined;
24
+ pop(): void;
32
25
  push(tile: IgcTileComponent): void;
33
26
  restore(): void;
34
27
  reset(): void;
@@ -1,14 +1,13 @@
1
1
  import { lastOf, partition } from '#internals/utils/arrays.js';
2
2
  class TilesState {
3
3
  get _tiles() {
4
- return Array.from(this.manager.querySelectorAll(':scope > igc-tile'));
4
+ return Array.from(this._manager.querySelectorAll(':scope > igc-tile'));
5
5
  }
6
6
  get tiles() {
7
7
  return this._tiles.toSorted((a, b) => a.position - b.position);
8
8
  }
9
9
  constructor(manager) {
10
- this._nextEmptyPosition = 0;
11
- this.manager = manager;
10
+ this._manager = manager;
12
11
  }
13
12
  assignPositions() {
14
13
  let nextPosition = 0;
@@ -27,41 +26,35 @@ class TilesState {
27
26
  }
28
27
  }
29
28
  assignTiles() {
30
- this.manager.renderRoot.querySelector('slot').assign(...this._tiles);
29
+ this._manager.renderRoot.querySelector('slot').assign(...this._tiles);
31
30
  }
32
31
  add(tile) {
33
- const tiles = this.tiles;
34
32
  if (tile.position > -1) {
35
- for (const each of tiles) {
33
+ for (const each of this.tiles) {
36
34
  if (each !== tile && each.position >= tile.position) {
37
35
  each.position++;
38
36
  }
39
37
  }
38
+ return;
40
39
  }
41
- else {
42
- const positionedTiles = this._tiles.filter((tile) => tile.position > -1);
43
- tile.position =
44
- positionedTiles.length > 1
45
- ? Math.max(...positionedTiles.map((tile) => tile.position)) + 1
46
- : this._nextEmptyPosition;
47
- this._nextEmptyPosition += 1;
48
- }
40
+ const positionedTiles = this._tiles.filter((tile) => tile.position > -1);
41
+ tile.position = positionedTiles.length
42
+ ? Math.max(...positionedTiles.map((tile) => tile.position)) + 1
43
+ : 0;
49
44
  }
50
45
  adjustTileGridPosition() {
51
- const columnCount = this.manager.columnCount;
52
- if (columnCount > 0) {
53
- for (const tile of this.tiles) {
54
- let colStart = tile.colStart || 0;
55
- let colStartDelta = colStart > 0 ? 1 : 0;
56
- const colSpan = tile.colSpan || 0;
57
- if (colStart > columnCount) {
58
- colStart = 0;
59
- colStartDelta = 0;
60
- tile.colStart = 0;
61
- }
62
- if (colStart + colSpan > columnCount) {
63
- tile.colSpan = columnCount - colStart + colStartDelta;
64
- }
46
+ const { columnCount } = this._manager;
47
+ if (columnCount < 1) {
48
+ return;
49
+ }
50
+ for (const tile of this.tiles) {
51
+ let colStart = tile.colStart ?? 0;
52
+ if (colStart > columnCount) {
53
+ colStart = 0;
54
+ tile.colStart = null;
55
+ }
56
+ if (colStart + tile.colSpan > columnCount) {
57
+ tile.colSpan = columnCount - colStart + (colStart > 0 ? 1 : 0);
65
58
  }
66
59
  }
67
60
  }
@@ -81,23 +74,15 @@ class TileDragStack {
81
74
  return lastOf(this._stack).tile;
82
75
  }
83
76
  pop() {
84
- return this._stack.pop();
77
+ this._stack.pop();
85
78
  }
86
79
  push(tile) {
87
- this._stack.push({
88
- tile,
89
- position: tile.position,
90
- column: tile.colStart,
91
- row: tile.rowStart,
92
- });
80
+ const { position, colStart, rowStart } = tile;
81
+ this._stack.push({ tile, position, colStart, rowStart });
93
82
  }
94
83
  restore() {
95
- for (const { tile, position, column: colStart, row: rowStart, } of this._stack.toReversed()) {
96
- Object.assign(tile, {
97
- position,
98
- colStart,
99
- rowStart,
100
- });
84
+ for (const { tile, ...placement } of this._stack.toReversed()) {
85
+ Object.assign(tile, placement);
101
86
  }
102
87
  }
103
88
  reset() {
@@ -112,7 +97,7 @@ export function createTileDragStack() {
112
97
  }
113
98
  export function swapTiles(a, b) {
114
99
  [a.colStart, b.colStart] = [b.colStart, a.colStart];
115
- [a.rowStart, b.rowStart] = [b.rowStart, a.colStart];
100
+ [a.rowStart, b.rowStart] = [b.rowStart, a.rowStart];
116
101
  [a.position, b.position] = [b.position, a.position];
117
102
  }
118
103
  //# sourceMappingURL=position.js.map