@vonage/vivid 4.24.0 → 4.26.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 (402) hide show
  1. package/custom-elements.json +23176 -14463
  2. package/elevation/index.cjs +1 -1
  3. package/elevation/index.js +1 -1
  4. package/index.cjs +112 -150
  5. package/index.js +37 -35
  6. package/lib/accordion-item/accordion-item.d.ts +7 -1
  7. package/lib/action-group/action-group.d.ts +7 -1
  8. package/lib/alert/alert.d.ts +22 -2
  9. package/lib/audio-player/audio-player.d.ts +7 -1
  10. package/lib/badge/badge.d.ts +10 -2
  11. package/lib/banner/banner.d.ts +28 -3
  12. package/lib/breadcrumb/breadcrumb.d.ts +7 -1
  13. package/lib/breadcrumb-item/breadcrumb-item.d.ts +64 -8
  14. package/lib/button/button.d.ts +733 -8
  15. package/lib/button/locale.d.ts +3 -0
  16. package/lib/calendar/calendar.d.ts +2 -0
  17. package/lib/calendar-event/calendar-event.d.ts +7 -1
  18. package/lib/card/card.d.ts +394 -2
  19. package/lib/card/card.template.d.ts +2 -1
  20. package/lib/checkbox/checkbox.d.ts +1830 -13
  21. package/lib/combobox/combobox.d.ts +1827 -20
  22. package/lib/data-grid/data-grid-cell.d.ts +342 -2
  23. package/lib/data-grid/data-grid-row.d.ts +1 -0
  24. package/lib/data-grid/data-grid.d.ts +1 -1
  25. package/lib/data-grid/locale.d.ts +5 -0
  26. package/lib/date-picker/date-picker.d.ts +1676 -207
  27. package/lib/date-range-picker/date-range-picker.d.ts +840 -107
  28. package/lib/date-time-picker/date-time-picker.d.ts +1678 -209
  29. package/lib/dial-pad/dial-pad.d.ts +9 -1
  30. package/lib/dialog/dialog.d.ts +15 -2
  31. package/lib/divider/divider.d.ts +7 -1
  32. package/lib/fab/fab.d.ts +7 -1
  33. package/lib/file-picker/file-picker.d.ts +1509 -31
  34. package/lib/header/header.d.ts +7 -1
  35. package/lib/icon/icon.d.ts +1 -0
  36. package/lib/icon/icon.template.d.ts +2 -1
  37. package/lib/menu/menu.d.ts +17 -8
  38. package/lib/menu/name.d.ts +1 -0
  39. package/lib/menu-item/menu-item.d.ts +16 -4
  40. package/lib/nav/nav.d.ts +7 -1
  41. package/lib/nav-disclosure/nav-disclosure.d.ts +15 -2
  42. package/lib/nav-item/nav-item.d.ts +406 -4
  43. package/lib/note/note.d.ts +7 -1
  44. package/lib/number-field/locale.d.ts +3 -2
  45. package/lib/number-field/number-field.d.ts +1859 -38
  46. package/lib/option/option.d.ts +14 -2
  47. package/lib/pagination/locale.d.ts +5 -0
  48. package/lib/pagination/pagination.d.ts +341 -2
  49. package/lib/popup/popup.d.ts +1 -0
  50. package/lib/progress/progress.d.ts +7 -1
  51. package/lib/progress-ring/progress-ring.d.ts +7 -1
  52. package/lib/radio/radio.d.ts +1137 -4
  53. package/lib/radio-group/radio-group.d.ts +21 -3
  54. package/lib/range-slider/range-slider.d.ts +765 -18
  55. package/lib/rich-text-editor/definition.d.ts +2 -2
  56. package/lib/rich-text-editor/facades/vivid-prose-mirror.facade.d.ts +3 -1
  57. package/lib/rich-text-editor/locale.d.ts +1 -0
  58. package/lib/rich-text-editor/menubar/menubar.d.ts +7 -1
  59. package/lib/rich-text-editor/rich-text-editor.d.ts +352 -2
  60. package/lib/searchable-select/option-tag.d.ts +7 -1
  61. package/lib/searchable-select/searchable-select.d.ts +1859 -38
  62. package/lib/select/select.d.ts +1844 -29
  63. package/lib/selectable-box/selectable-box.d.ts +7 -1
  64. package/lib/slider/slider.d.ts +386 -4
  65. package/lib/split-button/split-button.d.ts +21 -3
  66. package/lib/switch/switch.d.ts +387 -4
  67. package/lib/tab/tab.d.ts +21 -4
  68. package/lib/tab-panel/tab-panel.d.ts +7 -1
  69. package/lib/tag/tag.d.ts +14 -2
  70. package/lib/tag-group/tag-group.d.ts +7 -1
  71. package/lib/text-area/text-area.d.ts +2174 -19
  72. package/lib/text-field/text-field.d.ts +2197 -33
  73. package/lib/time-picker/time-picker.d.ts +839 -106
  74. package/lib/toggletip/toggletip.d.ts +10 -4
  75. package/lib/tooltip/tooltip.d.ts +10 -4
  76. package/lib/tree-item/tree-item.d.ts +14 -2
  77. package/lib/tree-view/tree-view.d.ts +7 -1
  78. package/lib/video-player/video-player.d.ts +7 -1
  79. package/lib/visually-hidden/definition.d.ts +4 -0
  80. package/lib/visually-hidden/visually-hidden.d.ts +3 -0
  81. package/lib/visually-hidden/visually-hidden.template.d.ts +3 -0
  82. package/locales/de-DE.cjs +54 -4
  83. package/locales/de-DE.js +54 -4
  84. package/locales/en-GB.cjs +54 -4
  85. package/locales/en-GB.js +54 -4
  86. package/locales/en-US.cjs +54 -4
  87. package/locales/en-US.js +54 -4
  88. package/locales/ja-JP.cjs +54 -4
  89. package/locales/ja-JP.js +54 -4
  90. package/locales/zh-CN.cjs +54 -4
  91. package/locales/zh-CN.js +54 -4
  92. package/menu/index.cjs +1 -1
  93. package/menu/index.js +1 -1
  94. package/nav/index.cjs +1 -1
  95. package/nav/index.js +1 -1
  96. package/nav-disclosure/index.cjs +1 -1
  97. package/nav-disclosure/index.js +1 -1
  98. package/nav-item/index.cjs +1 -1
  99. package/nav-item/index.js +1 -1
  100. package/note/index.cjs +1 -1
  101. package/note/index.js +1 -1
  102. package/number-field/index.cjs +1 -1
  103. package/number-field/index.js +1 -1
  104. package/option/index.cjs +1 -1
  105. package/option/index.js +1 -1
  106. package/package.json +1 -1
  107. package/pagination/index.cjs +1 -1
  108. package/pagination/index.js +1 -1
  109. package/popup/index.cjs +1 -1
  110. package/popup/index.js +1 -1
  111. package/progress/index.cjs +1 -1
  112. package/progress/index.js +1 -1
  113. package/progress-ring/index.cjs +1 -1
  114. package/progress-ring/index.js +1 -1
  115. package/radio/index.cjs +1 -1
  116. package/radio/index.js +1 -1
  117. package/radio-group/index.cjs +1 -1
  118. package/radio-group/index.js +1 -1
  119. package/range-slider/index.cjs +1 -1
  120. package/range-slider/index.js +1 -1
  121. package/rich-text-editor/index.cjs +1 -1
  122. package/rich-text-editor/index.js +1 -1
  123. package/searchable-select/index.cjs +1 -1
  124. package/searchable-select/index.js +1 -1
  125. package/select/index.cjs +1 -1
  126. package/select/index.js +1 -1
  127. package/selectable-box/index.cjs +1 -1
  128. package/selectable-box/index.js +1 -1
  129. package/shared/affix.cjs +13 -7
  130. package/shared/affix.js +13 -8
  131. package/shared/aria/delegates-aria.d.ts +7 -1
  132. package/shared/aria/host-semantics.d.ts +7 -1
  133. package/shared/breadcrumb-item.cjs +2 -5
  134. package/shared/breadcrumb-item.js +2 -5
  135. package/shared/button.cjs +13 -11
  136. package/shared/button.js +13 -11
  137. package/shared/calendar-picker.template.cjs +3 -3
  138. package/shared/calendar-picker.template.js +1 -1
  139. package/shared/char-count.cjs +92 -0
  140. package/shared/char-count.js +90 -0
  141. package/shared/definition.cjs +19 -3
  142. package/shared/definition.js +20 -4
  143. package/shared/definition10.js +1 -1
  144. package/shared/definition11.cjs +27 -44
  145. package/shared/definition11.js +28 -45
  146. package/shared/definition12.js +1 -1
  147. package/shared/definition13.cjs +25 -0
  148. package/shared/definition13.js +26 -1
  149. package/shared/definition14.cjs +53 -22
  150. package/shared/definition14.js +54 -23
  151. package/shared/definition15.cjs +32 -37
  152. package/shared/definition15.js +31 -37
  153. package/shared/definition16.cjs +44 -64
  154. package/shared/definition16.js +43 -64
  155. package/shared/definition17.cjs +608 -524
  156. package/shared/definition17.js +604 -520
  157. package/shared/definition18.cjs +10 -14
  158. package/shared/definition18.js +9 -14
  159. package/shared/definition19.cjs +85 -100
  160. package/shared/definition19.js +75 -91
  161. package/shared/definition2.js +1 -1
  162. package/shared/definition20.cjs +15 -20
  163. package/shared/definition20.js +14 -20
  164. package/shared/definition21.cjs +24 -5
  165. package/shared/definition21.js +25 -6
  166. package/shared/definition22.cjs +12 -6
  167. package/shared/definition22.js +13 -7
  168. package/shared/definition23.cjs +5 -38
  169. package/shared/definition23.js +5 -37
  170. package/shared/definition24.cjs +2 -7
  171. package/shared/definition24.js +3 -8
  172. package/shared/definition25.js +1 -1
  173. package/shared/definition26.cjs +157 -171
  174. package/shared/definition26.js +156 -171
  175. package/shared/definition27.cjs +1 -1
  176. package/shared/definition27.js +2 -2
  177. package/shared/definition28.cjs +33 -18
  178. package/shared/definition28.js +34 -19
  179. package/shared/definition29.js +1 -1
  180. package/shared/definition3.cjs +1 -1
  181. package/shared/definition3.js +2 -2
  182. package/shared/definition30.cjs +96 -482
  183. package/shared/definition30.js +99 -482
  184. package/shared/definition31.cjs +334 -57
  185. package/shared/definition31.js +333 -56
  186. package/shared/definition32.cjs +104 -19
  187. package/shared/definition32.js +105 -20
  188. package/shared/definition33.cjs +67 -15
  189. package/shared/definition33.js +66 -14
  190. package/shared/definition34.cjs +15 -50
  191. package/shared/definition34.js +14 -49
  192. package/shared/definition35.cjs +28 -397
  193. package/shared/definition35.js +27 -397
  194. package/shared/definition36.cjs +415 -54
  195. package/shared/definition36.js +415 -55
  196. package/shared/definition37.cjs +57 -234
  197. package/shared/definition37.js +57 -233
  198. package/shared/definition38.cjs +228 -66
  199. package/shared/definition38.js +227 -65
  200. package/shared/definition39.cjs +52 -44
  201. package/shared/definition39.js +51 -43
  202. package/shared/definition4.cjs +31 -24
  203. package/shared/definition4.js +33 -26
  204. package/shared/definition40.cjs +56 -266
  205. package/shared/definition40.js +55 -265
  206. package/shared/definition41.cjs +285 -142
  207. package/shared/definition41.js +285 -142
  208. package/shared/definition42.cjs +156 -564
  209. package/shared/definition42.js +156 -565
  210. package/shared/definition43.cjs +554 -14378
  211. package/shared/definition43.js +553 -14377
  212. package/shared/definition44.cjs +14418 -1155
  213. package/shared/definition44.js +14417 -1156
  214. package/shared/definition45.cjs +1049 -677
  215. package/shared/definition45.js +1050 -678
  216. package/shared/definition46.cjs +848 -113
  217. package/shared/definition46.js +847 -112
  218. package/shared/definition47.cjs +125 -90
  219. package/shared/definition47.js +124 -89
  220. package/shared/definition48.cjs +88 -455
  221. package/shared/definition48.js +87 -454
  222. package/shared/definition49.cjs +466 -109
  223. package/shared/definition49.js +466 -109
  224. package/shared/definition5.cjs +8 -7
  225. package/shared/definition5.js +6 -5
  226. package/shared/definition50.cjs +106 -106
  227. package/shared/definition50.js +105 -105
  228. package/shared/definition51.cjs +136 -15
  229. package/shared/definition51.js +135 -14
  230. package/shared/definition52.cjs +16 -115
  231. package/shared/definition52.js +15 -114
  232. package/shared/definition53.cjs +78 -412
  233. package/shared/definition53.js +77 -410
  234. package/shared/definition54.cjs +445 -23
  235. package/shared/definition54.js +443 -22
  236. package/shared/definition55.cjs +22 -136
  237. package/shared/definition55.js +21 -135
  238. package/shared/definition56.cjs +95 -291
  239. package/shared/definition56.js +95 -292
  240. package/shared/definition57.cjs +192 -480
  241. package/shared/definition57.js +190 -479
  242. package/shared/definition58.cjs +411 -24
  243. package/shared/definition58.js +410 -24
  244. package/shared/definition59.cjs +27 -144
  245. package/shared/definition59.js +27 -143
  246. package/shared/definition6.js +1 -1
  247. package/shared/definition60.cjs +83 -54
  248. package/shared/definition60.js +82 -53
  249. package/shared/definition61.cjs +78 -166
  250. package/shared/definition61.js +77 -164
  251. package/shared/definition62.cjs +143 -232
  252. package/shared/definition62.js +141 -231
  253. package/shared/definition63.cjs +234 -69417
  254. package/shared/definition63.js +233 -69416
  255. package/shared/definition64.cjs +69454 -28
  256. package/shared/definition64.js +69453 -27
  257. package/shared/definition65.cjs +28 -2168
  258. package/shared/definition65.js +27 -2166
  259. package/shared/definition66.cjs +27 -0
  260. package/shared/definition66.js +23 -0
  261. package/shared/definition67.cjs +2203 -0
  262. package/shared/definition67.js +2198 -0
  263. package/shared/definition7.cjs +11 -2
  264. package/shared/definition7.js +12 -3
  265. package/shared/definition8.cjs +24 -11
  266. package/shared/definition8.js +26 -13
  267. package/shared/definition9.cjs +1 -2
  268. package/shared/definition9.js +2 -3
  269. package/shared/delegates-aria.js +1 -1
  270. package/shared/deprecation/replaced-props.d.ts +20 -0
  271. package/shared/divider.cjs +41 -0
  272. package/shared/divider.js +38 -0
  273. package/shared/feedback/feedback-message.d.ts +345 -0
  274. package/shared/feedback/locale.d.ts +4 -0
  275. package/{lib/text-anchor/text-anchor.d.ts → shared/feedback/mixins.d.ts} +64 -41
  276. package/shared/form-associated.cjs +124 -100
  277. package/shared/form-associated.js +125 -101
  278. package/shared/form-element.cjs +84 -0
  279. package/shared/form-element.js +82 -0
  280. package/shared/foundation/button/button.d.ts +379 -3
  281. package/shared/foundation/form-associated/form-associated.d.ts +753 -49
  282. package/shared/foundation/listbox/listbox.d.ts +1 -1
  283. package/shared/foundation/vivid-element/vivid-element.d.ts +16 -0
  284. package/shared/host-semantics.js +1 -1
  285. package/shared/key-codes.js +1 -1
  286. package/shared/linkable.cjs +70 -0
  287. package/shared/linkable.js +68 -0
  288. package/shared/localization/Locale.d.ts +16 -0
  289. package/shared/mixins.cjs +309 -0
  290. package/shared/mixins.js +303 -0
  291. package/shared/patterns/affix.d.ts +18 -3
  292. package/shared/patterns/anchored.d.ts +20 -8
  293. package/shared/patterns/char-count/char-count.d.ts +351 -0
  294. package/shared/patterns/char-count/index.d.ts +1 -0
  295. package/shared/patterns/char-count/locale.d.ts +4 -0
  296. package/shared/patterns/form-elements/form-element.d.ts +744 -0
  297. package/shared/patterns/form-elements/index.d.ts +3 -1
  298. package/shared/patterns/form-elements/with-error-text.d.ts +1122 -0
  299. package/shared/patterns/form-elements/with-success-text.d.ts +341 -0
  300. package/shared/patterns/index.d.ts +2 -0
  301. package/shared/patterns/linkable.d.ts +394 -0
  302. package/shared/patterns/localized.d.ts +7 -1
  303. package/shared/patterns/trapped-focus.d.ts +7 -1
  304. package/shared/picker-field/mixins/calendar-picker.d.ts +420 -52
  305. package/shared/picker-field/mixins/calendar-picker.template.d.ts +420 -52
  306. package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +7 -1
  307. package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +843 -107
  308. package/shared/picker-field/mixins/single-date-picker.d.ts +1259 -155
  309. package/shared/picker-field/mixins/single-value-picker.d.ts +417 -49
  310. package/shared/picker-field/mixins/time-selection-picker.d.ts +842 -106
  311. package/shared/picker-field/mixins/time-selection-picker.template.d.ts +839 -103
  312. package/shared/picker-field/picker-field.d.ts +1492 -16
  313. package/shared/picker-field.template.cjs +26 -35
  314. package/shared/picker-field.template.js +27 -36
  315. package/shared/repeat.js +1 -1
  316. package/shared/slider.template.cjs +1 -1
  317. package/shared/slider.template.js +1 -1
  318. package/shared/time-selection-picker.template.cjs +10 -15
  319. package/shared/time-selection-picker.template.js +10 -16
  320. package/shared/vivid-element.cjs +63 -4
  321. package/shared/vivid-element.js +63 -3
  322. package/shared/with-error-text.cjs +56 -0
  323. package/shared/with-error-text.js +54 -0
  324. package/shared/with-success-text.cjs +23 -0
  325. package/shared/with-success-text.js +21 -0
  326. package/side-drawer/index.cjs +1 -1
  327. package/side-drawer/index.js +1 -1
  328. package/slider/index.cjs +1 -1
  329. package/slider/index.js +1 -1
  330. package/split-button/index.cjs +1 -1
  331. package/split-button/index.js +1 -1
  332. package/styles/core/all.css +1 -1
  333. package/styles/core/theme.css +1 -1
  334. package/styles/core/typography.css +1 -1
  335. package/styles/tokens/theme-dark.css +4 -4
  336. package/styles/tokens/theme-light.css +4 -4
  337. package/styles/tokens/vivid-2-compat.css +1 -1
  338. package/switch/index.cjs +1 -1
  339. package/switch/index.js +1 -1
  340. package/tab/index.cjs +1 -1
  341. package/tab/index.js +1 -1
  342. package/tab-panel/index.cjs +1 -1
  343. package/tab-panel/index.js +1 -1
  344. package/tabs/index.cjs +1 -1
  345. package/tabs/index.js +1 -1
  346. package/tag/index.cjs +1 -1
  347. package/tag/index.js +1 -1
  348. package/tag-group/index.cjs +1 -1
  349. package/tag-group/index.js +1 -1
  350. package/text-area/index.cjs +1 -1
  351. package/text-area/index.js +1 -1
  352. package/text-field/index.cjs +1 -1
  353. package/text-field/index.js +1 -1
  354. package/time-picker/index.cjs +1 -1
  355. package/time-picker/index.js +1 -1
  356. package/toggletip/index.cjs +1 -1
  357. package/toggletip/index.js +1 -1
  358. package/tooltip/index.cjs +1 -1
  359. package/tooltip/index.js +1 -1
  360. package/tree-item/index.cjs +1 -1
  361. package/tree-item/index.js +1 -1
  362. package/tree-view/index.cjs +1 -1
  363. package/tree-view/index.js +1 -1
  364. package/video-player/index.cjs +1 -1
  365. package/video-player/index.js +1 -1
  366. package/visually-hidden/index.cjs +5 -0
  367. package/visually-hidden/index.js +3 -0
  368. package/vivid.api.json +845 -1503
  369. package/lib/checkbox/checkbox.form-associated.d.ts +0 -11
  370. package/lib/file-picker/file-picker.form-associated.d.ts +0 -11
  371. package/lib/number-field/number-field.form-associated.d.ts +0 -11
  372. package/lib/radio/radio.form-associated.d.ts +0 -13
  373. package/lib/range-slider/range-slider.form-associated.d.ts +0 -11
  374. package/lib/searchable-select/searchable-select.form-associated.d.ts +0 -11
  375. package/lib/select/select.form-associated.d.ts +0 -11
  376. package/lib/slider/slider.form-associated.d.ts +0 -11
  377. package/lib/switch/switch.form-associated.d.ts +0 -11
  378. package/lib/text-anchor/definition.d.ts +0 -2
  379. package/lib/text-anchor/text-anchor.template.d.ts +0 -3
  380. package/lib/text-area/text-area.form-associated.d.ts +0 -11
  381. package/lib/text-field/text-field.form-associated.d.ts +0 -11
  382. package/shared/anchor.cjs +0 -49
  383. package/shared/anchor.js +0 -47
  384. package/shared/apply-mixins.cjs +0 -23
  385. package/shared/apply-mixins.js +0 -21
  386. package/shared/applyMixinsWithObservables.cjs +0 -15
  387. package/shared/applyMixinsWithObservables.js +0 -13
  388. package/shared/direction.cjs +0 -17
  389. package/shared/direction.js +0 -15
  390. package/shared/form-elements.cjs +0 -209
  391. package/shared/form-elements.js +0 -202
  392. package/shared/foundation/anchor/anchor.d.ts +0 -11
  393. package/shared/foundation/utilities/apply-mixins.d.ts +0 -1
  394. package/shared/patterns/form-elements/form-elements.d.ts +0 -58
  395. package/shared/picker-field/picker-field.form-associated.d.ts +0 -11
  396. package/shared/text-anchor.cjs +0 -38
  397. package/shared/text-anchor.js +0 -36
  398. package/shared/text-anchor.template.cjs +0 -35
  399. package/shared/text-anchor.template.js +0 -33
  400. package/shared/utils/applyMixinsWithObservables.d.ts +0 -1
  401. package/text-anchor/index.cjs +0 -17
  402. package/text-anchor/index.js +0 -15
