@wix/patterns-fields 1.73.0 → 1.75.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 (392) hide show
  1. package/dist/cjs/components/address/form-address.js +5 -3
  2. package/dist/cjs/components/address/form-address.js.map +1 -1
  3. package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
  4. package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
  5. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
  6. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  7. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
  8. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  9. package/dist/cjs/components/audio/audio-field/form-audio.js +5 -3
  10. package/dist/cjs/components/audio/audio-field/form-audio.js.map +1 -1
  11. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
  12. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  13. package/dist/cjs/components/boolean/form-checkbox-input.js +40 -0
  14. package/dist/cjs/components/boolean/form-checkbox-input.js.map +1 -0
  15. package/dist/cjs/components/boolean/form-checkbox.js +6 -5
  16. package/dist/cjs/components/boolean/form-checkbox.js.map +1 -1
  17. package/dist/cjs/components/boolean/index.js +6 -0
  18. package/dist/cjs/components/boolean/index.js.map +1 -1
  19. package/dist/cjs/components/color-view/cell-color-view.st.css.js +3 -3
  20. package/dist/cjs/components/color-view/cell-color-view.st.css.js.map +1 -1
  21. package/dist/cjs/components/color-view/color-input.js +6 -5
  22. package/dist/cjs/components/color-view/color-input.js.map +1 -1
  23. package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
  24. package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
  25. package/dist/cjs/components/color-view/form-color.driver.js +8 -2
  26. package/dist/cjs/components/color-view/form-color.driver.js.map +1 -1
  27. package/dist/cjs/components/controlled-input.driver.js +16 -0
  28. package/dist/cjs/components/controlled-input.driver.js.map +1 -0
  29. package/dist/cjs/components/datetime-input/form-date-time.driver.js +4 -1
  30. package/dist/cjs/components/datetime-input/form-date-time.driver.js.map +1 -1
  31. package/dist/cjs/components/datetime-input/form-date-time.js +1 -0
  32. package/dist/cjs/components/datetime-input/form-date-time.js.map +1 -1
  33. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
  34. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  35. package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
  36. package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
  37. package/dist/cjs/components/document/form-document.js +5 -3
  38. package/dist/cjs/components/document/form-document.js.map +1 -1
  39. package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
  40. package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
  41. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
  42. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  43. package/dist/cjs/components/image/form-image-input.js +6 -4
  44. package/dist/cjs/components/image/form-image-input.js.map +1 -1
  45. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
  46. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  47. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  48. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  49. package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
  50. package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
  51. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
  52. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  53. package/dist/cjs/components/media-gallery/form-media-gallery.js +5 -3
  54. package/dist/cjs/components/media-gallery/form-media-gallery.js.map +1 -1
  55. package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
  56. package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
  57. package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
  58. package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
  59. package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
  60. package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
  61. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  62. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  63. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js +3 -3
  64. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
  65. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.js +5 -3
  66. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.js.map +1 -1
  67. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
  68. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  69. package/dist/cjs/components/number-input/form-number-input.js +38 -0
  70. package/dist/cjs/components/number-input/form-number-input.js.map +1 -0
  71. package/dist/cjs/components/number-input/form-number.js +7 -5
  72. package/dist/cjs/components/number-input/form-number.js.map +1 -1
  73. package/dist/cjs/components/number-input/index.js +6 -0
  74. package/dist/cjs/components/number-input/index.js.map +1 -1
  75. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js +2 -2
  76. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js.map +1 -1
  77. package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
  78. package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
  79. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
  80. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  81. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css +15 -7
  82. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +11 -7
  83. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  84. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  85. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js.map +1 -1
  86. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
  87. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  88. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
  89. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  90. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  91. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  92. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
  93. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  94. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +5 -5
  95. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  96. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
  97. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  98. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
  99. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  100. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css +32 -19
  101. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +20 -12
  102. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  103. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
  104. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  105. package/dist/cjs/components/text/form-short-text-input.js +97 -0
  106. package/dist/cjs/components/text/form-short-text-input.js.map +1 -0
  107. package/dist/cjs/components/text/form-short-text.driver.js +1 -0
  108. package/dist/cjs/components/text/form-short-text.driver.js.map +1 -1
  109. package/dist/cjs/components/text/form-short-text.js +18 -80
  110. package/dist/cjs/components/text/form-short-text.js.map +1 -1
  111. package/dist/cjs/components/text/index.js +6 -0
  112. package/dist/cjs/components/text/index.js.map +1 -1
  113. package/dist/cjs/components/text/text-view.st.css.js +3 -3
  114. package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
  115. package/dist/cjs/components/time-input/form-time.js +9 -10
  116. package/dist/cjs/components/time-input/form-time.js.map +1 -1
  117. package/dist/cjs/components/url/form-url-input.js +55 -0
  118. package/dist/cjs/components/url/form-url-input.js.map +1 -0
  119. package/dist/cjs/components/url/form-url.js +6 -20
  120. package/dist/cjs/components/url/form-url.js.map +1 -1
  121. package/dist/cjs/components/url/index.js +6 -0
  122. package/dist/cjs/components/url/index.js.map +1 -1
  123. package/dist/cjs/components/video/form-video.js +30 -29
  124. package/dist/cjs/components/video/form-video.js.map +1 -1
  125. package/dist/cjs/exports/unidriver.js +3 -1
  126. package/dist/cjs/exports/unidriver.js.map +1 -1
  127. package/dist/cjs/hooks/index.js +6 -0
  128. package/dist/cjs/hooks/index.js.map +1 -1
  129. package/dist/cjs/hooks/pr-5746-kobiburnley-comments.md +54 -0
  130. package/dist/cjs/hooks/use-field-ref.js +60 -0
  131. package/dist/cjs/hooks/use-field-ref.js.map +1 -0
  132. package/dist/cjs/hooks/use-scroll-to-error-ref.js +15 -15
  133. package/dist/cjs/hooks/use-scroll-to-error-ref.js.map +1 -1
  134. package/dist/cjs/styles.global.css +1 -1
  135. package/dist/cjs/types/controlled-input.js +4 -0
  136. package/dist/cjs/types/controlled-input.js.map +1 -0
  137. package/dist/esm/components/address/form-address.js +3 -1
  138. package/dist/esm/components/address/form-address.js.map +1 -1
  139. package/dist/esm/components/address/input/address-input.st.css.js +2 -2
  140. package/dist/esm/components/address/input/address-input.st.css.js.map +1 -1
  141. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
  142. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  143. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
  144. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  145. package/dist/esm/components/audio/audio-field/form-audio.js +3 -1
  146. package/dist/esm/components/audio/audio-field/form-audio.js.map +1 -1
  147. package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
  148. package/dist/esm/components/boolean/form-checkbox-input.js +10 -0
  149. package/dist/esm/components/boolean/form-checkbox-input.js.map +1 -0
  150. package/dist/esm/components/boolean/form-checkbox.js +2 -2
  151. package/dist/esm/components/boolean/form-checkbox.js.map +1 -1
  152. package/dist/esm/components/boolean/index.js +1 -0
  153. package/dist/esm/components/boolean/index.js.map +1 -1
  154. package/dist/esm/components/color-view/cell-color-view.st.css.js +2 -2
  155. package/dist/esm/components/color-view/color-input.js +1 -1
  156. package/dist/esm/components/color-view/color-input.js.map +1 -1
  157. package/dist/esm/components/color-view/color-view.st.css.js +2 -2
  158. package/dist/esm/components/color-view/form-color.driver.js +8 -2
  159. package/dist/esm/components/color-view/form-color.driver.js.map +1 -1
  160. package/dist/esm/components/controlled-input.driver.js +12 -0
  161. package/dist/esm/components/controlled-input.driver.js.map +1 -0
  162. package/dist/esm/components/datetime-input/form-date-time.driver.js +3 -0
  163. package/dist/esm/components/datetime-input/form-date-time.driver.js.map +1 -1
  164. package/dist/esm/components/datetime-input/form-date-time.js +1 -1
  165. package/dist/esm/components/datetime-input/form-date-time.js.map +1 -1
  166. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
  167. package/dist/esm/components/document/form-document-field.st.css.js +2 -2
  168. package/dist/esm/components/document/form-document.js +3 -1
  169. package/dist/esm/components/document/form-document.js.map +1 -1
  170. package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
  171. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
  172. package/dist/esm/components/image/form-image-input.js +3 -1
  173. package/dist/esm/components/image/form-image-input.js.map +1 -1
  174. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
  175. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  176. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  177. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  178. package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
  179. package/dist/esm/components/media-control/paste-url-button.st.css.js.map +1 -1
  180. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
  181. package/dist/esm/components/media-gallery/form-media-gallery.js +3 -1
  182. package/dist/esm/components/media-gallery/form-media-gallery.js.map +1 -1
  183. package/dist/esm/components/media-image/media-image.st.css.js +3 -3
  184. package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
  185. package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
  186. package/dist/esm/components/media-loader/media-loader.st.css.js.map +1 -1
  187. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  188. package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js +2 -2
  189. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.js +3 -1
  190. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.js.map +1 -1
  191. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
  192. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  193. package/dist/esm/components/number-input/form-number-input.js +5 -0
  194. package/dist/esm/components/number-input/form-number-input.js.map +1 -0
  195. package/dist/esm/components/number-input/form-number.js +3 -2
  196. package/dist/esm/components/number-input/form-number.js.map +1 -1
  197. package/dist/esm/components/number-input/index.js +1 -0
  198. package/dist/esm/components/number-input/index.js.map +1 -1
  199. package/dist/esm/components/reference/cell-multi-reference-input.st.css.js +2 -2
  200. package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
  201. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
  202. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css +15 -7
  203. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
  204. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  205. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  206. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js.map +1 -1
  207. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
  208. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  209. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
  210. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  211. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
  212. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
  213. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  214. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
  215. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
  216. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css +32 -19
  217. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +3 -3
  218. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  219. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
  220. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  221. package/dist/esm/components/text/form-short-text-input.js +41 -0
  222. package/dist/esm/components/text/form-short-text-input.js.map +1 -0
  223. package/dist/esm/components/text/form-short-text.driver.js +3 -0
  224. package/dist/esm/components/text/form-short-text.driver.js.map +1 -1
  225. package/dist/esm/components/text/form-short-text.js +8 -40
  226. package/dist/esm/components/text/form-short-text.js.map +1 -1
  227. package/dist/esm/components/text/index.js +1 -0
  228. package/dist/esm/components/text/index.js.map +1 -1
  229. package/dist/esm/components/text/text-view.st.css.js +2 -2
  230. package/dist/esm/components/text/text-view.st.css.js.map +1 -1
  231. package/dist/esm/components/time-input/form-time.js +4 -3
  232. package/dist/esm/components/time-input/form-time.js.map +1 -1
  233. package/dist/esm/components/url/form-url-input.js +7 -0
  234. package/dist/esm/components/url/form-url-input.js.map +1 -0
  235. package/dist/esm/components/url/form-url.js +3 -4
  236. package/dist/esm/components/url/form-url.js.map +1 -1
  237. package/dist/esm/components/url/index.js +1 -0
  238. package/dist/esm/components/url/index.js.map +1 -1
  239. package/dist/esm/components/video/form-video.js +3 -2
  240. package/dist/esm/components/video/form-video.js.map +1 -1
  241. package/dist/esm/exports/unidriver.js +1 -0
  242. package/dist/esm/exports/unidriver.js.map +1 -1
  243. package/dist/esm/hooks/index.js +1 -0
  244. package/dist/esm/hooks/index.js.map +1 -1
  245. package/dist/esm/hooks/pr-5746-kobiburnley-comments.md +54 -0
  246. package/dist/esm/hooks/use-field-ref.js +36 -0
  247. package/dist/esm/hooks/use-field-ref.js.map +1 -0
  248. package/dist/esm/hooks/use-scroll-to-error-ref.js +12 -12
  249. package/dist/esm/hooks/use-scroll-to-error-ref.js.map +1 -1
  250. package/dist/esm/styles.global.css +1 -1
  251. package/dist/esm/types/controlled-input.js +2 -0
  252. package/dist/esm/types/controlled-input.js.map +1 -0
  253. package/dist/types/components/address/form-address.d.ts.map +1 -1
  254. package/dist/types/components/address/input/address-input.st.css.d.ts.map +1 -1
  255. package/dist/types/components/audio/actions/actions-menu/actions-menu.st.css.d.ts.map +1 -1
  256. package/dist/types/components/audio/audio-field/form-audio-field.st.css.d.ts.map +1 -1
  257. package/dist/types/components/audio/audio-field/form-audio.d.ts.map +1 -1
  258. package/dist/types/components/boolean/form-checkbox-input.d.ts +7 -0
  259. package/dist/types/components/boolean/form-checkbox-input.d.ts.map +1 -0
  260. package/dist/types/components/boolean/form-checkbox.d.ts.map +1 -1
  261. package/dist/types/components/boolean/index.d.ts +1 -0
  262. package/dist/types/components/boolean/index.d.ts.map +1 -1
  263. package/dist/types/components/color-view/color-input.d.ts.map +1 -1
  264. package/dist/types/components/color-view/form-color.driver.d.ts +5 -15
  265. package/dist/types/components/color-view/form-color.driver.d.ts.map +1 -1
  266. package/dist/types/components/controlled-input.driver.d.ts +502 -0
  267. package/dist/types/components/controlled-input.driver.d.ts.map +1 -0
  268. package/dist/types/components/datetime-input/form-date-time.driver.d.ts +1 -0
  269. package/dist/types/components/datetime-input/form-date-time.driver.d.ts.map +1 -1
  270. package/dist/types/components/document/form-document.d.ts.map +1 -1
  271. package/dist/types/components/image/form-image-input.d.ts.map +1 -1
  272. package/dist/types/components/image/thumbnail-replace-overlay.st.css.d.ts.map +1 -1
  273. package/dist/types/components/media-control/cell-media-edit-shell.st.css.d.ts.map +1 -1
  274. package/dist/types/components/media-control/paste-url-button.st.css.d.ts.map +1 -1
  275. package/dist/types/components/media-gallery/form-media-gallery.d.ts.map +1 -1
  276. package/dist/types/components/media-loader/media-loader.st.css.d.ts.map +1 -1
  277. package/dist/types/components/multi-document/multi-document-input/form-multi-document.d.ts.map +1 -1
  278. package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
  279. package/dist/types/components/number-input/form-number-input.d.ts +9 -0
  280. package/dist/types/components/number-input/form-number-input.d.ts.map +1 -0
  281. package/dist/types/components/number-input/form-number.d.ts.map +1 -1
  282. package/dist/types/components/number-input/index.d.ts +1 -0
  283. package/dist/types/components/number-input/index.d.ts.map +1 -1
  284. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts +7 -3
  285. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts.map +1 -1
  286. package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.d.ts.map +1 -1
  287. package/dist/types/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.d.ts.map +1 -1
  288. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.d.ts.map +1 -1
  289. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.d.ts +16 -8
  290. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.d.ts.map +1 -1
  291. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.d.ts.map +1 -1
  292. package/dist/types/components/text/form-short-text-input.d.ts +15 -0
  293. package/dist/types/components/text/form-short-text-input.d.ts.map +1 -0
  294. package/dist/types/components/text/form-short-text.d.ts.map +1 -1
  295. package/dist/types/components/text/form-short-text.driver.d.ts +1 -0
  296. package/dist/types/components/text/form-short-text.driver.d.ts.map +1 -1
  297. package/dist/types/components/text/index.d.ts +1 -0
  298. package/dist/types/components/text/index.d.ts.map +1 -1
  299. package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
  300. package/dist/types/components/time-input/form-time.d.ts.map +1 -1
  301. package/dist/types/components/url/form-url-input.d.ts +8 -0
  302. package/dist/types/components/url/form-url-input.d.ts.map +1 -0
  303. package/dist/types/components/url/form-url.d.ts.map +1 -1
  304. package/dist/types/components/url/index.d.ts +1 -0
  305. package/dist/types/components/url/index.d.ts.map +1 -1
  306. package/dist/types/components/video/form-video.d.ts.map +1 -1
  307. package/dist/types/exports/unidriver.d.ts +1 -0
  308. package/dist/types/exports/unidriver.d.ts.map +1 -1
  309. package/dist/types/hooks/index.d.ts +1 -0
  310. package/dist/types/hooks/index.d.ts.map +1 -1
  311. package/dist/types/hooks/use-field-ref.d.ts +36 -0
  312. package/dist/types/hooks/use-field-ref.d.ts.map +1 -0
  313. package/dist/types/hooks/use-scroll-to-error-ref.d.ts +5 -5
  314. package/dist/types/hooks/use-scroll-to-error-ref.d.ts.map +1 -1
  315. package/dist/types/types/controlled-input.d.ts +10 -0
  316. package/dist/types/types/controlled-input.d.ts.map +1 -0
  317. package/package.json +4 -4
  318. package/src/__tests__/components/color-view/form-color.spec.tsx +46 -3
  319. package/src/__tests__/components/rich-editors-border.spec.ts +45 -0
  320. package/src/__tests__/components/text/form-short-text.spec.tsx +18 -0
  321. package/src/__tests__/exports/controlled-inputs.spec.tsx +138 -0
  322. package/src/__tests__/hooks/use-field-ref.spec.tsx +132 -0
  323. package/src/components/address/form-address.tsx +4 -1
  324. package/src/components/address/input/address-input.st.css.ts +2 -2
  325. package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
  326. package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
  327. package/src/components/audio/audio-field/form-audio.tsx +4 -1
  328. package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
  329. package/src/components/boolean/form-checkbox-input.tsx +40 -0
  330. package/src/components/boolean/form-checkbox.tsx +6 -7
  331. package/src/components/boolean/index.ts +1 -0
  332. package/src/components/color-view/cell-color-view.st.css.ts +2 -2
  333. package/src/components/color-view/color-input.tsx +13 -2
  334. package/src/components/color-view/color-view.st.css.ts +2 -2
  335. package/src/components/color-view/form-color.driver.ts +8 -2
  336. package/src/components/controlled-input.driver.ts +19 -0
  337. package/src/components/datetime-input/form-date-time.driver.ts +3 -0
  338. package/src/components/datetime-input/form-date-time.tsx +1 -1
  339. package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
  340. package/src/components/document/form-document-field.st.css.ts +2 -2
  341. package/src/components/document/form-document.tsx +4 -1
  342. package/src/components/exclamation/exclamation.st.css.ts +2 -2
  343. package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
  344. package/src/components/image/form-image-input.tsx +4 -1
  345. package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
  346. package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
  347. package/src/components/media-control/paste-url-button.st.css.ts +2 -2
  348. package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
  349. package/src/components/media-gallery/form-media-gallery.tsx +4 -1
  350. package/src/components/media-image/media-image.st.css.ts +3 -3
  351. package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
  352. package/src/components/media-loader/media-loader.st.css.ts +2 -2
  353. package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
  354. package/src/components/multi-document/cell-multi-document-edit.st.css.ts +2 -2
  355. package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
  356. package/src/components/multi-document/multi-document-input/form-multi-document.tsx +4 -1
  357. package/src/components/number-input/form-number-input.tsx +37 -0
  358. package/src/components/number-input/form-number.tsx +6 -4
  359. package/src/components/number-input/index.ts +1 -0
  360. package/src/components/reference/cell-multi-reference-input.st.css.ts +2 -2
  361. package/src/components/reference/cell-reference-input.st.css.ts +2 -2
  362. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
  363. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css +15 -7
  364. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +3 -3
  365. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
  366. package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
  367. package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
  368. package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
  369. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
  370. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
  371. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
  372. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
  373. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css +32 -19
  374. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +3 -3
  375. package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
  376. package/src/components/text/form-short-text-input.tsx +121 -0
  377. package/src/components/text/form-short-text.driver.ts +4 -0
  378. package/src/components/text/form-short-text.tsx +20 -108
  379. package/src/components/text/index.ts +1 -0
  380. package/src/components/text/text-view.st.css.ts +2 -2
  381. package/src/components/time-input/form-time.tsx +9 -3
  382. package/src/components/url/form-url-input.tsx +42 -0
  383. package/src/components/url/form-url.tsx +7 -11
  384. package/src/components/url/index.ts +1 -0
  385. package/src/components/video/form-video.tsx +4 -2
  386. package/src/exports/unidriver.ts +1 -0
  387. package/src/hooks/index.ts +1 -0
  388. package/src/hooks/pr-5746-kobiburnley-comments.md +54 -0
  389. package/src/hooks/use-field-ref.ts +65 -0
  390. package/src/hooks/use-scroll-to-error-ref.ts +15 -10
  391. package/src/styles.global.css +1 -1
  392. package/src/types/controlled-input.ts +9 -0
