@wix/patterns-fields 1.36.0 → 1.38.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.
- package/dist/cjs/components/address/form-address.driver.js +17 -0
- package/dist/cjs/components/address/form-address.driver.js.map +1 -0
- package/dist/cjs/components/address/form-address.js +66 -0
- package/dist/cjs/components/address/form-address.js.map +1 -0
- package/dist/cjs/components/address/index.js +6 -0
- package/dist/cjs/components/address/index.js.map +1 -1
- package/dist/cjs/components/address/input/address-input.js +10 -2
- package/dist/cjs/components/address/input/address-input.js.map +1 -1
- package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
- package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
- package/dist/cjs/components/address/view/cell-address-view.js +49 -0
- package/dist/cjs/components/address/view/cell-address-view.js.map +1 -0
- package/dist/cjs/components/address/view/index.js +6 -0
- package/dist/cjs/components/address/view/index.js.map +1 -1
- package/dist/cjs/components/array/form-array.driver.js +18 -0
- package/dist/cjs/components/array/form-array.driver.js.map +1 -0
- package/dist/cjs/components/array/form-array.js +114 -0
- package/dist/cjs/components/array/form-array.js.map +1 -0
- package/dist/cjs/components/array/index.js +10 -0
- package/dist/cjs/components/array/index.js.map +1 -0
- package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
- package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
- package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
- package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
- package/dist/cjs/components/audio/audio-field/form-audio.driver.js +21 -0
- package/dist/cjs/components/audio/audio-field/form-audio.driver.js.map +1 -0
- package/dist/cjs/components/audio/audio-field/form-audio.js +65 -0
- package/dist/cjs/components/audio/audio-field/form-audio.js.map +1 -0
- package/dist/cjs/components/audio/audio-field/index.js +6 -0
- package/dist/cjs/components/audio/audio-field/index.js.map +1 -1
- package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
- package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
- package/dist/cjs/components/boolean/form-checkbox.driver.js +1 -1
- package/dist/cjs/components/boolean/form-checkbox.driver.js.map +1 -1
- package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
- package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
- package/dist/cjs/components/color-view/form-color.driver.js +22 -0
- package/dist/cjs/components/color-view/form-color.driver.js.map +1 -0
- package/dist/cjs/components/color-view/form-color.js +51 -0
- package/dist/cjs/components/color-view/form-color.js.map +1 -0
- package/dist/cjs/components/color-view/index.js +6 -0
- package/dist/cjs/components/color-view/index.js.map +1 -1
- package/dist/cjs/components/date-input/date-utils.js +13 -0
- package/dist/cjs/components/date-input/date-utils.js.map +1 -0
- package/dist/cjs/components/date-input/form-date-input.driver.js +22 -0
- package/dist/cjs/components/date-input/form-date-input.driver.js.map +1 -0
- package/dist/cjs/components/date-input/form-date-input.js +113 -0
- package/dist/cjs/components/date-input/form-date-input.js.map +1 -0
- package/dist/cjs/components/date-input/index.js +10 -0
- package/dist/cjs/components/date-input/index.js.map +1 -0
- package/dist/cjs/components/datetime-input/form-date-time.driver.js +31 -0
- package/dist/cjs/components/datetime-input/form-date-time.driver.js.map +1 -0
- package/dist/cjs/components/datetime-input/form-date-time.js +211 -0
- package/dist/cjs/components/datetime-input/form-date-time.js.map +1 -0
- package/dist/cjs/components/datetime-input/index.js +10 -0
- package/dist/cjs/components/datetime-input/index.js.map +1 -0
- package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
- package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
- package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
- package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
- package/dist/cjs/components/document/form-document.driver.js +19 -0
- package/dist/cjs/components/document/form-document.driver.js.map +1 -0
- package/dist/cjs/components/document/form-document.js +65 -0
- package/dist/cjs/components/document/form-document.js.map +1 -0
- package/dist/cjs/components/email/form-email.driver.js +22 -0
- package/dist/cjs/components/email/form-email.driver.js.map +1 -0
- package/dist/cjs/components/email/form-email.js +77 -0
- package/dist/cjs/components/email/form-email.js.map +1 -0
- package/dist/cjs/components/email/index.js +6 -0
- package/dist/cjs/components/email/index.js.map +1 -1
- package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
- package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
- package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
- package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
- package/dist/cjs/components/image/form-image-input.driver.js +24 -0
- package/dist/cjs/components/image/form-image-input.driver.js.map +1 -0
- package/dist/cjs/components/image/form-image-input.js +101 -0
- package/dist/cjs/components/image/form-image-input.js.map +1 -0
- package/dist/cjs/components/image/image-view-field.js +58 -0
- package/dist/cjs/components/image/image-view-field.js.map +1 -0
- package/dist/cjs/components/image/index.js +12 -0
- package/dist/cjs/components/image/index.js.map +1 -1
- package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
- package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
- package/dist/cjs/components/index.js +24 -0
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/{object → json-input}/form-json-input.js +1 -1
- package/dist/cjs/components/json-input/form-json-input.js.map +1 -0
- package/dist/cjs/components/json-input/index.js +16 -0
- package/dist/cjs/components/json-input/index.js.map +1 -0
- package/dist/cjs/components/{object → json-input}/json-input.js +1 -1
- package/dist/cjs/components/json-input/json-input.js.map +1 -0
- package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
- package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
- package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
- package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
- package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
- package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
- package/dist/cjs/components/media-gallery/form-media-gallery.driver.js +23 -0
- package/dist/cjs/components/media-gallery/form-media-gallery.driver.js.map +1 -0
- package/dist/cjs/components/media-gallery/form-media-gallery.js +69 -0
- package/dist/cjs/components/media-gallery/form-media-gallery.js.map +1 -0
- package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
- package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
- package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
- package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
- package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
- package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
- package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
- package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
- package/dist/cjs/components/multi-document/index.js +3 -1
- package/dist/cjs/components/multi-document/index.js.map +1 -1
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.driver.js +19 -0
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.driver.js.map +1 -0
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.js +64 -0
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.js.map +1 -0
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
- package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
- package/dist/cjs/components/number-input/form-number.driver.js +1 -1
- package/dist/cjs/components/number-input/form-number.driver.js.map +1 -1
- package/dist/cjs/components/number-input/form-number.js +4 -3
- package/dist/cjs/components/number-input/form-number.js.map +1 -1
- package/dist/cjs/components/object/form-object.driver.js +18 -0
- package/dist/cjs/components/object/form-object.driver.js.map +1 -0
- package/dist/cjs/components/object/form-object.js +95 -0
- package/dist/cjs/components/object/form-object.js.map +1 -0
- package/dist/cjs/components/object/index.js +4 -10
- package/dist/cjs/components/object/index.js.map +1 -1
- package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
- package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/form-rich-content.driver.js +18 -0
- package/dist/cjs/components/rich-content/form-rich-content.driver.js.map +1 -0
- package/dist/cjs/components/rich-content/form-rich-content.js +101 -0
- package/dist/cjs/components/rich-content/form-rich-content.js.map +1 -0
- package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
- package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
- package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
- 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
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +4 -4
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
- package/dist/cjs/components/rich-text/form-rich-text.driver.js +18 -0
- package/dist/cjs/components/rich-text/form-rich-text.driver.js.map +1 -0
- package/dist/cjs/components/rich-text/form-rich-text.js +93 -0
- package/dist/cjs/components/rich-text/form-rich-text.js.map +1 -0
- package/dist/cjs/components/rich-text/index.js +6 -0
- package/dist/cjs/components/rich-text/index.js.map +1 -1
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +4 -4
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
- package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
- package/dist/cjs/components/text/form-long-text.driver.js +2 -2
- package/dist/cjs/components/text/form-long-text.driver.js.map +1 -1
- package/dist/cjs/components/text/form-short-text.driver.js +2 -2
- package/dist/cjs/components/text/form-short-text.driver.js.map +1 -1
- package/dist/cjs/components/text/text-view.st.css.js +3 -3
- package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
- package/dist/cjs/components/time-input/form-time.driver.js +18 -0
- package/dist/cjs/components/time-input/form-time.driver.js.map +1 -0
- package/dist/cjs/components/time-input/form-time.js +92 -0
- package/dist/cjs/components/time-input/form-time.js.map +1 -0
- package/dist/cjs/components/time-input/index.js +6 -0
- package/dist/cjs/components/time-input/index.js.map +1 -1
- package/dist/cjs/components/url/form-url.driver.js +2 -2
- package/dist/cjs/components/url/form-url.driver.js.map +1 -1
- package/dist/cjs/components/video/form-video.driver.js +40 -0
- package/dist/cjs/components/video/form-video.driver.js.map +1 -0
- package/dist/cjs/components/video/form-video.js +364 -0
- package/dist/cjs/components/video/form-video.js.map +1 -0
- package/dist/cjs/components/video/index.js +7 -1
- package/dist/cjs/components/video/index.js.map +1 -1
- package/dist/cjs/components/video/use-video-preview.js +71 -0
- package/dist/cjs/components/video/use-video-preview.js.map +1 -0
- package/dist/cjs/components/video/video-view-field.js +205 -0
- package/dist/cjs/components/video/video-view-field.js.map +1 -0
- package/dist/cjs/exports/form-document-field.js +3 -1
- package/dist/cjs/exports/form-document-field.js.map +1 -1
- package/dist/cjs/exports/form-media-gallery-field.js +3 -1
- package/dist/cjs/exports/form-media-gallery-field.js.map +1 -1
- package/dist/cjs/exports/form-rich-content-input.js +3 -1
- package/dist/cjs/exports/form-rich-content-input.js.map +1 -1
- package/dist/cjs/styles.global.css +1 -1
- package/dist/cjs/testkit/base-driver.js +5 -0
- package/dist/cjs/testkit/base-driver.js.map +1 -1
- package/dist/cjs/testkit/patterns-fields-test-provider.js +6 -3
- package/dist/cjs/testkit/patterns-fields-test-provider.js.map +1 -1
- package/dist/cjs/utils/get-image-url.js +25 -0
- package/dist/cjs/utils/get-image-url.js.map +1 -0
- package/dist/cjs/utils/media-constants.js +19 -0
- package/dist/cjs/utils/media-constants.js.map +1 -0
- package/dist/cjs/validations/array.js +4 -1
- package/dist/cjs/validations/array.js.map +1 -1
- package/dist/cjs/validations/string.js +2 -1
- package/dist/cjs/validations/string.js.map +1 -1
- package/dist/cjs/validations/value.js +7 -0
- package/dist/cjs/validations/value.js.map +1 -0
- package/dist/esm/components/address/form-address.driver.js +13 -0
- package/dist/esm/components/address/form-address.driver.js.map +1 -0
- package/dist/esm/components/address/form-address.js +28 -0
- package/dist/esm/components/address/form-address.js.map +1 -0
- package/dist/esm/components/address/index.js +1 -0
- package/dist/esm/components/address/index.js.map +1 -1
- package/dist/esm/components/address/input/address-input.js +8 -1
- package/dist/esm/components/address/input/address-input.js.map +1 -1
- package/dist/esm/components/address/input/address-input.st.css.js +2 -2
- package/dist/esm/components/address/view/cell-address-view.js +12 -0
- package/dist/esm/components/address/view/cell-address-view.js.map +1 -0
- package/dist/esm/components/address/view/index.js +1 -0
- package/dist/esm/components/address/view/index.js.map +1 -1
- package/dist/esm/components/array/form-array.driver.js +14 -0
- package/dist/esm/components/array/form-array.driver.js.map +1 -0
- package/dist/esm/components/array/form-array.js +48 -0
- package/dist/esm/components/array/form-array.js.map +1 -0
- package/dist/esm/components/array/index.js +2 -0
- package/dist/esm/components/array/index.js.map +1 -0
- package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
- package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
- package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
- package/dist/esm/components/audio/audio-field/form-audio.driver.js +17 -0
- package/dist/esm/components/audio/audio-field/form-audio.driver.js.map +1 -0
- package/dist/esm/components/audio/audio-field/form-audio.js +28 -0
- package/dist/esm/components/audio/audio-field/form-audio.js.map +1 -0
- package/dist/esm/components/audio/audio-field/index.js +1 -0
- package/dist/esm/components/audio/audio-field/index.js.map +1 -1
- package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
- package/dist/esm/components/audio/audio-player/audio-player.st.css.js.map +1 -1
- package/dist/esm/components/boolean/form-checkbox.driver.js +1 -1
- package/dist/esm/components/boolean/form-checkbox.driver.js.map +1 -1
- package/dist/esm/components/color-view/color-view.st.css.js +2 -2
- package/dist/esm/components/color-view/color-view.st.css.js.map +1 -1
- package/dist/esm/components/color-view/form-color.driver.js +18 -0
- package/dist/esm/components/color-view/form-color.driver.js.map +1 -0
- package/dist/esm/components/color-view/form-color.js +17 -0
- package/dist/esm/components/color-view/form-color.js.map +1 -0
- package/dist/esm/components/color-view/index.js +1 -0
- package/dist/esm/components/color-view/index.js.map +1 -1
- package/dist/esm/components/date-input/date-utils.js +9 -0
- package/dist/esm/components/date-input/date-utils.js.map +1 -0
- package/dist/esm/components/date-input/form-date-input.driver.js +18 -0
- package/dist/esm/components/date-input/form-date-input.driver.js.map +1 -0
- package/dist/esm/components/date-input/form-date-input.js +66 -0
- package/dist/esm/components/date-input/form-date-input.js.map +1 -0
- package/dist/esm/components/date-input/index.js +2 -0
- package/dist/esm/components/date-input/index.js.map +1 -0
- package/dist/esm/components/datetime-input/form-date-time.driver.js +27 -0
- package/dist/esm/components/datetime-input/form-date-time.driver.js.map +1 -0
- package/dist/esm/components/datetime-input/form-date-time.js +141 -0
- package/dist/esm/components/datetime-input/form-date-time.js.map +1 -0
- package/dist/esm/components/datetime-input/index.js +2 -0
- package/dist/esm/components/datetime-input/index.js.map +1 -0
- package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
- package/dist/esm/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
- package/dist/esm/components/document/form-document-field.st.css.js +2 -2
- package/dist/esm/components/document/form-document-field.st.css.js.map +1 -1
- package/dist/esm/components/document/form-document.driver.js +15 -0
- package/dist/esm/components/document/form-document.driver.js.map +1 -0
- package/dist/esm/components/document/form-document.js +28 -0
- package/dist/esm/components/document/form-document.js.map +1 -0
- package/dist/esm/components/email/form-email.driver.js +18 -0
- package/dist/esm/components/email/form-email.driver.js.map +1 -0
- package/dist/esm/components/email/form-email.js +36 -0
- package/dist/esm/components/email/form-email.js.map +1 -0
- package/dist/esm/components/email/index.js +1 -0
- package/dist/esm/components/email/index.js.map +1 -1
- package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
- package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
- package/dist/esm/components/image/form-image-input.driver.js +20 -0
- package/dist/esm/components/image/form-image-input.driver.js.map +1 -0
- package/dist/esm/components/image/form-image-input.js +48 -0
- package/dist/esm/components/image/form-image-input.js.map +1 -0
- package/dist/esm/components/image/image-view-field.js +19 -0
- package/dist/esm/components/image/image-view-field.js.map +1 -0
- package/dist/esm/components/image/index.js +2 -0
- package/dist/esm/components/image/index.js.map +1 -1
- package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
- package/dist/esm/components/index.js +4 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/json-input/form-json-input.js.map +1 -0
- package/dist/esm/components/json-input/index.js +3 -0
- package/dist/esm/components/json-input/index.js.map +1 -0
- package/dist/esm/components/json-input/json-input.js.map +1 -0
- package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
- package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
- package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
- package/dist/esm/components/media-gallery/form-media-gallery.driver.js +19 -0
- package/dist/esm/components/media-gallery/form-media-gallery.driver.js.map +1 -0
- package/dist/esm/components/media-gallery/form-media-gallery.js +28 -0
- package/dist/esm/components/media-gallery/form-media-gallery.js.map +1 -0
- package/dist/esm/components/media-image/media-image.st.css.js +3 -3
- package/dist/esm/components/media-image/media-image.st.css.js.map +1 -1
- package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
- package/dist/esm/components/media-image/overlays/overlay.st.css.js.map +1 -1
- package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
- package/dist/esm/components/media-loader/media-loader.st.css.js.map +1 -1
- package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
- package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
- package/dist/esm/components/multi-document/index.js +1 -0
- package/dist/esm/components/multi-document/index.js.map +1 -1
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.driver.js +15 -0
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.driver.js.map +1 -0
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.js +28 -0
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.js.map +1 -0
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
- package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
- package/dist/esm/components/number-input/form-number.driver.js +1 -1
- package/dist/esm/components/number-input/form-number.driver.js.map +1 -1
- package/dist/esm/components/number-input/form-number.js +2 -2
- package/dist/esm/components/number-input/form-number.js.map +1 -1
- package/dist/esm/components/object/form-object.driver.js +14 -0
- package/dist/esm/components/object/form-object.driver.js.map +1 -0
- package/dist/esm/components/object/form-object.js +34 -0
- package/dist/esm/components/object/form-object.js.map +1 -0
- package/dist/esm/components/object/index.js +1 -2
- package/dist/esm/components/object/index.js.map +1 -1
- package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
- package/dist/esm/components/reference/cell-reference-input.st.css.js.map +1 -1
- package/dist/esm/components/rich-content/form-rich-content.driver.js +14 -0
- package/dist/esm/components/rich-content/form-rich-content.driver.js.map +1 -0
- package/dist/esm/components/rich-content/form-rich-content.js +37 -0
- package/dist/esm/components/rich-content/form-rich-content.js.map +1 -0
- package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
- package/dist/esm/components/rich-text/form-rich-text.driver.js +14 -0
- package/dist/esm/components/rich-text/form-rich-text.driver.js.map +1 -0
- package/dist/esm/components/rich-text/form-rich-text.js +34 -0
- package/dist/esm/components/rich-text/form-rich-text.js.map +1 -0
- package/dist/esm/components/rich-text/index.js +1 -0
- package/dist/esm/components/rich-text/index.js.map +1 -1
- package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
- package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +2 -2
- package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
- package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
- package/dist/esm/components/text/form-long-text.driver.js +2 -2
- package/dist/esm/components/text/form-long-text.driver.js.map +1 -1
- package/dist/esm/components/text/form-short-text.driver.js +2 -2
- package/dist/esm/components/text/form-short-text.driver.js.map +1 -1
- package/dist/esm/components/text/text-view.st.css.js +2 -2
- package/dist/esm/components/text/text-view.st.css.js.map +1 -1
- package/dist/esm/components/time-input/form-time.driver.js +14 -0
- package/dist/esm/components/time-input/form-time.driver.js.map +1 -0
- package/dist/esm/components/time-input/form-time.js +34 -0
- package/dist/esm/components/time-input/form-time.js.map +1 -0
- package/dist/esm/components/time-input/index.js +1 -0
- package/dist/esm/components/time-input/index.js.map +1 -1
- package/dist/esm/components/url/form-url.driver.js +2 -2
- package/dist/esm/components/url/form-url.driver.js.map +1 -1
- package/dist/esm/components/video/form-video.driver.js +36 -0
- package/dist/esm/components/video/form-video.driver.js.map +1 -0
- package/dist/esm/components/video/form-video.js +80 -0
- package/dist/esm/components/video/form-video.js.map +1 -0
- package/dist/esm/components/video/index.js +3 -0
- package/dist/esm/components/video/index.js.map +1 -1
- package/dist/esm/components/video/use-video-preview.js +71 -0
- package/dist/esm/components/video/use-video-preview.js.map +1 -0
- package/dist/esm/components/video/video-view-field.js +36 -0
- package/dist/esm/components/video/video-view-field.js.map +1 -0
- package/dist/esm/exports/form-document-field.js +1 -0
- package/dist/esm/exports/form-document-field.js.map +1 -1
- package/dist/esm/exports/form-media-gallery-field.js +1 -0
- package/dist/esm/exports/form-media-gallery-field.js.map +1 -1
- package/dist/esm/exports/form-rich-content-input.js +1 -0
- package/dist/esm/exports/form-rich-content-input.js.map +1 -1
- package/dist/esm/styles.global.css +1 -1
- package/dist/esm/testkit/base-driver.js +4 -0
- package/dist/esm/testkit/base-driver.js.map +1 -1
- package/dist/esm/testkit/patterns-fields-test-provider.js +1 -0
- package/dist/esm/testkit/patterns-fields-test-provider.js.map +1 -1
- package/dist/esm/utils/get-image-url.js +20 -0
- package/dist/esm/utils/get-image-url.js.map +1 -0
- package/dist/esm/utils/media-constants.js +12 -0
- package/dist/esm/utils/media-constants.js.map +1 -0
- package/dist/esm/validations/array.js +2 -0
- package/dist/esm/validations/array.js.map +1 -1
- package/dist/esm/validations/string.js +2 -1
- package/dist/esm/validations/string.js.map +1 -1
- package/dist/esm/validations/value.js +2 -0
- package/dist/esm/validations/value.js.map +1 -0
- package/dist/types/components/address/form-address.d.ts +9 -0
- package/dist/types/components/address/form-address.d.ts.map +1 -0
- package/dist/types/components/address/form-address.driver.d.ts +18 -0
- package/dist/types/components/address/form-address.driver.d.ts.map +1 -0
- package/dist/types/components/address/index.d.ts +1 -0
- package/dist/types/components/address/index.d.ts.map +1 -1
- package/dist/types/components/address/input/address-input.d.ts +8 -0
- package/dist/types/components/address/input/address-input.d.ts.map +1 -1
- package/dist/types/components/address/view/cell-address-view.d.ts +7 -0
- package/dist/types/components/address/view/cell-address-view.d.ts.map +1 -0
- package/dist/types/components/address/view/index.d.ts +1 -0
- package/dist/types/components/address/view/index.d.ts.map +1 -1
- package/dist/types/components/array/form-array.d.ts +8 -0
- package/dist/types/components/array/form-array.d.ts.map +1 -0
- package/dist/types/components/array/form-array.driver.d.ts +19 -0
- package/dist/types/components/array/form-array.driver.d.ts.map +1 -0
- package/dist/types/components/array/index.d.ts +2 -0
- package/dist/types/components/array/index.d.ts.map +1 -0
- package/dist/types/components/audio/audio-field/form-audio-field.st.css.d.ts.map +1 -1
- package/dist/types/components/audio/audio-field/form-audio.d.ts +8 -0
- package/dist/types/components/audio/audio-field/form-audio.d.ts.map +1 -0
- package/dist/types/components/audio/audio-field/form-audio.driver.d.ts +22 -0
- package/dist/types/components/audio/audio-field/form-audio.driver.d.ts.map +1 -0
- package/dist/types/components/audio/audio-field/index.d.ts +1 -0
- package/dist/types/components/audio/audio-field/index.d.ts.map +1 -1
- package/dist/types/components/audio/audio-player/audio-player.st.css.d.ts.map +1 -1
- package/dist/types/components/boolean/form-checkbox.driver.d.ts +2 -1
- package/dist/types/components/boolean/form-checkbox.driver.d.ts.map +1 -1
- package/dist/types/components/color-view/color-view.st.css.d.ts.map +1 -1
- package/dist/types/components/color-view/form-color.d.ts +8 -0
- package/dist/types/components/color-view/form-color.d.ts.map +1 -0
- package/dist/types/components/color-view/form-color.driver.d.ts +35 -0
- package/dist/types/components/color-view/form-color.driver.d.ts.map +1 -0
- package/dist/types/components/color-view/index.d.ts +1 -0
- package/dist/types/components/color-view/index.d.ts.map +1 -1
- package/dist/types/components/date-input/date-utils.d.ts +3 -0
- package/dist/types/components/date-input/date-utils.d.ts.map +1 -0
- package/dist/types/components/date-input/form-date-input.d.ts +8 -0
- package/dist/types/components/date-input/form-date-input.d.ts.map +1 -0
- package/dist/types/components/date-input/form-date-input.driver.d.ts +22 -0
- package/dist/types/components/date-input/form-date-input.driver.d.ts.map +1 -0
- package/dist/types/components/date-input/index.d.ts +2 -0
- package/dist/types/components/date-input/index.d.ts.map +1 -0
- package/dist/types/components/datetime-input/form-date-time.d.ts +8 -0
- package/dist/types/components/datetime-input/form-date-time.d.ts.map +1 -0
- package/dist/types/components/datetime-input/form-date-time.driver.d.ts +25 -0
- package/dist/types/components/datetime-input/form-date-time.driver.d.ts.map +1 -0
- package/dist/types/components/datetime-input/index.d.ts +2 -0
- package/dist/types/components/datetime-input/index.d.ts.map +1 -0
- package/dist/types/components/delete-dialog/delete-dialog.st.css.d.ts.map +1 -1
- package/dist/types/components/document/form-document-field.st.css.d.ts.map +1 -1
- package/dist/types/components/document/form-document.d.ts +8 -0
- package/dist/types/components/document/form-document.d.ts.map +1 -0
- package/dist/types/components/document/form-document.driver.d.ts +20 -0
- package/dist/types/components/document/form-document.driver.d.ts.map +1 -0
- package/dist/types/components/email/form-email.d.ts +8 -0
- package/dist/types/components/email/form-email.d.ts.map +1 -0
- package/dist/types/components/email/form-email.driver.d.ts +21 -0
- package/dist/types/components/email/form-email.driver.d.ts.map +1 -0
- package/dist/types/components/email/index.d.ts +1 -0
- package/dist/types/components/email/index.d.ts.map +1 -1
- package/dist/types/components/image/form-image-input.d.ts +8 -0
- package/dist/types/components/image/form-image-input.d.ts.map +1 -0
- package/dist/types/components/image/form-image-input.driver.d.ts +21 -0
- package/dist/types/components/image/form-image-input.driver.d.ts.map +1 -0
- package/dist/types/components/image/image-view-field.d.ts +8 -0
- package/dist/types/components/image/image-view-field.d.ts.map +1 -0
- package/dist/types/components/image/index.d.ts +2 -0
- package/dist/types/components/image/index.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +4 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/components/json-input/form-json-input.d.ts.map +1 -0
- package/dist/types/components/json-input/index.d.ts +3 -0
- package/dist/types/components/json-input/index.d.ts.map +1 -0
- package/dist/types/components/json-input/json-input.d.ts.map +1 -0
- package/dist/types/components/media-gallery/form-media-gallery.d.ts +10 -0
- package/dist/types/components/media-gallery/form-media-gallery.d.ts.map +1 -0
- package/dist/types/components/media-gallery/form-media-gallery.driver.d.ts +50 -0
- package/dist/types/components/media-gallery/form-media-gallery.driver.d.ts.map +1 -0
- package/dist/types/components/media-image/media-image.st.css.d.ts.map +1 -1
- package/dist/types/components/media-image/overlays/overlay.st.css.d.ts.map +1 -1
- package/dist/types/components/media-loader/media-loader.st.css.d.ts.map +1 -1
- package/dist/types/components/media-tag/web-media-tag/media-tag.st.css.d.ts.map +1 -1
- package/dist/types/components/multi-document/index.d.ts +1 -0
- package/dist/types/components/multi-document/index.d.ts.map +1 -1
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.d.ts +8 -0
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.d.ts.map +1 -0
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.driver.d.ts +20 -0
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.driver.d.ts.map +1 -0
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
- package/dist/types/components/number-input/form-number.d.ts.map +1 -1
- package/dist/types/components/number-input/form-number.driver.d.ts +2 -1
- package/dist/types/components/number-input/form-number.driver.d.ts.map +1 -1
- package/dist/types/components/object/form-object.d.ts +8 -0
- package/dist/types/components/object/form-object.d.ts.map +1 -0
- package/dist/types/components/object/form-object.driver.d.ts +19 -0
- package/dist/types/components/object/form-object.driver.d.ts.map +1 -0
- package/dist/types/components/object/index.d.ts +1 -2
- package/dist/types/components/object/index.d.ts.map +1 -1
- package/dist/types/components/reference/cell-reference-input.st.css.d.ts.map +1 -1
- package/dist/types/components/rich-content/form-rich-content.d.ts +9 -0
- package/dist/types/components/rich-content/form-rich-content.d.ts.map +1 -0
- package/dist/types/components/rich-content/form-rich-content.driver.d.ts +19 -0
- package/dist/types/components/rich-content/form-rich-content.driver.d.ts.map +1 -0
- package/dist/types/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.d.ts.map +1 -1
- 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
- package/dist/types/components/rich-text/form-rich-text.d.ts +8 -0
- package/dist/types/components/rich-text/form-rich-text.d.ts.map +1 -0
- package/dist/types/components/rich-text/form-rich-text.driver.d.ts +19 -0
- package/dist/types/components/rich-text/form-rich-text.driver.d.ts.map +1 -0
- package/dist/types/components/rich-text/index.d.ts +1 -0
- package/dist/types/components/rich-text/index.d.ts.map +1 -1
- package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.d.ts.map +1 -1
- package/dist/types/components/text/form-long-text.driver.d.ts +2 -1
- package/dist/types/components/text/form-long-text.driver.d.ts.map +1 -1
- package/dist/types/components/text/form-short-text.driver.d.ts +2 -1
- package/dist/types/components/text/form-short-text.driver.d.ts.map +1 -1
- package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
- package/dist/types/components/time-input/form-time.d.ts +8 -0
- package/dist/types/components/time-input/form-time.d.ts.map +1 -0
- package/dist/types/components/time-input/form-time.driver.d.ts +19 -0
- package/dist/types/components/time-input/form-time.driver.d.ts.map +1 -0
- package/dist/types/components/time-input/index.d.ts +1 -0
- package/dist/types/components/time-input/index.d.ts.map +1 -1
- package/dist/types/components/url/form-url.driver.d.ts +2 -1
- package/dist/types/components/url/form-url.driver.d.ts.map +1 -1
- package/dist/types/components/video/form-video.d.ts +8 -0
- package/dist/types/components/video/form-video.d.ts.map +1 -0
- package/dist/types/components/video/form-video.driver.d.ts +32 -0
- package/dist/types/components/video/form-video.driver.d.ts.map +1 -0
- package/dist/types/components/video/index.d.ts +6 -0
- package/dist/types/components/video/index.d.ts.map +1 -1
- package/dist/types/components/video/use-video-preview.d.ts +12 -0
- package/dist/types/components/video/use-video-preview.d.ts.map +1 -0
- package/dist/types/components/video/video-view-field.d.ts +8 -0
- package/dist/types/components/video/video-view-field.d.ts.map +1 -0
- package/dist/types/exports/form-document-field.d.ts +1 -0
- package/dist/types/exports/form-document-field.d.ts.map +1 -1
- package/dist/types/exports/form-media-gallery-field.d.ts +2 -0
- package/dist/types/exports/form-media-gallery-field.d.ts.map +1 -1
- package/dist/types/exports/form-rich-content-input.d.ts +2 -0
- package/dist/types/exports/form-rich-content-input.d.ts.map +1 -1
- package/dist/types/testkit/base-driver.d.ts +3 -0
- package/dist/types/testkit/base-driver.d.ts.map +1 -1
- package/dist/types/testkit/patterns-fields-test-provider.d.ts.map +1 -1
- package/dist/types/utils/get-image-url.d.ts +3 -0
- package/dist/types/utils/get-image-url.d.ts.map +1 -0
- package/dist/types/utils/media-constants.d.ts +12 -0
- package/dist/types/utils/media-constants.d.ts.map +1 -0
- package/dist/types/validations/array.d.ts +1 -0
- package/dist/types/validations/array.d.ts.map +1 -1
- package/dist/types/validations/string.d.ts.map +1 -1
- package/dist/types/validations/value.d.ts +2 -0
- package/dist/types/validations/value.d.ts.map +1 -0
- package/package.json +5 -5
- package/src/__tests__/components/address/form-address.spec.tsx +48 -0
- package/src/__tests__/components/array/form-array.spec.tsx +61 -0
- package/src/__tests__/components/audio/form-audio.spec.tsx +63 -0
- package/src/__tests__/components/color-view/form-color.spec.tsx +49 -0
- package/src/__tests__/components/date-input/form-date-input.spec.tsx +43 -0
- package/src/__tests__/components/datetime-input/form-date-time.spec.tsx +61 -0
- package/src/__tests__/components/document/form-document.spec.tsx +54 -0
- package/src/__tests__/components/email/form-email.spec.tsx +85 -0
- package/src/__tests__/components/image/form-image-input.spec.tsx +65 -0
- package/src/__tests__/components/image/image-view-field.spec.tsx +55 -0
- package/src/__tests__/components/media-gallery/form-media-gallery.spec.tsx +74 -0
- package/src/__tests__/components/multi-document/form-multi-document.spec.tsx +60 -0
- package/src/__tests__/components/object/form-object.spec.tsx +61 -0
- package/src/__tests__/components/rich-content/form-rich-content.spec.tsx +80 -0
- package/src/__tests__/components/rich-text/form-rich-text.spec.tsx +79 -0
- package/src/__tests__/components/time-input/form-time.spec.tsx +61 -0
- package/src/__tests__/components/video/form-video.spec.tsx +84 -0
- package/src/__tests__/components/video/video-view-field.spec.tsx +52 -0
- package/src/__tests__/form-field.driver.tsx +36 -9
- package/src/components/address/form-address.driver.ts +19 -0
- package/src/components/address/form-address.tsx +53 -0
- package/src/components/address/index.ts +1 -0
- package/src/components/address/input/address-input.st.css.ts +2 -2
- package/src/components/address/input/address-input.tsx +16 -0
- package/src/components/address/view/cell-address-view.tsx +29 -0
- package/src/components/address/view/index.ts +1 -1
- package/src/components/array/form-array.driver.ts +20 -0
- package/src/components/array/form-array.tsx +100 -0
- package/src/components/array/index.ts +1 -0
- package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
- package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
- package/src/components/audio/audio-field/form-audio.driver.ts +29 -0
- package/src/components/audio/audio-field/form-audio.tsx +51 -0
- package/src/components/audio/audio-field/index.ts +1 -0
- package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
- package/src/components/boolean/form-checkbox.driver.ts +6 -1
- package/src/components/color-view/color-view.st.css.ts +2 -2
- package/src/components/color-view/form-color.driver.ts +34 -0
- package/src/components/color-view/form-color.tsx +38 -0
- package/src/components/color-view/index.ts +1 -0
- package/src/components/date-input/date-utils.ts +10 -0
- package/src/components/date-input/form-date-input.driver.ts +32 -0
- package/src/components/date-input/form-date-input.tsx +102 -0
- package/src/components/date-input/index.ts +1 -0
- package/src/components/datetime-input/form-date-time.driver.ts +42 -0
- package/src/components/datetime-input/form-date-time.tsx +203 -0
- package/src/components/datetime-input/index.ts +1 -0
- package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
- package/src/components/document/form-document-field.st.css.ts +2 -2
- package/src/components/document/form-document.driver.ts +26 -0
- package/src/components/document/form-document.tsx +51 -0
- package/src/components/email/form-email.driver.ts +27 -0
- package/src/components/email/form-email.tsx +58 -0
- package/src/components/email/index.ts +1 -0
- package/src/components/exclamation/exclamation.st.css.ts +2 -2
- package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
- package/src/components/image/form-image-input.driver.ts +31 -0
- package/src/components/image/form-image-input.tsx +83 -0
- package/src/components/image/image-view-field.tsx +48 -0
- package/src/components/image/index.ts +2 -0
- package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
- package/src/components/index.ts +4 -0
- package/src/components/json-input/index.ts +2 -0
- package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
- package/src/components/media-control/paste-url-button.st.css.ts +2 -2
- package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
- package/src/components/media-gallery/form-media-gallery.driver.ts +30 -0
- package/src/components/media-gallery/form-media-gallery.tsx +55 -0
- package/src/components/media-image/media-image.st.css.ts +3 -3
- package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
- package/src/components/media-loader/media-loader.st.css.ts +2 -2
- package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
- package/src/components/multi-document/index.ts +1 -0
- package/src/components/multi-document/multi-document-input/form-multi-document.driver.ts +26 -0
- package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
- package/src/components/multi-document/multi-document-input/form-multi-document.tsx +50 -0
- package/src/components/number-input/form-number.driver.ts +6 -1
- package/src/components/number-input/form-number.tsx +2 -4
- package/src/components/object/form-object.driver.ts +20 -0
- package/src/components/object/form-object.tsx +85 -0
- package/src/components/object/index.ts +1 -2
- package/src/components/reference/cell-reference-input.st.css.ts +2 -2
- package/src/components/rich-content/form-rich-content.driver.ts +20 -0
- package/src/components/rich-content/form-rich-content.tsx +94 -0
- package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
- package/src/components/rich-text/form-rich-text.driver.ts +20 -0
- package/src/components/rich-text/form-rich-text.tsx +82 -0
- package/src/components/rich-text/index.ts +1 -0
- package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
- package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +2 -2
- package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
- package/src/components/text/form-long-text.driver.ts +7 -2
- package/src/components/text/form-short-text.driver.ts +7 -2
- package/src/components/text/text-view.st.css.ts +2 -2
- package/src/components/time-input/form-time.driver.ts +20 -0
- package/src/components/time-input/form-time.tsx +82 -0
- package/src/components/time-input/index.ts +1 -0
- package/src/components/url/form-url.driver.ts +3 -2
- package/src/components/video/form-video.driver.ts +48 -0
- package/src/components/video/form-video.tsx +244 -0
- package/src/components/video/index.ts +6 -0
- package/src/components/video/use-video-preview.ts +78 -0
- package/src/components/video/video-view-field.tsx +127 -0
- package/src/exports/form-document-field.ts +1 -0
- package/src/exports/form-media-gallery-field.ts +2 -0
- package/src/exports/form-rich-content-input.ts +2 -0
- package/src/styles.global.css +1 -1
- package/src/testkit/base-driver.ts +7 -0
- package/src/testkit/patterns-fields-test-provider.tsx +1 -0
- package/src/utils/get-image-url.ts +22 -0
- package/src/utils/media-constants.ts +14 -0
- package/src/validations/array.ts +6 -0
- package/src/validations/string.ts +3 -1
- package/src/validations/value.ts +2 -0
- package/dist/cjs/components/object/form-json-input.js.map +0 -1
- package/dist/cjs/components/object/json-input.js.map +0 -1
- package/dist/esm/components/object/form-json-input.js.map +0 -1
- package/dist/esm/components/object/json-input.js.map +0 -1
- package/dist/types/components/object/form-json-input.d.ts.map +0 -1
- package/dist/types/components/object/json-input.d.ts.map +0 -1
- /package/dist/esm/components/{object → json-input}/form-json-input.js +0 -0
- /package/dist/esm/components/{object → json-input}/json-input.js +0 -0
- /package/dist/types/components/{object → json-input}/form-json-input.d.ts +0 -0
- /package/dist/types/components/{object → json-input}/json-input.d.ts +0 -0
- /package/src/components/{object → json-input}/form-json-input.tsx +0 -0
- /package/src/components/{object → json-input}/json-input.tsx +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-image-url.d.ts","sourceRoot":"","sources":["../../../src/utils/get-image-url.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,UAAW,MAAM,GAAG,SAAS,GAAG,IAAI,uBAU3D,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOlD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared media dimension constants for consistent sizing across form fields.
|
|
3
|
+
* These values ensure media thumbnails maintain a consistent appearance
|
|
4
|
+
* in entity page forms, matching CMS-WEB behavior.
|
|
5
|
+
*/
|
|
6
|
+
/** Height for media thumbnails in form fields */
|
|
7
|
+
export declare const MEDIA_HEIGHT = "120px";
|
|
8
|
+
/** Maximum width for media thumbnails to prevent oversized display */
|
|
9
|
+
export declare const MEDIA_MAX_WIDTH = "240px";
|
|
10
|
+
/** Border radius for media thumbnails in view mode */
|
|
11
|
+
export declare const MEDIA_BORDER_RADIUS = "8px";
|
|
12
|
+
//# sourceMappingURL=media-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-constants.d.ts","sourceRoot":"","sources":["../../../src/utils/media-constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,iDAAiD;AACjD,eAAO,MAAM,YAAY,UAAU,CAAC;AAEpC,sEAAsE;AACtE,eAAO,MAAM,eAAe,UAAU,CAAC;AAEvC,sDAAsD;AACtD,eAAO,MAAM,mBAAmB,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/validations/array.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/validations/array.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,SAAU,GAAG,kBAEhC,CAAC;AAEF,eAAO,MAAM,OAAO,UACX,SAAS,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,KAC3C,OAAoD,CAAC;AAExD,eAAO,MAAM,WAAW,SAAU,GAAG,QAgBpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/validations/string.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/validations/string.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,UAAW,MAAM,GAAG,IAAI,GAAG,SAAS,KAAG,OACtB,CAAC;AAEtC,eAAO,MAAM,aAAa,UAAW,MAAM,OAAO,MAAM,KAAG,OACvC,CAAC;AAErB,eAAO,MAAM,YAAY,UAAW,MAAM,OAAO,MAAM,KAAG,OACtC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../src/validations/value.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAW,OAAO,8BACC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/patterns-fields",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.38.0",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Kobi",
|
|
@@ -112,9 +112,10 @@
|
|
|
112
112
|
"@wix/atlas": "^1.0.35",
|
|
113
113
|
"@wix/data": "^1.0.323",
|
|
114
114
|
"@wix/media": "^1.0.231",
|
|
115
|
-
"@wix/patterns-fields-utils": "1.
|
|
115
|
+
"@wix/patterns-fields-utils": "1.19.0",
|
|
116
116
|
"@wix/rich-content": "1.0.37",
|
|
117
117
|
"@wix/ricos": "^10.155.2",
|
|
118
|
+
"@wix/sdk": "^1.17.2",
|
|
118
119
|
"@wix/wix-ui-icons-common": "^3.100.0",
|
|
119
120
|
"color": "^2.0.1",
|
|
120
121
|
"draft-js": "^0.11.7",
|
|
@@ -139,11 +140,10 @@
|
|
|
139
140
|
"@types/jest": "^27.5.2",
|
|
140
141
|
"@types/lodash": "^4.17.20",
|
|
141
142
|
"@types/react": "^16.14.68",
|
|
142
|
-
"@wix/bex-core": "2.
|
|
143
|
+
"@wix/bex-core": "2.316.0",
|
|
143
144
|
"@wix/design-system": "^1.271.0",
|
|
144
145
|
"@wix/eslint-config-yoshi": "^6.74.0",
|
|
145
146
|
"@wix/jest-yoshi-preset": "^6.74.0",
|
|
146
|
-
"@wix/sdk": "^1.17.2",
|
|
147
147
|
"@wix/wix-data-items-common": "^1.0.270",
|
|
148
148
|
"@wix/wix-ui-test-utils": "^1.3.3",
|
|
149
149
|
"@wix/yoshi-flow-library": "^6.74.0",
|
|
@@ -193,5 +193,5 @@
|
|
|
193
193
|
"type": "yoshi-flow-library"
|
|
194
194
|
}
|
|
195
195
|
},
|
|
196
|
-
"falconPackageHash": "
|
|
196
|
+
"falconPackageHash": "4e782960b38d27243f36cbe356d0ef427cb62f5774bf34db8f4191bf"
|
|
197
197
|
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormAddress } from '../../../components/address/form-address';
|
|
6
|
+
import { FormAddressDriver } from '../../../components/address/form-address.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: any } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormAddress,
|
|
12
|
+
UniDriverFactory: FormAddressDriver,
|
|
13
|
+
dataHook: (f) => `address-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'ADDRESS' }),
|
|
15
|
+
initialValue: overrides.initialValue,
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormAddress field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
29
|
+
const driver = setup({
|
|
30
|
+
field: makeField({ type: 'ADDRESS', validation: { required: true } }),
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it('shows a required-field error after the form is submitted with no value', async () => {
|
|
37
|
+
const driver = setup({
|
|
38
|
+
field: makeField({ type: 'ADDRESS', validation: { required: true } }),
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
await driver.submit();
|
|
42
|
+
|
|
43
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
44
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
45
|
+
'cairo.fieldValidation.requiredField',
|
|
46
|
+
);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormArray } from '../../../components/array/form-array';
|
|
6
|
+
import { FormArrayDriver } from '../../../components/array/form-array.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: any } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormArray,
|
|
12
|
+
UniDriverFactory: FormArrayDriver,
|
|
13
|
+
dataHook: (f) => `array-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'ARRAY' }),
|
|
15
|
+
initialValue: overrides.initialValue ?? ['a', 'b', 'c'],
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormArray field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
29
|
+
const driver = setup({
|
|
30
|
+
field: makeField({ type: 'ARRAY', validation: { required: true } }),
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it('does not show a type-mismatch suffix for a valid array value', async () => {
|
|
37
|
+
const driver = setup({ initialValue: ['a', 'b', 'c'] });
|
|
38
|
+
|
|
39
|
+
expect(await driver.tk.hasSuffix()).toBe(false);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it('shows a type-mismatch suffix when value is not a valid array', async () => {
|
|
43
|
+
const driver = setup({ initialValue: 'invalid json' });
|
|
44
|
+
|
|
45
|
+
expect(await driver.tk.hasSuffix()).toBe(true);
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it('shows a required-field error after the form is submitted with no value', async () => {
|
|
49
|
+
const driver = setup({
|
|
50
|
+
field: makeField({ type: 'ARRAY', validation: { required: true } }),
|
|
51
|
+
initialValue: '',
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
await driver.submit();
|
|
55
|
+
|
|
56
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
57
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
58
|
+
'cairo.fieldValidation.requiredField',
|
|
59
|
+
);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormAudio } from '../../../components/audio/audio-field/form-audio';
|
|
6
|
+
import { FormAudioDriver } from '../../../components/audio/audio-field/form-audio.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: string } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormAudio,
|
|
12
|
+
UniDriverFactory: FormAudioDriver,
|
|
13
|
+
dataHook: (f) => `audio-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'AUDIO' }),
|
|
15
|
+
initialValue: overrides.initialValue ?? '',
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormAudio field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('renders the empty state when no audio is set', async () => {
|
|
29
|
+
const driver = setup();
|
|
30
|
+
|
|
31
|
+
expect(await driver.tk.audioFieldExists()).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('renders the audio name and player when audio is set', async () => {
|
|
35
|
+
const driver = setup({
|
|
36
|
+
initialValue: 'wix:audio://v1/abc123.mp3/my-song.mp3',
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
expect(await driver.tk.getAudioName()).toBe('my-song.mp3');
|
|
40
|
+
expect(await driver.tk.audioPlayerExists()).toBe(true);
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
44
|
+
const driver = setup({
|
|
45
|
+
field: makeField({ type: 'AUDIO', validation: { required: true } }),
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
it('shows a required-field error after the form is submitted with no value', async () => {
|
|
52
|
+
const driver = setup({
|
|
53
|
+
field: makeField({ type: 'AUDIO', validation: { required: true } }),
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
await driver.submit();
|
|
57
|
+
|
|
58
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
59
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
60
|
+
'cairo.fieldValidation.requiredField',
|
|
61
|
+
);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import { FormColor } from '../../../components/color-view/form-color';
|
|
4
|
+
import { FormColorDriver } from '../../../components/color-view/form-color.driver';
|
|
5
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
6
|
+
|
|
7
|
+
const setup = (initialValue: string) => {
|
|
8
|
+
const driver = new FormFieldDriver({
|
|
9
|
+
Component: FormColor,
|
|
10
|
+
UniDriverFactory: FormColorDriver,
|
|
11
|
+
dataHook: (f) => `color-field-${f.id}`,
|
|
12
|
+
field: makeField({ type: 'COLOR' }),
|
|
13
|
+
initialValue,
|
|
14
|
+
});
|
|
15
|
+
driver.render();
|
|
16
|
+
return driver;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
describe('FormColor field', () => {
|
|
20
|
+
it('renders the field displayName as the label', async () => {
|
|
21
|
+
const driver = setup('');
|
|
22
|
+
|
|
23
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('shows the initial hex value with the hash omitted', async () => {
|
|
27
|
+
const driver = setup('#FF5733');
|
|
28
|
+
|
|
29
|
+
expect(await driver.tk.getValue()).toBe('FF5733');
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
it('shows an empty value when no color is set', async () => {
|
|
33
|
+
const driver = setup('');
|
|
34
|
+
|
|
35
|
+
expect(await driver.tk.getValue()).toBe('');
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('renders the FillButton when no color is set', async () => {
|
|
39
|
+
const driver = setup('');
|
|
40
|
+
|
|
41
|
+
expect(await driver.tk.getFillButton().exists()).toBe(true);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('renders the FillPreview when a color is set', async () => {
|
|
45
|
+
const driver = setup('#FF5733');
|
|
46
|
+
|
|
47
|
+
expect(await driver.tk.getFillPreview().exists()).toBe(true);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormDateInput } from '../../../components/date-input/form-date-input';
|
|
6
|
+
import { FormDateInputDriver } from '../../../components/date-input/form-date-input.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (
|
|
10
|
+
overrides: { field?: Field; initialValue?: string | null } = {},
|
|
11
|
+
) => {
|
|
12
|
+
const driver = new FormFieldDriver({
|
|
13
|
+
Component: FormDateInput,
|
|
14
|
+
UniDriverFactory: FormDateInputDriver,
|
|
15
|
+
dataHook: (f) => `date-field-${f.id}`,
|
|
16
|
+
field: overrides.field ?? makeField({ type: 'DATE' }),
|
|
17
|
+
initialValue: overrides.initialValue ?? null,
|
|
18
|
+
});
|
|
19
|
+
driver.render();
|
|
20
|
+
return driver;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
describe('FormDateInput field', () => {
|
|
24
|
+
it('renders the field displayName as the label', async () => {
|
|
25
|
+
const driver = setup();
|
|
26
|
+
|
|
27
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
it('renders the date picker', async () => {
|
|
31
|
+
const driver = setup();
|
|
32
|
+
|
|
33
|
+
expect(await driver.tk.datePickerExists()).toBe(true);
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
37
|
+
const driver = setup({
|
|
38
|
+
field: makeField({ type: 'DATE', validation: { required: true } }),
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
42
|
+
});
|
|
43
|
+
});
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormDateTime } from '../../../components/datetime-input/form-date-time';
|
|
6
|
+
import { FormDateTimeDriver } from '../../../components/datetime-input/form-date-time.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (
|
|
10
|
+
overrides: { field?: Field; initialValue?: string | null } = {},
|
|
11
|
+
) => {
|
|
12
|
+
const driver = new FormFieldDriver({
|
|
13
|
+
Component: FormDateTime,
|
|
14
|
+
UniDriverFactory: FormDateTimeDriver,
|
|
15
|
+
dataHook: (f) => `datetime-field-${f.id}`,
|
|
16
|
+
field: overrides.field ?? makeField({ type: 'DATETIME' }),
|
|
17
|
+
initialValue: overrides.initialValue ?? null,
|
|
18
|
+
});
|
|
19
|
+
driver.render();
|
|
20
|
+
return driver;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
describe('FormDateTime field', () => {
|
|
24
|
+
it('renders the field displayName as the label', async () => {
|
|
25
|
+
const driver = setup();
|
|
26
|
+
|
|
27
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
it('renders both the date and time inputs', async () => {
|
|
31
|
+
const driver = setup();
|
|
32
|
+
|
|
33
|
+
expect(await driver.tk.dateExists()).toBe(true);
|
|
34
|
+
expect(await driver.tk.timeExists()).toBe(true);
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
38
|
+
const driver = setup({
|
|
39
|
+
field: makeField({ type: 'DATETIME', validation: { required: true } }),
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it('shows a required-field error on both inputs after the form is submitted with no value', async () => {
|
|
46
|
+
const driver = setup({
|
|
47
|
+
field: makeField({ type: 'DATETIME', validation: { required: true } }),
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
await driver.submit();
|
|
51
|
+
|
|
52
|
+
expect(await driver.tk.dateHasError()).toBe(true);
|
|
53
|
+
expect(await driver.tk.getDateErrorMessage()).toBe(
|
|
54
|
+
'cairo.fieldValidation.requiredField',
|
|
55
|
+
);
|
|
56
|
+
expect(await driver.tk.timeHasError()).toBe(true);
|
|
57
|
+
expect(await driver.tk.getTimeErrorMessage()).toBe(
|
|
58
|
+
'cairo.fieldValidation.requiredField',
|
|
59
|
+
);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormDocument } from '../../../components/document/form-document';
|
|
6
|
+
import { FormDocumentDriver } from '../../../components/document/form-document.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: string } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormDocument,
|
|
12
|
+
UniDriverFactory: FormDocumentDriver,
|
|
13
|
+
dataHook: (f) => `document-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'DOCUMENT' }),
|
|
15
|
+
initialValue: overrides.initialValue ?? '',
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormDocument field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('renders the document field when no document is set', async () => {
|
|
29
|
+
const driver = setup();
|
|
30
|
+
|
|
31
|
+
expect(await driver.tk.documentFieldExists()).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
35
|
+
const driver = setup({
|
|
36
|
+
field: makeField({ type: 'DOCUMENT', validation: { required: true } }),
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it('shows a required-field error after the form is submitted with no value', async () => {
|
|
43
|
+
const driver = setup({
|
|
44
|
+
field: makeField({ type: 'DOCUMENT', validation: { required: true } }),
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
await driver.submit();
|
|
48
|
+
|
|
49
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
50
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
51
|
+
'cairo.fieldValidation.requiredField',
|
|
52
|
+
);
|
|
53
|
+
});
|
|
54
|
+
});
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormEmail } from '../../../components/email/form-email';
|
|
6
|
+
import { FormEmailDriver } from '../../../components/email/form-email.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: string } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormEmail,
|
|
12
|
+
UniDriverFactory: FormEmailDriver,
|
|
13
|
+
dataHook: (f) => `email-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'EMAIL' }),
|
|
15
|
+
initialValue: overrides.initialValue ?? '',
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormEmail field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('shows the initial value from data', async () => {
|
|
29
|
+
const driver = setup({ initialValue: 'test@example.com' });
|
|
30
|
+
|
|
31
|
+
expect(await driver.tk.getValue()).toBe('test@example.com');
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('updates the displayed value as the user types', async () => {
|
|
35
|
+
const driver = setup();
|
|
36
|
+
|
|
37
|
+
await driver.tk.enterText('hello@wix.com');
|
|
38
|
+
|
|
39
|
+
expect(await driver.tk.getValue()).toBe('hello@wix.com');
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
43
|
+
const driver = setup({
|
|
44
|
+
field: makeField({ type: 'EMAIL', validation: { required: true } }),
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it('accepts a valid email without showing an error', async () => {
|
|
51
|
+
const driver = setup();
|
|
52
|
+
|
|
53
|
+
await driver.tk.enterText('user@example.com');
|
|
54
|
+
|
|
55
|
+
expect(await driver.tk.hasError()).toBe(false);
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
it('shows an invalid-email error when the value is not a valid email', async () => {
|
|
59
|
+
const driver = setup({
|
|
60
|
+
field: makeField({ type: 'EMAIL', validation: { required: true } }),
|
|
61
|
+
initialValue: 'user@example.com',
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
await driver.tk.enterText('not-an-email');
|
|
65
|
+
|
|
66
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
67
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
68
|
+
'auto-patterns.fields.email_input_error',
|
|
69
|
+
);
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it('shows a required error when the user clears a required field', async () => {
|
|
73
|
+
const driver = setup({
|
|
74
|
+
field: makeField({ type: 'EMAIL', validation: { required: true } }),
|
|
75
|
+
initialValue: 'user@example.com',
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
await driver.tk.enterText('');
|
|
79
|
+
|
|
80
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
81
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
82
|
+
'cairo.fieldValidation.requiredField',
|
|
83
|
+
);
|
|
84
|
+
});
|
|
85
|
+
});
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import '../../../testkit/test-polyfills';
|
|
2
|
+
|
|
3
|
+
import type { Field } from '@wix/bex-core';
|
|
4
|
+
|
|
5
|
+
import { FormImageInput } from '../../../components/image/form-image-input';
|
|
6
|
+
import { FormImageInputDriver } from '../../../components/image/form-image-input.driver';
|
|
7
|
+
import { FormFieldDriver, makeField } from '../../form-field.driver';
|
|
8
|
+
|
|
9
|
+
const setup = (overrides: { field?: Field; initialValue?: string } = {}) => {
|
|
10
|
+
const driver = new FormFieldDriver({
|
|
11
|
+
Component: FormImageInput,
|
|
12
|
+
UniDriverFactory: FormImageInputDriver,
|
|
13
|
+
dataHook: (f) => `image-field-${f.id}`,
|
|
14
|
+
field: overrides.field ?? makeField({ type: 'IMAGE' }),
|
|
15
|
+
initialValue: overrides.initialValue ?? '',
|
|
16
|
+
});
|
|
17
|
+
driver.render();
|
|
18
|
+
return driver;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
describe('FormImageInput field', () => {
|
|
22
|
+
it('renders the field displayName as the label', async () => {
|
|
23
|
+
const driver = setup();
|
|
24
|
+
|
|
25
|
+
expect(await driver.tk.getLabel()).toBe(driver.field.displayName);
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
it('renders the add-item affordance when no image is set', async () => {
|
|
29
|
+
const driver = setup();
|
|
30
|
+
|
|
31
|
+
expect(await driver.tk.isAddItemVisible()).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('renders the image when a value is provided', async () => {
|
|
35
|
+
const driver = setup({
|
|
36
|
+
initialValue:
|
|
37
|
+
'wix:image://v1/dafa67_9aa1f03ed7274a7795d2f2e18a245ac7~mv2.jpg/cute%20cat.jpg#originWidth=1024&originHeight=1024',
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
expect(await driver.tk.getImageUrl()).toContain(
|
|
41
|
+
'dafa67_9aa1f03ed7274a7795d2f2e18a245ac7~mv2.jpg',
|
|
42
|
+
);
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it('marks the field as required when validation.required is true', async () => {
|
|
46
|
+
const driver = setup({
|
|
47
|
+
field: makeField({ type: 'IMAGE', validation: { required: true } }),
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
expect(await driver.tk.isRequired()).toBe(true);
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
it('shows a required-field error after the form is submitted with no value', async () => {
|
|
54
|
+
const driver = setup({
|
|
55
|
+
field: makeField({ type: 'IMAGE', validation: { required: true } }),
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
await driver.submit();
|
|
59
|
+
|
|
60
|
+
expect(await driver.tk.hasError()).toBe(true);
|
|
61
|
+
expect(await driver.tk.getErrorMessage()).toBe(
|
|
62
|
+
'cairo.fieldValidation.requiredField',
|
|
63
|
+
);
|
|
64
|
+
});
|
|
65
|
+
});
|