@@ -1,37 +1,424 @@
1
1
  'use strict';
2
2
 
3
- const definition = require('./definition57.cjs');
4
- const definition$1 = require('./definition65.cjs');
5
- const definition$2 = require('./definition11.cjs');
3
+ const definition = require('./definition28.cjs');
6
4
  const vividElement = require('./vivid-element.cjs');
7
- const pickerField_template = require('./picker-field.template.cjs');
8
- const timeSelectionPicker_template = require('./time-selection-picker.template.cjs');
5
+ const mixins = require('./mixins.cjs');
6
+ const definition$1 = require('./definition66.cjs');
7
+ const delegatesAria = require('./delegates-aria.cjs');
8
+ const formAssociated = require('./form-associated.cjs');
9
+ const charCount = require('./char-count.cjs');
10
+ const withErrorText = require('./with-error-text.cjs');
11
+ const withSuccessText = require('./with-success-text.cjs');
12
+ const formElement = require('./form-element.cjs');
13
+ const affix = require('./affix.cjs');
14
+ const textField = require('./text-field.cjs');
15
+ const classNames = require('./class-names.cjs');
16
+ const when = require('./when.cjs');
17
+ const slotted = require('./slotted.cjs');
18
+ const ref = require('./ref.cjs');
9
19
 
