UNPKG

on-codemerge

Version:

A WYSIWYG editor for on-codemerge is a user-friendly interface that allows users to edit and view their code in real time, exactly as it will appear in the final product

3 lines (2 loc) 1.93 kB
/*! on-codemerge v1.3.1 @author Pavel Kuzmin @license MIT @homepage https://s00d.github.io/on-codemerge/ @repository git+https://github.com/s00d/on-codemerge.git Copyright (c) 2026 Pavel Kuzmin - Built on 2026-07-02T13:39:17.947Z */ "use strict";var n=Object.defineProperty;var p=(o,t,e)=>t in o?n(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var i=(o,t,e)=>p(o,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../core/ui/PopupManager.cjs"),u=require("../services/ExportService.cjs"),s=require("../../../icons/html.svg.cjs"),a=require("../../../icons/markdown.svg.cjs"),c=require("../../../icons/text.svg.cjs"),h=require("../../../icons/pdf.svg.cjs");class l{constructor(t){i(this,"popup");i(this,"exportService");i(this,"content","");this.popup=new r.PopupManager(t,{title:t.t("Export"),className:"example-popup",closeOnClickOutside:!0,items:[{type:"button",id:"submit-button",value:"html",icon:s.default,text:t.t("HTML File"),buttonVariant:"primary",onChange:e=>{this.exportService.export(this.content,e.toString()),this.popup.hide()}},{type:"button",id:"submit-button",value:"markdown",icon:a.default,text:t.t("Markdown File"),buttonVariant:"primary",onChange:e=>{this.exportService.export(this.content,e.toString()),this.popup.hide()}},{type:"button",id:"submit-button",value:"text",icon:c.default,text:t.t("Plain Text"),buttonVariant:"primary",onChange:e=>{this.exportService.export(this.content,e.toString()),this.popup.hide()}},{type:"button",id:"submit-button",value:"pdf",icon:h.default,text:t.t("Print / PDF File"),buttonVariant:"primary",onChange:e=>{this.exportService.export(this.content,e.toString()),this.popup.hide()}}]}),this.exportService=new u.ExportService}show(t){this.content=t,this.popup.show()}destroy(){this.popup&&this.popup.destroy(),this.popup=null,this.exportService=null,this.content=""}}exports.ExportMenu=l;