@wix/patterns-fields 1.116.0 → 1.117.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/assets/locale/messages_ar.json +2 -0
- package/dist/cjs/assets/locale/messages_bg.json +2 -0
- package/dist/cjs/assets/locale/messages_ca.json +2 -0
- package/dist/cjs/assets/locale/messages_cs.json +2 -0
- package/dist/cjs/assets/locale/messages_da.json +2 -0
- package/dist/cjs/assets/locale/messages_de.json +2 -0
- package/dist/cjs/assets/locale/messages_el.json +2 -0
- package/dist/cjs/assets/locale/messages_en.json +2 -0
- package/dist/cjs/assets/locale/messages_es.json +2 -0
- package/dist/cjs/assets/locale/messages_fi.json +2 -0
- package/dist/cjs/assets/locale/messages_fr.json +2 -0
- package/dist/cjs/assets/locale/messages_he.json +2 -0
- package/dist/cjs/assets/locale/messages_hi.json +2 -0
- package/dist/cjs/assets/locale/messages_hu.json +2 -0
- package/dist/cjs/assets/locale/messages_id.json +2 -0
- package/dist/cjs/assets/locale/messages_it.json +2 -0
- package/dist/cjs/assets/locale/messages_ja.json +2 -0
- package/dist/cjs/assets/locale/messages_ko.json +2 -0
- package/dist/cjs/assets/locale/messages_lt.json +2 -0
- package/dist/cjs/assets/locale/messages_ms.json +2 -0
- package/dist/cjs/assets/locale/messages_nl.json +2 -0
- package/dist/cjs/assets/locale/messages_no.json +2 -0
- package/dist/cjs/assets/locale/messages_pl.json +2 -0
- package/dist/cjs/assets/locale/messages_pt.json +2 -0
- package/dist/cjs/assets/locale/messages_ro.json +2 -0
- package/dist/cjs/assets/locale/messages_ru.json +2 -0
- package/dist/cjs/assets/locale/messages_sk.json +2 -0
- package/dist/cjs/assets/locale/messages_sl.json +2 -0
- package/dist/cjs/assets/locale/messages_sv.json +2 -0
- package/dist/cjs/assets/locale/messages_th.json +2 -0
- package/dist/cjs/assets/locale/messages_tl.json +2 -0
- package/dist/cjs/assets/locale/messages_tr.json +2 -0
- package/dist/cjs/assets/locale/messages_uk.json +2 -0
- package/dist/cjs/assets/locale/messages_vi.json +2 -0
- package/dist/cjs/assets/locale/messages_zh.json +2 -0
- package/dist/cjs/assets/locale/version_file +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/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-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/audio/cell-audio-edit.js +10 -11
- package/dist/cjs/components/audio/cell-audio-edit.js.map +1 -1
- package/dist/cjs/components/color-view/cell-color-view.st.css.js +3 -3
- package/dist/cjs/components/color-view/cell-color-view.st.css.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/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/cell-document-edit.js +25 -26
- package/dist/cjs/components/document/cell-document-edit.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/exclamation/exclamation.st.css.js +5 -5
- package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
- package/dist/cjs/components/field-validation-settings/field-validation-settings-input.st.css.js +3 -3
- package/dist/cjs/components/field-validation-settings/field-validation-settings-input.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/cell-image-edit.js +22 -23
- package/dist/cjs/components/image/cell-image-edit.js.map +1 -1
- package/dist/cjs/components/image/image-preview-popover.js +77 -0
- package/dist/cjs/components/image/image-preview-popover.js.map +1 -0
- package/dist/cjs/components/image/image-thumbnail.js +14 -12
- package/dist/cjs/components/image/image-thumbnail.js.map +1 -1
- package/dist/cjs/components/image/image-view.js +9 -57
- package/dist/cjs/components/image/image-view.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 +6 -0
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/media-control/cell-media-edit-shell.js +19 -31
- package/dist/cjs/components/media-control/cell-media-edit-shell.js.map +1 -1
- 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-control/use-cell-media-edit.js +51 -23
- package/dist/cjs/components/media-control/use-cell-media-edit.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-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-image-field/cell-media-image-edit.js +530 -0
- package/dist/cjs/components/media-image-field/cell-media-image-edit.js.map +1 -0
- package/dist/cjs/components/media-image-field/cell-media-image-edit.st.css +63 -0
- package/dist/cjs/components/media-image-field/cell-media-image-edit.st.css.js +33 -0
- package/dist/cjs/components/media-image-field/cell-media-image-edit.st.css.js.map +1 -0
- package/dist/cjs/components/media-image-field/form-media-image-field.js +180 -0
- package/dist/cjs/components/media-image-field/form-media-image-field.js.map +1 -0
- package/dist/cjs/components/media-image-field/form-media-image-field.uni.driver.js +34 -0
- package/dist/cjs/components/media-image-field/form-media-image-field.uni.driver.js.map +1 -0
- package/dist/cjs/components/media-image-field/form-media-image-input.js +64 -0
- package/dist/cjs/components/media-image-field/form-media-image-input.js.map +1 -0
- package/dist/cjs/components/media-image-field/index.js +28 -0
- package/dist/cjs/components/media-image-field/index.js.map +1 -0
- package/dist/cjs/components/media-image-field/media-image-view.js +114 -0
- package/dist/cjs/components/media-image-field/media-image-view.js.map +1 -0
- package/dist/cjs/components/media-image-field/media-image-view.st.css +16 -0
- package/dist/cjs/components/media-image-field/media-image-view.st.css.js +27 -0
- package/dist/cjs/components/media-image-field/media-image-view.st.css.js.map +1 -0
- package/dist/cjs/components/media-image-field/media-image-view.uni.driver.js +18 -0
- package/dist/cjs/components/media-image-field/media-image-view.uni.driver.js.map +1 -0
- 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/cell-multi-document-edit.st.css.js +3 -3
- package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
- 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/reference/cell-multi-reference-input.st.css.js +2 -2
- package/dist/cjs/components/reference/cell-multi-reference-input.st.css.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/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 +5 -5
- 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/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/text-view.st.css.js +3 -3
- package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
- package/dist/cjs/services/translations.js.map +1 -1
- package/dist/cjs/styles.global.css +1 -1
- package/dist/cjs/types/index.js +6 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/media-image.js +4 -0
- package/dist/cjs/types/media-image.js.map +1 -0
- package/dist/cjs/utils/index.js +6 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/media-image-value.js +95 -0
- package/dist/cjs/utils/media-image-value.js.map +1 -0
- package/dist/esm/assets/locale/messages_ar.json +2 -0
- package/dist/esm/assets/locale/messages_bg.json +2 -0
- package/dist/esm/assets/locale/messages_ca.json +2 -0
- package/dist/esm/assets/locale/messages_cs.json +2 -0
- package/dist/esm/assets/locale/messages_da.json +2 -0
- package/dist/esm/assets/locale/messages_de.json +2 -0
- package/dist/esm/assets/locale/messages_el.json +2 -0
- package/dist/esm/assets/locale/messages_en.json +2 -0
- package/dist/esm/assets/locale/messages_es.json +2 -0
- package/dist/esm/assets/locale/messages_fi.json +2 -0
- package/dist/esm/assets/locale/messages_fr.json +2 -0
- package/dist/esm/assets/locale/messages_he.json +2 -0
- package/dist/esm/assets/locale/messages_hi.json +2 -0
- package/dist/esm/assets/locale/messages_hu.json +2 -0
- package/dist/esm/assets/locale/messages_id.json +2 -0
- package/dist/esm/assets/locale/messages_it.json +2 -0
- package/dist/esm/assets/locale/messages_ja.json +2 -0
- package/dist/esm/assets/locale/messages_ko.json +2 -0
- package/dist/esm/assets/locale/messages_lt.json +2 -0
- package/dist/esm/assets/locale/messages_ms.json +2 -0
- package/dist/esm/assets/locale/messages_nl.json +2 -0
- package/dist/esm/assets/locale/messages_no.json +2 -0
- package/dist/esm/assets/locale/messages_pl.json +2 -0
- package/dist/esm/assets/locale/messages_pt.json +2 -0
- package/dist/esm/assets/locale/messages_ro.json +2 -0
- package/dist/esm/assets/locale/messages_ru.json +2 -0
- package/dist/esm/assets/locale/messages_sk.json +2 -0
- package/dist/esm/assets/locale/messages_sl.json +2 -0
- package/dist/esm/assets/locale/messages_sv.json +2 -0
- package/dist/esm/assets/locale/messages_th.json +2 -0
- package/dist/esm/assets/locale/messages_tl.json +2 -0
- package/dist/esm/assets/locale/messages_tr.json +2 -0
- package/dist/esm/assets/locale/messages_uk.json +2 -0
- package/dist/esm/assets/locale/messages_vi.json +2 -0
- package/dist/esm/assets/locale/messages_zh.json +2 -0
- package/dist/esm/assets/locale/version_file +1 -1
- package/dist/esm/components/address/input/address-input.st.css.js +2 -2
- package/dist/esm/components/address/input/address-input.st.css.js.map +1 -1
- 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-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/audio/cell-audio-edit.js +1 -1
- package/dist/esm/components/audio/cell-audio-edit.js.map +1 -1
- package/dist/esm/components/color-view/cell-color-view.st.css.js +2 -2
- package/dist/esm/components/color-view/cell-color-view.st.css.js.map +1 -1
- package/dist/esm/components/color-view/color-view.st.css.js +2 -2
- package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
- package/dist/esm/components/document/cell-document-edit.js +1 -1
- package/dist/esm/components/document/cell-document-edit.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/exclamation/exclamation.st.css.js +2 -2
- package/dist/esm/components/field-validation-settings/field-validation-settings-input.st.css.js +2 -2
- package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
- package/dist/esm/components/image/cell-image-edit.js +1 -1
- package/dist/esm/components/image/cell-image-edit.js.map +1 -1
- package/dist/esm/components/image/image-preview-popover.js +16 -0
- package/dist/esm/components/image/image-preview-popover.js.map +1 -0
- package/dist/esm/components/image/image-thumbnail.js +5 -6
- package/dist/esm/components/image/image-thumbnail.js.map +1 -1
- package/dist/esm/components/image/image-view.js +4 -13
- package/dist/esm/components/image/image-view.js.map +1 -1
- package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
- package/dist/esm/components/index.js +1 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/media-control/cell-media-edit-shell.js +5 -7
- package/dist/esm/components/media-control/cell-media-edit-shell.js.map +1 -1
- 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-control/paste-url-button.st.css.js.map +1 -1
- package/dist/esm/components/media-control/use-cell-media-edit.js +48 -30
- package/dist/esm/components/media-control/use-cell-media-edit.js.map +1 -1
- package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
- 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-image-field/cell-media-image-edit.js +159 -0
- package/dist/esm/components/media-image-field/cell-media-image-edit.js.map +1 -0
- package/dist/esm/components/media-image-field/cell-media-image-edit.st.css +63 -0
- package/dist/esm/components/media-image-field/cell-media-image-edit.st.css.js +15 -0
- package/dist/esm/components/media-image-field/cell-media-image-edit.st.css.js.map +1 -0
- package/dist/esm/components/media-image-field/form-media-image-field.js +59 -0
- package/dist/esm/components/media-image-field/form-media-image-field.js.map +1 -0
- package/dist/esm/components/media-image-field/form-media-image-field.uni.driver.js +27 -0
- package/dist/esm/components/media-image-field/form-media-image-field.uni.driver.js.map +1 -0
- package/dist/esm/components/media-image-field/form-media-image-input.js +40 -0
- package/dist/esm/components/media-image-field/form-media-image-input.js.map +1 -0
- package/dist/esm/components/media-image-field/index.js +5 -0
- package/dist/esm/components/media-image-field/index.js.map +1 -0
- package/dist/esm/components/media-image-field/media-image-view.js +34 -0
- package/dist/esm/components/media-image-field/media-image-view.js.map +1 -0
- package/dist/esm/components/media-image-field/media-image-view.st.css +16 -0
- package/dist/esm/components/media-image-field/media-image-view.st.css.js +15 -0
- package/dist/esm/components/media-image-field/media-image-view.st.css.js.map +1 -0
- package/dist/esm/components/media-image-field/media-image-view.uni.driver.js +14 -0
- package/dist/esm/components/media-image-field/media-image-view.uni.driver.js.map +1 -0
- 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/cell-multi-document-edit.st.css.js +2 -2
- package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
- 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/reference/cell-multi-reference-input.st.css.js +2 -2
- package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
- 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/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-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-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.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/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
- package/dist/esm/components/text/text-view.st.css.js +2 -2
- package/dist/esm/styles.global.css +1 -1
- package/dist/esm/types/index.js +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/media-image.js +2 -0
- package/dist/esm/types/media-image.js.map +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/media-image-value.js +65 -0
- package/dist/esm/utils/media-image-value.js.map +1 -0
- package/dist/types/components/address/input/address-input.st.css.d.ts.map +1 -1
- package/dist/types/components/audio/audio-field/form-audio-field.st.css.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/audio/cell-audio-edit.d.ts.map +1 -1
- package/dist/types/components/color-view/cell-color-view.st.css.d.ts.map +1 -1
- package/dist/types/components/document/cell-document-edit.d.ts.map +1 -1
- package/dist/types/components/document/form-document-field.st.css.d.ts.map +1 -1
- package/dist/types/components/image/cell-image-edit.d.ts.map +1 -1
- package/dist/types/components/image/image-preview-popover.d.ts +10 -0
- package/dist/types/components/image/image-preview-popover.d.ts.map +1 -0
- package/dist/types/components/image/image-thumbnail.d.ts +3 -0
- package/dist/types/components/image/image-thumbnail.d.ts.map +1 -1
- package/dist/types/components/image/image-view.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/components/media-control/cell-media-edit-shell.d.ts +1 -2
- package/dist/types/components/media-control/cell-media-edit-shell.d.ts.map +1 -1
- package/dist/types/components/media-control/paste-url-button.st.css.d.ts.map +1 -1
- package/dist/types/components/media-control/use-cell-media-edit.d.ts +20 -4
- package/dist/types/components/media-control/use-cell-media-edit.d.ts.map +1 -1
- 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-image-field/cell-media-image-edit.d.ts +26 -0
- package/dist/types/components/media-image-field/cell-media-image-edit.d.ts.map +1 -0
- package/dist/types/components/media-image-field/cell-media-image-edit.st.css.d.ts +24 -0
- package/dist/types/components/media-image-field/cell-media-image-edit.st.css.d.ts.map +1 -0
- package/dist/types/components/media-image-field/form-media-image-field.d.ts +32 -0
- package/dist/types/components/media-image-field/form-media-image-field.d.ts.map +1 -0
- package/dist/types/components/media-image-field/form-media-image-field.uni.driver.d.ts +22 -0
- package/dist/types/components/media-image-field/form-media-image-field.uni.driver.d.ts.map +1 -0
- package/dist/types/components/media-image-field/form-media-image-input.d.ts +9 -0
- package/dist/types/components/media-image-field/form-media-image-input.d.ts.map +1 -0
- package/dist/types/components/media-image-field/index.d.ts +5 -0
- package/dist/types/components/media-image-field/index.d.ts.map +1 -0
- package/dist/types/components/media-image-field/media-image-view.d.ts +13 -0
- package/dist/types/components/media-image-field/media-image-view.d.ts.map +1 -0
- package/dist/types/components/media-image-field/media-image-view.st.css.d.ts +18 -0
- package/dist/types/components/media-image-field/media-image-view.st.css.d.ts.map +1 -0
- package/dist/types/components/media-image-field/media-image-view.uni.driver.d.ts +12 -0
- package/dist/types/components/media-image-field/media-image-view.uni.driver.d.ts.map +1 -0
- package/dist/types/components/media-tag/web-media-tag/media-tag.st.css.d.ts.map +1 -1
- package/dist/types/components/multi-document/cell-multi-document-edit.st.css.d.ts.map +1 -1
- package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.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/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.d.ts.map +1 -1
- package/dist/types/services/translations.d.ts +1 -1
- package/dist/types/services/translations.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/media-image.d.ts +23 -0
- package/dist/types/types/media-image.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/media-image-value.d.ts +31 -0
- package/dist/types/utils/media-image-value.d.ts.map +1 -0
- package/package.json +4 -4
- package/src/__tests__/components/media-image-field/form-media-image-input.spec.tsx +130 -0
- package/src/__tests__/components/media-image-field/media-image-view.spec.tsx +51 -0
- package/src/__tests__/utils/media-image-value.spec.ts +153 -0
- package/src/assets/locale/messages_ar.json +2 -0
- package/src/assets/locale/messages_bg.json +2 -0
- package/src/assets/locale/messages_ca.json +2 -0
- package/src/assets/locale/messages_cs.json +2 -0
- package/src/assets/locale/messages_da.json +2 -0
- package/src/assets/locale/messages_de.json +2 -0
- package/src/assets/locale/messages_el.json +2 -0
- package/src/assets/locale/messages_en.json +2 -0
- package/src/assets/locale/messages_es.json +2 -0
- package/src/assets/locale/messages_fi.json +2 -0
- package/src/assets/locale/messages_fr.json +2 -0
- package/src/assets/locale/messages_he.json +2 -0
- package/src/assets/locale/messages_hi.json +2 -0
- package/src/assets/locale/messages_hu.json +2 -0
- package/src/assets/locale/messages_id.json +2 -0
- package/src/assets/locale/messages_it.json +2 -0
- package/src/assets/locale/messages_ja.json +2 -0
- package/src/assets/locale/messages_ko.json +2 -0
- package/src/assets/locale/messages_lt.json +2 -0
- package/src/assets/locale/messages_ms.json +2 -0
- package/src/assets/locale/messages_nl.json +2 -0
- package/src/assets/locale/messages_no.json +2 -0
- package/src/assets/locale/messages_pl.json +2 -0
- package/src/assets/locale/messages_pt.json +2 -0
- package/src/assets/locale/messages_ro.json +2 -0
- package/src/assets/locale/messages_ru.json +2 -0
- package/src/assets/locale/messages_sk.json +2 -0
- package/src/assets/locale/messages_sl.json +2 -0
- package/src/assets/locale/messages_sv.json +2 -0
- package/src/assets/locale/messages_th.json +2 -0
- package/src/assets/locale/messages_tl.json +2 -0
- package/src/assets/locale/messages_tr.json +2 -0
- package/src/assets/locale/messages_uk.json +2 -0
- package/src/assets/locale/messages_vi.json +2 -0
- package/src/assets/locale/messages_zh.json +2 -0
- package/src/assets/locale/version_file +1 -1
- package/src/components/address/input/address-input.st.css.ts +2 -2
- 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-player/audio-player.st.css.ts +2 -2
- package/src/components/audio/cell-audio-edit.tsx +0 -1
- package/src/components/color-view/cell-color-view.st.css.ts +2 -2
- package/src/components/color-view/color-view.st.css.ts +2 -2
- package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
- package/src/components/document/cell-document-edit.tsx +0 -1
- package/src/components/document/form-document-field.st.css.ts +2 -2
- package/src/components/exclamation/exclamation.st.css.ts +2 -2
- package/src/components/field-validation-settings/field-validation-settings-input.st.css.ts +2 -2
- package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
- package/src/components/image/cell-image-edit.tsx +0 -1
- package/src/components/image/image-preview-popover.tsx +52 -0
- package/src/components/image/image-thumbnail.tsx +12 -7
- package/src/components/image/image-view.tsx +16 -42
- package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
- package/src/components/index.ts +1 -0
- package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
- package/src/components/media-control/cell-media-edit-shell.tsx +7 -20
- package/src/components/media-control/paste-url-button.st.css.ts +2 -2
- package/src/components/media-control/use-cell-media-edit.ts +98 -28
- package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
- 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-image-field/cell-media-image-edit.st.css +63 -0
- package/src/components/media-image-field/cell-media-image-edit.st.css.ts +25 -0
- package/src/components/media-image-field/cell-media-image-edit.tsx +402 -0
- package/src/components/media-image-field/form-media-image-field.tsx +165 -0
- package/src/components/media-image-field/form-media-image-field.uni.driver.ts +42 -0
- package/src/components/media-image-field/form-media-image-input.tsx +56 -0
- package/src/components/media-image-field/index.ts +4 -0
- package/src/components/media-image-field/media-image-view.st.css +16 -0
- package/src/components/media-image-field/media-image-view.st.css.ts +25 -0
- package/src/components/media-image-field/media-image-view.tsx +95 -0
- package/src/components/media-image-field/media-image-view.uni.driver.ts +18 -0
- package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
- package/src/components/multi-document/cell-multi-document-edit.st.css.ts +2 -2
- package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
- package/src/components/reference/cell-multi-reference-input.st.css.ts +2 -2
- package/src/components/reference/cell-reference-input.st.css.ts +2 -2
- 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/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/text-view.st.css.ts +2 -2
- package/src/services/translations.ts +2 -0
- package/src/styles.global.css +1 -1
- package/src/types/index.ts +1 -0
- package/src/types/media-image.ts +24 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/media-image-value.ts +99 -0
|
@@ -0,0 +1,530 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.CellMediaImageEdit = void 0;
|
|
5
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
6
|
+
var _designSystem = require("@wix/design-system");
|
|
7
|
+
var _lazy = require("@wix/wix-ui-icons-common/lazy");
|
|
8
|
+
var _autoFieldTypes = require("../../auto-field-types");
|
|
9
|
+
var _hooks = require("../../hooks");
|
|
10
|
+
var _getImageSource = require("../../utils/get-image-source");
|
|
11
|
+
var _mediaImageValue = require("../../utils/media-image-value");
|
|
12
|
+
var _mediaUtils = require("../../utils/media-utils");
|
|
13
|
+
var _mediaControl = require("../media-control");
|
|
14
|
+
var _mediaPreviewModal = require("../media-gallery/media-preview-modal");
|
|
15
|
+
var _mediaImage = require("../media-image");
|
|
16
|
+
var _mediaImageView = require("./media-image-view");
|
|
17
|
+
var _cellMediaImageEditStCss = require("./cell-media-image-edit.st.css.js");
|
|
18
|
+
var _jsxFileName = "/home/builduser/work/843658b9f44192f0/packages/fields/dist/cjs/components/media-image-field/cell-media-image-edit.tsx";
|
|
19
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
20
|
+
/** What is on top of the editor. Escape and click-outside act on it. */
|
|
21
|
+
|
|
22
|
+
const imageFromUrl = (url, current) => (0, _mediaImageValue.replaceImage)(current, (0, _mediaImageValue.fromImageUrl)(url));
|
|
23
|
+
/** WDS shows the menu's open state only to its trigger, so the trigger
|
|
24
|
+
* reports it. */
|
|
25
|
+
const MenuTrigger = ({
|
|
26
|
+
isOpen,
|
|
27
|
+
toggle,
|
|
28
|
+
buttonRef,
|
|
29
|
+
onOpenChange,
|
|
30
|
+
ariaLabel
|
|
31
|
+
}) => {
|
|
32
|
+
(0, _react.useEffect)(() => {
|
|
33
|
+
onOpenChange(isOpen);
|
|
34
|
+
}, [isOpen, onOpenChange]);
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_designSystem.IconButton, {
|
|
36
|
+
ref: buttonRef,
|
|
37
|
+
size: "small",
|
|
38
|
+
skin: "light",
|
|
39
|
+
priority: "secondary",
|
|
40
|
+
dataHook: "media-image-edit-more-button",
|
|
41
|
+
ariaLabel: ariaLabel,
|
|
42
|
+
"aria-haspopup": "menu",
|
|
43
|
+
"aria-expanded": isOpen,
|
|
44
|
+
onClick: toggle,
|
|
45
|
+
__self: void 0,
|
|
46
|
+
__source: {
|
|
47
|
+
fileName: _jsxFileName,
|
|
48
|
+
lineNumber: 90,
|
|
49
|
+
columnNumber: 5
|
|
50
|
+
}
|
|
51
|
+
}, /*#__PURE__*/_react.default.createElement(_lazy.MoreSmall, {
|
|
52
|
+
__self: void 0,
|
|
53
|
+
__source: {
|
|
54
|
+
fileName: _jsxFileName,
|
|
55
|
+
lineNumber: 101,
|
|
56
|
+
columnNumber: 7
|
|
57
|
+
}
|
|
58
|
+
}));
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Edits a `MEDIA_IMAGE` cell. An empty cell shows the add and paste-URL
|
|
63
|
+
* buttons. A cell with an image opens a popover with the image and its alt
|
|
64
|
+
* text. Changes go to `onChange` as they happen and are committed once, when
|
|
65
|
+
* the popover closes.
|
|
66
|
+
*/
|
|
67
|
+
const CellMediaImageEdit = ({
|
|
68
|
+
value,
|
|
69
|
+
onChange,
|
|
70
|
+
onCommit,
|
|
71
|
+
onCancel,
|
|
72
|
+
onStartEdit,
|
|
73
|
+
inputRef,
|
|
74
|
+
dataHook
|
|
75
|
+
}) => {
|
|
76
|
+
const {
|
|
77
|
+
t
|
|
78
|
+
} = (0, _hooks.useTranslations)();
|
|
79
|
+
const image = (0, _mediaImageValue.toMediaImageValue)(value);
|
|
80
|
+
const src = (0, _getImageSource.getImageSource)(image);
|
|
81
|
+
// 'none' once committed.
|
|
82
|
+
const [popoverLayer, setPopoverLayer] = (0, _react.useState)('popover');
|
|
83
|
+
const mediaEdit = (0, _mediaControl.useCellMediaEdit)({
|
|
84
|
+
mediaType: _mediaUtils.MEDIA_TYPES.IMAGE,
|
|
85
|
+
value: image,
|
|
86
|
+
onChange,
|
|
87
|
+
onCommit,
|
|
88
|
+
onCancel,
|
|
89
|
+
onStartEdit,
|
|
90
|
+
inputRef,
|
|
91
|
+
fromPick: _mediaImageValue.fromMediaManagerPick,
|
|
92
|
+
fromUrl: imageFromUrl,
|
|
93
|
+
commitOnPick: false
|
|
94
|
+
});
|
|
95
|
+
const {
|
|
96
|
+
loading,
|
|
97
|
+
pasteUrlForm,
|
|
98
|
+
handleCallMedia,
|
|
99
|
+
handleDelete,
|
|
100
|
+
downloadMedia
|
|
101
|
+
} = mediaEdit;
|
|
102
|
+
const closePasteUrl = pasteUrlForm.handleClose;
|
|
103
|
+
// The media manager and the URL form sit above the popover layers.
|
|
104
|
+
const openLayer = loading ? 'loading' : pasteUrlForm.isOpen ? 'pasteUrl' : image ? popoverLayer : 'none';
|
|
105
|
+
const openPasteUrl = mediaEdit.startEditAndOpenPasteUrl({
|
|
106
|
+
title: t('CMS.image.replaceWithUrl.title'),
|
|
107
|
+
value: (0, _mediaImageValue.isExternalMediaImage)(image) ? image.url : undefined
|
|
108
|
+
});
|
|
109
|
+
const handleDownload = (0, _react.useCallback)(() => {
|
|
110
|
+
// The Media Manager can't make a download link for an external URL.
|
|
111
|
+
if ((0, _mediaImageValue.isExternalMediaImage)(image)) {
|
|
112
|
+
(0, _mediaUtils.executeDownloading)(image.url);
|
|
113
|
+
} else if (src) {
|
|
114
|
+
downloadMedia(src);
|
|
115
|
+
}
|
|
116
|
+
}, [src, image, downloadMedia]);
|
|
117
|
+
const commit = (0, _react.useCallback)(() => {
|
|
118
|
+
setPopoverLayer('none');
|
|
119
|
+
onCommit();
|
|
120
|
+
}, [onCommit]);
|
|
121
|
+
|
|
122
|
+
// Picking Preview sets its own layer, which closing the menu must not undo.
|
|
123
|
+
const handleMenuOpenChange = (0, _react.useCallback)(isOpen => {
|
|
124
|
+
setPopoverLayer(layer => {
|
|
125
|
+
if (isOpen) {
|
|
126
|
+
return 'menu';
|
|
127
|
+
}
|
|
128
|
+
return layer === 'menu' ? 'popover' : layer;
|
|
129
|
+
});
|
|
130
|
+
}, []);
|
|
131
|
+
|
|
132
|
+
// Fires on mouseup, before the click that closes a menu or a modal, so
|
|
133
|
+
// `openLayer` still says what was open.
|
|
134
|
+
const handleClickOutside = (0, _react.useCallback)(() => {
|
|
135
|
+
if (openLayer === 'popover') {
|
|
136
|
+
commit();
|
|
137
|
+
}
|
|
138
|
+
}, [openLayer, commit]);
|
|
139
|
+
(0, _react.useEffect)(() => {
|
|
140
|
+
// WDS closes the menu on Escape and stops the event there.
|
|
141
|
+
if (openLayer === 'none' || openLayer === 'loading' || openLayer === 'menu') {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
// Capture phase, so the table doesn't cancel the edit first.
|
|
145
|
+
const handleKeyDown = e => {
|
|
146
|
+
if (e.key !== 'Escape') {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
e.stopPropagation();
|
|
150
|
+
if (openLayer === 'pasteUrl') {
|
|
151
|
+
closePasteUrl();
|
|
152
|
+
} else if (openLayer === 'preview') {
|
|
153
|
+
setPopoverLayer('popover');
|
|
154
|
+
} else {
|
|
155
|
+
commit();
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
document.addEventListener('keydown', handleKeyDown, true);
|
|
159
|
+
return () => document.removeEventListener('keydown', handleKeyDown, true);
|
|
160
|
+
}, [openLayer, closePasteUrl, commit]);
|
|
161
|
+
const emptyActions = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_designSystem.Tooltip, {
|
|
162
|
+
content: t('CMS.image.add'),
|
|
163
|
+
appendTo: "window",
|
|
164
|
+
__self: void 0,
|
|
165
|
+
__source: {
|
|
166
|
+
fileName: _jsxFileName,
|
|
167
|
+
lineNumber: 222,
|
|
168
|
+
columnNumber: 7
|
|
169
|
+
}
|
|
170
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.IconButton, {
|
|
171
|
+
size: "tiny",
|
|
172
|
+
priority: "secondary",
|
|
173
|
+
dataHook: "media-image-edit-add-button",
|
|
174
|
+
ariaLabel: t('CMS.image.add'),
|
|
175
|
+
onClick: handleCallMedia,
|
|
176
|
+
__self: void 0,
|
|
177
|
+
__source: {
|
|
178
|
+
fileName: _jsxFileName,
|
|
179
|
+
lineNumber: 223,
|
|
180
|
+
columnNumber: 9
|
|
181
|
+
}
|
|
182
|
+
}, /*#__PURE__*/_react.default.createElement(_lazy.Add, {
|
|
183
|
+
__self: void 0,
|
|
184
|
+
__source: {
|
|
185
|
+
fileName: _jsxFileName,
|
|
186
|
+
lineNumber: 230,
|
|
187
|
+
columnNumber: 11
|
|
188
|
+
}
|
|
189
|
+
}))), /*#__PURE__*/_react.default.createElement(_designSystem.Tooltip, {
|
|
190
|
+
content: t('CMS.image.replaceWithUrl.button'),
|
|
191
|
+
appendTo: "window",
|
|
192
|
+
__self: void 0,
|
|
193
|
+
__source: {
|
|
194
|
+
fileName: _jsxFileName,
|
|
195
|
+
lineNumber: 233,
|
|
196
|
+
columnNumber: 7
|
|
197
|
+
}
|
|
198
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.IconButton, {
|
|
199
|
+
size: "tiny",
|
|
200
|
+
priority: "tertiary",
|
|
201
|
+
dataHook: "media-image-edit-paste-url-button",
|
|
202
|
+
ariaLabel: t('CMS.image.replaceWithUrl.button'),
|
|
203
|
+
onClick: openPasteUrl,
|
|
204
|
+
__self: void 0,
|
|
205
|
+
__source: {
|
|
206
|
+
fileName: _jsxFileName,
|
|
207
|
+
lineNumber: 234,
|
|
208
|
+
columnNumber: 9
|
|
209
|
+
}
|
|
210
|
+
}, /*#__PURE__*/_react.default.createElement(_lazy.LinkSmall, {
|
|
211
|
+
__self: void 0,
|
|
212
|
+
__source: {
|
|
213
|
+
fileName: _jsxFileName,
|
|
214
|
+
lineNumber: 241,
|
|
215
|
+
columnNumber: 11
|
|
216
|
+
}
|
|
217
|
+
}))));
|
|
218
|
+
|
|
219
|
+
// One return for both states, so the shell and its container stay mounted
|
|
220
|
+
// when a pick fills an empty cell.
|
|
221
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_mediaControl.CellMediaEditShell, {
|
|
222
|
+
dataHook: dataHook,
|
|
223
|
+
mediaEdit: mediaEdit,
|
|
224
|
+
fieldType: _mediaControl.MediaFieldType.image,
|
|
225
|
+
padding: image ? '0' : undefined,
|
|
226
|
+
__self: void 0,
|
|
227
|
+
__source: {
|
|
228
|
+
fileName: _jsxFileName,
|
|
229
|
+
lineNumber: 251,
|
|
230
|
+
columnNumber: 7
|
|
231
|
+
}
|
|
232
|
+
}, !image ? emptyActions : /*#__PURE__*/_react.default.createElement("div", {
|
|
233
|
+
className: _cellMediaImageEditStCss.classes.view,
|
|
234
|
+
__self: void 0,
|
|
235
|
+
__source: {
|
|
236
|
+
fileName: _jsxFileName,
|
|
237
|
+
lineNumber: 260,
|
|
238
|
+
columnNumber: 11
|
|
239
|
+
}
|
|
240
|
+
}, /*#__PURE__*/_react.default.createElement(_mediaImageView.MediaImageView, {
|
|
241
|
+
value: image,
|
|
242
|
+
__self: void 0,
|
|
243
|
+
__source: {
|
|
244
|
+
fileName: _jsxFileName,
|
|
245
|
+
lineNumber: 261,
|
|
246
|
+
columnNumber: 13
|
|
247
|
+
}
|
|
248
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
249
|
+
className: _cellMediaImageEditStCss.classes.anchor,
|
|
250
|
+
__self: void 0,
|
|
251
|
+
__source: {
|
|
252
|
+
fileName: _jsxFileName,
|
|
253
|
+
lineNumber: 262,
|
|
254
|
+
columnNumber: 13
|
|
255
|
+
}
|
|
256
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.Popover, {
|
|
257
|
+
shown: popoverLayer !== 'none',
|
|
258
|
+
appendTo: "window",
|
|
259
|
+
placement: "bottom-start",
|
|
260
|
+
moveBy: {
|
|
261
|
+
x: 0,
|
|
262
|
+
y: 4
|
|
263
|
+
},
|
|
264
|
+
zIndex: 5001,
|
|
265
|
+
animate: true,
|
|
266
|
+
flip: true,
|
|
267
|
+
fixed: false,
|
|
268
|
+
onClickOutside: handleClickOutside,
|
|
269
|
+
__self: void 0,
|
|
270
|
+
__source: {
|
|
271
|
+
fileName: _jsxFileName,
|
|
272
|
+
lineNumber: 263,
|
|
273
|
+
columnNumber: 15
|
|
274
|
+
}
|
|
275
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.Popover.Element, {
|
|
276
|
+
__self: void 0,
|
|
277
|
+
__source: {
|
|
278
|
+
fileName: _jsxFileName,
|
|
279
|
+
lineNumber: 274,
|
|
280
|
+
columnNumber: 17
|
|
281
|
+
}
|
|
282
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
283
|
+
className: _cellMediaImageEditStCss.classes.anchorBox,
|
|
284
|
+
__self: void 0,
|
|
285
|
+
__source: {
|
|
286
|
+
fileName: _jsxFileName,
|
|
287
|
+
lineNumber: 275,
|
|
288
|
+
columnNumber: 19
|
|
289
|
+
}
|
|
290
|
+
})), /*#__PURE__*/_react.default.createElement(_designSystem.Popover.Content, {
|
|
291
|
+
__self: void 0,
|
|
292
|
+
__source: {
|
|
293
|
+
fileName: _jsxFileName,
|
|
294
|
+
lineNumber: 277,
|
|
295
|
+
columnNumber: 17
|
|
296
|
+
}
|
|
297
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
|
|
298
|
+
dataHook: "media-image-edit-popover",
|
|
299
|
+
className: _cellMediaImageEditStCss.classes.popoverContent,
|
|
300
|
+
direction: "vertical",
|
|
301
|
+
gap: "SP3",
|
|
302
|
+
padding: "SP3",
|
|
303
|
+
__self: void 0,
|
|
304
|
+
__source: {
|
|
305
|
+
fileName: _jsxFileName,
|
|
306
|
+
lineNumber: 278,
|
|
307
|
+
columnNumber: 19
|
|
308
|
+
}
|
|
309
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.FormField, {
|
|
310
|
+
label: t('CMS.image.thumbnail.label'),
|
|
311
|
+
__self: void 0,
|
|
312
|
+
__source: {
|
|
313
|
+
fileName: _jsxFileName,
|
|
314
|
+
lineNumber: 285,
|
|
315
|
+
columnNumber: 21
|
|
316
|
+
}
|
|
317
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
318
|
+
className: _cellMediaImageEditStCss.classes.image,
|
|
319
|
+
__self: void 0,
|
|
320
|
+
__source: {
|
|
321
|
+
fileName: _jsxFileName,
|
|
322
|
+
lineNumber: 286,
|
|
323
|
+
columnNumber: 23
|
|
324
|
+
}
|
|
325
|
+
}, /*#__PURE__*/_react.default.createElement(_mediaImage.MediaImage, {
|
|
326
|
+
dataHook: "media-image-edit-image",
|
|
327
|
+
src: src,
|
|
328
|
+
alt: "",
|
|
329
|
+
fit: "cover",
|
|
330
|
+
transparent: true,
|
|
331
|
+
size: _autoFieldTypes.ThumbnailSize.L,
|
|
332
|
+
width: "180px",
|
|
333
|
+
height: "180px",
|
|
334
|
+
borderRadius: "0",
|
|
335
|
+
__self: void 0,
|
|
336
|
+
__source: {
|
|
337
|
+
fileName: _jsxFileName,
|
|
338
|
+
lineNumber: 287,
|
|
339
|
+
columnNumber: 25
|
|
340
|
+
}
|
|
341
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
342
|
+
className: (0, _cellMediaImageEditStCss.st)(_cellMediaImageEditStCss.classes.imageActions, {
|
|
343
|
+
menuOpen: popoverLayer === 'menu'
|
|
344
|
+
}),
|
|
345
|
+
__self: void 0,
|
|
346
|
+
__source: {
|
|
347
|
+
fileName: _jsxFileName,
|
|
348
|
+
lineNumber: 298,
|
|
349
|
+
columnNumber: 25
|
|
350
|
+
}
|
|
351
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.Tooltip, {
|
|
352
|
+
content: t('CMS.image.replace'),
|
|
353
|
+
appendTo: "window",
|
|
354
|
+
__self: void 0,
|
|
355
|
+
__source: {
|
|
356
|
+
fileName: _jsxFileName,
|
|
357
|
+
lineNumber: 303,
|
|
358
|
+
columnNumber: 27
|
|
359
|
+
}
|
|
360
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.IconButton, {
|
|
361
|
+
size: "small",
|
|
362
|
+
skin: "light",
|
|
363
|
+
priority: "secondary",
|
|
364
|
+
dataHook: "media-image-edit-replace-button",
|
|
365
|
+
ariaLabel: t('CMS.image.replace'),
|
|
366
|
+
onClick: handleCallMedia,
|
|
367
|
+
__self: void 0,
|
|
368
|
+
__source: {
|
|
369
|
+
fileName: _jsxFileName,
|
|
370
|
+
lineNumber: 307,
|
|
371
|
+
columnNumber: 29
|
|
372
|
+
}
|
|
373
|
+
}, /*#__PURE__*/_react.default.createElement(_lazy.Replace, {
|
|
374
|
+
__self: void 0,
|
|
375
|
+
__source: {
|
|
376
|
+
fileName: _jsxFileName,
|
|
377
|
+
lineNumber: 315,
|
|
378
|
+
columnNumber: 31
|
|
379
|
+
}
|
|
380
|
+
}))), /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu, {
|
|
381
|
+
textSize: "small",
|
|
382
|
+
appendTo: "window",
|
|
383
|
+
zIndex: 5002,
|
|
384
|
+
triggerElement: ({
|
|
385
|
+
isOpen,
|
|
386
|
+
toggle,
|
|
387
|
+
ref
|
|
388
|
+
}) => /*#__PURE__*/_react.default.createElement(MenuTrigger, {
|
|
389
|
+
isOpen: isOpen,
|
|
390
|
+
toggle: toggle,
|
|
391
|
+
buttonRef: ref,
|
|
392
|
+
onOpenChange: handleMenuOpenChange,
|
|
393
|
+
ariaLabel: t('auto-patterns.fields.more_actions_tooltip'),
|
|
394
|
+
__self: void 0,
|
|
395
|
+
__source: {
|
|
396
|
+
fileName: _jsxFileName,
|
|
397
|
+
lineNumber: 323,
|
|
398
|
+
columnNumber: 31
|
|
399
|
+
}
|
|
400
|
+
}),
|
|
401
|
+
__self: void 0,
|
|
402
|
+
__source: {
|
|
403
|
+
fileName: _jsxFileName,
|
|
404
|
+
lineNumber: 318,
|
|
405
|
+
columnNumber: 27
|
|
406
|
+
}
|
|
407
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu.MenuItem, {
|
|
408
|
+
dataHook: "media-image-edit-action-replace-url",
|
|
409
|
+
text: t('CMS.image.replaceWithUrl.button'),
|
|
410
|
+
prefixIcon: /*#__PURE__*/_react.default.createElement(_lazy.Link, {
|
|
411
|
+
__self: void 0,
|
|
412
|
+
__source: {
|
|
413
|
+
fileName: _jsxFileName,
|
|
414
|
+
lineNumber: 337,
|
|
415
|
+
columnNumber: 43
|
|
416
|
+
}
|
|
417
|
+
}),
|
|
418
|
+
onClick: openPasteUrl,
|
|
419
|
+
__self: void 0,
|
|
420
|
+
__source: {
|
|
421
|
+
fileName: _jsxFileName,
|
|
422
|
+
lineNumber: 334,
|
|
423
|
+
columnNumber: 29
|
|
424
|
+
}
|
|
425
|
+
}), /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu.MenuItem, {
|
|
426
|
+
dataHook: "media-image-edit-action-preview",
|
|
427
|
+
text: t('CMS.mediaGallery.preview'),
|
|
428
|
+
prefixIcon: /*#__PURE__*/_react.default.createElement(_lazy.Maximize, {
|
|
429
|
+
__self: void 0,
|
|
430
|
+
__source: {
|
|
431
|
+
fileName: _jsxFileName,
|
|
432
|
+
lineNumber: 343,
|
|
433
|
+
columnNumber: 43
|
|
434
|
+
}
|
|
435
|
+
}),
|
|
436
|
+
onClick: () => setPopoverLayer('preview'),
|
|
437
|
+
__self: void 0,
|
|
438
|
+
__source: {
|
|
439
|
+
fileName: _jsxFileName,
|
|
440
|
+
lineNumber: 340,
|
|
441
|
+
columnNumber: 29
|
|
442
|
+
}
|
|
443
|
+
}), /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu.MenuItem, {
|
|
444
|
+
dataHook: "media-image-edit-action-download",
|
|
445
|
+
text: t('CMS.image.download'),
|
|
446
|
+
prefixIcon: /*#__PURE__*/_react.default.createElement(_lazy.Download, {
|
|
447
|
+
__self: void 0,
|
|
448
|
+
__source: {
|
|
449
|
+
fileName: _jsxFileName,
|
|
450
|
+
lineNumber: 349,
|
|
451
|
+
columnNumber: 43
|
|
452
|
+
}
|
|
453
|
+
}),
|
|
454
|
+
onClick: handleDownload,
|
|
455
|
+
__self: void 0,
|
|
456
|
+
__source: {
|
|
457
|
+
fileName: _jsxFileName,
|
|
458
|
+
lineNumber: 346,
|
|
459
|
+
columnNumber: 29
|
|
460
|
+
}
|
|
461
|
+
}), /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu.Divider, {
|
|
462
|
+
__self: void 0,
|
|
463
|
+
__source: {
|
|
464
|
+
fileName: _jsxFileName,
|
|
465
|
+
lineNumber: 352,
|
|
466
|
+
columnNumber: 29
|
|
467
|
+
}
|
|
468
|
+
}), /*#__PURE__*/_react.default.createElement(_designSystem.PopoverMenu.MenuItem, {
|
|
469
|
+
dataHook: "media-image-edit-action-delete",
|
|
470
|
+
text: t('CMS.image.clear'),
|
|
471
|
+
skin: "destructive",
|
|
472
|
+
prefixIcon: /*#__PURE__*/_react.default.createElement(_lazy.Delete, {
|
|
473
|
+
__self: void 0,
|
|
474
|
+
__source: {
|
|
475
|
+
fileName: _jsxFileName,
|
|
476
|
+
lineNumber: 357,
|
|
477
|
+
columnNumber: 43
|
|
478
|
+
}
|
|
479
|
+
}),
|
|
480
|
+
onClick: handleDelete,
|
|
481
|
+
__self: void 0,
|
|
482
|
+
__source: {
|
|
483
|
+
fileName: _jsxFileName,
|
|
484
|
+
lineNumber: 353,
|
|
485
|
+
columnNumber: 29
|
|
486
|
+
}
|
|
487
|
+
}))))), /*#__PURE__*/_react.default.createElement(_designSystem.FormField, {
|
|
488
|
+
label: t('CMS.image.altText.label'),
|
|
489
|
+
__self: void 0,
|
|
490
|
+
__source: {
|
|
491
|
+
fileName: _jsxFileName,
|
|
492
|
+
lineNumber: 364,
|
|
493
|
+
columnNumber: 21
|
|
494
|
+
}
|
|
495
|
+
}, /*#__PURE__*/_react.default.createElement(_designSystem.Input, {
|
|
496
|
+
dataHook: "media-image-edit-alt-input",
|
|
497
|
+
size: "small",
|
|
498
|
+
value: image.altText ?? '',
|
|
499
|
+
placeholder: t('CMS.image.altText.inputPlaceholder'),
|
|
500
|
+
onChange: e => onChange((0, _mediaImageValue.withAltText)(image, e.target.value)),
|
|
501
|
+
onEnterPressed: commit,
|
|
502
|
+
__self: void 0,
|
|
503
|
+
__source: {
|
|
504
|
+
fileName: _jsxFileName,
|
|
505
|
+
lineNumber: 365,
|
|
506
|
+
columnNumber: 23
|
|
507
|
+
}
|
|
508
|
+
})))))))), image && /*#__PURE__*/_react.default.createElement(_mediaPreviewModal.MediaPreviewModal, {
|
|
509
|
+
isOpen: popoverLayer === 'preview',
|
|
510
|
+
value: src,
|
|
511
|
+
onClose: () => setPopoverLayer('popover'),
|
|
512
|
+
onRequestMedia: handleCallMedia,
|
|
513
|
+
onClearMedia: handleDelete,
|
|
514
|
+
onDownloadMedia: handleDownload,
|
|
515
|
+
textKeys: {
|
|
516
|
+
replace: 'CMS.image.replace',
|
|
517
|
+
download: 'CMS.image.download',
|
|
518
|
+
delete: 'CMS.image.clear'
|
|
519
|
+
},
|
|
520
|
+
__self: void 0,
|
|
521
|
+
__source: {
|
|
522
|
+
fileName: _jsxFileName,
|
|
523
|
+
lineNumber: 384,
|
|
524
|
+
columnNumber: 9
|
|
525
|
+
}
|
|
526
|
+
}));
|
|
527
|
+
};
|
|
528
|
+
exports.CellMediaImageEdit = CellMediaImageEdit;
|
|
529
|
+
CellMediaImageEdit.displayName = 'CellMediaImageEdit';
|
|
530
|
+
//# sourceMappingURL=cell-media-image-edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_lazy","_autoFieldTypes","_hooks","_getImageSource","_mediaImageValue","_mediaUtils","_mediaControl","_mediaPreviewModal","_mediaImage","_mediaImageView","_cellMediaImageEditStCss","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","imageFromUrl","url","current","replaceImage","fromImageUrl","MenuTrigger","isOpen","toggle","buttonRef","onOpenChange","ariaLabel","useEffect","createElement","IconButton","ref","size","skin","priority","dataHook","onClick","__self","__source","fileName","lineNumber","columnNumber","MoreSmall","CellMediaImageEdit","value","onChange","onCommit","onCancel","onStartEdit","inputRef","useTranslations","image","toMediaImageValue","src","getImageSource","popoverLayer","setPopoverLayer","useState","mediaEdit","useCellMediaEdit","mediaType","MEDIA_TYPES","IMAGE","fromPick","fromMediaManagerPick","fromUrl","commitOnPick","loading","pasteUrlForm","handleCallMedia","handleDelete","downloadMedia","closePasteUrl","handleClose","openLayer","openPasteUrl","startEditAndOpenPasteUrl","title","isExternalMediaImage","undefined","handleDownload","useCallback","executeDownloading","commit","handleMenuOpenChange","layer","handleClickOutside","handleKeyDown","key","stopPropagation","document","addEventListener","removeEventListener","emptyActions","Fragment","Tooltip","content","appendTo","Add","LinkSmall","CellMediaEditShell","fieldType","MediaFieldType","padding","className","classes","view","MediaImageView","anchor","Popover","shown","placement","moveBy","x","y","zIndex","animate","flip","fixed","onClickOutside","Element","anchorBox","Content","Box","popoverContent","direction","gap","FormField","label","MediaImage","alt","fit","transparent","ThumbnailSize","L","width","height","borderRadius","st","imageActions","menuOpen","Replace","PopoverMenu","textSize","triggerElement","MenuItem","text","prefixIcon","Link","Maximize","Download","Divider","Delete","Input","altText","placeholder","withAltText","target","onEnterPressed","MediaPreviewModal","onClose","onRequestMedia","onClearMedia","onDownloadMedia","textKeys","replace","download","delete","exports","displayName"],"sources":["../../../../src/components/media-image-field/cell-media-image-edit.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport {\n Box,\n FormField,\n IconButton,\n Input,\n Popover,\n PopoverMenu,\n Tooltip,\n} from '@wix/design-system';\nimport {\n Add,\n Delete,\n Download,\n Link,\n LinkSmall,\n Maximize,\n MoreSmall,\n Replace,\n} from '@wix/wix-ui-icons-common/lazy';\nimport { ThumbnailSize } from '../../auto-field-types';\nimport { useTranslations } from '../../hooks';\nimport type { MediaImageValue } from '../../types/media-image';\nimport { getImageSource } from '../../utils/get-image-source';\nimport {\n fromImageUrl,\n fromMediaManagerPick,\n isExternalMediaImage,\n replaceImage,\n toMediaImageValue,\n withAltText,\n} from '../../utils/media-image-value';\nimport { executeDownloading, MEDIA_TYPES } from '../../utils/media-utils';\nimport {\n CellMediaEditShell,\n MediaFieldType,\n useCellMediaEdit,\n} from '../media-control';\nimport { MediaPreviewModal } from '../media-gallery/media-preview-modal';\nimport { MediaImage } from '../media-image';\nimport { MediaImageView } from './media-image-view';\nimport { st, classes } from './cell-media-image-edit.st.css.js';\n\nexport interface CellMediaImageEditProps {\n /** A `MEDIA_IMAGE` value. */\n value: unknown;\n onChange: (value: MediaImageValue | null) => void;\n onCommit: () => void;\n onCancel?: () => void;\n /**\n * Called before opening external UI (media manager / paste-URL form) so the\n * table can set isEditing=true and protect cell focus while the modal is open.\n */\n onStartEdit?: () => void;\n inputRef?: React.MutableRefObject<{ focus: () => void } | null | undefined>;\n dataHook?: string;\n}\n\ntype PopoverLayer = 'none' | 'popover' | 'menu' | 'preview';\n\n/** What is on top of the editor. Escape and click-outside act on it. */\ntype Layer = PopoverLayer | 'pasteUrl' | 'loading';\n\nconst imageFromUrl = (url: string, current: MediaImageValue | null) =>\n replaceImage(current, fromImageUrl(url));\n\ninterface MenuTriggerProps {\n isOpen: boolean;\n toggle: () => void;\n /** Lets WDS put focus back here when the menu closes. */\n buttonRef?: React.RefObject<HTMLElement>;\n onOpenChange: (isOpen: boolean) => void;\n ariaLabel: string;\n}\n\n/** WDS shows the menu's open state only to its trigger, so the trigger\n * reports it. */\nconst MenuTrigger: React.FC<MenuTriggerProps> = ({\n isOpen,\n toggle,\n buttonRef,\n onOpenChange,\n ariaLabel,\n}) => {\n useEffect(() => {\n onOpenChange(isOpen);\n }, [isOpen, onOpenChange]);\n\n return (\n <IconButton\n ref={buttonRef}\n size=\"small\"\n skin=\"light\"\n priority=\"secondary\"\n dataHook=\"media-image-edit-more-button\"\n ariaLabel={ariaLabel}\n aria-haspopup=\"menu\"\n aria-expanded={isOpen}\n onClick={toggle}\n >\n <MoreSmall />\n </IconButton>\n );\n};\n\n/**\n * Edits a `MEDIA_IMAGE` cell. An empty cell shows the add and paste-URL\n * buttons. A cell with an image opens a popover with the image and its alt\n * text. Changes go to `onChange` as they happen and are committed once, when\n * the popover closes.\n */\nexport const CellMediaImageEdit: React.FC<CellMediaImageEditProps> = ({\n value,\n onChange,\n onCommit,\n onCancel,\n onStartEdit,\n inputRef,\n dataHook,\n}) => {\n const { t } = useTranslations();\n const image = toMediaImageValue(value);\n const src = getImageSource(image);\n // 'none' once committed.\n const [popoverLayer, setPopoverLayer] = useState<PopoverLayer>('popover');\n\n const mediaEdit = useCellMediaEdit({\n mediaType: MEDIA_TYPES.IMAGE,\n value: image,\n onChange,\n onCommit,\n onCancel,\n onStartEdit,\n inputRef,\n fromPick: fromMediaManagerPick,\n fromUrl: imageFromUrl,\n commitOnPick: false,\n });\n const {\n loading,\n pasteUrlForm,\n handleCallMedia,\n handleDelete,\n downloadMedia,\n } = mediaEdit;\n const closePasteUrl = pasteUrlForm.handleClose;\n // The media manager and the URL form sit above the popover layers.\n const openLayer: Layer = loading\n ? 'loading'\n : pasteUrlForm.isOpen\n ? 'pasteUrl'\n : image\n ? popoverLayer\n : 'none';\n\n const openPasteUrl = mediaEdit.startEditAndOpenPasteUrl({\n title: t('CMS.image.replaceWithUrl.title'),\n value: isExternalMediaImage(image) ? image.url : undefined,\n });\n\n const handleDownload = useCallback(() => {\n // The Media Manager can't make a download link for an external URL.\n if (isExternalMediaImage(image)) {\n executeDownloading(image.url);\n } else if (src) {\n downloadMedia(src);\n }\n }, [src, image, downloadMedia]);\n\n const commit = useCallback(() => {\n setPopoverLayer('none');\n onCommit();\n }, [onCommit]);\n\n // Picking Preview sets its own layer, which closing the menu must not undo.\n const handleMenuOpenChange = useCallback((isOpen: boolean) => {\n setPopoverLayer((layer) => {\n if (isOpen) {\n return 'menu';\n }\n return layer === 'menu' ? 'popover' : layer;\n });\n }, []);\n\n // Fires on mouseup, before the click that closes a menu or a modal, so\n // `openLayer` still says what was open.\n const handleClickOutside = useCallback(() => {\n if (openLayer === 'popover') {\n commit();\n }\n }, [openLayer, commit]);\n\n useEffect(() => {\n // WDS closes the menu on Escape and stops the event there.\n if (\n openLayer === 'none' ||\n openLayer === 'loading' ||\n openLayer === 'menu'\n ) {\n return;\n }\n // Capture phase, so the table doesn't cancel the edit first.\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key !== 'Escape') {\n return;\n }\n e.stopPropagation();\n if (openLayer === 'pasteUrl') {\n closePasteUrl();\n } else if (openLayer === 'preview') {\n setPopoverLayer('popover');\n } else {\n commit();\n }\n };\n document.addEventListener('keydown', handleKeyDown, true);\n return () => document.removeEventListener('keydown', handleKeyDown, true);\n }, [openLayer, closePasteUrl, commit]);\n\n const emptyActions = (\n <>\n <Tooltip content={t('CMS.image.add')} appendTo=\"window\">\n <IconButton\n size=\"tiny\"\n priority=\"secondary\"\n dataHook=\"media-image-edit-add-button\"\n ariaLabel={t('CMS.image.add')}\n onClick={handleCallMedia}\n >\n <Add />\n </IconButton>\n </Tooltip>\n <Tooltip content={t('CMS.image.replaceWithUrl.button')} appendTo=\"window\">\n <IconButton\n size=\"tiny\"\n priority=\"tertiary\"\n dataHook=\"media-image-edit-paste-url-button\"\n ariaLabel={t('CMS.image.replaceWithUrl.button')}\n onClick={openPasteUrl}\n >\n <LinkSmall />\n </IconButton>\n </Tooltip>\n </>\n );\n\n // One return for both states, so the shell and its container stay mounted\n // when a pick fills an empty cell.\n return (\n <>\n <CellMediaEditShell\n dataHook={dataHook}\n mediaEdit={mediaEdit}\n fieldType={MediaFieldType.image}\n padding={image ? '0' : undefined}\n >\n {!image ? (\n emptyActions\n ) : (\n <div className={classes.view}>\n <MediaImageView value={image} />\n <div className={classes.anchor}>\n <Popover\n shown={popoverLayer !== 'none'}\n appendTo=\"window\"\n placement=\"bottom-start\"\n moveBy={{ x: 0, y: 4 }}\n zIndex={5001}\n animate\n flip\n fixed={false}\n onClickOutside={handleClickOutside}\n >\n <Popover.Element>\n <div className={classes.anchorBox} />\n </Popover.Element>\n <Popover.Content>\n <Box\n dataHook=\"media-image-edit-popover\"\n className={classes.popoverContent}\n direction=\"vertical\"\n gap=\"SP3\"\n padding=\"SP3\"\n >\n <FormField label={t('CMS.image.thumbnail.label')}>\n <div className={classes.image}>\n <MediaImage\n dataHook=\"media-image-edit-image\"\n src={src}\n alt=\"\"\n fit=\"cover\"\n transparent\n size={ThumbnailSize.L}\n width=\"180px\"\n height=\"180px\"\n borderRadius=\"0\"\n />\n <div\n className={st(classes.imageActions, {\n menuOpen: popoverLayer === 'menu',\n })}\n >\n <Tooltip\n content={t('CMS.image.replace')}\n appendTo=\"window\"\n >\n <IconButton\n size=\"small\"\n skin=\"light\"\n priority=\"secondary\"\n dataHook=\"media-image-edit-replace-button\"\n ariaLabel={t('CMS.image.replace')}\n onClick={handleCallMedia}\n >\n <Replace />\n </IconButton>\n </Tooltip>\n <PopoverMenu\n textSize=\"small\"\n appendTo=\"window\"\n zIndex={5002}\n triggerElement={({ isOpen, toggle, ref }) => (\n <MenuTrigger\n isOpen={isOpen}\n toggle={toggle}\n buttonRef={ref}\n onOpenChange={handleMenuOpenChange}\n ariaLabel={t(\n 'auto-patterns.fields.more_actions_tooltip',\n )}\n />\n )}\n >\n <PopoverMenu.MenuItem\n dataHook=\"media-image-edit-action-replace-url\"\n text={t('CMS.image.replaceWithUrl.button')}\n prefixIcon={<Link />}\n onClick={openPasteUrl}\n />\n <PopoverMenu.MenuItem\n dataHook=\"media-image-edit-action-preview\"\n text={t('CMS.mediaGallery.preview')}\n prefixIcon={<Maximize />}\n onClick={() => setPopoverLayer('preview')}\n />\n <PopoverMenu.MenuItem\n dataHook=\"media-image-edit-action-download\"\n text={t('CMS.image.download')}\n prefixIcon={<Download />}\n onClick={handleDownload}\n />\n <PopoverMenu.Divider />\n <PopoverMenu.MenuItem\n dataHook=\"media-image-edit-action-delete\"\n text={t('CMS.image.clear')}\n skin=\"destructive\"\n prefixIcon={<Delete />}\n onClick={handleDelete}\n />\n </PopoverMenu>\n </div>\n </div>\n </FormField>\n <FormField label={t('CMS.image.altText.label')}>\n <Input\n dataHook=\"media-image-edit-alt-input\"\n size=\"small\"\n value={image.altText ?? ''}\n placeholder={t('CMS.image.altText.inputPlaceholder')}\n onChange={(e) =>\n onChange(withAltText(image, e.target.value))\n }\n onEnterPressed={commit}\n />\n </FormField>\n </Box>\n </Popover.Content>\n </Popover>\n </div>\n </div>\n )}\n </CellMediaEditShell>\n {image && (\n <MediaPreviewModal\n isOpen={popoverLayer === 'preview'}\n value={src}\n onClose={() => setPopoverLayer('popover')}\n onRequestMedia={handleCallMedia}\n onClearMedia={handleDelete}\n onDownloadMedia={handleDownload}\n textKeys={{\n replace: 'CMS.image.replace',\n download: 'CMS.image.download',\n delete: 'CMS.image.clear',\n }}\n />\n )}\n </>\n );\n};\n\nCellMediaImageEdit.displayName = 'CellMediaImageEdit';\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@property st-global(--wds-color-fill-transparent-primary);
|
|
2
|
+
@property st-global(--wsr-color-D10);
|
|
3
|
+
@property st-global(--wds-image-border-radius-default);
|
|
4
|
+
@property st-global(--wds-space-100);
|
|
5
|
+
|
|
6
|
+
.view {
|
|
7
|
+
position: relative;
|
|
8
|
+
width: 100%;
|
|
9
|
+
height: 100%;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/* A zero-height strip along the cell's bottom edge, so the popover opens
|
|
13
|
+
under the cell. */
|
|
14
|
+
.anchor {
|
|
15
|
+
position: absolute;
|
|
16
|
+
left: 0;
|
|
17
|
+
right: 0;
|
|
18
|
+
bottom: 0;
|
|
19
|
+
height: 0;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.anchorBox {
|
|
23
|
+
width: 100%;
|
|
24
|
+
height: 0;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.popoverContent {
|
|
28
|
+
width: 288px;
|
|
29
|
+
box-sizing: border-box;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.image {
|
|
33
|
+
position: relative;
|
|
34
|
+
width: 180px;
|
|
35
|
+
height: 180px;
|
|
36
|
+
border-radius: var(--wds-image-border-radius-default, 8px);
|
|
37
|
+
overflow: hidden;
|
|
38
|
+
line-height: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Shown on hover, and while a button inside has focus, so the actions stay
|
|
42
|
+
reachable by keyboard. */
|
|
43
|
+
.imageActions {
|
|
44
|
+
-st-states: menuOpen;
|
|
45
|
+
position: absolute;
|
|
46
|
+
inset: 0;
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
justify-content: center;
|
|
50
|
+
gap: var(--wds-space-100, 6px);
|
|
51
|
+
opacity: 0;
|
|
52
|
+
background: var(
|
|
53
|
+
--wds-color-fill-transparent-primary,
|
|
54
|
+
color-mix(in srgb, var(--wsr-color-D10, #000624) 66%, transparent)
|
|
55
|
+
);
|
|
56
|
+
transition: opacity 0.15s;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.image:hover .imageActions,
|
|
60
|
+
.imageActions:focus-within,
|
|
61
|
+
.imageActions:menuOpen {
|
|
62
|
+
opacity: 1;
|
|
63
|
+
}
|