form-builder-pro 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +43 -38
- package/dist/index.css.map +1 -1
- package/dist/index.js +13 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +13 -13
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -25183,7 +25183,7 @@ var FormBuilder = class {
|
|
|
25183
25183
|
}
|
|
25184
25184
|
}
|
|
25185
25185
|
this.container.innerHTML = "";
|
|
25186
|
-
const wrapper = createElement("div", { className: "flex flex-col h-screen
|
|
25186
|
+
const wrapper = createElement("div", { className: "flex flex-col h-screen " });
|
|
25187
25187
|
wrapper.appendChild(this.renderToolbar(state));
|
|
25188
25188
|
const main = createElement("div", { className: "flex flex-1 overflow-hidden" });
|
|
25189
25189
|
if (state.isPreviewMode) {
|
|
@@ -25218,7 +25218,7 @@ var FormBuilder = class {
|
|
|
25218
25218
|
renderToolbar(state) {
|
|
25219
25219
|
const toolbar = createElement("div", { className: "flex items-center justify-between p-4 border-b bg-white dark:bg-gray-900 border-gray-200 dark:border-gray-800" });
|
|
25220
25220
|
const left = createElement("div", { className: "flex items-center space-x-2" });
|
|
25221
|
-
left.appendChild(createElement("h1", { className: "text-xl font-
|
|
25221
|
+
left.appendChild(createElement("h1", { className: "text-xl font-semibold mb-2 text-primary mr-4", text: "FormBuilder Pro" }));
|
|
25222
25222
|
const undoBtn = createElement("button", {
|
|
25223
25223
|
className: "p-2 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",
|
|
25224
25224
|
title: "Undo",
|
|
@@ -25248,7 +25248,7 @@ var FormBuilder = class {
|
|
|
25248
25248
|
onclick: () => formStore.getState().togglePreview()
|
|
25249
25249
|
}, [getIcon("Eye", 16), createElement("span", { className: "ml-2", text: state.isPreviewMode ? "Edit" : "Preview" })]);
|
|
25250
25250
|
const saveBtn = createElement("button", {
|
|
25251
|
-
className: "flex items-center px-4 py-2 text-sm font-medium text-white bg-
|
|
25251
|
+
className: "flex items-center px-4 py-2 text-sm font-medium text-white bg-[#019FA2] hover:bg-[#3B497E] rounded-md shadow-sm transition-colors",
|
|
25252
25252
|
onclick: () => {
|
|
25253
25253
|
const schema = formStore.getState().schema;
|
|
25254
25254
|
console.log("Schema saved:", schema);
|
|
@@ -25264,16 +25264,16 @@ var FormBuilder = class {
|
|
|
25264
25264
|
return toolbar;
|
|
25265
25265
|
}
|
|
25266
25266
|
renderToolbox() {
|
|
25267
|
-
const toolbox = createElement("div", { className: "w-64 bg-
|
|
25267
|
+
const toolbox = createElement("div", { className: "w-64 bg-white dark:bg-gray-900 border-r border-gray-200 dark:border-gray-800 p-4 overflow-y-auto h-full" });
|
|
25268
25268
|
toolbox.appendChild(createElement("h2", { className: "text-xs font-semibold text-gray-500 uppercase tracking-wider mb-4", text: "Form Fields" }));
|
|
25269
|
-
const list = createElement("div", { className: "
|
|
25269
|
+
const list = createElement("div", { className: " grid grid-cols-2 gap-3", id: "toolbox-list" });
|
|
25270
25270
|
FIELD_TYPES.forEach((field) => {
|
|
25271
25271
|
const item = createElement("div", {
|
|
25272
|
-
className: "
|
|
25272
|
+
className: "grid justify-center items-center p-3 bg-[#f2f3f7] dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-md cursor-move hover:border-secondary hover:shadow-sm transition-all toolbox-item mt-0",
|
|
25273
25273
|
"data-type": field.type
|
|
25274
25274
|
});
|
|
25275
|
-
item.appendChild(createElement("span", { className: "
|
|
25276
|
-
item.appendChild(createElement("span", { className: "text-
|
|
25275
|
+
item.appendChild(createElement("span", { className: " text-gray-500 mb-1 dark:text-gray-400 inline-flex mx-auto bg-[#019FA2] text-white w-9 h-9 rounded-sm p-1 justify-center items-center" }, [getIcon(field.icon, 16)]));
|
|
25276
|
+
item.appendChild(createElement("span", { className: "text-xs font-semibold text-gray-700 dark:text-gray-200", text: field.label }));
|
|
25277
25277
|
list.appendChild(item);
|
|
25278
25278
|
});
|
|
25279
25279
|
toolbox.appendChild(list);
|
|
@@ -25281,16 +25281,16 @@ var FormBuilder = class {
|
|
|
25281
25281
|
}
|
|
25282
25282
|
renderCanvas(state) {
|
|
25283
25283
|
const canvas = createElement("div", {
|
|
25284
|
-
className: "flex-1 bg-
|
|
25284
|
+
className: "flex-1 bg-white dark:bg-gray-950 p-8 overflow-y-auto h-full",
|
|
25285
25285
|
onclick: (e) => {
|
|
25286
25286
|
if (e.target === canvas || e.target === canvas.firstElementChild) {
|
|
25287
25287
|
formStore.getState().selectField(null);
|
|
25288
25288
|
}
|
|
25289
25289
|
}
|
|
25290
25290
|
});
|
|
25291
|
-
const inner = createElement("div", { className: "
|
|
25291
|
+
const inner = createElement("div", { className: "mx-auto" });
|
|
25292
25292
|
const formNameInput = createElement("input", {
|
|
25293
|
-
className: "text-lg
|
|
25293
|
+
className: "text-lg border border-gray-200 dark:border-gray-700 rounded-md border-gray-200 p-2 bg-[#f2f3f7] focus:outline-none focus:ring-0 w-full text-gray-600 dark:text-gray-400 mb-8",
|
|
25294
25294
|
value: state.schema.formName,
|
|
25295
25295
|
placeholder: "formName (e.g., contactForm)",
|
|
25296
25296
|
"data-focus-id": "form-name",
|
|
@@ -25303,7 +25303,7 @@ var FormBuilder = class {
|
|
|
25303
25303
|
className: "mb-6 rounded-lg border bg-white dark:bg-gray-900 shadow-sm transition-all border-gray-200 dark:border-gray-800",
|
|
25304
25304
|
"data-id": section.id
|
|
25305
25305
|
});
|
|
25306
|
-
const header = createElement("div", { className: "flex items-center justify-between
|
|
25306
|
+
const header = createElement("div", { className: "flex items-center justify-between p-2 border-b border-gray-100 dark:border-gray-800 bg-gray-50 dark:bg-gray-800/50 rounded-t-lg" });
|
|
25307
25307
|
const headerLeft = createElement("div", { className: "flex items-center flex-1" });
|
|
25308
25308
|
headerLeft.appendChild(createElement("div", { className: "cursor-move mr-3 text-gray-400 hover:text-gray-600 section-handle" }, [getIcon("GripVertical", 20)]));
|
|
25309
25309
|
headerLeft.appendChild(createElement("input", {
|
|
@@ -25314,7 +25314,7 @@ var FormBuilder = class {
|
|
|
25314
25314
|
}));
|
|
25315
25315
|
header.appendChild(headerLeft);
|
|
25316
25316
|
header.appendChild(createElement("button", {
|
|
25317
|
-
className: "text-gray-
|
|
25317
|
+
className: "text-gray-600 hover:text-red-500 transition-colors p-1",
|
|
25318
25318
|
onclick: () => formStore.getState().removeSection(section.id)
|
|
25319
25319
|
}, [getIcon("Trash2", 18)]));
|
|
25320
25320
|
sectionEl.appendChild(header);
|