UNPKG

@progress/kendo-react-editor

Version:

React Editor enables users to create rich text content through a WYSIWYG interface. KendoReact Editor package

9 lines (8 loc) 1.93 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),D=require("@progress/kendo-editor-common"),I=require("@progress/kendo-react-buttons"),b=require("./utils.js"),f=require("../dialogs/index.js"),u=require("@progress/kendo-react-intl"),h=require("../messages/index.js"),v=require("@progress/kendo-react-common");function k(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,t.get?t:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const i=k(p),q=e=>{const o=class extends i.Component{constructor(){super(...arguments),this.state={openedDialog:!1},this.toggleDialog=()=>{this.setState({openedDialog:!this.state.openedDialog})}}render(){const{view:t,render:c,...s}=this.props,r=t&&t.state,l=r?r.schema.nodes[e.node]:void 0,m=u.provideLocalizationService(this),{insertImage:d}=e.messages,a=!l||!r||!D.canInsert(r,l),g=[i.createElement(I.Button,{onClick:a?void 0:this.toggleDialog,"aria-disabled":a?!0:void 0,key:"insertImage",...b.onDownPreventDefault,title:m.toLanguageString(d,h.messages[d]),...e.props,...s,className:v.classNames(s.className,e.props.className,{"k-disabled":a})}),this.state.openedDialog&&t&&i.createElement(f.EditorDialogs.InsertImageDialog,{key:"insertImageDialog",view:t,settings:e,dir:s.dir,onClose:this.toggleDialog})||null];return c?c.call(void 0,g,{view:t}):g}};return u.registerForLocalization(o),o};exports.createInsertImageTool=q;