@vonage/vivid 4.16.1 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/custom-elements.json +3201 -281
  2. package/elevation/index.cjs +1 -1
  3. package/elevation/index.js +1 -1
  4. package/index.cjs +147 -39
  5. package/index.js +64 -59
  6. package/lib/accordion/definition.d.ts +2 -0
  7. package/lib/accordion-item/definition.d.ts +2 -0
  8. package/lib/action-group/definition.d.ts +2 -0
  9. package/lib/alert/definition.d.ts +2 -0
  10. package/lib/audio-player/definition.d.ts +2 -0
  11. package/lib/avatar/definition.d.ts +2 -0
  12. package/lib/badge/definition.d.ts +2 -0
  13. package/lib/banner/definition.d.ts +2 -0
  14. package/lib/breadcrumb/definition.d.ts +2 -0
  15. package/lib/breadcrumb-item/definition.d.ts +2 -0
  16. package/lib/button/definition.d.ts +2 -0
  17. package/lib/calendar/calendar.d.ts +2 -0
  18. package/lib/calendar/definition.d.ts +2 -0
  19. package/lib/calendar-event/definition.d.ts +2 -0
  20. package/lib/card/definition.d.ts +2 -0
  21. package/lib/checkbox/definition.d.ts +2 -0
  22. package/lib/combobox/definition.d.ts +2 -0
  23. package/lib/components.d.ts +1 -0
  24. package/lib/data-grid/definition.d.ts +4 -0
  25. package/lib/date-picker/definition.d.ts +2 -0
  26. package/lib/date-range-picker/definition.d.ts +2 -0
  27. package/lib/dial-pad/definition.d.ts +2 -0
  28. package/lib/dialog/definition.d.ts +2 -0
  29. package/lib/divider/definition.d.ts +2 -0
  30. package/lib/empty-state/definition.d.ts +2 -0
  31. package/lib/enums.d.ts +6 -0
  32. package/lib/fab/definition.d.ts +2 -0
  33. package/lib/file-picker/definition.d.ts +2 -0
  34. package/lib/header/definition.d.ts +2 -0
  35. package/lib/icon/definition.d.ts +2 -0
  36. package/lib/layout/definition.d.ts +2 -0
  37. package/lib/menu/definition.d.ts +2 -0
  38. package/lib/menu/menu.d.ts +454 -4
  39. package/lib/menu-item/definition.d.ts +2 -0
  40. package/lib/nav/definition.d.ts +2 -0
  41. package/lib/nav-disclosure/definition.d.ts +2 -0
  42. package/lib/nav-item/definition.d.ts +2 -0
  43. package/lib/note/definition.d.ts +2 -0
  44. package/lib/number-field/definition.d.ts +2 -0
  45. package/lib/option/definition.d.ts +2 -0
  46. package/lib/pagination/definition.d.ts +2 -0
  47. package/lib/popup/definition.d.ts +0 -1
  48. package/lib/popup/popup.d.ts +25 -0
  49. package/lib/progress/definition.d.ts +2 -0
  50. package/lib/progress-ring/definition.d.ts +2 -0
  51. package/lib/radio/definition.d.ts +2 -0
  52. package/lib/radio-group/definition.d.ts +2 -0
  53. package/lib/range-slider/definition.d.ts +2 -0
  54. package/lib/rich-text-editor/definition.d.ts +2 -0
  55. package/lib/rich-text-editor/facades/prose-mirror-vivid.schema.d.ts +2 -0
  56. package/lib/rich-text-editor/facades/vivid-prose-mirror.facade.d.ts +7 -0
  57. package/lib/rich-text-editor/rich-text-editor.d.ts +13 -0
  58. package/lib/rich-text-editor/rich-text-editor.template.d.ts +4 -0
  59. package/lib/searchable-select/definition.d.ts +2 -0
  60. package/lib/select/definition.d.ts +2 -0
  61. package/lib/selectable-box/definition.d.ts +2 -0
  62. package/lib/side-drawer/definition.d.ts +2 -0
  63. package/lib/slider/definition.d.ts +2 -0
  64. package/lib/split-button/definition.d.ts +2 -0
  65. package/lib/switch/definition.d.ts +2 -0
  66. package/lib/tab/definition.d.ts +2 -0
  67. package/lib/tab-panel/definition.d.ts +2 -0
  68. package/lib/tabs/definition.d.ts +2 -0
  69. package/lib/tag/definition.d.ts +2 -0
  70. package/lib/tag-group/definition.d.ts +2 -0
  71. package/lib/text-area/definition.d.ts +2 -0
  72. package/lib/text-field/definition.d.ts +2 -0
  73. package/lib/time-picker/definition.d.ts +2 -0
  74. package/lib/time-picker/inline-time-picker/columns.d.ts +13 -0
  75. package/lib/time-picker/inline-time-picker/definition.d.ts +1 -0
  76. package/lib/time-picker/inline-time-picker/inline-time-picker.d.ts +15 -0
  77. package/lib/time-picker/inline-time-picker/inline-time-picker.template.d.ts +5 -0
  78. package/lib/time-picker/time-picker.template.d.ts +1 -2
  79. package/lib/toggletip/definition.d.ts +2 -0
  80. package/lib/toggletip/toggletip.d.ts +454 -4
  81. package/lib/tooltip/definition.d.ts +2 -0
  82. package/lib/tooltip/tooltip.d.ts +454 -4
  83. package/lib/tree-item/definition.d.ts +2 -0
  84. package/lib/tree-view/definition.d.ts +2 -0
  85. package/lib/video-player/definition.d.ts +2 -0
  86. package/menu/index.js +1 -1
  87. package/package.json +7 -2
  88. package/popup/index.cjs +1 -1
  89. package/popup/index.js +1 -1
  90. package/rich-text-editor/index.cjs +5 -0
  91. package/rich-text-editor/index.js +3 -0
  92. package/searchable-select/index.cjs +1 -1
  93. package/searchable-select/index.js +1 -1
  94. package/select/index.cjs +1 -1
  95. package/select/index.js +1 -1
  96. package/selectable-box/index.cjs +1 -1
  97. package/selectable-box/index.js +1 -1
  98. package/shared/affix.cjs +1 -3
  99. package/shared/affix.js +2 -4
  100. package/shared/anchored.cjs +12 -9
  101. package/shared/anchored.js +13 -10
  102. package/shared/definition.js +1 -1
  103. package/shared/definition10.cjs +1 -0
  104. package/shared/definition10.js +2 -2
  105. package/shared/definition11.cjs +1 -1
  106. package/shared/definition11.js +2 -2
  107. package/shared/definition12.cjs +1 -1
  108. package/shared/definition12.js +2 -2
  109. package/shared/definition13.cjs +15 -2
  110. package/shared/definition13.js +16 -4
  111. package/shared/definition14.cjs +3 -2
  112. package/shared/definition14.js +4 -4
  113. package/shared/definition15.cjs +1 -1
  114. package/shared/definition15.js +2 -2
  115. package/shared/definition16.cjs +18 -18
  116. package/shared/definition16.js +6 -6
  117. package/shared/definition17.cjs +3 -0
  118. package/shared/definition17.js +2 -2
  119. package/shared/definition18.cjs +7 -7
  120. package/shared/definition18.js +4 -4
  121. package/shared/definition19.cjs +15 -15
  122. package/shared/definition19.js +4 -4
  123. package/shared/definition2.cjs +1 -0
  124. package/shared/definition2.js +2 -2
  125. package/shared/definition20.cjs +5 -4
  126. package/shared/definition20.js +6 -6
  127. package/shared/definition21.cjs +3 -2
  128. package/shared/definition21.js +4 -4
  129. package/shared/definition22.js +1 -1
  130. package/shared/definition23.cjs +2 -1
  131. package/shared/definition23.js +3 -3
  132. package/shared/definition24.cjs +2 -1
  133. package/shared/definition24.js +3 -3
  134. package/shared/definition25.cjs +14 -14
  135. package/shared/definition25.js +3 -3
  136. package/shared/definition26.cjs +2 -1
  137. package/shared/definition26.js +3 -3
  138. package/shared/definition27.cjs +1 -1
  139. package/shared/definition27.js +2 -2
  140. package/shared/definition28.cjs +1 -0
  141. package/shared/definition28.js +2 -2
  142. package/shared/definition29.cjs +53 -61
  143. package/shared/definition29.js +54 -63
  144. package/shared/definition3.cjs +1 -0
  145. package/shared/definition3.js +2 -2
  146. package/shared/definition30.cjs +1 -0
  147. package/shared/definition30.js +2 -2
  148. package/shared/definition31.cjs +1 -0
  149. package/shared/definition31.js +2 -2
  150. package/shared/definition32.cjs +1 -0
  151. package/shared/definition32.js +2 -2
  152. package/shared/definition33.cjs +2 -1
  153. package/shared/definition33.js +3 -3
  154. package/shared/definition34.cjs +25 -25
  155. package/shared/definition34.js +5 -5
  156. package/shared/definition35.cjs +1 -1
  157. package/shared/definition35.js +2 -2
  158. package/shared/definition36.cjs +2 -1
  159. package/shared/definition36.js +3 -3
  160. package/shared/definition37.cjs +1 -1
  161. package/shared/definition37.js +2 -2
  162. package/shared/definition38.cjs +2 -1
  163. package/shared/definition38.js +3 -3
  164. package/shared/definition39.cjs +1 -0
  165. package/shared/definition39.js +2 -2
  166. package/shared/definition4.cjs +3 -2
  167. package/shared/definition4.js +4 -4
  168. package/shared/definition40.cjs +1 -1
  169. package/shared/definition40.js +2 -2
  170. package/shared/definition41.cjs +30 -30
  171. package/shared/definition41.js +5 -5
  172. package/shared/definition42.cjs +12538 -1046
  173. package/shared/definition42.js +12538 -1047
  174. package/shared/definition43.cjs +927 -701
  175. package/shared/definition43.js +929 -702
  176. package/shared/definition44.cjs +874 -104
  177. package/shared/definition44.js +874 -104
  178. package/shared/definition45.cjs +114 -90
  179. package/shared/definition45.js +113 -90
  180. package/shared/definition46.cjs +88 -464
  181. package/shared/definition46.js +87 -463
  182. package/shared/definition47.cjs +463 -109
  183. package/shared/definition47.js +462 -109
  184. package/shared/definition48.cjs +108 -106
  185. package/shared/definition48.js +107 -106
  186. package/shared/definition49.cjs +139 -13
  187. package/shared/definition49.js +138 -13
  188. package/shared/definition5.cjs +3 -2
  189. package/shared/definition5.js +5 -5
  190. package/shared/definition50.cjs +16 -114
  191. package/shared/definition50.js +15 -114
  192. package/shared/definition51.cjs +79 -485
  193. package/shared/definition51.js +78 -485
  194. package/shared/definition52.cjs +503 -23
  195. package/shared/definition52.js +502 -23
  196. package/shared/definition53.cjs +25 -123
  197. package/shared/definition53.js +24 -123
  198. package/shared/definition54.cjs +96 -254
  199. package/shared/definition54.js +96 -255
  200. package/shared/definition55.cjs +261 -59
  201. package/shared/definition55.js +262 -60
  202. package/shared/definition56.cjs +72 -861
  203. package/shared/definition56.js +72 -861
  204. package/shared/definition57.cjs +880 -107
  205. package/shared/definition57.js +880 -107
  206. package/shared/definition58.cjs +104 -88
  207. package/shared/definition58.js +104 -89
  208. package/shared/definition59.cjs +80 -165
  209. package/shared/definition59.js +79 -163
  210. package/shared/definition6.cjs +2 -1
  211. package/shared/definition6.js +3 -3
  212. package/shared/definition60.cjs +142 -228
  213. package/shared/definition60.js +141 -229
  214. package/shared/definition61.cjs +233 -70146
  215. package/shared/definition61.js +232 -70146
  216. package/shared/definition62.cjs +69381 -28
  217. package/shared/definition62.js +69380 -27
  218. package/shared/definition63.cjs +28 -2163
  219. package/shared/definition63.js +27 -2161
  220. package/shared/definition64.cjs +2195 -0
  221. package/shared/definition64.js +2190 -0
  222. package/shared/definition7.cjs +2 -1
  223. package/shared/definition7.js +3 -3
  224. package/shared/definition8.cjs +2 -1
  225. package/shared/definition8.js +3 -3
  226. package/shared/definition9.cjs +1 -1
  227. package/shared/definition9.js +2 -2
  228. package/shared/enums.cjs +8 -0
  229. package/shared/enums.js +8 -1
  230. package/shared/form-associated.js +1 -1
  231. package/shared/form-elements.cjs +7 -7
  232. package/shared/form-elements.js +8 -8
  233. package/shared/foundation/vivid-element/vivid-element.d.ts +1 -0
  234. package/shared/patterns/anchored.d.ts +891 -10
  235. package/shared/patterns/trapped-focus.d.ts +2 -0
  236. package/shared/presentationDate.cjs +5 -7
  237. package/shared/presentationDate.js +5 -7
  238. package/shared/slider.template.cjs +4 -4
  239. package/shared/slider.template.js +4 -4
  240. package/shared/text-anchor.template.cjs +2 -2
  241. package/shared/text-anchor.template.js +2 -2
  242. package/shared/text-field.cjs +555 -2
  243. package/shared/text-field.js +554 -2
  244. package/shared/text-field2.cjs +2 -572
  245. package/shared/text-field2.js +2 -571
  246. package/shared/trapped-focus.cjs +7 -1
  247. package/shared/trapped-focus.js +7 -1
  248. package/shared/utils/mixins.d.ts +3 -0
  249. package/shared/vivid-element.cjs +3 -0
  250. package/shared/vivid-element.js +4 -1
  251. package/side-drawer/index.cjs +1 -1
  252. package/side-drawer/index.js +1 -1
  253. package/slider/index.cjs +1 -1
  254. package/slider/index.js +1 -1
  255. package/split-button/index.cjs +1 -1
  256. package/split-button/index.js +1 -1
  257. package/styles/core/all.css +1 -1
  258. package/styles/core/theme.css +1 -1
  259. package/styles/core/typography.css +1 -1
  260. package/styles/tokens/theme-dark.css +4 -4
  261. package/styles/tokens/theme-light.css +4 -4
  262. package/styles/tokens/vivid-2-compat.css +1 -1
  263. package/switch/index.cjs +1 -1
  264. package/switch/index.js +1 -1
  265. package/tab/index.cjs +1 -1
  266. package/tab/index.js +1 -1
  267. package/tab-panel/index.cjs +1 -1
  268. package/tab-panel/index.js +1 -1
  269. package/tabs/index.cjs +1 -1
  270. package/tabs/index.js +1 -1
  271. package/tag/index.cjs +1 -1
  272. package/tag/index.js +1 -1
  273. package/tag-group/index.cjs +1 -1
  274. package/tag-group/index.js +1 -1
  275. package/text-anchor/index.js +1 -1
  276. package/text-area/index.cjs +1 -1
  277. package/text-area/index.js +1 -1
  278. package/text-field/index.cjs +1 -1
  279. package/text-field/index.js +1 -1
  280. package/time-picker/index.cjs +1 -1
  281. package/time-picker/index.js +1 -1
  282. package/toggletip/index.cjs +1 -1
  283. package/toggletip/index.js +1 -1
  284. package/tooltip/index.cjs +1 -1
  285. package/tooltip/index.js +1 -1
  286. package/tree-item/index.cjs +1 -1
  287. package/tree-item/index.js +1 -1
  288. package/tree-view/index.cjs +1 -1
  289. package/tree-view/index.js +1 -1
  290. package/video-player/index.cjs +1 -1
  291. package/video-player/index.js +1 -1
  292. package/vivid.api.json +22795 -1