10
- const TimePickerTemplate = (context) => {
11
- return pickerField_template.PickerFieldTemplate(context, timeSelectionPicker_template.TimeSelectionPickerTemplate(context, 6), {
12
- withSeparator: true,
13
- padded: false
14
- });
20
+ var __defProp = Object.defineProperty;
21
+ var __decorateClass = (decorators, target, key, kind) => {
22
+ var result = void 0 ;
23
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
24
+ if (decorator = decorators[i])
25
+ result = (decorator(target, key, result) ) || result;
26
+ if (result) __defProp(target, key, result);
27
+ return result;
28
+ };
29
+ const TextFieldType = {
30
+ /**
31
+ * A text TextField
32
+ */
33
+ text: "text"};
34
+ const safariWorkaroundClassName = "_vvd-3-text-field-safari-workaround";
35
+ const getSafariWorkaroundStyleSheet = definition.memoizeWith(
36
+ () => "",
37
+ () => {
38
+ const styleSheet = new CSSStyleSheet();
39
+ const supportsReplaceSync = "replaceSync" in styleSheet;
40
+ if (supportsReplaceSync) {
41
+ styleSheet.replaceSync(`
42
+ .${safariWorkaroundClassName}::placeholder {
43
+ opacity: 1 !important;
44
+ -webkit-text-fill-color: var(--_low-ink-color) !important;
45
+ }`);
46
+ }
47
+ return styleSheet;
48
+ }
49
+ );
50
+ const installSafariWorkaroundStyleIfNeeded = (forElement) => {
51
+ if (forElement._isSafariWorkaroundInstalled) {
52
+ return;
53
+ }
54
+ forElement._isSafariWorkaroundInstalled = true;
55
+ const root = forElement.getRootNode();
56
+ const workaroundStyleSheet = getSafariWorkaroundStyleSheet();
57
+ const supportsAdoptedStyleSheets = "adoptedStyleSheets" in root;
58
+ if (!supportsAdoptedStyleSheets) {
59
+ return;
60
+ }
61
+ if (!root.adoptedStyleSheets.includes(workaroundStyleSheet)) {
62
+ root.adoptedStyleSheets = [
63
+ ...root.adoptedStyleSheets,
64
+ workaroundStyleSheet
65
+ ];
66
+ }
67
+ };
68
+ class TextField extends mixins.WithLightDOMFeedback(
69
+ charCount.WithCharCount(
70
+ withErrorText.WithErrorText(
71
+ withSuccessText.WithSuccessText(
72
+ formElement.FormElement(affix.AffixIcon(delegatesAria.DelegatesAria(formAssociated.FormAssociated(vividElement.VividElement))))
73
+ )
74
+ )
75
+ )
76
+ ) {
77
+ constructor() {
78
+ super(...arguments);
79
+ /**
80
+ * @internal
81
+ */
82
+ this.proxy = document.createElement("input");
83
+ // eslint-disable-next-line @nrwl/nx/workspace/no-attribute-default-value
84
+ this.type = TextFieldType.text;
85
+ this.#randomId = mixins.generateRandomId();
86
+ }
87
+ /**
88
+ * @internal
89
+ */
90
+ readOnlyChanged() {
91
+ if (this.proxy instanceof HTMLInputElement) {
92
+ this.proxy.readOnly = this.readOnly;
93
+ this.validate();
94
+ }
95
+ }
96
+ /**
97
+ * @internal
98
+ */
99
+ autofocusChanged() {
100
+ if (this.proxy instanceof HTMLInputElement) {
101
+ this.proxy.autofocus = this.autofocus;
102
+ this.validate();
103
+ }
104
+ }
105
+ /**
106
+ * @internal
107
+ */
108
+ placeholderChanged() {
109
+ if (this.proxy instanceof HTMLInputElement) {
110
+ this.proxy.placeholder = this.placeholder;
111
+ }
112
+ }
113
+ /**
114
+ * @internal
115
+ */
116
+ typeChanged() {
117
+ if (this.proxy instanceof HTMLInputElement) {
118
+ this.proxy.type = this.type;
119
+ this.validate();
120
+ }
121
+ }
122
+ /**
123
+ * @internal
124
+ */
125
+ listChanged() {
126
+ if (this.proxy instanceof HTMLInputElement) {
127
+ this.proxy.setAttribute("list", this.list);
128
+ this.validate();
129
+ }
130
+ }
131
+ /**
132
+ * @internal
133
+ */
134
+ maxlengthChanged() {
135
+ if (this.proxy instanceof HTMLInputElement) {
136
+ this.proxy.maxLength = this.maxlength;
137
+ this.validate();
138
+ }
139
+ }
140
+ /**
141
+ * @internal
142
+ */
143
+ minlengthChanged() {
144
+ if (this.proxy instanceof HTMLInputElement) {
145
+ this.proxy.minLength = this.minlength;
146
+ this.validate();
147
+ }
148
+ }
149
+ /**
150
+ * @internal
151
+ */
152
+ patternChanged() {
153
+ if (this.proxy instanceof HTMLInputElement) {
154
+ this.proxy.pattern = this.pattern;
155
+ this.validate();
156
+ }
157
+ }
158
+ /**
159
+ * @internal
160
+ */
161
+ sizeChanged() {
162
+ if (this.proxy instanceof HTMLInputElement) {
163
+ this.proxy.size = this.size;
164
+ }
165
+ }
166
+ /**
167
+ * @internal
168
+ */
169
+ spellcheckChanged() {
170
+ if (this.proxy instanceof HTMLInputElement) {
171
+ this.proxy.spellcheck = this.spellcheck;
172
+ }
173
+ }
174
+ /**
175
+ * @internal
176
+ */
177
+ valueChanged(previous, next) {
178
+ super.valueChanged(previous, next);
179
+ this._updateControlValueIfNeeded();
180
+ if (this.charCount && this.maxlength) {
181
+ this._updateCharCountRemaining();
182
+ }
183
+ }
184
+ /**
185
+ * Update the controls value only if it is actually different from the actual value.
186
+ * This is important as to not reset the browser's "dirtiness" flag on the input, which is used for min/maxlength
187
+ * constraints.
188
+ * @internal
189
+ */
190
+ _updateControlValueIfNeeded() {
191
+ if (this.control && this.control.value !== this.value) {
192
+ this.control.value = this.value;
193
+ }
194
+ }
195
+ /**
196
+ * Selects all the text in the text field
197
+ *
198
+ * @public
199
+ */
200
+ select() {
201
+ this.control.select();
202
+ }
203
+ /**
204
+ * Handles the internal control's `input` event
205
+ * @internal
206
+ */
207
+ handleTextInput() {
208
+ this.value = this.control.value;
209
+ }
210
+ /**
211
+ * Change event handler for inner control.
212
+ * @remarks
213
+ * "Change" events are not `composable` so they will not
214
+ * permeate the shadow DOM boundary. This fn effectively proxies
215
+ * the change event, emitting a `change` event whenever the internal
216
+ * control emits a `change` event
217
+ * @internal
218
+ */
219
+ handleChange() {
220
+ this.$emit("change");
221
+ }
222
+ /** {@inheritDoc (FormAssociated:interface).validate} */
223
+ validate() {
224
+ super.validate(this.control);
225
+ }
226
+ connectedCallback() {
227
+ super.connectedCallback();
228
+ this.proxy.setAttribute("type", this.type);
229
+ this.validate();
230
+ if (this.autofocus) {
231
+ vividElement.DOM.queueUpdate(() => {
232
+ this.focus();
233
+ });
234
+ }
235
+ this._updateControlValueIfNeeded();
236
+ installSafariWorkaroundStyleIfNeeded(this);
237
+ this._renderCharCountRemaining();
238
+ }
239
+ focus() {
240
+ this.control?.focus();
241
+ }
242
+ #randomId;
243
+ /**
244
+ * @internal
245
+ */
246
+ get _uniqueId() {
247
+ return this.id || this.#randomId;
248
+ }
249
+ }
250
+ __decorateClass([
251
+ vividElement.attr({ attribute: "readonly", mode: "boolean" })
252
+ ], TextField.prototype, "readOnly");
253
+ __decorateClass([
254
+ vividElement.attr({ mode: "boolean" })
255
+ ], TextField.prototype, "autofocus");
256
+ __decorateClass([
257
+ vividElement.attr
258
+ ], TextField.prototype, "placeholder");
259
+ __decorateClass([
260
+ vividElement.attr
261
+ ], TextField.prototype, "type");
262
+ __decorateClass([
263
+ vividElement.attr
264
+ ], TextField.prototype, "list");
265
+ __decorateClass([
266
+ vividElement.attr({ converter: vividElement.nullableNumberConverter })
267
+ ], TextField.prototype, "maxlength");
268
+ __decorateClass([
269
+ vividElement.attr({ converter: vividElement.nullableNumberConverter })
270
+ ], TextField.prototype, "minlength");
271
+ __decorateClass([
272
+ vividElement.attr
273
+ ], TextField.prototype, "pattern");
274
+ __decorateClass([
275
+ vividElement.attr({ converter: vividElement.nullableNumberConverter })
276
+ ], TextField.prototype, "size");
277
+ __decorateClass([
278
+ vividElement.attr({ mode: "boolean" })
279
+ ], TextField.prototype, "spellcheck");
280
+ __decorateClass([
281
+ vividElement.attr
282
+ ], TextField.prototype, "appearance");
283
+ __decorateClass([
284
+ vividElement.attr
285
+ ], TextField.prototype, "shape");
286
+ __decorateClass([
287
+ vividElement.attr
288
+ ], TextField.prototype, "autoComplete");
289
+ __decorateClass([
290
+ vividElement.attr()
291
+ ], TextField.prototype, "scale");
292
+ __decorateClass([
293
+ vividElement.attr({ attribute: "inputmode" })
294
+ ], TextField.prototype, "inputMode");
295
+ __decorateClass([
296
+ vividElement.observable
297
+ ], TextField.prototype, "actionItemsSlottedContent");
298
+ __decorateClass([
299
+ vividElement.observable
300
+ ], TextField.prototype, "leadingActionItemsSlottedContent");
301
+
302
+ const getControlId = (id) => `vvd-text-field-control-${id}`;
303
+ const getStateClasses = ({
304
+ errorValidationMessage,
305
+ disabled,
306
+ value,
307
+ readOnly,
308
+ placeholder,
309
+ appearance,
310
+ shape,
311
+ label,
312
+ successText,
313
+ actionItemsSlottedContent,
314
+ leadingActionItemsSlottedContent,
315
+ icon,
316
+ scale
317
+ }) => classNames.classNames(
318
+ ["error", Boolean(errorValidationMessage)],
319
+ ["disabled", disabled],
320
+ ["has-value", Boolean(value)],
321
+ ["readonly", readOnly],
322
+ ["placeholder", Boolean(placeholder)],
323
+ [`appearance-${appearance}`, Boolean(appearance)],
324
+ [`shape-${shape}`, Boolean(shape)],
325
+ ["no-label", !label],
326
+ ["has-icon", !!icon],
327
+ ["success", Boolean(successText)],
328
+ ["action-items", !!actionItemsSlottedContent?.length],
329
+ ["leading-action-items", !!leadingActionItemsSlottedContent?.length],
330
+ ["no-leading", !(leadingActionItemsSlottedContent?.length || icon)],
331
+ [`size-${scale}`, Boolean(scale)]
332
+ );
333
+ const TextfieldTemplate = (context) => {
334
+ const affixIconTemplate = affix.affixIconTemplateFactory(context);
335
+ return vividElement.html`
336
+ <div class="base ${getStateClasses}">
337
+ ${when.when(
338
+ (x) => x.charCount && x.maxlength,
339
+ (x) => x._getCharCountTemplate(context)
340
+ )}
341
+ <slot class="label" name="_label"></slot>
342
+ ${mixins.renderInLightDOM(vividElement.html`
343
+ ${when.when(
344
+ (x) => x.label,
345
+ vividElement.html`
346
+ <label slot="_label" for="${(x) => getControlId(x._uniqueId)}">
347
+ ${(x) => x.label}
348
+ </label>
349
+ `
350
+ )}
351
+ `)}
352
+ <div class="fieldset">
353
+ <div class="leading-items-wrapper">
354
+ <slot
355
+ name="leading-action-items"
356
+ ${slotted.slotted("leadingActionItemsSlottedContent")}
357
+ ></slot>
358
+ ${(x) => affixIconTemplate(x.icon)}
359
+ </div>
360
+ <div class="wrapper">
361
+ <slot class="control" name="_control"></slot>
362
+ ${mixins.renderInLightDOM(
363
+ vividElement.html`<input
364
+ slot="_control"
365
+ id="${(x) => getControlId(x._uniqueId)}"
366
+ class="_vvd-3-text-field-safari-workaround"
367
+ @input="${(x) => x.handleTextInput()}"
368
+ @change="${(x) => x.handleChange()}"
369
+ @blur="${(x) => {
370
+ x.$emit("blur", void 0, { bubbles: false });
371
+ }}"
372
+ @focus="${(x) => {
373
+ x.$emit("focus", void 0, { bubbles: false });
374
+ }}"
375
+ ?autofocus="${(x) => x.autofocus}"
376
+ ?disabled="${(x) => x.disabled}"
377
+ ?readonly="${(x) => x.readOnly}"
378
+ ?required="${(x) => x.required}"
379
+ ?spellcheck="${(x) => x.spellcheck}"
380
+ list="${(x) => x.list}"
381
+ maxlength="${(x) => x.maxlength}"
382
+ minlength="${(x) => x.minlength}"
383
+ pattern="${(x) => x.pattern}"
384
+ placeholder="${(x) => x.placeholder}"
385
+ size="${(x) => x.size}"
386
+ autocomplete="${(x) => x.autoComplete}"
387
+ type="${(x) => x.type}"
388
+ inputmode="${(x) => x.inputMode}"
389
+ aria-describedby="${(x) => x._feedbackDescribedBy} ${(x) => x.charCount && x.maxlength ? x._charCountDescribedBy : null}"
390
+ value="${(x) => x.initialValue}"
391
+ ${delegatesAria.delegateAria()}
392
+ ${ref.ref("control")}
393
+ />`
394
+ )}
395
+ </div>
396
+ <div class="action-items-wrapper">
397
+ <slot
398
+ name="action-items"
399
+ ${slotted.slotted("actionItemsSlottedContent")}
400
+ ></slot>
401
+ </div>
402
+ </div>
403
+ ${(x) => x._getFeedbackTemplate(context)}
404
+ </div>
405
+ `;
15
406
  };
