@wix/patterns-fields 1.35.0 → 1.36.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 (268) hide show
  1. package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
  2. package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
  3. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
  4. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  5. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
  6. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  7. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
  8. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  9. package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
  10. package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
  11. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
  12. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  13. package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
  14. package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
  15. package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
  16. package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
  17. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
  18. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  19. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
  20. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  21. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  22. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  23. package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
  24. package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
  25. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
  26. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  27. package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
  28. package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
  29. package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
  30. package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
  31. package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
  32. package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
  33. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  34. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  35. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
  36. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  37. package/dist/cjs/components/number-input/form-number.driver.js +23 -0
  38. package/dist/cjs/components/number-input/form-number.driver.js.map +1 -0
  39. package/dist/cjs/components/number-input/form-number.js +80 -0
  40. package/dist/cjs/components/number-input/form-number.js.map +1 -0
  41. package/dist/cjs/components/number-input/index.js +6 -0
  42. package/dist/cjs/components/number-input/index.js.map +1 -1
  43. package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
  44. package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
  45. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
  46. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  47. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
  48. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  49. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  50. 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
  51. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
  52. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  53. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
  54. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  55. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  56. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  57. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
  58. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  59. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +4 -4
  60. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  61. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
  62. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  63. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
  64. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  65. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +4 -4
  66. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  67. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
  68. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  69. package/dist/cjs/components/text/form-long-text.driver.js +24 -0
  70. package/dist/cjs/components/text/form-long-text.driver.js.map +1 -0
  71. package/dist/cjs/components/text/form-long-text.js +65 -0
  72. package/dist/cjs/components/text/form-long-text.js.map +1 -0
  73. package/dist/cjs/components/text/index.js +6 -0
  74. package/dist/cjs/components/text/index.js.map +1 -1
  75. package/dist/cjs/components/text/text-view.st.css.js +3 -3
  76. package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
  77. package/dist/cjs/components/time-input/cell-time-input.js +96 -0
  78. package/dist/cjs/components/time-input/cell-time-input.js.map +1 -0
  79. package/dist/cjs/components/time-input/index.js +6 -0
  80. package/dist/cjs/components/time-input/index.js.map +1 -1
  81. package/dist/cjs/components/time-view/hooks.js +11 -5
  82. package/dist/cjs/components/time-view/hooks.js.map +1 -1
  83. package/dist/cjs/components/time-view/index.js.map +1 -1
  84. package/dist/cjs/components/url/form-url.driver.js +25 -0
  85. package/dist/cjs/components/url/form-url.driver.js.map +1 -0
  86. package/dist/cjs/components/url/form-url.js +85 -0
  87. package/dist/cjs/components/url/form-url.js.map +1 -0
  88. package/dist/cjs/components/url/index.js +6 -0
  89. package/dist/cjs/components/url/index.js.map +1 -1
  90. package/dist/cjs/styles.global.css +1 -1
  91. package/dist/cjs/validations/number.js +9 -0
  92. package/dist/cjs/validations/number.js.map +1 -0
  93. package/dist/cjs/validations/url.js +11 -0
  94. package/dist/cjs/validations/url.js.map +1 -0
  95. package/dist/esm/components/address/input/address-input.st.css.js +2 -2
  96. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
  97. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
  98. package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
  99. package/dist/esm/components/color-view/color-view.st.css.js +2 -2
  100. package/dist/esm/components/color-view/color-view.st.css.js.map +1 -1
  101. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
  102. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  103. package/dist/esm/components/document/form-document-field.st.css.js +2 -2
  104. package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
  105. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
  106. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
  107. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  108. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  109. package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
  110. package/dist/esm/components/media-control/paste-url-button.st.css.js.map +1 -1
  111. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
  112. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  113. package/dist/esm/components/media-image/media-image.st.css.js +3 -3
  114. package/dist/esm/components/media-image/media-image.st.css.js.map +1 -1
  115. package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
  116. package/dist/esm/components/media-image/overlays/overlay.st.css.js.map +1 -1
  117. package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
  118. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  119. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  120. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
  121. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  122. package/dist/esm/components/number-input/form-number.driver.js +19 -0
  123. package/dist/esm/components/number-input/form-number.driver.js.map +1 -0
  124. package/dist/esm/components/number-input/form-number.js +39 -0
  125. package/dist/esm/components/number-input/form-number.js.map +1 -0
  126. package/dist/esm/components/number-input/index.js +1 -0
  127. package/dist/esm/components/number-input/index.js.map +1 -1
  128. package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
  129. package/dist/esm/components/reference/cell-reference-input.st.css.js.map +1 -1
  130. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
  131. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  132. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +2 -2
  133. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  134. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
  135. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  136. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
  137. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  138. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  139. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
  140. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
  141. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  142. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
  143. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
  144. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  145. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +2 -2
  146. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  147. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
  148. package/dist/esm/components/text/form-long-text.driver.js +20 -0
  149. package/dist/esm/components/text/form-long-text.driver.js.map +1 -0
  150. package/dist/esm/components/text/form-long-text.js +27 -0
  151. package/dist/esm/components/text/form-long-text.js.map +1 -0
  152. package/dist/esm/components/text/index.js +1 -0
  153. package/dist/esm/components/text/index.js.map +1 -1
  154. package/dist/esm/components/text/text-view.st.css.js +2 -2
  155. package/dist/esm/components/text/text-view.st.css.js.map +1 -1
  156. package/dist/esm/components/time-input/cell-time-input.js +40 -0
  157. package/dist/esm/components/time-input/cell-time-input.js.map +1 -0
  158. package/dist/esm/components/time-input/index.js +1 -0
  159. package/dist/esm/components/time-input/index.js.map +1 -1
  160. package/dist/esm/components/time-view/hooks.js +8 -6
  161. package/dist/esm/components/time-view/hooks.js.map +1 -1
  162. package/dist/esm/components/url/form-url.driver.js +21 -0
  163. package/dist/esm/components/url/form-url.driver.js.map +1 -0
  164. package/dist/esm/components/url/form-url.js +33 -0
  165. package/dist/esm/components/url/form-url.js.map +1 -0
  166. package/dist/esm/components/url/index.js +1 -0
  167. package/dist/esm/components/url/index.js.map +1 -1
  168. package/dist/esm/styles.global.css +1 -1
  169. package/dist/esm/validations/number.js +3 -0
  170. package/dist/esm/validations/number.js.map +1 -0
  171. package/dist/esm/validations/url.js +6 -0
  172. package/dist/esm/validations/url.js.map +1 -0
  173. package/dist/types/components/color-view/color-view.st.css.d.ts.map +1 -1
  174. package/dist/types/components/delete-dialog/delete-dialog.st.css.d.ts.map +1 -1
  175. package/dist/types/components/media-control/cell-media-edit-shell.st.css.d.ts.map +1 -1
  176. package/dist/types/components/media-control/paste-url-button.st.css.d.ts.map +1 -1
  177. package/dist/types/components/media-gallery/form-media-gallery-field.st.css.d.ts.map +1 -1
  178. package/dist/types/components/media-image/media-image.st.css.d.ts.map +1 -1
  179. package/dist/types/components/media-image/overlays/overlay.st.css.d.ts.map +1 -1
  180. package/dist/types/components/media-tag/web-media-tag/media-tag.st.css.d.ts.map +1 -1
  181. package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
  182. package/dist/types/components/number-input/form-number.d.ts +8 -0
  183. package/dist/types/components/number-input/form-number.d.ts.map +1 -0
  184. package/dist/types/components/number-input/form-number.driver.d.ts +20 -0
  185. package/dist/types/components/number-input/form-number.driver.d.ts.map +1 -0
  186. package/dist/types/components/number-input/index.d.ts +1 -0
  187. package/dist/types/components/number-input/index.d.ts.map +1 -1
  188. package/dist/types/components/reference/cell-reference-input.st.css.d.ts.map +1 -1
  189. package/dist/types/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.d.ts.map +1 -1
  190. package/dist/types/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.d.ts.map +1 -1
  191. package/dist/types/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.d.ts.map +1 -1
  192. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.d.ts.map +1 -1
  193. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.d.ts.map +1 -1
  194. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.d.ts.map +1 -1
  195. package/dist/types/components/text/form-long-text.d.ts +8 -0
  196. package/dist/types/components/text/form-long-text.d.ts.map +1 -0
  197. package/dist/types/components/text/form-long-text.driver.d.ts +20 -0
  198. package/dist/types/components/text/form-long-text.driver.d.ts.map +1 -0
  199. package/dist/types/components/text/index.d.ts +1 -0
  200. package/dist/types/components/text/index.d.ts.map +1 -1
  201. package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
  202. package/dist/types/components/time-input/cell-time-input.d.ts +29 -0
  203. package/dist/types/components/time-input/cell-time-input.d.ts.map +1 -0
  204. package/dist/types/components/time-input/index.d.ts +1 -0
  205. package/dist/types/components/time-input/index.d.ts.map +1 -1
  206. package/dist/types/components/time-view/hooks.d.ts.map +1 -1
  207. package/dist/types/components/url/form-url.d.ts +8 -0
  208. package/dist/types/components/url/form-url.d.ts.map +1 -0
  209. package/dist/types/components/url/form-url.driver.d.ts +21 -0
  210. package/dist/types/components/url/form-url.driver.d.ts.map +1 -0
  211. package/dist/types/components/url/index.d.ts +1 -0
  212. package/dist/types/components/url/index.d.ts.map +1 -1
  213. package/dist/types/validations/number.d.ts +3 -0
  214. package/dist/types/validations/number.d.ts.map +1 -0
  215. package/dist/types/validations/url.d.ts +2 -0
  216. package/dist/types/validations/url.d.ts.map +1 -0
  217. package/package.json +3 -3
  218. package/src/__tests__/components/number-input/form-number.spec.tsx +78 -0
  219. package/src/__tests__/components/text/form-long-text.spec.tsx +63 -0
  220. package/src/__tests__/components/url/form-url.spec.tsx +82 -0
  221. package/src/components/address/input/address-input.st.css.ts +2 -2
  222. package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
  223. package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
  224. package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
  225. package/src/components/color-view/color-view.st.css.ts +2 -2
  226. package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
  227. package/src/components/document/form-document-field.st.css.ts +2 -2
  228. package/src/components/exclamation/exclamation.st.css.ts +2 -2
  229. package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
  230. package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
  231. package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
  232. package/src/components/media-control/paste-url-button.st.css.ts +2 -2
  233. package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
  234. package/src/components/media-image/media-image.st.css.ts +3 -3
  235. package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
  236. package/src/components/media-loader/media-loader.st.css.ts +2 -2
  237. package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
  238. package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
  239. package/src/components/number-input/form-number.driver.ts +25 -0
  240. package/src/components/number-input/form-number.tsx +67 -0
  241. package/src/components/number-input/index.ts +1 -0
  242. package/src/components/reference/cell-reference-input.st.css.ts +2 -2
  243. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
  244. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +2 -2
  245. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
  246. package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
  247. package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
  248. package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
  249. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
  250. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
  251. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
  252. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
  253. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +2 -2
  254. package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
  255. package/src/components/text/form-long-text.driver.ts +26 -0
  256. package/src/components/text/form-long-text.tsx +51 -0
  257. package/src/components/text/index.ts +1 -0
  258. package/src/components/text/text-view.st.css.ts +2 -2
  259. package/src/components/time-input/cell-time-input.tsx +104 -0
  260. package/src/components/time-input/index.ts +1 -0
  261. package/src/components/time-view/hooks.ts +8 -7
  262. package/src/components/time-view/index.ts +0 -1
  263. package/src/components/url/form-url.driver.ts +27 -0
  264. package/src/components/url/form-url.tsx +59 -0
  265. package/src/components/url/index.ts +1 -0
  266. package/src/styles.global.css +1 -1
  267. package/src/validations/number.ts +4 -0
  268. package/src/validations/url.ts +6 -0
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../stylable-esm-runtime.js"
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "overlay1355255452";
8
+ var _namespace_ = "overlay448562002";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"overlay1355255452__root","iconOverlay":"overlay1355255452__iconOverlay"};
16
+ export var classes = {"root":"overlay448562002__root","iconOverlay":"overlay448562002__iconOverlay"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "medialoader194269943";
8
+ var _namespace_ = "medialoader732921463";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"medialoader194269943__root","loader":"medialoader194269943__loader"};
16
+ export var classes = {"root":"medialoader732921463__root","loader":"medialoader732921463__loader"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../stylable-esm-runtime.js"
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "mediatag1044101107";
8
+ var _namespace_ = "mediatag803492834";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"mediatag1044101107__root"};
16
+ export var classes = {"root":"mediatag803492834__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../stylable-esm-runtime.js"
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "formmultidocument2601852807";
8
+ var _namespace_ = "formmultidocument441385592";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"formmultidocument2601852807__root","viewRoot":"formmultidocument2601852807__viewRoot","singleViewWrapper":"formmultidocument2601852807__singleViewWrapper","addDocumentButton":"formmultidocument2601852807__addDocumentButton"};
16
+ export var classes = {"root":"formmultidocument441385592__root","viewRoot":"formmultidocument441385592__viewRoot","singleViewWrapper":"formmultidocument441385592__singleViewWrapper","addDocumentButton":"formmultidocument441385592__addDocumentButton"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -0,0 +1,25 @@
1
+ import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
2
+ import {
3
+ FormFieldUniDriver,
4
+ NumberInputUniDriver,
5
+ } from '@wix/design-system/dist/testkit/unidriver';
6
+
7
+ import { baseUniDriverFactory } from '../../testkit/base-driver';
8
+
9
+ export function FormNumberDriver(base: UniDriver, body: UniDriver) {
10
+ const formField = FormFieldUniDriver(base, body);
11
+ const input = NumberInputUniDriver(base, body);
12
+
13
+ return {
14
+ ...baseUniDriverFactory(base),
15
+ getLabel: async () => {
16
+ const labelEl = await formField.getLabel();
17
+ return labelEl?.textContent ?? '';
18
+ },
19
+ getValue: () => input.getValue(),
20
+ enterText: (value: string) => input.enterText(value),
21
+ hasError: () => formField.hasStatus('error'),
22
+ getErrorMessage: () => formField.getStatusMessage(),
23
+ isRequired: () => formField.isRequired(),
24
+ };
25
+ }
@@ -0,0 +1,67 @@
1
+ import React from 'react';
2
+ import { FormField, NumberInput } from '@wix/design-system';
3
+ import { observer } from 'mobx-react-lite';
4
+ import { useWixPatternsContainer } from '@wix/bex-core/react';
5
+ import { useController } from '@wix/bex-core/form';
6
+
7
+ import { BaseInputProps } from '../../types/base-input';
8
+ import { isGreaterThan, isLessThan } from '../../validations/number';
9
+
10
+ export interface FormNumberProps extends BaseInputProps<number | null> {}
11
+
12
+ const _FormNumber = (props: FormNumberProps) => {
13
+ const { field, dataHook, formControl, data } = props;
14
+
15
+ const { translate: t } = useWixPatternsContainer();
16
+
17
+ const numberRange = field.validation?.numberRange;
18
+ const min = numberRange?.min;
19
+ const max = numberRange?.max;
20
+
21
+ const controller = useController({
22
+ name: field.id,
23
+ control: formControl,
24
+ defaultValue: data?.[field.id],
25
+ rules: {
26
+ validate: (value) => {
27
+ if (
28
+ field.validation?.required &&
29
+ (value === null || value === undefined || value === '')
30
+ ) {
31
+ return t('cairo.fieldValidation.requiredField');
32
+ }
33
+
34
+ if (value !== null && value !== undefined) {
35
+ if (min !== undefined && isLessThan(value, min)) {
36
+ return t('cairo.fieldValidation.minNumber', { minAmount: min });
37
+ }
38
+ if (max !== undefined && isGreaterThan(value, max)) {
39
+ return t('cairo.fieldValidation.maxNumber', { maxAmount: max });
40
+ }
41
+ }
42
+
43
+ return true;
44
+ },
45
+ },
46
+ });
47
+
48
+ return (
49
+ <FormField
50
+ label={field.displayName}
51
+ required={field.validation?.required}
52
+ status={controller.fieldState.error ? 'error' : undefined}
53
+ statusMessage={controller.fieldState.error?.message}
54
+ dataHook={dataHook}
55
+ >
56
+ <NumberInput
57
+ value={controller.field.value ?? undefined}
58
+ onChange={(e) => controller.field.onChange(e)}
59
+ onBlur={controller.field.onBlur}
60
+ inputRef={controller.field.ref}
61
+ dataHook={`number-${field.id}`}
62
+ />
63
+ </FormField>
64
+ );
65
+ };
66
+
67
+ export const FormNumber = observer(_FormNumber);
@@ -1 +1,2 @@
1
1
  export * from './cell-number-input';
2
+ export * from './form-number';
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "cellreferenceinput905880240";
8
+ var _namespace_ = "cellreferenceinput2634747470";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"cellreferenceinput905880240__root","autocomplete":"cellreferenceinput905880240__autocomplete"};
16
+ export var classes = {"root":"cellreferenceinput2634747470__root","autocomplete":"cellreferenceinput2634747470__autocomplete"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontentdefaultvalueinput736114662";
8
+ var _namespace_ = "richcontentdefaultvalueinput2663839494";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontentdefaultvalueinput736114662__root","richContentEditorContainer":"richcontentdefaultvalueinput736114662__richContentEditorContainer","editor":"richcontentdefaultvalueinput736114662__editor"};
16
+ export var classes = {"root":"richcontentdefaultvalueinput2663839494__root","richContentEditorContainer":"richcontentdefaultvalueinput2663839494__richContentEditorContainer","editor":"richcontentdefaultvalueinput2663839494__editor"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontentforminput3777550514";
8
+ var _namespace_ = "richcontentforminput2084404769";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontentforminput3777550514__root","editor":"richcontentforminput3777550514__editor"};
16
+ export var classes = {"root":"richcontentforminput2084404769__root","editor":"richcontentforminput2084404769__editor"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontentformreadonlyinput3358668425";
8
+ var _namespace_ = "richcontentformreadonlyinput2046372641";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontentformreadonlyinput3358668425__root"};
16
+ export var classes = {"root":"richcontentformreadonlyinput2046372641__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "fullscreenmodal3348958126";
8
+ var _namespace_ = "fullscreenmodal494200678";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"fullscreenmodal3348958126__root","modalContent":"fullscreenmodal3348958126__modalContent"};
16
+ export var classes = {"root":"fullscreenmodal494200678__root","modalContent":"fullscreenmodal494200678__modalContent"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "publishloader3887750119";
8
+ var _namespace_ = "publishloader3698165698";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"publishloader3887750119__root","publishLoader":"publishloader3887750119__publishLoader"};
16
+ export var classes = {"root":"publishloader3698165698__root","publishLoader":"publishloader3698165698__publishLoader"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "togglefullscreenbutton1189231771";
8
+ var _namespace_ = "togglefullscreenbutton240346221";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"togglefullscreenbutton1189231771__root"};
16
+ export var classes = {"root":"togglefullscreenbutton240346221__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontenteditor1227167218";
8
+ var _namespace_ = "richcontenteditor1214222774";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontenteditor1227167218__root","toolbarContainer":"richcontenteditor1227167218__toolbarContainer","footerToolbarContainer":"richcontenteditor1227167218__footerToolbarContainer","toolbarAndFullScreenButtonWrapper":"richcontenteditor1227167218__toolbarAndFullScreenButtonWrapper","editor":"richcontenteditor1227167218__editor","modalEditor":"richcontenteditor1227167218__modalEditor"};
16
+ export var classes = {"root":"richcontenteditor1214222774__root","toolbarContainer":"richcontenteditor1214222774__toolbarContainer","footerToolbarContainer":"richcontenteditor1214222774__footerToolbarContainer","toolbarAndFullScreenButtonWrapper":"richcontenteditor1214222774__toolbarAndFullScreenButtonWrapper","editor":"richcontenteditor1214222774__editor","modalEditor":"richcontenteditor1214222774__modalEditor"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontenttoolbar2231298574";
8
+ var _namespace_ = "richcontenttoolbar647559125";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontenttoolbar2231298574__root","toolbar":"richcontenttoolbar2231298574__toolbar","toolbarButton":"richcontenttoolbar2231298574__toolbarButton"};
16
+ export var classes = {"root":"richcontenttoolbar647559125__root","toolbar":"richcontenttoolbar647559125__toolbar","toolbarButton":"richcontenttoolbar647559125__toolbarButton"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richcontentviewer1117074979";
8
+ var _namespace_ = "richcontentviewer4124111482";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richcontentviewer1117074979__root","viewer":"richcontentviewer1117074979__viewer","modalViewer":"richcontentviewer1117074979__modalViewer"};
16
+ export var classes = {"root":"richcontentviewer4124111482__root","viewer":"richcontentviewer4124111482__viewer","modalViewer":"richcontentviewer4124111482__modalViewer"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richeditor551068837";
8
+ var _namespace_ = "richeditor3766248638";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richeditor551068837__root","editor":"richeditor551068837__editor","header-one":"richeditor551068837__header-one","header-two":"richeditor551068837__header-two","header-three":"richeditor551068837__header-three","header-four":"richeditor551068837__header-four","header-five":"richeditor551068837__header-five","header-six":"richeditor551068837__header-six","paragraph-one":"richeditor551068837__paragraph-one","unstyled":"richeditor551068837__unstyled","paragraph-three":"richeditor551068837__paragraph-three","align-left":"richeditor551068837__align-left","align-right":"richeditor551068837__align-right","align-center":"richeditor551068837__align-center","align-justify":"richeditor551068837__align-justify","withMargin":"richeditor551068837__withMargin","dir-rtl":"richeditor551068837__dir-rtl"};
16
+ export var classes = {"root":"richeditor3766248638__root","editor":"richeditor3766248638__editor","header-one":"richeditor3766248638__header-one","header-two":"richeditor3766248638__header-two","header-three":"richeditor3766248638__header-three","header-four":"richeditor3766248638__header-four","header-five":"richeditor3766248638__header-five","header-six":"richeditor3766248638__header-six","paragraph-one":"richeditor3766248638__paragraph-one","unstyled":"richeditor3766248638__unstyled","paragraph-three":"richeditor3766248638__paragraph-three","align-left":"richeditor3766248638__align-left","align-right":"richeditor3766248638__align-right","align-center":"richeditor3766248638__align-center","align-justify":"richeditor3766248638__align-justify","withMargin":"richeditor3766248638__withMargin","dir-rtl":"richeditor3766248638__dir-rtl"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "richtexteditor1154821563";
8
+ var _namespace_ = "richtexteditor861894303";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"richtexteditor1154821563__root","nativeInput":"richtexteditor1154821563__nativeInput","editor":"richtexteditor1154821563__editor"};
16
+ export var classes = {"root":"richtexteditor861894303__root","nativeInput":"richtexteditor861894303__nativeInput","editor":"richtexteditor861894303__editor"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "toolbar3162817796";
8
+ var _namespace_ = "toolbar3272803868";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"toolbar3162817796__root","item":"toolbar3162817796__item","separator":"toolbar3162817796__separator","clearFormatting":"toolbar3162817796__clearFormatting","fullScreen":"toolbar3162817796__fullScreen","dropdownItemContent":"toolbar3162817796__dropdownItemContent","dropdownItemTitle":"toolbar3162817796__dropdownItemTitle","dropdownItemSubtitle":"toolbar3162817796__dropdownItemSubtitle","dropdownHeaderOne":"toolbar3162817796__dropdownHeaderOne","dropdownHeaderTwo":"toolbar3162817796__dropdownHeaderTwo","dropdownHeaderThree":"toolbar3162817796__dropdownHeaderThree","dropdownHeaderFour":"toolbar3162817796__dropdownHeaderFour","dropdownHeaderFive":"toolbar3162817796__dropdownHeaderFive","dropdownHeaderSix":"toolbar3162817796__dropdownHeaderSix","dropdownParagraphOne":"toolbar3162817796__dropdownParagraphOne","dropdownNormalText":"toolbar3162817796__dropdownNormalText","dropdownParagraphThree":"toolbar3162817796__dropdownParagraphThree"};
16
+ export var classes = {"root":"toolbar3272803868__root","item":"toolbar3272803868__item","separator":"toolbar3272803868__separator","clearFormatting":"toolbar3272803868__clearFormatting","fullScreen":"toolbar3272803868__fullScreen","dropdownItemContent":"toolbar3272803868__dropdownItemContent","dropdownItemTitle":"toolbar3272803868__dropdownItemTitle","dropdownItemSubtitle":"toolbar3272803868__dropdownItemSubtitle","dropdownHeaderOne":"toolbar3272803868__dropdownHeaderOne","dropdownHeaderTwo":"toolbar3272803868__dropdownHeaderTwo","dropdownHeaderThree":"toolbar3272803868__dropdownHeaderThree","dropdownHeaderFour":"toolbar3272803868__dropdownHeaderFour","dropdownHeaderFive":"toolbar3272803868__dropdownHeaderFive","dropdownHeaderSix":"toolbar3272803868__dropdownHeaderSix","dropdownParagraphOne":"toolbar3272803868__dropdownParagraphOne","dropdownNormalText":"toolbar3272803868__dropdownNormalText","dropdownParagraphThree":"toolbar3272803868__dropdownParagraphThree"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -0,0 +1,26 @@
1
+ import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
2
+ import {
3
+ FormFieldUniDriver,
4
+ InputAreaUniDriver,
5
+ } from '@wix/design-system/dist/testkit/unidriver';
6
+
7
+ import { baseUniDriverFactory } from '../../testkit/base-driver';
8
+
9
+ export function FormLongTextDriver(base: UniDriver, body: UniDriver) {
10
+ const formField = FormFieldUniDriver(base, body);
11
+ const inputBase = base.$(`[data-hook^="long-text-"]`);
12
+ const input = InputAreaUniDriver(inputBase, body);
13
+
14
+ return {
15
+ ...baseUniDriverFactory(base),
16
+ getLabel: async () => {
17
+ const labelEl = await formField.getLabel();
18
+ return labelEl?.textContent ?? '';
19
+ },
20
+ getValue: () => input.getValue(),
21
+ enterText: (value: string) => input.enterText(value),
22
+ hasError: () => formField.hasStatus('error'),
23
+ getErrorMessage: () => formField.getStatusMessage(),
24
+ isRequired: () => formField.isRequired(),
25
+ };
26
+ }
@@ -0,0 +1,51 @@
1
+ import React from 'react';
2
+ import { FormField, InputArea } from '@wix/design-system';
3
+ import { observer } from 'mobx-react-lite';
4
+ import { useWixPatternsContainer } from '@wix/bex-core/react';
5
+ import { useController } from '@wix/bex-core/form';
6
+
7
+ import { BaseInputProps } from '../../types/base-input';
8
+ import { isEmpty } from '../../validations/string';
9
+
10
+ export interface FormLongTextProps extends BaseInputProps<string> {}
11
+
12
+ const _FormLongText = (props: FormLongTextProps) => {
13
+ const { field, dataHook, formControl, data } = props;
14
+
15
+ const { translate: t } = useWixPatternsContainer();
16
+
17
+ const controller = useController({
18
+ name: field.id,
19
+ control: formControl,
20
+ defaultValue: data?.[field.id],
21
+ rules: {
22
+ validate: (value) => {
23
+ if (field.validation?.required && isEmpty(value)) {
24
+ return t('cairo.fieldValidation.requiredField');
25
+ }
26
+
27
+ return true;
28
+ },
29
+ },
30
+ });
31
+
32
+ return (
33
+ <FormField
34
+ label={field.displayName}
35
+ required={field.validation?.required}
36
+ status={controller.fieldState.error ? 'error' : undefined}
37
+ statusMessage={controller.fieldState.error?.message}
38
+ dataHook={dataHook}
39
+ >
40
+ <InputArea
41
+ value={controller.field.value}
42
+ onChange={(e) => controller.field.onChange?.(e.target.value)}
43
+ onBlur={controller.field.onBlur}
44
+ ref={controller.field.ref}
45
+ dataHook={`long-text-${field.id}`}
46
+ />
47
+ </FormField>
48
+ );
49
+ };
50
+
51
+ export const FormLongText = observer(_FormLongText);
@@ -1,4 +1,5 @@
1
1
  export * from './text-view';
2
2
  export * from './cell-text-input';
3
3
  export * from './cell-autocomplete-input';
4
+ export * from './form-long-text';
4
5
  export * from './form-short-text';
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "textview780991294";
8
+ var _namespace_ = "textview2761560688";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"textview780991294__root","textView":"textview780991294__textView"};
16
+ export var classes = {"root":"textview2761560688__root","textView":"textview2761560688__textView"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -0,0 +1,104 @@
1
+ import React, {
2
+ forwardRef,
3
+ useCallback,
4
+ useEffect,
5
+ useMemo,
6
+ useRef,
7
+ } from 'react';
8
+ import {
9
+ TimeInput as WSRTimeInput,
10
+ CloseButton,
11
+ type TimeInputImperativeActions,
12
+ type TimeInputProps as WSRTimeInputProps,
13
+ } from '@wix/design-system';
14
+ import { useTranslations } from '../../hooks/use-translations';
15
+ import { dateToTime, timeToDate, type Time } from './hooks';
16
+
17
+ export interface CellTimeInputProps {
18
+ value?: Time | null;
19
+ onChange?: (value: Time | null) => void;
20
+ onCommit?: () => void;
21
+ inputRef?: React.MutableRefObject<{ focus: () => void } | null | undefined>;
22
+ dataHook?: string;
23
+ placeholder?: string;
24
+ step?: WSRTimeInputProps['step'];
25
+ }
26
+
27
+ /**
28
+ * Cell-layer Time input. Wraps WDS `<TimeInput>` with cell-edit semantics:
29
+ * - `value`/`onChange` use the `Time` string format (`hh:mm:ss.SSS`);
30
+ * conversion to/from `Date` for the WDS boundary happens via
31
+ * `timeToDate`/`dateToTime`.
32
+ * - WDS `onChange` (fires on option click and on blur with a parsed custom
33
+ * value) forwards a `Time` string to `onChange`, then schedules `onCommit`
34
+ * on a microtask so WDS's two-phase change (synchronous blur + async
35
+ * selection callback) collapses into a single commit.
36
+ * - Clear button (X) suffix clears the value and commits.
37
+ * - Locale is sourced from i18n so the dropdown's 12/24h cycle matches the
38
+ * format rendered by `<TimeView>` in view mode.
39
+ */
40
+ export const CellTimeInput = forwardRef<
41
+ TimeInputImperativeActions,
42
+ CellTimeInputProps
43
+ >(({ value, onChange, onCommit, dataHook, placeholder, step = 15 }) => {
44
+ const { i18n } = useTranslations();
45
+
46
+ const dateValue = useMemo(
47
+ () => (value ? timeToDate(value) : undefined),
48
+ [value],
49
+ );
50
+
51
+ const wsrRef = useRef<TimeInputImperativeActions | null>(null);
52
+
53
+ useEffect(() => {
54
+ wsrRef.current?.focus();
55
+ }, []);
56
+
57
+ const handleChange = useCallback(
58
+ ({ date }: { date: Date | null }) => {
59
+ const newTime = date ? dateToTime(date) : null;
60
+ if (newTime === value) {
61
+ return;
62
+ }
63
+ onChange?.(newTime);
64
+ onCommit?.();
65
+ },
66
+ [onChange, onCommit, value],
67
+ );
68
+
69
+ const handleClear = useCallback(() => {
70
+ onChange?.(null);
71
+ onCommit?.();
72
+ }, [onChange, onCommit]);
73
+
74
+ return (
75
+ <WSRTimeInput
76
+ dataHook={dataHook}
77
+ ref={wsrRef}
78
+ size="small"
79
+ border="none"
80
+ step={step}
81
+ timeStyle="short"
82
+ width="100%"
83
+ locale={i18n.language as WSRTimeInputProps['locale']}
84
+ placeholder={placeholder ?? 'hh:mm'}
85
+ autoSelect={false}
86
+ value={dateValue ?? null}
87
+ onChange={handleChange}
88
+ popoverProps={{ appendTo: 'window', moveBy: { y: 4 } }}
89
+ suffix={
90
+ value ? (
91
+ <CloseButton
92
+ as="button"
93
+ size="small"
94
+ skin="standardFilled"
95
+ onClick={handleClear}
96
+ dataHook="cell-time-input-clear"
97
+ />
98
+ ) : undefined
99
+ }
100
+ />
101
+ );
102
+ });
103
+
104
+ CellTimeInput.displayName = 'CellTimeInput';
@@ -1,3 +1,4 @@
1
1
  export * from './time-input';
2
+ export * from './cell-time-input';
2
3
  export * from './form-time-input';
3
4
  export * from './hooks';