@@ -2,44 +2,230 @@
2
2
 
3
3
  const definition = require('./definition27.cjs');
4
4
  const vividElement = require('./vivid-element.cjs');
5
- const textField$1 = require('./text-field2.cjs');
6
5
  const textField = require('./text-field.cjs');
7
- const affix = require('./affix.cjs');
8
- const when = require('./when.cjs');
9
- const slotted = require('./slotted.cjs');
6
+ const applyMixinsWithObservables = require('./applyMixinsWithObservables.cjs');
7
+ const formAssociated = require('./form-associated.cjs');
10
8
  const formElements = require('./form-elements.cjs');
11
9
  const classNames = require('./class-names.cjs');
10
+ const when = require('./when.cjs');
11
+ const ref = require('./ref.cjs');
12
+
13
+ const styles = ":host{display:inline-block}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--_connotation-color-intermediate)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--_connotation-color-fierce)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base:where(.disabled,:disabled).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.readonly):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base:where(.readonly):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-600);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.error):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: var(--vvd-color-alert-500)}.base:where(.error):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: transparent}.base:where(.success):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: var(--vvd-color-success-500)}.base:where(.success):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: transparent}.base.connotation-success{--_connotation-color-primary: var(--vvd-text-area-success-primary, var(--vvd-color-success-500));--_connotation-color-primary-text: var(--vvd-text-area-success-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-text-area-success-primary-increment, var(--vvd-color-success-600));--_connotation-color-intermediate: var(--vvd-text-area-success-intermediate, var(--vvd-color-success-500));--_connotation-color-firm: var(--vvd-text-area-success-firm, var(--vvd-color-success-600));--_connotation-color-fierce: var(--vvd-text-area-success-fierce, var(--vvd-color-success-700));--_connotation-color-faint: var(--vvd-text-area-success-faint, var(--vvd-color-success-50));--_connotation-color-soft: var(--vvd-text-area-success-soft, var(--vvd-color-success-100))}.base.connotation-alert{--_connotation-color-primary: var(--vvd-text-area-alert-primary, var(--vvd-color-alert-500));--_connotation-color-primary-text: var(--vvd-text-area-alert-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-text-area-alert-primary-increment, var(--vvd-color-alert-600));--_connotation-color-intermediate: var(--vvd-text-area-alert-intermediate, var(--vvd-color-alert-500));--_connotation-color-firm: var(--vvd-text-area-alert-firm, var(--vvd-color-alert-600));--_connotation-color-fierce: var(--vvd-text-area-alert-fierce, var(--vvd-color-alert-700));--_connotation-color-faint: var(--vvd-text-area-alert-faint, var(--vvd-color-alert-50));--_connotation-color-soft: var(--vvd-text-area-alert-soft, var(--vvd-color-alert-100))}.base:not(.connotation-success,.connotation-alert){--_connotation-color-primary: var(--vvd-text-area-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-text-area-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-primary-increment: var(--vvd-text-area-accent-primary-increment, var(--vvd-color-neutral-800));--_connotation-color-intermediate: var(--vvd-text-area-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-firm: var(--vvd-text-area-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-fierce: var(--vvd-text-area-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-faint: var(--vvd-text-area-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-text-area-accent-soft, var(--vvd-color-neutral-100))}.base{display:inline-grid;grid-template-columns:1fr max-content;inline-size:100%;row-gap:4px}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){--_low-ink-color: var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color: var(--_appearance-color-text);cursor:not-allowed}.label{color:var(--vvd-color-canvas-text);contain:inline-size;font:var(--vvd-typography-base);grid-column:1/2;grid-row:1;line-height:20px}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base);grid-column:2/-1}.control{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.control{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.control ::-webkit-scrollbar{width:4px}.control ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.control ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-thumb-color)}.control{box-sizing:border-box;padding:8px 16px;border:0 none;border-radius:8px;appearance:none;background-color:var(--_appearance-color-fill);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);font:var(--vvd-typography-base);grid-column:1/-1;min-block-size:calc(1px*(32 + 4*clamp(-1,var(--vvd-size-density, 0),2)));resize:none;transition:box-shadow .2s,background-color .2s,color .2s}@supports selector(::-webkit-resizer){.control::-webkit-resizer{background-image:linear-gradient(315deg,transparent 0,transparent 2px,var(--vvd-color-canvas-text) 2px,var(--vvd-color-canvas-text) 3px,transparent 3px,transparent 5px,var(--vvd-color-canvas-text) 5px,var(--vvd-color-canvas-text) 6px,transparent 6px,transparent 8px,transparent 100%);background-repeat:no-repeat;background-size:10px 10px;block-size:10px;inline-size:10px}}.control:disabled{opacity:1;pointer-events:none;-webkit-text-fill-color:var(--_appearance-color-text)}.control::placeholder,.control:disabled::placeholder{opacity:1;pointer-events:none;-webkit-text-fill-color:var(--_low-ink-color)}.control:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));outline-offset:calc(-2px - var(--focus-inset, 0px))}:host([resize=both]) .control{resize:both}:host([resize=horizontal]) .control{resize:horizontal}:host([resize=vertical]) .control{resize:vertical}";
14
+
15
+ class _TextArea extends vividElement.VividElement {
16
+ }
17
+ class FormAssociatedTextArea extends formAssociated.FormAssociated(_TextArea) {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.proxy = document.createElement("textarea");
21
+ }
22
+ }
23
+
24
+ var __defProp = Object.defineProperty;
25
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
26
+ var __typeError = (msg) => {
27
+ throw TypeError(msg);
28
+ };
29
+ var __decorateClass = (decorators, target, key, kind) => {
30
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
31
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
32
+ if (decorator = decorators[i])
33
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
34
+ if (kind && result) __defProp(target, key, result);
35
+ return result;
36
+ };
37
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
38
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
39
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
40
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
41
+ var _reflectToTextArea;
42
+ const TextAreaResize = {
43
+ /**
44
+ * No resize.
45
+ */
46
+ none: "none"};
47
+ exports.TextArea = class TextArea extends FormAssociatedTextArea {
48
+ constructor() {
49
+ super(...arguments);
50
+ // eslint-disable-next-line @nrwl/nx/workspace/no-attribute-default-value
51
+ this.resize = TextAreaResize.none;
52
+ this.cols = 20;
53
+ /**
54
+ * @internal
55
+ */
56
+ this.handleTextInput = () => {
57
+ this.value = this.control.value;
58
+ };
59
+ __privateAdd(this, _reflectToTextArea);
60
+ }
61
+ /**
62
+ * @internal
63
+ */
64
+ readOnlyChanged() {
65
+ if (this.proxy instanceof HTMLTextAreaElement) {
66
+ this.proxy.readOnly = this.readOnly;
67
+ }
68
+ }
69
+ /**
70
+ * @internal
71
+ */
72
+ autofocusChanged() {
73
+ if (this.proxy instanceof HTMLTextAreaElement) {
74
+ this.proxy.autofocus = this.autofocus;
75
+ }
76
+ }
77
+ /**
78
+ * @internal
79
+ */
80
+ listChanged() {
81
+ if (this.proxy instanceof HTMLTextAreaElement) {
82
+ this.proxy.setAttribute("list", this.list);
83
+ }
84
+ }
85
+ /**
86
+ * @internal
87
+ */
88
+ maxlengthChanged() {
89
+ if (this.proxy instanceof HTMLTextAreaElement) {
90
+ this.proxy.maxLength = this.maxlength;
91
+ }
92
+ }
93
+ /**
94
+ * @internal
95
+ */
96
+ minlengthChanged() {
97
+ if (this.proxy instanceof HTMLTextAreaElement) {
98
+ this.proxy.minLength = this.minlength;
99
+ }
100
+ }
101
+ /**
102
+ * @internal
103
+ */
104
+ spellcheckChanged() {
105
+ if (this.proxy instanceof HTMLTextAreaElement) {
106
+ this.proxy.spellcheck = this.spellcheck;
107
+ }
108
+ }
109
+ /**
110
+ * Selects all the text in the text area
111
+ *
112
+ * @public
113
+ */
114
+ select() {
115
+ this.control.select();
116
+ }
117
+ /**
118
+ * Change event handler for inner control.
119
+ * @remarks
120
+ * "Change" events are not `composable` so they will not
121
+ * permeate the shadow DOM boundary. This fn effectively proxies
122
+ * the change event, emitting a `change` event whenever the internal
123
+ * control emits a `change` event
124
+ * @internal
125
+ */
126
+ handleChange() {
127
+ this.$emit("change");
128
+ }
129
+ /** {@inheritDoc (FormAssociated:interface).validate} */
130
+ validate() {
131
+ super.validate(this.control);
132
+ }
133
+ connectedCallback() {
134
+ super.connectedCallback();
135
+ __privateSet(this, _reflectToTextArea, new textField.Reflector(this, this.control));
136
+ __privateGet(this, _reflectToTextArea).property("value", "value", true);
137
+ }
138
+ disconnectedCallback() {
139
+ super.disconnectedCallback();
140
+ __privateGet(this, _reflectToTextArea).destroy();
141
+ }
142
+ };
143
+ _reflectToTextArea = new WeakMap();
144
+ // @ts-expect-error Type is incorrectly non-optional
145
+ __decorateClass([
146
+ vividElement.attr({ mode: "boolean" })
147
+ ], exports.TextArea.prototype, "readOnly", 2);
148
+ __decorateClass([
149
+ vividElement.attr
150
+ ], exports.TextArea.prototype, "resize", 2);
151
+ // @ts-expect-error Type is incorrectly non-optional
152
+ __decorateClass([
153
+ vividElement.attr({ mode: "boolean" })
154
+ ], exports.TextArea.prototype, "autofocus", 2);
155
+ // @ts-expect-error Type is incorrectly non-optional
156
+ __decorateClass([
157
+ vividElement.attr({ attribute: "form" })
158
+ ], exports.TextArea.prototype, "formId", 2);
159
+ // @ts-expect-error Type is incorrectly non-optional
160
+ __decorateClass([
161
+ vividElement.attr
162
+ ], exports.TextArea.prototype, "list", 2);
163
+ // @ts-expect-error Type is incorrectly non-optional
164
+ __decorateClass([
165
+ vividElement.attr({ converter: vividElement.nullableNumberConverter })
166
+ ], exports.TextArea.prototype, "maxlength", 2);
167
+ // @ts-expect-error Type is incorrectly non-optional
168
+ __decorateClass([
169
+ vividElement.attr({ converter: vividElement.nullableNumberConverter })
170
+ ], exports.TextArea.prototype, "minlength", 2);
171
+ // @ts-expect-error Type is incorrectly non-optional
172
+ __decorateClass([
173
+ vividElement.attr
174
+ ], exports.TextArea.prototype, "name", 2);
175
+ // @ts-expect-error Type is incorrectly non-optional
176
+ __decorateClass([
177
+ vividElement.attr
178
+ ], exports.TextArea.prototype, "placeholder", 2);
179
+ __decorateClass([
180
+ vividElement.attr({ converter: vividElement.nullableNumberConverter, mode: "fromView" })
181
+ ], exports.TextArea.prototype, "cols", 2);
182
+ // @ts-expect-error Type is incorrectly non-optional
183
+ __decorateClass([
184
+ vividElement.attr({ converter: vividElement.nullableNumberConverter, mode: "fromView" })
185
+ ], exports.TextArea.prototype, "rows", 2);
186
+ // @ts-expect-error Type is incorrectly non-optional
187
+ __decorateClass([
188
+ vividElement.attr({ mode: "boolean" })
189
+ ], exports.TextArea.prototype, "spellcheck", 2);
190
+ __decorateClass([
191
+ vividElement.observable
192
+ ], exports.TextArea.prototype, "defaultSlottedNodes", 2);
193
+ __decorateClass([
194
+ vividElement.attr
195
+ ], exports.TextArea.prototype, "wrap", 2);
196
+ exports.TextArea = __decorateClass([
197
+ formElements.errorText,
198
+ formElements.formElements
199
+ ], exports.TextArea);
200
+ applyMixinsWithObservables.applyMixinsWithObservables(
201
+ exports.TextArea,
202
+ formElements.FormElementCharCount,
203
+ formElements.FormElementHelperText,
204
+ formElements.FormElementSuccessText,
205
+ textField.DelegatesARIATextbox
206
+ );
12
207
 