16
407
 
17
- const timePickerDefinition = vividElement.defineVividComponent(
18
- "time-picker",
19
- timeSelectionPicker_template.TimePicker,
20
- TimePickerTemplate,
21
- [
22
- definition.textFieldDefinition,
23
- definition$1.popupDefinition,
24
- definition$2.buttonDefinition,
25
- timeSelectionPicker_template.inlineTimePickerDefinition
26
- ],
408
+ const textFieldDefinition = vividElement.defineVividComponent(
409
+ "text-field",
410
+ TextField,
411
+ TextfieldTemplate,
412
+ [definition.iconDefinition, mixins.feedbackMessageDefinition, definition$1.visuallyHiddenDefinition],
27
413
  {
28
- styles: pickerField_template.pickerFieldStyles,
414
+ styles: textField.styles,
29
415
  shadowOptions: {
30
416
  delegatesFocus: true
31
417
  }
32
418
  }
33
419
  );
34
- const registerTimePicker = vividElement.createRegisterFunction(timePickerDefinition);
420
+ const registerTextField = vividElement.createRegisterFunction(textFieldDefinition);
35
421
 
36
- exports.registerTimePicker = registerTimePicker;
37
- exports.timePickerDefinition = timePickerDefinition;
422
+ exports.TextField = TextField;
423
+ exports.registerTextField = registerTextField;
424
+ exports.textFieldDefinition = textFieldDefinition;