@wix/patterns-fields 1.65.0 → 1.67.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/auto-field-types/validations.js +9 -13
- package/dist/cjs/auto-field-types/validations.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/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/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/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/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/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/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-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/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/cdn/load-ricos.js +135 -0
- package/dist/cjs/components/rich-content/cdn/load-ricos.js.map +1 -0
- package/dist/cjs/components/rich-content/cdn/types.js +4 -0
- package/dist/cjs/components/rich-content/cdn/types.js.map +1 -0
- package/dist/cjs/components/rich-content/cell-rich-content-input.js +3 -3
- package/dist/cjs/components/rich-content/cell-rich-content-input.js.map +1 -1
- package/dist/cjs/components/rich-content/cell-rich-content-view.js +2 -2
- package/dist/cjs/components/rich-content/cell-rich-content-view.js.map +1 -1
- package/dist/cjs/components/rich-content/editor.js.map +1 -1
- package/dist/cjs/components/rich-content/form-rich-content.js +2 -2
- package/dist/cjs/components/rich-content/form-rich-content.js.map +1 -1
- package/dist/cjs/components/rich-content/hooks/use-plain-text-rich-content.js +5 -3
- package/dist/cjs/components/rich-content/hooks/use-plain-text-rich-content.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.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/default-value-read-only-input/rich-content-form-read-only-input.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.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-input/use-rich-content-form-input.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.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/hooks.js +7 -8
- package/dist/cjs/components/rich-content/rich-content-input/hooks.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/hooks.js +15 -3
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/hooks.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-common/types.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/plugins.js +38 -31
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/plugins.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js +27 -22
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.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.js +10 -9
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.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/plugins.js +11 -17
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/plugins.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js +47 -15
- package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.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-content/rich-content-input/services/rich-content-document-http-service.js.map +1 -1
- package/dist/cjs/components/rich-content/rich-content-input/services/types.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/exports/ricos-statics-legacy.js +10 -0
- package/dist/cjs/exports/ricos-statics-legacy.js.map +1 -0
- package/dist/cjs/exports/ricos-statics.js +10 -0
- package/dist/cjs/exports/ricos-statics.js.map +1 -0
- package/dist/cjs/styles.global.css +1 -1
- package/dist/cjs/validations/rich-content.js +26 -6
- package/dist/cjs/validations/rich-content.js.map +1 -1
- package/dist/esm/auto-field-types/validations.js +10 -13
- package/dist/esm/auto-field-types/validations.js.map +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/actions/actions-menu/actions-menu.st.css.js.map +1 -1
- package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
- 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/color-view/cell-color-view.st.css.js +2 -2
- 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/delete-dialog/delete-dialog.st.css.js +2 -2
- package/dist/esm/components/document/form-document-field.st.css.js +2 -2
- package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
- package/dist/esm/components/exclamation/exclamation.st.css.js.map +1 -1
- package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
- package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
- package/dist/esm/components/image/thumbnail-replace-overlay.st.css.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-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-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/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/reference/cell-reference-input.st.css.js.map +1 -1
- package/dist/esm/components/rich-content/cdn/load-ricos.js +126 -0
- package/dist/esm/components/rich-content/cdn/load-ricos.js.map +1 -0
- package/dist/esm/components/rich-content/cdn/types.js +2 -0
- package/dist/esm/components/rich-content/cdn/types.js.map +1 -0
- package/dist/esm/components/rich-content/cell-rich-content-input.js +1 -1
- package/dist/esm/components/rich-content/cell-rich-content-input.js.map +1 -1
- package/dist/esm/components/rich-content/cell-rich-content-view.js +1 -1
- package/dist/esm/components/rich-content/cell-rich-content-view.js.map +1 -1
- package/dist/esm/components/rich-content/editor.js +1 -1
- package/dist/esm/components/rich-content/editor.js.map +1 -1
- package/dist/esm/components/rich-content/form-rich-content.js +1 -1
- package/dist/esm/components/rich-content/form-rich-content.js.map +1 -1
- package/dist/esm/components/rich-content/hooks/use-plain-text-rich-content.js +3 -2
- package/dist/esm/components/rich-content/hooks/use-plain-text-rich-content.js.map +1 -1
- 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-input/rich-content-form-input.st.css.js.map +1 -1
- 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/hooks.js +4 -7
- package/dist/esm/components/rich-content/rich-content-input/hooks.js.map +1 -1
- 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/hooks.js +14 -2
- package/dist/esm/components/rich-content/rich-content-input/rich-content-common/hooks.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/plugins.js +49 -41
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/plugins.js.map +1 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js +10 -5
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.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.js +3 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.js.map +1 -1
- 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-editor/rich-content-toolbar.st.css.js.map +1 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/plugins.js +31 -37
- package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/plugins.js.map +1 -1
- package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js +11 -5
- package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js.map +1 -1
- 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/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/components/text/text-view.st.css.js.map +1 -1
- package/dist/esm/exports/ricos-statics-legacy.js +6 -0
- package/dist/esm/exports/ricos-statics-legacy.js.map +1 -0
- package/dist/esm/exports/ricos-statics.js +10 -0
- package/dist/esm/exports/ricos-statics.js.map +1 -0
- package/dist/esm/styles.global.css +1 -1
- package/dist/esm/validations/rich-content.js +18 -1
- package/dist/esm/validations/rich-content.js.map +1 -1
- package/dist/types/auto-field-types/validations.d.ts +8 -0
- package/dist/types/auto-field-types/validations.d.ts.map +1 -1
- package/dist/types/components/address/input/address-input.st.css.d.ts.map +1 -1
- package/dist/types/components/audio/actions/actions-menu/actions-menu.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/color-view/color-view.st.css.d.ts.map +1 -1
- package/dist/types/components/exclamation/exclamation.st.css.d.ts.map +1 -1
- package/dist/types/components/image/thumbnail-replace-overlay.st.css.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-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/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/reference/cell-reference-input.st.css.d.ts.map +1 -1
- package/dist/types/components/rich-content/cdn/load-ricos.d.ts +11 -0
- package/dist/types/components/rich-content/cdn/load-ricos.d.ts.map +1 -0
- package/dist/types/components/rich-content/cdn/types.d.ts +20 -0
- package/dist/types/components/rich-content/cdn/types.d.ts.map +1 -0
- package/dist/types/components/rich-content/cell-rich-content-input.d.ts +1 -1
- package/dist/types/components/rich-content/cell-rich-content-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/form-rich-content.d.ts +1 -1
- package/dist/types/components/rich-content/form-rich-content.d.ts.map +1 -1
- package/dist/types/components/rich-content/hooks/use-plain-text-rich-content.d.ts +1 -1
- package/dist/types/components/rich-content/hooks/use-plain-text-rich-content.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.d.ts +3 -3
- package/dist/types/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/hooks.d.ts +2 -2
- package/dist/types/components/rich-content/rich-content-input/hooks.d.ts.map +1 -1
- 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/hooks.d.ts +11 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-common/hooks.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-content/rich-content-input/rich-content-common/types.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-common/types.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/plugins.d.ts +7 -2
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/plugins.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.d.ts +2 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/plugins.d.ts +6 -15
- package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/plugins.d.ts.map +1 -1
- package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.d.ts +2 -2
- package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.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-content/rich-content-input/services/types.d.ts +1 -1
- package/dist/types/components/rich-content/rich-content-input/services/types.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/components/text/text-view.st.css.d.ts.map +1 -1
- package/dist/types/exports/ricos-statics-legacy.d.ts +6 -0
- package/dist/types/exports/ricos-statics-legacy.d.ts.map +1 -0
- package/dist/types/exports/ricos-statics.d.ts +10 -0
- package/dist/types/exports/ricos-statics.d.ts.map +1 -0
- package/dist/types/validations/rich-content.d.ts +9 -1
- package/dist/types/validations/rich-content.d.ts.map +1 -1
- package/package.json +24 -7
- package/src/__tests__/components/rich-content/form-rich-content.spec.tsx +1 -1
- package/src/__tests__/components/rich-content/load-ricos.spec.ts +17 -0
- package/src/__tests__/components/rich-content-editor.spec.tsx +40 -32
- package/src/__tests__/validations/rich-content.spec.ts +1 -1
- package/src/auto-field-types/validations.ts +25 -13
- 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/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/form-document-field.st.css.ts +2 -2
- 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/thumbnail-replace-overlay.st.css.ts +2 -2
- 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-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/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/cdn/load-ricos.ts +184 -0
- package/src/components/rich-content/cdn/types.ts +21 -0
- package/src/components/rich-content/cell-rich-content-input.tsx +2 -2
- package/src/components/rich-content/cell-rich-content-view.tsx +1 -1
- package/src/components/rich-content/editor.ts +1 -1
- package/src/components/rich-content/form-rich-content.tsx +2 -2
- package/src/components/rich-content/hooks/use-plain-text-rich-content.ts +4 -3
- 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/default-value-input/rich-content-default-value-input.tsx +1 -1
- package/src/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.tsx +1 -1
- 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-input/rich-content-form-input.tsx +1 -1
- package/src/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.ts +1 -1
- 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/form-read-only-input/rich-content-form-read-only-input.tsx +1 -1
- package/src/components/rich-content/rich-content-input/hooks.ts +5 -8
- 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/hooks.ts +15 -3
- 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-common/types.ts +1 -1
- package/src/components/rich-content/rich-content-input/rich-content-editor/plugins.ts +59 -72
- 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-editor.tsx +11 -7
- 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-editor/rich-content-toolbar.tsx +4 -2
- package/src/components/rich-content/rich-content-input/rich-content-viewer/plugins.ts +33 -63
- package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
- package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.tsx +26 -10
- package/src/components/rich-content/rich-content-input/services/rich-content-document-http-service.ts +1 -1
- package/src/components/rich-content/rich-content-input/services/types.ts +1 -1
- 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/exports/ricos-statics-legacy.ts +5 -0
- package/src/exports/ricos-statics.ts +9 -0
- package/src/styles.global.css +1 -1
- package/src/validations/rich-content.ts +20 -2
- package/utils/@wix/patterns-fields-ricos-statics/legacy/package.json +5 -0
- package/utils/@wix/patterns-fields-ricos-statics/package.json +5 -0
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "richcontentformreadonlyinput3298467833";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"richcontentformreadonlyinput3298467833__root"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { useEffect, useMemo, useRef } from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { isDataValid } from '../../../auto-field-types';
|
|
5
|
-
import { FieldType } from '@wix/patterns-fields-utils/@wix/wix-data-schema-types';
|
|
3
|
+
import type { RichContent } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
6
4
|
|
|
5
|
+
import { loadRicosFromCdn } from '../cdn/load-ricos';
|
|
6
|
+
import { isStrictValidAsync } from '../../../validations/rich-content';
|
|
7
7
|
import { noop } from '../../../utils';
|
|
8
8
|
|
|
9
9
|
import { useRichContentDocumentService } from './services';
|
|
@@ -48,11 +48,7 @@ export const useRichContentAutofix = ({
|
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
|
|
52
|
-
strict: true,
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
if (isStrictValid) {
|
|
51
|
+
if (await isStrictValidAsync(data)) {
|
|
56
52
|
return;
|
|
57
53
|
}
|
|
58
54
|
|
|
@@ -64,6 +60,7 @@ export const useRichContentAutofix = ({
|
|
|
64
60
|
return;
|
|
65
61
|
}
|
|
66
62
|
|
|
63
|
+
const { toPlainText } = await loadRicosFromCdn();
|
|
67
64
|
const [plainText, fixedPlainText] = await Promise.all([
|
|
68
65
|
toPlainText(data),
|
|
69
66
|
toPlainText(fixedData),
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "fullscreenmodal4250761155";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"fullscreenmodal4250761155__root","modalContent":"fullscreenmodal4250761155__modalContent"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
import isEqual from 'lodash/isEqual';
|
|
2
2
|
import { useRef, useMemo, useState, useEffect } from 'react';
|
|
3
3
|
|
|
4
|
-
import type { BISettings, RicosDocument } from '@wix/ricos';
|
|
5
|
-
import { ensureContentId
|
|
4
|
+
import type { BISettings, RicosDocument } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
5
|
+
import { ensureContentId } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
6
6
|
import { useWixPatternsContainer } from '@wix/bex-core/react';
|
|
7
7
|
|
|
8
8
|
import { CMS_RICOS_APP_ID } from '../consts';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Sentinel for "nothing has been injected into the editor yet".
|
|
12
|
+
*
|
|
13
|
+
* A plain frozen literal rather than `fromPlainText('')`: every use is either an
|
|
14
|
+
* identity comparison against this exact object (`isEqual` in
|
|
15
|
+
* `rich-content-editor.tsx`, which the effect uses to skip injecting) or an empty
|
|
16
|
+
* fallback returned from an async publish that failed. It is never handed to
|
|
17
|
+
* ricos as content, so it does not need ricos to build it — and building it
|
|
18
|
+
* eagerly is what forced the content helpers into module scope.
|
|
19
|
+
*/
|
|
20
|
+
export const INITIAL_INJECTED_RICH_CONTENT = Object.freeze({
|
|
21
|
+
nodes: [],
|
|
22
|
+
}) as RicosDocument;
|
|
11
23
|
|
|
12
24
|
const ensureRichContent = (content?: RicosDocument) =>
|
|
13
25
|
content && ensureContentId(content);
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "publishloader2050121590";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"publishloader2050121590__root","publishLoader":"publishloader2050121590__publishLoader"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../../stylable-esm-runti
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "togglefullscreenbutton2304801689";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"togglefullscreenbutton2304801689__root"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type Experiments from '@wix/wix-experiments';
|
|
2
|
-
import type { RichContent, RicosTheme } from '@wix/ricos';
|
|
2
|
+
import type { RichContent, RicosTheme } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
3
3
|
|
|
4
4
|
import type { ColorScheme } from '../../types';
|
|
5
5
|
|
|
@@ -1,86 +1,73 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
pluginHeadings,
|
|
8
|
-
pluginLink,
|
|
9
|
-
pluginLineSpacing,
|
|
10
|
-
pluginImage,
|
|
11
|
-
pluginVideo,
|
|
12
|
-
pluginDivider,
|
|
13
|
-
pluginFileUpload,
|
|
14
|
-
pluginHtml,
|
|
15
|
-
pluginLinkPreview,
|
|
16
|
-
LinkPreviewProviders,
|
|
17
|
-
pluginVerticalEmbed,
|
|
18
|
-
verticalEmbedProviders,
|
|
19
|
-
pluginEmoji,
|
|
20
|
-
pluginSpoiler,
|
|
21
|
-
pluginGiphy,
|
|
22
|
-
pluginCodeBlock,
|
|
23
|
-
pluginGallery,
|
|
24
|
-
pluginCollapsibleList,
|
|
25
|
-
pluginIndent,
|
|
26
|
-
pluginTable,
|
|
27
|
-
pluginLinkButton,
|
|
28
|
-
pluginAi,
|
|
29
|
-
} from '@wix/ricos';
|
|
3
|
+
import type {
|
|
4
|
+
EditorPlugin,
|
|
5
|
+
EditorPluginOptions,
|
|
6
|
+
} from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';
|
|
30
7
|
|
|
8
|
+
import type { RicosCdnModule } from '../../cdn/types';
|
|
31
9
|
import { isTruthy } from '../../../../utils';
|
|
32
10
|
import type { ColorScheme } from '../../types';
|
|
33
11
|
import { CMS_RICOS_APP_ID } from '../consts';
|
|
34
12
|
|
|
35
|
-
const { Instagram, Twitter, TikTok } = LinkPreviewProviders;
|
|
36
|
-
const { event, booking, product } = verticalEmbedProviders;
|
|
37
|
-
|
|
38
13
|
const layoutPlugin: EditorPluginOptions = {
|
|
39
14
|
type: 'LAYOUT',
|
|
40
15
|
showInQuickActions: true,
|
|
41
16
|
showInToolbars: true,
|
|
42
17
|
};
|
|
43
18
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Plugin creators come from the CDN module, so this returns an empty list until
|
|
21
|
+
* it has loaded. The editor is not rendered before then, so nothing sees it.
|
|
22
|
+
*/
|
|
23
|
+
export const usePlugins = (
|
|
24
|
+
ricos: RicosCdnModule | undefined,
|
|
25
|
+
colorScheme?: ColorScheme,
|
|
26
|
+
) => {
|
|
27
|
+
return useMemo<(EditorPlugin | EditorPluginOptions)[]>(() => {
|
|
28
|
+
if (!ricos) {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
const { Instagram, Twitter, TikTok } = ricos.LinkPreviewProviders;
|
|
33
|
+
const { event, booking, product } = ricos.verticalEmbedProviders;
|
|
34
|
+
|
|
35
|
+
return [
|
|
36
|
+
ricos.pluginHeadings(),
|
|
37
|
+
ricos.pluginTextColor({
|
|
38
|
+
inlinePopups: true,
|
|
39
|
+
colorScheme,
|
|
40
|
+
}),
|
|
41
|
+
ricos.pluginTextHighlight({
|
|
42
|
+
inlinePopups: true,
|
|
43
|
+
colorScheme,
|
|
44
|
+
}),
|
|
45
|
+
ricos.pluginLineSpacing({ inlinePopups: true }),
|
|
46
|
+
ricos.pluginIndent(),
|
|
47
|
+
ricos.pluginLink(),
|
|
48
|
+
ricos.pluginImage(),
|
|
49
|
+
ricos.pluginVideo(),
|
|
50
|
+
ricos.pluginGallery(),
|
|
51
|
+
ricos.pluginDivider(),
|
|
52
|
+
ricos.pluginTable({ toolbar: {} }),
|
|
53
|
+
ricos.pluginAi({
|
|
54
|
+
appDefId: CMS_RICOS_APP_ID,
|
|
55
|
+
}) as unknown as EditorPlugin,
|
|
56
|
+
ricos.pluginFileUpload(),
|
|
57
|
+
ricos.pluginHtml(),
|
|
58
|
+
ricos.pluginLinkPreview({
|
|
59
|
+
exposeEmbedButtons: [Instagram, Twitter, TikTok],
|
|
60
|
+
}),
|
|
61
|
+
ricos.pluginVerticalEmbed({
|
|
62
|
+
exposeEmbedButtons: [event, booking, product],
|
|
63
|
+
}),
|
|
64
|
+
ricos.pluginCodeBlock(),
|
|
65
|
+
ricos.pluginEmoji(),
|
|
66
|
+
ricos.pluginSpoiler(),
|
|
67
|
+
ricos.pluginGiphy(),
|
|
68
|
+
ricos.pluginCollapsibleList(),
|
|
69
|
+
ricos.pluginLinkButton(),
|
|
70
|
+
layoutPlugin,
|
|
71
|
+
].filter(isTruthy);
|
|
72
|
+
}, [ricos, colorScheme]);
|
|
86
73
|
};
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "richcontenteditor2982314878";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"richcontenteditor2982314878__root","toolbarContainer":"richcontenteditor2982314878__toolbarContainer","footerToolbarContainer":"richcontenteditor2982314878__footerToolbarContainer","toolbarAndFullScreenButtonWrapper":"richcontenteditor2982314878__toolbarAndFullScreenButtonWrapper","editor":"richcontenteditor2982314878__editor","modalEditor":"richcontenteditor2982314878__modalEditor"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.tsx
CHANGED
|
@@ -14,15 +14,15 @@ import React, {
|
|
|
14
14
|
} from 'react';
|
|
15
15
|
|
|
16
16
|
import { Box, Loader } from '@wix/design-system';
|
|
17
|
+
import type { RicosDocument } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
17
18
|
import type {
|
|
18
19
|
ExternalToolbarButton as RicosExternalToolbarButton,
|
|
19
|
-
RicosDocument,
|
|
20
20
|
RicosEditorAPI,
|
|
21
21
|
RicosEditorProps,
|
|
22
22
|
ToolbarsConfig,
|
|
23
|
-
} from '@wix/ricos';
|
|
24
|
-
import { RicosEditor, FORMATTING_BUTTONS } from '@wix/ricos';
|
|
23
|
+
} from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';
|
|
25
24
|
|
|
25
|
+
import { useRicosFromCdn } from '../../cdn/load-ricos';
|
|
26
26
|
import { useRequestFrameCallback } from '../../../../hooks';
|
|
27
27
|
import { getActiveElement, getAppRootElement } from '../../../../utils';
|
|
28
28
|
import { UserSiteFonts } from '../../../user-site-fonts';
|
|
@@ -81,7 +81,7 @@ const InsertToolbarSync: FC<ToolbarSyncProps> = ({
|
|
|
81
81
|
// Ricos 11's next-runtime proxy is supposed to convert the legacy
|
|
82
82
|
// `Record<string, ToolbarButtonProps>` into a v2 `ExternalToolbarButton[]`,
|
|
83
83
|
// but some consumer bundles end up calling through to the inner adapter
|
|
84
|
-
// (duplicate
|
|
84
|
+
// (duplicate ricos copies / unwrapped ref) and we receive the
|
|
85
85
|
// record shape. Normalize to an array so `.map` is safe, and treat the
|
|
86
86
|
// non-array (record) shape as ready — otherwise the absolute-positioned
|
|
87
87
|
// RCELoader overlay stays mounted and the editor row becomes unclickable.
|
|
@@ -104,7 +104,9 @@ const InsertToolbarSync: FC<ToolbarSyncProps> = ({
|
|
|
104
104
|
InsertToolbarSync.displayName = 'InsertToolbarSync';
|
|
105
105
|
|
|
106
106
|
const filterStaticToolbarButtons = (button: string) =>
|
|
107
|
-
|
|
107
|
+
// Inlined rather than read off the CDN module's `FORMATTING_BUTTONS`: this is
|
|
108
|
+
// a plain string constant and the filter runs before the module has loaded.
|
|
109
|
+
button !== 'CODE_BLOCK';
|
|
108
110
|
|
|
109
111
|
const RCE = forwardRef<RCEHandle, RCEProps & ToggleFullscreenButtonProps>(
|
|
110
112
|
(
|
|
@@ -298,7 +300,9 @@ const RCE = forwardRef<RCEHandle, RCEProps & ToggleFullscreenButtonProps>(
|
|
|
298
300
|
);
|
|
299
301
|
|
|
300
302
|
const wixRicosProps = useWixRicosProps();
|
|
301
|
-
const
|
|
303
|
+
const ricos = useRicosFromCdn();
|
|
304
|
+
const plugins = usePlugins(ricos, colorScheme);
|
|
305
|
+
const RicosEditor = ricos?.RicosEditor;
|
|
302
306
|
|
|
303
307
|
return (
|
|
304
308
|
<div
|
|
@@ -330,7 +334,7 @@ const RCE = forwardRef<RCEHandle, RCEProps & ToggleFullscreenButtonProps>(
|
|
|
330
334
|
/>
|
|
331
335
|
)}
|
|
332
336
|
|
|
333
|
-
{!hidden ? (
|
|
337
|
+
{!hidden && RicosEditor ? (
|
|
334
338
|
<div data-hook={dataHook} className={classes.editor}>
|
|
335
339
|
<RicosEditor
|
|
336
340
|
ref={setEditorInstance}
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "richcontenttoolbar807450189";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"richcontenttoolbar807450189__root","toolbar":"richcontenttoolbar807450189__toolbar","toolbarButton":"richcontenttoolbar807450189__toolbarButton","separator":"richcontenttoolbar807450189__separator"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.tsx
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React, { Component } from 'react';
|
|
2
2
|
|
|
3
|
-
import type { ExternalToolbarButton as RicosExternalToolbarButton } from '@wix/ricos';
|
|
4
|
-
|
|
3
|
+
import type { ExternalToolbarButton as RicosExternalToolbarButton } from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';
|
|
4
|
+
// WDS rather than ricos's Tooltip: this toolbar renders from state the editor
|
|
5
|
+
// pushes out, so it must not depend on the CDN module being loaded.
|
|
6
|
+
import { Tooltip } from '@wix/design-system';
|
|
5
7
|
|
|
6
8
|
import { classes } from './rich-content-toolbar.st.css.js';
|
|
7
9
|
|
|
@@ -1,68 +1,38 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
pluginTextColorViewer as pluginTextColor,
|
|
5
|
-
pluginTextHighlightViewer as pluginTextHighlight,
|
|
6
|
-
pluginLinkViewer as pluginLink,
|
|
7
|
-
pluginLineSpacingViewer as pluginLineSpacing,
|
|
8
|
-
pluginImageViewer as pluginImage,
|
|
9
|
-
pluginVideoViewer as pluginVideo,
|
|
10
|
-
pluginDividerViewer as pluginDivider,
|
|
11
|
-
pluginFileUploadViewer as pluginFileUpload,
|
|
12
|
-
pluginHtmlViewer as pluginHtml,
|
|
13
|
-
pluginLinkPreviewViewer as pluginLinkPreview,
|
|
14
|
-
pluginVerticalEmbedViewer as pluginVerticalEmbed,
|
|
15
|
-
pluginEmojiViewer as pluginEmoji,
|
|
16
|
-
pluginSpoilerViewer as pluginSpoiler,
|
|
17
|
-
pluginGiphyViewer as pluginGiphy,
|
|
18
|
-
pluginCodeBlockViewer as pluginCodeBlock,
|
|
19
|
-
pluginGalleryViewer as pluginGallery,
|
|
20
|
-
pluginCollapsibleListViewer as pluginCollapsibleList,
|
|
21
|
-
pluginTableViewer as pluginTable,
|
|
22
|
-
pluginLinkButtonViewer as pluginLinkButton,
|
|
23
|
-
} from '@wix/ricos';
|
|
24
|
-
|
|
25
|
-
import '@wix/ricos/css/plugin-link-viewer.global.css';
|
|
26
|
-
import '@wix/ricos/css/plugin-image-viewer.global.css';
|
|
27
|
-
import '@wix/ricos/css/plugin-video-viewer.global.css';
|
|
28
|
-
import '@wix/ricos/css/plugin-divider-viewer.global.css';
|
|
29
|
-
import '@wix/ricos/css/plugin-file-upload-viewer.global.css';
|
|
30
|
-
import '@wix/ricos/css/plugin-html-viewer.global.css';
|
|
31
|
-
import '@wix/ricos/css/plugin-link-preview-viewer.global.css';
|
|
32
|
-
import '@wix/ricos/css/plugin-vertical-embed-viewer.global.css';
|
|
33
|
-
import '@wix/ricos/css/plugin-spoiler-viewer.global.css';
|
|
34
|
-
import '@wix/ricos/css/plugin-giphy-viewer.global.css';
|
|
35
|
-
import '@wix/ricos/css/plugin-gallery-viewer.global.css';
|
|
36
|
-
import '@wix/ricos/css/plugin-collapsible-list-viewer.global.css';
|
|
37
|
-
import '@wix/ricos/css/plugin-table-viewer.global.css';
|
|
38
|
-
import '@wix/ricos/css/plugin-button-viewer.global.css';
|
|
39
|
-
|
|
3
|
+
import type { RicosCdnModule, ViewerPlugin } from '../../cdn/types';
|
|
40
4
|
import { isTruthy } from '../../../../utils';
|
|
41
5
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Viewer plugin creators come from the CDN module, so this returns an empty list
|
|
8
|
+
* until it has loaded. The viewer is not rendered before then.
|
|
9
|
+
*/
|
|
10
|
+
export const usePlugins = (ricos: RicosCdnModule | undefined): ViewerPlugin[] => {
|
|
11
|
+
return useMemo<ViewerPlugin[]>(() => {
|
|
12
|
+
if (!ricos) {
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return [
|
|
17
|
+
ricos.pluginTextColorViewer(),
|
|
18
|
+
ricos.pluginTextHighlightViewer(),
|
|
19
|
+
ricos.pluginLineSpacingViewer(),
|
|
20
|
+
ricos.pluginLinkViewer(),
|
|
21
|
+
ricos.pluginImageViewer(),
|
|
22
|
+
ricos.pluginVideoViewer(),
|
|
23
|
+
ricos.pluginGalleryViewer(),
|
|
24
|
+
ricos.pluginDividerViewer(),
|
|
25
|
+
ricos.pluginTableViewer(),
|
|
26
|
+
ricos.pluginFileUploadViewer(),
|
|
27
|
+
ricos.pluginHtmlViewer(),
|
|
28
|
+
ricos.pluginLinkPreviewViewer(),
|
|
29
|
+
ricos.pluginVerticalEmbedViewer(),
|
|
30
|
+
ricos.pluginEmojiViewer(),
|
|
31
|
+
ricos.pluginSpoilerViewer(),
|
|
32
|
+
ricos.pluginGiphyViewer(),
|
|
33
|
+
ricos.pluginCodeBlockViewer(),
|
|
34
|
+
ricos.pluginCollapsibleListViewer(),
|
|
35
|
+
ricos.pluginLinkButtonViewer(),
|
|
36
|
+
].filter(isTruthy);
|
|
37
|
+
}, [ricos]);
|
|
68
38
|
};
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "richcontentviewer1968656074";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"richcontentviewer1968656074__root","viewer":"richcontentviewer1968656074__viewer","modalViewer":"richcontentviewer1968656074__modalViewer"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|
package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.tsx
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { Box, Loader } from '@wix/design-system';
|
|
2
3
|
|
|
3
|
-
import type { RicosDocument
|
|
4
|
-
import {
|
|
5
|
-
import '@wix/
|
|
4
|
+
import type { RicosDocument } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
5
|
+
import { fromPlainText } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
6
|
+
import type { RicosViewerProps } from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';
|
|
6
7
|
|
|
8
|
+
import { useRicosFromCdn } from '../../cdn/load-ricos';
|
|
7
9
|
import { useOpenState } from '../../../../hooks';
|
|
8
10
|
import { preventEvent } from '../../../../utils';
|
|
9
11
|
import { UserSiteFonts } from '../../../user-site-fonts';
|
|
@@ -39,7 +41,9 @@ const RCV: React.FC<RCVProps> = ({
|
|
|
39
41
|
...ricosProps
|
|
40
42
|
}) => {
|
|
41
43
|
const wixRicosProps = useWixRicosProps();
|
|
42
|
-
const
|
|
44
|
+
const ricos = useRicosFromCdn();
|
|
45
|
+
const plugins = usePlugins(ricos);
|
|
46
|
+
const RicosViewer = ricos?.RicosViewer;
|
|
43
47
|
|
|
44
48
|
return (
|
|
45
49
|
<div
|
|
@@ -53,12 +57,16 @@ const RCV: React.FC<RCVProps> = ({
|
|
|
53
57
|
onToggleFullScreen={onToggleFullscreen}
|
|
54
58
|
/>
|
|
55
59
|
<div data-hook={dataHook} className={classes.viewer}>
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
{RicosViewer ? (
|
|
61
|
+
<RicosViewer
|
|
62
|
+
{...ricosProps}
|
|
63
|
+
{...wixRicosProps}
|
|
64
|
+
plugins={plugins}
|
|
65
|
+
content={content ?? fromPlainText('')}
|
|
66
|
+
/>
|
|
67
|
+
) : (
|
|
68
|
+
<RCVLoader />
|
|
69
|
+
)}
|
|
62
70
|
</div>
|
|
63
71
|
</div>
|
|
64
72
|
);
|
|
@@ -66,6 +74,14 @@ const RCV: React.FC<RCVProps> = ({
|
|
|
66
74
|
|
|
67
75
|
RCV.displayName = 'RCV';
|
|
68
76
|
|
|
77
|
+
/** Shown while the CDN bundle is in flight, matching the editor's RCELoader. */
|
|
78
|
+
const RCVLoader: React.FC = () => (
|
|
79
|
+
<Box align="center" verticalAlign="middle" width="100%">
|
|
80
|
+
<Loader size="small" />
|
|
81
|
+
</Box>
|
|
82
|
+
);
|
|
83
|
+
RCVLoader.displayName = 'RCVLoader';
|
|
84
|
+
|
|
69
85
|
export interface RichContentViewerProps
|
|
70
86
|
extends Omit<RCVProps, 'isFullScreen' | 'onToggleFullscreen'> {
|
|
71
87
|
fullScreenOnly?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { WixPatternsContainer } from '@wix/bex-core';
|
|
2
2
|
import { ricosDocuments } from '@wix/rich-content';
|
|
3
|
-
import type { RichContent } from '@wix/ricos';
|
|
3
|
+
import type { RichContent } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
4
4
|
import { isRicosLikeObject } from '../../../../auto-field-types';
|
|
5
5
|
|
|
6
6
|
import { type RichContentDocumentService } from './types';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RichContent } from '@wix/ricos';
|
|
1
|
+
import type { RichContent } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';
|
|
2
2
|
|
|
3
3
|
export interface RichContentDocumentService {
|
|
4
4
|
convertToRichContent(document: unknown): Promise<RichContent | undefined>;
|
|
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../../stylable-esm-runtime.
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var _namespace_ = "
|
|
8
|
+
var _namespace_ = "richeditor2160083106";
|
|
9
9
|
var _style_ = classesRuntime.bind(null, _namespace_);
|
|
10
10
|
|
|
11
11
|
export var cssStates = statesRuntime.bind(null, _namespace_);
|
|
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
|
|
|
13
13
|
export var st: import("@stylable/runtime").STFunction = _style_;
|
|
14
14
|
|
|
15
15
|
export var namespace = _namespace_;
|
|
16
|
-
export var classes = {"root":"
|
|
16
|
+
export var classes = {"root":"richeditor2160083106__root","editor":"richeditor2160083106__editor","header-one":"richeditor2160083106__header-one","header-two":"richeditor2160083106__header-two","header-three":"richeditor2160083106__header-three","header-four":"richeditor2160083106__header-four","header-five":"richeditor2160083106__header-five","header-six":"richeditor2160083106__header-six","paragraph-one":"richeditor2160083106__paragraph-one","unstyled":"richeditor2160083106__unstyled","paragraph-three":"richeditor2160083106__paragraph-three","align-left":"richeditor2160083106__align-left","align-right":"richeditor2160083106__align-right","align-center":"richeditor2160083106__align-center","align-justify":"richeditor2160083106__align-justify","withMargin":"richeditor2160083106__withMargin","dir-rtl":"richeditor2160083106__dir-rtl"};
|
|
17
17
|
export var keyframes = {};
|
|
18
18
|
export var layers = {};
|
|
19
19
|
export var containers = {};
|