@@ -13,9 +13,13 @@ export declare var stVars: {};
13
13
  export declare var vars: {
14
14
  topToolbarHeight: string;
15
15
  bottomToolbarHeight: string;
16
- "wds-color-blue-300": string;
17
- "wds-border-radius-300": string;
18
- "wds-color-blue-100": string;
16
+ "wds-input-border-color": string;
17
+ "wds-input-border-color-focus": string;
19
18
  "wds-input-shadow-focus-standard": string;
19
+ "wds-input-border-radius-default-medium": string;
20
+ "wsr-color-B10": string;
21
+ "wsr-color-B40": string;
22
+ "wsr-color-F00": string;
23
+ "wsr-border-radius-06": string;
20
24
  };
21
25
  //# sourceMappingURL=rich-content-form-input.st.css.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rich-content-form-input.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAAoG,CAAC;AACvH,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;CAA0S,CAAC"}
1
+ {"version":3,"file":"rich-content-form-input.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAAkG,CAAC;AACrH,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;;;;;CAA8f,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rich-content-form-read-only-input.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;CAAyD,CAAC;AAC5E,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;CAAkQ,CAAC"}
1
+ {"version":3,"file":"rich-content-form-read-only-input.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;CAA0D,CAAC;AAC7E,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;CAAkQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fullscreen-modal.st.css.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAAoG,CAAC;AACvH,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;CAA8K,CAAC"}
1
+ {"version":3,"file":"fullscreen-modal.st.css.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAAsG,CAAC;AACzH,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;CAA8K,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rich-content-toolbar.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;;CAAsN,CAAC;AACzO,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI,IAAK,CAAC"}
1
+ {"version":3,"file":"rich-content-toolbar.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;;CAA8M,CAAC;AACjO,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI,IAAK,CAAC"}
@@ -12,14 +12,22 @@ export declare var layers: {};
12
12
  export declare var containers: {};
