lf-pagebuilder-vue 0.0.9 → 0.0.11
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.cjs +2 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1135 -1049
- package/package.json +11 -6
- package/dist/styles.css +0 -1
package/dist/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { defineComponent as W, ref as C, computed as Y, createElementBlock as d, openBlock as i, createCommentVNode as S, createElementVNode as t, withModifiers as le, withDirectives as O, vModelText as Q, normalizeClass as G, toDisplayString as v, Fragment as A, renderList as V, vModelSelect as J, vModelCheckbox as ne, createBlock as ue, createTextVNode as E, unref as q, onMounted as ae, createVNode as L, watch as oe, nextTick as ve, withCtx as ce, vShow as xe, reactive as he } from "vue";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(`.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px;margin-left:1px;margin-right:1px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover{background-color:#f3f4f6}.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{background-color:#dbeafe;color:#2563eb}.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#2563eb}.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#2563eb}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#4b5563}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#4b5563}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#4b5563}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#4b5563;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#4b5563;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#4b5563}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#4b5563;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle;margin-right:1px;margin-left:1px}.ql-snow .ql-picker-label{cursor:pointer;display:flex;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding:5px 8px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#d1d5db;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#d1d5db}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#d1d5db}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:3px}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px;margin:2px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #d1d5db;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#d1d5db}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #d1d5db;box-shadow:0 0 5px #d1d5db;color:#4b5563;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #d1d5db;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #d1d5db;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#2563eb}.ql-container.ql-snow{border:1px solid #d1d5db}.css-pb-row:hover .css-pb-row-config{display:flex!important}/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-orange-500:oklch(70.5% .213 47.604);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-yellow-50:oklch(98.7% .026 102.212);--color-lime-50:oklch(98.6% .031 120.757);--color-lime-200:oklch(93.8% .127 124.321);--color-lime-400:oklch(84.1% .238 128.85);--color-lime-600:oklch(64.8% .2 131.684);--color-lime-800:oklch(45.3% .124 130.933);--color-green-100:oklch(96.2% .044 156.743);--color-green-300:oklch(87.1% .15 154.449);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-teal-50:oklch(98.4% .014 180.72);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-500:oklch(68.5% .169 237.323);--color-blue-50:oklch(97% .014 254.604);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-500:oklch(64.5% .246 16.439);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-300:oklch(87.1% .006 286.286);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.-top-1{top:calc(var(--spacing)*-1)}.-top-2\\.5{top:calc(var(--spacing)*-2.5)}.top-0{top:calc(var(--spacing)*0)}.top-1{top:calc(var(--spacing)*1)}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-6{top:calc(var(--spacing)*6)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.left-2{left:calc(var(--spacing)*2)}.left-3{left:calc(var(--spacing)*3)}.isolate{isolation:isolate}.z-0{z-index:0}.z-1{z-index:1}.z-10{z-index:10}.z-99{z-index:99}.z-100{z-index:100}.z-101{z-index:101}.z-9999{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.my-4{margin-block:calc(var(--spacing)*4)}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.me-2{margin-inline-end:calc(var(--spacing)*2)}.me-4{margin-inline-end:calc(var(--spacing)*4)}.mt-0\\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.ml-8{margin-left:calc(var(--spacing)*8)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-full{height:100%}.h-screen{height:100vh}.min-h-\\[100px\\]{min-height:100px}.min-h-\\[200px\\]{min-height:200px}.min-h-screen{min-height:100vh}.w-1\\/4{width:25%}.w-3{width:calc(var(--spacing)*3)}.w-3\\/4{width:75%}.w-3\\/5{width:60%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-32{width:calc(var(--spacing)*32)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-auto{width:auto}.w-full{width:100%}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-y-1\\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border,.border-1{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-300{border-color:var(--color-amber-300)}.border-amber-500{border-color:var(--color-amber-500)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-300{border-color:var(--color-emerald-300)}.border-emerald-500{border-color:var(--color-emerald-500)}.border-lime-400{border-color:var(--color-lime-400)}.border-lime-600{border-color:var(--color-lime-600)}.border-red-200{border-color:var(--color-red-200)}.border-rose-200{border-color:var(--color-rose-200)}.border-sky-100{border-color:var(--color-sky-100)}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-700{border-color:var(--color-slate-700)}.border-transparent{border-color:#0000}.border-violet-200{border-color:var(--color-violet-200)}.border-violet-500{border-color:var(--color-violet-500)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-white\\/60{background-color:#fff9}@supports (color:color-mix(in lab,red,red)){.bg-white\\/60{background-color:color-mix(in oklab,var(--color-white)60%,transparent)}}.bg-white\\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-white\\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\\/90{background-color:color-mix(in oklab,var(--color-white)90%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-l{--tw-gradient-position:to left in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-amber-50{--tw-gradient-from:var(--color-amber-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-amber-500{--tw-gradient-from:var(--color-amber-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-50{--tw-gradient-from:var(--color-emerald-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500{--tw-gradient-from:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-lime-50{--tw-gradient-from:var(--color-lime-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-lime-200{--tw-gradient-from:var(--color-lime-200);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-sky-50{--tw-gradient-from:var(--color-sky-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-50{--tw-gradient-from:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-100{--tw-gradient-from:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-600{--tw-gradient-from:var(--color-slate-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-700{--tw-gradient-from:var(--color-slate-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-violet-500{--tw-gradient-from:var(--color-violet-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-white\\/90{--tw-gradient-from:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.from-white\\/90{--tw-gradient-from:color-mix(in oklab,var(--color-white)90%,transparent)}}.from-white\\/90{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-zinc-100{--tw-gradient-from:var(--color-zinc-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-slate-50\\/95{--tw-gradient-via:#f8fafcf2}@supports (color:color-mix(in lab,red,red)){.via-slate-50\\/95{--tw-gradient-via:color-mix(in oklab,var(--color-slate-50)95%,transparent)}}.via-slate-50\\/95{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-white{--tw-gradient-via:var(--color-white);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-blue-50{--tw-gradient-to:var(--color-blue-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-100{--tw-gradient-to:var(--color-emerald-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-green-100{--tw-gradient-to:var(--color-green-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-green-300{--tw-gradient-to:var(--color-green-300);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-orange-500{--tw-gradient-to:var(--color-orange-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-500{--tw-gradient-to:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-50{--tw-gradient-to:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-100{--tw-gradient-to:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-100\\/90{--tw-gradient-to:#f1f5f9e6}@supports (color:color-mix(in lab,red,red)){.to-slate-100\\/90{--tw-gradient-to:color-mix(in oklab,var(--color-slate-100)90%,transparent)}}.to-slate-100\\/90{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-500{--tw-gradient-to:var(--color-slate-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-600{--tw-gradient-to:var(--color-slate-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-700{--tw-gradient-to:var(--color-slate-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-50{--tw-gradient-to:var(--color-teal-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-500{--tw-gradient-to:var(--color-teal-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-white{--tw-gradient-to:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-yellow-50{--tw-gradient-to:var(--color-yellow-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-zinc-300{--tw-gradient-to:var(--color-zinc-300);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1\\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.ps-3{padding-inline-start:calc(var(--spacing)*3)}.pe-4{padding-inline-end:calc(var(--spacing)*4)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-10{padding-top:calc(var(--spacing)*10)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-11{padding-left:calc(var(--spacing)*11)}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.text-amber-500{color:var(--color-amber-500)}.text-amber-700{color:var(--color-amber-700)}.text-blue-600{color:var(--color-blue-600)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-lime-800{color:var(--color-lime-800)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-rose-500{color:var(--color-rose-500)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-transparent{color:#0000}.text-violet-600{color:var(--color-violet-600)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-emerald-100{--tw-shadow-color:oklch(95% .052 163.051)}@supports (color:color-mix(in lab,red,red)){.shadow-emerald-100{--tw-shadow-color:color-mix(in oklab,var(--color-emerald-100)var(--tw-shadow-alpha),transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-\\[2px\\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\\:block:is(:where(.group):hover *){display:block}.group-hover\\:text-slate-800:is(:where(.group):hover *){color:var(--color-slate-800)}.group-hover\\:text-slate-900:is(:where(.group):hover *){color:var(--color-slate-900)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\\/btn\\:text-white:is(:where(.group\\/btn):hover *){color:var(--color-white)}.group-hover\\/component\\:opacity-100:is(:where(.group\\/component):hover *){opacity:1}.group-hover\\/info\\:visible:is(:where(.group\\/info):hover *){visibility:visible}.group-hover\\/info\\:text-sky-500:is(:where(.group\\/info):hover *){color:var(--color-sky-500)}.group-hover\\/info\\:opacity-100:is(:where(.group\\/info):hover *){opacity:1}.group-hover\\/row\\:flex:is(:where(.group\\/row):hover *){display:flex}}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:bottom-4:before{content:var(--tw-content);bottom:calc(var(--spacing)*4)}.before\\:left-2:before{content:var(--tw-content);left:calc(var(--spacing)*2)}.before\\:-rotate-12:before{content:var(--tw-content);rotate:-12deg}.before\\:text-7xl:before{content:var(--tw-content);font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.before\\:font-bold:before{content:var(--tw-content);--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.before\\:text-slate-300:before{content:var(--tw-content);color:var(--color-slate-300)}.before\\:opacity-30:before{content:var(--tw-content);opacity:.3}.before\\:transition-opacity:before{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.before\\:duration-300:before{content:var(--tw-content);--tw-duration:.3s;transition-duration:.3s}.before\\:content-\\[\\'Columna\\'\\]:before{--tw-content:"Columna";content:var(--tw-content)}@media (hover:hover){.hover\\:-translate-y-0\\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\\:scale-125:hover{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:scale-\\[1\\.01\\]:hover{scale:1.01}.hover\\:border-amber-500:hover{border-color:var(--color-amber-500)}.hover\\:border-blue-500:hover{border-color:var(--color-blue-500)}.hover\\:border-emerald-300:hover{border-color:var(--color-emerald-300)}.hover\\:border-emerald-500:hover{border-color:var(--color-emerald-500)}.hover\\:border-red-300:hover{border-color:var(--color-red-300)}.hover\\:border-red-400:hover{border-color:var(--color-red-400)}.hover\\:border-red-500:hover{border-color:var(--color-red-500)}.hover\\:border-sky-300:hover{border-color:var(--color-sky-300)}.hover\\:border-sky-500:hover{border-color:var(--color-sky-500)}.hover\\:border-slate-200:hover{border-color:var(--color-slate-200)}.hover\\:border-slate-300:hover{border-color:var(--color-slate-300)}.hover\\:border-slate-700:hover{border-color:var(--color-slate-700)}.hover\\:border-violet-500:hover{border-color:var(--color-violet-500)}.hover\\:bg-amber-500:hover{background-color:var(--color-amber-500)}.hover\\:bg-blue-500:hover{background-color:var(--color-blue-500)}.hover\\:bg-emerald-50:hover{background-color:var(--color-emerald-50)}.hover\\:bg-emerald-500:hover{background-color:var(--color-emerald-500)}.hover\\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\\:bg-red-500:hover{background-color:var(--color-red-500)}.hover\\:bg-sky-50:hover{background-color:var(--color-sky-50)}.hover\\:bg-sky-100:hover{background-color:var(--color-sky-100)}.hover\\:bg-sky-500:hover{background-color:var(--color-sky-500)}.hover\\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\\:bg-slate-700:hover{background-color:var(--color-slate-700)}.hover\\:bg-violet-500:hover{background-color:var(--color-violet-500)}.hover\\:bg-white:hover{background-color:var(--color-white)}.hover\\:from-emerald-600:hover{--tw-gradient-from:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\\:from-violet-600:hover{--tw-gradient-from:var(--color-violet-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\\:to-purple-600:hover{--tw-gradient-to:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\\:to-teal-600:hover{--tw-gradient-to:var(--color-teal-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\\:text-emerald-600:hover{color:var(--color-emerald-600)}.hover\\:text-red-500:hover{color:var(--color-red-500)}.hover\\:text-red-600:hover{color:var(--color-red-600)}.hover\\:text-slate-600:hover{color:var(--color-slate-600)}.hover\\:text-white:hover{color:var(--color-white)}.hover\\:shadow:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\\:shadow-slate-200\\/50:hover{--tw-shadow-color:#e2e8f080}@supports (color:color-mix(in lab,red,red)){.hover\\:shadow-slate-200\\/50:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-slate-200)50%,transparent)var(--tw-shadow-alpha),transparent)}}.hover\\:before\\:opacity-50:hover:before{content:var(--tw-content);opacity:.5}}.focus\\:border-emerald-400:focus{border-color:var(--color-emerald-400)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-blue-400:focus{--tw-ring-color:var(--color-blue-400)}.focus\\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\\:ring-emerald-500:focus{--tw-ring-color:var(--color-emerald-500)}.focus\\:ring-emerald-500\\/20:focus{--tw-ring-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.focus\\:ring-emerald-500\\/20:focus{--tw-ring-color:color-mix(in oklab,var(--color-emerald-500)20%,transparent)}}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\\:transform-none:disabled{transform:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-slate-100:disabled{background-color:var(--color-slate-100)}.disabled\\:from-slate-300:disabled{--tw-gradient-from:var(--color-slate-300);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.disabled\\:to-slate-400:disabled{--tw-gradient-to:var(--color-slate-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.disabled\\:shadow-none:disabled{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (min-width:48rem){.md\\:w-2\\/4{width:50%}}@media (min-width:64rem){.lg\\:w-1\\/3{width:33.3333%}.lg\\:w-1\\/4{width:25%}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@layer pagebuilder-overrides{[data-group=component]:hover [data-group-hover=component-opacity],[data-group=component]:hover>[data-group-hover=component-opacity],[data-group=component]:hover [data-group-hover=component-opacity].opacity-0{opacity:1!important}[data-group=info]:hover [data-group-hover=info-opacity],[data-group=info]:hover [data-group-hover=info-opacity].opacity-0{opacity:1!important}[data-group=info]:hover [data-group-hover=info-visible],[data-group=info]:hover [data-group-hover=info-visible].invisible,[data-group=info]:hover [data-group-hover=info-visible].opacity-0{visibility:visible!important;opacity:1!important}[data-group=info]:hover [data-group-hover=info-text-sky]{color:#0ea5e9!important}[data-group=btn]:hover [data-group-hover=btn-text-white]{color:#fff!important}[data-group=row]:hover [data-group-hover=row-flex],[data-group=row]:hover [data-group-hover=row-flex].hidden,.css-pb-row:hover .css-pb-row-config,.css-pb-row:hover .css-pb-row-config.hidden{display:flex!important}}.top-2{top:.5rem!important}.right-2{right:.5rem!important}.top-6{top:1.5rem!important}.right-0{right:0!important}.left-0{left:0!important}.left-3{left:.75rem!important}.selected-delay{animation:selectedblink .6s infinite!important;border-color:#10b981!important;box-shadow:0 0 0 3px #10b98133!important}.expanded-page-builder{background:linear-gradient(135deg,#f8fafc,#f1f5f9);top:0;left:0;height:100%;width:100%;position:fixed;z-index:9999;overflow:scroll}@keyframes selectedblink{0%,50%{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}51%,to{background:transparent}}.lf-page-builder{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.z-9999{z-index:9999}.z-99{z-index:99}.z-100{z-index:100}.z-101{z-index:101}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dragging-zone{transition:background-color .3s ease,border-color .3s ease}.component-library{max-height:calc(100vh - 200px);overflow-y:auto}.ql-toolbar{z-index:9999}.ql-container{z-index:9998}.lf-page-builder ::-webkit-scrollbar{width:8px;height:8px}.lf-page-builder ::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.lf-page-builder ::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.lf-page-builder ::-webkit-scrollbar-thumb:hover{background:#94a3b8}.handle{cursor:grab}.handle:active{cursor:grabbing}.lf-page-builder button,.lf-page-builder select,.lf-page-builder input{transition:all .2s ease}.lf-page-builder button:focus,.lf-page-builder select:focus,.lf-page-builder input:focus{outline:none;ring:2px;ring-color:rgba(16,185,129,.2)}`)),document.head.appendChild(t)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
|
|
2
|
+
import { defineComponent as X, ref as j, computed as Z, openBlock as r, createElementBlock as i, createElementVNode as t, withModifiers as re, withDirectives as U, vModelText as te, createCommentVNode as P, normalizeClass as Y, toDisplayString as h, Fragment as T, renderList as z, vModelSelect as Q, vModelCheckbox as ae, onMounted as ne, onUnmounted as xe, createTextVNode as D, createBlock as ce, unref as J, createVNode as H, watch as le, nextTick as he, withCtx as me, vShow as we, reactive as ye } from "vue";
|
|
3
|
+
import { listComponents as Ce } from "libreria-astro-lefebvre";
|
|
4
|
+
import { QuillEditor as $e } from "@vueup/vue-quill";
|
|
5
|
+
import be from "vuedraggable";
|
|
6
|
+
const ke = X({
|
|
6
7
|
props: {
|
|
7
8
|
isComponentMode: Boolean,
|
|
8
9
|
fullwidthMode: Boolean,
|
|
@@ -30,413 +31,413 @@ const Ce = W({
|
|
|
30
31
|
"update:parametersPageConfiguration.seo.description"
|
|
31
32
|
],
|
|
32
33
|
setup(e) {
|
|
33
|
-
const o = e.renderApiDomain || "http://localhost:8003",
|
|
34
|
+
const o = e.renderApiDomain || "http://localhost:8003", f = j(""), F = j(!1), $ = j(!1), p = j(null), l = Z({
|
|
34
35
|
get() {
|
|
35
|
-
var g,
|
|
36
|
-
const
|
|
37
|
-
return ((
|
|
36
|
+
var g, d;
|
|
37
|
+
const I = (g = e.globalPageConfiguration) == null ? void 0 : g.find((b) => b.section === e.sectionSelected);
|
|
38
|
+
return ((d = I == null ? void 0 : I.config) == null ? void 0 : d.width) || "";
|
|
38
39
|
},
|
|
39
|
-
set(
|
|
40
|
-
var
|
|
41
|
-
const g = (
|
|
42
|
-
g && (g.config || (g.config = {}), g.config.width =
|
|
40
|
+
set(I) {
|
|
41
|
+
var d;
|
|
42
|
+
const g = (d = e.globalPageConfiguration) == null ? void 0 : d.find((b) => b.section === e.sectionSelected);
|
|
43
|
+
g && (g.config || (g.config = {}), g.config.width = I);
|
|
43
44
|
}
|
|
44
|
-
}),
|
|
45
|
-
const
|
|
45
|
+
}), s = () => {
|
|
46
|
+
const I = {
|
|
46
47
|
pageConfig: e.globalPageConfiguration,
|
|
47
48
|
paramsConfig: e.parametersPageConfiguration
|
|
48
|
-
}, g = JSON.stringify(
|
|
49
|
-
detail: { ...
|
|
49
|
+
}, g = JSON.stringify(I), d = new CustomEvent("lf-pagebuilder:export", {
|
|
50
|
+
detail: { ...I, inputId: e.inputId }
|
|
50
51
|
});
|
|
51
|
-
document.dispatchEvent(
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
},
|
|
55
|
-
const
|
|
52
|
+
document.dispatchEvent(d);
|
|
53
|
+
const b = window.open("", "Preview", "width='100vw',height='100vh'");
|
|
54
|
+
b && (b.document.body.innerText = g, b.document.close());
|
|
55
|
+
}, m = () => {
|
|
56
|
+
const I = {
|
|
56
57
|
pageConfig: e.globalPageConfiguration,
|
|
57
58
|
paramsConfig: e.parametersPageConfiguration
|
|
58
|
-
}, g = JSON.stringify(
|
|
59
|
-
|
|
60
|
-
const
|
|
61
|
-
detail: { ...
|
|
59
|
+
}, g = JSON.stringify(I);
|
|
60
|
+
y(g);
|
|
61
|
+
const d = new CustomEvent("lf-pagebuilder:save", {
|
|
62
|
+
detail: { ...I, inputId: e.inputId }
|
|
62
63
|
});
|
|
63
|
-
if (document.dispatchEvent(
|
|
64
|
-
const
|
|
65
|
-
|
|
64
|
+
if (document.dispatchEvent(d), e.inputId) {
|
|
65
|
+
const b = document.getElementById(e.inputId);
|
|
66
|
+
b && (b.value = g);
|
|
66
67
|
}
|
|
67
|
-
if (
|
|
68
|
-
|
|
69
|
-
}, 3e3), e.submitForm &&
|
|
70
|
-
const
|
|
71
|
-
|
|
68
|
+
if ($.value = !0, setTimeout(() => {
|
|
69
|
+
$.value = !1;
|
|
70
|
+
}, 3e3), e.submitForm && p.value) {
|
|
71
|
+
const b = p.value.closest("form");
|
|
72
|
+
b && b.submit();
|
|
72
73
|
}
|
|
73
|
-
},
|
|
74
|
+
}, y = (I) => {
|
|
74
75
|
const g = e.inputId ? `pageBuilderConfig_${e.inputId}` : "pageBuilderConfig";
|
|
75
|
-
localStorage.setItem(g,
|
|
76
|
+
localStorage.setItem(g, I);
|
|
76
77
|
};
|
|
77
78
|
return {
|
|
78
79
|
validateSeo: () => {
|
|
79
|
-
const
|
|
80
|
+
const I = {
|
|
80
81
|
pageConfig: e.globalPageConfiguration,
|
|
81
82
|
paramsConfig: e.parametersPageConfiguration
|
|
82
|
-
}, g = JSON.stringify(
|
|
83
|
+
}, g = JSON.stringify(I, null, 2);
|
|
83
84
|
fetch(o + "/api/render-html/", {
|
|
84
85
|
method: "POST",
|
|
85
86
|
headers: {
|
|
86
87
|
"Content-Type": "application/json"
|
|
87
88
|
},
|
|
88
89
|
body: g
|
|
89
|
-
}).then((
|
|
90
|
-
const
|
|
91
|
-
if (!
|
|
92
|
-
const
|
|
93
|
-
function
|
|
94
|
-
if (!
|
|
95
|
-
const
|
|
96
|
-
["h1", "h2", "h3", "h4", "h5", "h6", "a", "p", "article", "section", "header", "footer"].includes(
|
|
97
|
-
tag:
|
|
98
|
-
text: (
|
|
99
|
-
depth:
|
|
100
|
-
}), Array.from(
|
|
90
|
+
}).then((d) => d.text()).then((d) => {
|
|
91
|
+
const b = window.open("", "Preview", "width='100vw',height='100vh'");
|
|
92
|
+
if (!b) return;
|
|
93
|
+
const V = new DOMParser().parseFromString(d, "text/html"), k = [];
|
|
94
|
+
function c(B, G = 0) {
|
|
95
|
+
if (!B || B.nodeType !== 1) return;
|
|
96
|
+
const N = B.tagName.toLowerCase();
|
|
97
|
+
["h1", "h2", "h3", "h4", "h5", "h6", "a", "p", "article", "section", "header", "footer"].includes(N) && k.push({
|
|
98
|
+
tag: N,
|
|
99
|
+
text: (B.textContent || "").trim().slice(0, 80),
|
|
100
|
+
depth: G
|
|
101
|
+
}), Array.from(B.children).forEach((K) => c(K, G + 1));
|
|
101
102
|
}
|
|
102
|
-
|
|
103
|
-
let
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}),
|
|
103
|
+
c(V.body);
|
|
104
|
+
let M = '<h2>Estructura SEO</h2><ul style="font-family:monospace">';
|
|
105
|
+
k.forEach((B) => {
|
|
106
|
+
M += `<li style="margin-left:${B.depth * 20}px"><b>${B.tag}</b>: ${B.text}</li>`;
|
|
107
|
+
}), M += "</ul>", b.document.body.innerHTML = M, b.document.close();
|
|
107
108
|
});
|
|
108
109
|
},
|
|
109
|
-
importConfig:
|
|
110
|
-
showAdvancedConfig:
|
|
110
|
+
importConfig: f,
|
|
111
|
+
showAdvancedConfig: F,
|
|
111
112
|
previewFunction: () => {
|
|
112
|
-
const
|
|
113
|
+
const I = {
|
|
113
114
|
pageConfig: e.globalPageConfiguration,
|
|
114
115
|
paramsConfig: e.parametersPageConfiguration
|
|
115
|
-
}, g = JSON.stringify(
|
|
116
|
+
}, g = JSON.stringify(I, null, 2);
|
|
116
117
|
fetch(o + "/api/render-html/", {
|
|
117
118
|
method: "POST",
|
|
118
119
|
headers: {
|
|
119
120
|
"Content-Type": "application/json"
|
|
120
121
|
},
|
|
121
122
|
body: g
|
|
122
|
-
}).then((
|
|
123
|
-
const
|
|
124
|
-
|
|
125
|
-
var
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
}),
|
|
123
|
+
}).then((d) => d.text()).then((d) => {
|
|
124
|
+
const b = window.open("", "Preview", "width='100vw',height='100vh'");
|
|
125
|
+
b && (b.document.body.innerHTML = d, b.document.querySelectorAll("script").forEach((V) => {
|
|
126
|
+
var c;
|
|
127
|
+
const k = b.document.createElement("script");
|
|
128
|
+
V.src ? k.src = V.src : k.textContent = V.textContent, (c = V.parentNode) == null || c.replaceChild(k, V);
|
|
129
|
+
}), b.document.close());
|
|
129
130
|
});
|
|
130
131
|
},
|
|
131
132
|
importFunction: () => {
|
|
132
|
-
e.importConfigurationFunction && e.importConfigurationFunction(
|
|
133
|
+
e.importConfigurationFunction && e.importConfigurationFunction(f.value), f.value = "";
|
|
133
134
|
},
|
|
134
|
-
exportFunction:
|
|
135
|
-
saveButtonAction:
|
|
135
|
+
exportFunction: s,
|
|
136
|
+
saveButtonAction: m,
|
|
136
137
|
loadFromLocalStorage: () => {
|
|
137
|
-
const
|
|
138
|
+
const I = e.inputId ? `pageBuilderConfig_${e.inputId}` : "pageBuilderConfig", g = localStorage.getItem(I);
|
|
138
139
|
if (g && e.importConfigurationFunction) {
|
|
139
|
-
const
|
|
140
|
-
e.importConfigurationFunction(
|
|
140
|
+
const d = JSON.parse(g);
|
|
141
|
+
e.importConfigurationFunction(d);
|
|
141
142
|
}
|
|
142
143
|
},
|
|
143
144
|
toggleExpandScreen: () => {
|
|
144
|
-
const
|
|
145
|
-
|
|
145
|
+
const I = document.querySelector(".lf-page-builder");
|
|
146
|
+
I && I.classList.toggle("expanded-page-builder");
|
|
146
147
|
},
|
|
147
|
-
sectionWidth:
|
|
148
|
-
isSaved:
|
|
149
|
-
componentRoot:
|
|
148
|
+
sectionWidth: l,
|
|
149
|
+
isSaved: $,
|
|
150
|
+
componentRoot: p
|
|
150
151
|
};
|
|
151
152
|
}
|
|
152
|
-
}),
|
|
153
|
-
const
|
|
154
|
-
for (const [
|
|
155
|
-
|
|
156
|
-
return
|
|
157
|
-
},
|
|
153
|
+
}), Se = (e, o) => {
|
|
154
|
+
const f = e.__vccOpts || e;
|
|
155
|
+
for (const [F, $] of o)
|
|
156
|
+
f[F] = $;
|
|
157
|
+
return f;
|
|
158
|
+
}, Fe = { ref: "componentRoot" }, Pe = {
|
|
158
159
|
key: 0,
|
|
159
160
|
class: "flex justify-end items-center w-full p-3 gap-3"
|
|
160
|
-
},
|
|
161
|
+
}, je = { class: "flex justify-end items-center p-2 gap-3 bg-gradient-to-l from-lime-50 to-green-100 border border-lime-400 rounded-lg w-auto" }, Me = { class: "flex justify-between gap-3 px-5 py-3 bg-white mx-3 rounded-xl border border-slate-200 mb-6 sticky top-2 z-9999 shadow-lg backdrop-blur-sm" }, Ie = { class: "flex gap-2" }, Ae = { class: "flex gap-2" }, Be = ["value"], Ee = ["value"], Te = { value: "full" }, Oe = { value: "1/2" }, De = { value: "1/3" }, Re = { value: "2/3" }, Ue = { value: "1/4" }, Ve = { value: "3/4" }, ze = { value: "1/5" }, Ne = { value: "2/5" }, Le = { value: "3/5" }, qe = { value: "4/5" }, Ge = { key: 0 }, We = { key: 1 }, Je = { class: "flex items-center gap-2" }, He = {
|
|
161
162
|
key: 1,
|
|
162
163
|
class: "bg-white border border-slate-200 rounded-2xl p-5 mx-3 mb-6 shadow-lg"
|
|
163
|
-
},
|
|
164
|
-
function
|
|
165
|
-
return
|
|
166
|
-
e.debugMode ? (
|
|
167
|
-
t("div",
|
|
164
|
+
}, Ye = { class: "flex flex-row gap-4 w-full" }, Ke = { class: "border border-slate-200 rounded-xl p-5 w-full bg-gradient-to-br from-slate-50 to-white" }, Qe = { class: "flex flex-col gap-3 border-b border-slate-200 pb-4 w-full" }, Xe = { class: "mb-3" }, Ze = { class: "flex items-center gap-3 cursor-pointer group" }, _e = { class: "mb-3" }, et = { class: "flex items-center gap-3 cursor-pointer group" }, tt = { class: "mb-3" }, ot = { class: "mb-3" }, nt = { class: "mb-3" }, lt = { class: "border border-slate-200 rounded-xl p-5 w-full bg-gradient-to-br from-slate-50 to-white" }, at = { class: "flex justify-between items-center mb-4" }, rt = { class: "flex flex-col gap-3 border-b border-slate-200 pb-4 w-full" }, st = { class: "mb-3" }, it = { class: "mb-3" }, dt = { class: "mb-3" };
|
|
165
|
+
function ut(e, o, f, F, $, p) {
|
|
166
|
+
return r(), i("div", Fe, [
|
|
167
|
+
e.debugMode ? (r(), i("div", Pe, [
|
|
168
|
+
t("div", je, [
|
|
168
169
|
o[30] || (o[30] = t("span", { class: "bg-gradient-to-r from-lime-200 to-green-300 px-3 py-1 rounded-full border border-lime-600 text-lime-800 text-xs font-medium me-4 italic" }, "MODO DEBUG 🐞", -1)),
|
|
169
170
|
t("form", {
|
|
170
|
-
onSubmit: o[2] || (o[2] =
|
|
171
|
+
onSubmit: o[2] || (o[2] = re(() => {
|
|
171
172
|
}, ["prevent"])),
|
|
172
173
|
class: "flex gap-2"
|
|
173
174
|
}, [
|
|
174
|
-
|
|
175
|
-
"onUpdate:modelValue": o[0] || (o[0] = (
|
|
175
|
+
U(t("input", {
|
|
176
|
+
"onUpdate:modelValue": o[0] || (o[0] = (l) => e.importConfig = l),
|
|
176
177
|
type: "text",
|
|
177
178
|
class: "bg-white border border-slate-200 rounded-lg px-3 py-1.5 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400",
|
|
178
179
|
name: "",
|
|
179
180
|
id: "",
|
|
180
181
|
placeholder: "Pegar configuración..."
|
|
181
182
|
}, null, 512), [
|
|
182
|
-
[
|
|
183
|
+
[te, e.importConfig]
|
|
183
184
|
]),
|
|
184
185
|
t("button", {
|
|
185
186
|
type: "button",
|
|
186
|
-
onClick: o[1] || (o[1] = (
|
|
187
|
+
onClick: o[1] || (o[1] = (l) => e.importFunction()),
|
|
187
188
|
class: "cursor-pointer bg-white hover:bg-slate-700 hover:text-white border border-slate-200 hover:border-slate-700 rounded-lg px-3 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
188
189
|
}, "🏯 Importar")
|
|
189
190
|
], 32),
|
|
190
191
|
t("button", {
|
|
191
192
|
type: "button",
|
|
192
|
-
onClick: o[3] || (o[3] = (
|
|
193
|
+
onClick: o[3] || (o[3] = (l) => e.exportFunction()),
|
|
193
194
|
class: "cursor-pointer bg-white hover:bg-slate-700 hover:text-white border border-slate-200 hover:border-slate-700 rounded-lg px-3 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
194
195
|
}, "🚀 Exportar")
|
|
195
196
|
])
|
|
196
|
-
])) :
|
|
197
|
-
t("div",
|
|
198
|
-
t("div",
|
|
197
|
+
])) : P("", !0),
|
|
198
|
+
t("div", Me, [
|
|
199
|
+
t("div", Ie, [
|
|
199
200
|
t("button", {
|
|
200
201
|
type: "button",
|
|
201
|
-
class:
|
|
202
|
-
onClick: o[4] || (o[4] = (
|
|
203
|
-
var
|
|
204
|
-
return (
|
|
202
|
+
class: Y([[e.isComponentMode ? "bg-gradient-to-r from-slate-600 to-slate-700 border-slate-700 text-white shadow-md" : "bg-white hover:bg-slate-100"], "cursor-pointer border border-slate-200 rounded-lg py-1.5 px-3 text-sm font-medium transition-all duration-200"]),
|
|
203
|
+
onClick: o[4] || (o[4] = (l) => {
|
|
204
|
+
var s;
|
|
205
|
+
return (s = e.toggleComponentModeFunction) == null ? void 0 : s.call(e);
|
|
205
206
|
})
|
|
206
|
-
},
|
|
207
|
+
}, h(e.isComponentMode ? "⚒️ Modo Configuración" : "👁️ Modo Visual"), 3),
|
|
207
208
|
t("button", {
|
|
208
209
|
type: "button",
|
|
209
|
-
class:
|
|
210
|
-
onClick: o[5] || (o[5] = (
|
|
211
|
-
var
|
|
212
|
-
return (
|
|
210
|
+
class: Y([[e.fullwidthMode ? "bg-white hover:bg-slate-100" : "bg-gradient-to-r from-slate-600 to-slate-700 border-slate-700 text-white shadow-md"], "cursor-pointer border border-slate-200 rounded-lg py-1.5 px-3 text-sm font-medium transition-all duration-200"]),
|
|
211
|
+
onClick: o[5] || (o[5] = (l) => {
|
|
212
|
+
var s;
|
|
213
|
+
return (s = e.toggleFullwidthMode) == null ? void 0 : s.call(e);
|
|
213
214
|
})
|
|
214
|
-
},
|
|
215
|
+
}, h(e.fullwidthMode ? "⚒️ Comps. Plegados" : "👁️ Comps. Desplegados"), 3)
|
|
215
216
|
]),
|
|
216
|
-
t("div",
|
|
217
|
+
t("div", Ae, [
|
|
217
218
|
t("select", {
|
|
218
219
|
value: e.sectionSelected,
|
|
219
|
-
onChange: o[6] || (o[6] = (
|
|
220
|
+
onChange: o[6] || (o[6] = (l) => e.$emit("update:sectionSelected", l.target.value)),
|
|
220
221
|
class: "bg-white border border-slate-200 rounded-lg px-3 py-1.5 cursor-pointer text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 transition-colors"
|
|
221
222
|
}, [
|
|
222
|
-
(
|
|
223
|
-
key:
|
|
224
|
-
value:
|
|
225
|
-
},
|
|
226
|
-
], 40,
|
|
227
|
-
|
|
223
|
+
(r(!0), i(T, null, z(e.availableSections, (l, s) => (r(), i("option", {
|
|
224
|
+
key: s,
|
|
225
|
+
value: l
|
|
226
|
+
}, h(l), 9, Ee))), 128))
|
|
227
|
+
], 40, Be),
|
|
228
|
+
U(t("select", {
|
|
228
229
|
class: "bg-white border border-slate-200 rounded-lg px-3 py-1.5 cursor-pointer text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 transition-colors",
|
|
229
|
-
"onUpdate:modelValue": o[7] || (o[7] = (
|
|
230
|
+
"onUpdate:modelValue": o[7] || (o[7] = (l) => e.sectionWidth = l)
|
|
230
231
|
}, [
|
|
231
232
|
o[31] || (o[31] = t("option", {
|
|
232
233
|
disabled: "",
|
|
233
234
|
value: ""
|
|
234
235
|
}, "Selecciona el ancho de la sección", -1)),
|
|
235
|
-
t("option",
|
|
236
|
-
t("option",
|
|
237
|
-
t("option",
|
|
238
|
-
t("option",
|
|
239
|
-
t("option",
|
|
240
|
-
t("option",
|
|
241
|
-
t("option",
|
|
242
|
-
t("option",
|
|
243
|
-
t("option",
|
|
244
|
-
t("option",
|
|
236
|
+
t("option", Te, "Sección " + h(e.sectionSelected) + " ocupa todo el ancho de la página", 1),
|
|
237
|
+
t("option", Oe, "Sección " + h(e.sectionSelected) + " ocupa 1/2 del ancho de la página", 1),
|
|
238
|
+
t("option", De, "Sección " + h(e.sectionSelected) + " ocupa 1/3 del ancho de la página", 1),
|
|
239
|
+
t("option", Re, "Sección " + h(e.sectionSelected) + " ocupa 2/3 del ancho de la página", 1),
|
|
240
|
+
t("option", Ue, "Sección " + h(e.sectionSelected) + " ocupa 1/4 del ancho de la página", 1),
|
|
241
|
+
t("option", Ve, "Sección " + h(e.sectionSelected) + " ocupa 3/4 del ancho de la página", 1),
|
|
242
|
+
t("option", ze, "Sección " + h(e.sectionSelected) + " ocupa 1/5 del ancho de la página", 1),
|
|
243
|
+
t("option", Ne, "Sección " + h(e.sectionSelected) + " ocupa 2/5 del ancho de la página", 1),
|
|
244
|
+
t("option", Le, "Sección " + h(e.sectionSelected) + " ocupa 3/5 del ancho de la página", 1),
|
|
245
|
+
t("option", qe, "Sección " + h(e.sectionSelected) + " ocupa 4/5 del ancho de la página", 1)
|
|
245
246
|
], 512), [
|
|
246
|
-
[
|
|
247
|
+
[Q, e.sectionWidth]
|
|
247
248
|
]),
|
|
248
249
|
t("button", {
|
|
249
250
|
type: "button",
|
|
250
|
-
class:
|
|
251
|
+
class: Y([
|
|
251
252
|
"cursor-pointer border rounded-lg py-1.5 px-3 text-sm font-medium transition-all duration-200 flex items-center gap-2",
|
|
252
253
|
e.showAdvancedConfig ? "bg-gradient-to-r from-amber-500 to-orange-500 border-amber-500 text-white shadow-md" : "bg-white border-slate-200 hover:bg-slate-100"
|
|
253
254
|
]),
|
|
254
|
-
onClick: o[8] || (o[8] = (
|
|
255
|
+
onClick: o[8] || (o[8] = (l) => e.showAdvancedConfig = !e.showAdvancedConfig)
|
|
255
256
|
}, [
|
|
256
257
|
o[32] || (o[32] = t("span", null, "⚙️ Página", -1)),
|
|
257
|
-
e.showAdvancedConfig ? (
|
|
258
|
+
e.showAdvancedConfig ? (r(), i("span", Ge, "▲")) : (r(), i("span", We, "▼"))
|
|
258
259
|
], 2)
|
|
259
260
|
]),
|
|
260
|
-
t("div",
|
|
261
|
+
t("div", Je, [
|
|
261
262
|
t("button", {
|
|
262
263
|
type: "button",
|
|
263
|
-
onClick: o[9] || (o[9] = (
|
|
264
|
+
onClick: o[9] || (o[9] = (l) => e.previewFunction()),
|
|
264
265
|
class: "cursor-pointer bg-white hover:bg-violet-500 hover:text-white hover:border-violet-500 border border-slate-200 rounded-lg px-3 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
265
266
|
}, "🔎 Preview"),
|
|
266
267
|
t("button", {
|
|
267
268
|
type: "button",
|
|
268
|
-
onClick: o[10] || (o[10] = (
|
|
269
|
+
onClick: o[10] || (o[10] = (l) => e.saveButtonAction()),
|
|
269
270
|
title: "Guardar configuración en localStorage y disparar evento global",
|
|
270
271
|
class: "cursor-pointer bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white border border-emerald-500 rounded-lg px-3 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
271
|
-
},
|
|
272
|
-
e.debugMode ? (
|
|
272
|
+
}, h(e.isSaved ? e.submitForm ? "⏳ Submiteando formulario" : "✅ Se ha guardado correctamente" : "💾 Guardar"), 1),
|
|
273
|
+
e.debugMode ? (r(), i("button", {
|
|
273
274
|
key: 0,
|
|
274
275
|
type: "button",
|
|
275
|
-
onClick: o[11] || (o[11] = (
|
|
276
|
+
onClick: o[11] || (o[11] = (l) => e.loadFromLocalStorage()),
|
|
276
277
|
class: "cursor-pointer bg-white hover:bg-blue-500 hover:text-white hover:border-blue-500 border border-slate-200 rounded-lg px-3 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
277
|
-
}, "⤵️ Cargar")) :
|
|
278
|
+
}, "⤵️ Cargar")) : P("", !0),
|
|
278
279
|
t("button", {
|
|
279
280
|
type: "button",
|
|
280
|
-
onClick: o[12] || (o[12] = (
|
|
281
|
+
onClick: o[12] || (o[12] = (l) => e.toggleExpandScreen()),
|
|
281
282
|
title: "Expandir / Contraer Pagebuilder",
|
|
282
283
|
class: "cursor-pointer bg-white hover:bg-slate-700 hover:text-white hover:border-slate-700 border border-slate-200 rounded-lg px-3 py-1.5 text-xl transition-all duration-200 shadow-sm hover:shadow-md ms-2"
|
|
283
284
|
}, "◳")
|
|
284
285
|
])
|
|
285
286
|
]),
|
|
286
|
-
e.showAdvancedConfig && e.parametersPageConfiguration ? (
|
|
287
|
-
t("div",
|
|
288
|
-
t("div",
|
|
287
|
+
e.showAdvancedConfig && e.parametersPageConfiguration ? (r(), i("div", He, [
|
|
288
|
+
t("div", Ye, [
|
|
289
|
+
t("div", Ke, [
|
|
289
290
|
o[38] || (o[38] = t("h2", { class: "text-lg font-bold mb-4 text-slate-700" }, "Configuración Avanzada", -1)),
|
|
290
291
|
o[39] || (o[39] = t("h3", { class: "font-semibold mb-3 text-slate-600" }, "Configuración Global", -1)),
|
|
291
|
-
t("div",
|
|
292
|
-
t("div",
|
|
293
|
-
t("label",
|
|
294
|
-
|
|
292
|
+
t("div", Qe, [
|
|
293
|
+
t("div", Xe, [
|
|
294
|
+
t("label", Ze, [
|
|
295
|
+
U(t("input", {
|
|
295
296
|
type: "checkbox",
|
|
296
|
-
"onUpdate:modelValue": o[13] || (o[13] = (
|
|
297
|
-
onChange: o[14] || (o[14] = (
|
|
297
|
+
"onUpdate:modelValue": o[13] || (o[13] = (l) => e.parametersPageConfiguration.global.sidebarEnabled = l),
|
|
298
|
+
onChange: o[14] || (o[14] = (l) => e.$emit("update:parametersPageConfiguration.global.sidebarEnabled", l.target.value)),
|
|
298
299
|
class: "w-5 h-5 rounded border-slate-300 text-emerald-500 focus:ring-emerald-500 cursor-pointer"
|
|
299
300
|
}, null, 544), [
|
|
300
|
-
[
|
|
301
|
+
[ae, e.parametersPageConfiguration.global.sidebarEnabled]
|
|
301
302
|
]),
|
|
302
303
|
o[33] || (o[33] = t("span", { class: "text-slate-600 group-hover:text-slate-800 transition-colors" }, "Sidebar Habilitado", -1))
|
|
303
304
|
])
|
|
304
305
|
]),
|
|
305
|
-
t("div",
|
|
306
|
-
t("label",
|
|
307
|
-
|
|
306
|
+
t("div", _e, [
|
|
307
|
+
t("label", et, [
|
|
308
|
+
U(t("input", {
|
|
308
309
|
type: "checkbox",
|
|
309
|
-
"onUpdate:modelValue": o[15] || (o[15] = (
|
|
310
|
-
onChange: o[16] || (o[16] = (
|
|
310
|
+
"onUpdate:modelValue": o[15] || (o[15] = (l) => e.parametersPageConfiguration.global.renderAsBodyPart = l),
|
|
311
|
+
onChange: o[16] || (o[16] = (l) => e.$emit("update:parametersPageConfiguration.global.renderAsBodyPart", l.target.value)),
|
|
311
312
|
class: "w-5 h-5 rounded border-slate-300 text-emerald-500 focus:ring-emerald-500 cursor-pointer"
|
|
312
313
|
}, null, 544), [
|
|
313
|
-
[
|
|
314
|
+
[ae, e.parametersPageConfiguration.global.renderAsBodyPart]
|
|
314
315
|
]),
|
|
315
316
|
o[34] || (o[34] = t("span", { class: "text-slate-600 group-hover:text-slate-800 transition-colors" }, "Renderizar como parte del BODY (Sin etiquetas HTML, HEAD, BODY)", -1))
|
|
316
317
|
])
|
|
317
318
|
]),
|
|
318
|
-
t("div",
|
|
319
|
+
t("div", tt, [
|
|
319
320
|
o[35] || (o[35] = t("label", {
|
|
320
321
|
for: "headSlot",
|
|
321
322
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
322
323
|
}, " Código al final de la sección <head> ", -1)),
|
|
323
|
-
|
|
324
|
+
U(t("textarea", {
|
|
324
325
|
id: "headSlot",
|
|
325
|
-
"onUpdate:modelValue": o[17] || (o[17] = (
|
|
326
|
-
onInput: o[18] || (o[18] = (
|
|
326
|
+
"onUpdate:modelValue": o[17] || (o[17] = (l) => e.parametersPageConfiguration.global.headSlot = l),
|
|
327
|
+
onInput: o[18] || (o[18] = (l) => e.$emit("update:parametersPageConfiguration.global.headSlot", l.target.value)),
|
|
327
328
|
class: "w-full px-4 py-3 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm font-mono transition-colors",
|
|
328
329
|
placeholder: "Contenido para el head",
|
|
329
330
|
rows: "3"
|
|
330
331
|
}, null, 544), [
|
|
331
|
-
[
|
|
332
|
+
[te, e.parametersPageConfiguration.global.headSlot]
|
|
332
333
|
])
|
|
333
334
|
]),
|
|
334
|
-
t("div",
|
|
335
|
+
t("div", ot, [
|
|
335
336
|
o[36] || (o[36] = t("label", {
|
|
336
337
|
for: "bodyBeginSlot",
|
|
337
338
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
338
339
|
}, " Código al principio de la sección <body> ", -1)),
|
|
339
|
-
|
|
340
|
+
U(t("textarea", {
|
|
340
341
|
id: "bodyBeginSlot",
|
|
341
|
-
"onUpdate:modelValue": o[19] || (o[19] = (
|
|
342
|
-
onInput: o[20] || (o[20] = (
|
|
342
|
+
"onUpdate:modelValue": o[19] || (o[19] = (l) => e.parametersPageConfiguration.global.bodyBeginSlot = l),
|
|
343
|
+
onInput: o[20] || (o[20] = (l) => e.$emit("update:parametersPageConfiguration.global.bodyBeginSlot", l.target.value)),
|
|
343
344
|
class: "w-full px-4 py-3 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm font-mono transition-colors",
|
|
344
345
|
placeholder: "Contenido para el inicio del body",
|
|
345
346
|
rows: "3"
|
|
346
347
|
}, null, 544), [
|
|
347
|
-
[
|
|
348
|
+
[te, e.parametersPageConfiguration.global.bodyBeginSlot]
|
|
348
349
|
])
|
|
349
350
|
]),
|
|
350
|
-
t("div",
|
|
351
|
+
t("div", nt, [
|
|
351
352
|
o[37] || (o[37] = t("label", {
|
|
352
353
|
for: "footerSlot",
|
|
353
354
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
354
355
|
}, " Código al final de la sección <body>, dentro de la etiqueta <footer> ", -1)),
|
|
355
|
-
|
|
356
|
+
U(t("textarea", {
|
|
356
357
|
id: "footerSlot",
|
|
357
|
-
"onUpdate:modelValue": o[21] || (o[21] = (
|
|
358
|
-
onInput: o[22] || (o[22] = (
|
|
358
|
+
"onUpdate:modelValue": o[21] || (o[21] = (l) => e.parametersPageConfiguration.global.footerSlot = l),
|
|
359
|
+
onInput: o[22] || (o[22] = (l) => e.$emit("update:parametersPageConfiguration.global.footerSlot", l.target.value)),
|
|
359
360
|
class: "w-full px-4 py-3 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm font-mono transition-colors",
|
|
360
361
|
placeholder: "Contenido para el footer",
|
|
361
362
|
rows: "3"
|
|
362
363
|
}, null, 544), [
|
|
363
|
-
[
|
|
364
|
+
[te, e.parametersPageConfiguration.global.footerSlot]
|
|
364
365
|
])
|
|
365
366
|
])
|
|
366
367
|
])
|
|
367
368
|
]),
|
|
368
|
-
t("div",
|
|
369
|
-
t("div",
|
|
369
|
+
t("div", lt, [
|
|
370
|
+
t("div", at, [
|
|
370
371
|
o[40] || (o[40] = t("h2", { class: "text-lg font-bold text-slate-700" }, "Configuración SEO", -1)),
|
|
371
372
|
t("button", {
|
|
372
373
|
type: "button",
|
|
373
|
-
onClick: o[23] || (o[23] = (
|
|
374
|
+
onClick: o[23] || (o[23] = (l) => e.validateSeo()),
|
|
374
375
|
class: "cursor-pointer bg-gradient-to-r from-violet-500 to-purple-500 hover:from-violet-600 hover:to-purple-600 text-white border border-violet-500 rounded-lg px-4 py-1.5 text-sm font-medium transition-all duration-200 shadow-sm hover:shadow-md"
|
|
375
376
|
}, "🦄 Validar SEO")
|
|
376
377
|
]),
|
|
377
|
-
t("div",
|
|
378
|
-
t("div",
|
|
378
|
+
t("div", rt, [
|
|
379
|
+
t("div", st, [
|
|
379
380
|
o[42] || (o[42] = t("label", {
|
|
380
381
|
for: "robotsIndex",
|
|
381
382
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
382
383
|
}, " Indexación de robots ", -1)),
|
|
383
|
-
|
|
384
|
+
U(t("select", {
|
|
384
385
|
id: "robotsIndex",
|
|
385
|
-
"onUpdate:modelValue": o[24] || (o[24] = (
|
|
386
|
-
onChange: o[25] || (o[25] = (
|
|
386
|
+
"onUpdate:modelValue": o[24] || (o[24] = (l) => e.parametersPageConfiguration.seo.robots = l),
|
|
387
|
+
onChange: o[25] || (o[25] = (l) => e.$emit("update:parametersPageConfiguration.seo.robots", l.target.value)),
|
|
387
388
|
class: "w-full px-4 py-2.5 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm transition-colors cursor-pointer"
|
|
388
389
|
}, [...o[41] || (o[41] = [
|
|
389
390
|
t("option", { value: "index, follow" }, "Index Follow", -1),
|
|
390
391
|
t("option", { value: "noindex, nofollow" }, "Noindex Nofollow", -1)
|
|
391
392
|
])], 544), [
|
|
392
|
-
[
|
|
393
|
+
[Q, e.parametersPageConfiguration.seo.robots]
|
|
393
394
|
])
|
|
394
395
|
]),
|
|
395
|
-
t("div",
|
|
396
|
+
t("div", it, [
|
|
396
397
|
o[43] || (o[43] = t("label", {
|
|
397
398
|
for: "pageTitle",
|
|
398
399
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
399
400
|
}, " Título de la página ", -1)),
|
|
400
|
-
|
|
401
|
+
U(t("input", {
|
|
401
402
|
id: "pageTitle",
|
|
402
403
|
type: "text",
|
|
403
|
-
"onUpdate:modelValue": o[26] || (o[26] = (
|
|
404
|
-
onInput: o[27] || (o[27] = (
|
|
404
|
+
"onUpdate:modelValue": o[26] || (o[26] = (l) => e.parametersPageConfiguration.seo.title = l),
|
|
405
|
+
onInput: o[27] || (o[27] = (l) => e.$emit("update:parametersPageConfiguration.seo.title", l.target.value)),
|
|
405
406
|
class: "w-full px-4 py-2.5 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm transition-colors",
|
|
406
407
|
placeholder: "Ingresa el título de la página"
|
|
407
408
|
}, null, 544), [
|
|
408
|
-
[
|
|
409
|
+
[te, e.parametersPageConfiguration.seo.title]
|
|
409
410
|
])
|
|
410
411
|
]),
|
|
411
|
-
t("div",
|
|
412
|
+
t("div", dt, [
|
|
412
413
|
o[44] || (o[44] = t("label", {
|
|
413
414
|
for: "pageDescription",
|
|
414
415
|
class: "block text-sm font-medium text-slate-600 mb-2"
|
|
415
416
|
}, " Descripción de la página ", -1)),
|
|
416
|
-
|
|
417
|
+
U(t("textarea", {
|
|
417
418
|
id: "pageDescription",
|
|
418
|
-
"onUpdate:modelValue": o[28] || (o[28] = (
|
|
419
|
-
onInput: o[29] || (o[29] = (
|
|
419
|
+
"onUpdate:modelValue": o[28] || (o[28] = (l) => e.parametersPageConfiguration.seo.description = l),
|
|
420
|
+
onInput: o[29] || (o[29] = (l) => e.$emit("update:parametersPageConfiguration.seo.description", l.target.value)),
|
|
420
421
|
class: "w-full px-4 py-3 border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white text-sm transition-colors",
|
|
421
422
|
placeholder: "Ingresa la descripción de la página",
|
|
422
423
|
rows: "3"
|
|
423
424
|
}, null, 544), [
|
|
424
|
-
[
|
|
425
|
+
[te, e.parametersPageConfiguration.seo.description]
|
|
425
426
|
])
|
|
426
427
|
])
|
|
427
428
|
])
|
|
428
429
|
])
|
|
429
430
|
])
|
|
430
|
-
])) :
|
|
431
|
+
])) : P("", !0)
|
|
431
432
|
], 512);
|
|
432
433
|
}
|
|
433
|
-
const
|
|
434
|
+
const ct = /* @__PURE__ */ Se(ke, [["render", ut]]), mt = {
|
|
434
435
|
key: 0,
|
|
435
436
|
class: "absolute top-0 left-0 bg-white/90 w-full h-full z-100"
|
|
436
|
-
},
|
|
437
|
+
}, bt = { class: "w-full flex justify-end p-4" }, gt = ["for"], ft = {
|
|
437
438
|
key: 0,
|
|
438
439
|
class: "text-red-500"
|
|
439
|
-
},
|
|
440
|
+
}, pt = ["id", "name", "placeholder", "required", "value", "onInput"], vt = ["id", "name", "data-mandatoryCrops", "placeholder", "required", "value", "onInput"], xt = ["id", "name", "required", "value", "onInput"], ht = ["value"], wt = ["id", "name", "required", "checked", "onChange"], de = /* @__PURE__ */ X({
|
|
440
441
|
__name: "FieldsForm",
|
|
441
442
|
props: {
|
|
442
443
|
object: {
|
|
@@ -453,111 +454,133 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
453
454
|
}
|
|
454
455
|
},
|
|
455
456
|
setup(e) {
|
|
456
|
-
const o = e,
|
|
457
|
-
const
|
|
458
|
-
|
|
457
|
+
const o = e, f = (p, l) => {
|
|
458
|
+
const s = (o.object.fields || []).find((m) => m.name === p);
|
|
459
|
+
s && (s.example_value = l);
|
|
460
|
+
}, F = (p) => {
|
|
461
|
+
var y;
|
|
462
|
+
const l = p.target;
|
|
463
|
+
if (!l) return;
|
|
464
|
+
const s = l.id, m = (o.object.fields || []).find(
|
|
465
|
+
(u) => u.type === "image" && s.includes(u.name)
|
|
466
|
+
);
|
|
467
|
+
if (m) {
|
|
468
|
+
const u = l.value || ((y = p.detail) == null ? void 0 : y.value) || "";
|
|
469
|
+
m.example_value = u, console.log("[FieldsForm] Limbo image selected, field:", m.name, "value:", u);
|
|
470
|
+
}
|
|
471
|
+
}, $ = (p) => {
|
|
472
|
+
const l = p.target;
|
|
473
|
+
if (!l || !l.classList.contains("js-limbo")) return;
|
|
474
|
+
const s = l.id, m = (o.object.fields || []).find(
|
|
475
|
+
(y) => y.type === "image" && s.includes(y.name)
|
|
476
|
+
);
|
|
477
|
+
m && (m.example_value = l.value, console.log("[FieldsForm] Input change detected, field:", m.name, "value:", l.value));
|
|
459
478
|
};
|
|
460
|
-
return (
|
|
461
|
-
|
|
479
|
+
return ne(() => {
|
|
480
|
+
document.addEventListener("limbo:imageSelected", F), document.addEventListener("limbo:resultReady", F), document.addEventListener("change", $);
|
|
481
|
+
}), xe(() => {
|
|
482
|
+
document.removeEventListener("limbo:imageSelected", F), document.removeEventListener("limbo:resultReady", F), document.removeEventListener("change", $);
|
|
483
|
+
}), (p, l) => (r(), i(T, null, [
|
|
484
|
+
e.showForm ? (r(), i("div", mt)) : P("", !0),
|
|
462
485
|
t("div", {
|
|
463
|
-
class:
|
|
486
|
+
class: Y(e.showForm ? "relative top-0 w-full text-slate-600 border-1 my-2 px-4 pt-2 pb-3 w-full border-slate-200 bg-slate-50 inline-block rounded-lg flex flex-col z-101" : "hidden")
|
|
464
487
|
}, [
|
|
465
|
-
t("div",
|
|
488
|
+
t("div", bt, [
|
|
466
489
|
t("span", {
|
|
467
|
-
onClick:
|
|
468
|
-
(...
|
|
490
|
+
onClick: l[0] || (l[0] = //@ts-ignore
|
|
491
|
+
(...s) => e.toggleShowForm && e.toggleShowForm(...s)),
|
|
469
492
|
class: "cursor-pointer hover:scale-125 transition-all duration-300"
|
|
470
493
|
}, "❌")
|
|
471
494
|
]),
|
|
472
495
|
t("form", null, [
|
|
473
|
-
(
|
|
474
|
-
key:
|
|
496
|
+
(r(!0), i(T, null, z(e.object.fields, (s, m) => (r(), i("div", {
|
|
497
|
+
key: m,
|
|
475
498
|
class: "mb-4"
|
|
476
499
|
}, [
|
|
477
500
|
t("label", {
|
|
478
|
-
for: `${e.object.id}-${
|
|
501
|
+
for: `${e.object.id}-${s.name}-${m}`,
|
|
479
502
|
class: "block text-sm font-medium mb-1"
|
|
480
503
|
}, [
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
], 8,
|
|
484
|
-
|
|
504
|
+
D(h(s.label) + " ", 1),
|
|
505
|
+
s.mandatory ? (r(), i("span", ft, "*")) : P("", !0)
|
|
506
|
+
], 8, gt),
|
|
507
|
+
s.type === "text" ? (r(), i("input", {
|
|
485
508
|
key: 0,
|
|
486
|
-
id: `${e.object.id}-${
|
|
487
|
-
name: `${e.object.id}-${
|
|
509
|
+
id: `${e.object.id}-${s.name}-${m}`,
|
|
510
|
+
name: `${e.object.id}-${s.name}-${m}`,
|
|
488
511
|
type: "text",
|
|
489
512
|
class: "w-full px-3 py-2 border border-slate-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-400",
|
|
490
|
-
placeholder:
|
|
491
|
-
required:
|
|
492
|
-
value:
|
|
493
|
-
onInput: (
|
|
494
|
-
}, null, 40,
|
|
495
|
-
|
|
513
|
+
placeholder: s.label,
|
|
514
|
+
required: s.mandatory,
|
|
515
|
+
value: s.example_value,
|
|
516
|
+
onInput: (y) => f(s.name, y.target.value)
|
|
517
|
+
}, null, 40, pt)) : P("", !0),
|
|
518
|
+
s.type === "image" ? (r(), i("input", {
|
|
496
519
|
key: 1,
|
|
497
|
-
id: `${e.object.id}-${
|
|
498
|
-
name: `${e.object.id}-${
|
|
499
|
-
"data-mandatoryCrops":
|
|
520
|
+
id: `${e.object.id}-${s.name}-${m}`,
|
|
521
|
+
name: `${e.object.id}-${s.name}-${m}`,
|
|
522
|
+
"data-mandatoryCrops": s.image_cuts ? JSON.stringify(s.image_cuts) : null,
|
|
500
523
|
type: "text",
|
|
501
524
|
class: "js-limbo w-full px-3 py-2 border border-slate-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-400",
|
|
502
|
-
placeholder:
|
|
503
|
-
required:
|
|
504
|
-
value:
|
|
505
|
-
onInput: (
|
|
506
|
-
}, null, 40,
|
|
525
|
+
placeholder: s.label,
|
|
526
|
+
required: s.mandatory,
|
|
527
|
+
value: s.example_value,
|
|
528
|
+
onInput: (y) => f(s.name, y.target.value)
|
|
529
|
+
}, null, 40, vt)) : s.type === "textArea" ? (r(), ce(J($e), {
|
|
507
530
|
key: 2,
|
|
508
531
|
theme: "snow",
|
|
509
|
-
id: `${e.object.id}-${
|
|
510
|
-
name: `${e.object.id}-${
|
|
532
|
+
id: `${e.object.id}-${s.name}-${m}`,
|
|
533
|
+
name: `${e.object.id}-${s.name}-${m}`,
|
|
511
534
|
rows: "3",
|
|
512
535
|
class: "w-full px-3 py-2 border border-slate-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-400 z-9999",
|
|
513
|
-
placeholder:
|
|
514
|
-
required:
|
|
515
|
-
"onUpdate:content": (
|
|
516
|
-
|
|
536
|
+
placeholder: s.label,
|
|
537
|
+
required: s.mandatory,
|
|
538
|
+
"onUpdate:content": (y) => {
|
|
539
|
+
f(s.name, y);
|
|
517
540
|
},
|
|
518
|
-
content:
|
|
519
|
-
modelValue:
|
|
520
|
-
"onUpdate:modelValue": (
|
|
541
|
+
content: s.example_value,
|
|
542
|
+
modelValue: s.example_value,
|
|
543
|
+
"onUpdate:modelValue": (y) => s.example_value = y,
|
|
521
544
|
contentType: "html"
|
|
522
|
-
}, null, 8, ["id", "name", "placeholder", "required", "onUpdate:content", "content", "modelValue", "onUpdate:modelValue"])) :
|
|
545
|
+
}, null, 8, ["id", "name", "placeholder", "required", "onUpdate:content", "content", "modelValue", "onUpdate:modelValue"])) : s.type === "select" ? (r(), i("select", {
|
|
523
546
|
key: 3,
|
|
524
|
-
id: `${e.object.id}-${
|
|
525
|
-
name: `${e.object.id}-${
|
|
547
|
+
id: `${e.object.id}-${s.name}-${m}`,
|
|
548
|
+
name: `${e.object.id}-${s.name}-${m}`,
|
|
526
549
|
class: "w-full px-3 py-2 border border-slate-300 rounded focus:outline-none focus:ring-2 focus:ring-blue-400",
|
|
527
|
-
required:
|
|
528
|
-
value:
|
|
529
|
-
onInput: (
|
|
550
|
+
required: s.mandatory,
|
|
551
|
+
value: s.example_value,
|
|
552
|
+
onInput: (y) => f(s.name, y.target.value)
|
|
530
553
|
}, [
|
|
531
|
-
|
|
554
|
+
l[1] || (l[1] = t("option", {
|
|
532
555
|
disabled: "",
|
|
533
556
|
value: ""
|
|
534
557
|
}, "Seleccione una opción", -1)),
|
|
535
|
-
(
|
|
536
|
-
key:
|
|
537
|
-
value:
|
|
538
|
-
},
|
|
539
|
-
], 40,
|
|
558
|
+
(r(!0), i(T, null, z(s.options || [], (y, u) => (r(), i("option", {
|
|
559
|
+
key: u,
|
|
560
|
+
value: y
|
|
561
|
+
}, h(y), 9, ht))), 128))
|
|
562
|
+
], 40, xt)) : s.type === "boolean" ? (r(), i("input", {
|
|
540
563
|
key: 4,
|
|
541
|
-
id: `${e.object.id}-${
|
|
542
|
-
name: `${e.object.id}-${
|
|
564
|
+
id: `${e.object.id}-${s.name}-${m}`,
|
|
565
|
+
name: `${e.object.id}-${s.name}-${m}`,
|
|
543
566
|
type: "checkbox",
|
|
544
567
|
class: "h-4 w-4 text-blue-600 focus:ring-blue-500 border-slate-300 rounded inline-block",
|
|
545
|
-
required:
|
|
546
|
-
checked:
|
|
547
|
-
onChange: (
|
|
548
|
-
}, null, 40,
|
|
568
|
+
required: s.mandatory,
|
|
569
|
+
checked: s.example_value,
|
|
570
|
+
onChange: (y) => f(s.name, y.target.checked)
|
|
571
|
+
}, null, 40, wt)) : P("", !0)
|
|
549
572
|
]))), 128))
|
|
550
573
|
])
|
|
551
574
|
], 2)
|
|
552
575
|
], 64));
|
|
553
576
|
}
|
|
554
|
-
}),
|
|
577
|
+
}), yt = { class: "space-y-4" }, Ct = ["disabled"], $t = ["value"], kt = { class: "space-y-3" }, St = {
|
|
555
578
|
key: 0,
|
|
556
579
|
class: "overflow-y-auto space-y-3"
|
|
557
|
-
},
|
|
580
|
+
}, Ft = { class: "block text-sm font-semibold text-slate-600 mb-2" }, Pt = ["onChange", "disabled"], jt = ["value"], Mt = ["onChange", "disabled"], It = ["onInput", "disabled", "placeholder"], At = ["disabled"], Bt = {
|
|
558
581
|
key: 0,
|
|
559
582
|
class: "animate-spin"
|
|
560
|
-
},
|
|
583
|
+
}, Et = { key: 1 }, Tt = /* @__PURE__ */ X({
|
|
561
584
|
__name: "SourceFilter",
|
|
562
585
|
props: {
|
|
563
586
|
onSubmit: {
|
|
@@ -574,13 +597,13 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
574
597
|
}
|
|
575
598
|
},
|
|
576
599
|
setup(e) {
|
|
577
|
-
const o = e,
|
|
578
|
-
const
|
|
600
|
+
const o = e, f = j(!1), F = j(null), $ = j({}), p = Z(() => {
|
|
601
|
+
const u = o.isProduction;
|
|
579
602
|
return [
|
|
580
603
|
{
|
|
581
604
|
id: "origen1",
|
|
582
605
|
name: "El Derecho",
|
|
583
|
-
apiUrl:
|
|
606
|
+
apiUrl: u ? "https://elderecho.com/feed" : "https://led-dev-elderecho-dev.eu.els.local/feed",
|
|
584
607
|
filters: [
|
|
585
608
|
{ id: "title", label: "Título del Post", type: "text" },
|
|
586
609
|
{ id: "category", label: "Slug de la Categoría", type: "text" },
|
|
@@ -594,7 +617,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
594
617
|
{
|
|
595
618
|
id: "origen2",
|
|
596
619
|
name: "Formación",
|
|
597
|
-
apiUrl:
|
|
620
|
+
apiUrl: u ? "https://lefebvre.es/formacion/feed" : "http://led-dev-lefebvre-dev.eu.els.local/formacion/feed",
|
|
598
621
|
filters: [
|
|
599
622
|
{ id: "id", label: "ID del curso", type: "text" },
|
|
600
623
|
{ id: "title", label: "Título del Post", type: "text" },
|
|
@@ -606,153 +629,153 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
606
629
|
{
|
|
607
630
|
id: "origen3",
|
|
608
631
|
name: "Derecholocal",
|
|
609
|
-
apiUrl:
|
|
632
|
+
apiUrl: u ? "https://derecholocal.es/feed" : "https://led-dev-derecholocal-dev.eu.els.local/feed",
|
|
610
633
|
filters: []
|
|
611
634
|
},
|
|
612
635
|
{
|
|
613
636
|
id: "origen4",
|
|
614
637
|
name: "EspacioAsesoría",
|
|
615
|
-
apiUrl:
|
|
638
|
+
apiUrl: u ? "https://espacioasesoria.com/feed" : "https://led-dev-espacioasesoria-dev.eu.els.local/feed",
|
|
616
639
|
filters: []
|
|
617
640
|
},
|
|
618
641
|
{
|
|
619
642
|
id: "origen5",
|
|
620
643
|
name: "EspacioPymes",
|
|
621
|
-
apiUrl:
|
|
644
|
+
apiUrl: u ? "https://espaciopymes.com/feed" : "https://led-dev-espaciopymes-dev.eu.els.local/feed",
|
|
622
645
|
filters: []
|
|
623
646
|
}
|
|
624
647
|
];
|
|
625
|
-
}),
|
|
626
|
-
if (
|
|
648
|
+
}), l = Z(() => {
|
|
649
|
+
if (!F.value)
|
|
627
650
|
return [];
|
|
628
|
-
const
|
|
629
|
-
return
|
|
630
|
-
}),
|
|
631
|
-
|
|
632
|
-
},
|
|
633
|
-
|
|
634
|
-
},
|
|
635
|
-
|
|
636
|
-
const
|
|
637
|
-
if (!
|
|
638
|
-
console.error("Origen no encontrado"),
|
|
651
|
+
const u = p.value.find((n) => n.id === F.value);
|
|
652
|
+
return u ? u.filters : [];
|
|
653
|
+
}), s = (u, n) => {
|
|
654
|
+
$.value[u] = n;
|
|
655
|
+
}, m = () => {
|
|
656
|
+
$.value = {};
|
|
657
|
+
}, y = async () => {
|
|
658
|
+
f.value = !0;
|
|
659
|
+
const u = p.value.find((a) => a.id === F.value);
|
|
660
|
+
if (!u) {
|
|
661
|
+
console.error("Origen no encontrado"), f.value = !1;
|
|
639
662
|
return;
|
|
640
663
|
}
|
|
641
|
-
const
|
|
642
|
-
Object.keys(
|
|
643
|
-
|
|
664
|
+
const n = new URL(u.apiUrl);
|
|
665
|
+
Object.keys($.value).forEach((a) => {
|
|
666
|
+
$.value[a] && n.searchParams.append(a, $.value[a]);
|
|
644
667
|
});
|
|
645
668
|
try {
|
|
646
|
-
const
|
|
669
|
+
const v = await (await fetch(n.toString(), {
|
|
647
670
|
method: "GET",
|
|
648
671
|
headers: {
|
|
649
672
|
Accept: "text/xml, application/xml"
|
|
650
673
|
}
|
|
651
|
-
})).text(),
|
|
652
|
-
const
|
|
653
|
-
return Array.from(
|
|
654
|
-
|
|
655
|
-
const
|
|
656
|
-
|
|
657
|
-
}) :
|
|
658
|
-
}),
|
|
674
|
+
})).text(), I = new DOMParser().parseFromString(v, "text/xml"), g = Array.from(I.querySelectorAll("item")).map((d) => {
|
|
675
|
+
const b = {};
|
|
676
|
+
return Array.from(d.children).forEach((q) => {
|
|
677
|
+
q.children.length > 0 ? Array.from(q.children).forEach((V) => {
|
|
678
|
+
const k = `${q.nodeName}_${V.nodeName}`;
|
|
679
|
+
b[k] = V.textContent || "";
|
|
680
|
+
}) : b[q.nodeName] = q.textContent || "";
|
|
681
|
+
}), b;
|
|
659
682
|
});
|
|
660
683
|
o.onSubmit(g);
|
|
661
|
-
} catch (
|
|
662
|
-
console.error("Error al aplicar filtros:",
|
|
684
|
+
} catch (a) {
|
|
685
|
+
console.error("Error al aplicar filtros:", a), o.onSubmit([]);
|
|
663
686
|
} finally {
|
|
664
|
-
const
|
|
665
|
-
name:
|
|
666
|
-
url:
|
|
687
|
+
const a = {
|
|
688
|
+
name: u.name,
|
|
689
|
+
url: n.toString()
|
|
667
690
|
};
|
|
668
|
-
o.updateFeedCriteria(
|
|
691
|
+
o.updateFeedCriteria(a), f.value = !1;
|
|
669
692
|
}
|
|
670
693
|
};
|
|
671
|
-
return (
|
|
694
|
+
return (u, n) => (r(), i("div", yt, [
|
|
672
695
|
t("div", null, [
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
"onUpdate:modelValue":
|
|
696
|
+
n[1] || (n[1] = t("label", { class: "block text-sm font-semibold text-slate-600 mb-2" }, "Seleccionar origen:", -1)),
|
|
697
|
+
U(t("select", {
|
|
698
|
+
"onUpdate:modelValue": n[0] || (n[0] = (a) => F.value = a),
|
|
676
699
|
class: "w-full px-3 py-2.5 bg-white border border-slate-200 rounded-lg shadow-sm focus:border-emerald-400 focus:ring-2 focus:ring-emerald-500/20 transition-all duration-200 disabled:bg-slate-100 disabled:cursor-not-allowed cursor-pointer",
|
|
677
|
-
onChange:
|
|
678
|
-
disabled:
|
|
700
|
+
onChange: m,
|
|
701
|
+
disabled: f.value
|
|
679
702
|
}, [
|
|
680
|
-
(
|
|
681
|
-
key:
|
|
682
|
-
value:
|
|
683
|
-
},
|
|
684
|
-
], 40,
|
|
685
|
-
[
|
|
703
|
+
(r(!0), i(T, null, z(p.value, (a) => (r(), i("option", {
|
|
704
|
+
key: a.id,
|
|
705
|
+
value: a.id
|
|
706
|
+
}, h(a.name), 9, $t))), 128))
|
|
707
|
+
], 40, Ct), [
|
|
708
|
+
[Q, F.value]
|
|
686
709
|
])
|
|
687
710
|
]),
|
|
688
|
-
t("div",
|
|
689
|
-
|
|
690
|
-
(
|
|
691
|
-
key:
|
|
711
|
+
t("div", kt, [
|
|
712
|
+
l.value.length > 0 ? (r(), i("div", St, [
|
|
713
|
+
(r(!0), i(T, null, z(l.value, (a) => (r(), i("div", {
|
|
714
|
+
key: a.id,
|
|
692
715
|
class: "bg-gradient-to-br from-slate-50 to-white p-4 rounded-xl border border-slate-200"
|
|
693
716
|
}, [
|
|
694
|
-
t("label",
|
|
695
|
-
|
|
717
|
+
t("label", Ft, h(a.label) + ":", 1),
|
|
718
|
+
a.type === "select" ? (r(), i("select", {
|
|
696
719
|
key: 0,
|
|
697
720
|
class: "w-full px-3 py-2.5 bg-white border border-slate-200 rounded-lg shadow-sm focus:border-emerald-400 focus:ring-2 focus:ring-emerald-500/20 transition-all duration-200 disabled:bg-slate-100 disabled:cursor-not-allowed cursor-pointer",
|
|
698
|
-
onChange: (
|
|
699
|
-
disabled:
|
|
721
|
+
onChange: (v) => s(a.id, v.target.value),
|
|
722
|
+
disabled: f.value
|
|
700
723
|
}, [
|
|
701
|
-
|
|
702
|
-
(
|
|
703
|
-
key:
|
|
704
|
-
value:
|
|
705
|
-
}, v
|
|
706
|
-
], 40,
|
|
724
|
+
n[2] || (n[2] = t("option", { value: "" }, "Seleccionar...", -1)),
|
|
725
|
+
(r(!0), i(T, null, z(a.options, (v) => (r(), i("option", {
|
|
726
|
+
key: v,
|
|
727
|
+
value: v
|
|
728
|
+
}, h(v), 9, jt))), 128))
|
|
729
|
+
], 40, Pt)) : a.type === "date" ? (r(), i("input", {
|
|
707
730
|
key: 1,
|
|
708
731
|
type: "date",
|
|
709
732
|
class: "w-full px-3 py-2.5 bg-white border border-slate-200 rounded-lg shadow-sm focus:border-emerald-400 focus:ring-2 focus:ring-emerald-500/20 transition-all duration-200 disabled:bg-slate-100 disabled:cursor-not-allowed",
|
|
710
|
-
onChange: (
|
|
711
|
-
disabled:
|
|
712
|
-
}, null, 40,
|
|
733
|
+
onChange: (v) => s(a.id, v.target.value),
|
|
734
|
+
disabled: f.value
|
|
735
|
+
}, null, 40, Mt)) : a.type === "text" ? (r(), i("input", {
|
|
713
736
|
key: 2,
|
|
714
737
|
type: "text",
|
|
715
738
|
class: "w-full px-3 py-2.5 bg-white border border-slate-200 rounded-lg shadow-sm focus:border-emerald-400 focus:ring-2 focus:ring-emerald-500/20 transition-all duration-200 disabled:bg-slate-100 disabled:cursor-not-allowed",
|
|
716
|
-
onInput: (
|
|
717
|
-
disabled:
|
|
718
|
-
placeholder:
|
|
719
|
-
}, null, 40,
|
|
739
|
+
onInput: (v) => s(a.id, v.target.value),
|
|
740
|
+
disabled: f.value,
|
|
741
|
+
placeholder: a.label
|
|
742
|
+
}, null, 40, It)) : P("", !0)
|
|
720
743
|
]))), 128))
|
|
721
|
-
])) :
|
|
744
|
+
])) : P("", !0),
|
|
722
745
|
t("button", {
|
|
723
746
|
type: "button",
|
|
724
|
-
onClick:
|
|
747
|
+
onClick: y,
|
|
725
748
|
class: "cursor-pointer w-full bg-gradient-to-r from-emerald-500 to-teal-500 text-white font-semibold px-4 py-3 rounded-xl shadow-md hover:from-emerald-600 hover:to-teal-600 hover:shadow-lg transform hover:-translate-y-0.5 transition-all duration-200 disabled:from-slate-300 disabled:to-slate-400 disabled:cursor-not-allowed disabled:transform-none disabled:shadow-none flex items-center justify-center gap-2",
|
|
726
|
-
disabled:
|
|
749
|
+
disabled: f.value
|
|
727
750
|
}, [
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
], 8,
|
|
751
|
+
f.value ? (r(), i("span", Bt, "⏳")) : (r(), i("span", Et, "🔍")),
|
|
752
|
+
D(" " + h(f.value ? "Conectando con el feed..." : "Aplicar Filtros"), 1)
|
|
753
|
+
], 8, At)
|
|
731
754
|
])
|
|
732
755
|
]));
|
|
733
756
|
}
|
|
734
|
-
}),
|
|
757
|
+
}), Ot = { class: "fixed top-0 left-0 w-full h-full bg-gradient-to-br from-slate-50 via-white to-slate-100 flex flex-col z-9999 p-6" }, Dt = { class: "w-full flex justify-between items-center mb-4" }, Rt = { class: "w-full flex-1 bg-white/60 rounded-2xl flex gap-5 p-5 overflow-hidden backdrop-blur-sm border border-slate-200 shadow-inner" }, Ut = { class: "flex-1 flex flex-col gap-5" }, Vt = { class: "flex flex-col bg-white rounded-2xl shadow-lg border border-slate-200 p-5 overflow-y-auto" }, zt = {
|
|
735
758
|
key: 0,
|
|
736
759
|
class: "mb-4 p-4 bg-gradient-to-br from-emerald-50 to-teal-50 rounded-xl border border-emerald-200 w-full flex-shrink-0 text-sm font-medium text-emerald-700"
|
|
737
|
-
},
|
|
760
|
+
}, Nt = { class: "list-none mt-3 space-y-2 text-slate-600" }, Lt = { class: "flex items-start gap-2" }, qt = { class: "font-semibold text-slate-700" }, Gt = { class: "flex items-start gap-2" }, Wt = { class: "font-semibold text-slate-700" }, Jt = { class: "font-semibold text-slate-700" }, Ht = { class: "flex items-start gap-2" }, Yt = { class: "flex flex-wrap gap-2 mt-1" }, Kt = { class: "font-semibold text-slate-700" }, Qt = { class: "text-emerald-600" }, Xt = { class: "flex flex-col gap-4 w-full" }, Zt = { class: "flex items-center gap-3 cursor-pointer group" }, _t = {
|
|
738
761
|
key: 0,
|
|
739
762
|
class: "flex flex-col gap-4 ml-8 p-4 bg-gradient-to-br from-slate-50 to-white rounded-xl border border-slate-200"
|
|
740
|
-
},
|
|
763
|
+
}, eo = { class: "flex flex-col gap-2" }, to = { class: "flex flex-col gap-2" }, oo = { class: "flex-1 flex flex-col bg-white rounded-2xl shadow-lg border border-slate-200 p-5 overflow-y-auto" }, no = { class: "flex-1 flex flex-col bg-white rounded-2xl shadow-lg border border-slate-200 p-5 overflow-y-auto" }, lo = {
|
|
741
764
|
key: 0,
|
|
742
765
|
class: "flex-1 flex flex-col items-center justify-center text-slate-400"
|
|
743
|
-
},
|
|
766
|
+
}, ao = {
|
|
744
767
|
key: 1,
|
|
745
768
|
class: "space-y-3"
|
|
746
|
-
},
|
|
769
|
+
}, ro = ["onClick"], so = { class: "font-bold text-slate-800 mb-2" }, io = { class: "text-sm text-slate-600 line-clamp-2" }, uo = { class: "flex-1 flex flex-col bg-white rounded-2xl shadow-lg border border-slate-200 p-5 overflow-y-auto" }, co = {
|
|
747
770
|
key: 0,
|
|
748
771
|
class: "flex-1 flex flex-col items-center justify-center text-slate-400"
|
|
749
|
-
},
|
|
772
|
+
}, mo = {
|
|
750
773
|
key: 1,
|
|
751
774
|
class: "space-y-3"
|
|
752
|
-
},
|
|
775
|
+
}, bo = { class: "block text-sm font-bold text-slate-700 mb-2 flex items-center gap-2" }, go = ["onUpdate:modelValue"], fo = ["value"], po = {
|
|
753
776
|
key: 0,
|
|
754
777
|
class: "mt-3 p-3 bg-gradient-to-br from-emerald-50 to-teal-50 rounded-lg border border-emerald-200"
|
|
755
|
-
},
|
|
778
|
+
}, vo = { class: "mt-1 text-sm font-medium text-slate-700 break-words" }, xo = /* @__PURE__ */ X({
|
|
756
779
|
__name: "FeedComponent",
|
|
757
780
|
props: {
|
|
758
781
|
object: {
|
|
@@ -773,283 +796,283 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
773
796
|
}
|
|
774
797
|
},
|
|
775
798
|
setup(e) {
|
|
776
|
-
const o = e,
|
|
777
|
-
|
|
778
|
-
},
|
|
779
|
-
|
|
780
|
-
},
|
|
781
|
-
const g = o.object.fields.filter((
|
|
782
|
-
var
|
|
799
|
+
const o = e, f = j(null), F = j(null), $ = j(!1), p = j(1), l = j("horizontal"), s = j({}), m = j(null), y = (g) => {
|
|
800
|
+
f.value = g;
|
|
801
|
+
}, u = (g) => {
|
|
802
|
+
F.value = g;
|
|
803
|
+
}, n = () => {
|
|
804
|
+
const g = o.object.fields.filter((d) => d.mappedTo).map((d) => {
|
|
805
|
+
var b;
|
|
783
806
|
return {
|
|
784
|
-
fieldName:
|
|
785
|
-
mappedTo:
|
|
786
|
-
value: ((
|
|
807
|
+
fieldName: d.name,
|
|
808
|
+
mappedTo: d.mappedTo,
|
|
809
|
+
value: ((b = F.value) == null ? void 0 : b[d.mappedTo]) ?? null
|
|
787
810
|
};
|
|
788
811
|
});
|
|
789
|
-
|
|
790
|
-
...
|
|
791
|
-
dynamicUpdate:
|
|
792
|
-
elementCount:
|
|
793
|
-
orientation:
|
|
794
|
-
mapping: g.map(({ fieldName:
|
|
795
|
-
}, o.updateObjectByFeedContent && o.updateObjectByFeedContent(g,
|
|
796
|
-
},
|
|
797
|
-
|
|
798
|
-
},
|
|
812
|
+
m.value = {
|
|
813
|
+
...s.value,
|
|
814
|
+
dynamicUpdate: $.value,
|
|
815
|
+
elementCount: p.value,
|
|
816
|
+
orientation: l.value,
|
|
817
|
+
mapping: g.map(({ fieldName: d, mappedTo: b }) => ({ fieldName: d, mappedTo: b }))
|
|
818
|
+
}, o.updateObjectByFeedContent && o.updateObjectByFeedContent(g, m.value), o.toggleFeedSection();
|
|
819
|
+
}, a = (g) => {
|
|
820
|
+
s.value = g;
|
|
821
|
+
}, v = () => {
|
|
799
822
|
var g;
|
|
800
|
-
(g = o.object) != null && g.repeat_data && (
|
|
823
|
+
(g = o.object) != null && g.repeat_data && (m.value = o.object.repeat_data, $.value = o.object.repeat_data.dynamicUpdate || !1, p.value = o.object.repeat_data.elementCount || 1, l.value = o.object.repeat_data.orientation || "horizontal", s.value = {
|
|
801
824
|
name: o.object.repeat_data.name,
|
|
802
825
|
url: o.object.repeat_data.url
|
|
803
826
|
});
|
|
804
|
-
},
|
|
805
|
-
|
|
806
|
-
},
|
|
827
|
+
}, L = () => {
|
|
828
|
+
m.value = null, $.value = !1, p.value = 1, l.value = "horizontal", s.value = {}, o.updateObjectByFeedContent && o.updateObjectByFeedContent([], null);
|
|
829
|
+
}, I = () => {
|
|
807
830
|
var g;
|
|
808
|
-
|
|
809
|
-
...
|
|
810
|
-
dynamicUpdate:
|
|
811
|
-
elementCount:
|
|
812
|
-
orientation:
|
|
813
|
-
}, o.updateObjectByFeedContent && o.updateObjectByFeedContent(((g =
|
|
814
|
-
fieldName:
|
|
815
|
-
mappedTo:
|
|
831
|
+
m.value && (m.value = {
|
|
832
|
+
...m.value,
|
|
833
|
+
dynamicUpdate: $.value,
|
|
834
|
+
elementCount: p.value,
|
|
835
|
+
orientation: l.value
|
|
836
|
+
}, o.updateObjectByFeedContent && o.updateObjectByFeedContent(((g = m.value.mapping) == null ? void 0 : g.map((d) => ({
|
|
837
|
+
fieldName: d.fieldName,
|
|
838
|
+
mappedTo: d.mappedTo,
|
|
816
839
|
value: null
|
|
817
|
-
}))) || [],
|
|
840
|
+
}))) || [], m.value));
|
|
818
841
|
};
|
|
819
|
-
return
|
|
820
|
-
|
|
821
|
-
}), (g,
|
|
822
|
-
t("div",
|
|
823
|
-
|
|
842
|
+
return ne(() => {
|
|
843
|
+
v();
|
|
844
|
+
}), (g, d) => (r(), i("div", Ot, [
|
|
845
|
+
t("div", Dt, [
|
|
846
|
+
d[5] || (d[5] = t("h2", { class: "text-xl font-bold bg-gradient-to-r from-slate-700 to-slate-500 bg-clip-text text-transparent flex items-center gap-3" }, [
|
|
824
847
|
t("span", { class: "text-xl" }, "🍺"),
|
|
825
|
-
|
|
848
|
+
D(" Configuración de Feed ")
|
|
826
849
|
], -1)),
|
|
827
850
|
t("button", {
|
|
828
|
-
onClick:
|
|
829
|
-
(...
|
|
851
|
+
onClick: d[0] || (d[0] = //@ts-ignore
|
|
852
|
+
(...b) => e.toggleFeedSection && e.toggleFeedSection(...b)),
|
|
830
853
|
class: "cursor-pointer group w-10 h-10 flex items-center justify-center bg-white hover:bg-red-50 border border-red-200 hover:border-red-400 text-red-400 hover:text-red-600 rounded-full font-semibold shadow-sm hover:shadow-lg transition-all duration-200"
|
|
831
|
-
}, [...
|
|
854
|
+
}, [...d[4] || (d[4] = [
|
|
832
855
|
t("span", { class: "text-lg" }, "✕", -1)
|
|
833
856
|
])])
|
|
834
857
|
]),
|
|
835
|
-
t("div",
|
|
836
|
-
t("div",
|
|
837
|
-
t("div",
|
|
838
|
-
|
|
858
|
+
t("div", Rt, [
|
|
859
|
+
t("div", Ut, [
|
|
860
|
+
t("div", Vt, [
|
|
861
|
+
m.value && m.value.dynamicUpdate ? (r(), i("div", zt, [
|
|
839
862
|
t("div", { class: "flex justify-between items-start" }, [
|
|
840
|
-
|
|
863
|
+
d[8] || (d[8] = t("p", { class: "flex items-center gap-2" }, [
|
|
841
864
|
t("span", { class: "text-emerald-500" }, "✓"),
|
|
842
|
-
|
|
865
|
+
D(" Hay un criterio de feed establecido: ")
|
|
843
866
|
], -1)),
|
|
844
867
|
t("div", { class: "flex items-center gap-2" }, [
|
|
845
868
|
t("button", {
|
|
846
|
-
onClick:
|
|
869
|
+
onClick: I,
|
|
847
870
|
class: "cursor-pointer px-3 py-1.5 bg-white hover:bg-emerald-50 text-emerald-500 hover:text-emerald-600 border border-emerald-200 hover:border-emerald-300 rounded-lg text-xs font-semibold transition-all duration-200 flex items-center gap-1 shadow-sm"
|
|
848
|
-
}, [...
|
|
871
|
+
}, [...d[6] || (d[6] = [
|
|
849
872
|
t("span", null, "💾", -1),
|
|
850
|
-
|
|
873
|
+
D(" Guardar ", -1)
|
|
851
874
|
])]),
|
|
852
875
|
t("button", {
|
|
853
|
-
onClick:
|
|
876
|
+
onClick: L,
|
|
854
877
|
class: "cursor-pointer px-3 py-1.5 bg-white hover:bg-red-50 text-red-500 hover:text-red-600 border border-red-200 hover:border-red-300 rounded-lg text-xs font-semibold transition-all duration-200 flex items-center gap-1 shadow-sm"
|
|
855
|
-
}, [...
|
|
878
|
+
}, [...d[7] || (d[7] = [
|
|
856
879
|
t("span", null, "✕", -1),
|
|
857
|
-
|
|
880
|
+
D(" Borrar ", -1)
|
|
858
881
|
])])
|
|
859
882
|
])
|
|
860
883
|
]),
|
|
861
|
-
t("ul",
|
|
862
|
-
t("li",
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
t("span",
|
|
884
|
+
t("ul", Nt, [
|
|
885
|
+
t("li", Lt, [
|
|
886
|
+
d[9] || (d[9] = t("span", { class: "text-emerald-400" }, "→", -1)),
|
|
887
|
+
d[10] || (d[10] = D(" Conectar con ", -1)),
|
|
888
|
+
t("span", qt, h(m.value.name), 1)
|
|
866
889
|
]),
|
|
867
|
-
t("li",
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
t("span",
|
|
871
|
-
|
|
872
|
-
t("span",
|
|
873
|
-
|
|
890
|
+
t("li", Gt, [
|
|
891
|
+
d[11] || (d[11] = t("span", { class: "text-emerald-400" }, "→", -1)),
|
|
892
|
+
d[12] || (d[12] = D(" Recuperar ", -1)),
|
|
893
|
+
t("span", Wt, h(m.value.elementCount), 1),
|
|
894
|
+
d[13] || (d[13] = D(" items (", -1)),
|
|
895
|
+
t("span", Jt, h(m.value.orientation), 1),
|
|
896
|
+
d[14] || (d[14] = D(")", -1))
|
|
874
897
|
]),
|
|
875
898
|
t("li", Ht, [
|
|
876
|
-
|
|
899
|
+
d[17] || (d[17] = t("span", { class: "text-emerald-400" }, "→", -1)),
|
|
877
900
|
t("div", null, [
|
|
878
|
-
|
|
879
|
-
t("div",
|
|
880
|
-
(
|
|
881
|
-
key:
|
|
901
|
+
d[16] || (d[16] = D(" Mapeo: ", -1)),
|
|
902
|
+
t("div", Yt, [
|
|
903
|
+
(r(!0), i(T, null, z(m.value.mapping, (b, q) => (r(), i("span", {
|
|
904
|
+
key: q,
|
|
882
905
|
class: "inline-flex items-center gap-1 px-2 py-0.5 bg-white rounded-full text-xs border border-slate-200"
|
|
883
906
|
}, [
|
|
884
|
-
t("span",
|
|
885
|
-
|
|
886
|
-
t("span",
|
|
907
|
+
t("span", Kt, h(b.fieldName), 1),
|
|
908
|
+
d[15] || (d[15] = t("span", { class: "text-slate-400" }, "←", -1)),
|
|
909
|
+
t("span", Qt, h(b.mappedTo), 1)
|
|
887
910
|
]))), 128))
|
|
888
911
|
])
|
|
889
912
|
])
|
|
890
913
|
])
|
|
891
914
|
])
|
|
892
|
-
])) :
|
|
893
|
-
t("div",
|
|
894
|
-
t("label",
|
|
895
|
-
|
|
915
|
+
])) : P("", !0),
|
|
916
|
+
t("div", Xt, [
|
|
917
|
+
t("label", Zt, [
|
|
918
|
+
U(t("input", {
|
|
896
919
|
type: "checkbox",
|
|
897
|
-
"onUpdate:modelValue":
|
|
920
|
+
"onUpdate:modelValue": d[1] || (d[1] = (b) => $.value = b),
|
|
898
921
|
class: "w-5 h-5 text-emerald-500 border-2 border-slate-300 rounded focus:ring-emerald-500 cursor-pointer"
|
|
899
922
|
}, null, 512), [
|
|
900
|
-
[
|
|
923
|
+
[ae, $.value]
|
|
901
924
|
]),
|
|
902
|
-
|
|
925
|
+
d[18] || (d[18] = t("span", { class: "font-medium text-slate-700 group-hover:text-slate-900 transition-colors" }, "Actualizar dinámicamente según criterios del feed", -1))
|
|
903
926
|
]),
|
|
904
|
-
|
|
905
|
-
|
|
927
|
+
$.value ? (r(), i("div", _t, [
|
|
928
|
+
d[22] || (d[22] = t("div", { class: "p-3 bg-gradient-to-r from-amber-50 to-yellow-50 rounded-lg border border-amber-200 text-sm text-amber-700" }, [
|
|
906
929
|
t("div", { class: "flex items-start gap-2" }, [
|
|
907
930
|
t("span", { class: "text-amber-500 mt-0.5" }, "ℹ️"),
|
|
908
931
|
t("p", null, [
|
|
909
932
|
t("strong", null, "Nota:"),
|
|
910
|
-
|
|
933
|
+
D(" Los valores que verás al relacionar campos son solo un ejemplo de referencia. En el momento de renderizar, se mostrarán los datos reales obtenidos del feed según los criterios configurados. ")
|
|
911
934
|
])
|
|
912
935
|
])
|
|
913
936
|
], -1)),
|
|
914
|
-
t("div",
|
|
915
|
-
|
|
916
|
-
|
|
937
|
+
t("div", eo, [
|
|
938
|
+
d[19] || (d[19] = t("label", { class: "text-sm font-semibold text-slate-600" }, "Cantidad de elementos:", -1)),
|
|
939
|
+
U(t("input", {
|
|
917
940
|
type: "number",
|
|
918
|
-
"onUpdate:modelValue":
|
|
941
|
+
"onUpdate:modelValue": d[2] || (d[2] = (b) => p.value = b),
|
|
919
942
|
min: "1",
|
|
920
943
|
class: "w-32 px-3 py-2 border border-slate-200 rounded-lg focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 transition-colors"
|
|
921
944
|
}, null, 512), [
|
|
922
945
|
[
|
|
923
|
-
|
|
924
|
-
|
|
946
|
+
te,
|
|
947
|
+
p.value,
|
|
925
948
|
void 0,
|
|
926
949
|
{ number: !0 }
|
|
927
950
|
]
|
|
928
951
|
])
|
|
929
952
|
]),
|
|
930
|
-
t("div",
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
"onUpdate:modelValue":
|
|
953
|
+
t("div", to, [
|
|
954
|
+
d[21] || (d[21] = t("label", { class: "text-sm font-semibold text-slate-600" }, "Orientación:", -1)),
|
|
955
|
+
U(t("select", {
|
|
956
|
+
"onUpdate:modelValue": d[3] || (d[3] = (b) => l.value = b),
|
|
934
957
|
class: "w-48 px-3 py-2 border border-slate-200 rounded-lg focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white transition-colors cursor-pointer"
|
|
935
|
-
}, [...
|
|
958
|
+
}, [...d[20] || (d[20] = [
|
|
936
959
|
t("option", {
|
|
937
960
|
value: "horizontal",
|
|
938
961
|
selected: ""
|
|
939
962
|
}, "Horizontal", -1),
|
|
940
963
|
t("option", { value: "vertical" }, "Vertical", -1)
|
|
941
964
|
])], 512), [
|
|
942
|
-
[
|
|
965
|
+
[Q, l.value]
|
|
943
966
|
])
|
|
944
967
|
])
|
|
945
|
-
])) :
|
|
968
|
+
])) : P("", !0)
|
|
946
969
|
])
|
|
947
970
|
]),
|
|
948
|
-
t("div",
|
|
949
|
-
|
|
971
|
+
t("div", oo, [
|
|
972
|
+
d[23] || (d[23] = t("h3", { class: "text-lg font-bold mb-5 text-slate-700 pb-2 flex items-center gap-2 border-b border-slate-100" }, [
|
|
950
973
|
t("span", { class: "text-xl" }, "🔍"),
|
|
951
|
-
|
|
974
|
+
D(" Orígenes y Filtros ")
|
|
952
975
|
], -1)),
|
|
953
|
-
|
|
954
|
-
onSubmit:
|
|
955
|
-
updateFeedCriteria:
|
|
976
|
+
H(Tt, {
|
|
977
|
+
onSubmit: y,
|
|
978
|
+
updateFeedCriteria: a,
|
|
956
979
|
isProduction: e.isProduction
|
|
957
980
|
}, null, 8, ["isProduction"])
|
|
958
981
|
])
|
|
959
982
|
]),
|
|
960
|
-
t("div",
|
|
961
|
-
|
|
983
|
+
t("div", no, [
|
|
984
|
+
d[25] || (d[25] = t("h3", { class: "text-lg font-bold mb-5 text-slate-700 pb-2 flex items-center gap-2 border-b border-slate-100" }, [
|
|
962
985
|
t("span", { class: "text-xl" }, "📰"),
|
|
963
|
-
|
|
986
|
+
D(" Contenidos ")
|
|
964
987
|
], -1)),
|
|
965
|
-
!
|
|
988
|
+
!f.value || f.value.length === 0 ? (r(), i("div", lo, [...d[24] || (d[24] = [
|
|
966
989
|
t("span", { class: "text-5xl mb-3 opacity-50" }, "📭", -1),
|
|
967
990
|
t("p", { class: "text-sm font-medium" }, "No hay contenidos disponibles", -1),
|
|
968
991
|
t("p", { class: "text-xs mt-1 text-slate-300" }, "Selecciona un origen para cargar contenidos", -1)
|
|
969
|
-
])])) : (
|
|
970
|
-
(
|
|
971
|
-
key:
|
|
992
|
+
])])) : (r(), i("ul", ao, [
|
|
993
|
+
(r(!0), i(T, null, z(f.value, (b, q) => (r(), i("li", {
|
|
994
|
+
key: q,
|
|
972
995
|
class: "p-4 bg-gradient-to-br from-slate-50 to-white rounded-xl shadow-sm hover:shadow-md cursor-pointer hover:scale-[1.01] transition-all duration-200 border border-slate-200 hover:border-emerald-300",
|
|
973
|
-
onClick: (
|
|
996
|
+
onClick: (V) => u(b)
|
|
974
997
|
}, [
|
|
975
|
-
t("h4",
|
|
976
|
-
t("p",
|
|
977
|
-
], 8,
|
|
998
|
+
t("h4", so, h(b.title || b.titulo || "Sin título"), 1),
|
|
999
|
+
t("p", io, h(b.description || b.descripcion || b.content || "Sin descripción"), 1)
|
|
1000
|
+
], 8, ro))), 128))
|
|
978
1001
|
]))
|
|
979
1002
|
]),
|
|
980
|
-
t("div",
|
|
981
|
-
|
|
1003
|
+
t("div", uo, [
|
|
1004
|
+
d[31] || (d[31] = t("h3", { class: "text-lg font-bold mb-5 text-slate-700 pb-2 flex items-center gap-2 border-b border-slate-100" }, [
|
|
982
1005
|
t("span", { class: "text-xl" }, "🔗"),
|
|
983
|
-
|
|
1006
|
+
D(" Relacionar Contenido ")
|
|
984
1007
|
], -1)),
|
|
985
|
-
|
|
986
|
-
(
|
|
987
|
-
key:
|
|
1008
|
+
F.value ? (r(), i("div", mo, [
|
|
1009
|
+
(r(!0), i(T, null, z(e.object.fields, (b, q) => (r(), i("div", {
|
|
1010
|
+
key: q,
|
|
988
1011
|
class: "p-4 bg-gradient-to-br from-slate-50 to-white rounded-xl border border-slate-200"
|
|
989
1012
|
}, [
|
|
990
|
-
t("label",
|
|
991
|
-
|
|
992
|
-
|
|
1013
|
+
t("label", bo, [
|
|
1014
|
+
d[27] || (d[27] = t("span", { class: "text-base" }, "⚙️", -1)),
|
|
1015
|
+
D(" " + h(b.name), 1)
|
|
993
1016
|
]),
|
|
994
|
-
|
|
995
|
-
"onUpdate:modelValue": (
|
|
1017
|
+
U(t("select", {
|
|
1018
|
+
"onUpdate:modelValue": (V) => b.mappedTo = V,
|
|
996
1019
|
class: "w-full px-3 py-2.5 border border-slate-200 rounded-lg focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 transition-all bg-white cursor-pointer"
|
|
997
1020
|
}, [
|
|
998
|
-
|
|
999
|
-
(
|
|
1000
|
-
key:
|
|
1001
|
-
value:
|
|
1002
|
-
},
|
|
1003
|
-
], 8,
|
|
1004
|
-
[
|
|
1021
|
+
d[28] || (d[28] = t("option", { value: "" }, "-- Seleccionar campo --", -1)),
|
|
1022
|
+
(r(!0), i(T, null, z(F.value, (V, k) => (r(), i("option", {
|
|
1023
|
+
key: k,
|
|
1024
|
+
value: k
|
|
1025
|
+
}, h(k), 9, fo))), 128))
|
|
1026
|
+
], 8, go), [
|
|
1027
|
+
[Q, b.mappedTo]
|
|
1005
1028
|
]),
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
t("p",
|
|
1009
|
-
])) :
|
|
1029
|
+
b.mappedTo ? (r(), i("div", po, [
|
|
1030
|
+
d[29] || (d[29] = t("span", { class: "text-xs font-semibold text-emerald-600 uppercase tracking-wide" }, "Vista previa:", -1)),
|
|
1031
|
+
t("p", vo, h(F.value[b.mappedTo]), 1)
|
|
1032
|
+
])) : P("", !0)
|
|
1010
1033
|
]))), 128)),
|
|
1011
1034
|
t("button", {
|
|
1012
|
-
onClick:
|
|
1035
|
+
onClick: n,
|
|
1013
1036
|
class: "cursor-pointer w-full mt-4 px-5 py-3 bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white font-semibold rounded-xl shadow-md hover:shadow-lg transition-all duration-200 transform hover:scale-[1.01] flex items-center justify-center gap-2"
|
|
1014
|
-
}, [...
|
|
1037
|
+
}, [...d[30] || (d[30] = [
|
|
1015
1038
|
t("span", { class: "text-lg" }, "✓", -1),
|
|
1016
1039
|
t("span", null, "Alimentar el componente", -1)
|
|
1017
1040
|
])])
|
|
1018
|
-
])) : (
|
|
1041
|
+
])) : (r(), i("div", co, [...d[26] || (d[26] = [
|
|
1019
1042
|
t("span", { class: "text-5xl mb-3 opacity-50" }, "👆", -1),
|
|
1020
1043
|
t("p", { class: "text-sm font-medium text-center" }, [
|
|
1021
|
-
|
|
1044
|
+
D("Selecciona un contenido"),
|
|
1022
1045
|
t("br"),
|
|
1023
|
-
|
|
1046
|
+
D("para relacionar")
|
|
1024
1047
|
], -1)
|
|
1025
1048
|
])]))
|
|
1026
1049
|
])
|
|
1027
1050
|
])
|
|
1028
1051
|
]));
|
|
1029
1052
|
}
|
|
1030
|
-
}),
|
|
1053
|
+
}), ho = { class: "absolute -top-2.5 left-3 text-[11px] font-medium tracking-wide bg-gradient-to-r from-slate-700 to-slate-600 text-white px-3 py-0.5 rounded-full shadow-sm" }, wo = { class: "w-full text-right flex justify-between items-center mt-1" }, yo = { class: "flex gap-3 items-center" }, Co = { class: "bg-rose-50 border border-rose-200 text-rose-500 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wider rounded-md" }, $o = {
|
|
1031
1054
|
key: 0,
|
|
1032
1055
|
class: "flex-1 flex justify-center"
|
|
1033
|
-
},
|
|
1056
|
+
}, ko = { class: "flex justify-end items-center gap-3" }, So = { class: "bg-violet-50 border border-violet-200 text-violet-600 rounded-md px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wider" }, Fo = {
|
|
1034
1057
|
key: 0,
|
|
1035
1058
|
class: "flex gap-1 bg-slate-50 rounded-lg p-1"
|
|
1036
|
-
},
|
|
1059
|
+
}, Po = {
|
|
1037
1060
|
key: 0,
|
|
1038
1061
|
class: "text-[10px] bg-amber-100 text-amber-700 px-1.5 rounded-full font-medium"
|
|
1039
|
-
},
|
|
1062
|
+
}, jo = { class: "mt-2 flex items-center" }, Mo = { class: "font-medium text-slate-700" }, Io = { key: 0 }, Ao = { key: 1 }, Bo = {
|
|
1040
1063
|
key: 0,
|
|
1041
1064
|
class: "mt-3 p-3 bg-gradient-to-r from-sky-50 to-blue-50 rounded-lg text-sm text-slate-600 border border-sky-100"
|
|
1042
|
-
},
|
|
1065
|
+
}, Eo = { class: "mt-3 flex gap-1.5 flex-wrap" }, To = { class: "absolute top-0 left-0 w-full h-full opacity-0 group-hover/component:opacity-100 bg-gradient-to-br from-white/90 via-slate-50/95 to-slate-100/90 backdrop-blur-[2px] z-99 transition-all duration-300 rounded-xl" }, Oo = { class: "absolute top-2 right-2 group/info z-10" }, Do = { class: "absolute top-6 right-0 w-64 p-3 bg-white rounded-lg shadow-lg border border-slate-200 opacity-0 invisible group-hover/info:opacity-100 group-hover/info:visible transition-all duration-200 text-xs text-slate-600 leading-relaxed" }, Ro = { class: "flex justify-center h-full items-center p-4 gap-3" }, Uo = {
|
|
1043
1066
|
key: 0,
|
|
1044
1067
|
title: "Mover componente",
|
|
1045
1068
|
class: "handle cursor-grab flex items-center bg-white border border-slate-200 px-4 py-2 rounded-xl hover:bg-slate-700 hover:border-slate-700 hover:text-white shadow-sm hover:shadow-md transition-all duration-200 group/btn"
|
|
1046
|
-
},
|
|
1069
|
+
}, Vo = {
|
|
1047
1070
|
key: 1,
|
|
1048
1071
|
class: "flex-1 flex justify-center items-center"
|
|
1049
|
-
},
|
|
1072
|
+
}, zo = { class: "flex flex-col items-center" }, No = {
|
|
1050
1073
|
key: 0,
|
|
1051
1074
|
class: "text-[10px] mt-0.5 opacity-70"
|
|
1052
|
-
},
|
|
1075
|
+
}, Lo = ["id"], ge = /* @__PURE__ */ X({
|
|
1053
1076
|
__name: "InitialComponent",
|
|
1054
1077
|
props: {
|
|
1055
1078
|
object: {
|
|
@@ -1061,6 +1084,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1061
1084
|
fullwidthMode: Boolean,
|
|
1062
1085
|
addComponentToColumn: Function,
|
|
1063
1086
|
removeComponent: Function,
|
|
1087
|
+
cloneComponent: Function,
|
|
1064
1088
|
section: String,
|
|
1065
1089
|
renderApiDomain: String,
|
|
1066
1090
|
insideComponentBox: {
|
|
@@ -1073,91 +1097,119 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1073
1097
|
}
|
|
1074
1098
|
},
|
|
1075
1099
|
setup(e) {
|
|
1076
|
-
const o = e,
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
}
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1100
|
+
const o = e, f = {
|
|
1101
|
+
DEV: "https://led-dev-limbo-dev.eu.els.local",
|
|
1102
|
+
PROD: "https://limbo.lefebvre.es"
|
|
1103
|
+
}, F = (k) => k ? k.startsWith("/files/") ? (o.isProduction ? f.PROD : f.DEV) + k : k : "", $ = (k) => {
|
|
1104
|
+
var M, B;
|
|
1105
|
+
if (!k) return "";
|
|
1106
|
+
const c = k.replace(/"/g, '"').replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/'/g, "'");
|
|
1107
|
+
try {
|
|
1108
|
+
const G = JSON.parse(c), N = (_) => _ && !_.startsWith("blob:"), K = (M = G.images) == null ? void 0 : M.find((_) => N(_ == null ? void 0 : _.url));
|
|
1109
|
+
return K ? F(K.url) : N((B = G.original) == null ? void 0 : B.url) ? F(G.original.url) : N(G.url) ? F(G.url) : "";
|
|
1110
|
+
} catch {
|
|
1111
|
+
return c.startsWith("blob:") ? "" : c.startsWith("/files/") ? F(c) : c.startsWith("http") || c.startsWith("/") ? c : k.startsWith("{") ? "" : k;
|
|
1112
|
+
}
|
|
1113
|
+
}, p = Math.random().toString(36).substring(2, 15), l = j(!1), s = j(!1), m = j(null), y = j(null), u = j(!1), n = j(!1);
|
|
1114
|
+
le(() => o.isComponentMode, (k) => {
|
|
1115
|
+
k || a();
|
|
1116
|
+
}), le(() => o.object, () => {
|
|
1117
|
+
a();
|
|
1118
|
+
}, { deep: !0 }), le(u, async (k) => {
|
|
1119
|
+
k && (await he(), V());
|
|
1083
1120
|
});
|
|
1084
|
-
const
|
|
1085
|
-
|
|
1086
|
-
|
|
1121
|
+
const a = () => {
|
|
1122
|
+
m.value && clearTimeout(m.value), m.value = setTimeout(() => {
|
|
1123
|
+
V();
|
|
1087
1124
|
}, 500);
|
|
1088
|
-
},
|
|
1125
|
+
}, v = () => {
|
|
1089
1126
|
if (o.isComponentMode) return;
|
|
1090
|
-
const
|
|
1091
|
-
|
|
1092
|
-
|
|
1127
|
+
const k = new IntersectionObserver((c) => {
|
|
1128
|
+
c.forEach((M) => {
|
|
1129
|
+
M.isIntersecting && !u.value && (u.value = !0, k.disconnect());
|
|
1093
1130
|
});
|
|
1094
1131
|
}, { threshold: 0.1 });
|
|
1095
|
-
|
|
1096
|
-
},
|
|
1097
|
-
const
|
|
1098
|
-
|
|
1099
|
-
},
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
}), o.object.repeat_data =
|
|
1103
|
-
},
|
|
1104
|
-
|
|
1105
|
-
},
|
|
1106
|
-
|
|
1107
|
-
},
|
|
1108
|
-
|
|
1109
|
-
const
|
|
1110
|
-
if (!
|
|
1132
|
+
y.value && k.observe(y.value);
|
|
1133
|
+
}, L = (k, c) => {
|
|
1134
|
+
const M = (o.object.fields || []).find((B) => B.name === k);
|
|
1135
|
+
M && (M.example_value = c);
|
|
1136
|
+
}, I = (k, c) => {
|
|
1137
|
+
k.forEach((M) => {
|
|
1138
|
+
M.value !== void 0 && L(M.fieldName, M.value);
|
|
1139
|
+
}), o.object.repeat_data = c;
|
|
1140
|
+
}, g = () => {
|
|
1141
|
+
s.value = !s.value;
|
|
1142
|
+
}, d = () => {
|
|
1143
|
+
n.value = !n.value;
|
|
1144
|
+
}, b = () => {
|
|
1145
|
+
V(!0).then((k) => {
|
|
1146
|
+
const c = window.open("", "Preview", "width=1200,height=800");
|
|
1147
|
+
if (!c) {
|
|
1111
1148
|
alert("El navegador bloqueó la ventana emergente. Por favor, permite los popups para este sitio.");
|
|
1112
1149
|
return;
|
|
1113
1150
|
}
|
|
1114
|
-
|
|
1151
|
+
c.document.body.innerHTML = k, c.document.querySelectorAll("script").forEach((B) => {
|
|
1115
1152
|
var N;
|
|
1116
|
-
const
|
|
1117
|
-
|
|
1118
|
-
}),
|
|
1153
|
+
const G = c.document.createElement("script");
|
|
1154
|
+
B.src ? G.src = B.src : G.textContent = B.textContent, (N = B.parentNode) == null || N.replaceChild(G, B);
|
|
1155
|
+
}), c.document.close();
|
|
1119
1156
|
});
|
|
1120
|
-
},
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1157
|
+
}, q = (k) => {
|
|
1158
|
+
const c = k.fields.map((M) => {
|
|
1159
|
+
if (M.type === "image" && typeof M.example_value == "string") {
|
|
1160
|
+
const B = $(M.example_value);
|
|
1161
|
+
return {
|
|
1162
|
+
...M,
|
|
1163
|
+
example_value: B || M.example_value
|
|
1164
|
+
};
|
|
1165
|
+
}
|
|
1166
|
+
return M;
|
|
1167
|
+
});
|
|
1168
|
+
return {
|
|
1169
|
+
...k,
|
|
1170
|
+
fields: c
|
|
1171
|
+
};
|
|
1172
|
+
}, V = (k = !1) => {
|
|
1173
|
+
var G;
|
|
1174
|
+
if (!((G = o.object) != null && G.category) || o.object.category === "Repetidor") {
|
|
1175
|
+
const N = '<div style="color:white; padding: 1em 2em;background-color:#001978;border-radius:1em;border:4px solid #711978;">Componente que contiene elementos repetidos: TODO: GENERAR PREVIEW DE REPETIDORES</div>';
|
|
1176
|
+
if (k)
|
|
1177
|
+
return Promise.resolve(N);
|
|
1178
|
+
const K = document.getElementById(p);
|
|
1179
|
+
return K && (K.innerHTML = N), Promise.resolve("");
|
|
1128
1180
|
}
|
|
1129
|
-
const
|
|
1130
|
-
return fetch(
|
|
1181
|
+
const c = o.renderApiDomain ? o.renderApiDomain + "/api/preview-comp/" : "http://localhost:8003/api/preview-comp/", M = q(o.object), B = JSON.stringify({ obj: M }, null, 2);
|
|
1182
|
+
return fetch(c, {
|
|
1131
1183
|
method: "POST",
|
|
1132
1184
|
headers: { "Content-Type": "application/json" },
|
|
1133
|
-
body:
|
|
1134
|
-
}).then((
|
|
1135
|
-
if (
|
|
1136
|
-
return
|
|
1137
|
-
const
|
|
1138
|
-
return
|
|
1185
|
+
body: B
|
|
1186
|
+
}).then((N) => N.text()).then((N) => {
|
|
1187
|
+
if (k)
|
|
1188
|
+
return N;
|
|
1189
|
+
const K = document.getElementById(p);
|
|
1190
|
+
return K && (K.innerHTML = N), "";
|
|
1139
1191
|
});
|
|
1140
1192
|
};
|
|
1141
|
-
return
|
|
1142
|
-
|
|
1143
|
-
}), (
|
|
1144
|
-
|
|
1193
|
+
return ne(() => {
|
|
1194
|
+
v();
|
|
1195
|
+
}), (k, c) => (r(), i("div", null, [
|
|
1196
|
+
n.value ? (r(), ce(xo, {
|
|
1145
1197
|
key: 0,
|
|
1146
|
-
updateObjectByFeedContent:
|
|
1147
|
-
toggleFeedSection:
|
|
1198
|
+
updateObjectByFeedContent: I,
|
|
1199
|
+
toggleFeedSection: d,
|
|
1148
1200
|
object: e.object,
|
|
1149
1201
|
isProduction: e.isProduction
|
|
1150
|
-
}, null, 8, ["object", "isProduction"])) :
|
|
1202
|
+
}, null, 8, ["object", "isProduction"])) : P("", !0),
|
|
1151
1203
|
t("div", {
|
|
1152
1204
|
ref_key: "rootElement",
|
|
1153
|
-
ref:
|
|
1154
|
-
class:
|
|
1205
|
+
ref: y,
|
|
1206
|
+
class: Y(["min-h-[100px] relative group/component hover:shadow-lg hover:shadow-slate-200/50 duration-300 ease-out js-draggable-element text-slate-600 border border-slate-200 hover:border-slate-300 px-5 pt-3 pb-4 w-full bg-white inline-block rounded-xl flex flex-col mb-3 z-0 shadow-sm", { "overflow-hidden": !e.isComponentMode }])
|
|
1155
1207
|
}, [
|
|
1156
|
-
e.isComponentMode ? (
|
|
1157
|
-
t("span",
|
|
1158
|
-
t("div",
|
|
1159
|
-
t("div",
|
|
1160
|
-
|
|
1208
|
+
e.isComponentMode ? (r(), i(T, { key: 0 }, [
|
|
1209
|
+
t("span", ho, h(e.object.component_name), 1),
|
|
1210
|
+
t("div", wo, [
|
|
1211
|
+
t("div", yo, [
|
|
1212
|
+
c[10] || (c[10] = t("div", { class: "handle cursor-grab text-slate-400 hover:text-slate-600 text-lg transition-colors" }, [
|
|
1161
1213
|
t("svg", {
|
|
1162
1214
|
class: "w-5 h-5",
|
|
1163
1215
|
fill: "currentColor",
|
|
@@ -1166,73 +1218,79 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1166
1218
|
t("path", { d: "M7 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 2zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 7 14zm6-8a2 2 0 1 0-.001-4.001A2 2 0 0 0 13 6zm0 2a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 8zm0 6a2 2 0 1 0 .001 4.001A2 2 0 0 0 13 14z" })
|
|
1167
1219
|
])
|
|
1168
1220
|
], -1)),
|
|
1169
|
-
t("span",
|
|
1221
|
+
t("span", Co, h(e.object.category), 1)
|
|
1170
1222
|
]),
|
|
1171
|
-
e.fullwidthMode ? (
|
|
1223
|
+
e.fullwidthMode ? (r(), i("div", $o, [
|
|
1172
1224
|
t("div", {
|
|
1173
1225
|
class: "bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white rounded-lg px-4 py-1.5 text-xs font-medium cursor-pointer shadow-sm hover:shadow transition-all duration-200",
|
|
1174
|
-
onClick:
|
|
1175
|
-
var
|
|
1176
|
-
return (
|
|
1226
|
+
onClick: c[0] || (c[0] = (M) => {
|
|
1227
|
+
var B;
|
|
1228
|
+
return (B = e.addComponentToColumn) == null ? void 0 : B.call(e, e.object);
|
|
1177
1229
|
})
|
|
1178
1230
|
}, "Seleccionar")
|
|
1179
|
-
])) :
|
|
1180
|
-
t("div",
|
|
1181
|
-
t("span",
|
|
1182
|
-
e.insideComponentBox ?
|
|
1231
|
+
])) : P("", !0),
|
|
1232
|
+
t("div", ko, [
|
|
1233
|
+
t("span", So, h(e.object.framework), 1),
|
|
1234
|
+
e.insideComponentBox ? P("", !0) : (r(), i("div", Fo, [
|
|
1183
1235
|
t("div", {
|
|
1184
1236
|
title: "Previsualizar Dummy",
|
|
1185
|
-
onClick:
|
|
1237
|
+
onClick: c[1] || (c[1] = (M) => b()),
|
|
1186
1238
|
class: "p-1.5 rounded-md hover:bg-white hover:shadow-sm cursor-pointer transition-all duration-200 text-base"
|
|
1187
1239
|
}, "🔍"),
|
|
1188
1240
|
t("div", {
|
|
1189
1241
|
title: "Editar configuración",
|
|
1190
|
-
onClick:
|
|
1242
|
+
onClick: c[2] || (c[2] = (M) => s.value = !s.value),
|
|
1191
1243
|
class: "p-1.5 rounded-md hover:bg-white hover:shadow-sm cursor-pointer transition-all duration-200 text-base"
|
|
1192
1244
|
}, "⚙️"),
|
|
1193
1245
|
t("div", {
|
|
1194
1246
|
title: "Beber de contenido",
|
|
1195
|
-
onClick:
|
|
1247
|
+
onClick: d,
|
|
1196
1248
|
class: "p-1.5 rounded-md hover:bg-white hover:shadow-sm cursor-pointer transition-all duration-200 text-base flex items-center gap-1"
|
|
1197
1249
|
}, [
|
|
1198
|
-
|
|
1199
|
-
e.object.repeat_data ? (
|
|
1250
|
+
c[11] || (c[11] = D("⚡ ", -1)),
|
|
1251
|
+
e.object.repeat_data ? (r(), i("span", Po, h(e.object.repeat_data.elementCount), 1)) : P("", !0)
|
|
1200
1252
|
]),
|
|
1201
|
-
e.
|
|
1253
|
+
e.cloneComponent ? (r(), i("div", {
|
|
1202
1254
|
key: 0,
|
|
1255
|
+
title: "Clonar componente",
|
|
1256
|
+
onClick: c[3] || (c[3] = (M) => e.cloneComponent(e.object, e.section || "")),
|
|
1257
|
+
class: "p-1.5 rounded-md hover:bg-sky-50 hover:shadow-sm cursor-pointer transition-all duration-200 text-base"
|
|
1258
|
+
}, "📋")) : P("", !0),
|
|
1259
|
+
e.removeComponent ? (r(), i("div", {
|
|
1260
|
+
key: 1,
|
|
1203
1261
|
title: "Eliminar componente",
|
|
1204
|
-
onClick:
|
|
1262
|
+
onClick: c[4] || (c[4] = (M) => e.removeComponent(e.object, e.section || "")),
|
|
1205
1263
|
class: "p-1.5 rounded-md hover:bg-red-50 hover:shadow-sm cursor-pointer transition-all duration-200 text-base"
|
|
1206
|
-
}, "🗑️")) :
|
|
1264
|
+
}, "🗑️")) : P("", !0)
|
|
1207
1265
|
]))
|
|
1208
1266
|
])
|
|
1209
1267
|
]),
|
|
1210
|
-
|
|
1211
|
-
toggleShowForm:
|
|
1268
|
+
H(de, {
|
|
1269
|
+
toggleShowForm: g,
|
|
1212
1270
|
object: e.object,
|
|
1213
|
-
showForm:
|
|
1271
|
+
showForm: s.value
|
|
1214
1272
|
}, null, 8, ["object", "showForm"]),
|
|
1215
|
-
t("div",
|
|
1216
|
-
t("span",
|
|
1273
|
+
t("div", jo, [
|
|
1274
|
+
t("span", Mo, h(e.object.name), 1),
|
|
1217
1275
|
t("button", {
|
|
1218
1276
|
type: "button",
|
|
1219
|
-
onClick:
|
|
1277
|
+
onClick: c[5] || (c[5] = (M) => l.value = !l.value),
|
|
1220
1278
|
class: "ms-2 cursor-pointer text-xs text-slate-400 hover:text-slate-600 transition-colors w-5 h-5 rounded-full hover:bg-slate-100 flex items-center justify-center"
|
|
1221
1279
|
}, [
|
|
1222
|
-
|
|
1280
|
+
l.value ? (r(), i("span", Ao, "▲")) : (r(), i("span", Io, "▼"))
|
|
1223
1281
|
])
|
|
1224
1282
|
]),
|
|
1225
|
-
|
|
1226
|
-
t("div",
|
|
1227
|
-
(
|
|
1228
|
-
key:
|
|
1283
|
+
l.value ? (r(), i("div", Bo, h(e.object.description), 1)) : P("", !0),
|
|
1284
|
+
t("div", Eo, [
|
|
1285
|
+
(r(!0), i(T, null, z(e.object.tags, (M, B) => (r(), i("span", {
|
|
1286
|
+
key: B,
|
|
1229
1287
|
class: "bg-slate-50 text-slate-500 px-2.5 py-1 rounded-full text-[11px] font-medium border border-slate-100 hover:border-slate-200 hover:bg-slate-100 transition-colors cursor-default"
|
|
1230
|
-
},
|
|
1288
|
+
}, h(M), 1))), 128))
|
|
1231
1289
|
])
|
|
1232
|
-
], 64)) :
|
|
1233
|
-
t("div",
|
|
1234
|
-
t("div",
|
|
1235
|
-
|
|
1290
|
+
], 64)) : u.value ? (r(), i(T, { key: 1 }, [
|
|
1291
|
+
t("div", To, [
|
|
1292
|
+
t("div", Oo, [
|
|
1293
|
+
c[12] || (c[12] = t("div", { class: "w-5 h-5 rounded-full bg-slate-100 hover:bg-sky-100 border border-slate-200 hover:border-sky-300 flex items-center justify-center cursor-help transition-colors duration-200" }, [
|
|
1236
1294
|
t("svg", {
|
|
1237
1295
|
class: "w-3 h-3 text-slate-400 group-hover/info:text-sky-500",
|
|
1238
1296
|
fill: "currentColor",
|
|
@@ -1245,10 +1303,10 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1245
1303
|
})
|
|
1246
1304
|
])
|
|
1247
1305
|
], -1)),
|
|
1248
|
-
t("div",
|
|
1306
|
+
t("div", Do, h(e.object.description), 1)
|
|
1249
1307
|
]),
|
|
1250
|
-
t("div",
|
|
1251
|
-
e.insideComponentBox && !e.fullwidthMode || !e.insideComponentBox ? (
|
|
1308
|
+
t("div", Ro, [
|
|
1309
|
+
e.insideComponentBox && !e.fullwidthMode || !e.insideComponentBox ? (r(), i("div", Uo, [...c[13] || (c[13] = [
|
|
1252
1310
|
t("div", { class: "flex flex-col items-center" }, [
|
|
1253
1311
|
t("svg", {
|
|
1254
1312
|
class: "w-6 h-6 mb-1 text-slate-400 group-hover/btn:text-white",
|
|
@@ -1259,28 +1317,28 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1259
1317
|
]),
|
|
1260
1318
|
t("span", { class: "text-xs font-medium" }, "Mover")
|
|
1261
1319
|
], -1)
|
|
1262
|
-
])])) :
|
|
1263
|
-
e.insideComponentBox && e.fullwidthMode ? (
|
|
1320
|
+
])])) : P("", !0),
|
|
1321
|
+
e.insideComponentBox && e.fullwidthMode ? (r(), i("div", Vo, [
|
|
1264
1322
|
t("div", {
|
|
1265
1323
|
title: "Agregar componente a la columna",
|
|
1266
|
-
onClick:
|
|
1267
|
-
var
|
|
1268
|
-
return (
|
|
1324
|
+
onClick: c[6] || (c[6] = (M) => {
|
|
1325
|
+
var B;
|
|
1326
|
+
return (B = e.addComponentToColumn) == null ? void 0 : B.call(e, e.object);
|
|
1269
1327
|
}),
|
|
1270
1328
|
class: "cursor-pointer flex items-center bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white px-6 py-3 rounded-xl shadow-md hover:shadow-lg transition-all duration-200"
|
|
1271
|
-
}, [...
|
|
1329
|
+
}, [...c[14] || (c[14] = [
|
|
1272
1330
|
t("div", { class: "flex flex-col items-center" }, [
|
|
1273
1331
|
t("span", { class: "text-2xl mb-1" }, "🚀"),
|
|
1274
1332
|
t("span", { class: "text-sm font-medium" }, "Seleccionar")
|
|
1275
1333
|
], -1)
|
|
1276
1334
|
])])
|
|
1277
|
-
])) :
|
|
1278
|
-
e.insideComponentBox ?
|
|
1335
|
+
])) : P("", !0),
|
|
1336
|
+
e.insideComponentBox ? P("", !0) : (r(), i(T, { key: 2 }, [
|
|
1279
1337
|
t("div", {
|
|
1280
1338
|
title: "Configurar componente",
|
|
1281
|
-
onClick:
|
|
1339
|
+
onClick: c[7] || (c[7] = (M) => s.value = !s.value),
|
|
1282
1340
|
class: "cursor-pointer flex items-center bg-white border border-slate-200 px-4 py-2 rounded-xl hover:bg-slate-700 hover:border-slate-700 hover:text-white shadow-sm hover:shadow-md transition-all duration-200 group/btn"
|
|
1283
|
-
}, [...
|
|
1341
|
+
}, [...c[15] || (c[15] = [
|
|
1284
1342
|
t("div", { class: "flex flex-col items-center" }, [
|
|
1285
1343
|
t("span", { class: "text-xl mb-1" }, "⚙️"),
|
|
1286
1344
|
t("span", { class: "text-xs font-medium" }, "Configurar")
|
|
@@ -1288,55 +1346,66 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1288
1346
|
])]),
|
|
1289
1347
|
t("div", {
|
|
1290
1348
|
title: "Configurar componente",
|
|
1291
|
-
onClick:
|
|
1349
|
+
onClick: d,
|
|
1292
1350
|
class: "cursor-pointer flex items-center bg-white border border-slate-200 px-4 py-2 rounded-xl hover:bg-amber-500 hover:border-amber-500 hover:text-white shadow-sm hover:shadow-md transition-all duration-200 group/btn"
|
|
1293
1351
|
}, [
|
|
1294
|
-
t("div",
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
e.object.repeat_data && e.object.repeat_data.dynamicUpdate ? (
|
|
1352
|
+
t("div", zo, [
|
|
1353
|
+
c[16] || (c[16] = t("span", { class: "text-xl mb-1" }, "⚡", -1)),
|
|
1354
|
+
c[17] || (c[17] = t("span", { class: "text-xs font-medium" }, "Beber de contenido", -1)),
|
|
1355
|
+
e.object.repeat_data && e.object.repeat_data.dynamicUpdate ? (r(), i("span", No, "Carga " + h(e.object.repeat_data.elementCount) + " elementos", 1)) : P("", !0)
|
|
1298
1356
|
])
|
|
1299
1357
|
]),
|
|
1300
|
-
e.
|
|
1358
|
+
e.cloneComponent ? (r(), i("div", {
|
|
1301
1359
|
key: 0,
|
|
1360
|
+
title: "Clonar componente",
|
|
1361
|
+
onClick: c[8] || (c[8] = (M) => e.cloneComponent(e.object, e.section || "")),
|
|
1362
|
+
class: "cursor-pointer flex items-center bg-white border border-slate-200 px-4 py-2 rounded-xl hover:bg-sky-500 hover:border-sky-500 hover:text-white shadow-sm hover:shadow-md transition-all duration-200 group/btn"
|
|
1363
|
+
}, [...c[18] || (c[18] = [
|
|
1364
|
+
t("div", { class: "flex flex-col items-center" }, [
|
|
1365
|
+
t("span", { class: "text-xl mb-1" }, "📋"),
|
|
1366
|
+
t("span", { class: "text-xs font-medium" }, "Clonar")
|
|
1367
|
+
], -1)
|
|
1368
|
+
])])) : P("", !0),
|
|
1369
|
+
e.removeComponent ? (r(), i("div", {
|
|
1370
|
+
key: 1,
|
|
1302
1371
|
title: "Eliminar componente",
|
|
1303
|
-
onClick:
|
|
1372
|
+
onClick: c[9] || (c[9] = (M) => e.removeComponent(e.object, e.section || "")),
|
|
1304
1373
|
class: "cursor-pointer flex items-center bg-white border border-slate-200 px-4 py-2 rounded-xl hover:bg-red-500 hover:border-red-500 hover:text-white shadow-sm hover:shadow-md transition-all duration-200 group/btn"
|
|
1305
|
-
}, [...
|
|
1374
|
+
}, [...c[19] || (c[19] = [
|
|
1306
1375
|
t("div", { class: "flex flex-col items-center" }, [
|
|
1307
1376
|
t("span", { class: "text-xl mb-1" }, "🗑️"),
|
|
1308
1377
|
t("span", { class: "text-xs font-medium" }, "Eliminar")
|
|
1309
1378
|
], -1)
|
|
1310
|
-
])])) :
|
|
1379
|
+
])])) : P("", !0)
|
|
1311
1380
|
], 64))
|
|
1312
1381
|
])
|
|
1313
1382
|
]),
|
|
1314
|
-
|
|
1315
|
-
toggleShowForm:
|
|
1383
|
+
H(de, {
|
|
1384
|
+
toggleShowForm: g,
|
|
1316
1385
|
object: e.object,
|
|
1317
|
-
showForm:
|
|
1386
|
+
showForm: s.value
|
|
1318
1387
|
}, null, 8, ["object", "showForm"]),
|
|
1319
1388
|
t("div", {
|
|
1320
|
-
id:
|
|
1389
|
+
id: J(p),
|
|
1321
1390
|
class: "w-full h-full flex items-center justify-center"
|
|
1322
|
-
}, null, 8,
|
|
1323
|
-
], 64)) :
|
|
1391
|
+
}, null, 8, Lo)
|
|
1392
|
+
], 64)) : P("", !0)
|
|
1324
1393
|
], 2)
|
|
1325
1394
|
]));
|
|
1326
1395
|
}
|
|
1327
|
-
}),
|
|
1396
|
+
}), qo = { class: "absolute top-1 left-2 px-2 flex gap-3 items-center" }, Go = {
|
|
1328
1397
|
key: 0,
|
|
1329
1398
|
class: "text-[10px] font-medium text-slate-400 bg-white/80 backdrop-blur-sm px-2 py-0.5 rounded-full shadow-sm"
|
|
1330
|
-
},
|
|
1399
|
+
}, Wo = { class: "text-slate-600" }, Jo = {
|
|
1331
1400
|
key: 1,
|
|
1332
1401
|
class: "text-[10px] font-medium text-slate-400 bg-white/80 backdrop-blur-sm px-2 py-0.5 rounded-full shadow-sm"
|
|
1333
|
-
}, Ho = { class: "text-slate-600" },
|
|
1402
|
+
}, Ho = { class: "text-slate-600" }, Yo = {
|
|
1334
1403
|
key: 2,
|
|
1335
1404
|
class: "text-[10px] font-medium text-slate-400 bg-white/80 backdrop-blur-sm px-2 py-0.5 rounded-full shadow-sm"
|
|
1336
|
-
},
|
|
1405
|
+
}, Ko = { class: "text-slate-600" }, Qo = {
|
|
1337
1406
|
key: 0,
|
|
1338
1407
|
class: "my-4 w-full rounded-xl bg-white border border-slate-200 p-4 z-10 hidden group-hover:block shadow-lg"
|
|
1339
|
-
},
|
|
1408
|
+
}, Xo = { class: "p-4 bg-gradient-to-br from-slate-50 to-white rounded-lg w-full" }, Zo = { class: "flex flex-col" }, _o = ["for"], en = ["id"], tn = ["value"], on = { class: "flex flex-col" }, nn = ["for"], ln = ["id"], an = ["value"], rn = { class: "flex flex-col" }, sn = ["for"], dn = ["id"], un = ["value"], cn = { class: "absolute bottom-0 flex flex-col gap-1 w-full opacity-0 transition-all duration-300 group-hover:opacity-100" }, mn = { class: "flex justify-between gap-2 bg-white/90 backdrop-blur-sm rounded-t-xl px-3 py-1.5 shadow-sm border border-b-0 border-slate-200" }, bn = { class: "flex gap-1" }, gn = /* @__PURE__ */ X({
|
|
1340
1409
|
__name: "ColConfig",
|
|
1341
1410
|
props: {
|
|
1342
1411
|
globalPageConfiguration: Array,
|
|
@@ -1357,7 +1426,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1357
1426
|
section: String
|
|
1358
1427
|
},
|
|
1359
1428
|
setup(e) {
|
|
1360
|
-
const o = e,
|
|
1429
|
+
const o = e, f = {
|
|
1361
1430
|
width: [
|
|
1362
1431
|
{ label: "Ancho completo", value: "full" },
|
|
1363
1432
|
{ label: "1/2", value: "1/2" },
|
|
@@ -1381,193 +1450,193 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1381
1450
|
{ label: "Columna (componentes unos encima de otros)", value: "flex-col" },
|
|
1382
1451
|
{ label: "Fila (componentes unos al lado de otros)", value: "flex-row" }
|
|
1383
1452
|
]
|
|
1384
|
-
},
|
|
1385
|
-
var
|
|
1386
|
-
const
|
|
1387
|
-
(
|
|
1388
|
-
),
|
|
1389
|
-
return (
|
|
1390
|
-
}),
|
|
1391
|
-
var
|
|
1392
|
-
const
|
|
1393
|
-
(
|
|
1453
|
+
}, F = j(""), $ = j(""), p = j(""), l = j(!1), s = Z(() => {
|
|
1454
|
+
var n, a, v, L;
|
|
1455
|
+
const y = (n = o.globalPageConfiguration) == null ? void 0 : n.find(
|
|
1456
|
+
(I) => I.section === o.section
|
|
1457
|
+
), u = (L = (v = (a = y == null ? void 0 : y.rows) == null ? void 0 : a[o.rowIndex]) == null ? void 0 : v.columns) == null ? void 0 : L[o.columnIndex];
|
|
1458
|
+
return (u == null ? void 0 : u.config) || {};
|
|
1459
|
+
}), m = (y, u) => {
|
|
1460
|
+
var L;
|
|
1461
|
+
const n = F.value || f.width[0].value, a = $.value || f.gap[0].value, v = p.value || "";
|
|
1462
|
+
(L = o.updateColConfig) == null || L.call(o, y, u, o.section || "", n, a, v), l.value = !1;
|
|
1394
1463
|
};
|
|
1395
|
-
return (
|
|
1396
|
-
t("div",
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
t("span",
|
|
1400
|
-
])) :
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
t("span", Ho,
|
|
1404
|
-
])) :
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
t("span",
|
|
1408
|
-
])) :
|
|
1464
|
+
return (y, u) => (r(), i(T, null, [
|
|
1465
|
+
t("div", qo, [
|
|
1466
|
+
s.value.width !== void 0 ? (r(), i("span", Go, [
|
|
1467
|
+
u[12] || (u[12] = D(" Ancho: ", -1)),
|
|
1468
|
+
t("span", Wo, h(s.value.width), 1)
|
|
1469
|
+
])) : P("", !0),
|
|
1470
|
+
s.value.gap !== void 0 ? (r(), i("span", Jo, [
|
|
1471
|
+
u[13] || (u[13] = D(" Gap: ", -1)),
|
|
1472
|
+
t("span", Ho, h(s.value.gap), 1)
|
|
1473
|
+
])) : P("", !0),
|
|
1474
|
+
s.value.flexDirection !== void 0 ? (r(), i("span", Yo, [
|
|
1475
|
+
u[14] || (u[14] = D(" Flex: ", -1)),
|
|
1476
|
+
t("span", Ko, h(s.value.flexDirection), 1)
|
|
1477
|
+
])) : P("", !0)
|
|
1409
1478
|
]),
|
|
1410
|
-
|
|
1411
|
-
t("div",
|
|
1479
|
+
l.value ? (r(), i("div", Qo, [
|
|
1480
|
+
t("div", Xo, [
|
|
1412
1481
|
t("form", {
|
|
1413
|
-
onSubmit:
|
|
1482
|
+
onSubmit: u[4] || (u[4] = re(() => {
|
|
1414
1483
|
}, ["prevent"])),
|
|
1415
1484
|
class: "flex gap-5 w-full justify-center items-end flex-wrap"
|
|
1416
1485
|
}, [
|
|
1417
|
-
t("div",
|
|
1486
|
+
t("div", Zo, [
|
|
1418
1487
|
t("label", {
|
|
1419
1488
|
for: `colwidth-${e.rowIndex}-${e.columnIndex}`,
|
|
1420
1489
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1421
|
-
}, "Ancho:", 8,
|
|
1422
|
-
|
|
1423
|
-
"onUpdate:modelValue":
|
|
1490
|
+
}, "Ancho:", 8, _o),
|
|
1491
|
+
U(t("select", {
|
|
1492
|
+
"onUpdate:modelValue": u[0] || (u[0] = (n) => F.value = n),
|
|
1424
1493
|
id: `colwidth-${e.rowIndex}-${e.columnIndex}`,
|
|
1425
1494
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white hover:border-slate-300 transition-colors"
|
|
1426
1495
|
}, [
|
|
1427
|
-
|
|
1428
|
-
(
|
|
1429
|
-
key:
|
|
1430
|
-
value:
|
|
1431
|
-
},
|
|
1432
|
-
], 8,
|
|
1433
|
-
[
|
|
1496
|
+
u[15] || (u[15] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1497
|
+
(r(!0), i(T, null, z(f.width, (n) => (r(), i("option", {
|
|
1498
|
+
key: n.value,
|
|
1499
|
+
value: n.value
|
|
1500
|
+
}, h(n.label), 9, tn))), 128))
|
|
1501
|
+
], 8, en), [
|
|
1502
|
+
[Q, F.value]
|
|
1434
1503
|
])
|
|
1435
1504
|
]),
|
|
1436
|
-
t("div",
|
|
1505
|
+
t("div", on, [
|
|
1437
1506
|
t("label", {
|
|
1438
1507
|
for: `colgap-${e.rowIndex}-${e.columnIndex}`,
|
|
1439
1508
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1440
|
-
}, "Gap:", 8,
|
|
1441
|
-
|
|
1442
|
-
"onUpdate:modelValue":
|
|
1509
|
+
}, "Gap:", 8, nn),
|
|
1510
|
+
U(t("select", {
|
|
1511
|
+
"onUpdate:modelValue": u[1] || (u[1] = (n) => $.value = n),
|
|
1443
1512
|
id: `colgap-${e.rowIndex}-${e.columnIndex}`,
|
|
1444
1513
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white hover:border-slate-300 transition-colors"
|
|
1445
1514
|
}, [
|
|
1446
|
-
|
|
1447
|
-
(
|
|
1448
|
-
key:
|
|
1449
|
-
value:
|
|
1450
|
-
},
|
|
1451
|
-
], 8,
|
|
1452
|
-
[
|
|
1515
|
+
u[16] || (u[16] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1516
|
+
(r(!0), i(T, null, z(f.gap, (n) => (r(), i("option", {
|
|
1517
|
+
key: n.value,
|
|
1518
|
+
value: n.value
|
|
1519
|
+
}, h(n.label), 9, an))), 128))
|
|
1520
|
+
], 8, ln), [
|
|
1521
|
+
[Q, $.value]
|
|
1453
1522
|
])
|
|
1454
1523
|
]),
|
|
1455
|
-
t("div",
|
|
1524
|
+
t("div", rn, [
|
|
1456
1525
|
t("label", {
|
|
1457
1526
|
for: `flexdir-${e.rowIndex}-${e.columnIndex}`,
|
|
1458
1527
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1459
|
-
}, "Dirección:", 8,
|
|
1460
|
-
|
|
1461
|
-
"onUpdate:modelValue":
|
|
1528
|
+
}, "Dirección:", 8, sn),
|
|
1529
|
+
U(t("select", {
|
|
1530
|
+
"onUpdate:modelValue": u[2] || (u[2] = (n) => p.value = n),
|
|
1462
1531
|
id: `flexdir-${e.rowIndex}-${e.columnIndex}`,
|
|
1463
1532
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-white hover:border-slate-300 transition-colors"
|
|
1464
1533
|
}, [
|
|
1465
|
-
|
|
1466
|
-
(
|
|
1467
|
-
key:
|
|
1468
|
-
value:
|
|
1469
|
-
},
|
|
1470
|
-
], 8,
|
|
1471
|
-
[
|
|
1534
|
+
u[17] || (u[17] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1535
|
+
(r(!0), i(T, null, z(f.flexDirection, (n) => (r(), i("option", {
|
|
1536
|
+
key: n.value,
|
|
1537
|
+
value: n.value
|
|
1538
|
+
}, h(n.label), 9, un))), 128))
|
|
1539
|
+
], 8, dn), [
|
|
1540
|
+
[Q, p.value]
|
|
1472
1541
|
])
|
|
1473
1542
|
]),
|
|
1474
1543
|
t("button", {
|
|
1475
1544
|
type: "button",
|
|
1476
1545
|
class: "bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white px-5 py-2 rounded-lg font-medium shadow-sm hover:shadow-md transition-all duration-200 cursor-pointer",
|
|
1477
|
-
onClick:
|
|
1478
|
-
|
|
1546
|
+
onClick: u[3] || (u[3] = (n) => {
|
|
1547
|
+
m(e.rowIndex, e.columnIndex), l.value = !1;
|
|
1479
1548
|
})
|
|
1480
1549
|
}, " Guardar ")
|
|
1481
1550
|
], 32)
|
|
1482
1551
|
])
|
|
1483
|
-
])) :
|
|
1484
|
-
t("div",
|
|
1552
|
+
])) : P("", !0),
|
|
1553
|
+
t("div", cn, [
|
|
1485
1554
|
t("div", {
|
|
1486
|
-
class:
|
|
1555
|
+
class: Y(["flex flex-row", { "justify-between": e.section && e.section !== "Sidebar", "justify-center": e.section === "Sidebar" }])
|
|
1487
1556
|
}, [
|
|
1488
|
-
e.section && e.section !== "Sidebar" ? (
|
|
1557
|
+
e.section && e.section !== "Sidebar" ? (r(), i("button", {
|
|
1489
1558
|
key: 0,
|
|
1490
1559
|
type: "button",
|
|
1491
1560
|
title: "Añadir columna a la izquierda",
|
|
1492
|
-
onClick:
|
|
1493
|
-
var
|
|
1494
|
-
return (
|
|
1561
|
+
onClick: u[5] || (u[5] = (n) => {
|
|
1562
|
+
var a;
|
|
1563
|
+
return (a = e.addCol) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section, "left");
|
|
1495
1564
|
}),
|
|
1496
1565
|
class: "ms-2 bg-white px-3 py-1 cursor-pointer rounded-t-lg border border-b-0 border-slate-200 hover:bg-emerald-500 hover:border-emerald-500 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md font-medium"
|
|
1497
|
-
}, "+")) :
|
|
1498
|
-
t("div",
|
|
1566
|
+
}, "+")) : P("", !0),
|
|
1567
|
+
t("div", mn, [
|
|
1499
1568
|
t("button", {
|
|
1500
1569
|
type: "button",
|
|
1501
1570
|
title: "Configurar columna",
|
|
1502
|
-
onClick:
|
|
1503
|
-
class:
|
|
1571
|
+
onClick: u[6] || (u[6] = (n) => l.value = !l.value),
|
|
1572
|
+
class: Y(["px-2.5 py-1 rounded-lg cursor-pointer transition-all duration-200", l.value ? "bg-amber-100 text-amber-700 shadow-sm" : "bg-slate-100 text-slate-600 hover:bg-amber-500 hover:text-white"])
|
|
1504
1573
|
}, "⚙️", 2),
|
|
1505
|
-
t("div",
|
|
1506
|
-
e.section && e.section !== "Sidebar" ? (
|
|
1574
|
+
t("div", bn, [
|
|
1575
|
+
e.section && e.section !== "Sidebar" ? (r(), i("span", {
|
|
1507
1576
|
key: 0,
|
|
1508
1577
|
title: "Mover columna a la izquierda",
|
|
1509
|
-
onClick:
|
|
1510
|
-
var
|
|
1511
|
-
return (
|
|
1578
|
+
onClick: u[7] || (u[7] = (n) => {
|
|
1579
|
+
var a;
|
|
1580
|
+
return (a = e.moveCol) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section, "left");
|
|
1512
1581
|
}),
|
|
1513
1582
|
class: "bg-slate-100 px-2.5 py-1 cursor-pointer rounded-lg transition-all duration-200 text-slate-400 hover:bg-blue-500 hover:text-white"
|
|
1514
|
-
}, "◁")) :
|
|
1515
|
-
e.fullwidthMode ? (
|
|
1583
|
+
}, "◁")) : P("", !0),
|
|
1584
|
+
e.fullwidthMode ? (r(), i("span", {
|
|
1516
1585
|
key: 1,
|
|
1517
1586
|
title: "Añadir componente",
|
|
1518
|
-
onClick:
|
|
1519
|
-
var
|
|
1520
|
-
return (
|
|
1587
|
+
onClick: u[8] || (u[8] = (n) => {
|
|
1588
|
+
var a;
|
|
1589
|
+
return (a = e.addComponentFunction) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section || "");
|
|
1521
1590
|
}),
|
|
1522
1591
|
class: "bg-slate-100 px-2.5 py-1 cursor-pointer rounded-lg transition-all duration-200 text-slate-400 hover:bg-violet-500 hover:text-white"
|
|
1523
|
-
}, " 📦 ")) :
|
|
1524
|
-
e.section && e.section !== "Sidebar" ? (
|
|
1592
|
+
}, " 📦 ")) : P("", !0),
|
|
1593
|
+
e.section && e.section !== "Sidebar" ? (r(), i("span", {
|
|
1525
1594
|
key: 2,
|
|
1526
1595
|
title: "Mover columna a la derecha",
|
|
1527
|
-
onClick:
|
|
1528
|
-
var
|
|
1529
|
-
return (
|
|
1596
|
+
onClick: u[9] || (u[9] = (n) => {
|
|
1597
|
+
var a;
|
|
1598
|
+
return (a = e.moveCol) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section, "right");
|
|
1530
1599
|
}),
|
|
1531
1600
|
class: "bg-slate-100 px-2.5 py-1 cursor-pointer rounded-lg transition-all duration-200 text-slate-400 hover:bg-blue-500 hover:text-white"
|
|
1532
|
-
}, "▷ ")) :
|
|
1601
|
+
}, "▷ ")) : P("", !0)
|
|
1533
1602
|
]),
|
|
1534
1603
|
t("button", {
|
|
1535
1604
|
type: "button",
|
|
1536
1605
|
title: "Eliminar columna",
|
|
1537
|
-
onClick:
|
|
1538
|
-
var
|
|
1539
|
-
return (
|
|
1606
|
+
onClick: u[10] || (u[10] = (n) => {
|
|
1607
|
+
var a;
|
|
1608
|
+
return (a = e.removeCol) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section || "");
|
|
1540
1609
|
}),
|
|
1541
1610
|
class: "bg-slate-100 px-2.5 py-1 rounded-lg cursor-pointer transition-all duration-200 text-slate-600 hover:bg-red-500 hover:text-white"
|
|
1542
1611
|
}, "🗑️")
|
|
1543
1612
|
]),
|
|
1544
|
-
e.section && e.section !== "Sidebar" ? (
|
|
1613
|
+
e.section && e.section !== "Sidebar" ? (r(), i("button", {
|
|
1545
1614
|
key: 1,
|
|
1546
1615
|
type: "button",
|
|
1547
1616
|
title: "Añadir columna a la derecha",
|
|
1548
|
-
onClick:
|
|
1549
|
-
var
|
|
1550
|
-
return (
|
|
1617
|
+
onClick: u[11] || (u[11] = (n) => {
|
|
1618
|
+
var a;
|
|
1619
|
+
return (a = e.addCol) == null ? void 0 : a.call(e, e.rowIndex, e.columnIndex, e.section, "right");
|
|
1551
1620
|
}),
|
|
1552
1621
|
class: "me-2 bg-white px-3 py-1 cursor-pointer rounded-t-lg border border-b-0 border-slate-200 hover:bg-emerald-500 hover:border-emerald-500 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md font-medium"
|
|
1553
|
-
}, "+")) :
|
|
1622
|
+
}, "+")) : P("", !0)
|
|
1554
1623
|
], 2)
|
|
1555
1624
|
])
|
|
1556
1625
|
], 64));
|
|
1557
1626
|
}
|
|
1558
|
-
}),
|
|
1627
|
+
}), fn = { class: "absolute -top-1 px-2 gap-4 w-full justify-between hidden group-hover/row:flex css-pb-row-config" }, pn = { class: "flex gap-1.5" }, vn = { class: "flex gap-4 items-center" }, xn = { class: "inline-block" }, hn = {
|
|
1559
1628
|
key: 0,
|
|
1560
1629
|
class: "text-xs font-medium text-slate-400 bg-slate-50 px-2 py-1 rounded-full"
|
|
1561
|
-
},
|
|
1630
|
+
}, wn = { class: "text-slate-600" }, yn = {
|
|
1562
1631
|
key: 1,
|
|
1563
1632
|
class: "text-xs font-medium text-slate-400 bg-slate-50 px-2 py-1 rounded-full"
|
|
1564
|
-
},
|
|
1633
|
+
}, Cn = { class: "text-slate-600" }, $n = {
|
|
1565
1634
|
key: 2,
|
|
1566
1635
|
class: "text-xs font-medium text-slate-400 bg-slate-50 px-2 py-1 rounded-full"
|
|
1567
|
-
},
|
|
1636
|
+
}, kn = { class: "text-slate-600" }, Sn = { class: "flex gap-1.5" }, Fn = {
|
|
1568
1637
|
key: 0,
|
|
1569
1638
|
class: "z-1"
|
|
1570
|
-
},
|
|
1639
|
+
}, Pn = { class: "p-5 bg-white rounded-xl shadow-lg border border-slate-100 w-full mt-8" }, jn = { class: "flex flex-col" }, Mn = ["for"], In = ["id"], An = ["value"], Bn = { class: "flex flex-col" }, En = ["for"], Tn = ["id"], On = ["value"], Dn = { class: "flex flex-col" }, Rn = ["for"], Un = ["id"], Vn = ["value"], zn = /* @__PURE__ */ X({
|
|
1571
1640
|
__name: "RowConfig",
|
|
1572
1641
|
props: {
|
|
1573
1642
|
rowIndex: {
|
|
@@ -1582,7 +1651,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1582
1651
|
moveRow: Function
|
|
1583
1652
|
},
|
|
1584
1653
|
setup(e) {
|
|
1585
|
-
const o = e,
|
|
1654
|
+
const o = e, f = {
|
|
1586
1655
|
padding: [
|
|
1587
1656
|
{ label: "Ninguno", value: "0" },
|
|
1588
1657
|
{ label: "Leve", value: "4" },
|
|
@@ -1608,163 +1677,163 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1608
1677
|
{ label: "3/5", value: "3/5" },
|
|
1609
1678
|
{ label: "4/5", value: "4/5" }
|
|
1610
1679
|
]
|
|
1611
|
-
},
|
|
1612
|
-
var
|
|
1613
|
-
const
|
|
1614
|
-
(
|
|
1680
|
+
}, F = j(""), $ = j(""), p = j(""), l = j(!1), s = j(!1), m = Z(() => {
|
|
1681
|
+
var n, a;
|
|
1682
|
+
const u = (n = o.globalPageConfiguration) == null ? void 0 : n.find(
|
|
1683
|
+
(v) => v.section === o.section
|
|
1615
1684
|
);
|
|
1616
|
-
return (
|
|
1617
|
-
}),
|
|
1618
|
-
var
|
|
1619
|
-
const
|
|
1620
|
-
(
|
|
1685
|
+
return (a = u == null ? void 0 : u.rows) != null && a[o.rowIndex] ? u.rows[o.rowIndex].config || {} : {};
|
|
1686
|
+
}), y = (u) => {
|
|
1687
|
+
var L;
|
|
1688
|
+
const n = F.value || f.padding[0].value, a = $.value || f.gap[0].value, v = p.value || f.width[0].value;
|
|
1689
|
+
(L = o.updateRowConfig) == null || L.call(o, u, o.section || "", n, a, v), l.value = !1;
|
|
1621
1690
|
};
|
|
1622
|
-
return (
|
|
1623
|
-
t("div",
|
|
1691
|
+
return (u, n) => (r(), i(T, null, [
|
|
1692
|
+
t("div", fn, [
|
|
1624
1693
|
t("div", null, [
|
|
1625
|
-
t("div",
|
|
1694
|
+
t("div", pn, [
|
|
1626
1695
|
t("button", {
|
|
1627
1696
|
type: "button",
|
|
1628
1697
|
title: "Agregar fila",
|
|
1629
|
-
onClick:
|
|
1630
|
-
var
|
|
1631
|
-
(
|
|
1698
|
+
onClick: n[0] || (n[0] = (a) => {
|
|
1699
|
+
var v;
|
|
1700
|
+
(v = e.addRow) == null || v.call(e, e.rowIndex, e.section || ""), s.value = !1;
|
|
1632
1701
|
}),
|
|
1633
1702
|
class: "cursor-pointer rounded-b-lg border border-t-0 border-slate-200 bg-white hover:bg-emerald-500 hover:border-emerald-500 px-3 py-1 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md font-medium"
|
|
1634
1703
|
}, "+"),
|
|
1635
1704
|
t("button", {
|
|
1636
1705
|
type: "button",
|
|
1637
1706
|
title: "Mover fila hacia arriba",
|
|
1638
|
-
onClick:
|
|
1639
|
-
var
|
|
1640
|
-
(
|
|
1707
|
+
onClick: n[1] || (n[1] = (a) => {
|
|
1708
|
+
var v;
|
|
1709
|
+
(v = e.moveRow) == null || v.call(e, e.rowIndex, e.section || "", "up"), s.value = !1;
|
|
1641
1710
|
}),
|
|
1642
1711
|
class: "cursor-pointer rounded-b-lg border border-t-0 border-slate-200 bg-white hover:bg-blue-500 hover:border-blue-500 px-3 py-1 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md"
|
|
1643
1712
|
}, "△"),
|
|
1644
1713
|
t("button", {
|
|
1645
1714
|
type: "button",
|
|
1646
1715
|
title: "Mover fila hacia abajo",
|
|
1647
|
-
onClick:
|
|
1648
|
-
var
|
|
1649
|
-
(
|
|
1716
|
+
onClick: n[2] || (n[2] = (a) => {
|
|
1717
|
+
var v;
|
|
1718
|
+
(v = e.moveRow) == null || v.call(e, e.rowIndex, e.section || "", "down"), s.value = !1;
|
|
1650
1719
|
}),
|
|
1651
1720
|
class: "cursor-pointer rounded-b-lg border border-t-0 border-slate-200 bg-white hover:bg-blue-500 hover:border-blue-500 px-3 py-1 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md"
|
|
1652
1721
|
}, "▽")
|
|
1653
1722
|
])
|
|
1654
1723
|
]),
|
|
1655
|
-
t("div",
|
|
1656
|
-
t("div",
|
|
1724
|
+
t("div", vn, [
|
|
1725
|
+
t("div", xn, [
|
|
1657
1726
|
t("button", {
|
|
1658
1727
|
type: "button",
|
|
1659
1728
|
title: "Configurar la fila",
|
|
1660
|
-
onClick:
|
|
1661
|
-
class:
|
|
1729
|
+
onClick: n[3] || (n[3] = (a) => l.value = !l.value),
|
|
1730
|
+
class: Y(["cursor-pointer rounded-b-lg border border-t-0 px-3 py-1 transition-all duration-200 shadow-sm hover:shadow-md", l.value ? "bg-amber-100 border-amber-300 text-amber-700" : "bg-white border-slate-200 text-slate-600 hover:bg-amber-500 hover:border-amber-500 hover:text-white"])
|
|
1662
1731
|
}, "⚙️", 2)
|
|
1663
1732
|
]),
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
t("span",
|
|
1667
|
-
])) :
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
t("span",
|
|
1671
|
-
])) :
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
t("span",
|
|
1675
|
-
])) :
|
|
1733
|
+
m.value.padding !== void 0 ? (r(), i("span", hn, [
|
|
1734
|
+
n[10] || (n[10] = D(" Padding: ", -1)),
|
|
1735
|
+
t("span", wn, h(m.value.padding), 1)
|
|
1736
|
+
])) : P("", !0),
|
|
1737
|
+
m.value.gap !== void 0 ? (r(), i("span", yn, [
|
|
1738
|
+
n[11] || (n[11] = D(" Gap: ", -1)),
|
|
1739
|
+
t("span", Cn, h(m.value.gap), 1)
|
|
1740
|
+
])) : P("", !0),
|
|
1741
|
+
m.value.width !== void 0 ? (r(), i("span", $n, [
|
|
1742
|
+
n[12] || (n[12] = D(" Ancho: ", -1)),
|
|
1743
|
+
t("span", kn, h(m.value.width), 1)
|
|
1744
|
+
])) : P("", !0)
|
|
1676
1745
|
]),
|
|
1677
1746
|
t("div", null, [
|
|
1678
|
-
t("div",
|
|
1747
|
+
t("div", Sn, [
|
|
1679
1748
|
t("button", {
|
|
1680
1749
|
type: "button",
|
|
1681
1750
|
title: "Eliminar fila",
|
|
1682
|
-
onClick:
|
|
1683
|
-
var
|
|
1684
|
-
(
|
|
1751
|
+
onClick: n[4] || (n[4] = (a) => {
|
|
1752
|
+
var v;
|
|
1753
|
+
(v = e.removeRow) == null || v.call(e, e.rowIndex, e.section || ""), s.value = !1;
|
|
1685
1754
|
}),
|
|
1686
1755
|
class: "cursor-pointer rounded-b-lg border border-t-0 border-slate-200 bg-white hover:bg-red-500 hover:border-red-500 px-3 py-1 hover:text-white text-slate-600 transition-all duration-200 shadow-sm hover:shadow-md"
|
|
1687
1756
|
}, "🗑️")
|
|
1688
1757
|
])
|
|
1689
1758
|
])
|
|
1690
1759
|
]),
|
|
1691
|
-
|
|
1692
|
-
t("div",
|
|
1760
|
+
l.value ? (r(), i("div", Fn, [
|
|
1761
|
+
t("div", Pn, [
|
|
1693
1762
|
t("form", {
|
|
1694
|
-
onSubmit:
|
|
1763
|
+
onSubmit: n[9] || (n[9] = re(() => {
|
|
1695
1764
|
}, ["prevent"])),
|
|
1696
1765
|
class: "flex gap-6 w-full justify-center items-end flex-wrap"
|
|
1697
1766
|
}, [
|
|
1698
|
-
t("div",
|
|
1767
|
+
t("div", jn, [
|
|
1699
1768
|
t("label", {
|
|
1700
1769
|
for: `padding-${e.rowIndex}`,
|
|
1701
1770
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1702
|
-
}, "Padding:", 8,
|
|
1703
|
-
|
|
1704
|
-
"onUpdate:modelValue":
|
|
1771
|
+
}, "Padding:", 8, Mn),
|
|
1772
|
+
U(t("select", {
|
|
1773
|
+
"onUpdate:modelValue": n[5] || (n[5] = (a) => F.value = a),
|
|
1705
1774
|
id: `padding-${e.rowIndex}`,
|
|
1706
1775
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-slate-50 hover:bg-white transition-colors"
|
|
1707
1776
|
}, [
|
|
1708
|
-
|
|
1709
|
-
(
|
|
1710
|
-
key:
|
|
1711
|
-
value:
|
|
1712
|
-
},
|
|
1713
|
-
], 8,
|
|
1714
|
-
[
|
|
1777
|
+
n[13] || (n[13] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1778
|
+
(r(!0), i(T, null, z(f.padding, (a) => (r(), i("option", {
|
|
1779
|
+
key: a.value,
|
|
1780
|
+
value: a.value
|
|
1781
|
+
}, h(a.label), 9, An))), 128))
|
|
1782
|
+
], 8, In), [
|
|
1783
|
+
[Q, F.value]
|
|
1715
1784
|
])
|
|
1716
1785
|
]),
|
|
1717
|
-
t("div",
|
|
1786
|
+
t("div", Bn, [
|
|
1718
1787
|
t("label", {
|
|
1719
1788
|
for: `gap-${e.rowIndex}`,
|
|
1720
1789
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1721
|
-
}, "Gap:", 8,
|
|
1722
|
-
|
|
1723
|
-
"onUpdate:modelValue":
|
|
1790
|
+
}, "Gap:", 8, En),
|
|
1791
|
+
U(t("select", {
|
|
1792
|
+
"onUpdate:modelValue": n[6] || (n[6] = (a) => $.value = a),
|
|
1724
1793
|
id: `gap-${e.rowIndex}`,
|
|
1725
1794
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-slate-50 hover:bg-white transition-colors"
|
|
1726
1795
|
}, [
|
|
1727
|
-
|
|
1728
|
-
(
|
|
1729
|
-
key:
|
|
1730
|
-
value:
|
|
1731
|
-
},
|
|
1732
|
-
], 8,
|
|
1733
|
-
[
|
|
1796
|
+
n[14] || (n[14] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1797
|
+
(r(!0), i(T, null, z(f.gap, (a) => (r(), i("option", {
|
|
1798
|
+
key: a.value,
|
|
1799
|
+
value: a.value
|
|
1800
|
+
}, h(a.label), 9, On))), 128))
|
|
1801
|
+
], 8, Tn), [
|
|
1802
|
+
[Q, $.value]
|
|
1734
1803
|
])
|
|
1735
1804
|
]),
|
|
1736
|
-
t("div",
|
|
1805
|
+
t("div", Dn, [
|
|
1737
1806
|
t("label", {
|
|
1738
1807
|
for: `width-${e.rowIndex}`,
|
|
1739
1808
|
class: "block text-sm font-medium text-slate-600 mb-1.5"
|
|
1740
|
-
}, "Ancho:", 8,
|
|
1741
|
-
|
|
1742
|
-
"onUpdate:modelValue":
|
|
1809
|
+
}, "Ancho:", 8, Rn),
|
|
1810
|
+
U(t("select", {
|
|
1811
|
+
"onUpdate:modelValue": n[7] || (n[7] = (a) => p.value = a),
|
|
1743
1812
|
id: `width-${e.rowIndex}`,
|
|
1744
1813
|
class: "block w-full border border-slate-200 rounded-lg px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 bg-slate-50 hover:bg-white transition-colors"
|
|
1745
1814
|
}, [
|
|
1746
|
-
|
|
1747
|
-
(
|
|
1748
|
-
key:
|
|
1749
|
-
value:
|
|
1750
|
-
},
|
|
1751
|
-
], 8,
|
|
1752
|
-
[
|
|
1815
|
+
n[15] || (n[15] = t("option", { value: "" }, "Selecciona...", -1)),
|
|
1816
|
+
(r(!0), i(T, null, z(f.width, (a) => (r(), i("option", {
|
|
1817
|
+
key: a.value,
|
|
1818
|
+
value: a.value
|
|
1819
|
+
}, h(a.label), 9, Vn))), 128))
|
|
1820
|
+
], 8, Un), [
|
|
1821
|
+
[Q, p.value]
|
|
1753
1822
|
])
|
|
1754
1823
|
]),
|
|
1755
1824
|
t("button", {
|
|
1756
1825
|
type: "button",
|
|
1757
1826
|
class: "bg-gradient-to-r from-emerald-500 to-teal-500 hover:from-emerald-600 hover:to-teal-600 text-white px-5 py-2 rounded-lg font-medium shadow-sm hover:shadow-md transition-all duration-200 cursor-pointer",
|
|
1758
|
-
onClick:
|
|
1759
|
-
|
|
1827
|
+
onClick: n[8] || (n[8] = (a) => {
|
|
1828
|
+
y(e.rowIndex), s.value = !1;
|
|
1760
1829
|
})
|
|
1761
1830
|
}, " Guardar ")
|
|
1762
1831
|
], 32)
|
|
1763
1832
|
])
|
|
1764
|
-
])) :
|
|
1833
|
+
])) : P("", !0)
|
|
1765
1834
|
], 64));
|
|
1766
1835
|
}
|
|
1767
|
-
}),
|
|
1836
|
+
}), Nn = ["id"], Ln = { class: "flex flex-row w-full gap-3 mt-6" }, qn = ["id"], Gn = /* @__PURE__ */ X({
|
|
1768
1837
|
__name: "BodySection",
|
|
1769
1838
|
props: {
|
|
1770
1839
|
isComponentMode: Boolean,
|
|
@@ -1772,6 +1841,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1772
1841
|
globalPageConfiguration: Array,
|
|
1773
1842
|
sectionSelected: String,
|
|
1774
1843
|
removeComponent: Function,
|
|
1844
|
+
cloneComponent: Function,
|
|
1775
1845
|
addComponentFunction: Function,
|
|
1776
1846
|
addCol: Function,
|
|
1777
1847
|
addRow: Function,
|
|
@@ -1788,58 +1858,59 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1788
1858
|
}
|
|
1789
1859
|
},
|
|
1790
1860
|
setup(e) {
|
|
1791
|
-
const o = e,
|
|
1792
|
-
var
|
|
1793
|
-
const
|
|
1794
|
-
(
|
|
1861
|
+
const o = e, f = j(!1), F = Z(() => {
|
|
1862
|
+
var p;
|
|
1863
|
+
const $ = (p = o.globalPageConfiguration) == null ? void 0 : p.find(
|
|
1864
|
+
(l) => l.section === o.sectionSelected
|
|
1795
1865
|
);
|
|
1796
|
-
return (
|
|
1866
|
+
return ($ == null ? void 0 : $.rows) || [];
|
|
1797
1867
|
});
|
|
1798
|
-
return (p
|
|
1799
|
-
key: "row-" +
|
|
1800
|
-
id: "row-" + e.sectionSelected + "-" +
|
|
1868
|
+
return ($, p) => (r(!0), i(T, null, z(F.value, (l, s) => (r(), i("div", {
|
|
1869
|
+
key: "row-" + s,
|
|
1870
|
+
id: "row-" + e.sectionSelected + "-" + s,
|
|
1801
1871
|
class: "flex flex-col gap-3 w-full p-5 bg-white border border-slate-200 rounded-2xl js-row relative items-center hover:border-slate-300 hover:shadow-lg transition-all duration-300 css-pb-row group/row"
|
|
1802
1872
|
}, [
|
|
1803
|
-
|
|
1873
|
+
H(zn, {
|
|
1804
1874
|
moveRow: e.moveRow,
|
|
1805
1875
|
addRow: e.addRow,
|
|
1806
1876
|
removeRow: e.removeRow,
|
|
1807
1877
|
globalPageConfiguration: e.globalPageConfiguration,
|
|
1808
1878
|
updateRowConfig: e.updateRowConfig,
|
|
1809
|
-
rowIndex:
|
|
1879
|
+
rowIndex: s,
|
|
1810
1880
|
section: e.sectionSelected
|
|
1811
1881
|
}, null, 8, ["moveRow", "addRow", "removeRow", "globalPageConfiguration", "updateRowConfig", "rowIndex", "section"]),
|
|
1812
|
-
t("div",
|
|
1813
|
-
(
|
|
1814
|
-
class:
|
|
1882
|
+
t("div", Ln, [
|
|
1883
|
+
(r(!0), i(T, null, z(l.columns, (m, y) => (r(), i("div", {
|
|
1884
|
+
class: Y([
|
|
1815
1885
|
"hover:shadow-md overflow-hidden dragging-zone border relative border-slate-200 shadow-sm w-full p-5 pt-10 min-h-[200px] rounded-xl flex flex-col gap-3 items-center before:content-['Columna'] before:absolute before:text-slate-300 before:text-7xl before:font-bold before:bottom-4 before:left-2 before:-rotate-12 before:opacity-30 before:duration-300 before:transition-opacity group hover:before:opacity-50 transition-all duration-300",
|
|
1816
|
-
|
|
1886
|
+
f.value ? "bg-gradient-to-b from-emerald-50 to-emerald-100 border-emerald-300 shadow-emerald-100" : "bg-gradient-to-b from-slate-50 to-slate-100"
|
|
1817
1887
|
]),
|
|
1818
|
-
key: "column-" +
|
|
1819
|
-
id: "col-" + e.sectionSelected + "-" +
|
|
1888
|
+
key: "column-" + y,
|
|
1889
|
+
id: "col-" + e.sectionSelected + "-" + s + "-" + y
|
|
1820
1890
|
}, [
|
|
1821
|
-
|
|
1891
|
+
H(J(be), {
|
|
1822
1892
|
class: "h-full w-full mb-4",
|
|
1823
|
-
list:
|
|
1893
|
+
list: m.components,
|
|
1824
1894
|
group: { name: "draggingGroup", pull: !0, put: !0 },
|
|
1825
|
-
"item-key": "
|
|
1895
|
+
"item-key": "id",
|
|
1826
1896
|
handle: ".handle",
|
|
1827
|
-
onStart:
|
|
1828
|
-
onEnd:
|
|
1897
|
+
onStart: p[0] || (p[0] = (u) => f.value = !0),
|
|
1898
|
+
onEnd: p[1] || (p[1] = (u) => f.value = !1)
|
|
1829
1899
|
}, {
|
|
1830
|
-
item:
|
|
1831
|
-
|
|
1900
|
+
item: me(({ element: u }) => [
|
|
1901
|
+
H(ge, {
|
|
1832
1902
|
renderApiDomain: e.renderApiDomain,
|
|
1833
|
-
object:
|
|
1903
|
+
object: u,
|
|
1834
1904
|
"is-component-mode": e.isComponentMode,
|
|
1835
1905
|
removeComponent: e.removeComponent,
|
|
1906
|
+
cloneComponent: e.cloneComponent,
|
|
1836
1907
|
section: e.sectionSelected,
|
|
1837
1908
|
isProduction: e.isProduction
|
|
1838
|
-
}, null, 8, ["renderApiDomain", "object", "is-component-mode", "removeComponent", "section", "isProduction"])
|
|
1909
|
+
}, null, 8, ["renderApiDomain", "object", "is-component-mode", "removeComponent", "cloneComponent", "section", "isProduction"])
|
|
1839
1910
|
]),
|
|
1840
1911
|
_: 1
|
|
1841
1912
|
}, 8, ["list"]),
|
|
1842
|
-
|
|
1913
|
+
H(gn, {
|
|
1843
1914
|
section: e.sectionSelected,
|
|
1844
1915
|
globalPageConfiguration: e.globalPageConfiguration,
|
|
1845
1916
|
updateColConfig: e.updateColConfig,
|
|
@@ -1848,17 +1919,17 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1848
1919
|
addCol: e.addCol,
|
|
1849
1920
|
removeCol: e.removeCol,
|
|
1850
1921
|
moveCol: e.moveCol,
|
|
1851
|
-
rowIndex:
|
|
1852
|
-
columnIndex:
|
|
1922
|
+
rowIndex: s,
|
|
1923
|
+
columnIndex: y
|
|
1853
1924
|
}, null, 8, ["section", "globalPageConfiguration", "updateColConfig", "addComponentFunction", "fullwidthMode", "addCol", "removeCol", "moveCol", "rowIndex", "columnIndex"])
|
|
1854
|
-
], 10,
|
|
1925
|
+
], 10, qn))), 128))
|
|
1855
1926
|
])
|
|
1856
|
-
], 8,
|
|
1927
|
+
], 8, Nn))), 128));
|
|
1857
1928
|
}
|
|
1858
|
-
}),
|
|
1929
|
+
}), Wn = { class: "flex justify-between items-center mb-4" }, Jn = { class: "text-xs" }, Hn = { class: "flex flex-wrap gap-2 mb-4 bg-white border border-slate-200 p-4 rounded-xl shadow-sm" }, Yn = ["value", "checked"], Kn = { class: "my-3" }, Qn = { class: "relative" }, Xn = { class: "component-library dragging-zone w-full p-5 min-h-[200px] border border-slate-200 bg-white rounded-xl flex flex-col gap-4 items-center shadow-sm" }, Zn = {
|
|
1859
1930
|
key: 0,
|
|
1860
1931
|
class: "text-center py-8 text-slate-400"
|
|
1861
|
-
},
|
|
1932
|
+
}, ue = /* @__PURE__ */ X({
|
|
1862
1933
|
__name: "ComponentsBox",
|
|
1863
1934
|
props: {
|
|
1864
1935
|
isComponentMode: { type: Boolean },
|
|
@@ -1872,7 +1943,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1872
1943
|
excludedCategories: {}
|
|
1873
1944
|
},
|
|
1874
1945
|
setup(e) {
|
|
1875
|
-
const o = e,
|
|
1946
|
+
const o = e, f = [
|
|
1876
1947
|
"Call to Action",
|
|
1877
1948
|
"Contenido",
|
|
1878
1949
|
"Separador",
|
|
@@ -1884,26 +1955,26 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1884
1955
|
"Formulario",
|
|
1885
1956
|
"Título",
|
|
1886
1957
|
"SEO"
|
|
1887
|
-
],
|
|
1888
|
-
const
|
|
1889
|
-
return
|
|
1890
|
-
(
|
|
1891
|
-
) :
|
|
1892
|
-
}),
|
|
1893
|
-
|
|
1894
|
-
},
|
|
1895
|
-
const
|
|
1896
|
-
|
|
1958
|
+
], F = Z(() => !o.excludedCategories || o.excludedCategories.length === 0 ? f : f.filter((u) => !o.excludedCategories.includes(u))), $ = j(!0), p = j([]), l = j(""), s = Z(() => {
|
|
1959
|
+
const u = l.value.toLowerCase(), n = Object.values(o.components), a = (v) => (v.name.toLowerCase() + v.description.toLowerCase() + v.tags.join(" ").toLowerCase()).includes(u);
|
|
1960
|
+
return p.value.length > 0 ? n.filter(
|
|
1961
|
+
(v) => p.value.includes(v.category) && a(v)
|
|
1962
|
+
) : n.filter(a);
|
|
1963
|
+
}), m = (u) => {
|
|
1964
|
+
l.value = u.target.value;
|
|
1965
|
+
}, y = (u) => {
|
|
1966
|
+
const n = u.target, a = n.value;
|
|
1967
|
+
n.checked ? p.value.includes(a) || p.value.push(a) : p.value = p.value.filter((v) => v !== a);
|
|
1897
1968
|
};
|
|
1898
|
-
return (
|
|
1899
|
-
|
|
1900
|
-
t("div",
|
|
1969
|
+
return (u, n) => (r(), i(T, null, [
|
|
1970
|
+
n[6] || (n[6] = t("h1", { class: "text-center text-2xl font-semibold mb-4 text-slate-700 tracking-tight" }, "Componentes", -1)),
|
|
1971
|
+
t("div", Wn, [
|
|
1901
1972
|
t("button", {
|
|
1902
1973
|
type: "button",
|
|
1903
|
-
onClick:
|
|
1974
|
+
onClick: n[0] || (n[0] = (a) => $.value = !$.value),
|
|
1904
1975
|
class: "mb-3 px-4 py-2 bg-white rounded-lg border border-slate-200 hover:border-slate-300 hover:shadow-sm transition-all duration-200 cursor-pointer text-slate-600 font-medium flex items-center gap-2"
|
|
1905
1976
|
}, [
|
|
1906
|
-
|
|
1977
|
+
n[2] || (n[2] = t("svg", {
|
|
1907
1978
|
class: "w-4 h-4",
|
|
1908
1979
|
fill: "none",
|
|
1909
1980
|
stroke: "currentColor",
|
|
@@ -1916,38 +1987,38 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1916
1987
|
d: "M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z"
|
|
1917
1988
|
})
|
|
1918
1989
|
], -1)),
|
|
1919
|
-
|
|
1920
|
-
t("span",
|
|
1990
|
+
n[3] || (n[3] = t("span", null, "Filtros", -1)),
|
|
1991
|
+
t("span", Jn, h($.value ? "▲" : "▼"), 1)
|
|
1921
1992
|
]),
|
|
1922
1993
|
t("button", {
|
|
1923
1994
|
type: "button",
|
|
1924
|
-
class:
|
|
1925
|
-
onClick:
|
|
1926
|
-
var
|
|
1927
|
-
return (
|
|
1995
|
+
class: Y([[e.isComponentMode ? "bg-gradient-to-r from-slate-600 to-slate-700 border-slate-700 text-white shadow-md" : "bg-white hover:bg-slate-100"], "cursor-pointer border border-slate-200 rounded-lg py-1.5 px-3 text-sm font-medium transition-all duration-200"]),
|
|
1996
|
+
onClick: n[1] || (n[1] = (a) => {
|
|
1997
|
+
var v;
|
|
1998
|
+
return (v = e.toggleComponentModeFunction) == null ? void 0 : v.call(e);
|
|
1928
1999
|
})
|
|
1929
|
-
},
|
|
2000
|
+
}, h(e.isComponentMode ? "⚒️ Modo Configuración" : "👁️ Modo Visual"), 3)
|
|
1930
2001
|
]),
|
|
1931
|
-
|
|
1932
|
-
(
|
|
1933
|
-
key:
|
|
1934
|
-
class:
|
|
2002
|
+
U(t("div", Hn, [
|
|
2003
|
+
(r(!0), i(T, null, z(F.value, (a) => (r(), i("label", {
|
|
2004
|
+
key: a,
|
|
2005
|
+
class: Y(["flex items-center gap-2 text-xs bg-slate-50 hover:bg-slate-100 px-3 py-2 rounded-lg cursor-pointer transition-colors duration-200 border border-transparent hover:border-slate-200", { "bg-emerald-50 border-emerald-200 text-emerald-700": p.value.includes(a) }])
|
|
1935
2006
|
}, [
|
|
1936
2007
|
t("input", {
|
|
1937
2008
|
type: "checkbox",
|
|
1938
|
-
value:
|
|
1939
|
-
checked:
|
|
1940
|
-
onInput:
|
|
2009
|
+
value: a,
|
|
2010
|
+
checked: p.value.includes(a),
|
|
2011
|
+
onInput: y,
|
|
1941
2012
|
class: "w-4 h-4 rounded border-slate-300 text-emerald-500 focus:ring-emerald-500"
|
|
1942
|
-
}, null, 40,
|
|
1943
|
-
|
|
2013
|
+
}, null, 40, Yn),
|
|
2014
|
+
D(" " + h(a), 1)
|
|
1944
2015
|
], 2))), 128))
|
|
1945
2016
|
], 512), [
|
|
1946
|
-
[
|
|
2017
|
+
[we, $.value]
|
|
1947
2018
|
]),
|
|
1948
|
-
t("div",
|
|
1949
|
-
t("div",
|
|
1950
|
-
|
|
2019
|
+
t("div", Kn, [
|
|
2020
|
+
t("div", Qn, [
|
|
2021
|
+
n[4] || (n[4] = t("svg", {
|
|
1951
2022
|
class: "absolute left-3 top-1/2 -translate-y-1/2 w-5 h-5 text-slate-400",
|
|
1952
2023
|
fill: "none",
|
|
1953
2024
|
stroke: "currentColor",
|
|
@@ -1961,25 +2032,25 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1961
2032
|
})
|
|
1962
2033
|
], -1)),
|
|
1963
2034
|
t("input", {
|
|
1964
|
-
onInput:
|
|
2035
|
+
onInput: m,
|
|
1965
2036
|
type: "text",
|
|
1966
2037
|
placeholder: "Buscar componente...",
|
|
1967
2038
|
class: "duration-300 border border-slate-200 bg-white rounded-xl py-3 px-4 pl-11 w-full focus:outline-none focus:ring-2 focus:ring-emerald-500/20 focus:border-emerald-400 hover:border-slate-300 shadow-sm"
|
|
1968
2039
|
}, null, 32)
|
|
1969
2040
|
])
|
|
1970
2041
|
]),
|
|
1971
|
-
t("div",
|
|
1972
|
-
|
|
2042
|
+
t("div", Xn, [
|
|
2043
|
+
H(J(be), {
|
|
1973
2044
|
class: "w-full flex flex-col gap-4",
|
|
1974
|
-
list:
|
|
2045
|
+
list: s.value,
|
|
1975
2046
|
group: { name: "draggingGroup", pull: "clone", put: !1 },
|
|
1976
2047
|
itemKey: "name",
|
|
1977
|
-
clone: (
|
|
2048
|
+
clone: (a) => JSON.parse(JSON.stringify(a))
|
|
1978
2049
|
}, {
|
|
1979
|
-
item:
|
|
1980
|
-
|
|
2050
|
+
item: me(({ element: a }) => [
|
|
2051
|
+
H(ge, {
|
|
1981
2052
|
renderApiDomain: e.renderApiDomain,
|
|
1982
|
-
object:
|
|
2053
|
+
object: a,
|
|
1983
2054
|
"is-component-mode": e.isComponentMode,
|
|
1984
2055
|
fullwidthMode: e.fullwidthMode,
|
|
1985
2056
|
columnToInsert: e.columnToInsert,
|
|
@@ -1990,7 +2061,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
1990
2061
|
]),
|
|
1991
2062
|
_: 1
|
|
1992
2063
|
}, 8, ["list", "clone"]),
|
|
1993
|
-
|
|
2064
|
+
s.value.length === 0 ? (r(), i("div", Zn, [...n[5] || (n[5] = [
|
|
1994
2065
|
t("svg", {
|
|
1995
2066
|
class: "w-12 h-12 mx-auto mb-3 opacity-50",
|
|
1996
2067
|
fill: "none",
|
|
@@ -2006,14 +2077,14 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
2006
2077
|
], -1),
|
|
2007
2078
|
t("p", { class: "text-sm font-medium" }, "No se encontraron componentes", -1),
|
|
2008
2079
|
t("p", { class: "text-xs mt-1" }, "Intenta con otros filtros o términos de búsqueda", -1)
|
|
2009
|
-
])])) :
|
|
2080
|
+
])])) : P("", !0)
|
|
2010
2081
|
])
|
|
2011
2082
|
], 64));
|
|
2012
2083
|
}
|
|
2013
|
-
}),
|
|
2084
|
+
}), _n = { class: "flex flex-col w-full transition-all duration-300 lf-page-builder bg-gradient-to-br from-slate-50 to-slate-100 min-h-screen" }, el = { class: "relative flex flex-row flex-wrap" }, tl = { class: "w-full flex justify-end py-4 pe-4" }, ol = { class: "w-3/4" }, nl = {
|
|
2014
2085
|
key: 1,
|
|
2015
2086
|
class: "w-1/4 px-3 overflow-y-auto h-screen sticky top-0"
|
|
2016
|
-
},
|
|
2087
|
+
}, il = /* @__PURE__ */ X({
|
|
2017
2088
|
__name: "Pagebuilder",
|
|
2018
2089
|
props: {
|
|
2019
2090
|
isProduction: { type: Boolean },
|
|
@@ -2023,19 +2094,19 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
2023
2094
|
excludeComponentTypes: {}
|
|
2024
2095
|
},
|
|
2025
2096
|
setup(e) {
|
|
2026
|
-
const o = e,
|
|
2097
|
+
const o = e, f = o.isProduction ?? !1, F = o.debugMode ?? !1, $ = o.submitForm ?? !1, p = o.inputId ?? null, l = [
|
|
2027
2098
|
"Repetidor",
|
|
2028
2099
|
// Siempre excluido
|
|
2029
2100
|
...o.excludeComponentTypes ?? []
|
|
2030
|
-
],
|
|
2031
|
-
const
|
|
2032
|
-
if (
|
|
2033
|
-
return
|
|
2034
|
-
const
|
|
2035
|
-
for (const [x,
|
|
2036
|
-
|
|
2037
|
-
return
|
|
2038
|
-
}),
|
|
2101
|
+
], s = f ? "https://render-api.lefebvre.es" : "https://led-dev-astro-render-api-dev.eu.els.local", m = j(!0), y = j(void 0), u = j([]), n = j({ rowIndex: null, columnIndex: null, section: null }), a = j(!1), v = j(!1), L = Z(() => {
|
|
2102
|
+
const C = Ce();
|
|
2103
|
+
if (l.length === 0)
|
|
2104
|
+
return C;
|
|
2105
|
+
const w = {};
|
|
2106
|
+
for (const [x, S] of Object.entries(C))
|
|
2107
|
+
l.includes(S.category) || (w[x] = S);
|
|
2108
|
+
return w;
|
|
2109
|
+
}), I = j({
|
|
2039
2110
|
global: {
|
|
2040
2111
|
sidebarEnabled: !1,
|
|
2041
2112
|
renderAsBodyPart: !1,
|
|
@@ -2048,7 +2119,7 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
2048
2119
|
description: "",
|
|
2049
2120
|
robots: "index, follow"
|
|
2050
2121
|
}
|
|
2051
|
-
}), g =
|
|
2122
|
+
}), g = ye([
|
|
2052
2123
|
{
|
|
2053
2124
|
section: "Header",
|
|
2054
2125
|
config: { width: "full" },
|
|
@@ -2070,193 +2141,208 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
2070
2141
|
rows: [{ config: {}, columns: [{ config: {}, components: [] }] }]
|
|
2071
2142
|
}
|
|
2072
2143
|
]);
|
|
2073
|
-
|
|
2074
|
-
|
|
2144
|
+
ne(() => {
|
|
2145
|
+
d();
|
|
2075
2146
|
});
|
|
2076
|
-
const
|
|
2077
|
-
if (
|
|
2078
|
-
const
|
|
2079
|
-
if (
|
|
2080
|
-
const
|
|
2081
|
-
if (
|
|
2147
|
+
const d = () => {
|
|
2148
|
+
if (u.value = ["Header", "Footer", "Body", "Sidebar"], y.value = "Body", p) {
|
|
2149
|
+
const C = document.getElementById(p);
|
|
2150
|
+
if (C) {
|
|
2151
|
+
const w = C.value;
|
|
2152
|
+
if (w)
|
|
2082
2153
|
try {
|
|
2083
|
-
const x = typeof
|
|
2084
|
-
(x && typeof x == "object" && !Array.isArray(x) ? Object.keys(x).length > 0 : Array.isArray(x) ? x.length > 0 : !1) &&
|
|
2154
|
+
const x = typeof w == "string" ? JSON.parse(w) : w;
|
|
2155
|
+
(x && typeof x == "object" && !Array.isArray(x) ? Object.keys(x).length > 0 : Array.isArray(x) ? x.length > 0 : !1) && ie(w);
|
|
2085
2156
|
} catch (x) {
|
|
2086
2157
|
console.error("Error parsing input value:", x);
|
|
2087
2158
|
}
|
|
2088
2159
|
}
|
|
2089
2160
|
}
|
|
2090
|
-
},
|
|
2091
|
-
|
|
2092
|
-
},
|
|
2093
|
-
|
|
2094
|
-
},
|
|
2095
|
-
var
|
|
2096
|
-
const
|
|
2097
|
-
(
|
|
2161
|
+
}, b = () => {
|
|
2162
|
+
v.value = !v.value;
|
|
2163
|
+
}, q = () => {
|
|
2164
|
+
m.value = !m.value;
|
|
2165
|
+
}, V = (C, w, x, S, A) => {
|
|
2166
|
+
var O;
|
|
2167
|
+
const E = g.find((R) => R.section === w);
|
|
2168
|
+
(O = E == null ? void 0 : E.rows) != null && O[C] && (E.rows[C].config = {
|
|
2098
2169
|
padding: x,
|
|
2099
|
-
gap:
|
|
2100
|
-
width:
|
|
2170
|
+
gap: S,
|
|
2171
|
+
width: A
|
|
2101
2172
|
});
|
|
2102
|
-
},
|
|
2103
|
-
var
|
|
2104
|
-
const
|
|
2105
|
-
(
|
|
2106
|
-
width:
|
|
2107
|
-
gap:
|
|
2108
|
-
flexDirection:
|
|
2173
|
+
}, k = (C, w, x, S, A, E) => {
|
|
2174
|
+
var R, W, ee;
|
|
2175
|
+
const O = g.find((oe) => oe.section === x);
|
|
2176
|
+
(ee = (W = (R = O == null ? void 0 : O.rows) == null ? void 0 : R[C]) == null ? void 0 : W.columns) != null && ee[w] && (O.rows[C].columns[w].config = {
|
|
2177
|
+
width: S,
|
|
2178
|
+
gap: A,
|
|
2179
|
+
flexDirection: E
|
|
2109
2180
|
});
|
|
2110
|
-
},
|
|
2111
|
-
const x = g.find((
|
|
2181
|
+
}, c = async (C, w) => {
|
|
2182
|
+
const x = g.find((S) => S.section === w);
|
|
2112
2183
|
if (x) {
|
|
2113
|
-
const
|
|
2184
|
+
const S = {
|
|
2114
2185
|
config: {},
|
|
2115
2186
|
columns: [{ config: {}, components: [] }]
|
|
2116
2187
|
};
|
|
2117
|
-
|
|
2188
|
+
C !== null && C >= 0 && C < x.rows.length ? x.rows.splice(C + 1, 0, S) : x.rows.push(S);
|
|
2118
2189
|
}
|
|
2119
|
-
await new Promise((
|
|
2190
|
+
await new Promise((S) => {
|
|
2120
2191
|
setTimeout(() => {
|
|
2121
|
-
const
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
}, 3e3)) :
|
|
2192
|
+
const A = document.getElementById(`row-${w}-${(C ?? 0) + 1}`);
|
|
2193
|
+
A ? (A.scrollIntoView({ behavior: "smooth", block: "center" }), A.classList.add("selected-delay"), setTimeout(() => {
|
|
2194
|
+
A.classList.remove("selected-delay"), S();
|
|
2195
|
+
}, 3e3)) : S();
|
|
2125
2196
|
}, 0);
|
|
2126
2197
|
});
|
|
2127
|
-
},
|
|
2128
|
-
const x = g.find((
|
|
2129
|
-
!(x != null && x.rows) || x.rows.length <= 1 || x.rows.splice(
|
|
2130
|
-
},
|
|
2131
|
-
var
|
|
2132
|
-
const
|
|
2133
|
-
if (!((
|
|
2198
|
+
}, M = (C, w) => {
|
|
2199
|
+
const x = g.find((S) => S.section === w);
|
|
2200
|
+
!(x != null && x.rows) || x.rows.length <= 1 || x.rows.splice(C, 1);
|
|
2201
|
+
}, B = (C, w, x = "down") => {
|
|
2202
|
+
var R;
|
|
2203
|
+
const S = g.find((W) => W.section === w);
|
|
2204
|
+
if (!((R = S == null ? void 0 : S.rows) != null && R[C]) || x === "up" && C === 0 || x === "down" && C === S.rows.length - 1)
|
|
2134
2205
|
return;
|
|
2135
|
-
const
|
|
2136
|
-
|
|
2137
|
-
},
|
|
2138
|
-
var
|
|
2139
|
-
const
|
|
2140
|
-
(
|
|
2206
|
+
const A = S.rows, E = A.splice(C, 1)[0], O = x === "down" ? C + 1 : C - 1;
|
|
2207
|
+
A.splice(O, 0, E);
|
|
2208
|
+
}, G = async (C, w, x, S = "right") => {
|
|
2209
|
+
var O;
|
|
2210
|
+
const A = S === "left" ? w : w + 1, E = g.find((R) => R.section === x);
|
|
2211
|
+
(O = E == null ? void 0 : E.rows) != null && O[C] && E.rows[C].columns.splice(A, 0, {
|
|
2141
2212
|
config: {},
|
|
2142
2213
|
components: []
|
|
2143
|
-
}), await new Promise((
|
|
2214
|
+
}), await new Promise((R) => {
|
|
2144
2215
|
setTimeout(() => {
|
|
2145
|
-
const
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
}, 3e3)) :
|
|
2216
|
+
const W = document.getElementById(`col-${x}-${C}-${A}`);
|
|
2217
|
+
W ? (W.scrollIntoView({ behavior: "smooth", block: "center" }), W.classList.add("selected-delay"), setTimeout(() => {
|
|
2218
|
+
W.classList.remove("selected-delay"), R();
|
|
2219
|
+
}, 3e3)) : R();
|
|
2149
2220
|
}, 0);
|
|
2150
2221
|
});
|
|
2151
|
-
},
|
|
2152
|
-
var
|
|
2153
|
-
const
|
|
2154
|
-
!
|
|
2155
|
-
},
|
|
2156
|
-
var
|
|
2157
|
-
const
|
|
2158
|
-
if (!((
|
|
2222
|
+
}, N = (C, w, x) => {
|
|
2223
|
+
var E, O;
|
|
2224
|
+
const S = g.find((R) => R.section === x), A = (O = (E = S == null ? void 0 : S.rows) == null ? void 0 : E[C]) == null ? void 0 : O.columns;
|
|
2225
|
+
!A || A.length <= 1 || A.splice(w, 1);
|
|
2226
|
+
}, K = (C, w, x, S = "right") => {
|
|
2227
|
+
var W;
|
|
2228
|
+
const A = g.find((ee) => ee.section === x);
|
|
2229
|
+
if (!((W = A == null ? void 0 : A.rows) != null && W[C]) || S === "left" && w === 0 || S === "right" && w === A.rows[C].columns.length - 1)
|
|
2159
2230
|
return;
|
|
2160
|
-
const
|
|
2161
|
-
|
|
2162
|
-
},
|
|
2163
|
-
var
|
|
2164
|
-
const x = g.find((
|
|
2165
|
-
(
|
|
2166
|
-
|
|
2167
|
-
const
|
|
2168
|
-
|
|
2231
|
+
const E = A.rows[C].columns, O = E.splice(w, 1)[0], R = S === "right" ? w + 1 : w - 1;
|
|
2232
|
+
E.splice(R, 0, O);
|
|
2233
|
+
}, _ = (C, w) => {
|
|
2234
|
+
var S;
|
|
2235
|
+
const x = g.find((A) => A.section === w);
|
|
2236
|
+
(S = x == null ? void 0 : x.rows) == null || S.forEach((A) => {
|
|
2237
|
+
A.columns.forEach((E) => {
|
|
2238
|
+
const O = E.components.indexOf(C);
|
|
2239
|
+
O !== -1 && E.components.splice(O, 1);
|
|
2240
|
+
});
|
|
2241
|
+
});
|
|
2242
|
+
}, fe = (C, w) => {
|
|
2243
|
+
var S;
|
|
2244
|
+
const x = g.find((A) => A.section === w);
|
|
2245
|
+
(S = x == null ? void 0 : x.rows) == null || S.forEach((A) => {
|
|
2246
|
+
A.columns.forEach((E) => {
|
|
2247
|
+
const O = E.components.indexOf(C);
|
|
2248
|
+
if (O !== -1) {
|
|
2249
|
+
const R = JSON.parse(JSON.stringify(C));
|
|
2250
|
+
R.id = Math.random().toString(36).substring(2, 15) + Date.now().toString(36), E.components.splice(O + 1, 0, R);
|
|
2251
|
+
}
|
|
2169
2252
|
});
|
|
2170
2253
|
});
|
|
2171
|
-
},
|
|
2172
|
-
|
|
2173
|
-
},
|
|
2174
|
-
var
|
|
2175
|
-
const { rowIndex:
|
|
2176
|
-
if (
|
|
2177
|
-
const
|
|
2178
|
-
|
|
2254
|
+
}, pe = (C, w, x) => {
|
|
2255
|
+
a.value = !0, n.value = { rowIndex: C, columnIndex: w, section: x };
|
|
2256
|
+
}, se = (C) => {
|
|
2257
|
+
var A, E, O, R;
|
|
2258
|
+
const { rowIndex: w, columnIndex: x, section: S } = n.value;
|
|
2259
|
+
if (w !== null && x !== null) {
|
|
2260
|
+
const W = JSON.parse(JSON.stringify(C));
|
|
2261
|
+
W.id = Math.random().toString(36).substring(2, 15) + Date.now().toString(36);
|
|
2262
|
+
const ee = g.find((ve) => ve.section === S), oe = (R = (O = (E = (A = ee == null ? void 0 : ee.rows) == null ? void 0 : A[w]) == null ? void 0 : E.columns) == null ? void 0 : O[x]) == null ? void 0 : R.components;
|
|
2263
|
+
oe == null || oe.push(W);
|
|
2179
2264
|
}
|
|
2180
|
-
|
|
2181
|
-
},
|
|
2182
|
-
const
|
|
2183
|
-
g.length = 0, g.push(...
|
|
2265
|
+
a.value = !1;
|
|
2266
|
+
}, ie = (C) => {
|
|
2267
|
+
const w = typeof C == "string" ? JSON.parse(C) : C;
|
|
2268
|
+
g.length = 0, g.push(...w.pageConfig || []), w.paramsConfig && (I.value = { ...I.value, ...w.paramsConfig });
|
|
2184
2269
|
};
|
|
2185
|
-
return (
|
|
2186
|
-
|
|
2187
|
-
sectionSelected:
|
|
2188
|
-
"onUpdate:sectionSelected":
|
|
2189
|
-
parametersPageConfiguration:
|
|
2190
|
-
"onUpdate:parametersPageConfiguration":
|
|
2270
|
+
return (C, w) => (r(), i("div", _n, [
|
|
2271
|
+
H(ct, {
|
|
2272
|
+
sectionSelected: y.value,
|
|
2273
|
+
"onUpdate:sectionSelected": w[0] || (w[0] = (x) => y.value = x),
|
|
2274
|
+
parametersPageConfiguration: I.value,
|
|
2275
|
+
"onUpdate:parametersPageConfiguration": w[1] || (w[1] = (x) => I.value = x),
|
|
2191
2276
|
globalPageConfiguration: g,
|
|
2192
|
-
availableSections:
|
|
2193
|
-
importConfigurationFunction:
|
|
2194
|
-
isComponentMode:
|
|
2195
|
-
toggleComponentModeFunction:
|
|
2196
|
-
fullwidthMode:
|
|
2197
|
-
toggleFullwidthMode:
|
|
2198
|
-
renderApiDomain:
|
|
2199
|
-
inputId:
|
|
2200
|
-
debugMode:
|
|
2201
|
-
submitForm:
|
|
2277
|
+
availableSections: u.value,
|
|
2278
|
+
importConfigurationFunction: ie,
|
|
2279
|
+
isComponentMode: v.value,
|
|
2280
|
+
toggleComponentModeFunction: b,
|
|
2281
|
+
fullwidthMode: m.value,
|
|
2282
|
+
toggleFullwidthMode: q,
|
|
2283
|
+
renderApiDomain: J(s),
|
|
2284
|
+
inputId: J(p),
|
|
2285
|
+
debugMode: J(F),
|
|
2286
|
+
submitForm: J($)
|
|
2202
2287
|
}, null, 8, ["sectionSelected", "parametersPageConfiguration", "globalPageConfiguration", "availableSections", "isComponentMode", "fullwidthMode", "renderApiDomain", "inputId", "debugMode", "submitForm"]),
|
|
2203
|
-
t("div",
|
|
2204
|
-
|
|
2288
|
+
t("div", el, [
|
|
2289
|
+
m.value ? (r(), i("div", {
|
|
2205
2290
|
key: 0,
|
|
2206
|
-
class:
|
|
2291
|
+
class: Y(["w-full overflow-y-auto fixed top-0 left-0 h-full bg-gradient-to-br from-slate-100 via-white to-slate-50 z-9999 px-4 flex justify-start flex flex-col items-center backdrop-blur-sm", a.value ? "" : "hidden"])
|
|
2207
2292
|
}, [
|
|
2208
|
-
t("div",
|
|
2293
|
+
t("div", tl, [
|
|
2209
2294
|
t("div", {
|
|
2210
2295
|
class: "cursor-pointer w-10 h-10 flex items-center justify-center rounded-full bg-white shadow-md hover:shadow-lg hover:bg-red-50 text-slate-400 hover:text-red-500 transition-all duration-200 text-xl font-light",
|
|
2211
|
-
onClick:
|
|
2296
|
+
onClick: w[2] || (w[2] = (x) => a.value = !1)
|
|
2212
2297
|
}, "✕")
|
|
2213
2298
|
]),
|
|
2214
|
-
t("div",
|
|
2215
|
-
|
|
2216
|
-
renderApiDomain:
|
|
2217
|
-
isComponentMode:
|
|
2218
|
-
fullwidthMode:
|
|
2219
|
-
columnToInsert:
|
|
2220
|
-
addComponentToColumn:
|
|
2221
|
-
toggleComponentModeFunction:
|
|
2222
|
-
isProduction:
|
|
2223
|
-
components:
|
|
2224
|
-
excludedCategories:
|
|
2299
|
+
t("div", ol, [
|
|
2300
|
+
H(ue, {
|
|
2301
|
+
renderApiDomain: J(s),
|
|
2302
|
+
isComponentMode: v.value,
|
|
2303
|
+
fullwidthMode: m.value,
|
|
2304
|
+
columnToInsert: n.value,
|
|
2305
|
+
addComponentToColumn: se,
|
|
2306
|
+
toggleComponentModeFunction: b,
|
|
2307
|
+
isProduction: J(f),
|
|
2308
|
+
components: L.value,
|
|
2309
|
+
excludedCategories: l
|
|
2225
2310
|
}, null, 8, ["renderApiDomain", "isComponentMode", "fullwidthMode", "columnToInsert", "isProduction", "components"])
|
|
2226
2311
|
])
|
|
2227
|
-
], 2)) : (
|
|
2228
|
-
|
|
2229
|
-
renderApiDomain:
|
|
2230
|
-
isComponentMode:
|
|
2231
|
-
fullwidthMode:
|
|
2232
|
-
columnToInsert:
|
|
2233
|
-
addComponentToColumn:
|
|
2234
|
-
toggleComponentModeFunction:
|
|
2235
|
-
isProduction:
|
|
2236
|
-
components:
|
|
2237
|
-
excludedCategories:
|
|
2312
|
+
], 2)) : (r(), i("div", nl, [
|
|
2313
|
+
H(ue, {
|
|
2314
|
+
renderApiDomain: J(s),
|
|
2315
|
+
isComponentMode: v.value,
|
|
2316
|
+
fullwidthMode: m.value,
|
|
2317
|
+
columnToInsert: n.value,
|
|
2318
|
+
addComponentToColumn: se,
|
|
2319
|
+
toggleComponentModeFunction: b,
|
|
2320
|
+
isProduction: J(f),
|
|
2321
|
+
components: L.value,
|
|
2322
|
+
excludedCategories: l
|
|
2238
2323
|
}, null, 8, ["renderApiDomain", "isComponentMode", "fullwidthMode", "columnToInsert", "isProduction", "components"])
|
|
2239
2324
|
])),
|
|
2240
2325
|
t("div", {
|
|
2241
|
-
class:
|
|
2326
|
+
class: Y([m.value ? "w-full px-4" : "w-3/4 ps-3", "flex flex-col gap-5"])
|
|
2242
2327
|
}, [
|
|
2243
|
-
|
|
2328
|
+
H(Gn, {
|
|
2244
2329
|
globalPageConfiguration: g,
|
|
2245
|
-
isComponentMode:
|
|
2246
|
-
removeComponent:
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2330
|
+
isComponentMode: v.value,
|
|
2331
|
+
removeComponent: _,
|
|
2332
|
+
cloneComponent: fe,
|
|
2333
|
+
addComponentFunction: pe,
|
|
2334
|
+
fullwidthMode: m.value,
|
|
2335
|
+
addCol: G,
|
|
2336
|
+
addRow: c,
|
|
2337
|
+
removeRow: M,
|
|
2338
|
+
removeCol: N,
|
|
2339
|
+
moveCol: K,
|
|
2340
|
+
updateRowConfig: V,
|
|
2341
|
+
updateColConfig: k,
|
|
2342
|
+
moveRow: B,
|
|
2343
|
+
sectionSelected: y.value,
|
|
2344
|
+
renderApiDomain: J(s),
|
|
2345
|
+
isProduction: J(f)
|
|
2260
2346
|
}, null, 8, ["globalPageConfiguration", "isComponentMode", "fullwidthMode", "sectionSelected", "renderApiDomain", "isProduction"])
|
|
2261
2347
|
], 2)
|
|
2262
2348
|
])
|
|
@@ -2264,15 +2350,15 @@ const dt = /* @__PURE__ */ $e(Ce, [["render", it]]), ut = {
|
|
|
2264
2350
|
}
|
|
2265
2351
|
});
|
|
2266
2352
|
export {
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2353
|
+
Gn as BodySection,
|
|
2354
|
+
gn as ColConfig,
|
|
2355
|
+
ue as ComponentsBox,
|
|
2356
|
+
xo as FeedComponent,
|
|
2357
|
+
de as FieldsForm,
|
|
2358
|
+
ct as GlobalConfig,
|
|
2359
|
+
ge as InitialComponent,
|
|
2360
|
+
il as Pagebuilder,
|
|
2361
|
+
zn as RowConfig,
|
|
2362
|
+
Tt as SourceFilter,
|
|
2363
|
+
il as default
|
|
2278
2364
|
};
|