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.26 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 a=Object.defineProperty;var i=(t,e,r)=>e in t?a(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var o=(t,e,r)=>i(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("../services/FormManager.cjs"),s=require("../../../utils/helpers.cjs");class c{constructor(e,r){o(this,"formElement");o(this,"formManager");o(this,"editor");this.formElement=r,this.formManager=new m.FormManager(e),this.editor=e}execute(){const e=this.formManager.parseForm(this.formElement);if(!e){console.error("Failed to parse form configuration");return}const r=this.createDuplicatedConfig(e),n=this.formManager.createForm(r);this.formElement.insertAdjacentHTML("afterend",n),this.editor.insertContent(s.createLineBreak()),console.log("Form duplicated")}createDuplicatedConfig(e){return{...e,id:`form_${Date.now()}_duplicate`,fields:e.fields.map(r=>({...r,id:`field_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}))}}}exports.DuplicateFormCommand=c;