@themarioga/grid-editor 9.0.0-beta.1 → 9.0.0-beta.3

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.
@@ -158,6 +158,8 @@ GridEditor.locales.es = {
158
158
  "autosave.restore_message": "Hay un borrador de esta p\xE1gina guardado el {date}, con cambios que no se publicaron. \xBFQuieres recuperarlo?",
159
159
  "autosave.restore": "Recuperar",
160
160
  "autosave.discard": "Descartar",
161
+ "history.undo": "Deshacer",
162
+ "history.redo": "Rehacer",
161
163
  "utility.col_from_row": "De la fila: {count}",
162
164
  "utility.row_cols": "Columnas por fila",
163
165
  "badge.row_cols": "{count} por fila",
@@ -164,6 +164,8 @@
164
164
  "autosave.restore_message": "Hay un borrador de esta p\xE1gina guardado el {date}, con cambios que no se publicaron. \xBFQuieres recuperarlo?",
165
165
  "autosave.restore": "Recuperar",
166
166
  "autosave.discard": "Descartar",
167
+ "history.undo": "Deshacer",
168
+ "history.redo": "Rehacer",
167
169
  "utility.col_from_row": "De la fila: {count}",
168
170
  "utility.row_cols": "Columnas por fila",
169
171
  "badge.row_cols": "{count} por fila",
@@ -3,4 +3,4 @@
3
3
  (May\xFAs para el m\xEDnimo)`,"tool.column_wider":`Ensanchar columna
4
4
  (May\xFAs para el m\xE1ximo)`,"tool.indent_decrease":`Reducir sangr\xEDa
5
5
  (May\xFAs para quitarla)`,"tool.indent_increase":`Aumentar sangr\xEDa
6
- (May\xFAs para el m\xE1ximo)`,"tool.edit_source":"Editar el c\xF3digo fuente","tool.preview":"Vista previa","tool.more":"M\xE1s","group.rows":"Filas","group.content":"Contenido","group.elements":"Elementos","group.select":"A\xF1adir","panel.title":"Ajustes: {kind}","panel.close":"Cerrar","panel.done":"Hecho","panel.sidebar_title":"Ajustes","panel.sidebar_empty":"Haz clic en un elemento para ver sus ajustes","panel.collapse":"Ocultar ajustes","panel.expand":"Mostrar ajustes","panel.id":"Id","panel.classes":"Clases","panel.section_general":"Id y clases","panel.editor":"Editor","panel.kind_row":"Fila","panel.kind_column":"Columna","panel.kind_text":"Texto","panel.kind_element":"Elemento","panel.kind_section":"Secci\xF3n","panel.kind_tab":"Pesta\xF1a","panel.kind_accordion_item":"Elemento de acorde\xF3n","tool.id_placeholder":"id","tool.id_title":"Asignar un identificador \xFAnico","tool.classes_placeholder":"clases","tool.classes_title":"Clases css, separadas por espacios","tool.toggle_class":'Aplicar o quitar el estilo "{label}"',"row.add":"A\xF1adir fila {layout}","row.add_row_cols":"A\xF1adir una fila de {columns} columnas, {counts} por fila","container.add_tabs":"Pesta\xF1as","container.add_tab":"A\xF1adir pesta\xF1a","container.tab_label":"Pesta\xF1a {number}","container.tabs_section":"Pesta\xF1as","container.tabs_style":"Estilo","container.tabs_style_tabs":"Pesta\xF1as","container.tabs_style_pills":"Pills","container.tabs_style_underline":"Subrayado","container.tabs_width":"Ancho","container.tabs_width_natural":"Natural","container.tabs_width_fill":"Rellenar","container.tabs_width_justified":"Justificado","container.tabs_align":"Alineaci\xF3n","container.tabs_align_start":"Inicio","container.tabs_align_center":"Centro","container.tabs_align_end":"Fin","container.tabs_layout":"Disposici\xF3n","container.tabs_layout_horizontal":"Horizontal","container.tabs_layout_vertical":"Vertical","container.tabs_layout_vertical_from":"Vertical desde {breakpoint}","container.add_carousel":"Carrusel","container.add_carousel_item":"A\xF1adir diapositiva","confirm.delete_carousel_item":"\xBFBorrar esta diapositiva y todo lo que contiene?","panel.kind_carousel_item":"Diapositiva","container.carousel_previous":"Anterior","container.carousel_next":"Siguiente","container.carousel_slide_label":"Diapositiva {number}","container.carousel_counter":"{current} / {total}","tool.carousel_show_previous":"Diapositiva anterior","tool.carousel_show_next":"Diapositiva siguiente","tool.carousel_move_back":"Mover atr\xE1s","tool.carousel_move_forward":"Mover adelante","container.carousel_section":"Carrusel","container.carousel_controls":"Flechas","container.carousel_indicators":"Indicadores","container.carousel_fade":"Fundido","container.carousel_dark":"Tema oscuro","container.carousel_ride":"Autoplay","container.carousel_ride_no":"No","container.carousel_ride_load":"Al cargar","container.carousel_ride_interaction":"Tras la primera interacci\xF3n","container.carousel_interval":"Intervalo (s)","container.carousel_pause":"Pausa al pasar el rat\xF3n","container.carousel_wrap":"Volver al principio","container.carousel_keyboard":"Teclado","container.carousel_touch":"T\xE1ctil","container.carousel_item_section":"Diapositiva","container.add_accordion":"Acorde\xF3n","container.add_accordion_item":"A\xF1adir apartado","container.accordion_label":"Apartado {number}","container.add_popup":"Ventana emergente","container.popup_title":"T\xEDtulo","container.popup_trigger":"Abrir","container.add_card":"Tarjeta","container.card_title":"T\xEDtulo de la tarjeta","container.card_footer":"Pie de la tarjeta","confirm.title":"Confirmar","confirm.ok":"Borrar","confirm.cancel":"Cancelar","confirm.delete_row":"\xBFSeguro que quieres borrar esta fila?","confirm.delete_column":"\xBFSeguro que quieres borrar esta columna?","confirm.delete_text":"\xBFSeguro que quieres borrar este texto?","confirm.delete_plain":"\xBFSeguro que quieres borrar este contenido?","confirm.delete_element":"\xBFSeguro que quieres borrar este elemento?","confirm.delete_container":"\xBFSeguro que quieres borrar este contenedor y todo su contenido?","confirm.delete_tab":"\xBFSeguro que quieres borrar esta pesta\xF1a y todo su contenido?","confirm.delete_accordion_item":"\xBFSeguro que quieres borrar este apartado y todo su contenido?","view.all":"Todos los tama\xF1os","view.xs":"M\xF3vil","view.sm":"Tablet","view.md":"Escritorio peque\xF1o","view.lg":"Escritorio","view.xl":"Escritorio grande","view.xxl":"Pantalla panor\xE1mica","utility.section":"Responsive: {view}","utility.col_width":"Ancho","utility.col_equal":"Igual","utility.col_auto":"Auto","section.add":"Secci\xF3n","section.width":"Ancho","section.fixed":"Fijo","section.fluid":"Ancho completo","section.from":"Fijo desde {breakpoint}","tool.add_row_to_section":"A\xF1adir fila","tool.delete_section":"Quitar secci\xF3n","confirm.delete_section":"\xBFSeguro que quieres borrar esta secci\xF3n y todo su contenido?","tool.copy":"Copiar","tool.paste":"Pegar","clipboard.paste_row":"Pegar fila","clipboard.paste_section":"Pegar secci\xF3n","autosave.restore_title":"\xBFRecuperar el borrador?","autosave.restore_message":"Hay un borrador de esta p\xE1gina guardado el {date}, con cambios que no se publicaron. \xBFQuieres recuperarlo?","autosave.restore":"Recuperar","autosave.discard":"Descartar","utility.col_from_row":"De la fila: {count}","utility.row_cols":"Columnas por fila","badge.row_cols":"{count} por fila","badge.row_cols_auto":"Tan anchas como su contenido","utility.default":"Por defecto","utility.inherit":"Hereda: {value} (de {breakpoint})","utility.varies":"Cambia en {breakpoints}; elegir aqu\xED lo sustituye","utility.display":"Display","utility.visibility_hidden":"Oculto","tool.hide_in_view":"Ocultar en esta vista","tool.show_in_view":"Mostrar en esta vista","badge.hidden_in":"Oculto en {breakpoints}","utility.order":"Orden","utility.order_first":"Primero","utility.order_last":"\xDAltimo","tool.order_earlier":"Antes en esta vista","tool.order_later":"Despu\xE9s en esta vista","badge.order":"Orden: {value}","utility.justify_content":"Justificar columnas","utility.align_items":"Alinear columnas","utility.align_content":"Alinear l\xEDneas","utility.flex_direction":"Direcci\xF3n","utility.flex_wrap":"Salto de l\xEDnea","utility.gap":"Separaci\xF3n","utility.row_gap":"Separaci\xF3n entre filas","utility.column_gap":"Separaci\xF3n entre columnas","utility.flex_fill":"Rellenar","utility.flex_grow":"Crecer","utility.flex_shrink":"Encoger","utility.sticky":"Fijo al desplazar","utility.align_self":"Alinearse","utility.gutters":"Espaciado entre columnas","utility.gutters_x":"Espaciado horizontal","utility.gutters_y":"Espaciado vertical","utility.padding":"Relleno","utility.margin":"Margen","utility.side_all":"Todos los lados","utility.side_x":"Izquierda y derecha","utility.side_y":"Arriba y abajo","utility.side_t":"Arriba","utility.side_b":"Abajo","utility.side_s":"Inicio","utility.side_e":"Fin","utility.text_align":"Alineaci\xF3n del texto","utility.text_start":"Inicio","utility.text_center":"Centro","utility.text_end":"Fin","utility.float":"Flotar","utility.float_start":"Inicio","utility.float_end":"Fin","utility.float_none":"Ninguno","utility.spacing_gutter":"El relleno lateral de una columna es su espaciado: cambiarlo cambia el espacio entre columnas","inline_style.section_title":"Estilo","inline_style.dialog_title":"Estilo: {kind}","inline_style.section_size":"Tama\xF1o","inline_style.section_spacing":"Espaciado","inline_style.section_border":"Borde","inline_style.section_background":"Fondo","inline_style.section_text":"Texto","inline_style.section_typography":"Tipograf\xEDa","inline_style.section_display":"Visualizaci\xF3n","inline_style.section_flex":"Flex","inline_style.section_position":"Posici\xF3n","inline_style.section_custom":"CSS libre","inline_style.all_sizes":"Se aplica a todos los tama\xF1os","inline_style.overridden":"La clase {class} tiene prioridad sobre este valor","inline_style.invalid":"Esta propiedad no acepta ese valor","inline_style.catalog":"Clases de Bootstrap","inline_style.shadow_x":"X","inline_style.shadow_y":"Y","inline_style.shadow_blur":"Desenfoque","inline_style.shadow_spread":"Extensi\xF3n","inline_style.shadow_color":"Color","inline_style.shadow_inset":"Interior","inline_style.shadow_text_mode":"Editar como texto","inline_style.shadow_builder_mode":"Editar con el constructor","inline_style.prop_width":"Ancho","inline_style.prop_height":"Alto","inline_style.prop_min_width":"Ancho m\xEDnimo","inline_style.prop_min_height":"Alto m\xEDnimo","inline_style.prop_max_width":"Ancho m\xE1ximo","inline_style.prop_max_height":"Alto m\xE1ximo","inline_style.prop_margin_top":"Margen superior","inline_style.prop_margin_right":"Margen derecho","inline_style.prop_margin_bottom":"Margen inferior","inline_style.prop_margin_left":"Margen izquierdo","inline_style.prop_padding_top":"Relleno superior","inline_style.prop_padding_right":"Relleno derecho","inline_style.prop_padding_bottom":"Relleno inferior","inline_style.prop_padding_left":"Relleno izquierdo","inline_style.prop_border_width":"Grosor del borde","inline_style.prop_border_style":"Estilo del borde","inline_style.prop_border_color":"Color del borde","inline_style.prop_border_radius":"Radio del borde","inline_style.prop_box_shadow":"Sombra","inline_style.prop_background_color":"Color de fondo","inline_style.prop_background_image":"Imagen de fondo","inline_style.prop_background_size":"Tama\xF1o del fondo","inline_style.prop_background_position":"Posici\xF3n del fondo","inline_style.prop_background_repeat":"Repetici\xF3n del fondo","inline_style.prop_color":"Color","inline_style.prop_font_size":"Tama\xF1o de letra","inline_style.prop_text_align":"Alineaci\xF3n","inline_style.prop_text_shadow":"Sombra del texto","inline_style.prop_font_family":"Fuente","inline_style.prop_font_weight":"Grosor de letra","inline_style.prop_font_style":"Estilo de letra","inline_style.prop_line_height":"Interlineado","inline_style.prop_letter_spacing":"Espaciado entre letras","inline_style.prop_text_transform":"May\xFAsculas","inline_style.prop_text_decoration":"Decoraci\xF3n","inline_style.prop_display":"Display","inline_style.prop_opacity":"Opacidad","inline_style.prop_overflow":"Desbordamiento","inline_style.prop_visibility":"Visibilidad","inline_style.prop_position":"Posici\xF3n","inline_style.prop_top":"Arriba","inline_style.prop_right":"Derecha","inline_style.prop_bottom":"Abajo","inline_style.prop_left":"Izquierda","inline_style.prop_z_index":"Z-index","error.sortable_missing":"\xA1SortableJS no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de Sortable; sin \xE9l no se puede arrastrar.","warning.already_editing":"Este elemento ya tiene un editor: se devuelve ese, con las opciones con las que se cre\xF3.","warning.destroyed":"Se ha llamado a {method}() en un editor destruido, y no hace nada.","warning.duplicate_build":"grideditor.js se ha cargado dos veces: se mantiene el primer GridEditor.","warning.adapter_no_jquery":"grideditor.jquery.js necesita jQuery 4 y la p\xE1gina no tiene jQuery: la API de jQuery no est\xE1 disponible.","error.tinymce_missing":"\xA1tinyMCE no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de tinyMCE.","error.ckeditor_missing":"\xA1CKEditor 5 no est\xE1 disponible! Aseg\xFArate de haber cargado su archivo ckeditor5.umd.js.","error.ckeditor_start":"CKEditor no ha podido arrancar: {message}","warning.ckeditor_plugin":"CKEditor no tiene ning\xFAn plugin llamado {name}, as\xED que se deja fuera.","error.codemirror_missing":"\xA1CodeMirror no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de CodeMirror; sin \xE9l el c\xF3digo se edita en un textarea normal.","error.summernote_missing":"\xA1Summernote no est\xE1 disponible! Aseg\xFArate de haber cargado jQuery y el archivo js de Summernote."};})();
6
+ (May\xFAs para el m\xE1ximo)`,"tool.edit_source":"Editar el c\xF3digo fuente","tool.preview":"Vista previa","tool.more":"M\xE1s","group.rows":"Filas","group.content":"Contenido","group.elements":"Elementos","group.select":"A\xF1adir","panel.title":"Ajustes: {kind}","panel.close":"Cerrar","panel.done":"Hecho","panel.sidebar_title":"Ajustes","panel.sidebar_empty":"Haz clic en un elemento para ver sus ajustes","panel.collapse":"Ocultar ajustes","panel.expand":"Mostrar ajustes","panel.id":"Id","panel.classes":"Clases","panel.section_general":"Id y clases","panel.editor":"Editor","panel.kind_row":"Fila","panel.kind_column":"Columna","panel.kind_text":"Texto","panel.kind_element":"Elemento","panel.kind_section":"Secci\xF3n","panel.kind_tab":"Pesta\xF1a","panel.kind_accordion_item":"Elemento de acorde\xF3n","tool.id_placeholder":"id","tool.id_title":"Asignar un identificador \xFAnico","tool.classes_placeholder":"clases","tool.classes_title":"Clases css, separadas por espacios","tool.toggle_class":'Aplicar o quitar el estilo "{label}"',"row.add":"A\xF1adir fila {layout}","row.add_row_cols":"A\xF1adir una fila de {columns} columnas, {counts} por fila","container.add_tabs":"Pesta\xF1as","container.add_tab":"A\xF1adir pesta\xF1a","container.tab_label":"Pesta\xF1a {number}","container.tabs_section":"Pesta\xF1as","container.tabs_style":"Estilo","container.tabs_style_tabs":"Pesta\xF1as","container.tabs_style_pills":"Pills","container.tabs_style_underline":"Subrayado","container.tabs_width":"Ancho","container.tabs_width_natural":"Natural","container.tabs_width_fill":"Rellenar","container.tabs_width_justified":"Justificado","container.tabs_align":"Alineaci\xF3n","container.tabs_align_start":"Inicio","container.tabs_align_center":"Centro","container.tabs_align_end":"Fin","container.tabs_layout":"Disposici\xF3n","container.tabs_layout_horizontal":"Horizontal","container.tabs_layout_vertical":"Vertical","container.tabs_layout_vertical_from":"Vertical desde {breakpoint}","container.add_carousel":"Carrusel","container.add_carousel_item":"A\xF1adir diapositiva","confirm.delete_carousel_item":"\xBFBorrar esta diapositiva y todo lo que contiene?","panel.kind_carousel_item":"Diapositiva","container.carousel_previous":"Anterior","container.carousel_next":"Siguiente","container.carousel_slide_label":"Diapositiva {number}","container.carousel_counter":"{current} / {total}","tool.carousel_show_previous":"Diapositiva anterior","tool.carousel_show_next":"Diapositiva siguiente","tool.carousel_move_back":"Mover atr\xE1s","tool.carousel_move_forward":"Mover adelante","container.carousel_section":"Carrusel","container.carousel_controls":"Flechas","container.carousel_indicators":"Indicadores","container.carousel_fade":"Fundido","container.carousel_dark":"Tema oscuro","container.carousel_ride":"Autoplay","container.carousel_ride_no":"No","container.carousel_ride_load":"Al cargar","container.carousel_ride_interaction":"Tras la primera interacci\xF3n","container.carousel_interval":"Intervalo (s)","container.carousel_pause":"Pausa al pasar el rat\xF3n","container.carousel_wrap":"Volver al principio","container.carousel_keyboard":"Teclado","container.carousel_touch":"T\xE1ctil","container.carousel_item_section":"Diapositiva","container.add_accordion":"Acorde\xF3n","container.add_accordion_item":"A\xF1adir apartado","container.accordion_label":"Apartado {number}","container.add_popup":"Ventana emergente","container.popup_title":"T\xEDtulo","container.popup_trigger":"Abrir","container.add_card":"Tarjeta","container.card_title":"T\xEDtulo de la tarjeta","container.card_footer":"Pie de la tarjeta","confirm.title":"Confirmar","confirm.ok":"Borrar","confirm.cancel":"Cancelar","confirm.delete_row":"\xBFSeguro que quieres borrar esta fila?","confirm.delete_column":"\xBFSeguro que quieres borrar esta columna?","confirm.delete_text":"\xBFSeguro que quieres borrar este texto?","confirm.delete_plain":"\xBFSeguro que quieres borrar este contenido?","confirm.delete_element":"\xBFSeguro que quieres borrar este elemento?","confirm.delete_container":"\xBFSeguro que quieres borrar este contenedor y todo su contenido?","confirm.delete_tab":"\xBFSeguro que quieres borrar esta pesta\xF1a y todo su contenido?","confirm.delete_accordion_item":"\xBFSeguro que quieres borrar este apartado y todo su contenido?","view.all":"Todos los tama\xF1os","view.xs":"M\xF3vil","view.sm":"Tablet","view.md":"Escritorio peque\xF1o","view.lg":"Escritorio","view.xl":"Escritorio grande","view.xxl":"Pantalla panor\xE1mica","utility.section":"Responsive: {view}","utility.col_width":"Ancho","utility.col_equal":"Igual","utility.col_auto":"Auto","section.add":"Secci\xF3n","section.width":"Ancho","section.fixed":"Fijo","section.fluid":"Ancho completo","section.from":"Fijo desde {breakpoint}","tool.add_row_to_section":"A\xF1adir fila","tool.delete_section":"Quitar secci\xF3n","confirm.delete_section":"\xBFSeguro que quieres borrar esta secci\xF3n y todo su contenido?","tool.copy":"Copiar","tool.paste":"Pegar","clipboard.paste_row":"Pegar fila","clipboard.paste_section":"Pegar secci\xF3n","autosave.restore_title":"\xBFRecuperar el borrador?","autosave.restore_message":"Hay un borrador de esta p\xE1gina guardado el {date}, con cambios que no se publicaron. \xBFQuieres recuperarlo?","autosave.restore":"Recuperar","autosave.discard":"Descartar","history.undo":"Deshacer","history.redo":"Rehacer","utility.col_from_row":"De la fila: {count}","utility.row_cols":"Columnas por fila","badge.row_cols":"{count} por fila","badge.row_cols_auto":"Tan anchas como su contenido","utility.default":"Por defecto","utility.inherit":"Hereda: {value} (de {breakpoint})","utility.varies":"Cambia en {breakpoints}; elegir aqu\xED lo sustituye","utility.display":"Display","utility.visibility_hidden":"Oculto","tool.hide_in_view":"Ocultar en esta vista","tool.show_in_view":"Mostrar en esta vista","badge.hidden_in":"Oculto en {breakpoints}","utility.order":"Orden","utility.order_first":"Primero","utility.order_last":"\xDAltimo","tool.order_earlier":"Antes en esta vista","tool.order_later":"Despu\xE9s en esta vista","badge.order":"Orden: {value}","utility.justify_content":"Justificar columnas","utility.align_items":"Alinear columnas","utility.align_content":"Alinear l\xEDneas","utility.flex_direction":"Direcci\xF3n","utility.flex_wrap":"Salto de l\xEDnea","utility.gap":"Separaci\xF3n","utility.row_gap":"Separaci\xF3n entre filas","utility.column_gap":"Separaci\xF3n entre columnas","utility.flex_fill":"Rellenar","utility.flex_grow":"Crecer","utility.flex_shrink":"Encoger","utility.sticky":"Fijo al desplazar","utility.align_self":"Alinearse","utility.gutters":"Espaciado entre columnas","utility.gutters_x":"Espaciado horizontal","utility.gutters_y":"Espaciado vertical","utility.padding":"Relleno","utility.margin":"Margen","utility.side_all":"Todos los lados","utility.side_x":"Izquierda y derecha","utility.side_y":"Arriba y abajo","utility.side_t":"Arriba","utility.side_b":"Abajo","utility.side_s":"Inicio","utility.side_e":"Fin","utility.text_align":"Alineaci\xF3n del texto","utility.text_start":"Inicio","utility.text_center":"Centro","utility.text_end":"Fin","utility.float":"Flotar","utility.float_start":"Inicio","utility.float_end":"Fin","utility.float_none":"Ninguno","utility.spacing_gutter":"El relleno lateral de una columna es su espaciado: cambiarlo cambia el espacio entre columnas","inline_style.section_title":"Estilo","inline_style.dialog_title":"Estilo: {kind}","inline_style.section_size":"Tama\xF1o","inline_style.section_spacing":"Espaciado","inline_style.section_border":"Borde","inline_style.section_background":"Fondo","inline_style.section_text":"Texto","inline_style.section_typography":"Tipograf\xEDa","inline_style.section_display":"Visualizaci\xF3n","inline_style.section_flex":"Flex","inline_style.section_position":"Posici\xF3n","inline_style.section_custom":"CSS libre","inline_style.all_sizes":"Se aplica a todos los tama\xF1os","inline_style.overridden":"La clase {class} tiene prioridad sobre este valor","inline_style.invalid":"Esta propiedad no acepta ese valor","inline_style.catalog":"Clases de Bootstrap","inline_style.shadow_x":"X","inline_style.shadow_y":"Y","inline_style.shadow_blur":"Desenfoque","inline_style.shadow_spread":"Extensi\xF3n","inline_style.shadow_color":"Color","inline_style.shadow_inset":"Interior","inline_style.shadow_text_mode":"Editar como texto","inline_style.shadow_builder_mode":"Editar con el constructor","inline_style.prop_width":"Ancho","inline_style.prop_height":"Alto","inline_style.prop_min_width":"Ancho m\xEDnimo","inline_style.prop_min_height":"Alto m\xEDnimo","inline_style.prop_max_width":"Ancho m\xE1ximo","inline_style.prop_max_height":"Alto m\xE1ximo","inline_style.prop_margin_top":"Margen superior","inline_style.prop_margin_right":"Margen derecho","inline_style.prop_margin_bottom":"Margen inferior","inline_style.prop_margin_left":"Margen izquierdo","inline_style.prop_padding_top":"Relleno superior","inline_style.prop_padding_right":"Relleno derecho","inline_style.prop_padding_bottom":"Relleno inferior","inline_style.prop_padding_left":"Relleno izquierdo","inline_style.prop_border_width":"Grosor del borde","inline_style.prop_border_style":"Estilo del borde","inline_style.prop_border_color":"Color del borde","inline_style.prop_border_radius":"Radio del borde","inline_style.prop_box_shadow":"Sombra","inline_style.prop_background_color":"Color de fondo","inline_style.prop_background_image":"Imagen de fondo","inline_style.prop_background_size":"Tama\xF1o del fondo","inline_style.prop_background_position":"Posici\xF3n del fondo","inline_style.prop_background_repeat":"Repetici\xF3n del fondo","inline_style.prop_color":"Color","inline_style.prop_font_size":"Tama\xF1o de letra","inline_style.prop_text_align":"Alineaci\xF3n","inline_style.prop_text_shadow":"Sombra del texto","inline_style.prop_font_family":"Fuente","inline_style.prop_font_weight":"Grosor de letra","inline_style.prop_font_style":"Estilo de letra","inline_style.prop_line_height":"Interlineado","inline_style.prop_letter_spacing":"Espaciado entre letras","inline_style.prop_text_transform":"May\xFAsculas","inline_style.prop_text_decoration":"Decoraci\xF3n","inline_style.prop_display":"Display","inline_style.prop_opacity":"Opacidad","inline_style.prop_overflow":"Desbordamiento","inline_style.prop_visibility":"Visibilidad","inline_style.prop_position":"Posici\xF3n","inline_style.prop_top":"Arriba","inline_style.prop_right":"Derecha","inline_style.prop_bottom":"Abajo","inline_style.prop_left":"Izquierda","inline_style.prop_z_index":"Z-index","error.sortable_missing":"\xA1SortableJS no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de Sortable; sin \xE9l no se puede arrastrar.","warning.already_editing":"Este elemento ya tiene un editor: se devuelve ese, con las opciones con las que se cre\xF3.","warning.destroyed":"Se ha llamado a {method}() en un editor destruido, y no hace nada.","warning.duplicate_build":"grideditor.js se ha cargado dos veces: se mantiene el primer GridEditor.","warning.adapter_no_jquery":"grideditor.jquery.js necesita jQuery 4 y la p\xE1gina no tiene jQuery: la API de jQuery no est\xE1 disponible.","error.tinymce_missing":"\xA1tinyMCE no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de tinyMCE.","error.ckeditor_missing":"\xA1CKEditor 5 no est\xE1 disponible! Aseg\xFArate de haber cargado su archivo ckeditor5.umd.js.","error.ckeditor_start":"CKEditor no ha podido arrancar: {message}","warning.ckeditor_plugin":"CKEditor no tiene ning\xFAn plugin llamado {name}, as\xED que se deja fuera.","error.codemirror_missing":"\xA1CodeMirror no est\xE1 disponible! Aseg\xFArate de haber cargado el archivo js de CodeMirror; sin \xE9l el c\xF3digo se edita en un textarea normal.","error.summernote_missing":"\xA1Summernote no est\xE1 disponible! Aseg\xFArate de haber cargado jQuery y el archivo js de Summernote."};})();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/js/register.js", "../../src/js/locales/grideditor.es.js"],
4
- "sourcesContent": ["/**\n * What a plugin's or a locale's classic script imports in place of the\n * editor: the GridEditor the page already loaded.\n *\n * The build points `import { GridEditor } from '../grideditor.js'` here for\n * the classic scripts, so each registers on the editor the page has rather\n * than bringing its own. Loaded before the editor there is nothing to\n * register on, and saying so is better than a TypeError three calls later.\n */\nvar GridEditor = window.GridEditor;\n\nif (!GridEditor || typeof GridEditor.get !== 'function') {\n throw new Error('grid-editor: load grideditor.js (or grideditor.bundle.min.js) before its plugins, ' +\n 'its locales and grideditor.jquery.js');\n}\n\nexport { GridEditor };\nexport default GridEditor;\n", "/**\n * Spanish strings for grid-editor.\n *\n * Load after the editor and select with `locale: 'es'`:\n *\n * <script src=\"dist/grideditor.min.js\"></script>\n * <script src=\"dist/locales/grideditor.es.js\"></script>\n * <script>new GridEditor('#myGrid', { locale: 'es' });</script>\n *\n * or, as a module, `import '@themarioga/grid-editor/locales/es'`.\n *\n * This is one of the two locales grid-editor ships, so it is held to complete\n * coverage of `GridEditor.locales.en`: test/locales.js fails when a key\n * is missing. Add the Spanish string in the same change that adds the English\n * one, and keep the wording short enough to fit the tooltip or the dropdown\n * item it appears in.\n */\nimport { GridEditor } from '../grideditor.js';\n\nGridEditor.locales.es = {\n 'tool.move': 'Mover',\n 'tool.settings': 'Configuraci\u00F3n',\n 'tool.add_row': 'A\u00F1adir fila',\n 'tool.delete_text': 'Quitar texto',\n 'tool.delete_plain': 'Quitar contenido',\n 'tool.edit_html': 'Editar html',\n 'codemirror.apply': 'Aplicar',\n 'codemirror.cancel': 'Cancelar',\n 'tool.convert_type': 'Editar como texto de {editor}',\n 'text.add': 'Texto',\n 'text.add_type': 'Texto ({editor})',\n 'text.no_editor': 'No hay cargado ning\u00FAn editor de texto \"{type}\": este texto se puede mover y borrar, pero no editar',\n 'text.tinymce': 'tinyMCE',\n 'text.ckeditor': 'CKEditor',\n 'text.summernote': 'Summernote',\n 'tool.add_column': 'A\u00F1adir columna\\n(mant\u00E9n pulsado para elegir el ancho)',\n 'tool.column_size': '{size} de 12',\n 'tool.column_equal': 'Igual: reparte lo que queda de la fila',\n 'tool.column_auto': 'Auto: tan ancha como su contenido',\n 'tool.delete_row': 'Borrar fila',\n 'tool.delete_column': 'Borrar columna',\n 'tool.delete_element': 'Borrar elemento',\n 'tool.delete_container': 'Borrar contenedor',\n 'tool.delete_pane': 'Borrar panel',\n 'tool.rename': 'Haz doble clic para renombrar',\n 'tool.toggle_popup': 'Plegar esta ventana mientras editas',\n 'tool.element_info': 'Elemento: {name}',\n 'tool.column_narrower': 'Estrechar columna\\n(May\u00FAs para el m\u00EDnimo)',\n 'tool.column_wider': 'Ensanchar columna\\n(May\u00FAs para el m\u00E1ximo)',\n 'tool.indent_decrease': 'Reducir sangr\u00EDa\\n(May\u00FAs para quitarla)',\n 'tool.indent_increase': 'Aumentar sangr\u00EDa\\n(May\u00FAs para el m\u00E1ximo)',\n 'tool.edit_source': 'Editar el c\u00F3digo fuente',\n 'tool.preview': 'Vista previa',\n 'tool.more': 'M\u00E1s',\n 'group.rows': 'Filas',\n 'group.content': 'Contenido',\n 'group.elements': 'Elementos',\n 'group.select': 'A\u00F1adir',\n 'panel.title': 'Ajustes: {kind}',\n 'panel.close': 'Cerrar',\n 'panel.done': 'Hecho',\n 'panel.sidebar_title': 'Ajustes',\n 'panel.sidebar_empty': 'Haz clic en un elemento para ver sus ajustes',\n 'panel.collapse': 'Ocultar ajustes',\n 'panel.expand': 'Mostrar ajustes',\n 'panel.id': 'Id',\n 'panel.classes': 'Clases',\n 'panel.section_general': 'Id y clases',\n 'panel.editor': 'Editor',\n 'panel.kind_row': 'Fila',\n 'panel.kind_column': 'Columna',\n 'panel.kind_text': 'Texto',\n 'panel.kind_element': 'Elemento',\n 'panel.kind_section': 'Secci\u00F3n',\n 'panel.kind_tab': 'Pesta\u00F1a',\n 'panel.kind_accordion_item': 'Elemento de acorde\u00F3n',\n 'tool.id_placeholder': 'id',\n 'tool.id_title': 'Asignar un identificador \u00FAnico',\n 'tool.classes_placeholder': 'clases',\n 'tool.classes_title': 'Clases css, separadas por espacios',\n 'tool.toggle_class': 'Aplicar o quitar el estilo \"{label}\"',\n 'row.add': 'A\u00F1adir fila {layout}',\n 'row.add_row_cols': 'A\u00F1adir una fila de {columns} columnas, {counts} por fila',\n 'container.add_tabs': 'Pesta\u00F1as',\n 'container.add_tab': 'A\u00F1adir pesta\u00F1a',\n 'container.tab_label': 'Pesta\u00F1a {number}',\n 'container.tabs_section': 'Pesta\u00F1as',\n 'container.tabs_style': 'Estilo',\n 'container.tabs_style_tabs': 'Pesta\u00F1as',\n 'container.tabs_style_pills': 'Pills',\n 'container.tabs_style_underline': 'Subrayado',\n 'container.tabs_width': 'Ancho',\n 'container.tabs_width_natural': 'Natural',\n 'container.tabs_width_fill': 'Rellenar',\n 'container.tabs_width_justified': 'Justificado',\n 'container.tabs_align': 'Alineaci\u00F3n',\n 'container.tabs_align_start': 'Inicio',\n 'container.tabs_align_center': 'Centro',\n 'container.tabs_align_end': 'Fin',\n 'container.tabs_layout': 'Disposici\u00F3n',\n 'container.tabs_layout_horizontal': 'Horizontal',\n 'container.tabs_layout_vertical': 'Vertical',\n 'container.tabs_layout_vertical_from': 'Vertical desde {breakpoint}',\n 'container.add_carousel': 'Carrusel',\n 'container.add_carousel_item': 'A\u00F1adir diapositiva',\n 'confirm.delete_carousel_item': '\u00BFBorrar esta diapositiva y todo lo que contiene?',\n 'panel.kind_carousel_item': 'Diapositiva',\n 'container.carousel_previous': 'Anterior',\n 'container.carousel_next': 'Siguiente',\n 'container.carousel_slide_label': 'Diapositiva {number}',\n 'container.carousel_counter': '{current} / {total}',\n 'tool.carousel_show_previous': 'Diapositiva anterior',\n 'tool.carousel_show_next': 'Diapositiva siguiente',\n 'tool.carousel_move_back': 'Mover atr\u00E1s',\n 'tool.carousel_move_forward': 'Mover adelante',\n 'container.carousel_section': 'Carrusel',\n 'container.carousel_controls': 'Flechas',\n 'container.carousel_indicators': 'Indicadores',\n 'container.carousel_fade': 'Fundido',\n 'container.carousel_dark': 'Tema oscuro',\n 'container.carousel_ride': 'Autoplay',\n 'container.carousel_ride_no': 'No',\n 'container.carousel_ride_load': 'Al cargar',\n 'container.carousel_ride_interaction': 'Tras la primera interacci\u00F3n',\n 'container.carousel_interval': 'Intervalo (s)',\n 'container.carousel_pause': 'Pausa al pasar el rat\u00F3n',\n 'container.carousel_wrap': 'Volver al principio',\n 'container.carousel_keyboard': 'Teclado',\n 'container.carousel_touch': 'T\u00E1ctil',\n 'container.carousel_item_section': 'Diapositiva',\n 'container.add_accordion': 'Acorde\u00F3n',\n 'container.add_accordion_item': 'A\u00F1adir apartado',\n 'container.accordion_label': 'Apartado {number}',\n 'container.add_popup': 'Ventana emergente',\n 'container.popup_title': 'T\u00EDtulo',\n 'container.popup_trigger': 'Abrir',\n 'container.add_card': 'Tarjeta',\n 'container.card_title': 'T\u00EDtulo de la tarjeta',\n 'container.card_footer': 'Pie de la tarjeta',\n 'confirm.title': 'Confirmar',\n 'confirm.ok': 'Borrar',\n 'confirm.cancel': 'Cancelar',\n 'confirm.delete_row': '\u00BFSeguro que quieres borrar esta fila?',\n 'confirm.delete_column': '\u00BFSeguro que quieres borrar esta columna?',\n 'confirm.delete_text': '\u00BFSeguro que quieres borrar este texto?',\n 'confirm.delete_plain': '\u00BFSeguro que quieres borrar este contenido?',\n 'confirm.delete_element': '\u00BFSeguro que quieres borrar este elemento?',\n 'confirm.delete_container': '\u00BFSeguro que quieres borrar este contenedor y todo su contenido?',\n 'confirm.delete_tab': '\u00BFSeguro que quieres borrar esta pesta\u00F1a y todo su contenido?',\n 'confirm.delete_accordion_item': '\u00BFSeguro que quieres borrar este apartado y todo su contenido?',\n 'view.all': 'Todos los tama\u00F1os',\n 'view.xs': 'M\u00F3vil',\n 'view.sm': 'Tablet',\n 'view.md': 'Escritorio peque\u00F1o',\n 'view.lg': 'Escritorio',\n 'view.xl': 'Escritorio grande',\n 'view.xxl': 'Pantalla panor\u00E1mica',\n 'utility.section': 'Responsive: {view}',\n 'utility.col_width': 'Ancho',\n 'utility.col_equal': 'Igual',\n 'utility.col_auto': 'Auto',\n 'section.add': 'Secci\u00F3n',\n 'section.width': 'Ancho',\n 'section.fixed': 'Fijo',\n 'section.fluid': 'Ancho completo',\n 'section.from': 'Fijo desde {breakpoint}',\n 'tool.add_row_to_section': 'A\u00F1adir fila',\n 'tool.delete_section': 'Quitar secci\u00F3n',\n 'confirm.delete_section': '\u00BFSeguro que quieres borrar esta secci\u00F3n y todo su contenido?',\n 'tool.copy': 'Copiar',\n 'tool.paste': 'Pegar',\n 'clipboard.paste_row': 'Pegar fila',\n 'clipboard.paste_section': 'Pegar secci\u00F3n',\n 'autosave.restore_title': '\u00BFRecuperar el borrador?',\n 'autosave.restore_message': 'Hay un borrador de esta p\u00E1gina guardado el {date}, con cambios que no se publicaron. \u00BFQuieres recuperarlo?',\n 'autosave.restore': 'Recuperar',\n 'autosave.discard': 'Descartar',\n 'utility.col_from_row': 'De la fila: {count}',\n 'utility.row_cols': 'Columnas por fila',\n 'badge.row_cols': '{count} por fila',\n 'badge.row_cols_auto': 'Tan anchas como su contenido',\n 'utility.default': 'Por defecto',\n 'utility.inherit': 'Hereda: {value} (de {breakpoint})',\n 'utility.varies': 'Cambia en {breakpoints}; elegir aqu\u00ED lo sustituye',\n 'utility.display': 'Display',\n 'utility.visibility_hidden': 'Oculto',\n 'tool.hide_in_view': 'Ocultar en esta vista',\n 'tool.show_in_view': 'Mostrar en esta vista',\n 'badge.hidden_in': 'Oculto en {breakpoints}',\n 'utility.order': 'Orden',\n 'utility.order_first': 'Primero',\n 'utility.order_last': '\u00DAltimo',\n 'tool.order_earlier': 'Antes en esta vista',\n 'tool.order_later': 'Despu\u00E9s en esta vista',\n 'badge.order': 'Orden: {value}',\n 'utility.justify_content': 'Justificar columnas',\n 'utility.align_items': 'Alinear columnas',\n 'utility.align_content': 'Alinear l\u00EDneas',\n 'utility.flex_direction': 'Direcci\u00F3n',\n 'utility.flex_wrap': 'Salto de l\u00EDnea',\n 'utility.gap': 'Separaci\u00F3n',\n 'utility.row_gap': 'Separaci\u00F3n entre filas',\n 'utility.column_gap': 'Separaci\u00F3n entre columnas',\n 'utility.flex_fill': 'Rellenar',\n 'utility.flex_grow': 'Crecer',\n 'utility.flex_shrink': 'Encoger',\n 'utility.sticky': 'Fijo al desplazar',\n 'utility.align_self': 'Alinearse',\n 'utility.gutters': 'Espaciado entre columnas',\n 'utility.gutters_x': 'Espaciado horizontal',\n 'utility.gutters_y': 'Espaciado vertical',\n 'utility.padding': 'Relleno',\n 'utility.margin': 'Margen',\n 'utility.side_all': 'Todos los lados',\n 'utility.side_x': 'Izquierda y derecha',\n 'utility.side_y': 'Arriba y abajo',\n 'utility.side_t': 'Arriba',\n 'utility.side_b': 'Abajo',\n 'utility.side_s': 'Inicio',\n 'utility.side_e': 'Fin',\n 'utility.text_align': 'Alineaci\u00F3n del texto',\n 'utility.text_start': 'Inicio',\n 'utility.text_center': 'Centro',\n 'utility.text_end': 'Fin',\n 'utility.float': 'Flotar',\n 'utility.float_start': 'Inicio',\n 'utility.float_end': 'Fin',\n 'utility.float_none': 'Ninguno',\n 'utility.spacing_gutter': 'El relleno lateral de una columna es su espaciado: cambiarlo cambia el espacio entre columnas',\n 'inline_style.section_title': 'Estilo',\n 'inline_style.dialog_title': 'Estilo: {kind}',\n 'inline_style.section_size': 'Tama\u00F1o',\n 'inline_style.section_spacing': 'Espaciado',\n 'inline_style.section_border': 'Borde',\n 'inline_style.section_background': 'Fondo',\n 'inline_style.section_text': 'Texto',\n 'inline_style.section_typography': 'Tipograf\u00EDa',\n 'inline_style.section_display': 'Visualizaci\u00F3n',\n 'inline_style.section_flex': 'Flex',\n 'inline_style.section_position': 'Posici\u00F3n',\n 'inline_style.section_custom': 'CSS libre',\n 'inline_style.all_sizes': 'Se aplica a todos los tama\u00F1os',\n 'inline_style.overridden': 'La clase {class} tiene prioridad sobre este valor',\n 'inline_style.invalid': 'Esta propiedad no acepta ese valor',\n 'inline_style.catalog': 'Clases de Bootstrap',\n 'inline_style.shadow_x': 'X',\n 'inline_style.shadow_y': 'Y',\n 'inline_style.shadow_blur': 'Desenfoque',\n 'inline_style.shadow_spread': 'Extensi\u00F3n',\n 'inline_style.shadow_color': 'Color',\n 'inline_style.shadow_inset': 'Interior',\n 'inline_style.shadow_text_mode': 'Editar como texto',\n 'inline_style.shadow_builder_mode': 'Editar con el constructor',\n 'inline_style.prop_width': 'Ancho',\n 'inline_style.prop_height': 'Alto',\n 'inline_style.prop_min_width': 'Ancho m\u00EDnimo',\n 'inline_style.prop_min_height': 'Alto m\u00EDnimo',\n 'inline_style.prop_max_width': 'Ancho m\u00E1ximo',\n 'inline_style.prop_max_height': 'Alto m\u00E1ximo',\n 'inline_style.prop_margin_top': 'Margen superior',\n 'inline_style.prop_margin_right': 'Margen derecho',\n 'inline_style.prop_margin_bottom': 'Margen inferior',\n 'inline_style.prop_margin_left': 'Margen izquierdo',\n 'inline_style.prop_padding_top': 'Relleno superior',\n 'inline_style.prop_padding_right': 'Relleno derecho',\n 'inline_style.prop_padding_bottom': 'Relleno inferior',\n 'inline_style.prop_padding_left': 'Relleno izquierdo',\n 'inline_style.prop_border_width': 'Grosor del borde',\n 'inline_style.prop_border_style': 'Estilo del borde',\n 'inline_style.prop_border_color': 'Color del borde',\n 'inline_style.prop_border_radius': 'Radio del borde',\n 'inline_style.prop_box_shadow': 'Sombra',\n 'inline_style.prop_background_color': 'Color de fondo',\n 'inline_style.prop_background_image': 'Imagen de fondo',\n 'inline_style.prop_background_size': 'Tama\u00F1o del fondo',\n 'inline_style.prop_background_position': 'Posici\u00F3n del fondo',\n 'inline_style.prop_background_repeat': 'Repetici\u00F3n del fondo',\n 'inline_style.prop_color': 'Color',\n 'inline_style.prop_font_size': 'Tama\u00F1o de letra',\n 'inline_style.prop_text_align': 'Alineaci\u00F3n',\n 'inline_style.prop_text_shadow': 'Sombra del texto',\n 'inline_style.prop_font_family': 'Fuente',\n 'inline_style.prop_font_weight': 'Grosor de letra',\n 'inline_style.prop_font_style': 'Estilo de letra',\n 'inline_style.prop_line_height': 'Interlineado',\n 'inline_style.prop_letter_spacing': 'Espaciado entre letras',\n 'inline_style.prop_text_transform': 'May\u00FAsculas',\n 'inline_style.prop_text_decoration': 'Decoraci\u00F3n',\n 'inline_style.prop_display': 'Display',\n 'inline_style.prop_opacity': 'Opacidad',\n 'inline_style.prop_overflow': 'Desbordamiento',\n 'inline_style.prop_visibility': 'Visibilidad',\n 'inline_style.prop_position': 'Posici\u00F3n',\n 'inline_style.prop_top': 'Arriba',\n 'inline_style.prop_right': 'Derecha',\n 'inline_style.prop_bottom': 'Abajo',\n 'inline_style.prop_left': 'Izquierda',\n 'inline_style.prop_z_index': 'Z-index',\n 'error.sortable_missing': '\u00A1SortableJS no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de Sortable; sin \u00E9l no se puede arrastrar.',\n 'warning.already_editing': 'Este elemento ya tiene un editor: se devuelve ese, con las opciones con las que se cre\u00F3.',\n 'warning.destroyed': 'Se ha llamado a {method}() en un editor destruido, y no hace nada.',\n 'warning.duplicate_build': 'grideditor.js se ha cargado dos veces: se mantiene el primer GridEditor.',\n 'warning.adapter_no_jquery': 'grideditor.jquery.js necesita jQuery 4 y la p\u00E1gina no tiene jQuery: la API de jQuery no est\u00E1 disponible.',\n 'error.tinymce_missing': '\u00A1tinyMCE no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de tinyMCE.',\n 'error.ckeditor_missing': '\u00A1CKEditor 5 no est\u00E1 disponible! Aseg\u00FArate de haber cargado su archivo ckeditor5.umd.js.',\n 'error.ckeditor_start': 'CKEditor no ha podido arrancar: {message}',\n 'warning.ckeditor_plugin': 'CKEditor no tiene ning\u00FAn plugin llamado {name}, as\u00ED que se deja fuera.',\n 'error.codemirror_missing': '\u00A1CodeMirror no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de CodeMirror; sin \u00E9l el c\u00F3digo se edita en un textarea normal.',\n 'error.summernote_missing': '\u00A1Summernote no est\u00E1 disponible! Aseg\u00FArate de haber cargado jQuery y el archivo js de Summernote.',\n};\n\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * What a plugin's or a locale's classic script imports in place of the\n * editor: the GridEditor the page already loaded.\n *\n * The build points `import { GridEditor } from '../grideditor.js'` here for\n * the classic scripts, so each registers on the editor the page has rather\n * than bringing its own. Loaded before the editor there is nothing to\n * register on, and saying so is better than a TypeError three calls later.\n */\nvar GridEditor = window.GridEditor;\n\nif (!GridEditor || typeof GridEditor.get !== 'function') {\n throw new Error('grid-editor: load grideditor.js (or grideditor.bundle.min.js) before its plugins, ' +\n 'its locales and grideditor.jquery.js');\n}\n\nexport { GridEditor };\nexport default GridEditor;\n", "/**\n * Spanish strings for grid-editor.\n *\n * Load after the editor and select with `locale: 'es'`:\n *\n * <script src=\"dist/grideditor.min.js\"></script>\n * <script src=\"dist/locales/grideditor.es.js\"></script>\n * <script>new GridEditor('#myGrid', { locale: 'es' });</script>\n *\n * or, as a module, `import '@themarioga/grid-editor/locales/es'`.\n *\n * This is one of the two locales grid-editor ships, so it is held to complete\n * coverage of `GridEditor.locales.en`: test/locales.js fails when a key\n * is missing. Add the Spanish string in the same change that adds the English\n * one, and keep the wording short enough to fit the tooltip or the dropdown\n * item it appears in.\n */\nimport { GridEditor } from '../grideditor.js';\n\nGridEditor.locales.es = {\n 'tool.move': 'Mover',\n 'tool.settings': 'Configuraci\u00F3n',\n 'tool.add_row': 'A\u00F1adir fila',\n 'tool.delete_text': 'Quitar texto',\n 'tool.delete_plain': 'Quitar contenido',\n 'tool.edit_html': 'Editar html',\n 'codemirror.apply': 'Aplicar',\n 'codemirror.cancel': 'Cancelar',\n 'tool.convert_type': 'Editar como texto de {editor}',\n 'text.add': 'Texto',\n 'text.add_type': 'Texto ({editor})',\n 'text.no_editor': 'No hay cargado ning\u00FAn editor de texto \"{type}\": este texto se puede mover y borrar, pero no editar',\n 'text.tinymce': 'tinyMCE',\n 'text.ckeditor': 'CKEditor',\n 'text.summernote': 'Summernote',\n 'tool.add_column': 'A\u00F1adir columna\\n(mant\u00E9n pulsado para elegir el ancho)',\n 'tool.column_size': '{size} de 12',\n 'tool.column_equal': 'Igual: reparte lo que queda de la fila',\n 'tool.column_auto': 'Auto: tan ancha como su contenido',\n 'tool.delete_row': 'Borrar fila',\n 'tool.delete_column': 'Borrar columna',\n 'tool.delete_element': 'Borrar elemento',\n 'tool.delete_container': 'Borrar contenedor',\n 'tool.delete_pane': 'Borrar panel',\n 'tool.rename': 'Haz doble clic para renombrar',\n 'tool.toggle_popup': 'Plegar esta ventana mientras editas',\n 'tool.element_info': 'Elemento: {name}',\n 'tool.column_narrower': 'Estrechar columna\\n(May\u00FAs para el m\u00EDnimo)',\n 'tool.column_wider': 'Ensanchar columna\\n(May\u00FAs para el m\u00E1ximo)',\n 'tool.indent_decrease': 'Reducir sangr\u00EDa\\n(May\u00FAs para quitarla)',\n 'tool.indent_increase': 'Aumentar sangr\u00EDa\\n(May\u00FAs para el m\u00E1ximo)',\n 'tool.edit_source': 'Editar el c\u00F3digo fuente',\n 'tool.preview': 'Vista previa',\n 'tool.more': 'M\u00E1s',\n 'group.rows': 'Filas',\n 'group.content': 'Contenido',\n 'group.elements': 'Elementos',\n 'group.select': 'A\u00F1adir',\n 'panel.title': 'Ajustes: {kind}',\n 'panel.close': 'Cerrar',\n 'panel.done': 'Hecho',\n 'panel.sidebar_title': 'Ajustes',\n 'panel.sidebar_empty': 'Haz clic en un elemento para ver sus ajustes',\n 'panel.collapse': 'Ocultar ajustes',\n 'panel.expand': 'Mostrar ajustes',\n 'panel.id': 'Id',\n 'panel.classes': 'Clases',\n 'panel.section_general': 'Id y clases',\n 'panel.editor': 'Editor',\n 'panel.kind_row': 'Fila',\n 'panel.kind_column': 'Columna',\n 'panel.kind_text': 'Texto',\n 'panel.kind_element': 'Elemento',\n 'panel.kind_section': 'Secci\u00F3n',\n 'panel.kind_tab': 'Pesta\u00F1a',\n 'panel.kind_accordion_item': 'Elemento de acorde\u00F3n',\n 'tool.id_placeholder': 'id',\n 'tool.id_title': 'Asignar un identificador \u00FAnico',\n 'tool.classes_placeholder': 'clases',\n 'tool.classes_title': 'Clases css, separadas por espacios',\n 'tool.toggle_class': 'Aplicar o quitar el estilo \"{label}\"',\n 'row.add': 'A\u00F1adir fila {layout}',\n 'row.add_row_cols': 'A\u00F1adir una fila de {columns} columnas, {counts} por fila',\n 'container.add_tabs': 'Pesta\u00F1as',\n 'container.add_tab': 'A\u00F1adir pesta\u00F1a',\n 'container.tab_label': 'Pesta\u00F1a {number}',\n 'container.tabs_section': 'Pesta\u00F1as',\n 'container.tabs_style': 'Estilo',\n 'container.tabs_style_tabs': 'Pesta\u00F1as',\n 'container.tabs_style_pills': 'Pills',\n 'container.tabs_style_underline': 'Subrayado',\n 'container.tabs_width': 'Ancho',\n 'container.tabs_width_natural': 'Natural',\n 'container.tabs_width_fill': 'Rellenar',\n 'container.tabs_width_justified': 'Justificado',\n 'container.tabs_align': 'Alineaci\u00F3n',\n 'container.tabs_align_start': 'Inicio',\n 'container.tabs_align_center': 'Centro',\n 'container.tabs_align_end': 'Fin',\n 'container.tabs_layout': 'Disposici\u00F3n',\n 'container.tabs_layout_horizontal': 'Horizontal',\n 'container.tabs_layout_vertical': 'Vertical',\n 'container.tabs_layout_vertical_from': 'Vertical desde {breakpoint}',\n 'container.add_carousel': 'Carrusel',\n 'container.add_carousel_item': 'A\u00F1adir diapositiva',\n 'confirm.delete_carousel_item': '\u00BFBorrar esta diapositiva y todo lo que contiene?',\n 'panel.kind_carousel_item': 'Diapositiva',\n 'container.carousel_previous': 'Anterior',\n 'container.carousel_next': 'Siguiente',\n 'container.carousel_slide_label': 'Diapositiva {number}',\n 'container.carousel_counter': '{current} / {total}',\n 'tool.carousel_show_previous': 'Diapositiva anterior',\n 'tool.carousel_show_next': 'Diapositiva siguiente',\n 'tool.carousel_move_back': 'Mover atr\u00E1s',\n 'tool.carousel_move_forward': 'Mover adelante',\n 'container.carousel_section': 'Carrusel',\n 'container.carousel_controls': 'Flechas',\n 'container.carousel_indicators': 'Indicadores',\n 'container.carousel_fade': 'Fundido',\n 'container.carousel_dark': 'Tema oscuro',\n 'container.carousel_ride': 'Autoplay',\n 'container.carousel_ride_no': 'No',\n 'container.carousel_ride_load': 'Al cargar',\n 'container.carousel_ride_interaction': 'Tras la primera interacci\u00F3n',\n 'container.carousel_interval': 'Intervalo (s)',\n 'container.carousel_pause': 'Pausa al pasar el rat\u00F3n',\n 'container.carousel_wrap': 'Volver al principio',\n 'container.carousel_keyboard': 'Teclado',\n 'container.carousel_touch': 'T\u00E1ctil',\n 'container.carousel_item_section': 'Diapositiva',\n 'container.add_accordion': 'Acorde\u00F3n',\n 'container.add_accordion_item': 'A\u00F1adir apartado',\n 'container.accordion_label': 'Apartado {number}',\n 'container.add_popup': 'Ventana emergente',\n 'container.popup_title': 'T\u00EDtulo',\n 'container.popup_trigger': 'Abrir',\n 'container.add_card': 'Tarjeta',\n 'container.card_title': 'T\u00EDtulo de la tarjeta',\n 'container.card_footer': 'Pie de la tarjeta',\n 'confirm.title': 'Confirmar',\n 'confirm.ok': 'Borrar',\n 'confirm.cancel': 'Cancelar',\n 'confirm.delete_row': '\u00BFSeguro que quieres borrar esta fila?',\n 'confirm.delete_column': '\u00BFSeguro que quieres borrar esta columna?',\n 'confirm.delete_text': '\u00BFSeguro que quieres borrar este texto?',\n 'confirm.delete_plain': '\u00BFSeguro que quieres borrar este contenido?',\n 'confirm.delete_element': '\u00BFSeguro que quieres borrar este elemento?',\n 'confirm.delete_container': '\u00BFSeguro que quieres borrar este contenedor y todo su contenido?',\n 'confirm.delete_tab': '\u00BFSeguro que quieres borrar esta pesta\u00F1a y todo su contenido?',\n 'confirm.delete_accordion_item': '\u00BFSeguro que quieres borrar este apartado y todo su contenido?',\n 'view.all': 'Todos los tama\u00F1os',\n 'view.xs': 'M\u00F3vil',\n 'view.sm': 'Tablet',\n 'view.md': 'Escritorio peque\u00F1o',\n 'view.lg': 'Escritorio',\n 'view.xl': 'Escritorio grande',\n 'view.xxl': 'Pantalla panor\u00E1mica',\n 'utility.section': 'Responsive: {view}',\n 'utility.col_width': 'Ancho',\n 'utility.col_equal': 'Igual',\n 'utility.col_auto': 'Auto',\n 'section.add': 'Secci\u00F3n',\n 'section.width': 'Ancho',\n 'section.fixed': 'Fijo',\n 'section.fluid': 'Ancho completo',\n 'section.from': 'Fijo desde {breakpoint}',\n 'tool.add_row_to_section': 'A\u00F1adir fila',\n 'tool.delete_section': 'Quitar secci\u00F3n',\n 'confirm.delete_section': '\u00BFSeguro que quieres borrar esta secci\u00F3n y todo su contenido?',\n 'tool.copy': 'Copiar',\n 'tool.paste': 'Pegar',\n 'clipboard.paste_row': 'Pegar fila',\n 'clipboard.paste_section': 'Pegar secci\u00F3n',\n 'autosave.restore_title': '\u00BFRecuperar el borrador?',\n 'autosave.restore_message': 'Hay un borrador de esta p\u00E1gina guardado el {date}, con cambios que no se publicaron. \u00BFQuieres recuperarlo?',\n 'autosave.restore': 'Recuperar',\n 'autosave.discard': 'Descartar',\n 'history.undo': 'Deshacer',\n 'history.redo': 'Rehacer',\n 'utility.col_from_row': 'De la fila: {count}',\n 'utility.row_cols': 'Columnas por fila',\n 'badge.row_cols': '{count} por fila',\n 'badge.row_cols_auto': 'Tan anchas como su contenido',\n 'utility.default': 'Por defecto',\n 'utility.inherit': 'Hereda: {value} (de {breakpoint})',\n 'utility.varies': 'Cambia en {breakpoints}; elegir aqu\u00ED lo sustituye',\n 'utility.display': 'Display',\n 'utility.visibility_hidden': 'Oculto',\n 'tool.hide_in_view': 'Ocultar en esta vista',\n 'tool.show_in_view': 'Mostrar en esta vista',\n 'badge.hidden_in': 'Oculto en {breakpoints}',\n 'utility.order': 'Orden',\n 'utility.order_first': 'Primero',\n 'utility.order_last': '\u00DAltimo',\n 'tool.order_earlier': 'Antes en esta vista',\n 'tool.order_later': 'Despu\u00E9s en esta vista',\n 'badge.order': 'Orden: {value}',\n 'utility.justify_content': 'Justificar columnas',\n 'utility.align_items': 'Alinear columnas',\n 'utility.align_content': 'Alinear l\u00EDneas',\n 'utility.flex_direction': 'Direcci\u00F3n',\n 'utility.flex_wrap': 'Salto de l\u00EDnea',\n 'utility.gap': 'Separaci\u00F3n',\n 'utility.row_gap': 'Separaci\u00F3n entre filas',\n 'utility.column_gap': 'Separaci\u00F3n entre columnas',\n 'utility.flex_fill': 'Rellenar',\n 'utility.flex_grow': 'Crecer',\n 'utility.flex_shrink': 'Encoger',\n 'utility.sticky': 'Fijo al desplazar',\n 'utility.align_self': 'Alinearse',\n 'utility.gutters': 'Espaciado entre columnas',\n 'utility.gutters_x': 'Espaciado horizontal',\n 'utility.gutters_y': 'Espaciado vertical',\n 'utility.padding': 'Relleno',\n 'utility.margin': 'Margen',\n 'utility.side_all': 'Todos los lados',\n 'utility.side_x': 'Izquierda y derecha',\n 'utility.side_y': 'Arriba y abajo',\n 'utility.side_t': 'Arriba',\n 'utility.side_b': 'Abajo',\n 'utility.side_s': 'Inicio',\n 'utility.side_e': 'Fin',\n 'utility.text_align': 'Alineaci\u00F3n del texto',\n 'utility.text_start': 'Inicio',\n 'utility.text_center': 'Centro',\n 'utility.text_end': 'Fin',\n 'utility.float': 'Flotar',\n 'utility.float_start': 'Inicio',\n 'utility.float_end': 'Fin',\n 'utility.float_none': 'Ninguno',\n 'utility.spacing_gutter': 'El relleno lateral de una columna es su espaciado: cambiarlo cambia el espacio entre columnas',\n 'inline_style.section_title': 'Estilo',\n 'inline_style.dialog_title': 'Estilo: {kind}',\n 'inline_style.section_size': 'Tama\u00F1o',\n 'inline_style.section_spacing': 'Espaciado',\n 'inline_style.section_border': 'Borde',\n 'inline_style.section_background': 'Fondo',\n 'inline_style.section_text': 'Texto',\n 'inline_style.section_typography': 'Tipograf\u00EDa',\n 'inline_style.section_display': 'Visualizaci\u00F3n',\n 'inline_style.section_flex': 'Flex',\n 'inline_style.section_position': 'Posici\u00F3n',\n 'inline_style.section_custom': 'CSS libre',\n 'inline_style.all_sizes': 'Se aplica a todos los tama\u00F1os',\n 'inline_style.overridden': 'La clase {class} tiene prioridad sobre este valor',\n 'inline_style.invalid': 'Esta propiedad no acepta ese valor',\n 'inline_style.catalog': 'Clases de Bootstrap',\n 'inline_style.shadow_x': 'X',\n 'inline_style.shadow_y': 'Y',\n 'inline_style.shadow_blur': 'Desenfoque',\n 'inline_style.shadow_spread': 'Extensi\u00F3n',\n 'inline_style.shadow_color': 'Color',\n 'inline_style.shadow_inset': 'Interior',\n 'inline_style.shadow_text_mode': 'Editar como texto',\n 'inline_style.shadow_builder_mode': 'Editar con el constructor',\n 'inline_style.prop_width': 'Ancho',\n 'inline_style.prop_height': 'Alto',\n 'inline_style.prop_min_width': 'Ancho m\u00EDnimo',\n 'inline_style.prop_min_height': 'Alto m\u00EDnimo',\n 'inline_style.prop_max_width': 'Ancho m\u00E1ximo',\n 'inline_style.prop_max_height': 'Alto m\u00E1ximo',\n 'inline_style.prop_margin_top': 'Margen superior',\n 'inline_style.prop_margin_right': 'Margen derecho',\n 'inline_style.prop_margin_bottom': 'Margen inferior',\n 'inline_style.prop_margin_left': 'Margen izquierdo',\n 'inline_style.prop_padding_top': 'Relleno superior',\n 'inline_style.prop_padding_right': 'Relleno derecho',\n 'inline_style.prop_padding_bottom': 'Relleno inferior',\n 'inline_style.prop_padding_left': 'Relleno izquierdo',\n 'inline_style.prop_border_width': 'Grosor del borde',\n 'inline_style.prop_border_style': 'Estilo del borde',\n 'inline_style.prop_border_color': 'Color del borde',\n 'inline_style.prop_border_radius': 'Radio del borde',\n 'inline_style.prop_box_shadow': 'Sombra',\n 'inline_style.prop_background_color': 'Color de fondo',\n 'inline_style.prop_background_image': 'Imagen de fondo',\n 'inline_style.prop_background_size': 'Tama\u00F1o del fondo',\n 'inline_style.prop_background_position': 'Posici\u00F3n del fondo',\n 'inline_style.prop_background_repeat': 'Repetici\u00F3n del fondo',\n 'inline_style.prop_color': 'Color',\n 'inline_style.prop_font_size': 'Tama\u00F1o de letra',\n 'inline_style.prop_text_align': 'Alineaci\u00F3n',\n 'inline_style.prop_text_shadow': 'Sombra del texto',\n 'inline_style.prop_font_family': 'Fuente',\n 'inline_style.prop_font_weight': 'Grosor de letra',\n 'inline_style.prop_font_style': 'Estilo de letra',\n 'inline_style.prop_line_height': 'Interlineado',\n 'inline_style.prop_letter_spacing': 'Espaciado entre letras',\n 'inline_style.prop_text_transform': 'May\u00FAsculas',\n 'inline_style.prop_text_decoration': 'Decoraci\u00F3n',\n 'inline_style.prop_display': 'Display',\n 'inline_style.prop_opacity': 'Opacidad',\n 'inline_style.prop_overflow': 'Desbordamiento',\n 'inline_style.prop_visibility': 'Visibilidad',\n 'inline_style.prop_position': 'Posici\u00F3n',\n 'inline_style.prop_top': 'Arriba',\n 'inline_style.prop_right': 'Derecha',\n 'inline_style.prop_bottom': 'Abajo',\n 'inline_style.prop_left': 'Izquierda',\n 'inline_style.prop_z_index': 'Z-index',\n 'error.sortable_missing': '\u00A1SortableJS no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de Sortable; sin \u00E9l no se puede arrastrar.',\n 'warning.already_editing': 'Este elemento ya tiene un editor: se devuelve ese, con las opciones con las que se cre\u00F3.',\n 'warning.destroyed': 'Se ha llamado a {method}() en un editor destruido, y no hace nada.',\n 'warning.duplicate_build': 'grideditor.js se ha cargado dos veces: se mantiene el primer GridEditor.',\n 'warning.adapter_no_jquery': 'grideditor.jquery.js necesita jQuery 4 y la p\u00E1gina no tiene jQuery: la API de jQuery no est\u00E1 disponible.',\n 'error.tinymce_missing': '\u00A1tinyMCE no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de tinyMCE.',\n 'error.ckeditor_missing': '\u00A1CKEditor 5 no est\u00E1 disponible! Aseg\u00FArate de haber cargado su archivo ckeditor5.umd.js.',\n 'error.ckeditor_start': 'CKEditor no ha podido arrancar: {message}',\n 'warning.ckeditor_plugin': 'CKEditor no tiene ning\u00FAn plugin llamado {name}, as\u00ED que se deja fuera.',\n 'error.codemirror_missing': '\u00A1CodeMirror no est\u00E1 disponible! Aseg\u00FArate de haber cargado el archivo js de CodeMirror; sin \u00E9l el c\u00F3digo se edita en un textarea normal.',\n 'error.summernote_missing': '\u00A1Summernote no est\u00E1 disponible! Aseg\u00FArate de haber cargado jQuery y el archivo js de Summernote.',\n};\n\n"],
5
+ "mappings": "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",
6
6
  "names": ["GridEditor", "GridEditor"]
