roosterjs-content-model-plugins 9.4.1 → 9.5.1
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/README.md +10 -10
- package/lib/autoFormat/hyphen/transformHyphen.d.ts +2 -2
- package/lib/autoFormat/hyphen/transformHyphen.js.map +1 -1
- package/lib/autoFormat/link/createLinkAfterSpace.d.ts +2 -2
- package/lib/autoFormat/link/createLinkAfterSpace.js.map +1 -1
- package/lib/autoFormat/list/keyboardListTrigger.d.ts +2 -2
- package/lib/autoFormat/list/keyboardListTrigger.js.map +1 -1
- package/lib/autoFormat/numbers/transformFraction.d.ts +2 -2
- package/lib/autoFormat/numbers/transformFraction.js.map +1 -1
- package/lib/autoFormat/numbers/transformOrdinals.d.ts +2 -2
- package/lib/autoFormat/numbers/transformOrdinals.js.map +1 -1
- package/lib/customReplace/CustomReplacePlugin.d.ts +2 -2
- package/lib/customReplace/CustomReplacePlugin.js.map +1 -1
- package/lib/edit/EditPlugin.d.ts +10 -0
- package/lib/edit/EditPlugin.js +39 -0
- package/lib/edit/EditPlugin.js.map +1 -1
- package/lib/edit/deleteSteps/deleteAllSegmentBefore.js +2 -1
- package/lib/edit/deleteSteps/deleteAllSegmentBefore.js.map +1 -1
- package/lib/edit/deleteSteps/deleteCollapsedSelection.js +5 -4
- package/lib/edit/deleteSteps/deleteCollapsedSelection.js.map +1 -1
- package/lib/edit/deleteSteps/deleteEmptyQuote.js +33 -29
- package/lib/edit/deleteSteps/deleteEmptyQuote.js.map +1 -1
- package/lib/edit/deleteSteps/deleteWordSelection.js +1 -1
- package/lib/edit/deleteSteps/deleteWordSelection.js.map +1 -1
- package/lib/edit/handleKeyboardEventCommon.d.ts +2 -2
- package/lib/edit/handleKeyboardEventCommon.js.map +1 -1
- package/lib/edit/inputSteps/handleEnterOnList.js +32 -56
- package/lib/edit/inputSteps/handleEnterOnList.js.map +1 -1
- package/lib/edit/inputSteps/handleEnterOnParagraph.d.ts +5 -0
- package/lib/edit/inputSteps/handleEnterOnParagraph.js +22 -0
- package/lib/edit/inputSteps/handleEnterOnParagraph.js.map +1 -0
- package/lib/edit/keyboardDelete.js +1 -1
- package/lib/edit/keyboardDelete.js.map +1 -1
- package/lib/edit/keyboardEnter.d.ts +5 -0
- package/lib/edit/keyboardEnter.js +44 -0
- package/lib/edit/keyboardEnter.js.map +1 -0
- package/lib/edit/keyboardInput.js +4 -18
- package/lib/edit/keyboardInput.js.map +1 -1
- package/lib/edit/keyboardTab.js.map +1 -1
- package/lib/edit/tabUtils/handleTabOnList.d.ts +2 -2
- package/lib/edit/tabUtils/handleTabOnList.js.map +1 -1
- package/lib/edit/tabUtils/handleTabOnParagraph.d.ts +2 -2
- package/lib/edit/tabUtils/handleTabOnParagraph.js +9 -7
- package/lib/edit/tabUtils/handleTabOnParagraph.js.map +1 -1
- package/lib/edit/tabUtils/handleTabOnTable.d.ts +2 -2
- package/lib/edit/tabUtils/handleTabOnTable.js.map +1 -1
- package/lib/edit/tabUtils/handleTabOnTableCell.d.ts +2 -2
- package/lib/edit/tabUtils/handleTabOnTableCell.js +5 -4
- package/lib/edit/tabUtils/handleTabOnTableCell.js.map +1 -1
- package/lib/edit/utils/getLeafSiblingBlock.d.ts +5 -5
- package/lib/edit/utils/getLeafSiblingBlock.js.map +1 -1
- package/lib/edit/utils/splitParagraph.d.ts +9 -0
- package/lib/edit/utils/splitParagraph.js +29 -0
- package/lib/edit/utils/splitParagraph.js.map +1 -0
- package/lib/imageEdit/Cropper/createImageCropper.d.ts +10 -0
- package/lib/imageEdit/Cropper/createImageCropper.js +80 -0
- package/lib/imageEdit/Cropper/createImageCropper.js.map +1 -0
- package/lib/imageEdit/Cropper/cropperContext.d.ts +8 -0
- package/lib/imageEdit/Cropper/cropperContext.js +73 -0
- package/lib/imageEdit/Cropper/cropperContext.js.map +1 -0
- package/lib/imageEdit/ImageEditPlugin.d.ts +66 -0
- package/lib/imageEdit/ImageEditPlugin.js +328 -0
- package/lib/imageEdit/ImageEditPlugin.js.map +1 -0
- package/lib/imageEdit/Resizer/createImageResizer.d.ts +12 -0
- package/lib/imageEdit/Resizer/createImageResizer.js +89 -0
- package/lib/imageEdit/Resizer/createImageResizer.js.map +1 -0
- package/lib/imageEdit/Resizer/resizerContext.d.ts +8 -0
- package/lib/imageEdit/Resizer/resizerContext.js +61 -0
- package/lib/imageEdit/Resizer/resizerContext.js.map +1 -0
- package/lib/imageEdit/Resizer/updateSideHandlesVisibility.d.ts +4 -0
- package/lib/imageEdit/Resizer/updateSideHandlesVisibility.js +17 -0
- package/lib/imageEdit/Resizer/updateSideHandlesVisibility.js.map +1 -0
- package/lib/imageEdit/Rotator/createImageRotator.d.ts +6 -0
- package/lib/imageEdit/Rotator/createImageRotator.js +76 -0
- package/lib/imageEdit/Rotator/createImageRotator.js.map +1 -0
- package/lib/imageEdit/Rotator/rotatorContext.d.ts +8 -0
- package/lib/imageEdit/Rotator/rotatorContext.js +36 -0
- package/lib/imageEdit/Rotator/rotatorContext.js.map +1 -0
- package/lib/imageEdit/Rotator/updateRotateHandle.d.ts +7 -0
- package/lib/imageEdit/Rotator/updateRotateHandle.js +55 -0
- package/lib/imageEdit/Rotator/updateRotateHandle.js.map +1 -0
- package/lib/imageEdit/constants/constants.d.ts +73 -0
- package/lib/imageEdit/constants/constants.js +81 -0
- package/lib/imageEdit/constants/constants.js.map +1 -0
- package/lib/imageEdit/types/DragAndDropContext.d.ts +39 -0
- package/lib/imageEdit/types/DragAndDropContext.js +3 -0
- package/lib/imageEdit/types/DragAndDropContext.js.map +1 -0
- package/lib/imageEdit/types/GeneratedImageSize.d.ts +33 -0
- package/lib/imageEdit/types/GeneratedImageSize.js +3 -0
- package/lib/imageEdit/types/GeneratedImageSize.js.map +1 -0
- package/lib/imageEdit/types/ImageEditElementClass.d.ts +30 -0
- package/lib/imageEdit/types/ImageEditElementClass.js +35 -0
- package/lib/imageEdit/types/ImageEditElementClass.js.map +1 -0
- package/lib/imageEdit/types/ImageEditOptions.d.ts +55 -0
- package/lib/imageEdit/types/ImageEditOptions.js +3 -0
- package/lib/imageEdit/types/ImageEditOptions.js.map +1 -0
- package/lib/imageEdit/types/ImageHtmlOptions.d.ts +18 -0
- package/lib/imageEdit/types/ImageHtmlOptions.js +3 -0
- package/lib/imageEdit/types/ImageHtmlOptions.js.map +1 -0
- package/lib/imageEdit/utils/applyChange.d.ts +12 -0
- package/lib/imageEdit/utils/applyChange.js +77 -0
- package/lib/imageEdit/utils/applyChange.js.map +1 -0
- package/lib/imageEdit/utils/canRegenerateImage.d.ts +8 -0
- package/lib/imageEdit/utils/canRegenerateImage.js +32 -0
- package/lib/imageEdit/utils/canRegenerateImage.js.map +1 -0
- package/lib/imageEdit/utils/checkEditInfoState.d.ts +41 -0
- package/lib/imageEdit/utils/checkEditInfoState.js +54 -0
- package/lib/imageEdit/utils/checkEditInfoState.js.map +1 -0
- package/lib/imageEdit/utils/createImageWrapper.d.ts +18 -0
- package/lib/imageEdit/utils/createImageWrapper.js +87 -0
- package/lib/imageEdit/utils/createImageWrapper.js.map +1 -0
- package/lib/imageEdit/utils/doubleCheckResize.d.ts +12 -0
- package/lib/imageEdit/utils/doubleCheckResize.js +36 -0
- package/lib/imageEdit/utils/doubleCheckResize.js.map +1 -0
- package/lib/imageEdit/utils/generateDataURL.d.ts +13 -0
- package/lib/imageEdit/utils/generateDataURL.js +50 -0
- package/lib/imageEdit/utils/generateDataURL.js.map +1 -0
- package/lib/imageEdit/utils/generateImageSize.d.ts +15 -0
- package/lib/imageEdit/utils/generateImageSize.js +46 -0
- package/lib/imageEdit/utils/generateImageSize.js.map +1 -0
- package/lib/imageEdit/utils/getDropAndDragHelpers.d.ts +10 -0
- package/lib/imageEdit/utils/getDropAndDragHelpers.js +24 -0
- package/lib/imageEdit/utils/getDropAndDragHelpers.js.map +1 -0
- package/lib/imageEdit/utils/getHTMLImageOptions.d.ts +7 -0
- package/lib/imageEdit/utils/getHTMLImageOptions.js +22 -0
- package/lib/imageEdit/utils/getHTMLImageOptions.js.map +1 -0
- package/lib/imageEdit/utils/getSelectedContentModelImage.d.ts +5 -0
- package/lib/imageEdit/utils/getSelectedContentModelImage.js +16 -0
- package/lib/imageEdit/utils/getSelectedContentModelImage.js.map +1 -0
- package/lib/imageEdit/utils/imageEditUtils.d.ts +39 -0
- package/lib/imageEdit/utils/imageEditUtils.js +102 -0
- package/lib/imageEdit/utils/imageEditUtils.js.map +1 -0
- package/lib/imageEdit/utils/updateHandleCursor.d.ts +7 -0
- package/lib/imageEdit/utils/updateHandleCursor.js +34 -0
- package/lib/imageEdit/utils/updateHandleCursor.js.map +1 -0
- package/lib/imageEdit/utils/updateImageEditInfo.d.ts +10 -0
- package/lib/imageEdit/utils/updateImageEditInfo.js +49 -0
- package/lib/imageEdit/utils/updateImageEditInfo.js.map +1 -0
- package/lib/imageEdit/utils/updateWrapper.d.ts +6 -0
- package/lib/imageEdit/utils/updateWrapper.js +87 -0
- package/lib/imageEdit/utils/updateWrapper.js.map +1 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/paste/DefaultSanitizers.d.ts +10 -0
- package/lib/paste/DefaultSanitizers.js +25 -0
- package/lib/paste/DefaultSanitizers.js.map +1 -0
- package/lib/paste/PastePlugin.d.ts +4 -2
- package/lib/paste/PastePlugin.js +26 -1
- package/lib/paste/PastePlugin.js.map +1 -1
- package/lib/paste/WordDesktop/processPastedContentFromWordDesktop.js +13 -0
- package/lib/paste/WordDesktop/processPastedContentFromWordDesktop.js.map +1 -1
- package/lib/paste/utils/chainSanitizerCallback.d.ts +9 -0
- package/lib/paste/utils/chainSanitizerCallback.js +36 -0
- package/lib/paste/utils/chainSanitizerCallback.js.map +1 -0
- package/lib/picker/getQueryString.d.ts +2 -2
- package/lib/picker/getQueryString.js.map +1 -1
- package/lib/pluginUtils/splitTextSegment.d.ts +2 -2
- package/lib/pluginUtils/splitTextSegment.js.map +1 -1
- package/lib/tableEdit/editors/TableEditor.d.ts +3 -0
- package/lib/tableEdit/editors/TableEditor.js +4 -0
- package/lib/tableEdit/editors/TableEditor.js.map +1 -1
- package/lib/tableEdit/editors/features/CellResizer.d.ts +39 -1
- package/lib/tableEdit/editors/features/CellResizer.js +27 -11
- package/lib/tableEdit/editors/features/CellResizer.js.map +1 -1
- package/lib/tableEdit/editors/features/TableInserter.d.ts +17 -0
- package/lib/tableEdit/editors/features/TableInserter.js +6 -1
- package/lib/tableEdit/editors/features/TableInserter.js.map +1 -1
- package/lib/tableEdit/editors/features/TableMover.d.ts +2 -2
- package/lib/tableEdit/editors/features/TableMover.js +4 -4
- package/lib/tableEdit/editors/features/TableMover.js.map +1 -1
- package/lib/tableEdit/editors/features/TableResizer.d.ts +40 -1
- package/lib/tableEdit/editors/features/TableResizer.js +25 -7
- package/lib/tableEdit/editors/features/TableResizer.js.map +1 -1
- package/lib/tableEdit/editors/utils/getTableFromContentModel.d.ts +2 -2
- package/lib/tableEdit/editors/utils/getTableFromContentModel.js.map +1 -1
- package/lib-amd/autoFormat/hyphen/transformHyphen.d.ts +2 -2
- package/lib-amd/autoFormat/hyphen/transformHyphen.js.map +1 -1
- package/lib-amd/autoFormat/link/createLinkAfterSpace.d.ts +2 -2
- package/lib-amd/autoFormat/link/createLinkAfterSpace.js.map +1 -1
- package/lib-amd/autoFormat/list/keyboardListTrigger.d.ts +2 -2
- package/lib-amd/autoFormat/list/keyboardListTrigger.js.map +1 -1
- package/lib-amd/autoFormat/numbers/transformFraction.d.ts +2 -2
- package/lib-amd/autoFormat/numbers/transformFraction.js.map +1 -1
- package/lib-amd/autoFormat/numbers/transformOrdinals.d.ts +2 -2
- package/lib-amd/autoFormat/numbers/transformOrdinals.js.map +1 -1
- package/lib-amd/customReplace/CustomReplacePlugin.d.ts +2 -2
- package/lib-amd/customReplace/CustomReplacePlugin.js.map +1 -1
- package/lib-amd/edit/EditPlugin.d.ts +10 -0
- package/lib-amd/edit/EditPlugin.js +38 -1
- package/lib-amd/edit/EditPlugin.js.map +1 -1
- package/lib-amd/edit/deleteSteps/deleteAllSegmentBefore.js +2 -1
- package/lib-amd/edit/deleteSteps/deleteAllSegmentBefore.js.map +1 -1
- package/lib-amd/edit/deleteSteps/deleteCollapsedSelection.js +5 -4
- package/lib-amd/edit/deleteSteps/deleteCollapsedSelection.js.map +1 -1
- package/lib-amd/edit/deleteSteps/deleteEmptyQuote.js +33 -30
- package/lib-amd/edit/deleteSteps/deleteEmptyQuote.js.map +1 -1
- package/lib-amd/edit/deleteSteps/deleteWordSelection.js +1 -1
- package/lib-amd/edit/deleteSteps/deleteWordSelection.js.map +1 -1
- package/lib-amd/edit/handleKeyboardEventCommon.d.ts +2 -2
- package/lib-amd/edit/handleKeyboardEventCommon.js.map +1 -1
- package/lib-amd/edit/inputSteps/handleEnterOnList.js +32 -57
- package/lib-amd/edit/inputSteps/handleEnterOnList.js.map +1 -1
- package/lib-amd/edit/inputSteps/handleEnterOnParagraph.d.ts +5 -0
- package/lib-amd/edit/inputSteps/handleEnterOnParagraph.js +22 -0
- package/lib-amd/edit/inputSteps/handleEnterOnParagraph.js.map +1 -0
- package/lib-amd/edit/keyboardDelete.js +1 -1
- package/lib-amd/edit/keyboardDelete.js.map +1 -1
- package/lib-amd/edit/keyboardEnter.d.ts +5 -0
- package/lib-amd/edit/keyboardEnter.js +42 -0
- package/lib-amd/edit/keyboardEnter.js.map +1 -0
- package/lib-amd/edit/keyboardInput.js +5 -17
- package/lib-amd/edit/keyboardInput.js.map +1 -1
- package/lib-amd/edit/keyboardTab.js.map +1 -1
- package/lib-amd/edit/tabUtils/handleTabOnList.d.ts +2 -2
- package/lib-amd/edit/tabUtils/handleTabOnList.js.map +1 -1
- package/lib-amd/edit/tabUtils/handleTabOnParagraph.d.ts +2 -2
- package/lib-amd/edit/tabUtils/handleTabOnParagraph.js +9 -7
- package/lib-amd/edit/tabUtils/handleTabOnParagraph.js.map +1 -1
- package/lib-amd/edit/tabUtils/handleTabOnTable.d.ts +2 -2
- package/lib-amd/edit/tabUtils/handleTabOnTable.js.map +1 -1
- package/lib-amd/edit/tabUtils/handleTabOnTableCell.d.ts +2 -2
- package/lib-amd/edit/tabUtils/handleTabOnTableCell.js +5 -4
- package/lib-amd/edit/tabUtils/handleTabOnTableCell.js.map +1 -1
- package/lib-amd/edit/utils/getLeafSiblingBlock.d.ts +5 -5
- package/lib-amd/edit/utils/getLeafSiblingBlock.js.map +1 -1
- package/lib-amd/edit/utils/splitParagraph.d.ts +9 -0
- package/lib-amd/edit/utils/splitParagraph.js +29 -0
- package/lib-amd/edit/utils/splitParagraph.js.map +1 -0
- package/lib-amd/imageEdit/Cropper/createImageCropper.d.ts +10 -0
- package/lib-amd/imageEdit/Cropper/createImageCropper.js +78 -0
- package/lib-amd/imageEdit/Cropper/createImageCropper.js.map +1 -0
- package/lib-amd/imageEdit/Cropper/cropperContext.d.ts +8 -0
- package/lib-amd/imageEdit/Cropper/cropperContext.js +73 -0
- package/lib-amd/imageEdit/Cropper/cropperContext.js.map +1 -0
- package/lib-amd/imageEdit/ImageEditPlugin.d.ts +66 -0
- package/lib-amd/imageEdit/ImageEditPlugin.js +315 -0
- package/lib-amd/imageEdit/ImageEditPlugin.js.map +1 -0
- package/lib-amd/imageEdit/Resizer/createImageResizer.d.ts +12 -0
- package/lib-amd/imageEdit/Resizer/createImageResizer.js +86 -0
- package/lib-amd/imageEdit/Resizer/createImageResizer.js.map +1 -0
- package/lib-amd/imageEdit/Resizer/resizerContext.d.ts +8 -0
- package/lib-amd/imageEdit/Resizer/resizerContext.js +61 -0
- package/lib-amd/imageEdit/Resizer/resizerContext.js.map +1 -0
- package/lib-amd/imageEdit/Resizer/updateSideHandlesVisibility.d.ts +4 -0
- package/lib-amd/imageEdit/Resizer/updateSideHandlesVisibility.js +19 -0
- package/lib-amd/imageEdit/Resizer/updateSideHandlesVisibility.js.map +1 -0
- package/lib-amd/imageEdit/Rotator/createImageRotator.d.ts +6 -0
- package/lib-amd/imageEdit/Rotator/createImageRotator.js +74 -0
- package/lib-amd/imageEdit/Rotator/createImageRotator.js.map +1 -0
- package/lib-amd/imageEdit/Rotator/rotatorContext.d.ts +8 -0
- package/lib-amd/imageEdit/Rotator/rotatorContext.js +36 -0
- package/lib-amd/imageEdit/Rotator/rotatorContext.js.map +1 -0
- package/lib-amd/imageEdit/Rotator/updateRotateHandle.d.ts +7 -0
- package/lib-amd/imageEdit/Rotator/updateRotateHandle.js +56 -0
- package/lib-amd/imageEdit/Rotator/updateRotateHandle.js.map +1 -0
- package/lib-amd/imageEdit/constants/constants.d.ts +73 -0
- package/lib-amd/imageEdit/constants/constants.js +83 -0
- package/lib-amd/imageEdit/constants/constants.js.map +1 -0
- package/lib-amd/imageEdit/types/DragAndDropContext.d.ts +39 -0
- package/lib-amd/imageEdit/types/DragAndDropContext.js +5 -0
- package/lib-amd/imageEdit/types/DragAndDropContext.js.map +1 -0
- package/lib-amd/imageEdit/types/GeneratedImageSize.d.ts +33 -0
- package/lib-amd/imageEdit/types/GeneratedImageSize.js +5 -0
- package/lib-amd/imageEdit/types/GeneratedImageSize.js.map +1 -0
- package/lib-amd/imageEdit/types/ImageEditElementClass.d.ts +30 -0
- package/lib-amd/imageEdit/types/ImageEditElementClass.js +37 -0
- package/lib-amd/imageEdit/types/ImageEditElementClass.js.map +1 -0
- package/lib-amd/imageEdit/types/ImageEditOptions.d.ts +55 -0
- package/lib-amd/imageEdit/types/ImageEditOptions.js +5 -0
- package/lib-amd/imageEdit/types/ImageEditOptions.js.map +1 -0
- package/lib-amd/imageEdit/types/ImageHtmlOptions.d.ts +18 -0
- package/lib-amd/imageEdit/types/ImageHtmlOptions.js +5 -0
- package/lib-amd/imageEdit/types/ImageHtmlOptions.js.map +1 -0
- package/lib-amd/imageEdit/utils/applyChange.d.ts +12 -0
- package/lib-amd/imageEdit/utils/applyChange.js +75 -0
- package/lib-amd/imageEdit/utils/applyChange.js.map +1 -0
- package/lib-amd/imageEdit/utils/canRegenerateImage.d.ts +8 -0
- package/lib-amd/imageEdit/utils/canRegenerateImage.js +34 -0
- package/lib-amd/imageEdit/utils/canRegenerateImage.js.map +1 -0
- package/lib-amd/imageEdit/utils/checkEditInfoState.d.ts +41 -0
- package/lib-amd/imageEdit/utils/checkEditInfoState.js +55 -0
- package/lib-amd/imageEdit/utils/checkEditInfoState.js.map +1 -0
- package/lib-amd/imageEdit/utils/createImageWrapper.d.ts +18 -0
- package/lib-amd/imageEdit/utils/createImageWrapper.js +86 -0
- package/lib-amd/imageEdit/utils/createImageWrapper.js.map +1 -0
- package/lib-amd/imageEdit/utils/doubleCheckResize.d.ts +12 -0
- package/lib-amd/imageEdit/utils/doubleCheckResize.js +38 -0
- package/lib-amd/imageEdit/utils/doubleCheckResize.js.map +1 -0
- package/lib-amd/imageEdit/utils/generateDataURL.d.ts +13 -0
- package/lib-amd/imageEdit/utils/generateDataURL.js +51 -0
- package/lib-amd/imageEdit/utils/generateDataURL.js.map +1 -0
- package/lib-amd/imageEdit/utils/generateImageSize.d.ts +15 -0
- package/lib-amd/imageEdit/utils/generateImageSize.js +48 -0
- package/lib-amd/imageEdit/utils/generateImageSize.js.map +1 -0
- package/lib-amd/imageEdit/utils/getDropAndDragHelpers.d.ts +10 -0
- package/lib-amd/imageEdit/utils/getDropAndDragHelpers.js +24 -0
- package/lib-amd/imageEdit/utils/getDropAndDragHelpers.js.map +1 -0
- package/lib-amd/imageEdit/utils/getHTMLImageOptions.d.ts +7 -0
- package/lib-amd/imageEdit/utils/getHTMLImageOptions.js +23 -0
- package/lib-amd/imageEdit/utils/getHTMLImageOptions.js.map +1 -0
- package/lib-amd/imageEdit/utils/getSelectedContentModelImage.d.ts +5 -0
- package/lib-amd/imageEdit/utils/getSelectedContentModelImage.js +17 -0
- package/lib-amd/imageEdit/utils/getSelectedContentModelImage.js.map +1 -0
- package/lib-amd/imageEdit/utils/imageEditUtils.d.ts +39 -0
- package/lib-amd/imageEdit/utils/imageEditUtils.js +103 -0
- package/lib-amd/imageEdit/utils/imageEditUtils.js.map +1 -0
- package/lib-amd/imageEdit/utils/updateHandleCursor.d.ts +7 -0
- package/lib-amd/imageEdit/utils/updateHandleCursor.js +36 -0
- package/lib-amd/imageEdit/utils/updateHandleCursor.js.map +1 -0
- package/lib-amd/imageEdit/utils/updateImageEditInfo.d.ts +10 -0
- package/lib-amd/imageEdit/utils/updateImageEditInfo.js +48 -0
- package/lib-amd/imageEdit/utils/updateImageEditInfo.js.map +1 -0
- package/lib-amd/imageEdit/utils/updateWrapper.d.ts +6 -0
- package/lib-amd/imageEdit/utils/updateWrapper.js +82 -0
- package/lib-amd/imageEdit/utils/updateWrapper.js.map +1 -0
- package/lib-amd/index.d.ts +2 -1
- package/lib-amd/index.js +3 -3
- package/lib-amd/index.js.map +1 -1
- package/lib-amd/paste/DefaultSanitizers.d.ts +10 -0
- package/lib-amd/paste/DefaultSanitizers.js +27 -0
- package/lib-amd/paste/DefaultSanitizers.js.map +1 -0
- package/lib-amd/paste/PastePlugin.d.ts +4 -2
- package/lib-amd/paste/PastePlugin.js +24 -2
- package/lib-amd/paste/PastePlugin.js.map +1 -1
- package/lib-amd/paste/WordDesktop/processPastedContentFromWordDesktop.js +13 -0
- package/lib-amd/paste/WordDesktop/processPastedContentFromWordDesktop.js.map +1 -1
- package/lib-amd/paste/utils/chainSanitizerCallback.d.ts +9 -0
- package/lib-amd/paste/utils/chainSanitizerCallback.js +38 -0
- package/lib-amd/paste/utils/chainSanitizerCallback.js.map +1 -0
- package/lib-amd/picker/getQueryString.d.ts +2 -2
- package/lib-amd/picker/getQueryString.js.map +1 -1
- package/lib-amd/pluginUtils/splitTextSegment.d.ts +2 -2
- package/lib-amd/pluginUtils/splitTextSegment.js.map +1 -1
- package/lib-amd/tableEdit/editors/TableEditor.d.ts +3 -0
- package/lib-amd/tableEdit/editors/TableEditor.js +4 -0
- package/lib-amd/tableEdit/editors/TableEditor.js.map +1 -1
- package/lib-amd/tableEdit/editors/features/CellResizer.d.ts +39 -1
- package/lib-amd/tableEdit/editors/features/CellResizer.js +27 -11
- package/lib-amd/tableEdit/editors/features/CellResizer.js.map +1 -1
- package/lib-amd/tableEdit/editors/features/TableInserter.d.ts +17 -0
- package/lib-amd/tableEdit/editors/features/TableInserter.js +6 -1
- package/lib-amd/tableEdit/editors/features/TableInserter.js.map +1 -1
- package/lib-amd/tableEdit/editors/features/TableMover.d.ts +2 -2
- package/lib-amd/tableEdit/editors/features/TableMover.js +4 -4
- package/lib-amd/tableEdit/editors/features/TableMover.js.map +1 -1
- package/lib-amd/tableEdit/editors/features/TableResizer.d.ts +40 -1
- package/lib-amd/tableEdit/editors/features/TableResizer.js +25 -7
- package/lib-amd/tableEdit/editors/features/TableResizer.js.map +1 -1
- package/lib-amd/tableEdit/editors/utils/getTableFromContentModel.d.ts +2 -2
- package/lib-amd/tableEdit/editors/utils/getTableFromContentModel.js.map +1 -1
- package/lib-mjs/autoFormat/hyphen/transformHyphen.d.ts +2 -2
- package/lib-mjs/autoFormat/hyphen/transformHyphen.js.map +1 -1
- package/lib-mjs/autoFormat/link/createLinkAfterSpace.d.ts +2 -2
- package/lib-mjs/autoFormat/link/createLinkAfterSpace.js.map +1 -1
- package/lib-mjs/autoFormat/list/keyboardListTrigger.d.ts +2 -2
- package/lib-mjs/autoFormat/list/keyboardListTrigger.js.map +1 -1
- package/lib-mjs/autoFormat/numbers/transformFraction.d.ts +2 -2
- package/lib-mjs/autoFormat/numbers/transformFraction.js.map +1 -1
- package/lib-mjs/autoFormat/numbers/transformOrdinals.d.ts +2 -2
- package/lib-mjs/autoFormat/numbers/transformOrdinals.js.map +1 -1
- package/lib-mjs/customReplace/CustomReplacePlugin.d.ts +2 -2
- package/lib-mjs/customReplace/CustomReplacePlugin.js.map +1 -1
- package/lib-mjs/edit/EditPlugin.d.ts +10 -0
- package/lib-mjs/edit/EditPlugin.js +39 -0
- package/lib-mjs/edit/EditPlugin.js.map +1 -1
- package/lib-mjs/edit/deleteSteps/deleteAllSegmentBefore.js +3 -2
- package/lib-mjs/edit/deleteSteps/deleteAllSegmentBefore.js.map +1 -1
- package/lib-mjs/edit/deleteSteps/deleteCollapsedSelection.js +5 -4
- package/lib-mjs/edit/deleteSteps/deleteCollapsedSelection.js.map +1 -1
- package/lib-mjs/edit/deleteSteps/deleteEmptyQuote.js +34 -30
- package/lib-mjs/edit/deleteSteps/deleteEmptyQuote.js.map +1 -1
- package/lib-mjs/edit/deleteSteps/deleteWordSelection.js +2 -2
- package/lib-mjs/edit/deleteSteps/deleteWordSelection.js.map +1 -1
- package/lib-mjs/edit/handleKeyboardEventCommon.d.ts +2 -2
- package/lib-mjs/edit/handleKeyboardEventCommon.js.map +1 -1
- package/lib-mjs/edit/inputSteps/handleEnterOnList.js +33 -57
- package/lib-mjs/edit/inputSteps/handleEnterOnList.js.map +1 -1
- package/lib-mjs/edit/inputSteps/handleEnterOnParagraph.d.ts +5 -0
- package/lib-mjs/edit/inputSteps/handleEnterOnParagraph.js +18 -0
- package/lib-mjs/edit/inputSteps/handleEnterOnParagraph.js.map +1 -0
- package/lib-mjs/edit/keyboardDelete.js +1 -1
- package/lib-mjs/edit/keyboardDelete.js.map +1 -1
- package/lib-mjs/edit/keyboardEnter.d.ts +5 -0
- package/lib-mjs/edit/keyboardEnter.js +40 -0
- package/lib-mjs/edit/keyboardEnter.js.map +1 -0
- package/lib-mjs/edit/keyboardInput.js +4 -18
- package/lib-mjs/edit/keyboardInput.js.map +1 -1
- package/lib-mjs/edit/keyboardTab.js.map +1 -1
- package/lib-mjs/edit/tabUtils/handleTabOnList.d.ts +2 -2
- package/lib-mjs/edit/tabUtils/handleTabOnList.js.map +1 -1
- package/lib-mjs/edit/tabUtils/handleTabOnParagraph.d.ts +2 -2
- package/lib-mjs/edit/tabUtils/handleTabOnParagraph.js +9 -7
- package/lib-mjs/edit/tabUtils/handleTabOnParagraph.js.map +1 -1
- package/lib-mjs/edit/tabUtils/handleTabOnTable.d.ts +2 -2
- package/lib-mjs/edit/tabUtils/handleTabOnTable.js.map +1 -1
- package/lib-mjs/edit/tabUtils/handleTabOnTableCell.d.ts +2 -2
- package/lib-mjs/edit/tabUtils/handleTabOnTableCell.js +6 -5
- package/lib-mjs/edit/tabUtils/handleTabOnTableCell.js.map +1 -1
- package/lib-mjs/edit/utils/getLeafSiblingBlock.d.ts +5 -5
- package/lib-mjs/edit/utils/getLeafSiblingBlock.js.map +1 -1
- package/lib-mjs/edit/utils/splitParagraph.d.ts +9 -0
- package/lib-mjs/edit/utils/splitParagraph.js +25 -0
- package/lib-mjs/edit/utils/splitParagraph.js.map +1 -0
- package/lib-mjs/imageEdit/Cropper/createImageCropper.d.ts +10 -0
- package/lib-mjs/imageEdit/Cropper/createImageCropper.js +75 -0
- package/lib-mjs/imageEdit/Cropper/createImageCropper.js.map +1 -0
- package/lib-mjs/imageEdit/Cropper/cropperContext.d.ts +8 -0
- package/lib-mjs/imageEdit/Cropper/cropperContext.js +70 -0
- package/lib-mjs/imageEdit/Cropper/cropperContext.js.map +1 -0
- package/lib-mjs/imageEdit/ImageEditPlugin.d.ts +66 -0
- package/lib-mjs/imageEdit/ImageEditPlugin.js +325 -0
- package/lib-mjs/imageEdit/ImageEditPlugin.js.map +1 -0
- package/lib-mjs/imageEdit/Resizer/createImageResizer.d.ts +12 -0
- package/lib-mjs/imageEdit/Resizer/createImageResizer.js +85 -0
- package/lib-mjs/imageEdit/Resizer/createImageResizer.js.map +1 -0
- package/lib-mjs/imageEdit/Resizer/resizerContext.d.ts +8 -0
- package/lib-mjs/imageEdit/Resizer/resizerContext.js +58 -0
- package/lib-mjs/imageEdit/Resizer/resizerContext.js.map +1 -0
- package/lib-mjs/imageEdit/Resizer/updateSideHandlesVisibility.d.ts +4 -0
- package/lib-mjs/imageEdit/Resizer/updateSideHandlesVisibility.js +13 -0
- package/lib-mjs/imageEdit/Resizer/updateSideHandlesVisibility.js.map +1 -0
- package/lib-mjs/imageEdit/Rotator/createImageRotator.d.ts +6 -0
- package/lib-mjs/imageEdit/Rotator/createImageRotator.js +72 -0
- package/lib-mjs/imageEdit/Rotator/createImageRotator.js.map +1 -0
- package/lib-mjs/imageEdit/Rotator/rotatorContext.d.ts +8 -0
- package/lib-mjs/imageEdit/Rotator/rotatorContext.js +33 -0
- package/lib-mjs/imageEdit/Rotator/rotatorContext.js.map +1 -0
- package/lib-mjs/imageEdit/Rotator/updateRotateHandle.d.ts +7 -0
- package/lib-mjs/imageEdit/Rotator/updateRotateHandle.js +51 -0
- package/lib-mjs/imageEdit/Rotator/updateRotateHandle.js.map +1 -0
- package/lib-mjs/imageEdit/constants/constants.d.ts +73 -0
- package/lib-mjs/imageEdit/constants/constants.js +78 -0
- package/lib-mjs/imageEdit/constants/constants.js.map +1 -0
- package/lib-mjs/imageEdit/types/DragAndDropContext.d.ts +39 -0
- package/lib-mjs/imageEdit/types/DragAndDropContext.js +2 -0
- package/lib-mjs/imageEdit/types/DragAndDropContext.js.map +1 -0
- package/lib-mjs/imageEdit/types/GeneratedImageSize.d.ts +33 -0
- package/lib-mjs/imageEdit/types/GeneratedImageSize.js +2 -0
- package/lib-mjs/imageEdit/types/GeneratedImageSize.js.map +1 -0
- package/lib-mjs/imageEdit/types/ImageEditElementClass.d.ts +30 -0
- package/lib-mjs/imageEdit/types/ImageEditElementClass.js +32 -0
- package/lib-mjs/imageEdit/types/ImageEditElementClass.js.map +1 -0
- package/lib-mjs/imageEdit/types/ImageEditOptions.d.ts +55 -0
- package/lib-mjs/imageEdit/types/ImageEditOptions.js +2 -0
- package/lib-mjs/imageEdit/types/ImageEditOptions.js.map +1 -0
- package/lib-mjs/imageEdit/types/ImageHtmlOptions.d.ts +18 -0
- package/lib-mjs/imageEdit/types/ImageHtmlOptions.js +2 -0
- package/lib-mjs/imageEdit/types/ImageHtmlOptions.js.map +1 -0
- package/lib-mjs/imageEdit/utils/applyChange.d.ts +12 -0
- package/lib-mjs/imageEdit/utils/applyChange.js +73 -0
- package/lib-mjs/imageEdit/utils/applyChange.js.map +1 -0
- package/lib-mjs/imageEdit/utils/canRegenerateImage.d.ts +8 -0
- package/lib-mjs/imageEdit/utils/canRegenerateImage.js +28 -0
- package/lib-mjs/imageEdit/utils/canRegenerateImage.js.map +1 -0
- package/lib-mjs/imageEdit/utils/checkEditInfoState.d.ts +41 -0
- package/lib-mjs/imageEdit/utils/checkEditInfoState.js +50 -0
- package/lib-mjs/imageEdit/utils/checkEditInfoState.js.map +1 -0
- package/lib-mjs/imageEdit/utils/createImageWrapper.d.ts +18 -0
- package/lib-mjs/imageEdit/utils/createImageWrapper.js +83 -0
- package/lib-mjs/imageEdit/utils/createImageWrapper.js.map +1 -0
- package/lib-mjs/imageEdit/utils/doubleCheckResize.d.ts +12 -0
- package/lib-mjs/imageEdit/utils/doubleCheckResize.js +32 -0
- package/lib-mjs/imageEdit/utils/doubleCheckResize.js.map +1 -0
- package/lib-mjs/imageEdit/utils/generateDataURL.d.ts +13 -0
- package/lib-mjs/imageEdit/utils/generateDataURL.js +46 -0
- package/lib-mjs/imageEdit/utils/generateDataURL.js.map +1 -0
- package/lib-mjs/imageEdit/utils/generateImageSize.d.ts +15 -0
- package/lib-mjs/imageEdit/utils/generateImageSize.js +42 -0
- package/lib-mjs/imageEdit/utils/generateImageSize.js.map +1 -0
- package/lib-mjs/imageEdit/utils/getDropAndDragHelpers.d.ts +10 -0
- package/lib-mjs/imageEdit/utils/getDropAndDragHelpers.js +20 -0
- package/lib-mjs/imageEdit/utils/getDropAndDragHelpers.js.map +1 -0
- package/lib-mjs/imageEdit/utils/getHTMLImageOptions.d.ts +7 -0
- package/lib-mjs/imageEdit/utils/getHTMLImageOptions.js +18 -0
- package/lib-mjs/imageEdit/utils/getHTMLImageOptions.js.map +1 -0
- package/lib-mjs/imageEdit/utils/getSelectedContentModelImage.d.ts +5 -0
- package/lib-mjs/imageEdit/utils/getSelectedContentModelImage.js +12 -0
- package/lib-mjs/imageEdit/utils/getSelectedContentModelImage.js.map +1 -0
- package/lib-mjs/imageEdit/utils/imageEditUtils.d.ts +39 -0
- package/lib-mjs/imageEdit/utils/imageEditUtils.js +91 -0
- package/lib-mjs/imageEdit/utils/imageEditUtils.js.map +1 -0
- package/lib-mjs/imageEdit/utils/updateHandleCursor.d.ts +7 -0
- package/lib-mjs/imageEdit/utils/updateHandleCursor.js +30 -0
- package/lib-mjs/imageEdit/utils/updateHandleCursor.js.map +1 -0
- package/lib-mjs/imageEdit/utils/updateImageEditInfo.d.ts +10 -0
- package/lib-mjs/imageEdit/utils/updateImageEditInfo.js +44 -0
- package/lib-mjs/imageEdit/utils/updateImageEditInfo.js.map +1 -0
- package/lib-mjs/imageEdit/utils/updateWrapper.d.ts +6 -0
- package/lib-mjs/imageEdit/utils/updateWrapper.js +83 -0
- package/lib-mjs/imageEdit/utils/updateWrapper.js.map +1 -0
- package/lib-mjs/index.d.ts +2 -1
- package/lib-mjs/index.js +1 -1
- package/lib-mjs/index.js.map +1 -1
- package/lib-mjs/paste/DefaultSanitizers.d.ts +10 -0
- package/lib-mjs/paste/DefaultSanitizers.js +21 -0
- package/lib-mjs/paste/DefaultSanitizers.js.map +1 -0
- package/lib-mjs/paste/PastePlugin.d.ts +4 -2
- package/lib-mjs/paste/PastePlugin.js +27 -2
- package/lib-mjs/paste/PastePlugin.js.map +1 -1
- package/lib-mjs/paste/WordDesktop/processPastedContentFromWordDesktop.js +13 -0
- package/lib-mjs/paste/WordDesktop/processPastedContentFromWordDesktop.js.map +1 -1
- package/lib-mjs/paste/utils/chainSanitizerCallback.d.ts +9 -0
- package/lib-mjs/paste/utils/chainSanitizerCallback.js +32 -0
- package/lib-mjs/paste/utils/chainSanitizerCallback.js.map +1 -0
- package/lib-mjs/picker/getQueryString.d.ts +2 -2
- package/lib-mjs/picker/getQueryString.js.map +1 -1
- package/lib-mjs/pluginUtils/splitTextSegment.d.ts +2 -2
- package/lib-mjs/pluginUtils/splitTextSegment.js.map +1 -1
- package/lib-mjs/tableEdit/editors/TableEditor.d.ts +3 -0
- package/lib-mjs/tableEdit/editors/TableEditor.js +4 -0
- package/lib-mjs/tableEdit/editors/TableEditor.js.map +1 -1
- package/lib-mjs/tableEdit/editors/features/CellResizer.d.ts +39 -1
- package/lib-mjs/tableEdit/editors/features/CellResizer.js +27 -14
- package/lib-mjs/tableEdit/editors/features/CellResizer.js.map +1 -1
- package/lib-mjs/tableEdit/editors/features/TableInserter.d.ts +17 -0
- package/lib-mjs/tableEdit/editors/features/TableInserter.js +5 -0
- package/lib-mjs/tableEdit/editors/features/TableInserter.js.map +1 -1
- package/lib-mjs/tableEdit/editors/features/TableMover.d.ts +2 -2
- package/lib-mjs/tableEdit/editors/features/TableMover.js +5 -5
- package/lib-mjs/tableEdit/editors/features/TableMover.js.map +1 -1
- package/lib-mjs/tableEdit/editors/features/TableResizer.d.ts +40 -1
- package/lib-mjs/tableEdit/editors/features/TableResizer.js +25 -10
- package/lib-mjs/tableEdit/editors/features/TableResizer.js.map +1 -1
- package/lib-mjs/tableEdit/editors/utils/getTableFromContentModel.d.ts +2 -2
- package/lib-mjs/tableEdit/editors/utils/getTableFromContentModel.js.map +1 -1
- package/package.json +5 -5
- package/lib/pluginUtils/Rect/getDOMInsertPointRect.d.ts +0 -7
- package/lib/pluginUtils/Rect/getDOMInsertPointRect.js +0 -57
- package/lib/pluginUtils/Rect/getDOMInsertPointRect.js.map +0 -1
- package/lib-amd/pluginUtils/Rect/getDOMInsertPointRect.d.ts +0 -7
- package/lib-amd/pluginUtils/Rect/getDOMInsertPointRect.js +0 -58
- package/lib-amd/pluginUtils/Rect/getDOMInsertPointRect.js.map +0 -1
- package/lib-mjs/pluginUtils/Rect/getDOMInsertPointRect.d.ts +0 -7
- package/lib-mjs/pluginUtils/Rect/getDOMInsertPointRect.js +0 -53
- package/lib-mjs/pluginUtils/Rect/getDOMInsertPointRect.js.map +0 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createImageRotator = void 0;
|
|
4
|
+
var createElement_1 = require("../../pluginUtils/CreateElement/createElement");
|
|
5
|
+
var ImageEditElementClass_1 = require("../types/ImageEditElementClass");
|
|
6
|
+
var roosterjs_content_model_dom_1 = require("roosterjs-content-model-dom");
|
|
7
|
+
var constants_1 = require("../constants/constants");
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
* Get HTML for rotate elements, including the rotate handle with icon, and a line between the handle and the image
|
|
11
|
+
*/
|
|
12
|
+
function createImageRotator(doc, htmlOptions) {
|
|
13
|
+
return getRotateHTML(htmlOptions)
|
|
14
|
+
.map(function (element) {
|
|
15
|
+
var rotator = (0, createElement_1.createElement)(element, doc);
|
|
16
|
+
if ((0, roosterjs_content_model_dom_1.isNodeOfType)(rotator, 'ELEMENT_NODE') && (0, roosterjs_content_model_dom_1.isElementOfType)(rotator, 'div')) {
|
|
17
|
+
return rotator;
|
|
18
|
+
}
|
|
19
|
+
})
|
|
20
|
+
.filter(function (rotator) { return !!rotator; });
|
|
21
|
+
}
|
|
22
|
+
exports.createImageRotator = createImageRotator;
|
|
23
|
+
/**
|
|
24
|
+
* @internal
|
|
25
|
+
* Get HTML for rotate elements, including the rotate handle with icon, and a line between the handle and the image
|
|
26
|
+
*
|
|
27
|
+
*/
|
|
28
|
+
function getRotateHTML(_a) {
|
|
29
|
+
var borderColor = _a.borderColor, rotateHandleBackColor = _a.rotateHandleBackColor;
|
|
30
|
+
var handleLeft = constants_1.ROTATE_SIZE / 2;
|
|
31
|
+
return [
|
|
32
|
+
{
|
|
33
|
+
tag: 'div',
|
|
34
|
+
className: ImageEditElementClass_1.ImageEditElementClass.RotateCenter,
|
|
35
|
+
style: "position:absolute;left:50%;width:1px;background-color:" + borderColor + ";top:" + -constants_1.ROTATE_HANDLE_TOP + "px;height:" + constants_1.ROTATE_GAP + "px;margin-left:" + -constants_1.ROTATE_WIDTH + "px;",
|
|
36
|
+
children: [
|
|
37
|
+
{
|
|
38
|
+
tag: 'div',
|
|
39
|
+
className: ImageEditElementClass_1.ImageEditElementClass.RotateHandle,
|
|
40
|
+
style: "position:absolute;background-color:" + rotateHandleBackColor + ";border:solid 1px " + borderColor + ";border-radius:50%;width:" + constants_1.ROTATE_SIZE + "px;height:" + constants_1.ROTATE_SIZE + "px;left:-" + (handleLeft + constants_1.ROTATE_WIDTH) + "px;cursor:move;top:" + -constants_1.ROTATE_SIZE + "px;line-height: 0px;",
|
|
41
|
+
children: [getRotateIconHTML(borderColor)],
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
},
|
|
45
|
+
];
|
|
46
|
+
}
|
|
47
|
+
function getRotateIconHTML(borderColor) {
|
|
48
|
+
var _a;
|
|
49
|
+
return {
|
|
50
|
+
tag: 'svg',
|
|
51
|
+
namespace: 'http://www.w3.org/2000/svg',
|
|
52
|
+
style: "width:16px;height:16px;margin: " + constants_1.ROTATE_ICON_MARGIN + "px " + constants_1.ROTATE_ICON_MARGIN + "px",
|
|
53
|
+
children: [
|
|
54
|
+
{
|
|
55
|
+
tag: 'path',
|
|
56
|
+
namespace: 'http://www.w3.org/2000/svg',
|
|
57
|
+
attributes: (_a = {
|
|
58
|
+
d: 'M 10.5,10.0 A 3.8,3.8 0 1 1 6.7,6.3',
|
|
59
|
+
transform: 'matrix(1.1 1.1 -1.1 1.1 11.6 -10.8)'
|
|
60
|
+
},
|
|
61
|
+
_a['fill-opacity'] = '0',
|
|
62
|
+
_a.stroke = borderColor,
|
|
63
|
+
_a),
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
tag: 'path',
|
|
67
|
+
namespace: 'http://www.w3.org/2000/svg',
|
|
68
|
+
attributes: {
|
|
69
|
+
d: 'M12.0 3.648l.884-.884.53 2.298-2.298-.53z',
|
|
70
|
+
stroke: borderColor,
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
],
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=createImageRotator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createImageRotator.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/Rotator/createImageRotator.ts"],"names":[],"mappings":";;;AAAA,+EAA8E;AAC9E,wEAAuE;AACvE,2EAA4E;AAG5E,oDAMgC;AAEhC;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,GAAa,EAAE,WAA6B;IAC3E,OAAO,aAAa,CAAC,WAAW,CAAC;SAC5B,GAAG,CAAC,UAAA,OAAO;QACR,IAAM,OAAO,GAAG,IAAA,6BAAa,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,IAAA,0CAAY,EAAC,OAAO,EAAE,cAAc,CAAC,IAAI,IAAA,6CAAe,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC1E,OAAO,OAAO,CAAC;SAClB;IACL,CAAC,CAAC;SACD,MAAM,CAAC,UAAA,OAAO,IAAI,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAqB,CAAC;AAC1D,CAAC;AATD,gDASC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,EAGJ;QAFf,WAAW,iBAAA,EACX,qBAAqB,2BAAA;IAErB,IAAM,UAAU,GAAG,uBAAW,GAAG,CAAC,CAAC;IACnC,OAAO;QACH;YACI,GAAG,EAAE,KAAK;YACV,SAAS,EAAE,6CAAqB,CAAC,YAAY;YAC7C,KAAK,EAAE,2DAAyD,WAAW,aAAQ,CAAC,6BAAiB,kBAAa,sBAAU,uBAAkB,CAAC,wBAAY,QAAK;YAChK,QAAQ,EAAE;gBACN;oBACI,GAAG,EAAE,KAAK;oBACV,SAAS,EAAE,6CAAqB,CAAC,YAAY;oBAC7C,KAAK,EAAE,wCAAsC,qBAAqB,0BAAqB,WAAW,iCAA4B,uBAAW,kBAAa,uBAAW,kBAC7J,UAAU,GAAG,wBAAY,4BACP,CAAC,uBAAW,yBAAsB;oBACxD,QAAQ,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;iBAC7C;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAmB;;IAC1C,OAAO;QACH,GAAG,EAAE,KAAK;QACV,SAAS,EAAE,4BAA4B;QACvC,KAAK,EAAE,oCAAkC,8BAAkB,WAAM,8BAAkB,OAAI;QACvF,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,MAAM;gBACX,SAAS,EAAE,4BAA4B;gBACvC,UAAU;wBACN,CAAC,EAAE,qCAAqC;wBACxC,SAAS,EAAE,qCAAqC;;oBAChD,GAAC,cAAc,IAAG,GAAG;oBACrB,SAAM,GAAE,WAAW;uBACtB;aACJ;YACD;gBACI,GAAG,EAAE,MAAM;gBACX,SAAS,EAAE,4BAA4B;gBACvC,UAAU,EAAE;oBACR,CAAC,EAAE,2CAA2C;oBAC9C,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ;KACJ,CAAC;AACN,CAAC","sourcesContent":["import { createElement } from '../../pluginUtils/CreateElement/createElement';\nimport { ImageEditElementClass } from '../types/ImageEditElementClass';\nimport { isElementOfType, isNodeOfType } from 'roosterjs-content-model-dom';\nimport type { CreateElementData } from '../../pluginUtils/CreateElement/CreateElementData';\nimport type { ImageHtmlOptions } from '../types/ImageHtmlOptions';\nimport {\n ROTATE_GAP,\n ROTATE_HANDLE_TOP,\n ROTATE_ICON_MARGIN,\n ROTATE_SIZE,\n ROTATE_WIDTH,\n} from '../constants/constants';\n\n/**\n * @internal\n * Get HTML for rotate elements, including the rotate handle with icon, and a line between the handle and the image\n */\nexport function createImageRotator(doc: Document, htmlOptions: ImageHtmlOptions) {\n return getRotateHTML(htmlOptions)\n .map(element => {\n const rotator = createElement(element, doc);\n if (isNodeOfType(rotator, 'ELEMENT_NODE') && isElementOfType(rotator, 'div')) {\n return rotator;\n }\n })\n .filter(rotator => !!rotator) as HTMLDivElement[];\n}\n\n/**\n * @internal\n * Get HTML for rotate elements, including the rotate handle with icon, and a line between the handle and the image\n *\n */\nfunction getRotateHTML({\n borderColor,\n rotateHandleBackColor,\n}: ImageHtmlOptions): CreateElementData[] {\n const handleLeft = ROTATE_SIZE / 2;\n return [\n {\n tag: 'div',\n className: ImageEditElementClass.RotateCenter,\n style: `position:absolute;left:50%;width:1px;background-color:${borderColor};top:${-ROTATE_HANDLE_TOP}px;height:${ROTATE_GAP}px;margin-left:${-ROTATE_WIDTH}px;`,\n children: [\n {\n tag: 'div',\n className: ImageEditElementClass.RotateHandle,\n style: `position:absolute;background-color:${rotateHandleBackColor};border:solid 1px ${borderColor};border-radius:50%;width:${ROTATE_SIZE}px;height:${ROTATE_SIZE}px;left:-${\n handleLeft + ROTATE_WIDTH\n }px;cursor:move;top:${-ROTATE_SIZE}px;line-height: 0px;`,\n children: [getRotateIconHTML(borderColor)],\n },\n ],\n },\n ];\n}\n\nfunction getRotateIconHTML(borderColor: string): CreateElementData {\n return {\n tag: 'svg',\n namespace: 'http://www.w3.org/2000/svg',\n style: `width:16px;height:16px;margin: ${ROTATE_ICON_MARGIN}px ${ROTATE_ICON_MARGIN}px`,\n children: [\n {\n tag: 'path',\n namespace: 'http://www.w3.org/2000/svg',\n attributes: {\n d: 'M 10.5,10.0 A 3.8,3.8 0 1 1 6.7,6.3',\n transform: 'matrix(1.1 1.1 -1.1 1.1 11.6 -10.8)',\n ['fill-opacity']: '0',\n stroke: borderColor,\n },\n },\n {\n tag: 'path',\n namespace: 'http://www.w3.org/2000/svg',\n attributes: {\n d: 'M12.0 3.648l.884-.884.53 2.298-2.298-.53z',\n stroke: borderColor,\n },\n },\n ],\n };\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ImageRotateMetadataFormat } from 'roosterjs-content-model-types';
|
|
2
|
+
import type { DragAndDropHandler } from '../../pluginUtils/DragAndDrop/DragAndDropHandler';
|
|
3
|
+
import type { DragAndDropContext } from '../types/DragAndDropContext';
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
* The rotate drag and drop handler
|
|
7
|
+
*/
|
|
8
|
+
export declare const Rotator: DragAndDropHandler<DragAndDropContext, ImageRotateMetadataFormat>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Rotator = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var constants_1 = require("../constants/constants");
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
* The rotate drag and drop handler
|
|
9
|
+
*/
|
|
10
|
+
exports.Rotator = {
|
|
11
|
+
onDragStart: function (_a) {
|
|
12
|
+
var editInfo = _a.editInfo;
|
|
13
|
+
return ((0, tslib_1.__assign)({}, editInfo));
|
|
14
|
+
},
|
|
15
|
+
onDragging: function (_a, e, base, deltaX, deltaY) {
|
|
16
|
+
var _b, _c;
|
|
17
|
+
var editInfo = _a.editInfo, options = _a.options;
|
|
18
|
+
if (editInfo.heightPx) {
|
|
19
|
+
var distance = editInfo.heightPx / 2 + constants_1.DEFAULT_ROTATE_HANDLE_HEIGHT;
|
|
20
|
+
var newX = distance * Math.sin((_b = base.angleRad) !== null && _b !== void 0 ? _b : 0) + deltaX;
|
|
21
|
+
var newY = distance * Math.cos((_c = base.angleRad) !== null && _c !== void 0 ? _c : 0) - deltaY;
|
|
22
|
+
var angleInRad = Math.atan2(newX, newY);
|
|
23
|
+
if (!e.altKey && options && options.minRotateDeg !== undefined) {
|
|
24
|
+
var angleInDeg = angleInRad * constants_1.DEG_PER_RAD;
|
|
25
|
+
var adjustedAngleInDeg = Math.round(angleInDeg / options.minRotateDeg) * options.minRotateDeg;
|
|
26
|
+
angleInRad = adjustedAngleInDeg / constants_1.DEG_PER_RAD;
|
|
27
|
+
}
|
|
28
|
+
if (editInfo.angleRad != angleInRad) {
|
|
29
|
+
editInfo.angleRad = angleInRad;
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=rotatorContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rotatorContext.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/Rotator/rotatorContext.ts"],"names":[],"mappings":";;;;AAAA,oDAAmF;AAKnF;;;GAGG;AACU,QAAA,OAAO,GAAsE;IACtF,WAAW,EAAE,UAAC,EAAY;YAAV,QAAQ,cAAA;QAAO,OAAA,2BAAM,QAAQ,EAAG;IAAjB,CAAiB;IAChD,UAAU,EAAE,UAAC,EAAqB,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM;;YAA5C,QAAQ,cAAA,EAAE,OAAO,aAAA;QAC5B,IAAI,QAAQ,CAAC,QAAQ,EAAE;YACnB,IAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,GAAG,CAAC,GAAG,wCAA4B,CAAC;YACtE,IAAM,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,MAAM,CAAC;YAC9D,IAAM,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,MAAM,CAAC;YAC9D,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAExC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;gBAC5D,IAAM,UAAU,GAAG,UAAU,GAAG,uBAAW,CAAC;gBAC5C,IAAM,kBAAkB,GACpB,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;gBACzE,UAAU,GAAG,kBAAkB,GAAG,uBAAW,CAAC;aACjD;YAED,IAAI,QAAQ,CAAC,QAAQ,IAAI,UAAU,EAAE;gBACjC,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;gBAC/B,OAAO,IAAI,CAAC;aACf;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAC","sourcesContent":["import { DEFAULT_ROTATE_HANDLE_HEIGHT, DEG_PER_RAD } from '../constants/constants';\nimport type { ImageRotateMetadataFormat } from 'roosterjs-content-model-types';\nimport type { DragAndDropHandler } from '../../pluginUtils/DragAndDrop/DragAndDropHandler';\nimport type { DragAndDropContext } from '../types/DragAndDropContext';\n\n/**\n * @internal\n * The rotate drag and drop handler\n */\nexport const Rotator: DragAndDropHandler<DragAndDropContext, ImageRotateMetadataFormat> = {\n onDragStart: ({ editInfo }) => ({ ...editInfo }),\n onDragging: ({ editInfo, options }, e, base, deltaX, deltaY) => {\n if (editInfo.heightPx) {\n const distance = editInfo.heightPx / 2 + DEFAULT_ROTATE_HANDLE_HEIGHT;\n const newX = distance * Math.sin(base.angleRad ?? 0) + deltaX;\n const newY = distance * Math.cos(base.angleRad ?? 0) - deltaY;\n let angleInRad = Math.atan2(newX, newY);\n\n if (!e.altKey && options && options.minRotateDeg !== undefined) {\n const angleInDeg = angleInRad * DEG_PER_RAD;\n const adjustedAngleInDeg =\n Math.round(angleInDeg / options.minRotateDeg) * options.minRotateDeg;\n angleInRad = adjustedAngleInDeg / DEG_PER_RAD;\n }\n\n if (editInfo.angleRad != angleInRad) {\n editInfo.angleRad = angleInRad;\n return true;\n }\n }\n return false;\n },\n};\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Rect } from 'roosterjs-content-model-types';
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
* Move rotate handle. When image is very close to the border of editor, rotate handle may not be visible.
|
|
5
|
+
* Fix it by reduce the distance from image to rotate handle
|
|
6
|
+
*/
|
|
7
|
+
export declare function updateRotateHandle(editorRect: Rect, angleRad: number, wrapper: HTMLElement, rotateCenter: HTMLElement, rotateHandle: HTMLElement, isSmallImage: boolean): void;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateRotateHandle = void 0;
|
|
4
|
+
var constants_1 = require("../constants/constants");
|
|
5
|
+
/**
|
|
6
|
+
* @internal
|
|
7
|
+
* Move rotate handle. When image is very close to the border of editor, rotate handle may not be visible.
|
|
8
|
+
* Fix it by reduce the distance from image to rotate handle
|
|
9
|
+
*/
|
|
10
|
+
function updateRotateHandle(editorRect, angleRad, wrapper, rotateCenter, rotateHandle, isSmallImage) {
|
|
11
|
+
if (isSmallImage) {
|
|
12
|
+
rotateCenter.style.display = 'none';
|
|
13
|
+
rotateHandle.style.display = 'none';
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
rotateCenter.style.display = '';
|
|
18
|
+
rotateHandle.style.display = '';
|
|
19
|
+
var rotateCenterRect = rotateCenter.getBoundingClientRect();
|
|
20
|
+
var wrapperRect = wrapper.getBoundingClientRect();
|
|
21
|
+
var ROTATOR_HEIGHT = constants_1.ROTATE_SIZE + constants_1.ROTATE_GAP + constants_1.RESIZE_HANDLE_MARGIN;
|
|
22
|
+
if (rotateCenterRect && wrapperRect) {
|
|
23
|
+
var adjustedDistance = Number.MAX_SAFE_INTEGER;
|
|
24
|
+
var angle = angleRad * constants_1.DEG_PER_RAD;
|
|
25
|
+
if (angle < 45 && angle > -45 && wrapperRect.top - editorRect.top < ROTATOR_HEIGHT) {
|
|
26
|
+
var top_1 = rotateCenterRect.top - editorRect.top;
|
|
27
|
+
adjustedDistance = top_1;
|
|
28
|
+
}
|
|
29
|
+
else if (angle <= -80 &&
|
|
30
|
+
angle >= -100 &&
|
|
31
|
+
wrapperRect.left - editorRect.left < ROTATOR_HEIGHT) {
|
|
32
|
+
var left = rotateCenterRect.left - editorRect.left;
|
|
33
|
+
adjustedDistance = left;
|
|
34
|
+
}
|
|
35
|
+
else if (angle >= 80 &&
|
|
36
|
+
angle <= 100 &&
|
|
37
|
+
editorRect.right - wrapperRect.right < ROTATOR_HEIGHT) {
|
|
38
|
+
var right = rotateCenterRect.right - editorRect.right;
|
|
39
|
+
adjustedDistance = Math.min(editorRect.right - wrapperRect.right, right);
|
|
40
|
+
}
|
|
41
|
+
else if ((angle <= -160 || angle >= 160) &&
|
|
42
|
+
editorRect.bottom - wrapperRect.bottom < ROTATOR_HEIGHT) {
|
|
43
|
+
var bottom = rotateCenterRect.bottom - editorRect.bottom;
|
|
44
|
+
adjustedDistance = Math.min(editorRect.bottom - wrapperRect.bottom, bottom);
|
|
45
|
+
}
|
|
46
|
+
var rotateGap = Math.max(Math.min(constants_1.ROTATE_GAP, adjustedDistance), 0);
|
|
47
|
+
var rotateTop = Math.max(Math.min(constants_1.ROTATE_SIZE, adjustedDistance - rotateGap), 0);
|
|
48
|
+
rotateCenter.style.top = -rotateGap - constants_1.RESIZE_HANDLE_MARGIN + 'px';
|
|
49
|
+
rotateCenter.style.height = rotateGap + 'px';
|
|
50
|
+
rotateHandle.style.top = -rotateTop + 'px';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.updateRotateHandle = updateRotateHandle;
|
|
55
|
+
//# sourceMappingURL=updateRotateHandle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateRotateHandle.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/Rotator/updateRotateHandle.ts"],"names":[],"mappings":";;;AAAA,oDAAoG;AAGpG;;;;GAIG;AACH,SAAgB,kBAAkB,CAC9B,UAAgB,EAChB,QAAgB,EAChB,OAAoB,EACpB,YAAyB,EACzB,YAAyB,EACzB,YAAqB;IAErB,IAAI,YAAY,EAAE;QACd,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpC,OAAO;KACV;SAAM;QACH,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QAChC,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QAChC,IAAM,gBAAgB,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAC9D,IAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACpD,IAAM,cAAc,GAAG,uBAAW,GAAG,sBAAU,GAAG,gCAAoB,CAAC;QACvE,IAAI,gBAAgB,IAAI,WAAW,EAAE;YACjC,IAAI,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;YAC/C,IAAM,KAAK,GAAG,QAAQ,GAAG,uBAAW,CAAC;YAErC,IAAI,KAAK,GAAG,EAAE,IAAI,KAAK,GAAG,CAAC,EAAE,IAAI,WAAW,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,GAAG,cAAc,EAAE;gBAChF,IAAM,KAAG,GAAG,gBAAgB,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;gBAClD,gBAAgB,GAAG,KAAG,CAAC;aAC1B;iBAAM,IACH,KAAK,IAAI,CAAC,EAAE;gBACZ,KAAK,IAAI,CAAC,GAAG;gBACb,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,GAAG,cAAc,EACrD;gBACE,IAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;gBACrD,gBAAgB,GAAG,IAAI,CAAC;aAC3B;iBAAM,IACH,KAAK,IAAI,EAAE;gBACX,KAAK,IAAI,GAAG;gBACZ,UAAU,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,cAAc,EACvD;gBACE,IAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;gBACxD,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aAC5E;iBAAM,IACH,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,CAAC;gBAC/B,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,cAAc,EACzD;gBACE,IAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;gBAC3D,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;aAC/E;YAED,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAU,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC;YACtE,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAW,EAAE,gBAAgB,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YACnF,YAAY,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,GAAG,gCAAoB,GAAG,IAAI,CAAC;YAClE,YAAY,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;YAC7C,YAAY,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;SAC9C;KACJ;AACL,CAAC;AAtDD,gDAsDC","sourcesContent":["import { DEG_PER_RAD, RESIZE_HANDLE_MARGIN, ROTATE_GAP, ROTATE_SIZE } from '../constants/constants';\nimport type { Rect } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * Move rotate handle. When image is very close to the border of editor, rotate handle may not be visible.\n * Fix it by reduce the distance from image to rotate handle\n */\nexport function updateRotateHandle(\n editorRect: Rect,\n angleRad: number,\n wrapper: HTMLElement,\n rotateCenter: HTMLElement,\n rotateHandle: HTMLElement,\n isSmallImage: boolean\n) {\n if (isSmallImage) {\n rotateCenter.style.display = 'none';\n rotateHandle.style.display = 'none';\n return;\n } else {\n rotateCenter.style.display = '';\n rotateHandle.style.display = '';\n const rotateCenterRect = rotateCenter.getBoundingClientRect();\n const wrapperRect = wrapper.getBoundingClientRect();\n const ROTATOR_HEIGHT = ROTATE_SIZE + ROTATE_GAP + RESIZE_HANDLE_MARGIN;\n if (rotateCenterRect && wrapperRect) {\n let adjustedDistance = Number.MAX_SAFE_INTEGER;\n const angle = angleRad * DEG_PER_RAD;\n\n if (angle < 45 && angle > -45 && wrapperRect.top - editorRect.top < ROTATOR_HEIGHT) {\n const top = rotateCenterRect.top - editorRect.top;\n adjustedDistance = top;\n } else if (\n angle <= -80 &&\n angle >= -100 &&\n wrapperRect.left - editorRect.left < ROTATOR_HEIGHT\n ) {\n const left = rotateCenterRect.left - editorRect.left;\n adjustedDistance = left;\n } else if (\n angle >= 80 &&\n angle <= 100 &&\n editorRect.right - wrapperRect.right < ROTATOR_HEIGHT\n ) {\n const right = rotateCenterRect.right - editorRect.right;\n adjustedDistance = Math.min(editorRect.right - wrapperRect.right, right);\n } else if (\n (angle <= -160 || angle >= 160) &&\n editorRect.bottom - wrapperRect.bottom < ROTATOR_HEIGHT\n ) {\n const bottom = rotateCenterRect.bottom - editorRect.bottom;\n adjustedDistance = Math.min(editorRect.bottom - wrapperRect.bottom, bottom);\n }\n\n const rotateGap = Math.max(Math.min(ROTATE_GAP, adjustedDistance), 0);\n const rotateTop = Math.max(Math.min(ROTATE_SIZE, adjustedDistance - rotateGap), 0);\n rotateCenter.style.top = -rotateGap - RESIZE_HANDLE_MARGIN + 'px';\n rotateCenter.style.height = rotateGap + 'px';\n rotateHandle.style.top = -rotateTop + 'px';\n }\n }\n}\n"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { DNDDirectionX, DnDDirectionY } from '../types/DragAndDropContext';
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export declare const RESIZE_HANDLE_SIZE = 10;
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare const RESIZE_HANDLE_MARGIN = 6;
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export declare const ROTATE_SIZE = 32;
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
export declare const ROTATE_GAP = 15;
|
|
18
|
+
/**
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
export declare const DEG_PER_RAD: number;
|
|
22
|
+
/**
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
export declare const DEFAULT_ROTATE_HANDLE_HEIGHT: number;
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
export declare const ROTATE_ICON_MARGIN = 8;
|
|
30
|
+
/**
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
export declare const ROTATION: Record<string, number>;
|
|
34
|
+
/**
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
export declare const Xs: DNDDirectionX[];
|
|
38
|
+
/**
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
export declare const Ys: DnDDirectionY[];
|
|
42
|
+
/**
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
export declare const ROTATE_WIDTH = 1;
|
|
46
|
+
/**
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
export declare const ROTATE_HANDLE_TOP: number;
|
|
50
|
+
/**
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
export declare const CROP_HANDLE_SIZE = 22;
|
|
54
|
+
/**
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
export declare const CROP_HANDLE_WIDTH = 7;
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
export declare const XS_CROP: DNDDirectionX[];
|
|
62
|
+
/**
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
export declare const YS_CROP: DnDDirectionY[];
|
|
66
|
+
/**
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
export declare const MIN_HEIGHT_WIDTH: number;
|
|
70
|
+
/**
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
export declare const RESIZE_IMAGE = "resizeImage";
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RESIZE_IMAGE = exports.MIN_HEIGHT_WIDTH = exports.YS_CROP = exports.XS_CROP = exports.CROP_HANDLE_WIDTH = exports.CROP_HANDLE_SIZE = exports.ROTATE_HANDLE_TOP = exports.ROTATE_WIDTH = exports.Ys = exports.Xs = exports.ROTATION = exports.ROTATE_ICON_MARGIN = exports.DEFAULT_ROTATE_HANDLE_HEIGHT = exports.DEG_PER_RAD = exports.ROTATE_GAP = exports.ROTATE_SIZE = exports.RESIZE_HANDLE_MARGIN = exports.RESIZE_HANDLE_SIZE = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
exports.RESIZE_HANDLE_SIZE = 10;
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
exports.RESIZE_HANDLE_MARGIN = 6;
|
|
12
|
+
/**
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
exports.ROTATE_SIZE = 32;
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
exports.ROTATE_GAP = 15;
|
|
20
|
+
/**
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
exports.DEG_PER_RAD = 180 / Math.PI;
|
|
24
|
+
/**
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
exports.DEFAULT_ROTATE_HANDLE_HEIGHT = exports.ROTATE_SIZE / 2 + exports.ROTATE_GAP;
|
|
28
|
+
/**
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
exports.ROTATE_ICON_MARGIN = 8;
|
|
32
|
+
/**
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
exports.ROTATION = {
|
|
36
|
+
sw: 0,
|
|
37
|
+
nw: 90,
|
|
38
|
+
ne: 180,
|
|
39
|
+
se: 270,
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
exports.Xs = ['w', '', 'e'];
|
|
45
|
+
/**
|
|
46
|
+
* @internal
|
|
47
|
+
*/
|
|
48
|
+
exports.Ys = ['s', '', 'n'];
|
|
49
|
+
/**
|
|
50
|
+
* @internal
|
|
51
|
+
*/
|
|
52
|
+
exports.ROTATE_WIDTH = 1;
|
|
53
|
+
/**
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
exports.ROTATE_HANDLE_TOP = exports.ROTATE_GAP + exports.RESIZE_HANDLE_MARGIN;
|
|
57
|
+
/**
|
|
58
|
+
* @internal
|
|
59
|
+
*/
|
|
60
|
+
exports.CROP_HANDLE_SIZE = 22;
|
|
61
|
+
/**
|
|
62
|
+
* @internal
|
|
63
|
+
*/
|
|
64
|
+
exports.CROP_HANDLE_WIDTH = 7;
|
|
65
|
+
/**
|
|
66
|
+
* @internal
|
|
67
|
+
*/
|
|
68
|
+
exports.XS_CROP = ['w', 'e'];
|
|
69
|
+
/**
|
|
70
|
+
* @internal
|
|
71
|
+
*/
|
|
72
|
+
exports.YS_CROP = ['s', 'n'];
|
|
73
|
+
/**
|
|
74
|
+
* @internal
|
|
75
|
+
*/
|
|
76
|
+
exports.MIN_HEIGHT_WIDTH = 3 * exports.RESIZE_HANDLE_SIZE + 2 * exports.RESIZE_HANDLE_MARGIN;
|
|
77
|
+
/**
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
exports.RESIZE_IMAGE = 'resizeImage';
|
|
81
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/constants/constants.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACU,QAAA,kBAAkB,GAAG,EAAE,CAAC;AAErC;;GAEG;AACU,QAAA,oBAAoB,GAAG,CAAC,CAAC;AAEtC;;GAEG;AACU,QAAA,WAAW,GAAG,EAAE,CAAC;AAE9B;;GAEG;AACU,QAAA,UAAU,GAAG,EAAE,CAAC;AAE7B;;GAEG;AACU,QAAA,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;AAEzC;;GAEG;AACU,QAAA,4BAA4B,GAAG,mBAAW,GAAG,CAAC,GAAG,kBAAU,CAAC;AAEzE;;GAEG;AACU,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEpC;;GAEG;AACU,QAAA,QAAQ,GAA2B;IAC5C,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,GAAG;IACP,EAAE,EAAE,GAAG;CACV,CAAC;AAEF;;GAEG;AACU,QAAA,EAAE,GAAoB,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;AAElD;;GAEG;AACU,QAAA,EAAE,GAAoB,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;AAElD;;GAEG;AACU,QAAA,YAAY,GAAG,CAAC,CAAC;AAE9B;;GAEG;AACU,QAAA,iBAAiB,GAAG,kBAAU,GAAG,4BAAoB,CAAC;AAEnE;;GAEG;AACU,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;GAEG;AACU,QAAA,iBAAiB,GAAG,CAAC,CAAC;AAEnC;;GAEG;AACU,QAAA,OAAO,GAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnD;;GAEG;AACU,QAAA,OAAO,GAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnD;;GAEG;AACU,QAAA,gBAAgB,GAAG,CAAC,GAAG,0BAAkB,GAAG,CAAC,GAAG,4BAAoB,CAAC;AAElF;;GAEG;AACU,QAAA,YAAY,GAAG,aAAa,CAAC","sourcesContent":["import type { DNDDirectionX, DnDDirectionY } from '../types/DragAndDropContext';\n\n/**\n * @internal\n */\nexport const RESIZE_HANDLE_SIZE = 10;\n\n/**\n * @internal\n */\nexport const RESIZE_HANDLE_MARGIN = 6;\n\n/**\n * @internal\n */\nexport const ROTATE_SIZE = 32;\n\n/**\n * @internal\n */\nexport const ROTATE_GAP = 15;\n\n/**\n * @internal\n */\nexport const DEG_PER_RAD = 180 / Math.PI;\n\n/**\n * @internal\n */\nexport const DEFAULT_ROTATE_HANDLE_HEIGHT = ROTATE_SIZE / 2 + ROTATE_GAP;\n\n/**\n * @internal\n */\nexport const ROTATE_ICON_MARGIN = 8;\n\n/**\n * @internal\n */\nexport const ROTATION: Record<string, number> = {\n sw: 0,\n nw: 90,\n ne: 180,\n se: 270,\n};\n\n/**\n * @internal\n */\nexport const Xs: DNDDirectionX[] = ['w', '', 'e'];\n\n/**\n * @internal\n */\nexport const Ys: DnDDirectionY[] = ['s', '', 'n'];\n\n/**\n * @internal\n */\nexport const ROTATE_WIDTH = 1;\n\n/**\n * @internal\n */\nexport const ROTATE_HANDLE_TOP = ROTATE_GAP + RESIZE_HANDLE_MARGIN;\n\n/**\n * @internal\n */\nexport const CROP_HANDLE_SIZE = 22;\n\n/**\n * @internal\n */\nexport const CROP_HANDLE_WIDTH = 7;\n\n/**\n * @internal\n */\nexport const XS_CROP: DNDDirectionX[] = ['w', 'e'];\n\n/**\n * @internal\n */\nexport const YS_CROP: DnDDirectionY[] = ['s', 'n'];\n\n/**\n * @internal\n */\nexport const MIN_HEIGHT_WIDTH = 3 * RESIZE_HANDLE_SIZE + 2 * RESIZE_HANDLE_MARGIN;\n\n/**\n * @internal\n */\nexport const RESIZE_IMAGE = 'resizeImage';\n"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { ImageEditElementClass } from './ImageEditElementClass';
|
|
2
|
+
import type { ImageEditOptions } from './ImageEditOptions';
|
|
3
|
+
import type { ImageMetadataFormat } from 'roosterjs-content-model-types';
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
* Horizontal direction types for image edit
|
|
7
|
+
*/
|
|
8
|
+
export declare type DNDDirectionX = 'w' | '' | 'e';
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
* Vertical direction types for image edit
|
|
12
|
+
*/
|
|
13
|
+
export declare type DnDDirectionY = 'n' | '' | 's';
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
* Context object of image editing for DragAndDropHelper
|
|
17
|
+
*/
|
|
18
|
+
export interface DragAndDropContext {
|
|
19
|
+
/**
|
|
20
|
+
* The CSS class name of this editing element
|
|
21
|
+
*/
|
|
22
|
+
elementClass: ImageEditElementClass;
|
|
23
|
+
/**
|
|
24
|
+
* Edit info of current image, can be modified by handlers
|
|
25
|
+
*/
|
|
26
|
+
editInfo: ImageMetadataFormat;
|
|
27
|
+
/**
|
|
28
|
+
* Horizontal direction
|
|
29
|
+
*/
|
|
30
|
+
x: DNDDirectionX;
|
|
31
|
+
/**
|
|
32
|
+
* Vertical direction
|
|
33
|
+
*/
|
|
34
|
+
y: DnDDirectionY;
|
|
35
|
+
/**
|
|
36
|
+
* Edit options
|
|
37
|
+
*/
|
|
38
|
+
options: ImageEditOptions;
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DragAndDropContext.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/types/DragAndDropContext.ts"],"names":[],"mappings":"","sourcesContent":["import type { ImageEditElementClass } from './ImageEditElementClass';\nimport type { ImageEditOptions } from './ImageEditOptions';\nimport type { ImageMetadataFormat } from 'roosterjs-content-model-types';\n\n/**\n * @internal\n * Horizontal direction types for image edit\n */\nexport type DNDDirectionX = 'w' | '' | 'e';\n\n/**\n * @internal\n * Vertical direction types for image edit\n */\nexport type DnDDirectionY = 'n' | '' | 's';\n\n/**\n * @internal\n * Context object of image editing for DragAndDropHelper\n */\nexport interface DragAndDropContext {\n /**\n * The CSS class name of this editing element\n */\n elementClass: ImageEditElementClass;\n\n /**\n * Edit info of current image, can be modified by handlers\n */\n editInfo: ImageMetadataFormat;\n\n /**\n * Horizontal direction\n */\n x: DNDDirectionX;\n\n /**\n * Vertical direction\n */\n y: DnDDirectionY;\n\n /**\n * Edit options\n */\n options: ImageEditOptions;\n}\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal The result structure for getGeneratedImageSize()
|
|
3
|
+
*/
|
|
4
|
+
export interface GeneratedImageSize {
|
|
5
|
+
/**
|
|
6
|
+
* Final image width after rotate and crop
|
|
7
|
+
*/
|
|
8
|
+
targetWidth: number;
|
|
9
|
+
/**
|
|
10
|
+
* Final image height after rotate and crop
|
|
11
|
+
*/
|
|
12
|
+
targetHeight: number;
|
|
13
|
+
/**
|
|
14
|
+
* Original width of image before rotate and crop
|
|
15
|
+
*/
|
|
16
|
+
originalWidth: number;
|
|
17
|
+
/**
|
|
18
|
+
* Original height of image before rotate and crop
|
|
19
|
+
*/
|
|
20
|
+
originalHeight: number;
|
|
21
|
+
/**
|
|
22
|
+
* Visible width of image at current state
|
|
23
|
+
* Depends on if beforeCrop is true passed into getGeneratedImageSize(),
|
|
24
|
+
* the value can be before or after crop
|
|
25
|
+
*/
|
|
26
|
+
visibleWidth: number;
|
|
27
|
+
/**
|
|
28
|
+
* Visible height of image at current state
|
|
29
|
+
* Depends on if beforeCrop is true passed into getGeneratedImageSize(),
|
|
30
|
+
* the value can be before or after crop
|
|
31
|
+
*/
|
|
32
|
+
visibleHeight: number;
|
|
33
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GeneratedImageSize.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/types/GeneratedImageSize.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * @internal The result structure for getGeneratedImageSize()\n */\nexport interface GeneratedImageSize {\n /**\n * Final image width after rotate and crop\n */\n targetWidth: number;\n\n /**\n * Final image height after rotate and crop\n */\n targetHeight: number;\n\n /**\n * Original width of image before rotate and crop\n */\n originalWidth: number;\n\n /**\n * Original height of image before rotate and crop\n */\n originalHeight: number;\n\n /**\n * Visible width of image at current state\n * Depends on if beforeCrop is true passed into getGeneratedImageSize(),\n * the value can be before or after crop\n */\n visibleWidth: number;\n\n /**\n * Visible height of image at current state\n * Depends on if beforeCrop is true passed into getGeneratedImageSize(),\n * the value can be before or after crop\n */\n visibleHeight: number;\n}\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
* CSS class names for image editing elements
|
|
4
|
+
*/
|
|
5
|
+
export declare enum ImageEditElementClass {
|
|
6
|
+
/**
|
|
7
|
+
* CSS class name for resize handle
|
|
8
|
+
*/
|
|
9
|
+
ResizeHandle = "r_resizeH",
|
|
10
|
+
/**
|
|
11
|
+
* CSS class name for rotate handle
|
|
12
|
+
*/
|
|
13
|
+
RotateHandle = "r_rotateH",
|
|
14
|
+
/**
|
|
15
|
+
* CSS class name for the container of rotate handle
|
|
16
|
+
*/
|
|
17
|
+
RotateCenter = "r_rotateC",
|
|
18
|
+
/**
|
|
19
|
+
* CSS class name for crop overlay
|
|
20
|
+
*/
|
|
21
|
+
CropOverlay = "r_cropO",
|
|
22
|
+
/**
|
|
23
|
+
* CSS class name for container of crop handle
|
|
24
|
+
*/
|
|
25
|
+
CropContainer = "r_cropC",
|
|
26
|
+
/**
|
|
27
|
+
* CSS class name for crop handle
|
|
28
|
+
*/
|
|
29
|
+
CropHandle = "r_cropH"
|
|
30
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ImageEditElementClass = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
* CSS class names for image editing elements
|
|
7
|
+
*/
|
|
8
|
+
var ImageEditElementClass;
|
|
9
|
+
(function (ImageEditElementClass) {
|
|
10
|
+
/**
|
|
11
|
+
* CSS class name for resize handle
|
|
12
|
+
*/
|
|
13
|
+
ImageEditElementClass["ResizeHandle"] = "r_resizeH";
|
|
14
|
+
/**
|
|
15
|
+
* CSS class name for rotate handle
|
|
16
|
+
*/
|
|
17
|
+
ImageEditElementClass["RotateHandle"] = "r_rotateH";
|
|
18
|
+
/**
|
|
19
|
+
* CSS class name for the container of rotate handle
|
|
20
|
+
*/
|
|
21
|
+
ImageEditElementClass["RotateCenter"] = "r_rotateC";
|
|
22
|
+
/**
|
|
23
|
+
* CSS class name for crop overlay
|
|
24
|
+
*/
|
|
25
|
+
ImageEditElementClass["CropOverlay"] = "r_cropO";
|
|
26
|
+
/**
|
|
27
|
+
* CSS class name for container of crop handle
|
|
28
|
+
*/
|
|
29
|
+
ImageEditElementClass["CropContainer"] = "r_cropC";
|
|
30
|
+
/**
|
|
31
|
+
* CSS class name for crop handle
|
|
32
|
+
*/
|
|
33
|
+
ImageEditElementClass["CropHandle"] = "r_cropH";
|
|
34
|
+
})(ImageEditElementClass = exports.ImageEditElementClass || (exports.ImageEditElementClass = {}));
|
|
35
|
+
//# sourceMappingURL=ImageEditElementClass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageEditElementClass.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/types/ImageEditElementClass.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAY,qBA8BX;AA9BD,WAAY,qBAAqB;IAC7B;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,gDAAuB,CAAA;IAEvB;;OAEG;IACH,kDAAyB,CAAA;IAEzB;;OAEG;IACH,+CAAsB,CAAA;AAC1B,CAAC,EA9BW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QA8BhC","sourcesContent":["/**\n * @internal\n * CSS class names for image editing elements\n */\nexport enum ImageEditElementClass {\n /**\n * CSS class name for resize handle\n */\n ResizeHandle = 'r_resizeH',\n\n /**\n * CSS class name for rotate handle\n */\n RotateHandle = 'r_rotateH',\n\n /**\n * CSS class name for the container of rotate handle\n */\n RotateCenter = 'r_rotateC',\n\n /**\n * CSS class name for crop overlay\n */\n CropOverlay = 'r_cropO',\n\n /**\n * CSS class name for container of crop handle\n */\n CropContainer = 'r_cropC',\n\n /**\n * CSS class name for crop handle\n */\n CropHandle = 'r_cropH',\n}\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { ImageEditOperation } from 'roosterjs-content-model-types';
|
|
2
|
+
/**
|
|
3
|
+
* Options for customize ImageEdit plugin
|
|
4
|
+
*/
|
|
5
|
+
export interface ImageEditOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Color of resize/rotate border, handle and icon
|
|
8
|
+
* @default #DB626C
|
|
9
|
+
*/
|
|
10
|
+
borderColor?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Minimum resize/crop width
|
|
13
|
+
* @default 10
|
|
14
|
+
*/
|
|
15
|
+
minWidth?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Minimum resize/crop height
|
|
18
|
+
* @default 10
|
|
19
|
+
*/
|
|
20
|
+
minHeight?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Whether preserve width/height ratio when resize
|
|
23
|
+
* Pressing SHIFT key when resize will for preserve ratio even this value is set to false
|
|
24
|
+
* @default false
|
|
25
|
+
*/
|
|
26
|
+
preserveRatio?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Minimum degree increase/decrease when rotate image.
|
|
29
|
+
* Pressing SHIFT key when rotate will ignore this value and rotate by any degree with mouse moving
|
|
30
|
+
* @default 5
|
|
31
|
+
*/
|
|
32
|
+
minRotateDeg?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Selector of the image that allows editing
|
|
35
|
+
* @default img
|
|
36
|
+
*/
|
|
37
|
+
imageSelector?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Whether side resizing (single direction resizing) is disabled. @default false
|
|
40
|
+
*/
|
|
41
|
+
disableSideResize?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Whether image rotate is disabled. @default false
|
|
44
|
+
*/
|
|
45
|
+
disableRotate?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Whether image crop is disabled. @default false
|
|
48
|
+
*/
|
|
49
|
+
disableCrop?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Which operations will be executed when image is selected
|
|
52
|
+
* @default resizeAndRotate
|
|
53
|
+
*/
|
|
54
|
+
onSelectState?: ImageEditOperation;
|
|
55
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageEditOptions.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/types/ImageEditOptions.ts"],"names":[],"mappings":"","sourcesContent":["import type { ImageEditOperation } from 'roosterjs-content-model-types';\n\n/**\n * Options for customize ImageEdit plugin\n */\nexport interface ImageEditOptions {\n /**\n * Color of resize/rotate border, handle and icon\n * @default #DB626C\n */\n borderColor?: string;\n\n /**\n * Minimum resize/crop width\n * @default 10\n */\n minWidth?: number;\n\n /**\n * Minimum resize/crop height\n * @default 10\n */\n minHeight?: number;\n\n /**\n * Whether preserve width/height ratio when resize\n * Pressing SHIFT key when resize will for preserve ratio even this value is set to false\n * @default false\n */\n preserveRatio?: boolean;\n\n /**\n * Minimum degree increase/decrease when rotate image.\n * Pressing SHIFT key when rotate will ignore this value and rotate by any degree with mouse moving\n * @default 5\n */\n minRotateDeg?: number;\n\n /**\n * Selector of the image that allows editing\n * @default img\n */\n imageSelector?: string;\n\n /**\n * Whether side resizing (single direction resizing) is disabled. @default false\n */\n disableSideResize?: boolean;\n\n /**\n * Whether image rotate is disabled. @default false\n */\n disableRotate?: boolean;\n\n /**\n * Whether image crop is disabled. @default false\n */\n disableCrop?: boolean;\n\n /**\n * Which operations will be executed when image is selected\n * @default resizeAndRotate\n */\n onSelectState?: ImageEditOperation;\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
* Options for retrieve HTML string for image editing
|
|
4
|
+
*/
|
|
5
|
+
export interface ImageHtmlOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Border and handle color of resize and rotate handle
|
|
8
|
+
*/
|
|
9
|
+
borderColor: string;
|
|
10
|
+
/**
|
|
11
|
+
* Background color of the rotate handle
|
|
12
|
+
*/
|
|
13
|
+
rotateHandleBackColor: string;
|
|
14
|
+
/**
|
|
15
|
+
* Verify if the area of the image is less than 10000px, if yes, don't insert the side handles
|
|
16
|
+
*/
|
|
17
|
+
isSmallImage: boolean;
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageHtmlOptions.js","sourceRoot":"","sources":["../../../../../packages/roosterjs-content-model-plugins/lib/imageEdit/types/ImageHtmlOptions.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * @internal\n * Options for retrieve HTML string for image editing\n */\nexport interface ImageHtmlOptions {\n /**\n * Border and handle color of resize and rotate handle\n */\n borderColor: string;\n\n /**\n * Background color of the rotate handle\n */\n rotateHandleBackColor: string;\n\n /**\n * Verify if the area of the image is less than 10000px, if yes, don't insert the side handles\n */\n isSmallImage: boolean;\n}\n"]}
|