@os-design/editor 1.0.259 → 1.0.260

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.
Files changed (73) hide show
  1. package/dist/cjs/Editor/BlockToolbar.js +3 -3
  2. package/dist/cjs/Editor/BlockToolbar.js.map +1 -1
  3. package/dist/cjs/Editor/StyleToolbar.js +3 -3
  4. package/dist/cjs/Editor/StyleToolbar.js.map +1 -1
  5. package/dist/cjs/Editor/Toolbar.js +2 -2
  6. package/dist/cjs/Editor/Toolbar.js.map +1 -1
  7. package/dist/cjs/Editor/ToolbarButton.js +5 -5
  8. package/dist/cjs/Editor/ToolbarButton.js.map +1 -1
  9. package/dist/cjs/Editor/blocks/Figure.js +2 -2
  10. package/dist/cjs/Editor/blocks/Figure.js.map +1 -1
  11. package/dist/cjs/Editor/blocks/FigureCaption.js +2 -2
  12. package/dist/cjs/Editor/blocks/FigureCaption.js.map +1 -1
  13. package/dist/cjs/Editor/blocks/imageBlock.js +9 -9
  14. package/dist/cjs/Editor/blocks/imageBlock.js.map +1 -1
  15. package/dist/cjs/Editor/blocks/videoBlock.js +1 -1
  16. package/dist/cjs/Editor/blocks/videoBlock.js.map +1 -1
  17. package/dist/cjs/Editor/decorators/linkDecorator.js +1 -1
  18. package/dist/cjs/Editor/decorators/linkDecorator.js.map +1 -1
  19. package/dist/cjs/Editor/hooks/useBlockToolbarProps.js +5 -5
  20. package/dist/cjs/Editor/hooks/useBlockToolbarProps.js.map +1 -1
  21. package/dist/cjs/Editor/hooks/useReturnHandler.js +1 -1
  22. package/dist/cjs/Editor/hooks/useReturnHandler.js.map +1 -1
  23. package/dist/cjs/Editor/hooks/useStyleToolbarProps.js +5 -5
  24. package/dist/cjs/Editor/hooks/useStyleToolbarProps.js.map +1 -1
  25. package/dist/cjs/Editor/index.js +9 -9
  26. package/dist/cjs/Editor/index.js.map +1 -1
  27. package/dist/cjs/Editor/styles/defaultDraftJsStyles.js +1 -1
  28. package/dist/cjs/Editor/styles/defaultDraftJsStyles.js.map +1 -1
  29. package/dist/cjs/Editor/styles/overrideDraftJsStyles.js +1 -1
  30. package/dist/cjs/Editor/styles/overrideDraftJsStyles.js.map +1 -1
  31. package/dist/cjs/Editor/utils/addNewBlockAt.js +1 -1
  32. package/dist/cjs/Editor/utils/addNewBlockAt.js.map +1 -1
  33. package/dist/cjs/Editor/utils/createContentEditorState.js +1 -1
  34. package/dist/cjs/Editor/utils/createContentEditorState.js.map +1 -1
  35. package/dist/cjs/Editor/utils/createDecorator.js +1 -1
  36. package/dist/cjs/Editor/utils/createDecorator.js.map +1 -1
  37. package/dist/cjs/Editor/utils/createEmptyEditorState.js +1 -1
  38. package/dist/cjs/Editor/utils/createEmptyEditorState.js.map +1 -1
  39. package/dist/cjs/Editor/utils/defaultStyleToolbarItems.js +2 -2
  40. package/dist/cjs/Editor/utils/defaultStyleToolbarItems.js.map +1 -1
  41. package/dist/cjs/Editor/utils/getSelectedBlockElement.js +1 -1
  42. package/dist/cjs/Editor/utils/getSelectedBlockElement.js.map +1 -1
  43. package/dist/cjs/EditorSkeleton/index.js +3 -3
  44. package/dist/cjs/EditorSkeleton/index.js.map +1 -1
  45. package/dist/cjs/index.js +1 -1
  46. package/dist/cjs/index.js.map +1 -1
  47. package/dist/esm/Editor/Toolbar.js.map +1 -1
  48. package/dist/esm/Editor/ToolbarButton.js +1 -1
  49. package/dist/esm/Editor/ToolbarButton.js.map +1 -1
  50. package/dist/esm/Editor/blocks/Figure.js.map +1 -1
  51. package/dist/esm/Editor/blocks/FigureCaption.js.map +1 -1
  52. package/dist/esm/Editor/blocks/imageBlock.js.map +1 -1
  53. package/dist/esm/Editor/blocks/videoBlock.js.map +1 -1
  54. package/dist/esm/Editor/index.js +1 -1
  55. package/dist/esm/Editor/index.js.map +1 -1
  56. package/dist/esm/Editor/styles/defaultDraftJsStyles.js.map +1 -1
  57. package/dist/esm/Editor/styles/overrideDraftJsStyles.js.map +1 -1
  58. package/dist/esm/Editor/utils/addNewBlockAt.js.map +1 -1
  59. package/dist/esm/Editor/utils/defaultStyleToolbarItems.js.map +1 -1
  60. package/dist/esm/EditorSkeleton/index.js +1 -1
  61. package/dist/esm/EditorSkeleton/index.js.map +1 -1
  62. package/dist/types/Editor/Toolbar.d.ts +1 -2
  63. package/dist/types/Editor/Toolbar.d.ts.map +1 -1
  64. package/dist/types/Editor/blocks/Figure.d.ts +2 -3
  65. package/dist/types/Editor/blocks/Figure.d.ts.map +1 -1
  66. package/dist/types/Editor/blocks/FigureCaption.d.ts +2 -3
  67. package/dist/types/Editor/blocks/FigureCaption.d.ts.map +1 -1
  68. package/dist/types/Editor/blocks/imageBlock.d.ts.map +1 -1
  69. package/dist/types/Editor/styles/defaultDraftJsStyles.d.ts +1 -1
  70. package/dist/types/Editor/styles/overrideDraftJsStyles.d.ts +1 -1
  71. package/dist/types/Editor/utils/addNewBlockAt.d.ts.map +1 -1
  72. package/dist/types/Editor/utils/changeBlock.d.ts.map +1 -1
  73. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_Editor","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_addNewBlockAt","_interopRequireDefault","_changeBlock","_createContentEditorState","_createDecorator","_createEmptyEditorState","_defaultStyleToolbarItems","_getCurrentBlock","_imageBlock","_videoBlock","_EditorSkeleton","_transformers","_types","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set"],"sources":["../../src/index.ts"],"sourcesContent":["export { default as Editor } from './Editor';\nexport { default as addNewBlockAt } from './Editor/utils/addNewBlockAt';\nexport { default as changeBlock } from './Editor/utils/changeBlock';\nexport { default as createContentEditorState } from './Editor/utils/createContentEditorState';\nexport { default as createDecorator } from './Editor/utils/createDecorator';\nexport { default as createEmptyEditorState } from './Editor/utils/createEmptyEditorState';\nexport { default as defaultStyleToolbarItems } from './Editor/utils/defaultStyleToolbarItems';\nexport { default as getCurrentBlock } from './Editor/utils/getCurrentBlock';\nexport { default as imageBlock } from './Editor/blocks/imageBlock';\nexport { default as videoBlock } from './Editor/blocks/videoBlock';\nexport { default as EditorSkeleton } from './EditorSkeleton';\n\nexport * from './Editor';\nexport * from './Editor/utils/transformers';\nexport * from './Editor/blocks/types';\nexport * from './EditorSkeleton';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_Editor","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_addNewBlockAt","_interopRequireDefault","_changeBlock","_createContentEditorState","_createDecorator","_createEmptyEditorState","_defaultStyleToolbarItems","_getCurrentBlock","_imageBlock","_videoBlock","_EditorSkeleton","_transformers","_types","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set"],"sources":["../../src/index.ts"],"sourcesContent":["export { default as Editor } from './Editor';\nexport { default as addNewBlockAt } from './Editor/utils/addNewBlockAt';\nexport { default as changeBlock } from './Editor/utils/changeBlock';\nexport { default as createContentEditorState } from './Editor/utils/createContentEditorState';\nexport { default as createDecorator } from './Editor/utils/createDecorator';\nexport { default as createEmptyEditorState } from './Editor/utils/createEmptyEditorState';\nexport { default as defaultStyleToolbarItems } from './Editor/utils/defaultStyleToolbarItems';\nexport { default as getCurrentBlock } from './Editor/utils/getCurrentBlock';\nexport { default as imageBlock } from './Editor/blocks/imageBlock';\nexport { default as videoBlock } from './Editor/blocks/videoBlock';\nexport { default as EditorSkeleton } from './EditorSkeleton';\n\nexport * from './Editor';\nexport * from './Editor/utils/transformers';\nexport * from './Editor/blocks/types';\nexport * from './EditorSkeleton';\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","names":["styled","Popover","clr","Toolbar","p","theme","editorToolbarButtonColorBg","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,OAAO,QAAQ,iBAAiB;AACzC,SAASC,GAAG,QAAQ,oBAAoB;AAExC,MAAMC,OAAO,GAAGH,MAAM,CAACC,OAAO,CAAE;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAuBG,CAAC,IAAKF,GAAG,CAACE,CAAC,CAACC,KAAK,CAACC,0BAA0B,CAAE;AACrE,CAAC;AAEDH,OAAO,CAACI,WAAW,GAAG,SAAS;AAE/B,eAAeJ,OAAO","ignoreList":[]}
