@os-design/editor 1.0.259 → 1.0.261
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/@types/emotion.d.js +1 -0
- package/dist/{types/Editor → Editor}/BlockToolbar.d.ts +2 -2
- package/dist/Editor/BlockToolbar.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/BlockToolbar.js +9 -6
- package/dist/{types/Editor → Editor}/StyleToolbar.d.ts +2 -2
- package/dist/Editor/StyleToolbar.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/StyleToolbar.js +15 -13
- package/dist/{types/Editor → Editor}/Toolbar.d.ts +1 -2
- package/dist/Editor/Toolbar.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/Toolbar.js +1 -2
- package/dist/Editor/ToolbarButton.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/ToolbarButton.js +6 -6
- package/dist/Editor/blocks/Figure.d.ts +6 -0
- package/dist/Editor/blocks/Figure.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/blocks/Figure.js +1 -2
- package/dist/Editor/blocks/FigureCaption.d.ts +6 -0
- package/dist/Editor/blocks/FigureCaption.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/blocks/FigureCaption.js +1 -2
- package/dist/{types/Editor → Editor}/blocks/imageBlock.d.ts +1 -1
- package/dist/Editor/blocks/imageBlock.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/blocks/imageBlock.js +18 -11
- package/dist/Editor/blocks/types.d.ts.map +1 -0
- package/dist/Editor/blocks/types.js +1 -0
- package/dist/{types/Editor → Editor}/blocks/videoBlock.d.ts +1 -1
- package/dist/Editor/blocks/videoBlock.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/blocks/videoBlock.js +13 -9
- package/dist/Editor/decorators/linkDecorator.d.ts +4 -0
- package/dist/Editor/decorators/linkDecorator.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/decorators/linkDecorator.js +6 -6
- package/dist/{types/Editor → Editor}/hooks/useBlockToolbarProps.d.ts +3 -0
- package/dist/Editor/hooks/useBlockToolbarProps.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/hooks/useBlockToolbarProps.js +1 -2
- package/dist/{types/Editor → Editor}/hooks/usePastedTextHandler.d.ts +4 -1
- package/dist/Editor/hooks/usePastedTextHandler.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/hooks/usePastedTextHandler.js +1 -2
- package/dist/{types/Editor → Editor}/hooks/useReturnHandler.d.ts +4 -1
- package/dist/Editor/hooks/useReturnHandler.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/hooks/useReturnHandler.js +1 -2
- package/dist/{types/Editor → Editor}/hooks/useStyleToolbarProps.d.ts +3 -0
- package/dist/Editor/hooks/useStyleToolbarProps.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/hooks/useStyleToolbarProps.js +1 -2
- package/dist/Editor/index.d.ts +42 -0
- package/dist/Editor/index.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/index.js +41 -37
- package/dist/Editor/styles/defaultDraftJsStyles.d.ts +7 -0
- package/dist/Editor/styles/defaultDraftJsStyles.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/styles/defaultDraftJsStyles.js +1 -2
- package/dist/Editor/styles/overrideDraftJsStyles.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/styles/overrideDraftJsStyles.js +1 -4
- package/dist/Editor/utils/addNewBlockAt.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/addNewBlockAt.js +1 -2
- package/dist/Editor/utils/changeBlock.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/changeBlock.js +1 -2
- package/dist/Editor/utils/createContentEditorState.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/createContentEditorState.js +1 -2
- package/dist/Editor/utils/createDecorator.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/createDecorator.js +1 -2
- package/dist/Editor/utils/createEmptyEditorState.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/createEmptyEditorState.js +1 -2
- package/dist/Editor/utils/defaultStyleToolbarItems.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/defaultStyleToolbarItems.js +8 -8
- package/dist/Editor/utils/getCurrentBlock.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/getCurrentBlock.js +1 -2
- package/dist/Editor/utils/getSelectedBlockElement.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/getSelectedBlockElement.js +1 -2
- package/dist/Editor/utils/getSelectionRange.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/getSelectionRange.js +1 -2
- package/dist/Editor/utils/setLink.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/setLink.js +1 -2
- package/dist/Editor/utils/transformers.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/transformers.js +1 -2
- package/dist/Editor/utils/unsetLink.d.ts.map +1 -0
- package/dist/{esm/Editor → Editor}/utils/unsetLink.js +1 -2
- package/dist/EditorSkeleton/index.d.ts +8 -0
- package/dist/EditorSkeleton/index.d.ts.map +1 -0
- package/dist/EditorSkeleton/index.js +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{esm/index.js → index.js} +1 -2
- package/package.json +12 -13
- package/src/@types/emotion.d.ts +1 -1
- package/src/Editor/BlockToolbar.tsx +2 -2
- package/src/Editor/StyleToolbar.tsx +2 -3
- package/src/Editor/blocks/imageBlock.tsx +1 -1
- package/src/Editor/blocks/videoBlock.tsx +1 -3
- package/src/Editor/decorators/linkDecorator.tsx +1 -2
- package/src/Editor/hooks/usePastedTextHandler.ts +2 -2
- package/src/Editor/hooks/useReturnHandler.ts +1 -1
- package/src/Editor/index.tsx +5 -5
- package/src/Editor/styles/overrideDraftJsStyles.ts +0 -1
- package/src/EditorSkeleton/index.tsx +2 -2
- package/dist/cjs/@types/emotion.d.js +0 -4
- package/dist/cjs/@types/emotion.d.js.map +0 -1
- package/dist/cjs/Editor/BlockToolbar.js +0 -44
- package/dist/cjs/Editor/BlockToolbar.js.map +0 -1
- package/dist/cjs/Editor/StyleToolbar.js +0 -65
- package/dist/cjs/Editor/StyleToolbar.js.map +0 -1
- package/dist/cjs/Editor/Toolbar.js +0 -18
- package/dist/cjs/Editor/Toolbar.js.map +0 -1
- package/dist/cjs/Editor/ToolbarButton.js +0 -47
- package/dist/cjs/Editor/ToolbarButton.js.map +0 -1
- package/dist/cjs/Editor/blocks/Figure.js +0 -16
- package/dist/cjs/Editor/blocks/Figure.js.map +0 -1
- package/dist/cjs/Editor/blocks/FigureCaption.js +0 -21
- package/dist/cjs/Editor/blocks/FigureCaption.js.map +0 -1
- package/dist/cjs/Editor/blocks/imageBlock.js +0 -156
- package/dist/cjs/Editor/blocks/imageBlock.js.map +0 -1
- package/dist/cjs/Editor/blocks/types.js +0 -2
- package/dist/cjs/Editor/blocks/types.js.map +0 -1
- package/dist/cjs/Editor/blocks/videoBlock.js +0 -82
- package/dist/cjs/Editor/blocks/videoBlock.js.map +0 -1
- package/dist/cjs/Editor/decorators/linkDecorator.js +0 -29
- package/dist/cjs/Editor/decorators/linkDecorator.js.map +0 -1
- package/dist/cjs/Editor/hooks/useBlockToolbarProps.js +0 -69
- package/dist/cjs/Editor/hooks/useBlockToolbarProps.js.map +0 -1
- package/dist/cjs/Editor/hooks/usePastedTextHandler.js +0 -26
- package/dist/cjs/Editor/hooks/usePastedTextHandler.js.map +0 -1
- package/dist/cjs/Editor/hooks/useReturnHandler.js +0 -27
- package/dist/cjs/Editor/hooks/useReturnHandler.js.map +0 -1
- package/dist/cjs/Editor/hooks/useStyleToolbarProps.js +0 -56
- package/dist/cjs/Editor/hooks/useStyleToolbarProps.js.map +0 -1
- package/dist/cjs/Editor/index.js +0 -156
- package/dist/cjs/Editor/index.js.map +0 -1
- package/dist/cjs/Editor/styles/defaultDraftJsStyles.js +0 -16
- package/dist/cjs/Editor/styles/defaultDraftJsStyles.js.map +0 -1
- package/dist/cjs/Editor/styles/overrideDraftJsStyles.js +0 -16
- package/dist/cjs/Editor/styles/overrideDraftJsStyles.js.map +0 -1
- package/dist/cjs/Editor/utils/addNewBlockAt.js +0 -48
- package/dist/cjs/Editor/utils/addNewBlockAt.js.map +0 -1
- package/dist/cjs/Editor/utils/changeBlock.js +0 -22
- package/dist/cjs/Editor/utils/changeBlock.js.map +0 -1
- package/dist/cjs/Editor/utils/createContentEditorState.js +0 -14
- package/dist/cjs/Editor/utils/createContentEditorState.js.map +0 -1
- package/dist/cjs/Editor/utils/createDecorator.js +0 -14
- package/dist/cjs/Editor/utils/createDecorator.js.map +0 -1
- package/dist/cjs/Editor/utils/createEmptyEditorState.js +0 -14
- package/dist/cjs/Editor/utils/createEmptyEditorState.js.map +0 -1
- package/dist/cjs/Editor/utils/defaultStyleToolbarItems.js +0 -40
- package/dist/cjs/Editor/utils/defaultStyleToolbarItems.js.map +0 -1
- package/dist/cjs/Editor/utils/getCurrentBlock.js +0 -13
- package/dist/cjs/Editor/utils/getCurrentBlock.js.map +0 -1
- package/dist/cjs/Editor/utils/getSelectedBlockElement.js +0 -20
- package/dist/cjs/Editor/utils/getSelectedBlockElement.js.map +0 -1
- package/dist/cjs/Editor/utils/getSelectionRange.js +0 -13
- package/dist/cjs/Editor/utils/getSelectionRange.js.map +0 -1
- package/dist/cjs/Editor/utils/setLink.js +0 -22
- package/dist/cjs/Editor/utils/setLink.js.map +0 -1
- package/dist/cjs/Editor/utils/transformers.js +0 -16
- package/dist/cjs/Editor/utils/transformers.js.map +0 -1
- package/dist/cjs/Editor/utils/unsetLink.js +0 -15
- package/dist/cjs/Editor/utils/unsetLink.js.map +0 -1
- package/dist/cjs/EditorSkeleton/index.js +0 -31
- package/dist/cjs/EditorSkeleton/index.js.map +0 -1
- package/dist/cjs/index.js +0 -146
- package/dist/cjs/index.js.map +0 -1
- package/dist/esm/@types/emotion.d.js +0 -2
- package/dist/esm/@types/emotion.d.js.map +0 -1
- package/dist/esm/Editor/BlockToolbar.js.map +0 -1
- package/dist/esm/Editor/StyleToolbar.js.map +0 -1
- package/dist/esm/Editor/Toolbar.js.map +0 -1
- package/dist/esm/Editor/ToolbarButton.js.map +0 -1
- package/dist/esm/Editor/blocks/Figure.js.map +0 -1
- package/dist/esm/Editor/blocks/FigureCaption.js.map +0 -1
- package/dist/esm/Editor/blocks/imageBlock.js.map +0 -1
- package/dist/esm/Editor/blocks/types.js +0 -2
- package/dist/esm/Editor/blocks/types.js.map +0 -1
- package/dist/esm/Editor/blocks/videoBlock.js.map +0 -1
- package/dist/esm/Editor/decorators/linkDecorator.js.map +0 -1
- package/dist/esm/Editor/hooks/useBlockToolbarProps.js.map +0 -1
- package/dist/esm/Editor/hooks/usePastedTextHandler.js.map +0 -1
- package/dist/esm/Editor/hooks/useReturnHandler.js.map +0 -1
- package/dist/esm/Editor/hooks/useStyleToolbarProps.js.map +0 -1
- package/dist/esm/Editor/index.js.map +0 -1
- package/dist/esm/Editor/styles/defaultDraftJsStyles.js.map +0 -1
- package/dist/esm/Editor/styles/overrideDraftJsStyles.js.map +0 -1
- package/dist/esm/Editor/utils/addNewBlockAt.js.map +0 -1
- package/dist/esm/Editor/utils/changeBlock.js.map +0 -1
- package/dist/esm/Editor/utils/createContentEditorState.js.map +0 -1
- package/dist/esm/Editor/utils/createDecorator.js.map +0 -1
- package/dist/esm/Editor/utils/createEmptyEditorState.js.map +0 -1
- package/dist/esm/Editor/utils/defaultStyleToolbarItems.js.map +0 -1
- package/dist/esm/Editor/utils/getCurrentBlock.js.map +0 -1
- package/dist/esm/Editor/utils/getSelectedBlockElement.js.map +0 -1
- package/dist/esm/Editor/utils/getSelectionRange.js.map +0 -1
- package/dist/esm/Editor/utils/setLink.js.map +0 -1
- package/dist/esm/Editor/utils/transformers.js.map +0 -1
- package/dist/esm/Editor/utils/unsetLink.js.map +0 -1
- package/dist/esm/EditorSkeleton/index.js +0 -17
- package/dist/esm/EditorSkeleton/index.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/types/Editor/BlockToolbar.d.ts.map +0 -1
- package/dist/types/Editor/StyleToolbar.d.ts.map +0 -1
- package/dist/types/Editor/Toolbar.d.ts.map +0 -1
- package/dist/types/Editor/ToolbarButton.d.ts.map +0 -1
- package/dist/types/Editor/blocks/Figure.d.ts +0 -7
- package/dist/types/Editor/blocks/Figure.d.ts.map +0 -1
- package/dist/types/Editor/blocks/FigureCaption.d.ts +0 -7
- package/dist/types/Editor/blocks/FigureCaption.d.ts.map +0 -1
- package/dist/types/Editor/blocks/imageBlock.d.ts.map +0 -1
- package/dist/types/Editor/blocks/types.d.ts.map +0 -1
- package/dist/types/Editor/blocks/videoBlock.d.ts.map +0 -1
- package/dist/types/Editor/decorators/linkDecorator.d.ts +0 -4
- package/dist/types/Editor/decorators/linkDecorator.d.ts.map +0 -1
- package/dist/types/Editor/hooks/useBlockToolbarProps.d.ts.map +0 -1
- package/dist/types/Editor/hooks/usePastedTextHandler.d.ts.map +0 -1
- package/dist/types/Editor/hooks/useReturnHandler.d.ts.map +0 -1
- package/dist/types/Editor/hooks/useStyleToolbarProps.d.ts.map +0 -1
- package/dist/types/Editor/index.d.ts +0 -16
- package/dist/types/Editor/index.d.ts.map +0 -1
- package/dist/types/Editor/styles/defaultDraftJsStyles.d.ts +0 -3
- package/dist/types/Editor/styles/defaultDraftJsStyles.d.ts.map +0 -1
- package/dist/types/Editor/styles/overrideDraftJsStyles.d.ts.map +0 -1
- package/dist/types/Editor/utils/addNewBlockAt.d.ts.map +0 -1
- package/dist/types/Editor/utils/changeBlock.d.ts.map +0 -1
- package/dist/types/Editor/utils/createContentEditorState.d.ts.map +0 -1
- package/dist/types/Editor/utils/createDecorator.d.ts.map +0 -1
- package/dist/types/Editor/utils/createEmptyEditorState.d.ts.map +0 -1
- package/dist/types/Editor/utils/defaultStyleToolbarItems.d.ts.map +0 -1
- package/dist/types/Editor/utils/getCurrentBlock.d.ts.map +0 -1
- package/dist/types/Editor/utils/getSelectedBlockElement.d.ts.map +0 -1
- package/dist/types/Editor/utils/getSelectionRange.d.ts.map +0 -1
- package/dist/types/Editor/utils/setLink.d.ts.map +0 -1
- package/dist/types/Editor/utils/transformers.d.ts.map +0 -1
- package/dist/types/Editor/utils/unsetLink.d.ts.map +0 -1
- package/dist/types/EditorSkeleton/index.d.ts +0 -6
- package/dist/types/EditorSkeleton/index.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- /package/dist/{types/Editor → Editor}/ToolbarButton.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/blocks/types.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/styles/overrideDraftJsStyles.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/addNewBlockAt.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/changeBlock.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/createContentEditorState.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/createDecorator.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/createEmptyEditorState.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/defaultStyleToolbarItems.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/getCurrentBlock.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/getSelectedBlockElement.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/getSelectionRange.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/setLink.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/transformers.d.ts +0 -0
- /package/dist/{types/Editor → Editor}/utils/unsetLink.d.ts +0 -0
- /package/dist/{types/index.d.ts → index.d.ts} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StyleToolbar.js","names":["_draftJs","require","_react","_interopRequireWildcard","_Toolbar","_interopRequireDefault","_ToolbarButton","_setLink","_unsetLink","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","StyleToolbar","_ref","items","value","_ref$onChange","onChange","rest","currentBlockType","useMemo","RichUtils","getCurrentBlockType","currentBlockContainsLink","toggleLink","useCallback","unsetLink","url","prompt","setLink","clickHandler","item","type","toggleInlineStyle","name","toggleBlockType","createElement","map","isLink","active","getCurrentInlineStyle","onClick","icon","displayName","_default","exports"],"sources":["../../../src/Editor/StyleToolbar.tsx"],"sourcesContent":["import { PopoverProps } from '@os-design/core';\nimport { EditorState, RichUtils } from 'draft-js';\nimport React, { useCallback, useMemo } from 'react';\nimport Toolbar from './Toolbar';\nimport ToolbarButton from './ToolbarButton';\nimport { StyleToolbarItem } from './utils/defaultStyleToolbarItems';\nimport setLink from './utils/setLink';\nimport unsetLink from './utils/unsetLink';\n\ninterface StyleToolbarProps extends Omit<PopoverProps, 'onChange'> {\n items: StyleToolbarItem[];\n value: EditorState;\n onChange: (value: EditorState) => void;\n}\n\nconst StyleToolbar: React.FC<StyleToolbarProps> = ({\n items,\n value,\n onChange = () => {},\n ...rest\n}) => {\n const currentBlockType = useMemo(\n () => RichUtils.getCurrentBlockType(value),\n [value]\n );\n const currentBlockContainsLink = useMemo(\n () => RichUtils.currentBlockContainsLink(value),\n [value]\n );\n\n const toggleLink = useCallback(() => {\n if (currentBlockContainsLink) {\n onChange(unsetLink(value));\n return;\n }\n // eslint-disable-next-line no-alert\n const url = prompt('Paste or type a link');\n if (!url) return;\n onChange(setLink(value, url));\n }, [currentBlockContainsLink, value, onChange]);\n\n const clickHandler = useCallback<(item: StyleToolbarItem) => void>(\n (item) => {\n if (item.type === 'inline') {\n onChange(RichUtils.toggleInlineStyle(value, item.name));\n } else if (item.type === 'block') {\n onChange(RichUtils.toggleBlockType(value, item.name));\n }\n },\n [value, onChange]\n );\n\n if (items.length === 0) return null;\n\n return (\n <Toolbar {...rest}>\n {items.map((item) => {\n const isLink = item.name === 'LINK' && item.type === 'inline';\n\n const active = isLink\n ? currentBlockContainsLink\n : value.getCurrentInlineStyle().has(item.name) ||\n currentBlockType === item.name;\n const onClick = isLink ? toggleLink : () => clickHandler(item);\n\n return (\n <ToolbarButton key={item.name} active={active} onClick={onClick}>\n {item.icon}\n </ToolbarButton>\n );\n })}\n </Toolbar>\n );\n};\n\nStyleToolbar.displayName = 'StyleToolbar';\n\nexport default StyleToolbar;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
8
|
-
var _core = require("@os-design/core");
|
|
9
|
-
var _theming = require("@os-design/theming");
|
|
10
|
-
var _templateObject;
|
|
11
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
13
|
-
var Toolbar = (0, _styled["default"])(_core.Popover)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n // Reset popover styles\n border: 0;\n\n display: flex;\n flex-direction: row;\n overflow: hidden; // For border-radius\n\n background-color: ", ";\n"])), function (p) {
|
|
14
|
-
return (0, _theming.clr)(p.theme.editorToolbarButtonColorBg);
|
|
15
|
-
});
|
|
16
|
-
Toolbar.displayName = 'Toolbar';
|
|
17
|
-
var _default = exports["default"] = Toolbar;
|
|
18
|
-
//# sourceMappingURL=Toolbar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.js","names":["_styled","_interopRequireDefault","require","_core","_theming","_templateObject","obj","__esModule","_taggedTemplateLiteral","strings","raw","slice","Object","freeze","defineProperties","value","Toolbar","styled","Popover","p","clr","theme","editorToolbarButtonColorBg","displayName","_default","exports"],"sources":["../../../src/Editor/Toolbar.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { Popover } from '@os-design/core';\nimport { clr } from '@os-design/theming';\n\nconst Toolbar = styled(Popover)`\n // Reset popover styles\n border: 0;\n\n display: flex;\n flex-direction: row;\n overflow: hidden; // For border-radius\n\n background-color: ${(p) => clr(p.theme.editorToolbarButtonColorBg)};\n`;\n\nToolbar.displayName = 'Toolbar';\n\nexport default Toolbar;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAAyC,IAAAG,eAAA;AAAA,SAAAJ,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAE,KAAA,cAAAC,MAAA,CAAAC,MAAA,CAAAD,MAAA,CAAAE,gBAAA,CAAAL,OAAA,IAAAC,GAAA,IAAAK,KAAA,EAAAH,MAAA,CAAAC,MAAA,CAAAH,GAAA;AAEzC,IAAMM,OAAO,GAAG,IAAAC,kBAAM,EAACC,aAAO,CAAC,CAAAb,eAAA,KAAAA,eAAA,GAAAG,sBAAA,uKAQT,UAACW,CAAC;EAAA,OAAK,IAAAC,YAAG,EAACD,CAAC,CAACE,KAAK,CAACC,0BAA0B,CAAC;AAAA,EACnE;AAEDN,OAAO,CAACO,WAAW,GAAG,SAAS;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEjBT,OAAO","ignoreList":[]}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var _react = require("@emotion/react");
|
|
8
|
-
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
9
|
-
var _styles = require("@os-design/styles");
|
|
10
|
-
var _theming = require("@os-design/theming");
|
|
11
|
-
var _utils = require("@os-design/utils");
|
|
12
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
13
|
-
var _excluded = ["onMouseDown"];
|
|
14
|
-
var _templateObject, _templateObject2;
|
|
15
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
17
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
18
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
|
|
19
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
20
|
-
var activeStyles = function activeStyles(p) {
|
|
21
|
-
return p.active && (0, _react.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background-color: ", ";\n "])), (0, _theming.clr)(p.theme.editorToolbarButtonColorBgActive));
|
|
22
|
-
};
|
|
23
|
-
var StyledToolbarButton = (0, _styled["default"])('button', (0, _utils.omitEmotionProps)('active'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n ", ";\n cursor: pointer;\n font-size: 1.3em;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n width: ", "em;\n height: ", "em;\n background-color: ", ";\n color: ", ";\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ", ";\n }\n }\n\n ", ";\n ", ";\n"])), _styles.resetButtonStyles, function (p) {
|
|
24
|
-
return p.theme.editorToolbarButtonSize;
|
|
25
|
-
}, function (p) {
|
|
26
|
-
return p.theme.editorToolbarButtonSize;
|
|
27
|
-
}, function (p) {
|
|
28
|
-
return (0, _theming.clr)(p.theme.editorToolbarButtonColorBg);
|
|
29
|
-
}, function (p) {
|
|
30
|
-
return (0, _theming.clr)(p.theme.editorToolbarButtonColorText);
|
|
31
|
-
}, function (p) {
|
|
32
|
-
return (0, _theming.clr)(p.theme.editorToolbarButtonColorBgHover);
|
|
33
|
-
}, activeStyles, (0, _styles.transitionStyles)('background-color'));
|
|
34
|
-
var ToolbarButton = function ToolbarButton(_ref) {
|
|
35
|
-
var _ref$onMouseDown = _ref.onMouseDown,
|
|
36
|
-
_onMouseDown = _ref$onMouseDown === void 0 ? function () {} : _ref$onMouseDown,
|
|
37
|
-
rest = _objectWithoutProperties(_ref, _excluded);
|
|
38
|
-
return /*#__PURE__*/_react2["default"].createElement(StyledToolbarButton, _extends({
|
|
39
|
-
onMouseDown: function onMouseDown(e) {
|
|
40
|
-
_onMouseDown(e);
|
|
41
|
-
e.preventDefault();
|
|
42
|
-
}
|
|
43
|
-
}, rest));
|
|
44
|
-
};
|
|
45
|
-
ToolbarButton.displayName = 'ToolbarButton';
|
|
46
|
-
var _default = exports["default"] = ToolbarButton;
|
|
47
|
-
//# sourceMappingURL=ToolbarButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarButton.js","names":["_react","require","_styled","_interopRequireDefault","_styles","_theming","_utils","_react2","_excluded","_templateObject","_templateObject2","obj","__esModule","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","activeStyles","p","active","css","clr","theme","editorToolbarButtonColorBgActive","StyledToolbarButton","styled","omitEmotionProps","resetButtonStyles","editorToolbarButtonSize","editorToolbarButtonColorBg","editorToolbarButtonColorText","editorToolbarButtonColorBgHover","transitionStyles","ToolbarButton","_ref","_ref$onMouseDown","onMouseDown","rest","createElement","e","preventDefault","displayName","_default","exports"],"sources":["../../../src/Editor/ToolbarButton.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { resetButtonStyles, transitionStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React from 'react';\n\ntype JsxButtonProps = JSX.IntrinsicElements['button'];\ninterface ToolbarButtonProps extends JsxButtonProps {\n active?: boolean;\n}\n\nconst activeStyles = (p) =>\n p.active &&\n css`\n background-color: ${clr(p.theme.editorToolbarButtonColorBgActive)};\n `;\n\ntype StyledToolbarButtonProps = Pick<ToolbarButtonProps, 'active'>;\nconst StyledToolbarButton = styled(\n 'button',\n omitEmotionProps('active')\n)<StyledToolbarButtonProps>`\n ${resetButtonStyles};\n cursor: pointer;\n font-size: 1.3em;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n width: ${(p) => p.theme.editorToolbarButtonSize}em;\n height: ${(p) => p.theme.editorToolbarButtonSize}em;\n background-color: ${(p) => clr(p.theme.editorToolbarButtonColorBg)};\n color: ${(p) => clr(p.theme.editorToolbarButtonColorText)};\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ${(p) => clr(p.theme.editorToolbarButtonColorBgHover)};\n }\n }\n\n ${activeStyles};\n ${transitionStyles('background-color')};\n`;\n\nconst ToolbarButton: React.FC<ToolbarButtonProps> = ({\n onMouseDown = () => {},\n ...rest\n}) => (\n <StyledToolbarButton\n onMouseDown={(e) => {\n onMouseDown(e);\n e.preventDefault();\n }}\n {...rest}\n />\n);\n\nToolbarButton.displayName = 'ToolbarButton';\n\nexport default ToolbarButton;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
8
|
-
var _templateObject;
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
10
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
11
|
-
var Figure = _styled["default"].figure(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n border-radius: ", "em;\n overflow: hidden;\n"])), function (p) {
|
|
12
|
-
return p.theme.borderRadius;
|
|
13
|
-
});
|
|
14
|
-
Figure.displayName = 'Figure';
|
|
15
|
-
var _default = exports["default"] = Figure;
|
|
16
|
-
//# sourceMappingURL=Figure.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Figure.js","names":["_styled","_interopRequireDefault","require","_templateObject","obj","__esModule","_taggedTemplateLiteral","strings","raw","slice","Object","freeze","defineProperties","value","Figure","styled","figure","p","theme","borderRadius","displayName","_default","exports"],"sources":["../../../../src/Editor/blocks/Figure.tsx"],"sourcesContent":["import styled from '@emotion/styled';\n\nconst Figure = styled.figure`\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n`;\n\nFigure.displayName = 'Figure';\n\nexport default Figure;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAqC,IAAAC,eAAA;AAAA,SAAAF,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAE,KAAA,cAAAC,MAAA,CAAAC,MAAA,CAAAD,MAAA,CAAAE,gBAAA,CAAAL,OAAA,IAAAC,GAAA,IAAAK,KAAA,EAAAH,MAAA,CAAAC,MAAA,CAAAH,GAAA;AAErC,IAAMM,MAAM,GAAGC,kBAAM,CAACC,MAAM,CAAAb,eAAA,KAAAA,eAAA,GAAAG,sBAAA,0DACT,UAACW,CAAC;EAAA,OAAKA,CAAC,CAACC,KAAK,CAACC,YAAY;AAAA,EAE7C;AAEDL,MAAM,CAACM,WAAW,GAAG,QAAQ;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEfR,MAAM","ignoreList":[]}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
8
|
-
var _theming = require("@os-design/theming");
|
|
9
|
-
var _templateObject;
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
11
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
12
|
-
var FigureCaption = _styled["default"].figcaption(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n font-size: ", "em;\n padding: 0.4em 0.8em;\n\n background-color: ", ";\n color: ", ";\n\n & > div {\n text-align: center !important;\n margin: 0 !important;\n }\n"])), function (p) {
|
|
13
|
-
return p.theme.sizes.small;
|
|
14
|
-
}, function (p) {
|
|
15
|
-
return (0, _theming.clr)(p.theme.editorFigureCaptionColorBg);
|
|
16
|
-
}, function (p) {
|
|
17
|
-
return (0, _theming.clr)(p.theme.editorFigureCaptionColorText);
|
|
18
|
-
});
|
|
19
|
-
FigureCaption.displayName = 'FigureCaption';
|
|
20
|
-
var _default = exports["default"] = FigureCaption;
|
|
21
|
-
//# sourceMappingURL=FigureCaption.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FigureCaption.js","names":["_styled","_interopRequireDefault","require","_theming","_templateObject","obj","__esModule","_taggedTemplateLiteral","strings","raw","slice","Object","freeze","defineProperties","value","FigureCaption","styled","figcaption","p","theme","sizes","small","clr","editorFigureCaptionColorBg","editorFigureCaptionColorText","displayName","_default","exports"],"sources":["../../../../src/Editor/blocks/FigureCaption.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\n\nconst FigureCaption = styled.figcaption`\n font-size: ${(p) => p.theme.sizes.small}em;\n padding: 0.4em 0.8em;\n\n background-color: ${(p) => clr(p.theme.editorFigureCaptionColorBg)};\n color: ${(p) => clr(p.theme.editorFigureCaptionColorText)};\n\n & > div {\n text-align: center !important;\n margin: 0 !important;\n }\n`;\n\nFigureCaption.displayName = 'FigureCaption';\n\nexport default FigureCaption;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAAyC,IAAAE,eAAA;AAAA,SAAAH,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAE,KAAA,cAAAC,MAAA,CAAAC,MAAA,CAAAD,MAAA,CAAAE,gBAAA,CAAAL,OAAA,IAAAC,GAAA,IAAAK,KAAA,EAAAH,MAAA,CAAAC,MAAA,CAAAH,GAAA;AAEzC,IAAMM,aAAa,GAAGC,kBAAM,CAACC,UAAU,CAAAb,eAAA,KAAAA,eAAA,GAAAG,sBAAA,0LACxB,UAACW,CAAC;EAAA,OAAKA,CAAC,CAACC,KAAK,CAACC,KAAK,CAACC,KAAK;AAAA,GAGnB,UAACH,CAAC;EAAA,OAAK,IAAAI,YAAG,EAACJ,CAAC,CAACC,KAAK,CAACI,0BAA0B,CAAC;AAAA,GACzD,UAACL,CAAC;EAAA,OAAK,IAAAI,YAAG,EAACJ,CAAC,CAACC,KAAK,CAACK,4BAA4B,CAAC;AAAA,EAM1D;AAEDT,aAAa,CAACU,WAAW,GAAG,eAAe;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAE7BZ,aAAa","ignoreList":[]}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports["default"] = exports.IMAGE_BLOCK = void 0;
|
|
8
|
-
var _react = require("@emotion/react");
|
|
9
|
-
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
|
-
var _core = require("@os-design/core");
|
|
11
|
-
var _icons = require("@os-design/icons");
|
|
12
|
-
var _utils = require("@os-design/utils");
|
|
13
|
-
var _draftJs = require("draft-js");
|
|
14
|
-
var _react2 = _interopRequireWildcard(require("react"));
|
|
15
|
-
var _changeBlock = _interopRequireDefault(require("../utils/changeBlock"));
|
|
16
|
-
var _getCurrentBlock = _interopRequireDefault(require("../utils/getCurrentBlock"));
|
|
17
|
-
var _Figure = _interopRequireDefault(require("./Figure"));
|
|
18
|
-
var _FigureCaption = _interopRequireDefault(require("./FigureCaption"));
|
|
19
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
20
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
21
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
|
-
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
24
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
25
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
26
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
27
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
28
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
29
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
30
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
31
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
32
|
-
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
33
|
-
var widthStyles = function widthStyles(p) {
|
|
34
|
-
return p.width && (0, _react.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: ", "px;\n "])), p.width);
|
|
35
|
-
};
|
|
36
|
-
var ImageFigure = (0, _styled["default"])(_Figure["default"], (0, _utils.omitEmotionProps)('width'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n position: relative;\n display: inline-block;\n max-width: 100%;\n ", ";\n"])), widthStyles);
|
|
37
|
-
var Mask = _styled["default"].div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n background-color: hsla(\n 0,\n 0%,\n 0%,\n ", "\n );\n color: hsl(0, 0%, 100%);\n"])), function (p) {
|
|
38
|
-
return p.theme.editorBlockImageMaskOpacity;
|
|
39
|
-
});
|
|
40
|
-
var LoadingIcon = (0, _styled["default"])(_icons.Loading)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n font-size: ", "em;\n"])), function (p) {
|
|
41
|
-
return p.theme.editorBlockImageLoadingFontSize;
|
|
42
|
-
});
|
|
43
|
-
var Image = _styled["default"].img(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n max-width: 100%;\n max-height: ", "em;\n vertical-align: bottom;\n"])), function (p) {
|
|
44
|
-
return p.theme.editorBlockImageMaxHeight;
|
|
45
|
-
});
|
|
46
|
-
var ImageBlock = function ImageBlock(props) {
|
|
47
|
-
var block = props.block;
|
|
48
|
-
var data = block.getData();
|
|
49
|
-
var src = data.get('src');
|
|
50
|
-
var loading = data.get('loading');
|
|
51
|
-
|
|
52
|
-
// Update the width of the image
|
|
53
|
-
var imageRef = (0, _react2.useRef)(null);
|
|
54
|
-
var _useState = (0, _react2.useState)(0),
|
|
55
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
56
|
-
width = _useState2[0],
|
|
57
|
-
setWidth = _useState2[1];
|
|
58
|
-
var updateWidth = (0, _react2.useCallback)(function () {
|
|
59
|
-
if (!imageRef.current) return;
|
|
60
|
-
setWidth(imageRef.current.width);
|
|
61
|
-
}, []);
|
|
62
|
-
(0, _utils.useEvent)(typeof window !== 'undefined' ? window : undefined, 'resize', updateWidth);
|
|
63
|
-
if (!src) return null;
|
|
64
|
-
return /*#__PURE__*/_react2["default"].createElement(ImageFigure, {
|
|
65
|
-
width: width
|
|
66
|
-
}, loading && /*#__PURE__*/_react2["default"].createElement(Mask, null, /*#__PURE__*/_react2["default"].createElement(LoadingIcon, null)), /*#__PURE__*/_react2["default"].createElement(Image, {
|
|
67
|
-
src: src.startsWith('blob:') ? src : "".concat(src, "-1024"),
|
|
68
|
-
alt: block.getText(),
|
|
69
|
-
onLoad: updateWidth,
|
|
70
|
-
ref: imageRef
|
|
71
|
-
}), !loading && /*#__PURE__*/_react2["default"].createElement(_FigureCaption["default"], null, /*#__PURE__*/_react2["default"].createElement(_draftJs.EditorBlock, props)));
|
|
72
|
-
};
|
|
73
|
-
var IMAGE_BLOCK = exports.IMAGE_BLOCK = 'atomic:image';
|
|
74
|
-
var imageBlock = function imageBlock(onImageUpload) {
|
|
75
|
-
return {
|
|
76
|
-
type: IMAGE_BLOCK,
|
|
77
|
-
component: ImageBlock,
|
|
78
|
-
icon: /*#__PURE__*/_react2["default"].createElement(_icons.Picture, null),
|
|
79
|
-
onClick: function onClick(_ref) {
|
|
80
|
-
var value = _ref.value,
|
|
81
|
-
onChange = _ref.onChange,
|
|
82
|
-
setReadOnly = _ref.setReadOnly;
|
|
83
|
-
if (!onImageUpload) throw new Error('Specify the onImageUpload method');
|
|
84
|
-
|
|
85
|
-
// Not working in mobile Safari.
|
|
86
|
-
// The input must be actually appended to the DOM.
|
|
87
|
-
var input = document.createElement('input');
|
|
88
|
-
input.type = 'file';
|
|
89
|
-
input.accept = 'image/jpeg,image/png,image/webp';
|
|
90
|
-
input.onchange = /*#__PURE__*/function () {
|
|
91
|
-
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(e) {
|
|
92
|
-
var target, files, file, src, currentBlock, nextEditorState;
|
|
93
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
94
|
-
while (1) switch (_context.prev = _context.next) {
|
|
95
|
-
case 0:
|
|
96
|
-
target = e.target;
|
|
97
|
-
if (target) {
|
|
98
|
-
_context.next = 3;
|
|
99
|
-
break;
|
|
100
|
-
}
|
|
101
|
-
return _context.abrupt("return");
|
|
102
|
-
case 3:
|
|
103
|
-
files = target.files;
|
|
104
|
-
if (files) {
|
|
105
|
-
_context.next = 6;
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
return _context.abrupt("return");
|
|
109
|
-
case 6:
|
|
110
|
-
setReadOnly(true);
|
|
111
|
-
file = files[0];
|
|
112
|
-
src = URL.createObjectURL(file); // Add the local image
|
|
113
|
-
currentBlock = (0, _getCurrentBlock["default"])(value);
|
|
114
|
-
nextEditorState = (0, _changeBlock["default"])(value, currentBlock, IMAGE_BLOCK, {
|
|
115
|
-
src: src,
|
|
116
|
-
loading: true
|
|
117
|
-
});
|
|
118
|
-
onChange(nextEditorState);
|
|
119
|
-
|
|
120
|
-
// Replace the local image with the remote one
|
|
121
|
-
_context.prev = 12;
|
|
122
|
-
_context.next = 15;
|
|
123
|
-
return onImageUpload(file);
|
|
124
|
-
case 15:
|
|
125
|
-
src = _context.sent;
|
|
126
|
-
nextEditorState = (0, _changeBlock["default"])(value, currentBlock, IMAGE_BLOCK, {
|
|
127
|
-
src: src
|
|
128
|
-
});
|
|
129
|
-
_context.next = 23;
|
|
130
|
-
break;
|
|
131
|
-
case 19:
|
|
132
|
-
_context.prev = 19;
|
|
133
|
-
_context.t0 = _context["catch"](12);
|
|
134
|
-
if (_context.t0 instanceof Error) {
|
|
135
|
-
_core.message.error(_context.t0.message);
|
|
136
|
-
}
|
|
137
|
-
nextEditorState = (0, _changeBlock["default"])(value, currentBlock, 'unstyled');
|
|
138
|
-
case 23:
|
|
139
|
-
setReadOnly(false);
|
|
140
|
-
onChange(nextEditorState);
|
|
141
|
-
case 25:
|
|
142
|
-
case "end":
|
|
143
|
-
return _context.stop();
|
|
144
|
-
}
|
|
145
|
-
}, _callee, null, [[12, 19]]);
|
|
146
|
-
}));
|
|
147
|
-
return function (_x) {
|
|
148
|
-
return _ref2.apply(this, arguments);
|
|
149
|
-
};
|
|
150
|
-
}();
|
|
151
|
-
input.click();
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
};
|
|
155
|
-
var _default = exports["default"] = imageBlock;
|
|
156
|
-
//# sourceMappingURL=imageBlock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"imageBlock.js","names":["_react","require","_styled","_interopRequireDefault","_core","_icons","_utils","_draftJs","_react2","_interopRequireWildcard","_changeBlock","_getCurrentBlock","_Figure","_FigureCaption","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_regeneratorRuntime","prototype","o","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","Array","from","test","len","arr2","isArray","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","widthStyles","width","css","ImageFigure","styled","Figure","omitEmotionProps","Mask","div","theme","editorBlockImageMaskOpacity","LoadingIcon","Loading","editorBlockImageLoadingFontSize","Image","img","editorBlockImageMaxHeight","ImageBlock","props","block","data","getData","src","loading","imageRef","useRef","_useState","useState","_useState2","setWidth","updateWidth","useCallback","current","useEvent","window","createElement","startsWith","concat","alt","getText","onLoad","ref","EditorBlock","IMAGE_BLOCK","exports","imageBlock","onImageUpload","component","icon","Picture","onClick","_ref","onChange","setReadOnly","input","document","accept","onchange","_ref2","_callee","target","files","file","currentBlock","nextEditorState","_callee$","_context","URL","createObjectURL","getCurrentBlock","changeBlock","t0","message","_x","click","_default"],"sources":["../../../../src/Editor/blocks/imageBlock.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { message } from '@os-design/core';\nimport { Loading, Picture } from '@os-design/icons';\nimport { omitEmotionProps, useEvent } from '@os-design/utils';\nimport { EditorBlock } from 'draft-js';\nimport React, { useCallback, useRef, useState } from 'react';\nimport changeBlock from '../utils/changeBlock';\nimport getCurrentBlock from '../utils/getCurrentBlock';\nimport Figure from './Figure';\nimport FigureCaption from './FigureCaption';\nimport { BlockProps, BlockToolbarItem } from './types';\n\nconst widthStyles = (p) =>\n p.width &&\n css`\n width: ${p.width}px;\n `;\n\ninterface ImageFigureProps {\n width: number;\n}\nconst ImageFigure = styled(Figure, omitEmotionProps('width'))<ImageFigureProps>`\n position: relative;\n display: inline-block;\n max-width: 100%;\n ${widthStyles};\n`;\n\nconst Mask = styled.div`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n background-color: hsla(\n 0,\n 0%,\n 0%,\n ${(p) => p.theme.editorBlockImageMaskOpacity}\n );\n color: hsl(0, 0%, 100%);\n`;\n\nconst LoadingIcon = styled(Loading)`\n font-size: ${(p) => p.theme.editorBlockImageLoadingFontSize}em;\n`;\n\nconst Image = styled.img`\n max-width: 100%;\n max-height: ${(p) => p.theme.editorBlockImageMaxHeight}em;\n vertical-align: bottom;\n`;\n\nconst ImageBlock: React.FC<BlockProps> = (props) => {\n const { block } = props;\n const data = block.getData();\n const src = data.get('src') as string;\n const loading = data.get('loading') as boolean;\n\n // Update the width of the image\n const imageRef = useRef<HTMLImageElement>(null);\n const [width, setWidth] = useState(0);\n const updateWidth = useCallback(() => {\n if (!imageRef.current) return;\n setWidth(imageRef.current.width);\n }, []);\n useEvent(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'resize',\n updateWidth\n );\n\n if (!src) return null;\n\n return (\n <ImageFigure width={width}>\n {loading && (\n <Mask>\n <LoadingIcon />\n </Mask>\n )}\n <Image\n src={src.startsWith('blob:') ? src : `${src}-1024`}\n alt={block.getText()}\n onLoad={updateWidth}\n ref={imageRef}\n />\n {!loading && (\n <FigureCaption>\n <EditorBlock {...props} />\n </FigureCaption>\n )}\n </ImageFigure>\n );\n};\n\nexport const IMAGE_BLOCK = 'atomic:image';\n\nconst imageBlock = (\n onImageUpload: (file: File) => Promise<string>\n): BlockToolbarItem => ({\n type: IMAGE_BLOCK,\n component: ImageBlock,\n icon: <Picture />,\n onClick: ({ value, onChange, setReadOnly }) => {\n if (!onImageUpload) throw new Error('Specify the onImageUpload method');\n\n // Not working in mobile Safari.\n // The input must be actually appended to the DOM.\n const input = document.createElement('input');\n input.type = 'file';\n input.accept = 'image/jpeg,image/png,image/webp';\n input.onchange = async (e) => {\n const target = e.target as HTMLInputElement | null;\n if (!target) return;\n const { files } = target;\n if (!files) return;\n\n setReadOnly(true);\n const file = files[0];\n let src = URL.createObjectURL(file);\n\n // Add the local image\n const currentBlock = getCurrentBlock(value);\n let nextEditorState = changeBlock(value, currentBlock, IMAGE_BLOCK, {\n src,\n loading: true,\n });\n onChange(nextEditorState);\n\n // Replace the local image with the remote one\n try {\n src = await onImageUpload(file);\n nextEditorState = changeBlock(value, currentBlock, IMAGE_BLOCK, {\n src,\n });\n } catch (err) {\n if (err instanceof Error) {\n message.error(err.message);\n }\n nextEditorState = changeBlock(value, currentBlock, 'unstyled');\n }\n\n setReadOnly(false);\n onChange(nextEditorState);\n };\n input.click();\n },\n});\n\nexport default imageBlock;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/Editor/blocks/types.ts"],"sourcesContent":["import { ContentBlock, EditorState } from 'draft-js';\nimport React from 'react';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport interface BlockProps extends Record<string, any> {\n block: ContentBlock;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport interface BlockToolbarItemOnClickProps extends Record<string, any> {\n value: EditorState;\n onChange: (value: EditorState) => void;\n setReadOnly: (readOnly: boolean) => void;\n}\n\nexport interface BlockToolbarItem {\n type: string;\n component: React.FC<BlockProps>;\n icon: React.ReactElement;\n onClick: (props: BlockToolbarItemOnClickProps) => void;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = exports.VIDEO_BLOCK = void 0;
|
|
7
|
-
var _core = require("@os-design/core");
|
|
8
|
-
var _icons = require("@os-design/icons");
|
|
9
|
-
var _draftJs = require("draft-js");
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
var _changeBlock = _interopRequireDefault(require("../utils/changeBlock"));
|
|
12
|
-
var _getCurrentBlock = _interopRequireDefault(require("../utils/getCurrentBlock"));
|
|
13
|
-
var _Figure = _interopRequireDefault(require("./Figure"));
|
|
14
|
-
var _FigureCaption = _interopRequireDefault(require("./FigureCaption"));
|
|
15
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
|
-
var VideoBlock = function VideoBlock(props) {
|
|
17
|
-
var block = props.block;
|
|
18
|
-
var data = block.getData();
|
|
19
|
-
var src = data.get('src');
|
|
20
|
-
if (!src) return null;
|
|
21
|
-
return /*#__PURE__*/_react["default"].createElement(_Figure["default"], null, /*#__PURE__*/_react["default"].createElement(_core.Video, {
|
|
22
|
-
src: src,
|
|
23
|
-
title: block.getText()
|
|
24
|
-
}), /*#__PURE__*/_react["default"].createElement(_FigureCaption["default"], null, /*#__PURE__*/_react["default"].createElement(_draftJs.EditorBlock, props)));
|
|
25
|
-
};
|
|
26
|
-
var videoTypes = [
|
|
27
|
-
/**
|
|
28
|
-
* YouTube. Supported formats:
|
|
29
|
-
* https://www.youtube.com/watch?v=FJIhWbUt600&ab_channel=IlyaOrdin
|
|
30
|
-
* https://www.youtube.com/embed/FJIhWbUt600
|
|
31
|
-
* https://youtu.be/FJIhWbUt600
|
|
32
|
-
*/
|
|
33
|
-
{
|
|
34
|
-
re: /^https:\/\/(?:www\.youtube\.com\/(?:watch\?v=|embed\/)|youtu\.be\/)([A-z0-9-_]*).*$/,
|
|
35
|
-
getUrl: function getUrl(id) {
|
|
36
|
-
return "https://www.youtube.com/embed/".concat(id);
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
/**
|
|
40
|
-
* RuTube. Supported formats:
|
|
41
|
-
* https://rutube.ru/video/d00526135b2b96d272f6d89b486036c1/
|
|
42
|
-
* https://rutube.ru/play/embed/d00526135b2b96d272f6d89b486036c1
|
|
43
|
-
*/
|
|
44
|
-
{
|
|
45
|
-
re: /^https:\/\/rutube\.ru\/(?:video|play\/embed)\/([a-z0-9]*)\/?$/,
|
|
46
|
-
getUrl: function getUrl(id) {
|
|
47
|
-
return "https://rutube.ru/play/embed/".concat(id);
|
|
48
|
-
}
|
|
49
|
-
}];
|
|
50
|
-
var detectVideo = function detectVideo(url) {
|
|
51
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
52
|
-
for (var _i = 0, _videoTypes = videoTypes; _i < _videoTypes.length; _i++) {
|
|
53
|
-
var _videoTypes$_i = _videoTypes[_i],
|
|
54
|
-
re = _videoTypes$_i.re,
|
|
55
|
-
getUrl = _videoTypes$_i.getUrl;
|
|
56
|
-
var groups = url.match(re);
|
|
57
|
-
if (groups && groups[1]) return getUrl(groups[1]);
|
|
58
|
-
}
|
|
59
|
-
return null;
|
|
60
|
-
};
|
|
61
|
-
var VIDEO_BLOCK = exports.VIDEO_BLOCK = 'atomic:video';
|
|
62
|
-
var videoBlock = {
|
|
63
|
-
type: VIDEO_BLOCK,
|
|
64
|
-
component: VideoBlock,
|
|
65
|
-
icon: /*#__PURE__*/_react["default"].createElement(_icons.Video, null),
|
|
66
|
-
onClick: function onClick(_ref) {
|
|
67
|
-
var value = _ref.value,
|
|
68
|
-
onChange = _ref.onChange;
|
|
69
|
-
// eslint-disable-next-line no-alert
|
|
70
|
-
var url = prompt('Insert a link to YouTube or RuTube');
|
|
71
|
-
if (!url) return;
|
|
72
|
-
var src = detectVideo(url);
|
|
73
|
-
if (!src) return;
|
|
74
|
-
var currentBlock = (0, _getCurrentBlock["default"])(value);
|
|
75
|
-
var nextEditorState = (0, _changeBlock["default"])(value, currentBlock, VIDEO_BLOCK, {
|
|
76
|
-
src: src
|
|
77
|
-
});
|
|
78
|
-
onChange(nextEditorState);
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
var _default = exports["default"] = videoBlock;
|
|
82
|
-
//# sourceMappingURL=videoBlock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"videoBlock.js","names":["_core","require","_icons","_draftJs","_react","_interopRequireDefault","_changeBlock","_getCurrentBlock","_Figure","_FigureCaption","obj","__esModule","VideoBlock","props","block","data","getData","src","get","createElement","Video","title","getText","EditorBlock","videoTypes","re","getUrl","id","concat","detectVideo","url","_i","_videoTypes","length","_videoTypes$_i","groups","match","VIDEO_BLOCK","exports","videoBlock","type","component","icon","onClick","_ref","value","onChange","prompt","currentBlock","getCurrentBlock","nextEditorState","changeBlock","_default"],"sources":["../../../../src/Editor/blocks/videoBlock.tsx"],"sourcesContent":["import { Video } from '@os-design/core';\nimport { Video as VideoIcon } from '@os-design/icons';\nimport { EditorBlock } from 'draft-js';\nimport React from 'react';\nimport changeBlock from '../utils/changeBlock';\nimport getCurrentBlock from '../utils/getCurrentBlock';\nimport Figure from './Figure';\nimport FigureCaption from './FigureCaption';\nimport { BlockProps, BlockToolbarItem } from './types';\n\nconst VideoBlock: React.FC<BlockProps> = (props) => {\n const { block } = props;\n const data = block.getData();\n const src = data.get('src');\n\n if (!src) return null;\n\n return (\n <Figure>\n <Video src={src} title={block.getText()} />\n <FigureCaption>\n <EditorBlock {...props} />\n </FigureCaption>\n </Figure>\n );\n};\n\nconst videoTypes = [\n /**\n * YouTube. Supported formats:\n * https://www.youtube.com/watch?v=FJIhWbUt600&ab_channel=IlyaOrdin\n * https://www.youtube.com/embed/FJIhWbUt600\n * https://youtu.be/FJIhWbUt600\n */\n {\n re: /^https:\\/\\/(?:www\\.youtube\\.com\\/(?:watch\\?v=|embed\\/)|youtu\\.be\\/)([A-z0-9-_]*).*$/,\n getUrl: (id: string) => `https://www.youtube.com/embed/${id}`,\n },\n /**\n * RuTube. Supported formats:\n * https://rutube.ru/video/d00526135b2b96d272f6d89b486036c1/\n * https://rutube.ru/play/embed/d00526135b2b96d272f6d89b486036c1\n */\n {\n re: /^https:\\/\\/rutube\\.ru\\/(?:video|play\\/embed)\\/([a-z0-9]*)\\/?$/,\n getUrl: (id: string) => `https://rutube.ru/play/embed/${id}`,\n },\n];\n\nconst detectVideo = (url: string) => {\n // eslint-disable-next-line no-restricted-syntax\n for (const { re, getUrl } of videoTypes) {\n const groups = url.match(re);\n if (groups && groups[1]) return getUrl(groups[1]);\n }\n return null;\n};\n\nexport const VIDEO_BLOCK = 'atomic:video';\n\nconst videoBlock: BlockToolbarItem = {\n type: VIDEO_BLOCK,\n component: VideoBlock,\n icon: <VideoIcon />,\n onClick: ({ value, onChange }) => {\n // eslint-disable-next-line no-alert\n const url = prompt('Insert a link to YouTube or RuTube');\n if (!url) return;\n\n const src = detectVideo(url);\n if (!src) return;\n\n const currentBlock = getCurrentBlock(value);\n const nextEditorState = changeBlock(value, currentBlock, VIDEO_BLOCK, {\n src,\n });\n\n onChange(nextEditorState);\n },\n};\n\nexport default videoBlock;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports["default"] = void 0;
|
|
7
|
-
var _core = require("@os-design/core");
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
10
|
-
var linkDecorator = {
|
|
11
|
-
strategy: function strategy(contentBlock, callback, contentState) {
|
|
12
|
-
return contentBlock.findEntityRanges(function (character) {
|
|
13
|
-
var entityKey = character.getEntity();
|
|
14
|
-
return entityKey !== null && contentState.getEntity(entityKey).getType() === 'LINK';
|
|
15
|
-
}, callback);
|
|
16
|
-
},
|
|
17
|
-
component: function component(_ref) {
|
|
18
|
-
var contentState = _ref.contentState,
|
|
19
|
-
entityKey = _ref.entityKey,
|
|
20
|
-
children = _ref.children;
|
|
21
|
-
var _contentState$getEnti = contentState.getEntity(entityKey).getData(),
|
|
22
|
-
url = _contentState$getEnti.url;
|
|
23
|
-
return /*#__PURE__*/_react["default"].createElement(_core.Link, {
|
|
24
|
-
href: url
|
|
25
|
-
}, children);
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
var _default = exports["default"] = linkDecorator;
|
|
29
|
-
//# sourceMappingURL=linkDecorator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"linkDecorator.js","names":["_core","require","_react","_interopRequireDefault","obj","__esModule","linkDecorator","strategy","contentBlock","callback","contentState","findEntityRanges","character","entityKey","getEntity","getType","component","_ref","children","_contentState$getEnti","getData","url","createElement","Link","href","_default","exports"],"sources":["../../../../src/Editor/decorators/linkDecorator.tsx"],"sourcesContent":["import { Link } from '@os-design/core';\nimport { DraftDecorator } from 'draft-js';\nimport React from 'react';\n\nconst linkDecorator: DraftDecorator = {\n strategy: (contentBlock, callback, contentState) =>\n contentBlock.findEntityRanges((character) => {\n const entityKey = character.getEntity();\n return (\n entityKey !== null &&\n contentState.getEntity(entityKey).getType() === 'LINK'\n );\n }, callback),\n\n component: ({ contentState, entityKey, children }) => {\n const { url } = contentState.getEntity(entityKey).getData();\n return <Link href={url}>{children}</Link>;\n },\n};\n\nexport default linkDecorator;\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA0B,SAAAE,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAE1B,IAAME,aAA6B,GAAG;EACpCC,QAAQ,EAAE,SAAAA,SAACC,YAAY,EAAEC,QAAQ,EAAEC,YAAY;IAAA,OAC7CF,YAAY,CAACG,gBAAgB,CAAC,UAACC,SAAS,EAAK;MAC3C,IAAMC,SAAS,GAAGD,SAAS,CAACE,SAAS,CAAC,CAAC;MACvC,OACED,SAAS,KAAK,IAAI,IAClBH,YAAY,CAACI,SAAS,CAACD,SAAS,CAAC,CAACE,OAAO,CAAC,CAAC,KAAK,MAAM;IAE1D,CAAC,EAAEN,QAAQ,CAAC;EAAA;EAEdO,SAAS,EAAE,SAAAA,UAAAC,IAAA,EAA2C;IAAA,IAAxCP,YAAY,GAAAO,IAAA,CAAZP,YAAY;MAAEG,SAAS,GAAAI,IAAA,CAATJ,SAAS;MAAEK,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAC7C,IAAAC,qBAAA,GAAgBT,YAAY,CAACI,SAAS,CAACD,SAAS,CAAC,CAACO,OAAO,CAAC,CAAC;MAAnDC,GAAG,GAAAF,qBAAA,CAAHE,GAAG;IACX,oBAAOnB,MAAA,YAAAoB,aAAA,CAACtB,KAAA,CAAAuB,IAAI;MAACC,IAAI,EAAEH;IAAI,GAAEH,QAAe,CAAC;EAC3C;AACF,CAAC;AAAC,IAAAO,QAAA,GAAAC,OAAA,cAEapB,aAAa","ignoreList":[]}
|