13
13
  export declare var stVars: {};
14
14
  export declare var vars: {
15
- "wds-color-blue-100": string;
16
- "wds-color-blue-300": string;
17
- "wds-color-red-100": string;
18
- "wds-color-red-300": string;
19
- "wds-color-yellow-100": string;
20
- "wds-color-yellow-300": string;
21
- "wds-color-black-700": string;
15
+ "wds-input-border-color": string;
16
+ "wds-input-border-color-focus": string;
22
17
  "wds-input-shadow-focus-standard": string;
23
- "wds-border-radius-300": string;
18
+ "wds-input-shadow-focus-destructive": string;
19
+ "wds-input-shadow-focus-warning": string;
20
+ "wds-input-border-radius-default-medium": string;
21
+ "wds-color-border-destructive-secondary-active": string;
22
+ "wds-color-border-warning-secondary-active": string;
23
+ "wsr-color-B10": string;
24
+ "wsr-color-B40": string;
25
+ "wsr-color-R10": string;
26
+ "wsr-color-R40": string;
27
+ "wsr-color-Y10": string;
28
+ "wsr-color-Y40": string;
29
+ "wsr-color-F00": string;
30
+ "wsr-border-radius-06": string;
31
+ "wds-color-black-700": string;
24
32
  };
25
33
  //# sourceMappingURL=rich-text-editor.st.css.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rich-text-editor.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;CAA2I,CAAC;AAC9J,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;;;;CAAsb,CAAC"}