1
+ {"version":3,"file":"Toolbar.js","names":["styled","Popover","clr","Toolbar","p","theme","editorToolbarButtonColorBg","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,OAAO,QAAQ,iBAAiB;AACzC,SAASC,GAAG,QAAQ,oBAAoB;AAExC,MAAMC,OAAO,GAAGH,MAAM,CAACC,OAAO,CAAC;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAuBG,CAAC,IAAKF,GAAG,CAACE,CAAC,CAACC,KAAK,CAACC,0BAA0B,CAAC;AACpE,CAAC;AAEDH,OAAO,CAACI,WAAW,GAAG,SAAS;AAE/B,eAAeJ,OAAO","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- 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); }
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import { css } from '@emotion/react';
3
3
  import styled from '@emotion/styled';
4
4
  import { resetButtonStyles, transitionStyles } from '@os-design/styles';
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarButton.js","names":["css","styled","resetButtonStyles","transitionStyles","clr","omitEmotionProps","React","activeStyles","p","active","theme","editorToolbarButtonColorBgActive","StyledToolbarButton","editorToolbarButtonSize","editorToolbarButtonColorBg","editorToolbarButtonColorText","editorToolbarButtonColorBgHover","ToolbarButton","onMouseDown","rest","createElement","_extends","e","preventDefault","displayName"],"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":";AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,iBAAiB,EAAEC,gBAAgB,QAAQ,mBAAmB;AACvE,SAASC,GAAG,QAAQ,oBAAoB;AACxC,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,OAAOC,KAAK,MAAM,OAAO;AAOzB,MAAMC,YAAY,GAAIC,CAAC,IACrBA,CAAC,CAACC,MAAM,IACRT,GAAI;AACN,wBAAwBI,GAAG,CAACI,CAAC,CAACE,KAAK,CAACC,gCAAgC,CAAE;AACtE,GAAG;AAGH,MAAMC,mBAAmB,GAAGX,MAAM,CAChC,QAAQ,EACRI,gBAAgB,CAAC,QAAQ,CAC3B,CAA4B;AAC5B,IAAIH,iBAAkB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYM,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,uBAAwB;AAClD,YAAaL,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,uBAAwB;AACnD,sBAAuBL,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACI,0BAA0B,CAAE;AACrE,WAAYN,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACK,4BAA4B,CAAE;AAC5D;AACA;AACA;AACA;AACA,0BAA2BP,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACM,+BAA+B,CAAE;AAC9E;AACA;AACA;AACA,IAAIT,YAAa;AACjB,IAAIJ,gBAAgB,CAAC,kBAAkB,CAAE;AACzC,CAAC;AAED,MAAMc,aAA2C,GAAGA,CAAC;EACnDC,WAAW,GAAGA,CAAA,KAAM,CAAC,CAAC;EACtB,GAAGC;AACL,CAAC,kBACCb,KAAA,CAAAc,aAAA,CAACR,mBAAmB,EAAAS,QAAA;EAClBH,WAAW,EAAGI,CAAC,IAAK;IAClBJ,WAAW,CAACI,CAAC,CAAC;IACdA,CAAC,CAACC,cAAc,CAAC,CAAC;EACpB;AAAE,GACEJ,IAAI,CACT,CACF;AAEDF,aAAa,CAACO,WAAW,GAAG,eAAe;AAE3C,eAAeP,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"ToolbarButton.js","names":["css","styled","resetButtonStyles","transitionStyles","clr","omitEmotionProps","React","activeStyles","p","active","theme","editorToolbarButtonColorBgActive","StyledToolbarButton","editorToolbarButtonSize","editorToolbarButtonColorBg","editorToolbarButtonColorText","editorToolbarButtonColorBgHover","ToolbarButton","onMouseDown","rest","createElement","_extends","e","preventDefault","displayName"],"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":";AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,iBAAiB,EAAEC,gBAAgB,QAAQ,mBAAmB;AACvE,SAASC,GAAG,QAAQ,oBAAoB;AACxC,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,OAAOC,KAAK,MAAM,OAAO;AAOzB,MAAMC,YAAY,GAAIC,CAAC,IACrBA,CAAC,CAACC,MAAM,IACRT,GAAG;AACL,wBAAwBI,GAAG,CAACI,CAAC,CAACE,KAAK,CAACC,gCAAgC,CAAC;AACrE,GAAG;AAGH,MAAMC,mBAAmB,GAAGX,MAAM,CAChC,QAAQ,EACRI,gBAAgB,CAAC,QAAQ,CAC3B,CAA2B;AAC3B,IAAIH,iBAAiB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYM,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,uBAAuB;AACjD,YAAaL,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,uBAAuB;AAClD,sBAAuBL,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACI,0BAA0B,CAAC;AACpE,WAAYN,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACK,4BAA4B,CAAC;AAC3D;AACA;AACA;AACA;AACA,0BAA2BP,CAAC,IAAKJ,GAAG,CAACI,CAAC,CAACE,KAAK,CAACM,+BAA+B,CAAC;AAC7E;AACA;AACA;AACA,IAAIT,YAAY;AAChB,IAAIJ,gBAAgB,CAAC,kBAAkB,CAAC;AACxC,CAAC;AAED,MAAMc,aAA2C,GAAGA,CAAC;EACnDC,WAAW,GAAGA,CAAA,KAAM,CAAC,CAAC;EACtB,GAAGC;AACL,CAAC,kBACCb,KAAA,CAAAc,aAAA,CAACR,mBAAmB,EAAAS,QAAA;EAClBH,WAAW,EAAGI,CAAC,IAAK;IAClBJ,WAAW,CAACI,CAAC,CAAC;IACdA,CAAC,CAACC,cAAc,CAAC,CAAC;EACpB;AAAE,GACEJ,IAAI,CACT,CACF;AAEDF,aAAa,CAACO,WAAW,GAAG,eAAe;AAE3C,eAAeP,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Figure.js","names":["styled","Figure","figure","p","theme","borderRadius","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AAEpC,MAAMC,MAAM,GAAGD,MAAM,CAACE,MAAO;AAC7B,mBAAoBC,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,YAAa;AAC/C;AACA,CAAC;AAEDJ,MAAM,CAACK,WAAW,GAAG,QAAQ;AAE7B,eAAeL,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"Figure.js","names":["styled","Figure","figure","p","theme","borderRadius","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AAEpC,MAAMC,MAAM,GAAGD,MAAM,CAACE,MAAM;AAC5B,mBAAoBC,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,YAAY;AAC9C;AACA,CAAC;AAEDJ,MAAM,CAACK,WAAW,GAAG,QAAQ;AAE7B,eAAeL,MAAM","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"FigureCaption.js","names":["styled","clr","FigureCaption","figcaption","p","theme","sizes","small","editorFigureCaptionColorBg","editorFigureCaptionColorText","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,GAAG,QAAQ,oBAAoB;AAExC,MAAMC,aAAa,GAAGF,MAAM,CAACG,UAAW;AACxC,eAAgBC,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,KAAK,CAACC,KAAM;AAC1C;AACA;AACA,sBAAuBH,CAAC,IAAKH,GAAG,CAACG,CAAC,CAACC,KAAK,CAACG,0BAA0B,CAAE;AACrE,WAAYJ,CAAC,IAAKH,GAAG,CAACG,CAAC,CAACC,KAAK,CAACI,4BAA4B,CAAE;AAC5D;AACA;AACA;AACA;AACA;AACA,CAAC;AAEDP,aAAa,CAACQ,WAAW,GAAG,eAAe;AAE3C,eAAeR,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"FigureCaption.js","names":["styled","clr","FigureCaption","figcaption","p","theme","sizes","small","editorFigureCaptionColorBg","editorFigureCaptionColorText","displayName"],"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,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,GAAG,QAAQ,oBAAoB;AAExC,MAAMC,aAAa,GAAGF,MAAM,CAACG,UAAU;AACvC,eAAgBC,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,KAAK,CAACC,KAAK;AACzC;AACA;AACA,sBAAuBH,CAAC,IAAKH,GAAG,CAACG,CAAC,CAACC,KAAK,CAACG,0BAA0B,CAAC;AACpE,WAAYJ,CAAC,IAAKH,GAAG,CAACG,CAAC,CAACC,KAAK,CAACI,4BAA4B,CAAC;AAC3D;AACA;AACA;AACA;AACA;AACA,CAAC;AAEDP,aAAa,CAACQ,WAAW,GAAG,eAAe;AAE3C,eAAeR,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"imageBlock.js","names":["css","styled","message","Loading","Picture","omitEmotionProps","useEvent","EditorBlock","React","useCallback","useRef","useState","changeBlock","getCurrentBlock","Figure","FigureCaption","widthStyles","p","width","ImageFigure","Mask","div","theme","editorBlockImageMaskOpacity","LoadingIcon","editorBlockImageLoadingFontSize","Image","img","editorBlockImageMaxHeight","ImageBlock","props","block","data","getData","src","get","loading","imageRef","setWidth","updateWidth","current","window","undefined","createElement","startsWith","alt","getText","onLoad","ref","IMAGE_BLOCK","imageBlock","onImageUpload","type","component","icon","onClick","value","onChange","setReadOnly","Error","input","document","accept","onchange","e","target","files","file","URL","createObjectURL","currentBlock","nextEditorState","err","error","click"],"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
+ {"version":3,"file":"imageBlock.js","names":["css","styled","message","Loading","Picture","omitEmotionProps","useEvent","EditorBlock","React","useCallback","useRef","useState","changeBlock","getCurrentBlock","Figure","FigureCaption","widthStyles","p","width","ImageFigure","Mask","div","theme","editorBlockImageMaskOpacity","LoadingIcon","editorBlockImageLoadingFontSize","Image","img","editorBlockImageMaxHeight","ImageBlock","props","block","data","getData","src","get","loading","imageRef","setWidth","updateWidth","current","window","undefined","createElement","startsWith","alt","getText","onLoad","ref","IMAGE_BLOCK","imageBlock","onImageUpload","type","component","icon","onClick","value","onChange","setReadOnly","Error","input","document","accept","onchange","e","target","files","file","URL","createObjectURL","currentBlock","nextEditorState","err","error","click"],"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 +1 @@
1
- {"version":3,"file":"videoBlock.js","names":["Video","VideoIcon","EditorBlock","React","changeBlock","getCurrentBlock","Figure","FigureCaption","VideoBlock","props","block","data","getData","src","get","createElement","title","getText","videoTypes","re","getUrl","id","detectVideo","url","groups","match","VIDEO_BLOCK","videoBlock","type","component","icon","onClick","value","onChange","prompt","currentBlock","nextEditorState"],"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":"AAAA,SAASA,KAAK,QAAQ,iBAAiB;AACvC,SAASA,KAAK,IAAIC,SAAS,QAAQ,kBAAkB;AACrD,SAASC,WAAW,QAAQ,UAAU;AACtC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,WAAW,MAAM,sBAAsB;AAC9C,OAAOC,eAAe,MAAM,0BAA0B;AACtD,OAAOC,MAAM,MAAM,UAAU;AAC7B,OAAOC,aAAa,MAAM,iBAAiB;AAG3C,MAAMC,UAAgC,GAAIC,KAAK,IAAK;EAClD,MAAM;IAAEC;EAAM,CAAC,GAAGD,KAAK;EACvB,MAAME,IAAI,GAAGD,KAAK,CAACE,OAAO,CAAC,CAAC;EAC5B,MAAMC,GAAG,GAAGF,IAAI,CAACG,GAAG,CAAC,KAAK,CAAC;EAE3B,IAAI,CAACD,GAAG,EAAE,OAAO,IAAI;EAErB,oBACEV,KAAA,CAAAY,aAAA,CAACT,MAAM,qBACLH,KAAA,CAAAY,aAAA,CAACf,KAAK;IAACa,GAAG,EAAEA,GAAI;IAACG,KAAK,EAAEN,KAAK,CAACO,OAAO,CAAC;EAAE,CAAE,CAAC,eAC3Cd,KAAA,CAAAY,aAAA,CAACR,aAAa,qBACZJ,KAAA,CAAAY,aAAA,CAACb,WAAW,EAAKO,KAAQ,CACZ,CACT,CAAC;AAEb,CAAC;AAED,MAAMS,UAAU,GAAG;AACjB;AACF;AACA;AACA;AACA;AACA;AACE;EACEC,EAAE,EAAE,qFAAqF;EACzFC,MAAM,EAAGC,EAAU,IAAM,iCAAgCA,EAAG;AAC9D,CAAC;AACD;AACF;AACA;AACA;AACA;AACE;EACEF,EAAE,EAAE,+DAA+D;EACnEC,MAAM,EAAGC,EAAU,IAAM,gCAA+BA,EAAG;AAC7D,CAAC,CACF;AAED,MAAMC,WAAW,GAAIC,GAAW,IAAK;EACnC;EACA,KAAK,MAAM;IAAEJ,EAAE;IAAEC;EAAO,CAAC,IAAIF,UAAU,EAAE;IACvC,MAAMM,MAAM,GAAGD,GAAG,CAACE,KAAK,CAACN,EAAE,CAAC;IAC5B,IAAIK,MAAM,IAAIA,MAAM,CAAC,CAAC,CAAC,EAAE,OAAOJ,MAAM,CAACI,MAAM,CAAC,CAAC,CAAC,CAAC;EACnD;EACA,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAME,WAAW,GAAG,cAAc;AAEzC,MAAMC,UAA4B,GAAG;EACnCC,IAAI,EAAEF,WAAW;EACjBG,SAAS,EAAErB,UAAU;EACrBsB,IAAI,eAAE3B,KAAA,CAAAY,aAAA,CAACd,SAAS,MAAE,CAAC;EACnB8B,OAAO,EAAEA,CAAC;IAAEC,KAAK;IAAEC;EAAS,CAAC,KAAK;IAChC;IACA,MAAMV,GAAG,GAAGW,MAAM,CAAC,oCAAoC,CAAC;IACxD,IAAI,CAACX,GAAG,EAAE;IAEV,MAAMV,GAAG,GAAGS,WAAW,CAACC,GAAG,CAAC;IAC5B,IAAI,CAACV,GAAG,EAAE;IAEV,MAAMsB,YAAY,GAAG9B,eAAe,CAAC2B,KAAK,CAAC;IAC3C,MAAMI,eAAe,GAAGhC,WAAW,CAAC4B,KAAK,EAAEG,YAAY,EAAET,WAAW,EAAE;MACpEb;IACF,CAAC,CAAC;IAEFoB,QAAQ,CAACG,eAAe,CAAC;EAC3B;AACF,CAAC;AAED,eAAeT,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"videoBlock.js","names":["Video","VideoIcon","EditorBlock","React","changeBlock","getCurrentBlock","Figure","FigureCaption","VideoBlock","props","block","data","getData","src","get","createElement","title","getText","videoTypes","re","getUrl","id","detectVideo","url","groups","match","VIDEO_BLOCK","videoBlock","type","component","icon","onClick","value","onChange","prompt","currentBlock","nextEditorState"],"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":"AAAA,SAASA,KAAK,QAAQ,iBAAiB;AACvC,SAASA,KAAK,IAAIC,SAAS,QAAQ,kBAAkB;AACrD,SAASC,WAAW,QAAQ,UAAU;AACtC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAOC,WAAW,MAAM,sBAAsB;AAC9C,OAAOC,eAAe,MAAM,0BAA0B;AACtD,OAAOC,MAAM,MAAM,UAAU;AAC7B,OAAOC,aAAa,MAAM,iBAAiB;AAG3C,MAAMC,UAAgC,GAAIC,KAAK,IAAK;EAClD,MAAM;IAAEC;EAAM,CAAC,GAAGD,KAAK;EACvB,MAAME,IAAI,GAAGD,KAAK,CAACE,OAAO,CAAC,CAAC;EAC5B,MAAMC,GAAG,GAAGF,IAAI,CAACG,GAAG,CAAC,KAAK,CAAC;EAE3B,IAAI,CAACD,GAAG,EAAE,OAAO,IAAI;EAErB,oBACEV,KAAA,CAAAY,aAAA,CAACT,MAAM,qBACLH,KAAA,CAAAY,aAAA,CAACf,KAAK;IAACa,GAAG,EAAEA,GAAI;IAACG,KAAK,EAAEN,KAAK,CAACO,OAAO,CAAC;EAAE,CAAE,CAAC,eAC3Cd,KAAA,CAAAY,aAAA,CAACR,aAAa,qBACZJ,KAAA,CAAAY,aAAA,CAACb,WAAW,EAAKO,KAAQ,CACZ,CACT,CAAC;AAEb,CAAC;AAED,MAAMS,UAAU,GAAG;AACjB;AACF;AACA;AACA;AACA;AACA;AACE;EACEC,EAAE,EAAE,qFAAqF;EACzFC,MAAM,EAAGC,EAAU,IAAK,iCAAiCA,EAAE;AAC7D,CAAC;AACD;AACF;AACA;AACA;AACA;AACE;EACEF,EAAE,EAAE,+DAA+D;EACnEC,MAAM,EAAGC,EAAU,IAAK,gCAAgCA,EAAE;AAC5D,CAAC,CACF;AAED,MAAMC,WAAW,GAAIC,GAAW,IAAK;EACnC;EACA,KAAK,MAAM;IAAEJ,EAAE;IAAEC;EAAO,CAAC,IAAIF,UAAU,EAAE;IACvC,MAAMM,MAAM,GAAGD,GAAG,CAACE,KAAK,CAACN,EAAE,CAAC;IAC5B,IAAIK,MAAM,IAAIA,MAAM,CAAC,CAAC,CAAC,EAAE,OAAOJ,MAAM,CAACI,MAAM,CAAC,CAAC,CAAC,CAAC;EACnD;EACA,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAME,WAAW,GAAG,cAAc;AAEzC,MAAMC,UAA4B,GAAG;EACnCC,IAAI,EAAEF,WAAW;EACjBG,SAAS,EAAErB,UAAU;EACrBsB,IAAI,eAAE3B,KAAA,CAAAY,aAAA,CAACd,SAAS,MAAE,CAAC;EACnB8B,OAAO,EAAEA,CAAC;IAAEC,KAAK;IAAEC;EAAS,CAAC,KAAK;IAChC;IACA,MAAMV,GAAG,GAAGW,MAAM,CAAC,oCAAoC,CAAC;IACxD,IAAI,CAACX,GAAG,EAAE;IAEV,MAAMV,GAAG,GAAGS,WAAW,CAACC,GAAG,CAAC;IAC5B,IAAI,CAACV,GAAG,EAAE;IAEV,MAAMsB,YAAY,GAAG9B,eAAe,CAAC2B,KAAK,CAAC;IAC3C,MAAMI,eAAe,GAAGhC,WAAW,CAAC4B,KAAK,EAAEG,YAAY,EAAET,WAAW,EAAE;MACpEb;IACF,CAAC,CAAC;IAEFoB,QAAQ,CAACG,eAAe,CAAC;EAC3B;AACF,CAAC;AAED,eAAeT,UAAU","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- 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); }
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import { css } from '@emotion/react';
3
3
  import styled from '@emotion/styled';
4
4
  import { InputContainer } from '@os-design/core';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["css","styled","InputContainer","useForwardedRef","useForwardedState","Editor","DraftEditor","EditorState","React","forwardRef","useCallback","useState","BlockToolbar","StyleToolbar","useBlockToolbarProps","usePastedTextHandler","useReturnHandler","useStyleToolbarProps","defaultDraftJsStyles","overrideDraftJsStyles","createEmptyEditorState","defaultStyleToolbarItems","disabledStyles","p","disabled","Container","theme","editorPaddingVertical","inputPaddingHorizontal","editorMinHeight","styleToolbarItems","blockToolbarItems","value","defaultValue","onChange","size","readOnly","handleReturn","handlePastedText","rest","ref","editorRef","mergedEditorRef","forwardedValue","setForwardedValue","innerReadOnly","setInnerReadOnly","styleToolbarProps","blockToolbarProps","length","setEditorState","editorState","getSelection","getHasFocus","moveSelectionToEnd","blockRenderer","block","blockConfig","find","item","type","getType","component","returnHandler","pastedTextHandler","createElement","Fragment","tabIndex","role","undefined","onFocus","current","focus","_extends","blockRendererFn","stripPastedStyles","items","placement","gap","setReadOnly","displayName"],"sources":["../../../src/Editor/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { InputContainer } from '@os-design/core';\nimport { WithSize } from '@os-design/styles';\nimport { useForwardedRef, useForwardedState } from '@os-design/utils';\nimport {\n Editor as DraftEditor,\n EditorProps as DraftEditorProps,\n EditorState,\n} from 'draft-js';\nimport React, { forwardRef, useCallback, useState } from 'react';\nimport BlockToolbar from './BlockToolbar';\nimport StyleToolbar from './StyleToolbar';\nimport { BlockToolbarItem } from './blocks/types';\nimport useBlockToolbarProps from './hooks/useBlockToolbarProps';\nimport usePastedTextHandler from './hooks/usePastedTextHandler';\nimport useReturnHandler from './hooks/useReturnHandler';\nimport useStyleToolbarProps from './hooks/useStyleToolbarProps';\nimport defaultDraftJsStyles from './styles/defaultDraftJsStyles';\nimport overrideDraftJsStyles from './styles/overrideDraftJsStyles';\nimport createEmptyEditorState from './utils/createEmptyEditorState';\nimport defaultStyleToolbarItems, {\n StyleToolbarItem,\n} from './utils/defaultStyleToolbarItems';\n\nexport interface EditorProps\n extends Omit<DraftEditorProps, 'editorState' | 'onChange'>,\n WithSize {\n /**\n * Whether the editor is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Available styles in the toolbar.\n * @default undefined\n */\n styleToolbarItems?: StyleToolbarItem[];\n /**\n * Available blocks in the toolbar.\n * @default undefined\n */\n blockToolbarItems?: BlockToolbarItem[];\n /**\n * The editor state.\n * @default undefined\n */\n value?: EditorState;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: EditorState;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: EditorState) => void;\n}\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n `;\n\nconst Container = styled(InputContainer)`\n height: unset;\n cursor: text;\n\n padding: ${(p) => p.theme.editorPaddingVertical}em\n ${(p) => p.theme.inputPaddingHorizontal}em;\n min-height: ${(p) => p.theme.editorMinHeight}em;\n\n ${defaultDraftJsStyles};\n ${overrideDraftJsStyles};\n ${disabledStyles};\n`;\n\n/**\n * Rich text editor based on the Draft.js.\n */\nconst Editor = forwardRef<DraftEditor, EditorProps>(\n (\n {\n disabled = false,\n styleToolbarItems = defaultStyleToolbarItems,\n blockToolbarItems = [],\n value,\n defaultValue = createEmptyEditorState(),\n onChange,\n size,\n readOnly,\n handleReturn = () => 'not-handled',\n handlePastedText = () => 'not-handled',\n ...rest\n },\n ref\n ) => {\n const [editorRef, mergedEditorRef] = useForwardedRef(ref);\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n // Used by ImageBlock to make the editor read-only\n // while an image is being uploaded\n const [innerReadOnly, setInnerReadOnly] = useState(false);\n\n // Get the trigger and visible props for the toolbars\n const styleToolbarProps = useStyleToolbarProps(\n forwardedValue || defaultValue\n );\n const blockToolbarProps = useBlockToolbarProps(\n forwardedValue || defaultValue,\n (blockToolbarItems || []).length > 0\n );\n\n // Move the caret to the end of the content when the focus event was fired\n const setEditorState = useCallback(\n (editorState: EditorState) => {\n if (!editorState.getSelection().getHasFocus()) {\n setForwardedValue(EditorState.moveSelectionToEnd(editorState));\n return;\n }\n setForwardedValue(editorState);\n },\n [setForwardedValue]\n );\n\n const blockRenderer = useCallback(\n (block) => {\n const blockConfig = blockToolbarItems.find(\n (item) => item.type === block.getType()\n );\n if (!blockConfig) return null;\n return { component: blockConfig.component };\n },\n [blockToolbarItems]\n );\n\n // Custom handlers\n const returnHandler = useReturnHandler(setForwardedValue, handleReturn);\n const pastedTextHandler = usePastedTextHandler(\n setForwardedValue,\n handlePastedText\n );\n\n return (\n <>\n <Container\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n role={!disabled ? 'textbox' : undefined}\n onFocus={() => {\n if (disabled || !editorRef.current) return;\n editorRef.current.focus();\n }}\n >\n <DraftEditor\n onChange={setEditorState}\n blockRendererFn={blockRenderer}\n handleReturn={returnHandler}\n handlePastedText={pastedTextHandler}\n readOnly={readOnly || innerReadOnly || disabled}\n stripPastedStyles\n {...rest}\n editorState={forwardedValue || defaultValue}\n ref={mergedEditorRef}\n />\n </Container>\n\n <StyleToolbar\n {...styleToolbarProps}\n size={size}\n items={styleToolbarItems}\n value={forwardedValue || defaultValue}\n onChange={setForwardedValue}\n />\n\n <BlockToolbar\n {...blockToolbarProps}\n placement='right'\n gap={2.5}\n size={size}\n items={blockToolbarItems}\n value={forwardedValue || defaultValue}\n onChange={setForwardedValue}\n setReadOnly={setInnerReadOnly}\n />\n </>\n );\n }\n);\n\nEditor.displayName = 'Editor';\n\nexport default Editor;\n"],"mappings":";AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,cAAc,QAAQ,iBAAiB;AAEhD,SAASC,eAAe,EAAEC,iBAAiB,QAAQ,kBAAkB;AACrE,SACEC,MAAM,IAAIC,WAAW,EAErBC,WAAW,QACN,UAAU;AACjB,OAAOC,KAAK,IAAIC,UAAU,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AAChE,OAAOC,YAAY,MAAM,gBAAgB;AACzC,OAAOC,YAAY,MAAM,gBAAgB;AAEzC,OAAOC,oBAAoB,MAAM,8BAA8B;AAC/D,OAAOC,oBAAoB,MAAM,8BAA8B;AAC/D,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,oBAAoB,MAAM,8BAA8B;AAC/D,OAAOC,oBAAoB,MAAM,+BAA+B;AAChE,OAAOC,qBAAqB,MAAM,gCAAgC;AAClE,OAAOC,sBAAsB,MAAM,gCAAgC;AACnE,OAAOC,wBAAwB,MAExB,kCAAkC;AAqCzC,MAAMC,cAAc,GAAIC,CAAC,IACvBA,CAAC,CAACC,QAAQ,IACVxB,GAAI;AACN;AACA,GAAG;AAEH,MAAMyB,SAAS,GAAGxB,MAAM,CAACC,cAAc,CAAE;AACzC;AACA;AACA;AACA,aAAcqB,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACC,qBAAsB;AAClD,MAAOJ,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACE,sBAAuB;AAC5C,gBAAiBL,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACG,eAAgB;AAC/C;AACA,IAAIX,oBAAqB;AACzB,IAAIC,qBAAsB;AAC1B,IAAIG,cAAe;AACnB,CAAC;;AAED;AACA;AACA;AACA,MAAMjB,MAAM,gBAAGI,UAAU,CACvB,CACE;EACEe,QAAQ,GAAG,KAAK;EAChBM,iBAAiB,GAAGT,wBAAwB;EAC5CU,iBAAiB,GAAG,EAAE;EACtBC,KAAK;EACLC,YAAY,GAAGb,sBAAsB,CAAC,CAAC;EACvCc,QAAQ;EACRC,IAAI;EACJC,QAAQ;EACRC,YAAY,GAAGA,CAAA,KAAM,aAAa;EAClCC,gBAAgB,GAAGA,CAAA,KAAM,aAAa;EACtC,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAM,CAACC,SAAS,EAAEC,eAAe,CAAC,GAAGvC,eAAe,CAACqC,GAAG,CAAC;EACzD,MAAM,CAACG,cAAc,EAAEC,iBAAiB,CAAC,GAAGxC,iBAAiB,CAAC;IAC5D4B,KAAK;IACLC,YAAY;IACZC;EACF,CAAC,CAAC;;EAEF;EACA;EACA,MAAM,CAACW,aAAa,EAAEC,gBAAgB,CAAC,GAAGnC,QAAQ,CAAC,KAAK,CAAC;;EAEzD;EACA,MAAMoC,iBAAiB,GAAG9B,oBAAoB,CAC5C0B,cAAc,IAAIV,YACpB,CAAC;EACD,MAAMe,iBAAiB,GAAGlC,oBAAoB,CAC5C6B,cAAc,IAAIV,YAAY,EAC9B,CAACF,iBAAiB,IAAI,EAAE,EAAEkB,MAAM,GAAG,CACrC,CAAC;;EAED;EACA,MAAMC,cAAc,GAAGxC,WAAW,CAC/ByC,WAAwB,IAAK;IAC5B,IAAI,CAACA,WAAW,CAACC,YAAY,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,EAAE;MAC7CT,iBAAiB,CAACrC,WAAW,CAAC+C,kBAAkB,CAACH,WAAW,CAAC,CAAC;MAC9D;IACF;IACAP,iBAAiB,CAACO,WAAW,CAAC;EAChC,CAAC,EACD,CAACP,iBAAiB,CACpB,CAAC;EAED,MAAMW,aAAa,GAAG7C,WAAW,CAC9B8C,KAAK,IAAK;IACT,MAAMC,WAAW,GAAG1B,iBAAiB,CAAC2B,IAAI,CACvCC,IAAI,IAAKA,IAAI,CAACC,IAAI,KAAKJ,KAAK,CAACK,OAAO,CAAC,CACxC,CAAC;IACD,IAAI,CAACJ,WAAW,EAAE,OAAO,IAAI;IAC7B,OAAO;MAAEK,SAAS,EAAEL,WAAW,CAACK;IAAU,CAAC;EAC7C,CAAC,EACD,CAAC/B,iBAAiB,CACpB,CAAC;;EAED;EACA,MAAMgC,aAAa,GAAG/C,gBAAgB,CAAC4B,iBAAiB,EAAEP,YAAY,CAAC;EACvE,MAAM2B,iBAAiB,GAAGjD,oBAAoB,CAC5C6B,iBAAiB,EACjBN,gBACF,CAAC;EAED,oBACE9B,KAAA,CAAAyD,aAAA,CAAAzD,KAAA,CAAA0D,QAAA,qBACE1D,KAAA,CAAAyD,aAAA,CAACxC,SAAS;IACRD,QAAQ,EAAEA,QAAS;IACnBW,IAAI,EAAEA,IAAK;IACXgC,QAAQ,EAAE,CAAC3C,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAE;IAC7B4C,IAAI,EAAE,CAAC5C,QAAQ,GAAG,SAAS,GAAG6C,SAAU;IACxCC,OAAO,EAAEA,CAAA,KAAM;MACb,IAAI9C,QAAQ,IAAI,CAACiB,SAAS,CAAC8B,OAAO,EAAE;MACpC9B,SAAS,CAAC8B,OAAO,CAACC,KAAK,CAAC,CAAC;IAC3B;EAAE,gBAEFhE,KAAA,CAAAyD,aAAA,CAAC3D,WAAW,EAAAmE,QAAA;IACVvC,QAAQ,EAAEgB,cAAe;IACzBwB,eAAe,EAAEnB,aAAc;IAC/BlB,YAAY,EAAE0B,aAAc;IAC5BzB,gBAAgB,EAAE0B,iBAAkB;IACpC5B,QAAQ,EAAEA,QAAQ,IAAIS,aAAa,IAAIrB,QAAS;IAChDmD,iBAAiB;EAAA,GACbpC,IAAI;IACRY,WAAW,EAAER,cAAc,IAAIV,YAAa;IAC5CO,GAAG,EAAEE;EAAgB,EACtB,CACQ,CAAC,eAEZlC,KAAA,CAAAyD,aAAA,CAACpD,YAAY,EAAA4D,QAAA,KACP1B,iBAAiB;IACrBZ,IAAI,EAAEA,IAAK;IACXyC,KAAK,EAAE9C,iBAAkB;IACzBE,KAAK,EAAEW,cAAc,IAAIV,YAAa;IACtCC,QAAQ,EAAEU;EAAkB,EAC7B,CAAC,eAEFpC,KAAA,CAAAyD,aAAA,CAACrD,YAAY,EAAA6D,QAAA,KACPzB,iBAAiB;IACrB6B,SAAS,EAAC,OAAO;IACjBC,GAAG,EAAE,GAAI;IACT3C,IAAI,EAAEA,IAAK;IACXyC,KAAK,EAAE7C,iBAAkB;IACzBC,KAAK,EAAEW,cAAc,IAAIV,YAAa;IACtCC,QAAQ,EAAEU,iBAAkB;IAC5BmC,WAAW,EAAEjC;EAAiB,EAC/B,CACD,CAAC;AAEP,CACF,CAAC;AAEDzC,MAAM,CAAC2E,WAAW,GAAG,QAAQ;AAE7B,eAAe3E,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["css","styled","InputContainer","useForwardedRef","useForwardedState","Editor","DraftEditor","EditorState","React","forwardRef","useCallback","useState","BlockToolbar","StyleToolbar","useBlockToolbarProps","usePastedTextHandler","useReturnHandler","useStyleToolbarProps","defaultDraftJsStyles","overrideDraftJsStyles","createEmptyEditorState","defaultStyleToolbarItems","disabledStyles","p","disabled","Container","theme","editorPaddingVertical","inputPaddingHorizontal","editorMinHeight","styleToolbarItems","blockToolbarItems","value","defaultValue","onChange","size","readOnly","handleReturn","handlePastedText","rest","ref","editorRef","mergedEditorRef","forwardedValue","setForwardedValue","innerReadOnly","setInnerReadOnly","styleToolbarProps","blockToolbarProps","length","setEditorState","editorState","getSelection","getHasFocus","moveSelectionToEnd","blockRenderer","block","blockConfig","find","item","type","getType","component","returnHandler","pastedTextHandler","createElement","Fragment","tabIndex","role","undefined","onFocus","current","focus","_extends","blockRendererFn","stripPastedStyles","items","placement","gap","setReadOnly","displayName"],"sources":["../../../src/Editor/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { InputContainer } from '@os-design/core';\nimport { WithSize } from '@os-design/styles';\nimport { useForwardedRef, useForwardedState } from '@os-design/utils';\nimport {\n Editor as DraftEditor,\n EditorProps as DraftEditorProps,\n EditorState,\n} from 'draft-js';\nimport React, { forwardRef, useCallback, useState } from 'react';\nimport BlockToolbar from './BlockToolbar';\nimport StyleToolbar from './StyleToolbar';\nimport { BlockToolbarItem } from './blocks/types';\nimport useBlockToolbarProps from './hooks/useBlockToolbarProps';\nimport usePastedTextHandler from './hooks/usePastedTextHandler';\nimport useReturnHandler from './hooks/useReturnHandler';\nimport useStyleToolbarProps from './hooks/useStyleToolbarProps';\nimport defaultDraftJsStyles from './styles/defaultDraftJsStyles';\nimport overrideDraftJsStyles from './styles/overrideDraftJsStyles';\nimport createEmptyEditorState from './utils/createEmptyEditorState';\nimport defaultStyleToolbarItems, {\n StyleToolbarItem,\n} from './utils/defaultStyleToolbarItems';\n\nexport interface EditorProps\n extends Omit<DraftEditorProps, 'editorState' | 'onChange'>,\n WithSize {\n /**\n * Whether the editor is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Available styles in the toolbar.\n * @default undefined\n */\n styleToolbarItems?: StyleToolbarItem[];\n /**\n * Available blocks in the toolbar.\n * @default undefined\n */\n blockToolbarItems?: BlockToolbarItem[];\n /**\n * The editor state.\n * @default undefined\n */\n value?: EditorState;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: EditorState;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: EditorState) => void;\n}\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n `;\n\nconst Container = styled(InputContainer)`\n height: unset;\n cursor: text;\n\n padding: ${(p) => p.theme.editorPaddingVertical}em\n ${(p) => p.theme.inputPaddingHorizontal}em;\n min-height: ${(p) => p.theme.editorMinHeight}em;\n\n ${defaultDraftJsStyles};\n ${overrideDraftJsStyles};\n ${disabledStyles};\n`;\n\n/**\n * Rich text editor based on the Draft.js.\n */\nconst Editor = forwardRef<DraftEditor, EditorProps>(\n (\n {\n disabled = false,\n styleToolbarItems = defaultStyleToolbarItems,\n blockToolbarItems = [],\n value,\n defaultValue = createEmptyEditorState(),\n onChange,\n size,\n readOnly,\n handleReturn = () => 'not-handled',\n handlePastedText = () => 'not-handled',\n ...rest\n },\n ref\n ) => {\n const [editorRef, mergedEditorRef] = useForwardedRef(ref);\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n // Used by ImageBlock to make the editor read-only\n // while an image is being uploaded\n const [innerReadOnly, setInnerReadOnly] = useState(false);\n\n // Get the trigger and visible props for the toolbars\n const styleToolbarProps = useStyleToolbarProps(\n forwardedValue || defaultValue\n );\n const blockToolbarProps = useBlockToolbarProps(\n forwardedValue || defaultValue,\n (blockToolbarItems || []).length > 0\n );\n\n // Move the caret to the end of the content when the focus event was fired\n const setEditorState = useCallback(\n (editorState: EditorState) => {\n if (!editorState.getSelection().getHasFocus()) {\n setForwardedValue(EditorState.moveSelectionToEnd(editorState));\n return;\n }\n setForwardedValue(editorState);\n },\n [setForwardedValue]\n );\n\n const blockRenderer = useCallback(\n (block) => {\n const blockConfig = blockToolbarItems.find(\n (item) => item.type === block.getType()\n );\n if (!blockConfig) return null;\n return { component: blockConfig.component };\n },\n [blockToolbarItems]\n );\n\n // Custom handlers\n const returnHandler = useReturnHandler(setForwardedValue, handleReturn);\n const pastedTextHandler = usePastedTextHandler(\n setForwardedValue,\n handlePastedText\n );\n\n return (\n <>\n <Container\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n role={!disabled ? 'textbox' : undefined}\n onFocus={() => {\n if (disabled || !editorRef.current) return;\n editorRef.current.focus();\n }}\n >\n <DraftEditor\n onChange={setEditorState}\n blockRendererFn={blockRenderer}\n handleReturn={returnHandler}\n handlePastedText={pastedTextHandler}\n readOnly={readOnly || innerReadOnly || disabled}\n stripPastedStyles\n {...rest}\n editorState={forwardedValue || defaultValue}\n ref={mergedEditorRef}\n />\n </Container>\n\n <StyleToolbar\n {...styleToolbarProps}\n size={size}\n items={styleToolbarItems}\n value={forwardedValue || defaultValue}\n onChange={setForwardedValue}\n />\n\n <BlockToolbar\n {...blockToolbarProps}\n placement='right'\n gap={2.5}\n size={size}\n items={blockToolbarItems}\n value={forwardedValue || defaultValue}\n onChange={setForwardedValue}\n setReadOnly={setInnerReadOnly}\n />\n </>\n );\n }\n);\n\nEditor.displayName = 'Editor';\n\nexport default Editor;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultDraftJsStyles.js","names":["css","defaultDraftJsStyles"],"sources":["../../../../src/Editor/styles/defaultDraftJsStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\n\n/**\n * Default Draft.js styles.\n * The original styles located in `node_modules/draft-js/dist/Draft.css`.\n */\nconst defaultDraftJsStyles = css`\n .DraftEditor-editorContainer,\n .DraftEditor-root,\n .public-DraftEditor-content {\n height: inherit;\n text-align: initial;\n }\n .public-DraftEditor-content[contenteditable='true'] {\n -webkit-user-modify: read-write-plaintext-only;\n }\n .DraftEditor-root {\n position: relative;\n }\n .DraftEditor-editorContainer {\n background-color: rgba(255, 255, 255, 0);\n border-left: 0.1px solid transparent;\n position: relative;\n z-index: 1;\n }\n .public-DraftEditor-block {\n position: relative;\n }\n .DraftEditor-alignLeft .public-DraftStyleDefault-block {\n text-align: left;\n }\n .DraftEditor-alignLeft .public-DraftEditorPlaceholder-root {\n left: 0;\n text-align: left;\n }\n .DraftEditor-alignCenter .public-DraftStyleDefault-block {\n text-align: center;\n }\n .DraftEditor-alignCenter .public-DraftEditorPlaceholder-root {\n margin: 0 auto;\n text-align: center;\n width: 100%;\n }\n .DraftEditor-alignRight .public-DraftStyleDefault-block {\n text-align: right;\n }\n .DraftEditor-alignRight .public-DraftEditorPlaceholder-root {\n right: 0;\n text-align: right;\n }\n .public-DraftEditorPlaceholder-root {\n color: #9197a3;\n position: absolute;\n width: 100%;\n z-index: 1;\n }\n .public-DraftEditorPlaceholder-hasFocus {\n color: #bdc1c9;\n }\n .DraftEditorPlaceholder-hidden {\n display: none;\n }\n .public-DraftStyleDefault-block {\n position: relative;\n white-space: pre-wrap;\n }\n .public-DraftStyleDefault-ltr {\n direction: ltr;\n text-align: left;\n }\n .public-DraftStyleDefault-rtl {\n direction: rtl;\n text-align: right;\n }\n .public-DraftStyleDefault-listLTR {\n direction: ltr;\n }\n .public-DraftStyleDefault-listRTL {\n direction: rtl;\n }\n .public-DraftStyleDefault-ol,\n .public-DraftStyleDefault-ul {\n margin: 16px 0;\n padding: 0;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR {\n margin-left: 1.5em;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL {\n margin-right: 1.5em;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR {\n margin-left: 3em;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL {\n margin-right: 3em;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR {\n margin-left: 4.5em;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL {\n margin-right: 4.5em;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR {\n margin-left: 6em;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL {\n margin-right: 6em;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR {\n margin-left: 7.5em;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL {\n margin-right: 7.5em;\n }\n .public-DraftStyleDefault-unorderedListItem {\n list-style-type: square;\n position: relative;\n }\n .public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0 {\n list-style-type: disc;\n }\n .public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1 {\n list-style-type: circle;\n }\n .public-DraftStyleDefault-orderedListItem {\n list-style-type: none;\n position: relative;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before {\n left: -36px;\n position: absolute;\n text-align: right;\n width: 30px;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before {\n position: absolute;\n right: -36px;\n text-align: left;\n width: 30px;\n }\n .public-DraftStyleDefault-orderedListItem:before {\n content: counter(ol0) '. ';\n counter-increment: ol0;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before {\n content: counter(ol1, lower-alpha) '. ';\n counter-increment: ol1;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before {\n content: counter(ol2, lower-roman) '. ';\n counter-increment: ol2;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before {\n content: counter(ol3) '. ';\n counter-increment: ol3;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before {\n content: counter(ol4, lower-alpha) '. ';\n counter-increment: ol4;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset {\n counter-reset: ol0;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset {\n counter-reset: ol1;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset {\n counter-reset: ol2;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset {\n counter-reset: ol3;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset {\n counter-reset: ol4;\n }\n`;\n\nexport default defaultDraftJsStyles;\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;;AAEpC;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAGD,GAAI;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,eAAeC,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"defaultDraftJsStyles.js","names":["css","defaultDraftJsStyles"],"sources":["../../../../src/Editor/styles/defaultDraftJsStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\n\n/**\n * Default Draft.js styles.\n * The original styles located in `node_modules/draft-js/dist/Draft.css`.\n */\nconst defaultDraftJsStyles = css`\n .DraftEditor-editorContainer,\n .DraftEditor-root,\n .public-DraftEditor-content {\n height: inherit;\n text-align: initial;\n }\n .public-DraftEditor-content[contenteditable='true'] {\n -webkit-user-modify: read-write-plaintext-only;\n }\n .DraftEditor-root {\n position: relative;\n }\n .DraftEditor-editorContainer {\n background-color: rgba(255, 255, 255, 0);\n border-left: 0.1px solid transparent;\n position: relative;\n z-index: 1;\n }\n .public-DraftEditor-block {\n position: relative;\n }\n .DraftEditor-alignLeft .public-DraftStyleDefault-block {\n text-align: left;\n }\n .DraftEditor-alignLeft .public-DraftEditorPlaceholder-root {\n left: 0;\n text-align: left;\n }\n .DraftEditor-alignCenter .public-DraftStyleDefault-block {\n text-align: center;\n }\n .DraftEditor-alignCenter .public-DraftEditorPlaceholder-root {\n margin: 0 auto;\n text-align: center;\n width: 100%;\n }\n .DraftEditor-alignRight .public-DraftStyleDefault-block {\n text-align: right;\n }\n .DraftEditor-alignRight .public-DraftEditorPlaceholder-root {\n right: 0;\n text-align: right;\n }\n .public-DraftEditorPlaceholder-root {\n color: #9197a3;\n position: absolute;\n width: 100%;\n z-index: 1;\n }\n .public-DraftEditorPlaceholder-hasFocus {\n color: #bdc1c9;\n }\n .DraftEditorPlaceholder-hidden {\n display: none;\n }\n .public-DraftStyleDefault-block {\n position: relative;\n white-space: pre-wrap;\n }\n .public-DraftStyleDefault-ltr {\n direction: ltr;\n text-align: left;\n }\n .public-DraftStyleDefault-rtl {\n direction: rtl;\n text-align: right;\n }\n .public-DraftStyleDefault-listLTR {\n direction: ltr;\n }\n .public-DraftStyleDefault-listRTL {\n direction: rtl;\n }\n .public-DraftStyleDefault-ol,\n .public-DraftStyleDefault-ul {\n margin: 16px 0;\n padding: 0;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-listLTR {\n margin-left: 1.5em;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-listRTL {\n margin-right: 1.5em;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-listLTR {\n margin-left: 3em;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-listRTL {\n margin-right: 3em;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-listLTR {\n margin-left: 4.5em;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-listRTL {\n margin-right: 4.5em;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-listLTR {\n margin-left: 6em;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-listRTL {\n margin-right: 6em;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-listLTR {\n margin-left: 7.5em;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-listRTL {\n margin-right: 7.5em;\n }\n .public-DraftStyleDefault-unorderedListItem {\n list-style-type: square;\n position: relative;\n }\n .public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth0 {\n list-style-type: disc;\n }\n .public-DraftStyleDefault-unorderedListItem.public-DraftStyleDefault-depth1 {\n list-style-type: circle;\n }\n .public-DraftStyleDefault-orderedListItem {\n list-style-type: none;\n position: relative;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listLTR:before {\n left: -36px;\n position: absolute;\n text-align: right;\n width: 30px;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-listRTL:before {\n position: absolute;\n right: -36px;\n text-align: left;\n width: 30px;\n }\n .public-DraftStyleDefault-orderedListItem:before {\n content: counter(ol0) '. ';\n counter-increment: ol0;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth1:before {\n content: counter(ol1, lower-alpha) '. ';\n counter-increment: ol1;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth2:before {\n content: counter(ol2, lower-roman) '. ';\n counter-increment: ol2;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth3:before {\n content: counter(ol3) '. ';\n counter-increment: ol3;\n }\n .public-DraftStyleDefault-orderedListItem.public-DraftStyleDefault-depth4:before {\n content: counter(ol4, lower-alpha) '. ';\n counter-increment: ol4;\n }\n .public-DraftStyleDefault-depth0.public-DraftStyleDefault-reset {\n counter-reset: ol0;\n }\n .public-DraftStyleDefault-depth1.public-DraftStyleDefault-reset {\n counter-reset: ol1;\n }\n .public-DraftStyleDefault-depth2.public-DraftStyleDefault-reset {\n counter-reset: ol2;\n }\n .public-DraftStyleDefault-depth3.public-DraftStyleDefault-reset {\n counter-reset: ol3;\n }\n .public-DraftStyleDefault-depth4.public-DraftStyleDefault-reset {\n counter-reset: ol4;\n }\n`;\n\nexport default defaultDraftJsStyles;\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;;AAEpC;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAGD,GAAG;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,eAAeC,oBAAoB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"overrideDraftJsStyles.js","names":["css","clr","overrideDraftJsStyles","p","theme","lineHeight","colorText","inputColorPlaceholder","paragraphMarginBottom"],"sources":["../../../../src/Editor/styles/overrideDraftJsStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\nimport { clr } from '@os-design/theming';\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nconst overrideDraftJsStyles = (p) => css`\n .DraftEditor-root {\n width: 100%;\n overflow: hidden;\n line-height: ${p.theme.lineHeight};\n color: ${clr(p.theme.colorText)};\n }\n .public-DraftEditorPlaceholder-root {\n color: ${clr(p.theme.inputColorPlaceholder)};\n }\n .public-DraftStyleDefault-block {\n margin: 0 0 ${p.theme.paragraphMarginBottom}em;\n }\n`;\n\nexport default overrideDraftJsStyles;\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,GAAG,QAAQ,oBAAoB;;AAExC;AACA,MAAMC,qBAAqB,GAAIC,CAAC,IAAKH,GAAI;AACzC;AACA;AACA;AACA,mBAAmBG,CAAC,CAACC,KAAK,CAACC,UAAW;AACtC,aAAaJ,GAAG,CAACE,CAAC,CAACC,KAAK,CAACE,SAAS,CAAE;AACpC;AACA;AACA,aAAaL,GAAG,CAACE,CAAC,CAACC,KAAK,CAACG,qBAAqB,CAAE;AAChD;AACA;AACA,kBAAkBJ,CAAC,CAACC,KAAK,CAACI,qBAAsB;AAChD;AACA,CAAC;AAED,eAAeN,qBAAqB","ignoreList":[]}
1
+ {"version":3,"file":"overrideDraftJsStyles.js","names":["css","clr","overrideDraftJsStyles","p","theme","lineHeight","colorText","inputColorPlaceholder","paragraphMarginBottom"],"sources":["../../../../src/Editor/styles/overrideDraftJsStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\nimport { clr } from '@os-design/theming';\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nconst overrideDraftJsStyles = (p) => css`\n .DraftEditor-root {\n width: 100%;\n overflow: hidden;\n line-height: ${p.theme.lineHeight};\n color: ${clr(p.theme.colorText)};\n }\n .public-DraftEditorPlaceholder-root {\n color: ${clr(p.theme.inputColorPlaceholder)};\n }\n .public-DraftStyleDefault-block {\n margin: 0 0 ${p.theme.paragraphMarginBottom}em;\n }\n`;\n\nexport default overrideDraftJsStyles;\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,GAAG,QAAQ,oBAAoB;;AAExC;AACA,MAAMC,qBAAqB,GAAIC,CAAC,IAAKH,GAAG;AACxC;AACA;AACA;AACA,mBAAmBG,CAAC,CAACC,KAAK,CAACC,UAAU;AACrC,aAAaJ,GAAG,CAACE,CAAC,CAACC,KAAK,CAACE,SAAS,CAAC;AACnC;AACA;AACA,aAAaL,GAAG,CAACE,CAAC,CAACC,KAAK,CAACG,qBAAqB,CAAC;AAC/C;AACA;AACA,kBAAkBJ,CAAC,CAACC,KAAK,CAACI,qBAAqB;AAC/C;AACA,CAAC;AAED,eAAeN,qBAAqB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"addNewBlockAt.js","names":["ContentBlock","EditorState","genKey","Immutable","addNewBlockAt","editorState","pivotBlockKey","type","data","contentState","getCurrentContent","blockMap","getBlockMap","pivotBlock","get","Error","blocksBefore","toSeq","takeUntil","v","blocksAfter","skipUntil","rest","key","block","text","characterList","List","depth","Map","selectionState","getSelection","nextBlockMap","concat","toOrderedMap","nextContentState","merge","selectionBefore","selectionAfter","anchorKey","anchorOffset","focusKey","focusOffset","isBackward","push"],"sources":["../../../../src/Editor/utils/addNewBlockAt.ts"],"sourcesContent":["import { ContentBlock, ContentState, EditorState, genKey } from 'draft-js';\nimport Immutable from 'immutable';\n\nconst addNewBlockAt = (\n editorState: EditorState,\n pivotBlockKey: string,\n type = 'unstyled',\n data: Record<string, any> = {} // eslint-disable-line @typescript-eslint/no-explicit-any\n): EditorState => {\n const contentState = editorState.getCurrentContent();\n const blockMap = contentState.getBlockMap();\n const pivotBlock = blockMap.get(pivotBlockKey);\n if (!pivotBlock)\n throw new Error(\n `The pivot key - ${pivotBlockKey} is not present in blockMap`\n );\n const blocksBefore = blockMap.toSeq().takeUntil((v) => v === pivotBlock);\n const blocksAfter = blockMap\n .toSeq()\n .skipUntil((v) => v === pivotBlock)\n .rest();\n const key = genKey();\n\n const block = new ContentBlock({\n key,\n type,\n text: '',\n characterList: Immutable.List(),\n depth: 0,\n data: Immutable.Map(data),\n });\n\n const selectionState = editorState.getSelection();\n const nextBlockMap = blocksBefore\n .concat(\n [\n [pivotBlockKey, pivotBlock],\n [key, block],\n ],\n blocksAfter\n )\n .toOrderedMap();\n\n const nextContentState = contentState.merge({\n blockMap: nextBlockMap,\n selectionBefore: selectionState,\n selectionAfter: selectionState.merge({\n anchorKey: key,\n anchorOffset: 0,\n focusKey: key,\n focusOffset: 0,\n isBackward: false,\n }),\n }) as ContentState;\n\n return EditorState.push(editorState, nextContentState, 'split-block');\n};\n\nexport default addNewBlockAt;\n"],"mappings":"AAAA,SAASA,YAAY,EAAgBC,WAAW,EAAEC,MAAM,QAAQ,UAAU;AAC1E,OAAOC,SAAS,MAAM,WAAW;AAEjC,MAAMC,aAAa,GAAGA,CACpBC,WAAwB,EACxBC,aAAqB,EACrBC,IAAI,GAAG,UAAU,EACjBC,IAAyB,GAAG,CAAC,CAAC,CAAC;AAAA,KACf;EAChB,MAAMC,YAAY,GAAGJ,WAAW,CAACK,iBAAiB,CAAC,CAAC;EACpD,MAAMC,QAAQ,GAAGF,YAAY,CAACG,WAAW,CAAC,CAAC;EAC3C,MAAMC,UAAU,GAAGF,QAAQ,CAACG,GAAG,CAACR,aAAa,CAAC;EAC9C,IAAI,CAACO,UAAU,EACb,MAAM,IAAIE,KAAK,CACZ,mBAAkBT,aAAc,6BACnC,CAAC;EACH,MAAMU,YAAY,GAAGL,QAAQ,CAACM,KAAK,CAAC,CAAC,CAACC,SAAS,CAAEC,CAAC,IAAKA,CAAC,KAAKN,UAAU,CAAC;EACxE,MAAMO,WAAW,GAAGT,QAAQ,CACzBM,KAAK,CAAC,CAAC,CACPI,SAAS,CAAEF,CAAC,IAAKA,CAAC,KAAKN,UAAU,CAAC,CAClCS,IAAI,CAAC,CAAC;EACT,MAAMC,GAAG,GAAGrB,MAAM,CAAC,CAAC;EAEpB,MAAMsB,KAAK,GAAG,IAAIxB,YAAY,CAAC;IAC7BuB,GAAG;IACHhB,IAAI;IACJkB,IAAI,EAAE,EAAE;IACRC,aAAa,EAAEvB,SAAS,CAACwB,IAAI,CAAC,CAAC;IAC/BC,KAAK,EAAE,CAAC;IACRpB,IAAI,EAAEL,SAAS,CAAC0B,GAAG,CAACrB,IAAI;EAC1B,CAAC,CAAC;EAEF,MAAMsB,cAAc,GAAGzB,WAAW,CAAC0B,YAAY,CAAC,CAAC;EACjD,MAAMC,YAAY,GAAGhB,YAAY,CAC9BiB,MAAM,CACL,CACE,CAAC3B,aAAa,EAAEO,UAAU,CAAC,EAC3B,CAACU,GAAG,EAAEC,KAAK,CAAC,CACb,EACDJ,WACF,CAAC,CACAc,YAAY,CAAC,CAAC;EAEjB,MAAMC,gBAAgB,GAAG1B,YAAY,CAAC2B,KAAK,CAAC;IAC1CzB,QAAQ,EAAEqB,YAAY;IACtBK,eAAe,EAAEP,cAAc;IAC/BQ,cAAc,EAAER,cAAc,CAACM,KAAK,CAAC;MACnCG,SAAS,EAAEhB,GAAG;MACdiB,YAAY,EAAE,CAAC;MACfC,QAAQ,EAAElB,GAAG;MACbmB,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE;IACd,CAAC;EACH,CAAC,CAAiB;EAElB,OAAO1C,WAAW,CAAC2C,IAAI,CAACvC,WAAW,EAAE8B,gBAAgB,EAAE,aAAa,CAAC;AACvE,CAAC;AAED,eAAe/B,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"addNewBlockAt.js","names":["ContentBlock","EditorState","genKey","Immutable","addNewBlockAt","editorState","pivotBlockKey","type","data","contentState","getCurrentContent","blockMap","getBlockMap","pivotBlock","get","Error","blocksBefore","toSeq","takeUntil","v","blocksAfter","skipUntil","rest","key","block","text","characterList","List","depth","Map","selectionState","getSelection","nextBlockMap","concat","toOrderedMap","nextContentState","merge","selectionBefore","selectionAfter","anchorKey","anchorOffset","focusKey","focusOffset","isBackward","push"],"sources":["../../../../src/Editor/utils/addNewBlockAt.ts"],"sourcesContent":["import { ContentBlock, ContentState, EditorState, genKey } from 'draft-js';\nimport Immutable from 'immutable';\n\nconst addNewBlockAt = (\n editorState: EditorState,\n pivotBlockKey: string,\n type = 'unstyled',\n data: Record<string, any> = {} // eslint-disable-line @typescript-eslint/no-explicit-any\n): EditorState => {\n const contentState = editorState.getCurrentContent();\n const blockMap = contentState.getBlockMap();\n const pivotBlock = blockMap.get(pivotBlockKey);\n if (!pivotBlock)\n throw new Error(\n `The pivot key - ${pivotBlockKey} is not present in blockMap`\n );\n const blocksBefore = blockMap.toSeq().takeUntil((v) => v === pivotBlock);\n const blocksAfter = blockMap\n .toSeq()\n .skipUntil((v) => v === pivotBlock)\n .rest();\n const key = genKey();\n\n const block = new ContentBlock({\n key,\n type,\n text: '',\n characterList: Immutable.List(),\n depth: 0,\n data: Immutable.Map(data),\n });\n\n const selectionState = editorState.getSelection();\n const nextBlockMap = blocksBefore\n .concat(\n [\n [pivotBlockKey, pivotBlock],\n [key, block],\n ],\n blocksAfter\n )\n .toOrderedMap();\n\n const nextContentState = contentState.merge({\n blockMap: nextBlockMap,\n selectionBefore: selectionState,\n selectionAfter: selectionState.merge({\n anchorKey: key,\n anchorOffset: 0,\n focusKey: key,\n focusOffset: 0,\n isBackward: false,\n }),\n }) as ContentState;\n\n return EditorState.push(editorState, nextContentState, 'split-block');\n};\n\nexport default addNewBlockAt;\n"],"mappings":"AAAA,SAASA,YAAY,EAAgBC,WAAW,EAAEC,MAAM,QAAQ,UAAU;AAC1E,OAAOC,SAAS,MAAM,WAAW;AAEjC,MAAMC,aAAa,GAAGA,CACpBC,WAAwB,EACxBC,aAAqB,EACrBC,IAAI,GAAG,UAAU,EACjBC,IAAyB,GAAG,CAAC,CAAC,CAAC;AAAA,KACf;EAChB,MAAMC,YAAY,GAAGJ,WAAW,CAACK,iBAAiB,CAAC,CAAC;EACpD,MAAMC,QAAQ,GAAGF,YAAY,CAACG,WAAW,CAAC,CAAC;EAC3C,MAAMC,UAAU,GAAGF,QAAQ,CAACG,GAAG,CAACR,aAAa,CAAC;EAC9C,IAAI,CAACO,UAAU,EACb,MAAM,IAAIE,KAAK,CACb,mBAAmBT,aAAa,6BAClC,CAAC;EACH,MAAMU,YAAY,GAAGL,QAAQ,CAACM,KAAK,CAAC,CAAC,CAACC,SAAS,CAAEC,CAAC,IAAKA,CAAC,KAAKN,UAAU,CAAC;EACxE,MAAMO,WAAW,GAAGT,QAAQ,CACzBM,KAAK,CAAC,CAAC,CACPI,SAAS,CAAEF,CAAC,IAAKA,CAAC,KAAKN,UAAU,CAAC,CAClCS,IAAI,CAAC,CAAC;EACT,MAAMC,GAAG,GAAGrB,MAAM,CAAC,CAAC;EAEpB,MAAMsB,KAAK,GAAG,IAAIxB,YAAY,CAAC;IAC7BuB,GAAG;IACHhB,IAAI;IACJkB,IAAI,EAAE,EAAE;IACRC,aAAa,EAAEvB,SAAS,CAACwB,IAAI,CAAC,CAAC;IAC/BC,KAAK,EAAE,CAAC;IACRpB,IAAI,EAAEL,SAAS,CAAC0B,GAAG,CAACrB,IAAI;EAC1B,CAAC,CAAC;EAEF,MAAMsB,cAAc,GAAGzB,WAAW,CAAC0B,YAAY,CAAC,CAAC;EACjD,MAAMC,YAAY,GAAGhB,YAAY,CAC9BiB,MAAM,CACL,CACE,CAAC3B,aAAa,EAAEO,UAAU,CAAC,EAC3B,CAACU,GAAG,EAAEC,KAAK,CAAC,CACb,EACDJ,WACF,CAAC,CACAc,YAAY,CAAC,CAAC;EAEjB,MAAMC,gBAAgB,GAAG1B,YAAY,CAAC2B,KAAK,CAAC;IAC1CzB,QAAQ,EAAEqB,YAAY;IACtBK,eAAe,EAAEP,cAAc;IAC/BQ,cAAc,EAAER,cAAc,CAACM,KAAK,CAAC;MACnCG,SAAS,EAAEhB,GAAG;MACdiB,YAAY,EAAE,CAAC;MACfC,QAAQ,EAAElB,GAAG;MACbmB,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE;IACd,CAAC;EACH,CAAC,CAAiB;EAElB,OAAO1C,WAAW,CAAC2C,IAAI,CAACvC,WAAW,EAAE8B,gBAAgB,EAAE,aAAa,CAAC;AACvE,CAAC;AAED,eAAe/B,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultStyleToolbarItems.js","names":["styled","Bold","FontSize","Link","LinkIcon","OrderedList","UnorderedList","React","FontSizeSmall","defaultStyleToolbarItems","name","type","icon","createElement"],"sources":["../../../../src/Editor/utils/defaultStyleToolbarItems.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n Bold,\n FontSize,\n Link as LinkIcon,\n OrderedList,\n UnorderedList,\n} from '@os-design/icons';\nimport React from 'react';\n\nexport interface StyleToolbarItem {\n name: string;\n type: 'block' | 'inline';\n icon: React.ReactNode;\n}\n\nconst FontSizeSmall = styled(FontSize)`\n transform: scale(0.7);\n`;\n\nconst defaultStyleToolbarItems: StyleToolbarItem[] = [\n { name: 'header-two', type: 'block', icon: <FontSize /> },\n { name: 'header-three', type: 'block', icon: <FontSizeSmall /> },\n { name: 'BOLD', type: 'inline', icon: <Bold /> },\n { name: 'unordered-list-item', type: 'block', icon: <UnorderedList /> },\n { name: 'ordered-list-item', type: 'block', icon: <OrderedList /> },\n { name: 'LINK', type: 'inline', icon: <LinkIcon /> },\n];\n\nexport default defaultStyleToolbarItems;\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SACEC,IAAI,EACJC,QAAQ,EACRC,IAAI,IAAIC,QAAQ,EAChBC,WAAW,EACXC,aAAa,QACR,kBAAkB;AACzB,OAAOC,KAAK,MAAM,OAAO;AAQzB,MAAMC,aAAa,GAAGR,MAAM,CAACE,QAAQ,CAAE;AACvC;AACA,CAAC;AAED,MAAMO,wBAA4C,GAAG,CACnD;EAAEC,IAAI,EAAE,YAAY;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACX,QAAQ,MAAE;AAAE,CAAC,EACzD;EAAEQ,IAAI,EAAE,cAAc;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACL,aAAa,MAAE;AAAE,CAAC,EAChE;EAAEE,IAAI,EAAE,MAAM;EAAEC,IAAI,EAAE,QAAQ;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACZ,IAAI,MAAE;AAAE,CAAC,EAChD;EAAES,IAAI,EAAE,qBAAqB;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACP,aAAa,MAAE;AAAE,CAAC,EACvE;EAAEI,IAAI,EAAE,mBAAmB;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACR,WAAW,MAAE;AAAE,CAAC,EACnE;EAAEK,IAAI,EAAE,MAAM;EAAEC,IAAI,EAAE,QAAQ;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACT,QAAQ,MAAE;AAAE,CAAC,CACrD;AAED,eAAeK,wBAAwB","ignoreList":[]}
1
+ {"version":3,"file":"defaultStyleToolbarItems.js","names":["styled","Bold","FontSize","Link","LinkIcon","OrderedList","UnorderedList","React","FontSizeSmall","defaultStyleToolbarItems","name","type","icon","createElement"],"sources":["../../../../src/Editor/utils/defaultStyleToolbarItems.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n Bold,\n FontSize,\n Link as LinkIcon,\n OrderedList,\n UnorderedList,\n} from '@os-design/icons';\nimport React from 'react';\n\nexport interface StyleToolbarItem {\n name: string;\n type: 'block' | 'inline';\n icon: React.ReactNode;\n}\n\nconst FontSizeSmall = styled(FontSize)`\n transform: scale(0.7);\n`;\n\nconst defaultStyleToolbarItems: StyleToolbarItem[] = [\n { name: 'header-two', type: 'block', icon: <FontSize /> },\n { name: 'header-three', type: 'block', icon: <FontSizeSmall /> },\n { name: 'BOLD', type: 'inline', icon: <Bold /> },\n { name: 'unordered-list-item', type: 'block', icon: <UnorderedList /> },\n { name: 'ordered-list-item', type: 'block', icon: <OrderedList /> },\n { name: 'LINK', type: 'inline', icon: <LinkIcon /> },\n];\n\nexport default defaultStyleToolbarItems;\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SACEC,IAAI,EACJC,QAAQ,EACRC,IAAI,IAAIC,QAAQ,EAChBC,WAAW,EACXC,aAAa,QACR,kBAAkB;AACzB,OAAOC,KAAK,MAAM,OAAO;AAQzB,MAAMC,aAAa,GAAGR,MAAM,CAACE,QAAQ,CAAC;AACtC;AACA,CAAC;AAED,MAAMO,wBAA4C,GAAG,CACnD;EAAEC,IAAI,EAAE,YAAY;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACX,QAAQ,MAAE;AAAE,CAAC,EACzD;EAAEQ,IAAI,EAAE,cAAc;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACL,aAAa,MAAE;AAAE,CAAC,EAChE;EAAEE,IAAI,EAAE,MAAM;EAAEC,IAAI,EAAE,QAAQ;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACZ,IAAI,MAAE;AAAE,CAAC,EAChD;EAAES,IAAI,EAAE,qBAAqB;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACP,aAAa,MAAE;AAAE,CAAC,EACvE;EAAEI,IAAI,EAAE,mBAAmB;EAAEC,IAAI,EAAE,OAAO;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACR,WAAW,MAAE;AAAE,CAAC,EACnE;EAAEK,IAAI,EAAE,MAAM;EAAEC,IAAI,EAAE,QAAQ;EAAEC,IAAI,eAAEL,KAAA,CAAAM,aAAA,CAACT,QAAQ,MAAE;AAAE,CAAC,CACrD;AAED,eAAeK,wBAAwB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- 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); }
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import styled from '@emotion/styled';
3
3
  import { InputSkeleton } from '@os-design/core';
4
4
  import React, { forwardRef } from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["styled","InputSkeleton","React","forwardRef","StyledEditorSkeleton","p","theme","editorMinHeight","EditorSkeleton","props","ref","createElement","_extends","displayName"],"sources":["../../../src/EditorSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { InputSkeleton, InputSkeletonProps } from '@os-design/core';\nimport React, { forwardRef } from 'react';\n\nexport type EditorSkeletonProps = InputSkeletonProps;\n\nconst StyledEditorSkeleton = styled(InputSkeleton)`\n height: ${(p) => p.theme.editorMinHeight}em;\n`;\n\n/**\n * Provides an editor placeholder while a user waits for the content to load.\n */\nconst EditorSkeleton = forwardRef<HTMLDivElement, EditorSkeletonProps>(\n (props, ref) => <StyledEditorSkeleton {...props} ref={ref} />\n);\n\nEditorSkeleton.displayName = 'EditorSkeleton';\n\nexport default EditorSkeleton;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,aAAa,QAA4B,iBAAiB;AACnE,OAAOC,KAAK,IAAIC,UAAU,QAAQ,OAAO;AAIzC,MAAMC,oBAAoB,GAAGJ,MAAM,CAACC,aAAa,CAAE;AACnD,YAAaI,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,eAAgB;AAC3C,CAAC;;AAED;AACA;AACA;AACA,MAAMC,cAAc,gBAAGL,UAAU,CAC/B,CAACM,KAAK,EAAEC,GAAG,kBAAKR,KAAA,CAAAS,aAAA,CAACP,oBAAoB,EAAAQ,QAAA,KAAKH,KAAK;EAAEC,GAAG,EAAEA;AAAI,EAAE,CAC9D,CAAC;AAEDF,cAAc,CAACK,WAAW,GAAG,gBAAgB;AAE7C,eAAeL,cAAc","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["styled","InputSkeleton","React","forwardRef","StyledEditorSkeleton","p","theme","editorMinHeight","EditorSkeleton","props","ref","createElement","_extends","displayName"],"sources":["../../../src/EditorSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { InputSkeleton, InputSkeletonProps } from '@os-design/core';\nimport React, { forwardRef } from 'react';\n\nexport type EditorSkeletonProps = InputSkeletonProps;\n\nconst StyledEditorSkeleton = styled(InputSkeleton)`\n height: ${(p) => p.theme.editorMinHeight}em;\n`;\n\n/**\n * Provides an editor placeholder while a user waits for the content to load.\n */\nconst EditorSkeleton = forwardRef<HTMLDivElement, EditorSkeletonProps>(\n (props, ref) => <StyledEditorSkeleton {...props} ref={ref} />\n);\n\nEditorSkeleton.displayName = 'EditorSkeleton';\n\nexport default EditorSkeleton;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SAASC,aAAa,QAA4B,iBAAiB;AACnE,OAAOC,KAAK,IAAIC,UAAU,QAAQ,OAAO;AAIzC,MAAMC,oBAAoB,GAAGJ,MAAM,CAACC,aAAa,CAAC;AAClD,YAAaI,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,eAAe;AAC1C,CAAC;;AAED;AACA;AACA;AACA,MAAMC,cAAc,gBAAGL,UAAU,CAC/B,CAACM,KAAK,EAAEC,GAAG,kBAAKR,KAAA,CAAAS,aAAA,CAACP,oBAAoB,EAAAQ,QAAA,KAAKH,KAAK;EAAEC,GAAG,EAAEA;AAAI,EAAE,CAC9D,CAAC;AAEDF,cAAc,CAACK,WAAW,GAAG,gBAAgB;AAE7C,eAAeL,cAAc","ignoreList":[]}
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
1
  declare const Toolbar: import("@emotion/styled").StyledComponent<import("@os-design/core").PopoverProps & import("react").RefAttributes<HTMLDivElement> & {
3
- theme?: import("@emotion/react").Theme | undefined;
2
+ theme?: import("@emotion/react").Theme;
4
3
  }, {}, {}>;
5
4
  export default Toolbar;
6
5
  //# sourceMappingURL=Toolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../src/Editor/Toolbar.tsx"],"names":[],"mappings":";AAIA,QAAA,MAAM,OAAO;;UASZ,CAAC;AAIF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../src/Editor/Toolbar.tsx"],"names":[],"mappings":"AAIA,QAAA,MAAM,OAAO;;UASZ,CAAC;AAIF,eAAe,OAAO,CAAC"}
@@ -1,7 +1,6 @@
1
- /// <reference types="react" />
2
1
  declare const Figure: import("@emotion/styled").StyledComponent<{
3
- theme?: import("@emotion/react").Theme | undefined;
4
- as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
2
+ theme?: import("@emotion/react").Theme;
3
+ as?: React.ElementType;
5
4
  }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
6
5
  export default Figure;
7
6
  //# sourceMappingURL=Figure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Figure.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/Figure.tsx"],"names":[],"mappings":";AAEA,QAAA,MAAM,MAAM;;;mGAGX,CAAC;AAIF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Figure.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/Figure.tsx"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM;;SAQqV,MAAO,WAAW;mGALlX,CAAC;AAIF,eAAe,MAAM,CAAC"}
@@ -1,7 +1,6 @@
1
- /// <reference types="react" />
2
1
  declare const FigureCaption: import("@emotion/styled").StyledComponent<{
3
- theme?: import("@emotion/react").Theme | undefined;
4
- as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
2
+ theme?: import("@emotion/react").Theme;
3
+ as?: React.ElementType;
5
4
  }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
6
5
  export default FigureCaption;
7
6
  //# sourceMappingURL=FigureCaption.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FigureCaption.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/FigureCaption.tsx"],"names":[],"mappings":";AAGA,QAAA,MAAM,aAAa;;;mGAWlB,CAAC;AAIF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"FigureCaption.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/FigureCaption.tsx"],"names":[],"mappings":"AAGA,QAAA,MAAM,aAAa;;SAgBiD,MAAO,WAAW;mGALrF,CAAC;AAIF,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"imageBlock.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/imageBlock.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAc,gBAAgB,EAAE,MAAM,SAAS,CAAC;AA2FvD,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAE1C,QAAA,MAAM,UAAU,kBACC,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,MAAM,CAAC,KAC7C,gBAgDD,CAAC;AAEH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"imageBlock.d.ts","sourceRoot":"","sources":["../../../../src/Editor/blocks/imageBlock.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAc,gBAAgB,EAAE,MAAM,SAAS,CAAC;AA2FvD,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAE1C,QAAA,MAAM,UAAU,kBACC,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,KAC7C,gBAgDD,CAAC;AAEH,eAAe,UAAU,CAAC"}
@@ -1,3 +1,3 @@
1
- declare const defaultDraftJsStyles: import("@emotion/utils").SerializedStyles;
1
+ declare const defaultDraftJsStyles: import("@emotion/react").SerializedStyles;
2
2
  export default defaultDraftJsStyles;
3
3
  //# sourceMappingURL=defaultDraftJsStyles.d.ts.map
@@ -1,3 +1,3 @@
1
- declare const overrideDraftJsStyles: (p: any) => import("@emotion/utils").SerializedStyles;
1
+ declare const overrideDraftJsStyles: (p: any) => import("@emotion/react").SerializedStyles;
2
2
  export default overrideDraftJsStyles;
3
3
  //# sourceMappingURL=overrideDraftJsStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addNewBlockAt.d.ts","sourceRoot":"","sources":["../../../../src/Editor/utils/addNewBlockAt.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,WAAW,EAAU,MAAM,UAAU,CAAC;AAG3E,QAAA,MAAM,aAAa,gBACJ,WAAW,iBACT,MAAM,wBAEf,OAAO,MAAM,EAAE,GAAG,CAAC,KACxB,WAgDF,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"addNewBlockAt.d.ts","sourceRoot":"","sources":["../../../../src/Editor/utils/addNewBlockAt.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,WAAW,EAAU,MAAM,UAAU,CAAC;AAG3E,QAAA,MAAM,aAAa,gBACJ,WAAW,iBACT,MAAM,wBAEf,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACxB,WAgDF,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"changeBlock.d.ts","sourceRoot":"","sources":["../../../../src/Editor/utils/changeBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,WAAW,EAAE,MAAM,UAAU,CAAC;AAEnE,QAAA,MAAM,WAAW,gBACF,WAAW,SACjB,YAAY,QACb,MAAM,SACN,OAAO,MAAM,EAAE,GAAG,CAAC,KACxB,WAUF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"changeBlock.d.ts","sourceRoot":"","sources":["../../../../src/Editor/utils/changeBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,WAAW,EAAE,MAAM,UAAU,CAAC;AAEnE,QAAA,MAAM,WAAW,gBACF,WAAW,SACjB,YAAY,QACb,MAAM,SACN,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACxB,WAUF,CAAC;AAEF,eAAe,WAAW,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@os-design/editor",
3
- "version": "1.0.259",
3
+ "version": "1.0.260",
4
4
  "license": "UNLICENSED",
5
5
  "repository": "git@gitlab.com:os-team/libs/os-design.git",
6
6
  "main": "dist/cjs/index.js",
@@ -30,7 +30,7 @@
30
30
  "access": "public"
31
31
  },
32
32
  "dependencies": {
33
- "@os-design/core": "^1.0.254",
33
+ "@os-design/core": "^1.0.255",
34
34
  "@os-design/icons": "^1.0.59",
35
35
  "@os-design/styles": "^1.0.56",
36
36
  "@os-design/theming": "^1.0.52",
@@ -50,5 +50,5 @@
50
50
  "react": ">=18",
51
51
  "react-dom": ">=18"
52
52
  },
53
- "gitHead": "c46cd6dbc0187d669d54d03e88aabf3b970d0335"
53
+ "gitHead": "0ee69cf3308f3a647c4e10defca576538b815139"
54
54
  }