13
- const getStateClasses = ({
208
+ const getClasses = ({
209
+ value,
14
210
  errorValidationMessage,
15
211
  disabled,
16
- value,
17
- readOnly,
18
212
  placeholder,
19
- appearance,
20
- shape,
21
- label,
22
- successText,
23
- actionItemsSlottedContent,
24
- leadingActionItemsSlottedContent,
25
- icon,
26
- scale
213
+ readOnly,
214
+ successText
27
215
  }) => classNames.classNames(
28
- ["error", Boolean(errorValidationMessage)],
29
- ["disabled", disabled],
30
- ["has-value", Boolean(value)],
216
+ "base",
31
217
  ["readonly", readOnly],
32
218
  ["placeholder", Boolean(placeholder)],
33
- [`appearance-${appearance}`, Boolean(appearance)],
34
- [`shape-${shape}`, Boolean(shape)],
35
- ["no-label", !label],
36
- ["has-icon", !!icon],
37
- ["success", Boolean(successText)],
38
- ["action-items", !!actionItemsSlottedContent?.length],
39
- ["leading-action-items", !!leadingActionItemsSlottedContent?.length],
40
- ["no-leading", !(leadingActionItemsSlottedContent?.length || icon)],
41
- [`size-${scale}`, Boolean(scale)]
219
+ ["disabled", disabled],
220
+ ["error", Boolean(errorValidationMessage)],
221
+ ["has-value", Boolean(value)],
222
+ ["success", !!successText]
42
223
  );
224
+ function renderLabel() {
225
+ return vividElement.html` <label for="control" class="label">
226
+ ${(x) => x.label}
227
+ </label>`;
228
+ }
43
229
  function renderCharCount() {
44
230
  return vividElement.html`
45
231
  <span class="char-count"
@@ -47,48 +233,64 @@ function renderCharCount() {
47
233
  >
48
234
  `;
49
235
  }
50
- const TextfieldTemplate = (context) => {
51
- const affixIconTemplate = affix.affixIconTemplateFactory(context);
52
- return vividElement.html` <div class="base ${getStateClasses}">
236
+ const TextAreaTemplate = (context) => {
237
+ return vividElement.html`
238
+ <div class="${getClasses}">
53
239
  ${when.when((x) => x.charCount && x.maxlength, renderCharCount())}
54
- <slot class="label" name="_label"></slot>
55
- <div class="fieldset">
56
- <div class="leading-items-wrapper">
57
- <slot
58
- name="leading-action-items"
59
- ${slotted.slotted("leadingActionItemsSlottedContent")}
60
- ></slot>
61
- ${(x) => affixIconTemplate(x.icon)}
62
- </div>
63
-
64
- <div class="wrapper">
65
- <slot class="control" name="_control"></slot>
66
- </div>
67
- <div class="action-items-wrapper">
68
- <slot
69
- name="action-items"
70
- ${slotted.slotted("actionItemsSlottedContent")}
71
- ></slot>
72
- </div>
73
- </div>
240
+ ${when.when((x) => x.label, renderLabel())}
241
+ <textarea
242
+ class="control"
243
+ id="control"
244
+ ?autofocus="${(x) => x.autofocus}"
245
+ placeholder="${(x) => x.placeholder ? x.placeholder : null}"
246
+ name="${(x) => x.name ? x.name : null}"
247
+ list="${(x) => x.list}"
248
+ minlength="${(x) => x.minlength ? x.minlength : null}"
249
+ maxlength="${(x) => x.maxlength ? x.maxlength : null}"
250
+ rows="${(x) => x.rows ? x.rows : null}"
251
+ cols="${(x) => x.cols ? x.cols : null}"
252
+ wrap="${(x) => x.wrap ? x.wrap : null}"
253
+ ?readonly="${(x) => x.readOnly}"
254
+ ?disabled="${(x) => x.disabled}"
255
+ ?required="${(x) => x.required}"
256
+ ?spellcheck="${(x) => x.spellcheck}"
257
+ aria-atomic="${(x) => x.ariaAtomic}"
258
+ aria-busy="${(x) => x.ariaBusy}"
259
+ aria-current="${(x) => x.ariaCurrent}"
260
+ aria-details="${(x) => x.ariaDetails}"
261
+ aria-disabled="${(x) => x.ariaDisabled}"
262
+ aria-errormessage="${(x) => x.ariaErrormessage}"
263
+ aria-haspopup="${(x) => x.ariaHaspopup}"
264
+ aria-hidden="${(x) => x.ariaHidden}"
265
+ aria-invalid="${(x) => x.ariaInvalid}"
266
+ aria-keyshortcuts="${(x) => x.ariaKeyshortcuts}"
267
+ aria-label="${(x) => x.ariaLabel}"
268
+ aria-live="${(x) => x.ariaLive}"
269
+ aria-relevant="${(x) => x.ariaRelevant}"
270
+ aria-roledescription="${(x) => x.ariaRoledescription}"
271
+ @input="${(x) => x.handleTextInput()}"
272
+ @change="${(x) => x.handleChange()}"
273
+ ${ref.ref("control")}
274
+ >
275
+ </textarea>
74
276
  ${formElements.getFeedbackTemplate(context)}
75
277
  </div>
76
- <slot name="_mirrored-helper-text"></slot>`;
278
+ `;
77
279
  };
78
280
 
79
- const textFieldDefinition = vividElement.defineVividComponent(
80
- "text-field",
81
- textField$1.TextField,
82
- TextfieldTemplate,
281
+ const textAreaDefinition = vividElement.defineVividComponent(
282
+ "text-area",
283
+ exports.TextArea,
284
+ TextAreaTemplate,
83
285
  [definition.iconDefinition],
84
286
  {
85
- styles: textField.styles,
287
+ styles,
86
288
  shadowOptions: {
87
289
  delegatesFocus: true
88
290
  }
89
291
  }
90
292
  );
91
- const registerTextField = vividElement.createRegisterFunction(textFieldDefinition);
293
+ const registerTextArea = vividElement.createRegisterFunction(textAreaDefinition);
92
294
 
93
- exports.registerTextField = registerTextField;
94
- exports.textFieldDefinition = textFieldDefinition;
295
+ exports.registerTextArea = registerTextArea;
296
+ exports.textAreaDefinition = textAreaDefinition;