1
+ {"version":3,"file":"rich-text-editor.st.css.d.ts","sourceRoot":"","sources":["../../../../../../src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;CAA8I,CAAC;AACjK,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;;;;;;;;;;;;CAA06B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"toolbar.st.css.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;;;;;;;;;;;;;;;CAA67B,CAAC;AACh9B,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;;;;;;CAA0e,CAAC"}
1
+ {"version":3,"file":"toolbar.st.css.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;;;;;;;;;;;;;;;;CAA46B,CAAC;AAC/7B,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI;;;;;;;;;;;;CAA0e,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { ControlledInputProps } from '../../types/controlled-input';
3
+ export interface FormShortTextOption {
4
+ id: string;
5
+ value: string;
6
+ }
7
+ export interface FormShortTextInputProps extends ControlledInputProps<string> {
8
+ options?: FormShortTextOption[];
9
+ required?: boolean;
10
+ placeholder?: string;
11
+ emptyStateMessage?: string;
12
+ inputRef?: React.Ref<HTMLInputElement>;
13
+ }
14
+ export declare const FormShortTextInput: React.FC<FormShortTextInputProps>;
15
+ //# sourceMappingURL=form-short-text-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-short-text-input.d.ts","sourceRoot":"","sources":["../../../../src/components/text/form-short-text-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAQ9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IAC3E,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA+FhE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-short-text.d.ts","sourceRoot":"","sources":["../../../../src/components/text/form-short-text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAa9D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AAsKrE,eAAO,MAAM,aAAa,WAjKK,kBAAkB;;CAiKI,CAAC"}
1
+ {"version":3,"file":"form-short-text.d.ts","sourceRoot":"","sources":["../../../../src/components/text/form-short-text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAKxD,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AAoFrE,eAAO,MAAM,aAAa,WA/EK,kBAAkB;;CA+EI,CAAC"}
@@ -3,6 +3,7 @@ import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
3
3
  export declare function FormShortTextDriver(base: UniDriver, body: UniDriver, field: Field): {
4
4
  getLabel: () => Promise<string>;
5
5
  getValue: () => Promise<string>;
6
+ getPlaceholder: () => Promise<string | null>;
6
7
  enterText: (value: string) => Promise<void>;
7
8
  selectOption: (id: string) => Promise<void>;
8
9
  blur: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"form-short-text.driver.d.ts","sourceRoot":"","sources":["../../../../src/components/text/form-short-text.driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAS7D,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,KAAK;;;uBAkBe,MAAM;uBAIZ,MAAM;;;;;;;;;;;;;;;;EAgB5B"}
1
+ {"version":3,"file":"form-short-text.driver.d.ts","sourceRoot":"","sources":["../../../../src/components/text/form-short-text.driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAS7D,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,KAAK;;;;uBAsBe,MAAM;uBAIZ,MAAM;;;;;;;;;;;;;;;;EAgB5B"}
@@ -3,4 +3,5 @@ export * from './cell-text-input';
3
3
  export * from './cell-autocomplete-input';
4
4
  export * from './form-long-text';
5
5
  export * from './form-short-text';
6
+ export * from './form-short-text-input';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/text/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/text/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"text-view.st.css.d.ts","sourceRoot":"","sources":["../../../../src/components/text/text-view.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAA8E,CAAC;AACjG,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI,IAAK,CAAC"}
1
+ {"version":3,"file":"text-view.st.css.d.ts","sourceRoot":"","sources":["../../../../src/components/text/text-view.st.css.ts"],"names":[],"mappings":"AAUA,eAAO,IAAI,SAAS,+BAAwC,CAAC;AAC7D,eAAO,IAAI,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AACnE,eAAO,IAAI,EAAE,EAAE,OAAO,mBAAmB,EAAE,UAAoB,CAAC;AAEhE,eAAO,IAAI,SAAS,QAAc,CAAC;AACnC,eAAO,IAAI,OAAO;;;CAAgF,CAAC;AACnG,eAAO,IAAI,SAAS,IAAK,CAAC;AAC1B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,UAAU,IAAK,CAAC;AAC3B,eAAO,IAAI,MAAM,IAAK,CAAC;AACvB,eAAO,IAAI,IAAI,IAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-time.d.ts","sourceRoot":"","sources":["../../../../src/components/time-input/form-time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAOjD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAWxD,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AA0EhE,eAAO,MAAM,QAAQ,WAxEK,aAAa;;CAwEI,CAAC"}
1
+ {"version":3,"file":"form-time.d.ts","sourceRoot":"","sources":["../../../../src/components/time-input/form-time.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAOjD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAWxD,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AAgFhE,eAAO,MAAM,QAAQ,WA9EK,aAAa;;CA8EI,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import type { ControlledInputProps } from '../../types/controlled-input';
3
+ export interface FormUrlInputProps extends ControlledInputProps<string> {
4
+ inputRef?: React.Ref<HTMLInputElement>;
5
+ placeholder?: string;
6
+ }
7
+ export declare const FormUrlInput: React.FC<FormUrlInputProps>;
8
+ //# sourceMappingURL=form-url-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-url-input.d.ts","sourceRoot":"","sources":["../../../../src/components/url/form-url-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACrE,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA4BpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-url.d.ts","sourceRoot":"","sources":["../../../../src/components/url/form-url.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AA+C/D,eAAO,MAAM,OAAO,WA7CK,YAAY;;CA6CI,CAAC"}
1
+ {"version":3,"file":"form-url.d.ts","sourceRoot":"","sources":["../../../../src/components/url/form-url.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAKxD,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AA2C/D,eAAO,MAAM,OAAO,WAzCK,YAAY;;CAyCI,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './url-view';
2
2
  export * from './cell-url-input';
3
3
  export * from './form-url';
4
+ export * from './form-url-input';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/url/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/url/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-video.d.ts","sourceRoot":"","sources":["../../../../src/components/video/form-video.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuB1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAoBxD,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AA2MjE,eAAO,MAAM,SAAS,WAzMK,cAAc;;CAyMI,CAAC"}
1
+ {"version":3,"file":"form-video.d.ts","sourceRoot":"","sources":["../../../../src/components/video/form-video.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuB1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAoBxD,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,MAAM,CAAC;CAAG;AA6MjE,eAAO,MAAM,SAAS,WA3MK,cAAc;;CA2MI,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export { FormMediaGalleryFieldUniDriver } from '../components/media-gallery/form-media-gallery-field.uni.driver';
2
2
  export { ColorViewUniDriver } from '../components/color-view/color-view.uni.driver';
3
+ export { ControlledInputUniDriver } from '../components/controlled-input.driver';
3
4
  //# sourceMappingURL=unidriver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unidriver.d.ts","sourceRoot":"","sources":["../../../src/exports/unidriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,iEAAiE,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC"}
1
+ {"version":3,"file":"unidriver.d.ts","sourceRoot":"","sources":["../../../src/exports/unidriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,iEAAiE,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC"}
@@ -7,6 +7,7 @@ export * from './use-translations';
7
7
  export * from './use-with-callback';
8
8
  export * from './use-resize-effect';
9
9
  export * from './use-cell-edit-keyboard';
10
+ export * from './use-field-ref';
10
11
  export * from './use-merged-ref';
11
12
  export * from './use-scroll-to-error-ref';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * What a field's control may offer react-hook-form. A real input has all of
3
+ * it; a component handle usually has only `focus`.
4
+ */
5
+ export interface FieldControl {
6
+ focus?: () => void;
7
+ select?: () => void;
8
+ setCustomValidity?: (message: string) => void;
9
+ reportValidity?: () => boolean;
10
+ }
11
+ /**
12
+ * Handle to register with react-hook-form, covering every method it may call.
13
+ *
14
+ * `useController` rewrites whatever is registered into
15
+ * `{ focus, select, setCustomValidity, reportValidity }` and calls all four
16
+ * through to the target. The guards check that wrapper rather than the target,
17
+ * so registering a control that only has `focus` makes `setFocus` with
18
+ * `shouldSelect`, or `shouldUseNativeValidation`, throw on the way to it.
19
+ *
20
+ * @param focus What to do when the field has to be reached.
21
+ * @param getControl The control the remaining calls go to, when there is one.
22
+ */
23
+ export declare const fieldRefHandle: (focus: () => void, getControl: () => FieldControl | null | undefined) => {
24
+ focus: () => void;
25
+ select: () => void | undefined;
26
+ setCustomValidity: (message: string) => void | undefined;
27
+ reportValidity: () => boolean;
28
+ };
29
+ /**
30
+ * Callback ref for a field's control. Pass it where the control lands and
31
+ * react-hook-form gets a handle that reaches it.
32
+ *
33
+ * @param registerRef `controller.field.ref` from useController.
34
+ */
35
+ export declare const useFieldRef: (registerRef: (instance: unknown) => void) => (instance: FieldControl | null) => void;
36
+ //# sourceMappingURL=use-field-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-field-ref.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-field-ref.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC;CAChC;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,UAClB,MAAM,IAAI,cACL,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS;iBADpC,IAAI;;iCAKY,MAAM;;CAGnC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,WAAW,2BACE,OAAO,KAAK,IAAI,gBAC3B,YAAY,GAAG,IAAI,KAAK,IAmBtC,CAAC"}
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Ref for a field whose control cannot be handed to react-hook-form directly.
3
3
  *
4
- * react-hook-form focuses an invalid field by calling `focus()` on whatever
5
- * was registered, so registering a plain wrapper element does nothing — a
6
- * `div` is not focusable and the call is silently dropped. Registering an
7
- * object with a `focus()` of our own works instead: it brings the wrapper
8
- * into view, then focuses the control inside it when there is one.
4
+ * react-hook-form focuses an invalid field by calling `focus()` on whatever was
5
+ * registered, so registering a plain wrapper element does nothing — a `div` is
6
+ * not focusable and the call is silently dropped. Registering an object with a
7
+ * `focus()` of our own works instead: it brings the wrapper into view, then
8
+ * focuses the control inside it when there is one.
9
9
  *
10
10
  * @param registerRef `controller.field.ref` from useController.
11
11
  * @param focusSelector Control to focus inside the wrapper, when present.
@@ -1 +1 @@
1
- {"version":3,"file":"use-scroll-to-error-ref.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-scroll-to-error-ref.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,kDACN,OAAO,KAAK,IAAI,iBACzB,MAAM,gCAiBpB,CAAC"}
1
+ {"version":3,"file":"use-scroll-to-error-ref.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-scroll-to-error-ref.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,kDACN,OAAO,KAAK,IAAI,iBACzB,MAAM,gCAoBpB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export interface ControlledInputProps<T> {
2
+ data: T;
3
+ onChange(data: T): void;
4
+ onBlur?(): void;
5
+ readOnly?: boolean;
6
+ autoFocus?: boolean;
7
+ invalid?: boolean;
8
+ dataHook?: string;
9
+ }
10
+ //# sourceMappingURL=controlled-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controlled-input.d.ts","sourceRoot":"","sources":["../../../src/types/controlled-input.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC;IACR,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,IAAI,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/patterns-fields",
3
- "version": "1.73.0",
3
+ "version": "1.75.0",
4
4
  "license": "UNLICENSED",
5
5
  "author": {
6
6
  "name": "Kobi",
@@ -124,7 +124,7 @@
124
124
  "@wix/atlas": "^1.0.35",
125
125
  "@wix/data": "^1.0.323",
126
126
  "@wix/media": "^1.0.231",
127
- "@wix/patterns-fields-utils": "1.54.0",
127
+ "@wix/patterns-fields-utils": "1.56.0",
128
128
  "@wix/rich-content": "1.0.37",
129
129
  "@wix/sdk": "^1.17.2",
130
130
  "@wix/wix-ui-icons-common": "^3.189.0",
@@ -152,7 +152,7 @@
152
152
  "@types/lodash": "^4.17.20",
153
153
  "@types/react": "^16.14.68",
154
154
  "@wix/babel-cli": "^1.11.0",
155
- "@wix/bex-core": "2.351.0",
155
+ "@wix/bex-core": "2.353.0",
156
156
  "@wix/design-system": "^1.314.0",
157
157
  "@wix/eslint-config-yoshi": "^6.74.0",
158
158
  "@wix/jest-yoshi-preset": "^6.74.0",
@@ -212,5 +212,5 @@
212
212
  "optional": true
213
213
  }
214
214
  },
215
- "falconPackageHash": "772c06391e8c8c0054dd3a1efbcbb58220b2237b346f1b57f9b2ea0f"
215
+ "falconPackageHash": "a470dba86733802e67d7445900642d5dc5fa498fe8b22f01694beacf"
216
216
  }
@@ -1,5 +1,7 @@
1
1
  import '../../../testkit/test-polyfills';
2
2
 
3
+ import { act, createEvent, fireEvent } from '@testing-library/react';
4
+
3
5
  import { FormColor } from '../../../components/color-view/form-color';
4
6
  import { FormColorDriver } from '../../../components/color-view/form-color.driver';
5
7
  import { FormFieldDriver, makeField } from '../../form-field.driver';
@@ -35,15 +37,56 @@ describe('FormColor field', () => {
35
37
  expect(await driver.tk.getValue()).toBe('');
36
38
  });
37
39
 
38
- it('renders the FillButton when no color is set', async () => {
40
+ it('renders the FillPreview when no color is set and the field is at rest', async () => {
41
+ const driver = setup('');
42
+
43
+ expect(await driver.tk.hasFillPreview()).toBe(true);
44
+ expect(await driver.tk.hasFillButton()).toBe(false);
45
+ });
46
+
47
+ it('renders the FillButton once the input is focused with no color set', async () => {
39
48
  const driver = setup('');
40
49
 
41
- expect(await driver.tk.getFillButton().exists()).toBe(true);
50
+ const input = document.querySelector('input')!;
51
+ await act(async () => {
52
+ input.focus();
53
+ fireEvent.focus(input);
54
+ });
55
+
56
+ expect(await driver.tk.hasFillButton()).toBe(true);
42
57
  });
43
58
 
44
59
  it('renders the FillPreview when a color is set', async () => {
45
60
  const driver = setup('#FF5733');
46
61
 
47
- expect(await driver.tk.getFillPreview().exists()).toBe(true);
62
+ expect(await driver.tk.hasFillPreview()).toBe(true);
63
+ });
64
+
65
+ it('opens the color picker on the first press of the swatch', async () => {
66
+ const driver = setup('');
67
+
68
+ const swatch = document.querySelector<HTMLElement>(
69
+ '[data-hook="fill-preview-button"]',
70
+ )!;
71
+
72
+ await act(async () => {
73
+ // jsdom does not implement the browser's focus-on-mousedown default, so
74
+ // drive it here: the browser focuses the pressed button unless the
75
+ // handler prevents it. Without that guard the click sets `showPicker`,
76
+ // the swatch swaps to a FillButton, and the focused element is torn out
77
+ // from under the pointer.
78
+ const mouseDown = createEvent.mouseDown(swatch);
79
+ fireEvent(swatch, mouseDown);
80
+ if (!mouseDown.defaultPrevented) {
81
+ swatch.focus();
82
+ }
83
+ fireEvent.mouseUp(swatch);
84
+ fireEvent.click(swatch);
85
+ });
86
+
87
+ expect(await driver.tk.isPickerOpen()).toBe(true);
88
+ // The swatch has to survive its own click. WDS Popover reads a click whose
89
+ // target has been detached as a click outside itself and closes again.
90
+ expect(document.contains(swatch)).toBe(true);
48
91
  });
49
92
  });
@@ -0,0 +1,45 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+
4
+ // CAIRO-4561: both editors rendered with no border at all. The rules were
5
+ // there, but they read `var(--wds-color-blue-300)` with no fallback, and a
6
+ // custom property that resolves to nothing makes the whole declaration invalid
7
+ // — so the border was dropped rather than falling back to a default. WDS Input
8
+ // spells every one of these as `var(--token, var(--wsr-token, #literal))`.
9
+ const STYLESHEETS = [
10
+ 'components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css',
11
+ 'components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css',
12
+ ];
13
+
14
+ const read = (relative: string) =>
15
+ fs.readFileSync(path.join(__dirname, '../../', relative), 'utf8');
16
+
17
+ /** Every declaration whose property is border-ish or a shadow. */
18
+ const borderDeclarations = (css: string) =>
19
+ css
20
+ .split(/[;{}]/)
21
+ .map((chunk) => chunk.trim())
22
+ .filter((chunk) => /^(border[\w-]*|box-shadow)\s*:/.test(chunk));
23
+
24
+ describe('rich editor borders', () => {
25
+ it.each(STYLESHEETS)('declares a visible border in %s', (relative) => {
26
+ const declarations = borderDeclarations(read(relative));
27
+
28
+ expect(
29
+ declarations.some((d) => d.includes('var(--wds-input-border-color,')),
30
+ ).toBe(true);
31
+ });
32
+
33
+ it.each(STYLESHEETS)(
34
+ 'gives every custom property in a border declaration a fallback in %s',
35
+ (relative) => {
36
+ const withoutFallback = borderDeclarations(read(relative)).filter((d) =>
37
+ Array.from(d.matchAll(/var\(\s*(--[\w-]+)\s*([,)])/g)).some(
38
+ ([, , delimiter]) => delimiter === ')',
39
+ ),
40
+ );
41
+
42
+ expect(withoutFallback).toEqual([]);
43
+ },
44
+ );
45
+ });
@@ -44,6 +44,12 @@ describe('FormShortText field', () => {
44
44
  expect(await driver.tk.getValue()).toBe('typed');
45
45
  });
46
46
 
47
+ it('does not show a selection placeholder without specific values', async () => {
48
+ const driver = setup();
49
+
50
+ expect(await driver.tk.getPlaceholder()).toBeNull();
51
+ });
52
+
47
53
  it('shows charCount left when maxLength is set', async () => {
48
54
  const driver = setup({
49
55
  field: makeField({
@@ -118,6 +124,18 @@ describe('FormShortText field', () => {
118
124
  expect(await driver.tk.getValue()).toBe('Value 1');
119
125
  });
120
126
 
127
+ it('shows the selection placeholder for specific values', async () => {
128
+ const driver = setup({
129
+ field: makeField({
130
+ validation: { required: false, specificValues },
131
+ }),
132
+ });
133
+
134
+ expect(await driver.tk.getPlaceholder()).toBe(
135
+ 'auto-patterns.fields.select_placeholder',
136
+ );
137
+ });
138
+
121
139
  it('selects a specific value by id', async () => {
122
140
  const driver = setup({
123
141
  field: makeField({
@@ -0,0 +1,138 @@
1
+ import '../../testkit/test-polyfills';
2
+
3
+ import React from 'react';
4
+ import { render } from '@testing-library/react';
5
+ import { uniTestkitFactoryCreator } from '@wix/wix-ui-test-utils/testing-library';
6
+
7
+ import { FormCheckboxInput } from '../../components/boolean';
8
+ import { ControlledInputUniDriver } from '../../components/controlled-input.driver';
9
+ import { FormNumberInput } from '../../components/number-input';
10
+ import { FormShortTextInput } from '../../components/text';
11
+ import { FormUrlInput } from '../../components/url';
12
+
13
+ const controlledInputTestkitFactory = uniTestkitFactoryCreator(
14
+ ControlledInputUniDriver,
15
+ );
16
+
17
+ const getInput = (container: HTMLElement, dataHook: string) =>
18
+ controlledInputTestkitFactory({ wrapper: container, dataHook });
19
+
20
+ describe('controlled inputs', () => {
21
+ it('follows checkbox prop changes and reports user edits', async () => {
22
+ const onChange = jest.fn();
23
+ const { container, rerender } = render(
24
+ <FormCheckboxInput
25
+ data={false}
26
+ onChange={onChange}
27
+ dataHook="checkbox"
28
+ label="Default value"
29
+ />,
30
+ );
31
+ const input = getInput(container, 'checkbox').checkbox;
32
+
33
+ expect(await input.isChecked()).toBe(false);
34
+ expect(await input.getLabel()).toBe('Default value');
35
+ rerender(
36
+ <FormCheckboxInput
37
+ data
38
+ onChange={onChange}
39
+ dataHook="checkbox"
40
+ label="Default value"
41
+ />,
42
+ );
43
+ expect(await input.isChecked()).toBe(true);
44
+
45
+ await input.click();
46
+ expect(onChange).toHaveBeenCalledTimes(1);
47
+ expect(onChange).toHaveBeenCalledWith(false);
48
+ });
49
+
50
+ it('follows number prop changes and reports user edits', async () => {
51
+ const onChange = jest.fn();
52
+ const { container, rerender } = render(
53
+ <FormNumberInput data={1} onChange={onChange} dataHook="number" />,
54
+ );
55
+ const input = getInput(container, 'number').number;
56
+
57
+ expect(await input.getValue()).toBe('1');
58
+ rerender(
59
+ <FormNumberInput data={2} onChange={onChange} dataHook="number" />,
60
+ );
61
+ expect(await input.getValue()).toBe('2');
62
+
63
+ await input.enterText('3');
64
+ expect(onChange).toHaveBeenCalledTimes(1);
65
+ expect(onChange).toHaveBeenCalledWith(3);
66
+ });
67
+
68
+ it('follows text prop changes and reports user edits', async () => {
69
+ const onChange = jest.fn();
70
+ const { container, rerender } = render(
71
+ <FormShortTextInput data="before" onChange={onChange} dataHook="text" />,
72
+ );
73
+ const input = getInput(container, 'text').text;
74
+
75
+ expect(await input.getValue()).toBe('before');
76
+ rerender(
77
+ <FormShortTextInput data="after" onChange={onChange} dataHook="text" />,
78
+ );
79
+ expect(await input.getValue()).toBe('after');
80
+
81
+ await input.enterText('typed');
82
+ expect(onChange).toHaveBeenCalledTimes(1);
83
+ expect(onChange).toHaveBeenCalledWith('typed');
84
+ });
85
+
86
+ it('forwards the placeholder to a plain text input', async () => {
87
+ const { container } = render(
88
+ <FormShortTextInput
89
+ data=""
90
+ onChange={jest.fn()}
91
+ placeholder="Enter a value"
92
+ dataHook="text-placeholder"
93
+ />,
94
+ );
95
+ const input = getInput(container, 'text-placeholder').text;
96
+
97
+ expect(await input.getPlaceholder()).toBe('Enter a value');
98
+ });
99
+
100
+ it('reports URL edits and blur without normalizing the value', async () => {
101
+ const onChange = jest.fn();
102
+ const onBlur = jest.fn();
103
+ const { container } = render(
104
+ <FormUrlInput
105
+ data=""
106
+ onChange={onChange}
107
+ onBlur={onBlur}
108
+ dataHook="url"
109
+ />,
110
+ );
111
+ const input = getInput(container, 'url').text;
112
+
113
+ await input.enterText('example.com');
114
+ await input.blur();
115
+
116
+ expect(onChange).toHaveBeenCalledWith('example.com');
117
+ expect(onBlur).toHaveBeenCalledTimes(1);
118
+ });
119
+
120
+ it('uses option IDs as controlled specific values', async () => {
121
+ const onChange = jest.fn();
122
+ const { container } = render(
123
+ <FormShortTextInput
124
+ data="first"
125
+ onChange={onChange}
126
+ options={[
127
+ { id: 'first', value: 'First' },
128
+ { id: 'second', value: 'Second' },
129
+ ]}
130
+ dataHook="specific-value"
131
+ />,
132
+ );
133
+
134
+ const input = getInput(container, 'specific-value').autocomplete;
135
+
136
+ expect(await input.inputDriver.getValue()).toBe('First');
137
+ });
138
+ });