7
7
  }
@@ -19,6 +19,9 @@ function children(node, selector) {
19
19
  function child(node, selector) {
20
20
  return children(node, selector)[0] || null;
21
21
  }
22
+ function is(node, selector) {
23
+ return !!node && node.nodeType === 1 && node.matches(selector);
24
+ }
22
25
  function addClass(node, names) {
23
26
  split(names).forEach(function(name) {
24
27
  node.classList.add(name);
@@ -31,6 +34,9 @@ function removeClass(node, names) {
31
34
  });
32
35
  return node;
33
36
  }
37
+ function hasClass(node, name) {
38
+ return !!node && node.nodeType === 1 && node.classList.contains(name);
39
+ }
34
40
  function split(names) {
35
41
  return String(names || "").split(/\s+/).filter(Boolean);
36
42
  }
@@ -118,9 +124,34 @@ window.addEventListener("storage", function(e) {
118
124
  announce();
119
125
  }
120
126
  });
127
+ var listeningEditors = [];
128
+ var lastEditor = null;
129
+ function track(e) {
130
+ lastEditor = listeningEditors.filter(function(ge) {
131
+ return ge.contains(e.target);
132
+ })[0] || null;
133
+ }
134
+ document.addEventListener("pointerdown", track, true);
135
+ document.addEventListener("focusin", track, true);
136
+ function shortcutKey(e) {
137
+ var key = (e.key || "").toLowerCase();
138
+ if (!/^[a-z]$/.test(key)) {
139
+ key = { KeyC: "c", KeyV: "v" }[e.code] || "";
140
+ }
141
+ return key === "c" || key === "v" ? key : null;
142
+ }
143
+ function typing() {
144
+ var focus = document.activeElement;
145
+ return !!focus && (is(focus, "input, textarea, select") || focus.isContentEditable);
146
+ }
147
+ function textSelected() {
148
+ var selection = window.getSelection ? window.getSelection() : null;
149
+ return !!selection && !selection.isCollapsed && selection.toString() !== "";
150
+ }
121
151
  GridEditor.features.clipboard = function(ge) {
122
152
  var shown = null;
123
153
  var listening = false;
154
+ var shortcuts = shortcutsSetting();
124
155
  function used(name) {
125
156
  return !ge.settings.plugins || ge.settings.plugins.indexOf(name) !== -1;
126
157
  }
@@ -145,10 +176,26 @@ GridEditor.features.clipboard = function(ge) {
145
176
  }
146
177
  return ["row", "column", "section", "text", "element"].indexOf(kind) !== -1 ? kind : null;
147
178
  }
148
- function copy(node, kind) {
179
+ function shortcutsSetting() {
180
+ var wanted = (ge.settings.clipboard || {}).shortcuts;
181
+ var target = !!ge.settings.active_target;
182
+ if (wanted !== void 0 && typeof wanted !== "boolean") {
183
+ ge.warn("clipboard.shortcuts is true or false: " + (target ? "on" : "off") + ", as with active_target, is used");
184
+ wanted = void 0;
185
+ }
186
+ if (wanted === void 0) {
187
+ return target;
188
+ }
189
+ if (wanted && !target) {
190
+ ge.warn('clipboard.shortcuts needs active_target, or settings_panel "sidebar": without it, Ctrl+C and Ctrl+V do nothing');
191
+ return false;
192
+ }
193
+ return wanted;
194
+ }
195
+ function copy(node, kind, source) {
149
196
  var html = ge.nodeHtml(node);
150
197
  write({ version: VERSION, category: categoryOf(kind), kind, html });
151
- ge.emit("after-copy", ge.payloadFor(kind, node, { source: "tool" }));
198
+ ge.emit("after-copy", ge.payloadFor(kind, node, { source: source || "tool" }));
152
199
  var tool = child(ge.drawerOf(node), ".ge-copy");
153
200
  if (!tool) {
154
201
  return;
@@ -172,6 +219,66 @@ GridEditor.features.clipboard = function(ge) {
172
219
  }
173
220
  ge.place(ge.freshNode(clip.html), clip.kind, { appendTo: target, source: "paste" });
174
221
  }
222
+ function pasteByShortcut() {
223
+ var clip = read();
224
+ var target = ge.getActiveTarget();
225
+ var node = target || ge.getSelected();
226
+ if (!clip || !node) {
227
+ return false;
228
+ }
229
+ var placement = { appendTo: node, source: "paste" };
230
+ if (target && clip.category === "section") {
231
+ if (!available(clip)) {
232
+ return false;
233
+ }
234
+ var top = target;
235
+ while (top.parentElement && top.parentElement !== ge.canvas) {
236
+ top = top.parentElement;
237
+ }
238
+ placement = { insertAfter: top, source: "paste" };
239
+ } else if (!fits(clip, TARGETS[ge.kindOf(node)] || [])) {
240
+ return false;
241
+ }
242
+ var made = ge.place(ge.freshNode(clip.html), clip.kind, placement);
243
+ if (made && made.scrollIntoView) {
244
+ made.scrollIntoView({ behavior: "smooth" });
245
+ }
246
+ return true;
247
+ }
248
+ function copyByShortcut() {
249
+ if (textSelected()) {
250
+ return false;
251
+ }
252
+ var node = ge.getSelected() || ge.getActiveTarget();
253
+ var kind = node && ge.kindOf(node);
254
+ if (!kind || !categoryOf(kind)) {
255
+ return false;
256
+ }
257
+ copy(node, kind, "shortcut");
258
+ return true;
259
+ }
260
+ function onKeydown(e) {
261
+ if (lastEditor !== ge || e.repeat || e.shiftKey || e.altKey || !(e.ctrlKey || e.metaKey)) {
262
+ return;
263
+ }
264
+ var key = shortcutKey(e);
265
+ if (!key || !hasClass(ge.canvas, "ge-editing") || typing() || ge.panelOpen()) {
266
+ return;
267
+ }
268
+ if (key === "c" ? copyByShortcut() : pasteByShortcut()) {
269
+ e.preventDefault();
270
+ }
271
+ }
272
+ function listenForShortcuts(on) {
273
+ var at = listeningEditors.indexOf(ge);
274
+ if (on && at === -1) {
275
+ listeningEditors.push(ge);
276
+ document.addEventListener("keydown", onKeydown);
277
+ } else if (!on && at !== -1) {
278
+ listeningEditors.splice(at, 1);
279
+ document.removeEventListener("keydown", onKeydown);
280
+ }
281
+ }
175
282
  function refresh() {
176
283
  var clip = read();
177
284
  all(ge.canvas, ".ge-paste").forEach(function(tool) {
@@ -229,10 +336,17 @@ GridEditor.features.clipboard = function(ge) {
229
336
  document.addEventListener(CHANGE, refresh);
230
337
  listening = true;
231
338
  }
339
+ listenForShortcuts(shortcuts);
232
340
  },
233
341
  onDeinit: function() {
234
342
  document.removeEventListener(CHANGE, refresh);
235
343
  listening = false;
344
+ listenForShortcuts(false);
345
+ },
346
+ onDestroy: function() {
347
+ if (lastEditor === ge) {
348
+ lastEditor = null;
349
+ }
236
350
  },
237
351
  // Nothing of its own on the canvas: the tools are in the drawers
238
352
  cleanMarkup: function() {
@@ -23,6 +23,9 @@
23
23
  function child(node, selector) {
24
24
  return children(node, selector)[0] || null;
25
25
  }
26
+ function is(node, selector) {
27
+ return !!node && node.nodeType === 1 && node.matches(selector);
28
+ }
26
29
  function addClass(node, names) {
27
30
  split(names).forEach(function(name) {
28
31
  node.classList.add(name);
@@ -35,6 +38,9 @@
35
38
  });
36
39
  return node;
37
40
  }
41
+ function hasClass(node, name) {
42
+ return !!node && node.nodeType === 1 && node.classList.contains(name);
43
+ }
38
44
  function split(names) {
39
45
  return String(names || "").split(/\s+/).filter(Boolean);
40
46
  }
@@ -122,9 +128,34 @@
122
128
  announce();
123
129
  }
124
130
  });
131
+ var listeningEditors = [];
132
+ var lastEditor = null;
133
+ function track(e) {
134
+ lastEditor = listeningEditors.filter(function(ge) {
135
+ return ge.contains(e.target);
136
+ })[0] || null;
137
+ }
138
+ document.addEventListener("pointerdown", track, true);
139
+ document.addEventListener("focusin", track, true);
140
+ function shortcutKey(e) {
141
+ var key = (e.key || "").toLowerCase();
142
+ if (!/^[a-z]$/.test(key)) {
143
+ key = { KeyC: "c", KeyV: "v" }[e.code] || "";
144
+ }
145
+ return key === "c" || key === "v" ? key : null;
146
+ }
147
+ function typing() {
148
+ var focus = document.activeElement;
149
+ return !!focus && (is(focus, "input, textarea, select") || focus.isContentEditable);
150
+ }
151
+ function textSelected() {
152
+ var selection = window.getSelection ? window.getSelection() : null;
153
+ return !!selection && !selection.isCollapsed && selection.toString() !== "";
154
+ }
125
155
  GridEditor.features.clipboard = function(ge) {
126
156
  var shown = null;
127
157
  var listening = false;
158
+ var shortcuts = shortcutsSetting();
128
159
  function used(name) {
129
160
  return !ge.settings.plugins || ge.settings.plugins.indexOf(name) !== -1;
130
161
  }
@@ -149,10 +180,26 @@
149
180
  }
150
181
  return ["row", "column", "section", "text", "element"].indexOf(kind) !== -1 ? kind : null;
151
182
  }
152
- function copy(node, kind) {
183
+ function shortcutsSetting() {
184
+ var wanted = (ge.settings.clipboard || {}).shortcuts;
185
+ var target = !!ge.settings.active_target;
186
+ if (wanted !== void 0 && typeof wanted !== "boolean") {
187
+ ge.warn("clipboard.shortcuts is true or false: " + (target ? "on" : "off") + ", as with active_target, is used");
188
+ wanted = void 0;
189
+ }
190
+ if (wanted === void 0) {
191
+ return target;
192
+ }
193
+ if (wanted && !target) {
194
+ ge.warn('clipboard.shortcuts needs active_target, or settings_panel "sidebar": without it, Ctrl+C and Ctrl+V do nothing');
195
+ return false;
196
+ }
197
+ return wanted;
198
+ }
199
+ function copy(node, kind, source) {
153
200
  var html = ge.nodeHtml(node);
154
201
  write({ version: VERSION, category: categoryOf(kind), kind, html });
155
- ge.emit("after-copy", ge.payloadFor(kind, node, { source: "tool" }));
202
+ ge.emit("after-copy", ge.payloadFor(kind, node, { source: source || "tool" }));
156
203
  var tool = child(ge.drawerOf(node), ".ge-copy");
157
204
  if (!tool) {
158
205
  return;
@@ -176,6 +223,66 @@
176
223
  }
177
224
  ge.place(ge.freshNode(clip.html), clip.kind, { appendTo: target, source: "paste" });
178
225
  }
226
+ function pasteByShortcut() {
227
+ var clip = read();
228
+ var target = ge.getActiveTarget();
229
+ var node = target || ge.getSelected();
230
+ if (!clip || !node) {
231
+ return false;
232
+ }
233
+ var placement = { appendTo: node, source: "paste" };
234
+ if (target && clip.category === "section") {
235
+ if (!available(clip)) {
236
+ return false;
237
+ }
238
+ var top = target;
239
+ while (top.parentElement && top.parentElement !== ge.canvas) {
240
+ top = top.parentElement;
241
+ }
242
+ placement = { insertAfter: top, source: "paste" };
243
+ } else if (!fits(clip, TARGETS[ge.kindOf(node)] || [])) {
244
+ return false;
245
+ }
246
+ var made = ge.place(ge.freshNode(clip.html), clip.kind, placement);
247
+ if (made && made.scrollIntoView) {
248
+ made.scrollIntoView({ behavior: "smooth" });
249
+ }
250
+ return true;
251
+ }
252
+ function copyByShortcut() {
253
+ if (textSelected()) {
254
+ return false;
255
+ }
256
+ var node = ge.getSelected() || ge.getActiveTarget();
257
+ var kind = node && ge.kindOf(node);
258
+ if (!kind || !categoryOf(kind)) {
259
+ return false;
260
+ }
261
+ copy(node, kind, "shortcut");
262
+ return true;
263
+ }
264
+ function onKeydown(e) {
265
+ if (lastEditor !== ge || e.repeat || e.shiftKey || e.altKey || !(e.ctrlKey || e.metaKey)) {
266
+ return;
267
+ }
268
+ var key = shortcutKey(e);
269
+ if (!key || !hasClass(ge.canvas, "ge-editing") || typing() || ge.panelOpen()) {
270
+ return;
271
+ }
272
+ if (key === "c" ? copyByShortcut() : pasteByShortcut()) {
273
+ e.preventDefault();
274
+ }
275
+ }
276
+ function listenForShortcuts(on) {
277
+ var at = listeningEditors.indexOf(ge);
278
+ if (on && at === -1) {
279
+ listeningEditors.push(ge);
280
+ document.addEventListener("keydown", onKeydown);
281
+ } else if (!on && at !== -1) {
282
+ listeningEditors.splice(at, 1);
283
+ document.removeEventListener("keydown", onKeydown);
284
+ }
285
+ }
179
286
  function refresh() {
180
287
  var clip = read();
181
288
  all(ge.canvas, ".ge-paste").forEach(function(tool) {
@@ -233,10 +340,17 @@
233
340
  document.addEventListener(CHANGE, refresh);
234
341
  listening = true;
235
342
  }
343
+ listenForShortcuts(shortcuts);
236
344
  },
237
345
  onDeinit: function() {
238
346
  document.removeEventListener(CHANGE, refresh);
239
347
  listening = false;
348
+ listenForShortcuts(false);
349
+ },
350
+ onDestroy: function() {
351
+ if (lastEditor === ge) {
352
+ lastEditor = null;
353
+ }
240
354
  },
241
355
  // Nothing of its own on the canvas: the tools are in the drawers
242
356
  cleanMarkup: function() {
@@ -1 +1 @@
1
- (()=>{var u=window.GridEditor;if(!u||typeof u.get!="function")throw new Error("grid-editor: load grideditor.js (or grideditor.bundle.min.js) before its plugins, its locales and grideditor.jquery.js");function b(t,e){return t?Array.prototype.slice.call(t.querySelectorAll(e)):[]}function w(t,e){return t?t.querySelector(e):null}function k(t,e){return t?Array.prototype.filter.call(t.children,function(i){return!e||i.matches(e)}):[]}function E(t,e){return k(t,e)[0]||null}function T(t,e){return C(e).forEach(function(i){t.classList.add(i)}),t}function A(t,e){return C(e).forEach(function(i){t.classList.remove(i)}),t}function C(t){return String(t||"").split(/\s+/).filter(Boolean)}var f={};function j(t){var e=t.nodeName;if(!f[e]){var i=document.body.appendChild(document.createElement(e));f[e]=getComputedStyle(i).display,i.remove(),f[e]==="none"&&(f[e]="block")}return f[e]}function I(t){return t.style.removeProperty("display"),getComputedStyle(t).display==="none"&&(t.style.display=j(t)),t}function H(t){return t.style.display="none",t}function s(t,e){return e===void 0&&(e=!R(t)),e?I(t):H(t)}function R(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)}Object.assign(u.locales.en,{"tool.copy":"Copy","tool.paste":"Paste","clipboard.paste_row":"Paste row","clipboard.paste_section":"Paste section"});var h="grideditor.clipboard",v="grideditor-clipboard",S=1,d=null,G={column:["row","text","container","element"],row:["column"],section:["row"]};function p(){var t;try{t=window.localStorage.getItem(h)}catch(i){return d}if(t===null)return d;try{var e=JSON.parse(t);return e&&e.version===S&&e.html?e:null}catch(i){return null}}function _(t){try{window.localStorage.setItem(h,JSON.stringify(t)),d=null}catch(e){d=t}O()}function O(){document.dispatchEvent(new CustomEvent(v))}window.addEventListener("storage",function(t){t.key===h&&O()});u.features.clipboard=function(t){var e=null,i=!1;function m(n){return!t.settings.plugins||t.settings.plugins.indexOf(n)!==-1}function L(n){return n.category==="container"?!!u.containers[n.kind]&&m(n.kind):n.category==="section"?!!u.features.sections&&m("sections"):n.category==="element"?!!u.features.elements&&m("elements"):!0}function l(n,r){return!!n&&r.indexOf(n.category)!==-1&&L(n)}function y(n){return u.containers[n]?"container":["row","column","section","text","element"].indexOf(n)!==-1?n:null}function B(n,r){var o=t.nodeHtml(n);_({version:S,category:y(r),kind:r,html:o}),t.emit("after-copy",t.payloadFor(r,n,{source:"tool"}));var a=E(t.drawerOf(n),".ge-copy");if(a){var c=w(a,"i");T(a,"ge-copied"),c&&c.setAttribute("class","bi bi-check2"),setTimeout(function(){A(a,"ge-copied"),c&&c.setAttribute("class","bi bi-copy")},1200)}}function N(n,r){var o=p();l(o,r)&&t.place(t.freshNode(o.html),o.kind,{appendTo:n,source:"paste"})}function g(){var n=p();b(t.canvas,".ge-paste").forEach(function(r){s(r,l(n,r.getAttribute("data-ge-paste").split(" ")))}),t.toolbarItems("clipboard").forEach(function(r){var o=x[parseInt(r.getAttribute("data-ge-item"),10)];s(r,l(n,[o.kind]))}),e=n}var x=[{kind:"row",labelKey:"clipboard.paste_row"},{kind:"section",labelKey:"clipboard.paste_section"}].map(function(n){return Object.assign(n,{iconClass:"bi bi-clipboard-plus",align:"end",source:"paste",hidden:function(){return!l(p(),[n.kind])},create:function(){return t.freshNode(e.html)}})});return{drawerTools:function(n,r,o){y(o)&&t.createTool(n,t.t("tool.copy"),"ge-copy","bi bi-copy",function(){B(r,o)});var a=G[o];if(a){var c=t.createTool(n,t.t("tool.paste"),"ge-paste","bi bi-clipboard-plus",function(){N(r,a)});c.setAttribute("data-ge-paste",a.join(" ")),s(c,l(p(),a))}},toolbar:x,onInit:function(){g(),i||(document.addEventListener(v,g),i=!0)},onDeinit:function(){document.removeEventListener(v,g),i=!1},cleanMarkup:function(){}}};})();
1
+ (()=>{var c=window.GridEditor;if(!c||typeof c.get!="function")throw new Error("grid-editor: load grideditor.js (or grideditor.bundle.min.js) before its plugins, its locales and grideditor.jquery.js");function O(t,n){return t?Array.prototype.slice.call(t.querySelectorAll(n)):[]}function k(t,n){return t?t.querySelector(n):null}function V(t,n){return t?Array.prototype.filter.call(t.children,function(o){return!n||o.matches(n)}):[]}function L(t,n){return V(t,n)[0]||null}function B(t,n){return!!t&&t.nodeType===1&&t.matches(n)}function N(t,n){return K(n).forEach(function(o){t.classList.add(o)}),t}function I(t,n){return K(n).forEach(function(o){t.classList.remove(o)}),t}function j(t,n){return!!t&&t.nodeType===1&&t.classList.contains(n)}function K(t){return String(t||"").split(/\s+/).filter(Boolean)}var f={};function q(t){var n=t.nodeName;if(!f[n]){var o=document.body.appendChild(document.createElement(n));f[n]=getComputedStyle(o).display,o.remove(),f[n]==="none"&&(f[n]="block")}return f[n]}function z(t){return t.style.removeProperty("display"),getComputedStyle(t).display==="none"&&(t.style.display=q(t)),t}function J(t){return t.style.display="none",t}function p(t,n){return n===void 0&&(n=!W(t)),n?z(t):J(t)}function W(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)}Object.assign(c.locales.en,{"tool.copy":"Copy","tool.paste":"Paste","clipboard.paste_row":"Paste row","clipboard.paste_section":"Paste section"});var b="grideditor.clipboard",w="grideditor-clipboard",H=1,h=null,_={column:["row","text","container","element"],row:["column"],section:["row"]};function d(){var t;try{t=window.localStorage.getItem(b)}catch(o){return h}if(t===null)return h;try{var n=JSON.parse(t);return n&&n.version===H&&n.html?n:null}catch(o){return null}}function Y(t){try{window.localStorage.setItem(b,JSON.stringify(t)),h=null}catch(n){h=t}R()}function R(){document.dispatchEvent(new CustomEvent(w))}window.addEventListener("storage",function(t){t.key===b&&R()});var m=[],v=null;function D(t){v=m.filter(function(n){return n.contains(t.target)})[0]||null}document.addEventListener("pointerdown",D,!0);document.addEventListener("focusin",D,!0);function $(t){var n=(t.key||"").toLowerCase();return/^[a-z]$/.test(n)||(n={KeyC:"c",KeyV:"v"}[t.code]||""),n==="c"||n==="v"?n:null}function Q(){var t=document.activeElement;return!!t&&(B(t,"input, textarea, select")||t.isContentEditable)}function Z(){var t=window.getSelection?window.getSelection():null;return!!t&&!t.isCollapsed&&t.toString()!==""}c.features.clipboard=function(t){var n=null,o=!1,P=G();function g(e){return!t.settings.plugins||t.settings.plugins.indexOf(e)!==-1}function E(e){return e.category==="container"?!!c.containers[e.kind]&&g(e.kind):e.category==="section"?!!c.features.sections&&g("sections"):e.category==="element"?!!c.features.elements&&g("elements"):!0}function s(e,r){return!!e&&r.indexOf(e.category)!==-1&&E(e)}function y(e){return c.containers[e]?"container":["row","column","section","text","element"].indexOf(e)!==-1?e:null}function G(){var e=(t.settings.clipboard||{}).shortcuts,r=!!t.settings.active_target;return e!==void 0&&typeof e!="boolean"&&(t.warn("clipboard.shortcuts is true or false: "+(r?"on":"off")+", as with active_target, is used"),e=void 0),e===void 0?r:e&&!r?(t.warn('clipboard.shortcuts needs active_target, or settings_panel "sidebar": without it, Ctrl+C and Ctrl+V do nothing'),!1):e}function C(e,r,i){var u=t.nodeHtml(e);Y({version:H,category:y(r),kind:r,html:u}),t.emit("after-copy",t.payloadFor(r,e,{source:i||"tool"}));var a=L(t.drawerOf(e),".ge-copy");if(a){var l=k(a,"i");N(a,"ge-copied"),l&&l.setAttribute("class","bi bi-check2"),setTimeout(function(){I(a,"ge-copied"),l&&l.setAttribute("class","bi bi-copy")},1200)}}function F(e,r){var i=d();s(i,r)&&t.place(t.freshNode(i.html),i.kind,{appendTo:e,source:"paste"})}function M(){var e=d(),r=t.getActiveTarget(),i=r||t.getSelected();if(!e||!i)return!1;var u={appendTo:i,source:"paste"};if(r&&e.category==="section"){if(!E(e))return!1;for(var a=r;a.parentElement&&a.parentElement!==t.canvas;)a=a.parentElement;u={insertAfter:a,source:"paste"}}else if(!s(e,_[t.kindOf(i)]||[]))return!1;var l=t.place(t.freshNode(e.html),e.kind,u);return l&&l.scrollIntoView&&l.scrollIntoView({behavior:"smooth"}),!0}function U(){if(Z())return!1;var e=t.getSelected()||t.getActiveTarget(),r=e&&t.kindOf(e);return!r||!y(r)?!1:(C(e,r,"shortcut"),!0)}function S(e){if(!(v!==t||e.repeat||e.shiftKey||e.altKey||!(e.ctrlKey||e.metaKey))){var r=$(e);!r||!j(t.canvas,"ge-editing")||Q()||t.panelOpen()||(r==="c"?U():M())&&e.preventDefault()}}function T(e){var r=m.indexOf(t);e&&r===-1?(m.push(t),document.addEventListener("keydown",S)):!e&&r!==-1&&(m.splice(r,1),document.removeEventListener("keydown",S))}function x(){var e=d();O(t.canvas,".ge-paste").forEach(function(r){p(r,s(e,r.getAttribute("data-ge-paste").split(" ")))}),t.toolbarItems("clipboard").forEach(function(r){var i=A[parseInt(r.getAttribute("data-ge-item"),10)];p(r,s(e,[i.kind]))}),n=e}var A=[{kind:"row",labelKey:"clipboard.paste_row"},{kind:"section",labelKey:"clipboard.paste_section"}].map(function(e){return Object.assign(e,{iconClass:"bi bi-clipboard-plus",align:"end",source:"paste",hidden:function(){return!s(d(),[e.kind])},create:function(){return t.freshNode(n.html)}})});return{drawerTools:function(e,r,i){y(i)&&t.createTool(e,t.t("tool.copy"),"ge-copy","bi bi-copy",function(){C(r,i)});var u=_[i];if(u){var a=t.createTool(e,t.t("tool.paste"),"ge-paste","bi bi-clipboard-plus",function(){F(r,u)});a.setAttribute("data-ge-paste",u.join(" ")),p(a,s(d(),u))}},toolbar:A,onInit:function(){x(),o||(document.addEventListener(w,x),o=!0),T(P)},onDeinit:function(){document.removeEventListener(w,x),o=!1,T(!1)},onDestroy:function(){v===t&&(v=null)},cleanMarkup:function(){}}};})();