From 127d6aac043ee3a8a8c513b8bb2644b191064ca6 Mon Sep 17 00:00:00 2001 From: La Kelo Gaztetxea Date: Wed, 9 Mar 2022 23:01:13 +0000 Subject: [PATCH 001/175] Translated using Weblate (Spanish) Currently translated at 100.0% (243 of 243 strings) Translation: Gancio/Web Translate-URL: https://hosted.weblate.org/projects/gancio/web/es/ --- locales/es.json | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/locales/es.json b/locales/es.json index e8b4e5b5..0f4a7680 100644 --- a/locales/es.json +++ b/locales/es.json @@ -105,19 +105,19 @@ "intro": "A diferencia de las plataformas del capitalismo, que hacen todo lo posible para mantener datos y usuarios dentro de ellas, creemos las informaciones, así como las personas, deben ser libres. Para ello, puedes mantenerte enterado sobre los eventos que te interesan como mejor te parezca, sin necesariamente tener que pasar por este sitio.", "email_description": "Puedes recibir por mail los eventos que te interesan.", "insert_your_address": "Casilla de correo", - "feed_description": "Para seguir las actualizaciones desde un ordenador o teléfono inteligente sin la necesidad de abrir periódicamente el sitio, el método recomendado es usar los feeds RSS.

\n\n

Con rss feeds, utilizas una aplicación especial para recibir actualizaciones de los sitios que más te interesan, como por ejemplo éste. Es una buena manera de seguir muchos sitios muy rápidamente, sin la necesidad de crear una cuenta u otras complicaciones.

\n \n
  • Si tienes Android, te sugerimos Feeder o Feeder
  • \n
  • Para iPhone/iPad puedes usar Feed4U
  • \n
  • En el caso de un ordenador aconsejamos Feedbro, se instala como plugin de Firefox o de Chrome y funciona con todos los principales sistemas.
  • \n
    \n Agregando este link a tu lector de feed, estarás siempre actualizado/a.", + "feed_description": "Para seguir las actualizaciones desde un ordenador o teléfono inteligente sin la necesidad de abrir periódicamente el sitio, el método recomendado es usar los feeds RSS.

    \n\n

    Con rss feeds, utilizas una aplicación especial para recibir actualizaciones de los sitios que más te interesan, como por ejemplo éste. Es una buena manera de seguir muchos sitios muy rápidamente, sin la necesidad de crear una cuenta u otras complicaciones.

    \n\n
  • Si tienes Android, te sugerimos Feeder o Feeder
  • \n
  • Para iPhone/iPad puedes usar Feed4U
  • \n
  • En el caso de un ordenador aconsejamos Feedbro, se instala como plugin de Firefox o de Chrome y funciona con todos los principales sistemas.
  • \n
    \nAgregando este link a tu lector de feed, estarás siempre actualizado/a.", "ical_description": "Las computadoras y los teléfonos inteligentes suelen estar equipados con una aplicación para administrar un calendario. Estos programas generalmente se pueden usar para importar un calendario remoto.", "list_description": "Si tienes un sitio web y quieres mostrar una lista de eventos, puedes usar el siguiente código" }, "register": { - "description": "Los movimientos sociales necesitan organizarse y autofinanciarse.
    Este es un regalo para ustedes, úsenlo solamente para eventos con fines no comerciales y obviamente antifascistas, antisexistas y antirracistas.\n
    Antes de que puedas publicar debemos aprobar la cuenta . Como imaginarás, detrás de este sitio hay personas de carne y hueso, por esto te pedimos escribir algo para hacernos saber que tipos de eventos te gustaría publicar.", + "description": "Los movimientos sociales necesitan organizarse y autofinanciarse.
    \nEste es un regalo para ustedes, úsenlo solamente para eventos con fines no comerciales y obviamente antifascistas, antisexistas y antirracistas.\n
    Antes de que puedas publicar, debemos aprobar la cuenta . Como imaginarás, detrás de este sitio hay personas de carne y hueso, por esto te pedimos escribir algo para hacernos saber que tipos de eventos te gustaría publicar.", "error": "Error: ", "complete": "Confirmaremos el registro lo antes posible.", "first_user": "Administrador creado y activado" }, "event": { "anon": "Anónimo", - "anon_description": "Puedes ingresar un evento sin registrarte o iniciar sesión, pero en este caso tendrás que esperar a que alguien lo lea para confirmar que es un evento adecuado para este espacio,\ndelegando esta elección. Además, no será posible modificarlo.

    \nSi no te gusta, puedes iniciar sesión o registrarte ,\nde lo contrario, continúa y recibirás una respuesta lo antes posible. ", + "anon_description": "Puedes ingresar un evento sin registrarte o iniciar sesión, pero en este caso tendrás que esperar a que alguien lo lea para confirmar que es un evento adecuado para este espacio,\ndelegando esta elección. Además, no será posible modificarlo.

    \nSi no te gusta, puedes iniciar sesión o registrarte . De lo contrario, continúa y recibirás una respuesta lo antes posible. ", "same_day": "Mismo día", "what_description": "Nombre evento", "description_description": "Descripción, puedes copiar y pegar", @@ -221,7 +221,14 @@ "is_dark": "Tema oscuro", "instance_block_confirm": "¿Estás seguro/a que quieres bloquear la instancia {instance}?", "add_instance": "Añadir instancia", - "disable_user_confirm": "Estas seguro de que quieres deshabilitar a {user}?" + "disable_user_confirm": "Estas seguro de que quieres deshabilitar a {user}?", + "widget": "Widget", + "show_smtp_setup": "Ajustes de correo", + "smtp_hostname": "Nombre del equipo SMTP", + "smtp_test_success": "Un correo de prueba se ha enviado a {admin_email}. Por favos, comprueba tu bandeja de entrada", + "smtp_test_button": "Enviar correo de prueba", + "admin_email": "Correo del administrador", + "smtp_description": "" }, "auth": { "not_confirmed": "Todavía no hemos confirmado este email…", @@ -263,5 +270,10 @@ "validators": { "email": "Introduce un correo electrónico valido", "required": "{fieldName} es requerido" + }, + "setup": { + "completed": "Configuración completada", + "start": "Inicio", + "completed_description": "

    Puedes ingresar con el siguiente usuario:

    Usuario: {email}
    Contraseña: {password}

    " } } From 2132b88a0ee750d64f1a06752fdee9fab2551a8a Mon Sep 17 00:00:00 2001 From: La Kelo Gaztetxea Date: Wed, 9 Mar 2022 23:06:37 +0000 Subject: [PATCH 002/175] Translated using Weblate (Basque) Currently translated at 100.0% (243 of 243 strings) Translation: Gancio/Web Translate-URL: https://hosted.weblate.org/projects/gancio/web/eu/ --- locales/eu.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/locales/eu.json b/locales/eu.json index 2440e53d..16456126 100644 --- a/locales/eu.json +++ b/locales/eu.json @@ -109,7 +109,7 @@ "list_description": "Webgune bat baduzu eta ekitaldien zerrenda erakutsi nahi baduzu, ondorengo kodea erabili" }, "register": { - "description": "Herri mugimenduek autoantolaketaren bidean diru-iturrien beharrak dauzkatela badakigu.
    Honako hauxe oparitxoa da, hortaz erabili ezazue ekitaldi ez-komertzialak iragartzeko, eta esan gabe doa, ekitaldi antifaxistak, antisexistak eta antiarriztetarako :) .\n
    Argitaratzen hasi baino lehen zure kontu berriak onarpena jaso beharko du beraz, webgune honen atzean hezur-haragizko pertsonak gaudela jakinda , (momenutz euskal 'AI'-rik ez daukagu baina adi, agertuko direla) idatzi iezaguzu lerro batzuk argitaratu nahi dituzun ekitaldiei buruz.", + "description": "Herri mugimenduek autoantolaketaren bidean diru-iturrien beharrak dauzkatela badakigu.
    \nHonako hauxe oparitxoa da, hortaz erabili ezazue ekitaldi ez-komertzialak iragartzeko, eta esan gabe doa, ekitaldi antifaxistak, antisexistak eta antiarriztetarako :) .\n
    Argitaratzen hasi baino lehen zure kontu berriak onarpena jaso beharko du beraz, webgune honen atzean hezur-haragizko pertsonak gaudela jakinda , (momenutz euskal 'AI'-rik ez daukagu baina adi, agertuko direla) idatzi iezaguzu lerro batzuk argitaratu nahi dituzun ekitaldiei buruz.", "error": "Errorea: ", "complete": "Izen-ematea baieztatua izan behar da.", "first_user": "Administratzailea sortu da" @@ -225,7 +225,8 @@ "smtp_test_success": "Probako eposta bidali da {admin_email}-(e)ra, begiratu zure sarrera-ontzia", "admin_email": "Administratzailearen eposta", "smtp_hostname": "SMTP hostname", - "smtp_description": "
    • Administratzaileak eposta bat jaso beharko luke anonimo batek ekitaldi bat gehitzen duenean (gaituta badago).
    • Administratzaileak eposta bat jaso beharko luke izena emateko eskari bakoitzeko (gaituta badago).
    • Erabiltzaileak eposta bat jaso beharko luke izena emateko eskariarekin.
    • Erabiltzaileak eposta bat jaso beharko luke izen ematea baieztatzean.
    • Erabiltzaileak eposta bat jaso beharko luke administratzaileak zuzenean izena emanez gero.
    • Erabiltzaileek eposta bat jaso beharko lukete pasahitza ahazten dutenean.
    " + "smtp_description": "
    • Administratzaileak eposta bat jaso beharko luke anonimo batek ekitaldi bat gehitzen duenean (gaituta badago).
    • Administratzaileak eposta bat jaso beharko luke izena emateko eskari bakoitzeko (gaituta badago).
    • Erabiltzaileak eposta bat jaso beharko luke izena emateko eskariarekin.
    • Erabiltzaileak eposta bat jaso beharko luke izen ematea baieztatzean.
    • Erabiltzaileak eposta bat jaso beharko luke administratzaileak zuzenean izena emanez gero.
    • Erabiltzaileek eposta bat jaso beharko lukete pasahitza ahazten dutenean.
    ", + "widget": "Tresna" }, "auth": { "not_confirmed": "Oraindik baieztatu gabe dago…", From 3b11b89d5a878a69e039e6e8368a432eb5e54285 Mon Sep 17 00:00:00 2001 From: La Kelo Gaztetxea Date: Wed, 9 Mar 2022 22:50:34 +0000 Subject: [PATCH 003/175] Translated using Weblate (Spanish) Currently translated at 100.0% (13 of 13 strings) Translation: Gancio/Email Translate-URL: https://hosted.weblate.org/projects/gancio/email/es/ --- locales/email/es.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/locales/email/es.json b/locales/email/es.json index 03c58532..a96f8bc9 100644 --- a/locales/email/es.json +++ b/locales/email/es.json @@ -24,5 +24,9 @@ }, "event_confirm": { "content": "Puede confirmar este evento aquí" + }, + "test": { + "subject": "Tu configuración SMTP funciona", + "content": "Esto es un email de prueba. Si estás leyendo esto es que tu configuración funciona." } } From 083a050a25e50ed893da2ef1e6a9b0190ecfd628 Mon Sep 17 00:00:00 2001 From: lesion Date: Tue, 15 Mar 2022 15:01:44 +0100 Subject: [PATCH 004/175] add `external_style` attribute to wc to load external css --- docs/assets/js/gancio-events.es.js | 211 ++++++++++++++++---------- static/gancio-events.es.js | 211 ++++++++++++++++---------- webcomponents/index.html | 2 +- webcomponents/src/GancioEvents.svelte | 6 +- wp-plugin/js/gancio-events.es.js | 211 ++++++++++++++++---------- 5 files changed, 410 insertions(+), 231 deletions(-) diff --git a/docs/assets/js/gancio-events.es.js b/docs/assets/js/gancio-events.es.js index b64f32bf..d7d48880 100644 --- a/docs/assets/js/gancio-events.es.js +++ b/docs/assets/js/gancio-events.es.js @@ -4,7 +4,7 @@ function run(fn) { return fn(); } function blank_object() { - return Object.create(null); + return /* @__PURE__ */ Object.create(null); } function run_all(fns) { fns.forEach(run); @@ -104,7 +104,7 @@ function schedule_update() { function add_render_callback(fn) { render_callbacks.push(fn); } -const seen_callbacks = new Set(); +const seen_callbacks = /* @__PURE__ */ new Set(); let flushidx = 0; function flush() { const saved_component = current_component; @@ -146,7 +146,7 @@ function update($$) { $$.after_update.forEach(add_render_callback); } } -const outroing = new Set(); +const outroing = /* @__PURE__ */ new Set(); function transition_in(block, local) { if (block && block.i) { outroing.delete(block); @@ -282,19 +282,41 @@ if (typeof HTMLElement === "function") { } function get_each_context(ctx, list, i) { const child_ctx = ctx.slice(); - child_ctx[11] = list[i]; + child_ctx[12] = list[i]; return child_ctx; } function get_each_context_1(ctx, list, i) { const child_ctx = ctx.slice(); - child_ctx[14] = list[i]; + child_ctx[15] = list[i]; return child_ctx; } +function create_if_block_5(ctx) { + let link; + return { + c() { + link = element("link"); + attr(link, "rel", "stylesheet"); + attr(link, "href", ctx[4]); + }, + m(target, anchor) { + insert(target, link, anchor); + }, + p(ctx2, dirty) { + if (dirty & 16) { + attr(link, "href", ctx2[4]); + } + }, + d(detaching) { + if (detaching) + detach(link); + } + }; +} function create_if_block$1(ctx) { let div; let t; let if_block = ctx[1] && ctx[3] === "true" && create_if_block_4(ctx); - let each_value = ctx[4]; + let each_value = ctx[5]; let each_blocks = []; for (let i = 0; i < each_value.length; i += 1) { each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i)); @@ -336,8 +358,8 @@ function create_if_block$1(ctx) { if_block.d(1); if_block = null; } - if (dirty & 25) { - each_value = ctx2[4]; + if (dirty & 41) { + each_value = ctx2[5]; let i; for (i = 0; i < each_value.length; i += 1) { const child_ctx = get_each_context(ctx2, each_value, i); @@ -395,7 +417,7 @@ function create_if_block_4(ctx) { attr(div0, "class", "title"); attr(img, "id", "logo"); attr(img, "alt", "logo"); - if (!src_url_equal(img.src, img_src_value = "" + (ctx[0] + "/logo.png"))) + if (!src_url_equal(img.src, img_src_value = ctx[0] + "/logo.png")) attr(img, "src", img_src_value); attr(div1, "class", "content"); attr(a, "href", ctx[0]); @@ -413,7 +435,7 @@ function create_if_block_4(ctx) { p(ctx2, dirty) { if (dirty & 2) set_data(t0, ctx2[1]); - if (dirty & 1 && !src_url_equal(img.src, img_src_value = "" + (ctx2[0] + "/logo.png"))) { + if (dirty & 1 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/logo.png")) { attr(img, "src", img_src_value); } if (dirty & 1) { @@ -429,7 +451,7 @@ function create_if_block_4(ctx) { function create_if_block_2(ctx) { let div; function select_block_type(ctx2, dirty) { - if (ctx2[11].media.length) + if (ctx2[12].media.length) return create_if_block_3; return create_else_block; } @@ -472,7 +494,7 @@ function create_else_block(ctx) { c() { img = element("img"); attr(img, "style", "aspect-ratio=1.7778;"); - attr(img, "alt", img_alt_value = ctx[11].title); + attr(img, "alt", img_alt_value = ctx[12].title); if (!src_url_equal(img.src, img_src_value = ctx[0] + "/noimg.svg")) attr(img, "src", img_src_value); attr(img, "loading", "lazy"); @@ -481,7 +503,7 @@ function create_else_block(ctx) { insert(target, img, anchor); }, p(ctx2, dirty) { - if (dirty & 16 && img_alt_value !== (img_alt_value = ctx2[11].title)) { + if (dirty & 32 && img_alt_value !== (img_alt_value = ctx2[12].title)) { attr(img, "alt", img_alt_value); } if (dirty & 1 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/noimg.svg")) { @@ -502,9 +524,9 @@ function create_if_block_3(ctx) { return { c() { img = element("img"); - attr(img, "style", img_style_value = "object-position: " + position$1(ctx[11]) + "; aspect-ratio=1.7778;"); - attr(img, "alt", img_alt_value = ctx[11].media[0].name); - if (!src_url_equal(img.src, img_src_value = ctx[0] + "/media/thumb/" + ctx[11].media[0].url)) + attr(img, "style", img_style_value = "object-position: " + position$1(ctx[12]) + "; aspect-ratio=1.7778;"); + attr(img, "alt", img_alt_value = ctx[12].media[0].name); + if (!src_url_equal(img.src, img_src_value = ctx[0] + "/media/thumb/" + ctx[12].media[0].url)) attr(img, "src", img_src_value); attr(img, "loading", "lazy"); }, @@ -512,13 +534,13 @@ function create_if_block_3(ctx) { insert(target, img, anchor); }, p(ctx2, dirty) { - if (dirty & 16 && img_style_value !== (img_style_value = "object-position: " + position$1(ctx2[11]) + "; aspect-ratio=1.7778;")) { + if (dirty & 32 && img_style_value !== (img_style_value = "object-position: " + position$1(ctx2[12]) + "; aspect-ratio=1.7778;")) { attr(img, "style", img_style_value); } - if (dirty & 16 && img_alt_value !== (img_alt_value = ctx2[11].media[0].name)) { + if (dirty & 32 && img_alt_value !== (img_alt_value = ctx2[12].media[0].name)) { attr(img, "alt", img_alt_value); } - if (dirty & 17 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/media/thumb/" + ctx2[11].media[0].url)) { + if (dirty & 33 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/media/thumb/" + ctx2[12].media[0].url)) { attr(img, "src", img_src_value); } }, @@ -530,7 +552,7 @@ function create_if_block_3(ctx) { } function create_if_block_1$1(ctx) { let div; - let each_value_1 = ctx[11].tags; + let each_value_1 = ctx[12].tags; let each_blocks = []; for (let i = 0; i < each_value_1.length; i += 1) { each_blocks[i] = create_each_block_1(get_each_context_1(ctx, each_value_1, i)); @@ -550,8 +572,8 @@ function create_if_block_1$1(ctx) { } }, p(ctx2, dirty) { - if (dirty & 16) { - each_value_1 = ctx2[11].tags; + if (dirty & 32) { + each_value_1 = ctx2[12].tags; let i; for (i = 0; i < each_value_1.length; i += 1) { const child_ctx = get_each_context_1(ctx2, each_value_1, i); @@ -579,7 +601,7 @@ function create_if_block_1$1(ctx) { function create_each_block_1(ctx) { let span; let t0; - let t1_value = ctx[14] + ""; + let t1_value = ctx[15] + ""; let t1; return { c() { @@ -594,7 +616,7 @@ function create_each_block_1(ctx) { append(span, t1); }, p(ctx2, dirty) { - if (dirty & 16 && t1_value !== (t1_value = ctx2[14] + "")) + if (dirty & 32 && t1_value !== (t1_value = ctx2[15] + "")) set_data(t1, t1_value); }, d(detaching) { @@ -608,27 +630,27 @@ function create_each_block(ctx) { let t0; let div2; let div0; - let t1_value = when$1(ctx[11].start_datetime) + ""; + let t1_value = when$1(ctx[12].start_datetime) + ""; let t1; let t2; let div1; - let t3_value = ctx[11].title + ""; + let t3_value = ctx[12].title + ""; let t3; let t4; let span1; let t5; - let t6_value = ctx[11].place.name + ""; + let t6_value = ctx[12].place.name + ""; let t6; let t7; let span0; - let t8_value = ctx[11].place.address + ""; + let t8_value = ctx[12].place.address + ""; let t8; let t9; let t10; let a_href_value; let a_title_value; let if_block0 = ctx[3] !== "true" && create_if_block_2(ctx); - let if_block1 = ctx[11].tags.length && create_if_block_1$1(ctx); + let if_block1 = ctx[12].tags.length && create_if_block_1$1(ctx); return { c() { a = element("a"); @@ -657,9 +679,9 @@ function create_each_block(ctx) { attr(span0, "class", "subtitle"); attr(span1, "class", "place"); attr(div2, "class", "content"); - attr(a, "href", a_href_value = "" + (ctx[0] + "/event/" + (ctx[11].slug || ctx[11].id))); + attr(a, "href", a_href_value = ctx[0] + "/event/" + (ctx[12].slug || ctx[12].id)); attr(a, "class", "event"); - attr(a, "title", a_title_value = ctx[11].title); + attr(a, "title", a_title_value = ctx[12].title); attr(a, "target", "_blank"); }, m(target, anchor) { @@ -698,15 +720,15 @@ function create_each_block(ctx) { if_block0.d(1); if_block0 = null; } - if (dirty & 16 && t1_value !== (t1_value = when$1(ctx2[11].start_datetime) + "")) + if (dirty & 32 && t1_value !== (t1_value = when$1(ctx2[12].start_datetime) + "")) set_data(t1, t1_value); - if (dirty & 16 && t3_value !== (t3_value = ctx2[11].title + "")) + if (dirty & 32 && t3_value !== (t3_value = ctx2[12].title + "")) set_data(t3, t3_value); - if (dirty & 16 && t6_value !== (t6_value = ctx2[11].place.name + "")) + if (dirty & 32 && t6_value !== (t6_value = ctx2[12].place.name + "")) set_data(t6, t6_value); - if (dirty & 16 && t8_value !== (t8_value = ctx2[11].place.address + "")) + if (dirty & 32 && t8_value !== (t8_value = ctx2[12].place.address + "")) set_data(t8, t8_value); - if (ctx2[11].tags.length) { + if (ctx2[12].tags.length) { if (if_block1) { if_block1.p(ctx2, dirty); } else { @@ -718,10 +740,10 @@ function create_each_block(ctx) { if_block1.d(1); if_block1 = null; } - if (dirty & 17 && a_href_value !== (a_href_value = "" + (ctx2[0] + "/event/" + (ctx2[11].slug || ctx2[11].id)))) { + if (dirty & 33 && a_href_value !== (a_href_value = ctx2[0] + "/event/" + (ctx2[12].slug || ctx2[12].id))) { attr(a, "href", a_href_value); } - if (dirty & 16 && a_title_value !== (a_title_value = ctx2[11].title)) { + if (dirty & 32 && a_title_value !== (a_title_value = ctx2[12].title)) { attr(a, "title", a_title_value); } }, @@ -736,41 +758,65 @@ function create_each_block(ctx) { }; } function create_fragment$1(ctx) { - let if_block_anchor; - let if_block = ctx[4].length && create_if_block$1(ctx); + let t; + let if_block1_anchor; + let if_block0 = ctx[4] && create_if_block_5(ctx); + let if_block1 = ctx[5].length && create_if_block$1(ctx); return { c() { - if (if_block) - if_block.c(); - if_block_anchor = empty(); + if (if_block0) + if_block0.c(); + t = space(); + if (if_block1) + if_block1.c(); + if_block1_anchor = empty(); this.c = noop; }, m(target, anchor) { - if (if_block) - if_block.m(target, anchor); - insert(target, if_block_anchor, anchor); + if (if_block0) + if_block0.m(target, anchor); + insert(target, t, anchor); + if (if_block1) + if_block1.m(target, anchor); + insert(target, if_block1_anchor, anchor); }, p(ctx2, [dirty]) { - if (ctx2[4].length) { - if (if_block) { - if_block.p(ctx2, dirty); + if (ctx2[4]) { + if (if_block0) { + if_block0.p(ctx2, dirty); } else { - if_block = create_if_block$1(ctx2); - if_block.c(); - if_block.m(if_block_anchor.parentNode, if_block_anchor); + if_block0 = create_if_block_5(ctx2); + if_block0.c(); + if_block0.m(t.parentNode, t); } - } else if (if_block) { - if_block.d(1); - if_block = null; + } else if (if_block0) { + if_block0.d(1); + if_block0 = null; + } + if (ctx2[5].length) { + if (if_block1) { + if_block1.p(ctx2, dirty); + } else { + if_block1 = create_if_block$1(ctx2); + if_block1.c(); + if_block1.m(if_block1_anchor.parentNode, if_block1_anchor); + } + } else if (if_block1) { + if_block1.d(1); + if_block1 = null; } }, i: noop, o: noop, d(detaching) { - if (if_block) - if_block.d(detaching); + if (if_block0) + if_block0.d(detaching); if (detaching) - detach(if_block_anchor); + detach(t); + if (if_block1) + if_block1.d(detaching); + if (detaching) + detach(if_block1_anchor); } }; } @@ -799,6 +845,7 @@ function instance$1($$self, $$props, $$invalidate) { let { theme = "light" } = $$props; let { show_recurrent = false } = $$props; let { sidebar = "true" } = $$props; + let { external_style = "" } = $$props; let mounted = false; let events = []; function update2(v) { @@ -818,7 +865,7 @@ function instance$1($$self, $$props, $$invalidate) { params.push(`show_recurrent=true`); } fetch(`${baseurl}/api/events?${params.join("&")}`).then((res) => res.json()).then((e) => { - $$invalidate(4, events = e); + $$invalidate(5, events = e); }).catch((e) => { console.error("Error loading Gancio API -> ", e); }); @@ -833,20 +880,22 @@ function instance$1($$self, $$props, $$invalidate) { if ("title" in $$props2) $$invalidate(1, title = $$props2.title); if ("maxlength" in $$props2) - $$invalidate(5, maxlength = $$props2.maxlength); + $$invalidate(6, maxlength = $$props2.maxlength); if ("tags" in $$props2) - $$invalidate(6, tags = $$props2.tags); + $$invalidate(7, tags = $$props2.tags); if ("places" in $$props2) - $$invalidate(7, places = $$props2.places); + $$invalidate(8, places = $$props2.places); if ("theme" in $$props2) $$invalidate(2, theme = $$props2.theme); if ("show_recurrent" in $$props2) - $$invalidate(8, show_recurrent = $$props2.show_recurrent); + $$invalidate(9, show_recurrent = $$props2.show_recurrent); if ("sidebar" in $$props2) $$invalidate(3, sidebar = $$props2.sidebar); + if ("external_style" in $$props2) + $$invalidate(4, external_style = $$props2.external_style); }; $$self.$$.update = () => { - if ($$self.$$.dirty & 494) { + if ($$self.$$.dirty & 974) { update2(); } }; @@ -855,6 +904,7 @@ function instance$1($$self, $$props, $$invalidate) { title, theme, sidebar, + external_style, events, maxlength, tags, @@ -873,12 +923,13 @@ class GancioEvents extends SvelteElement { }, instance$1, create_fragment$1, safe_not_equal, { baseurl: 0, title: 1, - maxlength: 5, - tags: 6, - places: 7, + maxlength: 6, + tags: 7, + places: 8, theme: 2, - show_recurrent: 8, - sidebar: 3 + show_recurrent: 9, + sidebar: 3, + external_style: 4 }, null); if (options) { if (options.target) { @@ -899,7 +950,8 @@ class GancioEvents extends SvelteElement { "places", "theme", "show_recurrent", - "sidebar" + "sidebar", + "external_style" ]; } get baseurl() { @@ -917,21 +969,21 @@ class GancioEvents extends SvelteElement { flush(); } get maxlength() { - return this.$$.ctx[5]; + return this.$$.ctx[6]; } set maxlength(maxlength) { this.$$set({ maxlength }); flush(); } get tags() { - return this.$$.ctx[6]; + return this.$$.ctx[7]; } set tags(tags) { this.$$set({ tags }); flush(); } get places() { - return this.$$.ctx[7]; + return this.$$.ctx[8]; } set places(places) { this.$$set({ places }); @@ -945,7 +997,7 @@ class GancioEvents extends SvelteElement { flush(); } get show_recurrent() { - return this.$$.ctx[8]; + return this.$$.ctx[9]; } set show_recurrent(show_recurrent) { this.$$set({ show_recurrent }); @@ -958,6 +1010,13 @@ class GancioEvents extends SvelteElement { this.$$set({ sidebar }); flush(); } + get external_style() { + return this.$$.ctx[4]; + } + set external_style(external_style) { + this.$$set({ external_style }); + flush(); + } } customElements.define("gancio-events", GancioEvents); function create_if_block(ctx) { @@ -996,7 +1055,7 @@ function create_if_block(ctx) { t6 = text(t6_value); attr(div1, "class", "place"); attr(div2, "class", "container"); - attr(a, "href", a_href_value = "" + (ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id))); + attr(a, "href", a_href_value = ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id)); attr(a, "class", "card"); attr(a, "target", "_blank"); }, @@ -1035,7 +1094,7 @@ function create_if_block(ctx) { set_data(t3, t3_value); if (dirty & 2 && t6_value !== (t6_value = ctx2[1].place.name + "")) set_data(t6, t6_value); - if (dirty & 3 && a_href_value !== (a_href_value = "" + (ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id)))) { + if (dirty & 3 && a_href_value !== (a_href_value = ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id))) { attr(a, "href", a_href_value); } }, diff --git a/static/gancio-events.es.js b/static/gancio-events.es.js index b64f32bf..d7d48880 100644 --- a/static/gancio-events.es.js +++ b/static/gancio-events.es.js @@ -4,7 +4,7 @@ function run(fn) { return fn(); } function blank_object() { - return Object.create(null); + return /* @__PURE__ */ Object.create(null); } function run_all(fns) { fns.forEach(run); @@ -104,7 +104,7 @@ function schedule_update() { function add_render_callback(fn) { render_callbacks.push(fn); } -const seen_callbacks = new Set(); +const seen_callbacks = /* @__PURE__ */ new Set(); let flushidx = 0; function flush() { const saved_component = current_component; @@ -146,7 +146,7 @@ function update($$) { $$.after_update.forEach(add_render_callback); } } -const outroing = new Set(); +const outroing = /* @__PURE__ */ new Set(); function transition_in(block, local) { if (block && block.i) { outroing.delete(block); @@ -282,19 +282,41 @@ if (typeof HTMLElement === "function") { } function get_each_context(ctx, list, i) { const child_ctx = ctx.slice(); - child_ctx[11] = list[i]; + child_ctx[12] = list[i]; return child_ctx; } function get_each_context_1(ctx, list, i) { const child_ctx = ctx.slice(); - child_ctx[14] = list[i]; + child_ctx[15] = list[i]; return child_ctx; } +function create_if_block_5(ctx) { + let link; + return { + c() { + link = element("link"); + attr(link, "rel", "stylesheet"); + attr(link, "href", ctx[4]); + }, + m(target, anchor) { + insert(target, link, anchor); + }, + p(ctx2, dirty) { + if (dirty & 16) { + attr(link, "href", ctx2[4]); + } + }, + d(detaching) { + if (detaching) + detach(link); + } + }; +} function create_if_block$1(ctx) { let div; let t; let if_block = ctx[1] && ctx[3] === "true" && create_if_block_4(ctx); - let each_value = ctx[4]; + let each_value = ctx[5]; let each_blocks = []; for (let i = 0; i < each_value.length; i += 1) { each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i)); @@ -336,8 +358,8 @@ function create_if_block$1(ctx) { if_block.d(1); if_block = null; } - if (dirty & 25) { - each_value = ctx2[4]; + if (dirty & 41) { + each_value = ctx2[5]; let i; for (i = 0; i < each_value.length; i += 1) { const child_ctx = get_each_context(ctx2, each_value, i); @@ -395,7 +417,7 @@ function create_if_block_4(ctx) { attr(div0, "class", "title"); attr(img, "id", "logo"); attr(img, "alt", "logo"); - if (!src_url_equal(img.src, img_src_value = "" + (ctx[0] + "/logo.png"))) + if (!src_url_equal(img.src, img_src_value = ctx[0] + "/logo.png")) attr(img, "src", img_src_value); attr(div1, "class", "content"); attr(a, "href", ctx[0]); @@ -413,7 +435,7 @@ function create_if_block_4(ctx) { p(ctx2, dirty) { if (dirty & 2) set_data(t0, ctx2[1]); - if (dirty & 1 && !src_url_equal(img.src, img_src_value = "" + (ctx2[0] + "/logo.png"))) { + if (dirty & 1 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/logo.png")) { attr(img, "src", img_src_value); } if (dirty & 1) { @@ -429,7 +451,7 @@ function create_if_block_4(ctx) { function create_if_block_2(ctx) { let div; function select_block_type(ctx2, dirty) { - if (ctx2[11].media.length) + if (ctx2[12].media.length) return create_if_block_3; return create_else_block; } @@ -472,7 +494,7 @@ function create_else_block(ctx) { c() { img = element("img"); attr(img, "style", "aspect-ratio=1.7778;"); - attr(img, "alt", img_alt_value = ctx[11].title); + attr(img, "alt", img_alt_value = ctx[12].title); if (!src_url_equal(img.src, img_src_value = ctx[0] + "/noimg.svg")) attr(img, "src", img_src_value); attr(img, "loading", "lazy"); @@ -481,7 +503,7 @@ function create_else_block(ctx) { insert(target, img, anchor); }, p(ctx2, dirty) { - if (dirty & 16 && img_alt_value !== (img_alt_value = ctx2[11].title)) { + if (dirty & 32 && img_alt_value !== (img_alt_value = ctx2[12].title)) { attr(img, "alt", img_alt_value); } if (dirty & 1 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/noimg.svg")) { @@ -502,9 +524,9 @@ function create_if_block_3(ctx) { return { c() { img = element("img"); - attr(img, "style", img_style_value = "object-position: " + position$1(ctx[11]) + "; aspect-ratio=1.7778;"); - attr(img, "alt", img_alt_value = ctx[11].media[0].name); - if (!src_url_equal(img.src, img_src_value = ctx[0] + "/media/thumb/" + ctx[11].media[0].url)) + attr(img, "style", img_style_value = "object-position: " + position$1(ctx[12]) + "; aspect-ratio=1.7778;"); + attr(img, "alt", img_alt_value = ctx[12].media[0].name); + if (!src_url_equal(img.src, img_src_value = ctx[0] + "/media/thumb/" + ctx[12].media[0].url)) attr(img, "src", img_src_value); attr(img, "loading", "lazy"); }, @@ -512,13 +534,13 @@ function create_if_block_3(ctx) { insert(target, img, anchor); }, p(ctx2, dirty) { - if (dirty & 16 && img_style_value !== (img_style_value = "object-position: " + position$1(ctx2[11]) + "; aspect-ratio=1.7778;")) { + if (dirty & 32 && img_style_value !== (img_style_value = "object-position: " + position$1(ctx2[12]) + "; aspect-ratio=1.7778;")) { attr(img, "style", img_style_value); } - if (dirty & 16 && img_alt_value !== (img_alt_value = ctx2[11].media[0].name)) { + if (dirty & 32 && img_alt_value !== (img_alt_value = ctx2[12].media[0].name)) { attr(img, "alt", img_alt_value); } - if (dirty & 17 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/media/thumb/" + ctx2[11].media[0].url)) { + if (dirty & 33 && !src_url_equal(img.src, img_src_value = ctx2[0] + "/media/thumb/" + ctx2[12].media[0].url)) { attr(img, "src", img_src_value); } }, @@ -530,7 +552,7 @@ function create_if_block_3(ctx) { } function create_if_block_1$1(ctx) { let div; - let each_value_1 = ctx[11].tags; + let each_value_1 = ctx[12].tags; let each_blocks = []; for (let i = 0; i < each_value_1.length; i += 1) { each_blocks[i] = create_each_block_1(get_each_context_1(ctx, each_value_1, i)); @@ -550,8 +572,8 @@ function create_if_block_1$1(ctx) { } }, p(ctx2, dirty) { - if (dirty & 16) { - each_value_1 = ctx2[11].tags; + if (dirty & 32) { + each_value_1 = ctx2[12].tags; let i; for (i = 0; i < each_value_1.length; i += 1) { const child_ctx = get_each_context_1(ctx2, each_value_1, i); @@ -579,7 +601,7 @@ function create_if_block_1$1(ctx) { function create_each_block_1(ctx) { let span; let t0; - let t1_value = ctx[14] + ""; + let t1_value = ctx[15] + ""; let t1; return { c() { @@ -594,7 +616,7 @@ function create_each_block_1(ctx) { append(span, t1); }, p(ctx2, dirty) { - if (dirty & 16 && t1_value !== (t1_value = ctx2[14] + "")) + if (dirty & 32 && t1_value !== (t1_value = ctx2[15] + "")) set_data(t1, t1_value); }, d(detaching) { @@ -608,27 +630,27 @@ function create_each_block(ctx) { let t0; let div2; let div0; - let t1_value = when$1(ctx[11].start_datetime) + ""; + let t1_value = when$1(ctx[12].start_datetime) + ""; let t1; let t2; let div1; - let t3_value = ctx[11].title + ""; + let t3_value = ctx[12].title + ""; let t3; let t4; let span1; let t5; - let t6_value = ctx[11].place.name + ""; + let t6_value = ctx[12].place.name + ""; let t6; let t7; let span0; - let t8_value = ctx[11].place.address + ""; + let t8_value = ctx[12].place.address + ""; let t8; let t9; let t10; let a_href_value; let a_title_value; let if_block0 = ctx[3] !== "true" && create_if_block_2(ctx); - let if_block1 = ctx[11].tags.length && create_if_block_1$1(ctx); + let if_block1 = ctx[12].tags.length && create_if_block_1$1(ctx); return { c() { a = element("a"); @@ -657,9 +679,9 @@ function create_each_block(ctx) { attr(span0, "class", "subtitle"); attr(span1, "class", "place"); attr(div2, "class", "content"); - attr(a, "href", a_href_value = "" + (ctx[0] + "/event/" + (ctx[11].slug || ctx[11].id))); + attr(a, "href", a_href_value = ctx[0] + "/event/" + (ctx[12].slug || ctx[12].id)); attr(a, "class", "event"); - attr(a, "title", a_title_value = ctx[11].title); + attr(a, "title", a_title_value = ctx[12].title); attr(a, "target", "_blank"); }, m(target, anchor) { @@ -698,15 +720,15 @@ function create_each_block(ctx) { if_block0.d(1); if_block0 = null; } - if (dirty & 16 && t1_value !== (t1_value = when$1(ctx2[11].start_datetime) + "")) + if (dirty & 32 && t1_value !== (t1_value = when$1(ctx2[12].start_datetime) + "")) set_data(t1, t1_value); - if (dirty & 16 && t3_value !== (t3_value = ctx2[11].title + "")) + if (dirty & 32 && t3_value !== (t3_value = ctx2[12].title + "")) set_data(t3, t3_value); - if (dirty & 16 && t6_value !== (t6_value = ctx2[11].place.name + "")) + if (dirty & 32 && t6_value !== (t6_value = ctx2[12].place.name + "")) set_data(t6, t6_value); - if (dirty & 16 && t8_value !== (t8_value = ctx2[11].place.address + "")) + if (dirty & 32 && t8_value !== (t8_value = ctx2[12].place.address + "")) set_data(t8, t8_value); - if (ctx2[11].tags.length) { + if (ctx2[12].tags.length) { if (if_block1) { if_block1.p(ctx2, dirty); } else { @@ -718,10 +740,10 @@ function create_each_block(ctx) { if_block1.d(1); if_block1 = null; } - if (dirty & 17 && a_href_value !== (a_href_value = "" + (ctx2[0] + "/event/" + (ctx2[11].slug || ctx2[11].id)))) { + if (dirty & 33 && a_href_value !== (a_href_value = ctx2[0] + "/event/" + (ctx2[12].slug || ctx2[12].id))) { attr(a, "href", a_href_value); } - if (dirty & 16 && a_title_value !== (a_title_value = ctx2[11].title)) { + if (dirty & 32 && a_title_value !== (a_title_value = ctx2[12].title)) { attr(a, "title", a_title_value); } }, @@ -736,41 +758,65 @@ function create_each_block(ctx) { }; } function create_fragment$1(ctx) { - let if_block_anchor; - let if_block = ctx[4].length && create_if_block$1(ctx); + let t; + let if_block1_anchor; + let if_block0 = ctx[4] && create_if_block_5(ctx); + let if_block1 = ctx[5].length && create_if_block$1(ctx); return { c() { - if (if_block) - if_block.c(); - if_block_anchor = empty(); + if (if_block0) + if_block0.c(); + t = space(); + if (if_block1) + if_block1.c(); + if_block1_anchor = empty(); this.c = noop; }, m(target, anchor) { - if (if_block) - if_block.m(target, anchor); - insert(target, if_block_anchor, anchor); + if (if_block0) + if_block0.m(target, anchor); + insert(target, t, anchor); + if (if_block1) + if_block1.m(target, anchor); + insert(target, if_block1_anchor, anchor); }, p(ctx2, [dirty]) { - if (ctx2[4].length) { - if (if_block) { - if_block.p(ctx2, dirty); + if (ctx2[4]) { + if (if_block0) { + if_block0.p(ctx2, dirty); } else { - if_block = create_if_block$1(ctx2); - if_block.c(); - if_block.m(if_block_anchor.parentNode, if_block_anchor); + if_block0 = create_if_block_5(ctx2); + if_block0.c(); + if_block0.m(t.parentNode, t); } - } else if (if_block) { - if_block.d(1); - if_block = null; + } else if (if_block0) { + if_block0.d(1); + if_block0 = null; + } + if (ctx2[5].length) { + if (if_block1) { + if_block1.p(ctx2, dirty); + } else { + if_block1 = create_if_block$1(ctx2); + if_block1.c(); + if_block1.m(if_block1_anchor.parentNode, if_block1_anchor); + } + } else if (if_block1) { + if_block1.d(1); + if_block1 = null; } }, i: noop, o: noop, d(detaching) { - if (if_block) - if_block.d(detaching); + if (if_block0) + if_block0.d(detaching); if (detaching) - detach(if_block_anchor); + detach(t); + if (if_block1) + if_block1.d(detaching); + if (detaching) + detach(if_block1_anchor); } }; } @@ -799,6 +845,7 @@ function instance$1($$self, $$props, $$invalidate) { let { theme = "light" } = $$props; let { show_recurrent = false } = $$props; let { sidebar = "true" } = $$props; + let { external_style = "" } = $$props; let mounted = false; let events = []; function update2(v) { @@ -818,7 +865,7 @@ function instance$1($$self, $$props, $$invalidate) { params.push(`show_recurrent=true`); } fetch(`${baseurl}/api/events?${params.join("&")}`).then((res) => res.json()).then((e) => { - $$invalidate(4, events = e); + $$invalidate(5, events = e); }).catch((e) => { console.error("Error loading Gancio API -> ", e); }); @@ -833,20 +880,22 @@ function instance$1($$self, $$props, $$invalidate) { if ("title" in $$props2) $$invalidate(1, title = $$props2.title); if ("maxlength" in $$props2) - $$invalidate(5, maxlength = $$props2.maxlength); + $$invalidate(6, maxlength = $$props2.maxlength); if ("tags" in $$props2) - $$invalidate(6, tags = $$props2.tags); + $$invalidate(7, tags = $$props2.tags); if ("places" in $$props2) - $$invalidate(7, places = $$props2.places); + $$invalidate(8, places = $$props2.places); if ("theme" in $$props2) $$invalidate(2, theme = $$props2.theme); if ("show_recurrent" in $$props2) - $$invalidate(8, show_recurrent = $$props2.show_recurrent); + $$invalidate(9, show_recurrent = $$props2.show_recurrent); if ("sidebar" in $$props2) $$invalidate(3, sidebar = $$props2.sidebar); + if ("external_style" in $$props2) + $$invalidate(4, external_style = $$props2.external_style); }; $$self.$$.update = () => { - if ($$self.$$.dirty & 494) { + if ($$self.$$.dirty & 974) { update2(); } }; @@ -855,6 +904,7 @@ function instance$1($$self, $$props, $$invalidate) { title, theme, sidebar, + external_style, events, maxlength, tags, @@ -873,12 +923,13 @@ class GancioEvents extends SvelteElement { }, instance$1, create_fragment$1, safe_not_equal, { baseurl: 0, title: 1, - maxlength: 5, - tags: 6, - places: 7, + maxlength: 6, + tags: 7, + places: 8, theme: 2, - show_recurrent: 8, - sidebar: 3 + show_recurrent: 9, + sidebar: 3, + external_style: 4 }, null); if (options) { if (options.target) { @@ -899,7 +950,8 @@ class GancioEvents extends SvelteElement { "places", "theme", "show_recurrent", - "sidebar" + "sidebar", + "external_style" ]; } get baseurl() { @@ -917,21 +969,21 @@ class GancioEvents extends SvelteElement { flush(); } get maxlength() { - return this.$$.ctx[5]; + return this.$$.ctx[6]; } set maxlength(maxlength) { this.$$set({ maxlength }); flush(); } get tags() { - return this.$$.ctx[6]; + return this.$$.ctx[7]; } set tags(tags) { this.$$set({ tags }); flush(); } get places() { - return this.$$.ctx[7]; + return this.$$.ctx[8]; } set places(places) { this.$$set({ places }); @@ -945,7 +997,7 @@ class GancioEvents extends SvelteElement { flush(); } get show_recurrent() { - return this.$$.ctx[8]; + return this.$$.ctx[9]; } set show_recurrent(show_recurrent) { this.$$set({ show_recurrent }); @@ -958,6 +1010,13 @@ class GancioEvents extends SvelteElement { this.$$set({ sidebar }); flush(); } + get external_style() { + return this.$$.ctx[4]; + } + set external_style(external_style) { + this.$$set({ external_style }); + flush(); + } } customElements.define("gancio-events", GancioEvents); function create_if_block(ctx) { @@ -996,7 +1055,7 @@ function create_if_block(ctx) { t6 = text(t6_value); attr(div1, "class", "place"); attr(div2, "class", "container"); - attr(a, "href", a_href_value = "" + (ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id))); + attr(a, "href", a_href_value = ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id)); attr(a, "class", "card"); attr(a, "target", "_blank"); }, @@ -1035,7 +1094,7 @@ function create_if_block(ctx) { set_data(t3, t3_value); if (dirty & 2 && t6_value !== (t6_value = ctx2[1].place.name + "")) set_data(t6, t6_value); - if (dirty & 3 && a_href_value !== (a_href_value = "" + (ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id)))) { + if (dirty & 3 && a_href_value !== (a_href_value = ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id))) { attr(a, "href", a_href_value); } }, diff --git a/webcomponents/index.html b/webcomponents/index.html index 87e1d881..c70e8938 100644 --- a/webcomponents/index.html +++ b/webcomponents/index.html @@ -7,7 +7,7 @@ Gancio Events Custom Element Demo - +

    diff --git a/webcomponents/src/GancioEvents.svelte b/webcomponents/src/GancioEvents.svelte index e623b4c6..4aca29a4 100644 --- a/webcomponents/src/GancioEvents.svelte +++ b/webcomponents/src/GancioEvents.svelte @@ -8,7 +8,9 @@ export let places = '' export let theme = 'light' export let show_recurrent=false - export let sidebar='true' + export let sidebar = 'true' + + export let external_style = '' let mounted = false let events = [] @@ -71,6 +73,7 @@ +{#if external_style}{/if} {#if events.length}
    res.json()).then((e) => { - $$invalidate(4, events = e); + $$invalidate(5, events = e); }).catch((e) => { console.error("Error loading Gancio API -> ", e); }); @@ -833,20 +880,22 @@ function instance$1($$self, $$props, $$invalidate) { if ("title" in $$props2) $$invalidate(1, title = $$props2.title); if ("maxlength" in $$props2) - $$invalidate(5, maxlength = $$props2.maxlength); + $$invalidate(6, maxlength = $$props2.maxlength); if ("tags" in $$props2) - $$invalidate(6, tags = $$props2.tags); + $$invalidate(7, tags = $$props2.tags); if ("places" in $$props2) - $$invalidate(7, places = $$props2.places); + $$invalidate(8, places = $$props2.places); if ("theme" in $$props2) $$invalidate(2, theme = $$props2.theme); if ("show_recurrent" in $$props2) - $$invalidate(8, show_recurrent = $$props2.show_recurrent); + $$invalidate(9, show_recurrent = $$props2.show_recurrent); if ("sidebar" in $$props2) $$invalidate(3, sidebar = $$props2.sidebar); + if ("external_style" in $$props2) + $$invalidate(4, external_style = $$props2.external_style); }; $$self.$$.update = () => { - if ($$self.$$.dirty & 494) { + if ($$self.$$.dirty & 974) { update2(); } }; @@ -855,6 +904,7 @@ function instance$1($$self, $$props, $$invalidate) { title, theme, sidebar, + external_style, events, maxlength, tags, @@ -873,12 +923,13 @@ class GancioEvents extends SvelteElement { }, instance$1, create_fragment$1, safe_not_equal, { baseurl: 0, title: 1, - maxlength: 5, - tags: 6, - places: 7, + maxlength: 6, + tags: 7, + places: 8, theme: 2, - show_recurrent: 8, - sidebar: 3 + show_recurrent: 9, + sidebar: 3, + external_style: 4 }, null); if (options) { if (options.target) { @@ -899,7 +950,8 @@ class GancioEvents extends SvelteElement { "places", "theme", "show_recurrent", - "sidebar" + "sidebar", + "external_style" ]; } get baseurl() { @@ -917,21 +969,21 @@ class GancioEvents extends SvelteElement { flush(); } get maxlength() { - return this.$$.ctx[5]; + return this.$$.ctx[6]; } set maxlength(maxlength) { this.$$set({ maxlength }); flush(); } get tags() { - return this.$$.ctx[6]; + return this.$$.ctx[7]; } set tags(tags) { this.$$set({ tags }); flush(); } get places() { - return this.$$.ctx[7]; + return this.$$.ctx[8]; } set places(places) { this.$$set({ places }); @@ -945,7 +997,7 @@ class GancioEvents extends SvelteElement { flush(); } get show_recurrent() { - return this.$$.ctx[8]; + return this.$$.ctx[9]; } set show_recurrent(show_recurrent) { this.$$set({ show_recurrent }); @@ -958,6 +1010,13 @@ class GancioEvents extends SvelteElement { this.$$set({ sidebar }); flush(); } + get external_style() { + return this.$$.ctx[4]; + } + set external_style(external_style) { + this.$$set({ external_style }); + flush(); + } } customElements.define("gancio-events", GancioEvents); function create_if_block(ctx) { @@ -996,7 +1055,7 @@ function create_if_block(ctx) { t6 = text(t6_value); attr(div1, "class", "place"); attr(div2, "class", "container"); - attr(a, "href", a_href_value = "" + (ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id))); + attr(a, "href", a_href_value = ctx[0] + "/event/" + (ctx[1].slug || ctx[1].id)); attr(a, "class", "card"); attr(a, "target", "_blank"); }, @@ -1035,7 +1094,7 @@ function create_if_block(ctx) { set_data(t3, t3_value); if (dirty & 2 && t6_value !== (t6_value = ctx2[1].place.name + "")) set_data(t6, t6_value); - if (dirty & 3 && a_href_value !== (a_href_value = "" + (ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id)))) { + if (dirty & 3 && a_href_value !== (a_href_value = ctx2[0] + "/event/" + (ctx2[1].slug || ctx2[1].id))) { attr(a, "href", a_href_value); } }, From e345738affc989c68d4f88431c967a909f4b6e57 Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 18 Mar 2022 23:07:09 +0100 Subject: [PATCH 005/175] fix #147 --- pages/event/_slug.vue | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pages/event/_slug.vue b/pages/event/_slug.vue index d00a5147..4621bf7a 100644 --- a/pages/event/_slug.vue +++ b/pages/event/_slug.vue @@ -34,10 +34,10 @@ v-container#event.pa-0.pa-sm-2 div.text-subtitle-1 {{event.start_datetime|from}} small(v-if='event.parentId') ({{event|recurrentDetail}}) - .text-h6.p-location(itemprop="location" itemscope itemtype="https://schema.org/Place") + .text-h6.p-location.h-adr(itemprop="location" itemscope itemtype="https://schema.org/Place") v-icon(v-text='mdiMapMarker') - b.vcard.ml-2(itemprop="name") {{event.place && event.place.name}} - .text-subtitle-1.adr(itemprop='address') {{event.place && event.place.address}} + b.vcard.ml-2.p-name(itemprop="name") {{event.place && event.place.name}} + .text-subtitle-1.p-street-address(itemprop='address') {{event.place && event.place.address}} //- tags, hashtags v-card-text(v-if='event.tags.length') From 5127deb56affb5879ea9e63e401cc74c67a16c56 Mon Sep 17 00:00:00 2001 From: lesion Date: Thu, 31 Mar 2022 21:01:24 +0200 Subject: [PATCH 006/175] edge case selecting date --- pages/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/index.vue b/pages/index.vue index f1931d04..94225393 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -104,7 +104,7 @@ export default { if (this.selectedDay) { const min = dayjs(this.selectedDay).startOf('day').unix() const max = dayjs(this.selectedDay).endOf('day').unix() - return this.filteredEvents.filter(e => (e.start_datetime < max && e.start_datetime > min)) + return this.filteredEvents.filter(e => (e.start_datetime <= max && e.start_datetime >= min)) } else if (this.isCurrentMonth) { return this.filteredEvents.filter(e => e.end_datetime ? e.end_datetime > now : e.start_datetime + 2 * 60 * 60 > now) } else { From c9dfea1355e7d8f7f89db22c2af0f51d2063608e Mon Sep 17 00:00:00 2001 From: fadelkon Date: Wed, 20 Apr 2022 17:15:22 +0000 Subject: [PATCH 007/175] Translated using Weblate (Catalan) Currently translated at 100.0% (243 of 243 strings) Translation: Gancio/Web Translate-URL: https://hosted.weblate.org/projects/gancio/web/ca/ --- locales/ca.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/locales/ca.json b/locales/ca.json index 41bfb456..9da1fef7 100644 --- a/locales/ca.json +++ b/locales/ca.json @@ -109,7 +109,7 @@ "list_description": "Si tens una web i vols encastar una llista d'activitats, pots fer servir el codi de sota" }, "register": { - "description": "Els moviments socials necessitem organitzar-nos i auto-finançar-nos.\n
    Abans que puguis publicar, hem d'aprovar el teu compte , tingues en comtpe que darrere d'aquesta web hi ha persones de carn i ossos, així que escriviu dues línies per fer-nos saber quins esdeveniments voleu publicar.", + "description": "Els moviments socials necessitem organitzar-nos i auto-finançar-nos.
    \n
    Abans que puguis publicar, hem d'aprovar el teu compte , tingues en compte que darrere d'aquesta web hi ha persones de carn i ossos, així que escriviu dues línies per fer-nos saber quins esdeveniments voleu publicar.", "error": "Error: ", "complete": "El registre ha de ser confirmat.", "first_user": "S'ha creat i activat un compte administrador" @@ -124,7 +124,7 @@ "media_description": "Pots adjuntar un cartell (opcional)", "added": "S'ha afegit l'activitat", "added_anon": "S'ha afegit l'activitat però encara ha de ser confirmada.", - "where_description": "On es farà? Si no està posat, escriu-ho i prem Enter.", + "where_description": "On es farà? Si no està posat, escriu-ho i prem Enter.", "confirmed": "S'ha confirmat l'activitat", "not_found": "No s'ha trobat l'activitat", "remove_confirmation": "Segur que vols esborrar l'activitat?", @@ -150,7 +150,7 @@ "from": "Des de les", "image_too_big": "La imatge és massa gran! Max 4 MB", "interact_with_me_at": "Interacciona amb mi a", - "follow_me_description": "Entre les diverses maneres d'estar al dia de les activitats que es publiquen aquí a {title},\n pots seguir-nos al compte {account} des de Mastodon o altres, i afegir recursos des d'allà.

    \nSi no has sentit mai sobre «Mastodon» o «Fedivers», recomanem mirar aquest vídeo (subtitulat en català).

    Introdueix la teva instància a sota (ex: red.confederac.io o mastodont.cat)", + "follow_me_description": "Entre les diverses maneres d'estar al dia de les activitats que es publiquen aquí a {title},\n pots seguir-nos al compte {account} des de Mastodon o altres, i afegir recursos des d'allà.

    \nSi no has sentit mai sobre «Mastodon» o «Fedivers», recomanem fer un cop d'ull a aquesta breu introducció al Fedivers.

    Introdueix la teva instància a sota (ex: kolektiva.social o mastodont.cat)", "interact_with_me": "Segueix-nos al fedivers", "remove_recurrent_confirmation": "Estàs segur/a d'esborrar aquesta activitat periòdica?\nNo s'esborraran les ocurrències antigues, només es deixaran de crear les futures.", "ics": "ICS", From a102b11cc1dcea0149221f84534b393a6205fc2f Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 22 Apr 2022 23:04:21 +0200 Subject: [PATCH 008/175] install git in Dockerfile, fix #148 --- docs/docker/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/docker/Dockerfile b/docs/docker/Dockerfile index 409ae120..71bff2ee 100644 --- a/docs/docker/Dockerfile +++ b/docs/docker/Dockerfile @@ -1,4 +1,5 @@ FROM node:17.4-slim +RUN bash -c "apt update -y && apt install git -y && apt clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp" RUN yarn global remove gancio || true RUN yarn cache clean RUN yarn global add --latest --production --silent https://gancio.org/latest.tgz From b0ff1bd8f4742f22f5b12beb383cbe43d082367c Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 22 Apr 2022 23:07:17 +0200 Subject: [PATCH 009/175] add some new friendly instances --- docs/instances.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/instances.md b/docs/instances.md index 056e9357..5c0e399f 100644 --- a/docs/instances.md +++ b/docs/instances.md @@ -9,9 +9,12 @@ nav_order: 7 - [gancio.cisti.org](https://gancio.cisti.org) (Turin, Italy) - [lapunta.org](https://lapunta.org) (Florence, Italy) - [sapratza.in](https://sapratza.in/) (Sardinia, Italy) -- [termine.161.social](https://termine.161.social) (Germany) +- [bcn.convoca.la](https://bcn.convoca.la/) (Barcelona) - [ezkerraldea.euskaragendak.eus](https://ezkerraldea.euskaragendak.eus/) - [lakelogaztetxea.net](https://lakelogaztetxea.net) +- [agenda.eskoria.eus](https://agenda.eskoria.eus/) +- [lubakiagenda.net](https://lubakiagenda.net/) + Do you want your instance to appear here? [Write us]({% link contact.md %}). From 68d492bc13fa314dd0506d859432bbec272fb59c Mon Sep 17 00:00:00 2001 From: lesion Date: Tue, 26 Apr 2022 22:01:56 +0200 Subject: [PATCH 010/175] minor on announcement --- assets/variables.scss | 2 +- components/Announcement.vue | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/assets/variables.scss b/assets/variables.scss index 253c9e3d..047cb412 100644 --- a/assets/variables.scss +++ b/assets/variables.scss @@ -5,4 +5,4 @@ // If you need to extend Vuetify SASS lists // $material-light: ( cards: blue ); -@import '~vuetify/src/styles/styles.sass'; \ No newline at end of file +// @import '~vuetify/src/styles/styles.sass'; \ No newline at end of file diff --git a/components/Announcement.vue b/components/Announcement.vue index 7074cf3c..afa7b01c 100644 --- a/components/Announcement.vue +++ b/components/Announcement.vue @@ -1,7 +1,7 @@ - \ No newline at end of file diff --git a/server/api/controller/place.js b/server/api/controller/place.js new file mode 100644 index 00000000..7476455b --- /dev/null +++ b/server/api/controller/place.js @@ -0,0 +1,19 @@ +const dayjs = require('dayjs') +const Place = require('../models/place') +const eventController = require('./event') + + +module.exports = { + async getEvents (req, res) { + const name = req.params.placeName + const place = await Place.findOne({ where: { name }}) + if (!place) { + log.warn(`Place ${name} not found`) + return res.sendStatus(404) + } + const start = dayjs().unix() + const events = await eventController._select({ start, places: `${place.id}`, show_recurrent: true}) + + return res.json({ events, place }) + } +} \ No newline at end of file From 585156f30118ce98d78c339dbf5cba69028da3a7 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 23 May 2022 14:42:15 +0200 Subject: [PATCH 119/175] place api --- server/routes.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/server/routes.js b/server/routes.js index c6d80237..87a2c752 100644 --- a/server/routes.js +++ b/server/routes.js @@ -1,9 +1,8 @@ const express = require('express') const cookieParser = require('cookie-parser') - const initialize = require('./initialize.server') -initialize() +initialize.start() // const metricsController = require('./metrics') // const promBundle = require('express-prom-bundle') @@ -79,4 +78,16 @@ app.use(async (req, res, next) => { next() }) -module.exports = app +module.exports = { + handler: app, + load () { + console.error('dentro load !') + }, + unload: initialize.shutdown + // async unload () { + // const db = require('./api/models/index') + // await db.close() + // process.off('SIGTERM') + // process.off('SIGINT') + // } +} From 9f8f705aa85cee953088f420b39df37d028843e8 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 23 May 2022 14:42:48 +0200 Subject: [PATCH 120/175] minor on tag page --- pages/tag/_tag.vue | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pages/tag/_tag.vue b/pages/tag/_tag.vue index 6aa5d542..e3f0d299 100644 --- a/pages/tag/_tag.vue +++ b/pages/tag/_tag.vue @@ -1,10 +1,13 @@ diff --git a/pages/index.vue b/pages/index.vue index 4e07edc8..ce58f379 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -17,7 +17,7 @@ v-container#home(fluid) Calendar(@dayclick='dayChange' @monthchange='monthChange' :events='filteredEvents') .col.pt-0.pt-md-2 - Search(:filters='filters' @update='updateFilters') + Search(@tag:selected="tag => $router.push(`/tag/${tag.tag}`)") v-chip(v-if='selectedDay' close :close-icon='mdiCloseCircle' @click:close='dayChange()') {{selectedDay}} //- Events From 0fe3066bf0f555e349ec647c43f9f4a43c74bc41 Mon Sep 17 00:00:00 2001 From: lesion Date: Thu, 26 May 2022 11:10:21 +0200 Subject: [PATCH 134/175] move components where they belong --- {pages/setup => components}/Completed.vue | 0 {pages/add => components}/DateInput.vue | 2 +- {pages/setup => components}/DbStep.vue | 0 {pages/add => components}/ImportDialog.vue | 0 {pages/add => components}/MediaInput.vue | 0 {pages/add => components}/WhereInput.vue | 0 {pages/event => components}/embedEvent.vue | 2 +- {pages/event => components}/eventAdmin.vue | 0 pages/add/HourInput.vue | 80 ---------------------- pages/event/_slug.vue | 4 +- pages/setup/_db.vue | 6 +- 11 files changed, 7 insertions(+), 87 deletions(-) rename {pages/setup => components}/Completed.vue (100%) rename {pages/add => components}/DateInput.vue (99%) rename {pages/setup => components}/DbStep.vue (100%) rename {pages/add => components}/ImportDialog.vue (100%) rename {pages/add => components}/MediaInput.vue (100%) rename {pages/add => components}/WhereInput.vue (100%) rename {pages/event => components}/embedEvent.vue (96%) rename {pages/event => components}/eventAdmin.vue (100%) delete mode 100644 pages/add/HourInput.vue diff --git a/pages/setup/Completed.vue b/components/Completed.vue similarity index 100% rename from pages/setup/Completed.vue rename to components/Completed.vue diff --git a/pages/add/DateInput.vue b/components/DateInput.vue similarity index 99% rename from pages/add/DateInput.vue rename to components/DateInput.vue index 0cc27494..b7789d31 100644 --- a/pages/add/DateInput.vue +++ b/components/DateInput.vue @@ -52,7 +52,7 @@ v-col(cols=12) import dayjs from 'dayjs' import { mapState } from 'vuex' import List from '@/components/List' -import { attributesFromEvents } from '../../assets/helper' +import { attributesFromEvents } from '../assets/helper' export default { name: 'DateInput', diff --git a/pages/setup/DbStep.vue b/components/DbStep.vue similarity index 100% rename from pages/setup/DbStep.vue rename to components/DbStep.vue diff --git a/pages/add/ImportDialog.vue b/components/ImportDialog.vue similarity index 100% rename from pages/add/ImportDialog.vue rename to components/ImportDialog.vue diff --git a/pages/add/MediaInput.vue b/components/MediaInput.vue similarity index 100% rename from pages/add/MediaInput.vue rename to components/MediaInput.vue diff --git a/pages/add/WhereInput.vue b/components/WhereInput.vue similarity index 100% rename from pages/add/WhereInput.vue rename to components/WhereInput.vue diff --git a/pages/event/embedEvent.vue b/components/embedEvent.vue similarity index 96% rename from pages/event/embedEvent.vue rename to components/embedEvent.vue index 22b7726d..83dd1954 100644 --- a/pages/event/embedEvent.vue +++ b/components/embedEvent.vue @@ -16,7 +16,7 @@ v-card diff --git a/pages/event/_slug.vue b/pages/event/_slug.vue index 00042eee..62acc2c9 100644 --- a/pages/event/_slug.vue +++ b/pages/event/_slug.vue @@ -141,8 +141,8 @@ export default { name: 'Event', mixins: [clipboard], components: { - EventAdmin: () => import(/* webpackChunkName: "event" */'./eventAdmin'), - EmbedEvent: () => import(/* webpackChunkName: "event" */'./embedEvent'), + EventAdmin: () => import(/* webpackChunkName: "event" */'@/components/eventAdmin'), + EmbedEvent: () => import(/* webpackChunkName: "event" */'@/components/embedEvent'), MyPicture }, async asyncData ({ $axios, params, error }) { diff --git a/pages/setup/_db.vue b/pages/setup/_db.vue index fdc7c89b..0fdc6616 100644 --- a/pages/setup/_db.vue +++ b/pages/setup/_db.vue @@ -18,9 +18,9 @@ v-container.pa-6 Completed(ref='completed' :isHttp='isHttp') From 6173ea96fc45355682ca6ab53b265670bea9af67 Mon Sep 17 00:00:00 2001 From: lesion Date: Tue, 31 May 2022 15:22:52 +0200 Subject: [PATCH 140/175] minor --- components/Search.vue | 2 -- 1 file changed, 2 deletions(-) diff --git a/components/Search.vue b/components/Search.vue index 6d327a40..5755828a 100644 --- a/components/Search.vue +++ b/components/Search.vue @@ -13,8 +13,6 @@ v-container.pt-0.pt-md-2 cache-items hide-details color='primary' - clearable - :clear-icon='mdiCloseCircle' hide-selected small-chips :items='items' From cdfbd01a07861600cfb3e8ecbd88e9edd2f3fd73 Mon Sep 17 00:00:00 2001 From: lesion Date: Tue, 31 May 2022 15:23:58 +0200 Subject: [PATCH 141/175] fix Admin tab icons and first load --- pages/Admin.vue | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pages/Admin.vue b/pages/Admin.vue index 61402125..d659ba50 100644 --- a/pages/Admin.vue +++ b/pages/Admin.vue @@ -1,8 +1,9 @@ \ No newline at end of file From 0764617e5d59d7296497a9b8d8d9efb31ff731cc Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 14:13:58 +0200 Subject: [PATCH 158/175] fix event content-type --- server/api/index.js | 1 + server/federation/index.js | 14 ++++++++++---- server/helpers.js | 3 ++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/server/api/index.js b/server/api/index.js index 7ebd192a..b0e064ca 100644 --- a/server/api/index.js +++ b/server/api/index.js @@ -154,6 +154,7 @@ if (config.status !== 'READY') { api.get('/place/:placeName/events', cors, placeController.getEvents) + api.get('/place/all', isAdmin, placeController.getAll) api.get('/place', cors, placeController.get) api.put('/place', isAdmin, placeController.updatePlace) diff --git a/server/federation/index.js b/server/federation/index.js index 3c1aa333..0c00ece4 100644 --- a/server/federation/index.js +++ b/server/federation/index.js @@ -20,7 +20,7 @@ const log = require('../log') router.use(cors()) // is federation enabled? middleware -router.use((req, res, next) => { +router.use((_req, res, next) => { if (settingsController.settings.enable_federation) { return next() } log.debug('Federation disabled!') return res.status(401).send('Federation disabled') @@ -29,14 +29,20 @@ router.use((req, res, next) => { router.use(express.json({ type: ['application/json', 'application/activity+json', 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'] })) router.get('/m/:event_id', async (req, res) => { - const settingsController = require('../api/controller/settings') log.debug('[AP] Get event details ') const event_id = req.params.event_id - if (req.accepts('html')) { return res.redirect(301, `/event/${event_id}`) } + const acceptHtml = req.accepts('html', 'application/activity+json') === 'html' + if (acceptHtml) { return res.redirect(301, `/event/${event_id}`) } const event = await Event.findByPk(req.params.event_id, { include: [User, Tag, Place] }) if (!event) { return res.status(404).send('Not found') } - return res.json(event.toAP(settingsController.settings.instance_name, settingsController.settings.instance_locale)) + const eventAp = event.toAP(settingsController.settings.instance_name, settingsController.settings.instance_locale) + eventAp['@context'] = [ + "https://www.w3.org/ns/activitystreams" + ] + + res.type('application/activity+json; charset=utf-8') + return res.json(eventAp) }) // get any message coming from federation diff --git a/server/helpers.js b/server/helpers.js index d5ee509c..0d7e6a90 100644 --- a/server/helpers.js +++ b/server/helpers.js @@ -224,7 +224,8 @@ module.exports = { }, async APRedirect (req, res, next) { - if (!req.accepts('html')) { + const acceptJson = req.accepts('html', 'application/activity+json') === 'application/activity+json' + if (acceptJson) { const eventController = require('../server/api/controller/event') const event = await eventController._get(req.params.slug) if (event) { From 3a5a95e9edb95826b8911765753bd05c995c3bc1 Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 14:14:32 +0200 Subject: [PATCH 159/175] place/all api --- server/api/controller/place.js | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/server/api/controller/place.js b/server/api/controller/place.js index 855b73f3..9da6068f 100644 --- a/server/api/controller/place.js +++ b/server/api/controller/place.js @@ -3,7 +3,7 @@ const Place = require('../models/place') const Event = require('../models/event') const eventController = require('./event') const log = require('../../log') -const { Op, where, col, fn } = require('sequelize') +const { Op, where, col, fn, cast } = require('sequelize') module.exports = { async getEvents (req, res) { @@ -26,18 +26,34 @@ module.exports = { res.json(place) }, - async get (req, res) { - const search = req.query.search + async getAll (_req, res) { const places = await Place.findAll({ + order: [[cast(fn('COUNT', col('events.placeId')),'INTEGER'), 'DESC']], + include: [{ model: Event, where: { is_visible: true }, required: true, attributes: [] }], + group: ['place.id'], + raw: true + }) + return res.json(places) + }, + + async get (req, res) { + const search = req.query.search.toLocaleLowerCase() + const places = await Place.findAll({ + order: [[cast(fn('COUNT', col('events.placeId')),'INTEGER'), 'DESC']], where: { [Op.or]: [ - { name: where(fn('LOWER', col('name')), 'LIKE', '%' + search + '%') }, - { address: where(fn('LOWER', col('address')), 'LIKE', '%' + search + '%') }, + { name: where(fn('LOWER', col('name')), 'LIKE', '%' + search + '%' )}, + { address: where(fn('LOWER', col('address')), 'LIKE', '%' + search + '%')}, ] - } + }, + attributes: ['name', 'address', 'id'], + include: [{ model: Event, where: { is_visible: true }, required: true, attributes: [] }], + group: ['place.id'], + raw: true }) - return res.json(places) + // TOFIX: don't know why limit does not work + return res.json(places.slice(0, 10)) } } \ No newline at end of file From 5f520c34856ea4de5c87175f65396cce8500e947 Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 14:15:16 +0200 Subject: [PATCH 160/175] improve event page layout --- pages/event/_slug.vue | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/pages/event/_slug.vue b/pages/event/_slug.vue index 27727fce..38f6285a 100644 --- a/pages/event/_slug.vue +++ b/pages/event/_slug.vue @@ -18,14 +18,14 @@ v-container#event.pa-0.pa-sm-2 v-card(outlined) v-card-text v-icon.float-right(v-if='event.parentId' color='success' v-text='mdiRepeat') - .title.text-h5 - b.p-name(itemprop="name") {{event.title}} - + .title.text-h5.mb-5 + strong.p-name.text--primary(itemprop="name") {{event.title}} + time.dt-start.text-h6(:datetime='event.start_datetime|unixFormat("YYYY-MM-DD HH:mm")' itemprop="startDate" :content="event.start_datetime|unixFormat('YYYY-MM-DDTHH:mm')") v-icon(v-text='mdiCalendar') - b.ml-2 {{event|when}} + strong.ml-2 {{event|when}} .d-none.dt-end(itemprop="endDate" :content="event.end_datetime|unixFormat('YYYY-MM-DDTHH:mm')") {{event.end_datetime|unixFormat('YYYY-MM-DD HH:mm')}} - div.text-subtitle-1 {{event.start_datetime|from}} + div.text-subtitle-1.mb-5 {{event.start_datetime|from}} small(v-if='event.parentId') ({{event|recurrentDetail}}) .text-h6.p-location.h-adr(itemprop="location" itemscope itemtype="https://schema.org/Place") @@ -34,10 +34,9 @@ v-container#event.pa-0.pa-sm-2 .text-subtitle-1.p-street-address(itemprop='address') {{event.place && event.place.address}} //- tags, hashtags - v-card-text(v-if='event.tags.length') + v-card-text.pt-0(v-if='event.tags && event.tags.length') v-chip.p-category.ml-1.mt-3(v-for='tag in event.tags' color='primary' - outlined :key='tag' :to='`/tag/${tag}`') - span(v-text='tag') + outlined :key='tag' :to='`/tag/${tag}`') {{tag}} //- info & actions v-toolbar @@ -131,6 +130,9 @@ import get from 'lodash/get' import moment from 'dayjs' import clipboard from '../../assets/clipboard' import MyPicture from '~/components/MyPicture' +import EventAdmin from '@/components/eventAdmin' +import EmbedEvent from '@/components/embedEvent' + const { htmlToText } = require('html-to-text') import { mdiArrowLeft, mdiArrowRight, mdiDotsVertical, mdiCodeTags, mdiClose, @@ -141,8 +143,8 @@ export default { name: 'Event', mixins: [clipboard], components: { - EventAdmin: () => import('@/components/eventAdmin'), - EmbedEvent: () => import('@/components/embedEvent'), + EventAdmin, + EmbedEvent, MyPicture }, async asyncData ({ $axios, params, error }) { @@ -168,7 +170,7 @@ export default { if (!this.event) { return {} } - const tags_feed = this.event.tags.map(tag => ({ + const tags_feed = this.event.tags && this.event.tags.map(tag => ({ rel: 'alternate', type: 'application/rss+xml', title: `${this.settings.title} events tagged ${tag}`, @@ -246,7 +248,7 @@ export default { return this.event.media && this.event.media.length }, plainDescription () { - return htmlToText(this.event.description.replace('\n', '').slice(0, 1000)) + return htmlToText(this.event.description && this.event.description.replace('\n', '').slice(0, 1000)) }, currentAttachmentLabel () { return get(this.selectedResource, `data.attachment[${this.currentAttachment}].name`, '') From a6f1a96a36c4d8802a05bff74ddbf26bdef09cbe Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 14:15:31 +0200 Subject: [PATCH 161/175] add end datetime to events --- plugins/filters.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/filters.js b/plugins/filters.js index 4a94eb5b..0024cfbc 100644 --- a/plugins/filters.js +++ b/plugins/filters.js @@ -95,10 +95,10 @@ export default ({ app, store }) => { // multidate if (event.multidate) { - return `${start.format('ddd, D MMM HH:mm')} - ${end.format('ddd, D MMM')}` + return `${start.format('ddd, D MMM HH:mm')} - ${end.format('ddd, D MMM HH:mm')}` } // normal event - return start.format('ddd, D MMMM HH:mm') + return `${start.format('ddd, D MMM HH:mm')} - ${end.format('HH:mm')}` }) } From 7db6e2cb70740472d49f7c395b31b2284bdad7aa Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 14:15:42 +0200 Subject: [PATCH 162/175] minor --- assets/style.css | 3 ++- components/Nav.vue | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/assets/style.css b/assets/style.css index bde85460..c9d76ce4 100644 --- a/assets/style.css +++ b/assets/style.css @@ -31,7 +31,8 @@ li { } #calh { - height: 292px; + /* this is to avoid content shift layout as v-calendar does not support SSR */ + height: 268px; } .container { diff --git a/components/Nav.vue b/components/Nav.vue index 353a3f9b..3569577f 100644 --- a/components/Nav.vue +++ b/components/Nav.vue @@ -2,7 +2,7 @@ v-app-bar(app aria-label='Menu' height=64) //- logo, title and description - v-list-item.pa-0.pa-md-2(:to='$route.name==="index"?"/about":"/"') + v-list-item.pa-0(:to='$route.name==="index"?"/about":"/"') v-list-item-avatar.ma-xs-1(tile) img(src='/logo.png' height='40') v-list-item-content.d-flex From e3c18943363719d565abde071b954061a86a8ca8 Mon Sep 17 00:00:00 2001 From: lesion Date: Wed, 1 Jun 2022 17:41:57 +0200 Subject: [PATCH 163/175] upgrade deps --- package.json | 10 +-- yarn.lock | 184 ++++++++++++++++++++++++++++++++------------------- 2 files changed, 121 insertions(+), 73 deletions(-) diff --git a/package.json b/package.json index 8347e371..9d4d6d1e 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "yarn.lock" ], "dependencies": { - "@mdi/js": "^6.6.96", + "@mdi/js": "^6.7.96", "@nuxtjs/auth": "^4.9.1", "@nuxtjs/axios": "^5.13.5", "@nuxtjs/sitemap": "^2.4.0", @@ -55,10 +55,10 @@ "microformat-node": "^2.0.1", "minify-css-string": "^1.0.0", "mkdirp": "^1.0.4", - "multer": "^1.4.3", + "multer": "^1.4.5-lts.1", "nuxt-edge": "^2.16.0-27358576.777a4b7f", "pg": "^8.6.0", - "sequelize": "^6.17.0", + "sequelize": "^6.20.1", "sequelize-slugify": "^1.6.1", "sharp": "^0.27.2", "sqlite3": "mapbox/node-sqlite3#918052b", @@ -71,7 +71,7 @@ "vue-template-compiler": "^2.6.14", "vuetify": "npm:@vuetify/nightly@dev", "winston": "^3.7.2", - "winston-daily-rotate-file": "^4.6.1", + "winston-daily-rotate-file": "^4.7.1", "yargs": "^17.5.0" }, "devDependencies": { @@ -80,7 +80,7 @@ "prettier": "^2.6.2", "pug": "^3.0.2", "pug-plain-loader": "^1.1.0", - "sass": "^1.51.0", + "sass": "^1.52.1", "sequelize-cli": "^6.3.0", "supertest": "^6.2.2", "webpack": "4", diff --git a/yarn.lock b/yarn.lock index e6a08dcb..4367ccb1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1404,10 +1404,10 @@ semver "^7.3.5" tar "^6.1.11" -"@mdi/js@^6.6.96": - version "6.6.96" - resolved "https://registry.yarnpkg.com/@mdi/js/-/js-6.6.96.tgz#119f79fa9327359421167a7d4b8bde26e84702ce" - integrity sha512-ke9PN5DjPCOlMfhioxeZYADz8Yiz6v47W0IYRza01SSJD7y1EwESVpwFnnFUso+eCoWtE1CO9cTIvQF6sEreuA== +"@mdi/js@^6.7.96": + version "6.7.96" + resolved "https://registry.yarnpkg.com/@mdi/js/-/js-6.7.96.tgz#6cd13ba64eeaf347c857feb3c328d31af3e75876" + integrity sha512-vZvhFrNN9LQx+Awu3nU6ESfXXDpRA/CA4mwikzU5g8uf9NpAocK43ecQvVNntwiXlLKpyplas8d4lsfpqjtXLA== "@messageformat/core@^3.0.0": version "3.0.1" @@ -1830,6 +1830,21 @@ dependencies: http-proxy-middleware "^1.0.6" +"@nuxtjs/sitemap@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@nuxtjs/sitemap/-/sitemap-2.4.0.tgz#6a9fa1c35e161f87375d59949d973568cec40614" + integrity sha512-TVgIYOtPp7KAfaUo76WRpGbO20j4D/xi/A7shFIGjARHs+FvfAWXNCtBT87dTwe/RoYzAsEKtijFFUTaSu5bUA== + dependencies: + async-cache "^1.1.0" + consola "^2.13.0" + etag "^1.8.1" + fresh "^0.5.2" + fs-extra "^8.1.0" + is-https "^2.0.2" + lodash.unionby "^4.8.0" + minimatch "^3.0.4" + sitemap "^4.1.1" + "@nuxtjs/vuetify@^1.12.3": version "1.12.3" resolved "https://registry.yarnpkg.com/@nuxtjs/vuetify/-/vuetify-1.12.3.tgz#d4adf84e18fd474044bf971e7cc978e25eb16ba1" @@ -1995,6 +2010,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644" integrity sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ== +"@types/node@^12.0.2": + version "12.20.52" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.52.tgz#2fd2dc6bfa185601b15457398d4ba1ef27f81251" + integrity sha512-cfkwWw72849SNYp3Zx0IcIs25vABmFh73xicxhCkTcvtZQeIez15PpwQN8fY3RD7gv1Wrxlc9MEtfMORZDEsGw== + "@types/prettier@^2.1.5": version "2.6.0" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.6.0.tgz#efcbd41937f9ae7434c714ab698604822d890759" @@ -2005,6 +2025,13 @@ resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.5.tgz#75a2a8e7d8ab4b230414505d92335d1dcb53a6df" integrity sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ== +"@types/sax@^1.2.0": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@types/sax/-/sax-1.2.4.tgz#8221affa7f4f3cb21abd22f244cfabfa63e6a69e" + integrity sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw== + dependencies: + "@types/node" "*" + "@types/source-list-map@*": version "0.1.2" resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" @@ -2561,6 +2588,11 @@ are-we-there-yet@~1.1.2: delegates "^1.0.0" readable-stream "^2.0.6" +arg@^4.1.1: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + arg@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb" @@ -2663,6 +2695,13 @@ assign-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= +async-cache@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/async-cache/-/async-cache-1.1.0.tgz#4a9a5a89d065ec5d8e5254bd9ee96ba76c532b5a" + integrity sha512-YDQc4vBn5NFhY6g6HhVshyi3Fy9+SQ5ePnE7JLDJn1DoL+i7ER+vMwtTNOYk9leZkYMnOwpBCWqyLDPw8Aig8g== + dependencies: + lru-cache "^4.0.0" + async-each@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" @@ -3184,13 +3223,12 @@ builtin-status-codes@^3.0.0: resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= -busboy@^0.2.11: - version "0.2.14" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.2.14.tgz#6c2a622efcf47c57bbbe1e2a9c37ad36c7925453" - integrity sha1-bCpiLvz0fFe7vh4qnDetNseSVFM= +busboy@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== dependencies: - dicer "0.2.5" - readable-stream "1.1.x" + streamsearch "^1.1.0" bytes@3.0.0: version "3.0.0" @@ -3786,7 +3824,7 @@ connect@^3.7.0: parseurl "~1.3.3" utils-merge "1.0.1" -consola@^2.11.3, consola@^2.15.0, consola@^2.15.3, consola@^2.6.0: +consola@^2.11.3, consola@^2.13.0, consola@^2.15.0, consola@^2.15.3, consola@^2.6.0: version "2.15.3" resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== @@ -4490,14 +4528,6 @@ dezalgo@1.0.3: asap "^2.0.0" wrappy "1" -dicer@0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.2.5.tgz#5996c086bb33218c812c090bddc09cd12facb70f" - integrity sha1-WZbAhrszIYyBLAkL3cCc0S+stw8= - dependencies: - readable-stream "1.1.x" - streamsearch "0.1.2" - diff-sequences@^28.0.2: version "28.0.2" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.0.2.tgz#40f8d4ffa081acbd8902ba35c798458d0ff1af41" @@ -4604,10 +4634,10 @@ domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.0: dependencies: domelementtype "^2.2.0" -dompurify@^2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.3.6.tgz#2e019d7d7617aacac07cbbe3d88ae3ad354cf875" - integrity sha512-OFP2u/3T1R5CEgWCEONuJ1a5+MFKnOYpkywpUSxv/dj1LeBT1erK+JwM7zK0ROy2BRhqVCf0LRw/kHqKuMkVGg== +dompurify@^2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.3.8.tgz#224fe9ae57d7ebd9a1ae1ac18c1c1ca3f532226f" + integrity sha512-eVhaWoVibIzqdGYjwsBWodIQIaXFSB+cKDf4cfxLMsK0xiud6SE+/WCVx/Xw/UwQsa4cS3T2eITcdtmTg2UKcw== domutils@1.5.1: version "1.5.1" @@ -6517,6 +6547,11 @@ is-https@^1.0.0: resolved "https://registry.yarnpkg.com/is-https/-/is-https-1.0.0.tgz#9c1dde000dc7e7288edb983bef379e498e7cb1bf" integrity sha512-1adLLwZT9XEXjzhQhZxd75uxf0l+xI9uTSFaZeSESjL3E1eXSPpO+u5RcgqtzeZ1KCaNvtEwZSTO2P4U5erVqQ== +is-https@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-https/-/is-https-2.0.2.tgz#7009d303c72580f15897d5c063d6b6bc1f838fef" + integrity sha512-UfUCKVQH/6PQRCh5Qk9vNu4feLZiFmV/gr8DjbtJD0IrCRIDTA6E+d/AVFGPulI5tqK5W45fYbn1Nir1O99rFw== + is-negative-zero@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -6651,11 +6686,6 @@ is-wsl@^2.1.1: dependencies: is-docker "^2.0.0" -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -7609,6 +7639,11 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" +lodash.unionby@^4.8.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/lodash.unionby/-/lodash.unionby-4.8.0.tgz#883f098ff78f564a727b7508e09cdd539734bb83" + integrity sha1-iD8Jj/ePVkpye3UI4JzdU5c0u4M= + lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" @@ -7655,7 +7690,7 @@ lowlight@^1.17.0: fault "^1.0.0" highlight.js "~10.7.0" -lru-cache@^4.1.2, lru-cache@^4.1.5: +lru-cache@^4.0.0, lru-cache@^4.1.2, lru-cache@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== @@ -8110,17 +8145,16 @@ ms@2.1.3, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -multer@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.4.tgz#e2bc6cac0df57a8832b858d7418ccaa8ebaf7d8c" - integrity sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw== +multer@^1.4.5-lts.1: + version "1.4.5-lts.1" + resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.5-lts.1.tgz#803e24ad1984f58edffbc79f56e305aec5cfd1ac" + integrity sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ== dependencies: append-field "^1.0.0" - busboy "^0.2.11" + busboy "^1.0.0" concat-stream "^1.5.2" mkdirp "^0.5.4" object-assign "^4.1.1" - on-finished "^2.3.0" type-is "^1.6.4" xtend "^4.0.0" @@ -10278,16 +10312,6 @@ read-cache@^1.0.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@1.1.x: - version "1.1.14" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -10618,10 +10642,10 @@ sass-loader@^10.2.0: schema-utils "^3.0.0" semver "^7.3.2" -sass@^1.51.0: - version "1.51.0" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.51.0.tgz#25ea36cf819581fe1fe8329e8c3a4eaaf70d2845" - integrity sha512-haGdpTgywJTvHC2b91GSq+clTKGbtkkZmVAb82jZQN/wTy6qs8DdFm2lhEQbEwrY0QDRgSQ3xDurqM977C3noA== +sass@^1.52.1: + version "1.52.1" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.52.1.tgz#554693da808543031f9423911d62c60a1acf7889" + integrity sha512-fSzYTbr7z8oQnVJ3Acp9hV80dM1fkMN7mSD/25mpcct9F7FPBMOI8krEYALgU1aZoqGhQNhTPsuSmxjnIvAm4Q== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -10634,7 +10658,7 @@ sass@~1.32.13: dependencies: chokidar ">=3.0.0 <4.0.0" -sax@~1.2.4: +sax@^1.2.4, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== @@ -10792,10 +10816,10 @@ sequelize-slugify@^1.6.1: dependencies: sluglife "^0.9.8" -sequelize@^6.17.0: - version "6.19.0" - resolved "https://registry.yarnpkg.com/sequelize/-/sequelize-6.19.0.tgz#bea0ac091d89cbbc94cabe0797b8c1359734e2e6" - integrity sha512-B3oGIdpYBERDjRDm74h7Ky67f6ZLcmBXOA7HscYObiOSo4pD7VBc9mtm44wNV7unc0uk8I1d30nbZBTQCE377A== +sequelize@^6.20.1: + version "6.20.1" + resolved "https://registry.yarnpkg.com/sequelize/-/sequelize-6.20.1.tgz#1c796fa9134e46fefd9509e6e8ac947131b214ba" + integrity sha512-1YBMv++Yy1JBFFiac1Xoa+Km5qV6YI1ckdkW0xyD7IpLMtE5JmjgZdZXGfwgRUNjhaKMxdzT+nkvJgeXO0rv/g== dependencies: "@types/debug" "^4.1.7" "@types/validator" "^13.7.1" @@ -11010,6 +11034,17 @@ sisteransi@^1.0.5: resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== +sitemap@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-4.1.1.tgz#c9b459c7d797e629c61f56b86586d4f67dbf250b" + integrity sha512-+8yd66IxyIFEMFkFpVoPuoPwBvdiL7Ap/HS5YD7igqO4phkyTPFIprCAE9NMHehAY5ZGN3MkAze4lDrOAX3sVQ== + dependencies: + "@types/node" "^12.0.2" + "@types/sax" "^1.2.0" + arg "^4.1.1" + sax "^1.2.4" + xmlbuilder "^13.0.0" + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -11283,10 +11318,10 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -streamsearch@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a" - integrity sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo= +streamsearch@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== strict-uri-encode@^1.0.0: version "1.1.0" @@ -11347,11 +11382,6 @@ string_decoder@^1.0.0, string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -12611,10 +12641,10 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== -winston-daily-rotate-file@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/winston-daily-rotate-file/-/winston-daily-rotate-file-4.6.1.tgz#35c9db5669c381ed32acdb5849de69ab046a7a71" - integrity sha512-Ycch4LZmTycbhgiI2eQXBKI1pKcEQgAqmBjyq7/dC6Dk77nasdxvhLKraqTdCw7wNDSs8/M0jXaLATHquG7xYg== +winston-daily-rotate-file@^4.7.1: + version "4.7.1" + resolved "https://registry.yarnpkg.com/winston-daily-rotate-file/-/winston-daily-rotate-file-4.7.1.tgz#f60a643af87f8867f23170d8cd87dbe3603a625f" + integrity sha512-7LGPiYGBPNyGHLn9z33i96zx/bd71pjBn9tqQzO3I4Tayv94WPmBNwKC7CO1wPHdP9uvu+Md/1nr6VSH9h0iaA== dependencies: file-stream-rotator "^0.6.1" object-hash "^2.0.1" @@ -12733,6 +12763,11 @@ xml-name-validator@^4.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== +xmlbuilder@^13.0.0: + version "13.0.2" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-13.0.2.tgz#02ae33614b6a047d1c32b5389c1fdacb2bce47a7" + integrity sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ== + xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" @@ -12798,7 +12833,7 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.3.1, yargs@^17.4.1: +yargs@^17.3.1: version "17.4.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284" integrity sha512-WSZD9jgobAg3ZKuCQZSa3g9QOJeCCqLoLAykiWgmXnDo9EPnn4RPf5qVTtzgOx66o6/oqhcA5tHtJXpG8pMt3g== @@ -12811,6 +12846,19 @@ yargs@^17.3.1, yargs@^17.4.1: y18n "^5.0.5" yargs-parser "^21.0.0" +yargs@^17.5.0: + version "17.5.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" + integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.0.0" + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From 7767cdec88e7098c488aaf51f63a028ac63346a9 Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 3 Jun 2022 12:31:53 +0200 Subject: [PATCH 164/175] fix #164 categories in ics export --- server/api/controller/export.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/api/controller/export.js b/server/api/controller/export.js index 6d6dbe04..765aee5c 100644 --- a/server/api/controller/export.js +++ b/server/api/controller/export.js @@ -96,7 +96,7 @@ const exportController = { location: `${e.place.name} - ${e.place.address}`, url: `${settings.baseurl}/event/${e.slug || e.id}`, status: 'CONFIRMED', - categories: e.tags, + categories: e.tags.map(t => t.tag), alarms } }) From 58109d10749a9bde906777c5588ec8b5dfb667ff Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 3 Jun 2022 16:22:33 +0200 Subject: [PATCH 165/175] use vuetify time picker, #161 --- components/DateInput.vue | 71 +++++++++++++++++++++++++++++----------- pages/add/_edit.vue | 4 ++- 2 files changed, 55 insertions(+), 20 deletions(-) diff --git a/components/DateInput.vue b/components/DateInput.vue index ceadcd9b..bcac4f1d 100644 --- a/components/DateInput.vue +++ b/components/DateInput.vue @@ -34,16 +34,55 @@ v-col(cols=12) v-row.mt-3.col-md-6.mx-auto v-col.col-12.col-sm-6 - v-select(dense :label="$t('event.from')" :value='fromHour' clearable - :disabled='!value.from' - :rules="[$validators.required('event.from')]" - :items='hourList' @change='hr => change("fromHour", hr)') + v-menu( + v-model="menuFromHour" + :close-on-content-click="false" + offset-y + :value="fromHour" + transition="scale-transition") + template(v-slot:activator="{ on, attrs }") + v-text-field( + :label="$t('event.from')" + :value="fromHour" + :disabled='!value.from' + :prepend-icon="mdiClockTimeFourOutline" + :rules="[$validators.required('event.from')]" + readonly + v-bind="attrs" + v-on="on") + v-time-picker( + v-if="menuFromHour" + :value="fromHour" + :allowedMinutes='allowedMinutes' + format='24hr' + @click:minute='menuFromHour=false' + @change='hr => change("fromHour", hr)') + v-col.col-12.col-sm-6 - v-select(dense :label="$t('event.due')" - :disabled='!fromHour' - :value='dueHour' clearable - :items='hourList' @change='hr => change("dueHour", hr)') + v-menu( + v-model="menuDueHour" + :close-on-content-click="false" + offset-y + :value="dueHour" + transition="scale-transition") + template(v-slot:activator="{ on, attrs }") + v-text-field( + :label="$t('event.due')" + :value="dueHour" + :disabled='!fromHour' + :prepend-icon="mdiClockTimeEightOutline" + :rules="[$validators.required('event.due')]" + readonly + v-bind="attrs" + v-on="on") + v-time-picker( + v-if="menuDueHour" + :value="dueHour" + :allowedMinutes='allowedMinutes' + format='24hr' + @click:minute='menuDueHour=false' + @change='hr => change("dueHour", hr)') List(v-if='type==="normal" && todayEvents.length' :events='todayEvents' :title='$t("event.same_day")') @@ -53,6 +92,7 @@ import dayjs from 'dayjs' import { mapState } from 'vuex' import List from '@/components/List' import { attributesFromEvents } from '../assets/helper' +import { mdiClockTimeFourOutline, mdiClockTimeEightOutline } from '@mdi/js' export default { name: 'DateInput', @@ -63,6 +103,10 @@ export default { }, data () { return { + mdiClockTimeFourOutline, mdiClockTimeEightOutline, + allowedMinutes: [0, 15, 30, 45], + menuFromHour: false, + menuDueHour: false, type: 'normal', page: null, events: [], @@ -96,17 +140,6 @@ export default { dueHour () { return this.value.due && this.value.dueHour ? dayjs.tz(this.value.due).format('HH:mm') : null }, - hourList () { - const hourList = [] - const leftPad = h => ('00' + h).slice(-2) - for (let h = 0; h < 24; h++) { - const textHour = leftPad(h < 13 ? h : h - 12) - hourList.push({ text: textHour + ':00 ' + (h <= 12 ? 'AM' : 'PM'), value: leftPad(h) + ':00' }) - hourList.push({ text: textHour + ':30 ' + (h <= 12 ? 'AM' : 'PM'), value: leftPad(h) + ':30' }) - } - - return hourList - }, whenPatterns () { if (!this.value.from) { return } const date = dayjs(this.value.from) diff --git a/pages/add/_edit.vue b/pages/add/_edit.vue index d0be1c59..fa7fc14a 100644 --- a/pages/add/_edit.vue +++ b/pages/add/_edit.vue @@ -181,7 +181,9 @@ export default { if (!this.$refs.form.validate()) { this.$nextTick(() => { const el = document.querySelector('.v-input.error--text:first-of-type') - el.scrollIntoView(false) + if (el) { + el.scrollIntoView(false) + } }) return } From 2c5f12f86a029ddb5695870ecff68f1ce315c902 Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 3 Jun 2022 21:17:18 +0200 Subject: [PATCH 166/175] "due" is not required --- components/DateInput.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/components/DateInput.vue b/components/DateInput.vue index bcac4f1d..ee8fd699 100644 --- a/components/DateInput.vue +++ b/components/DateInput.vue @@ -72,7 +72,6 @@ v-col(cols=12) :value="dueHour" :disabled='!fromHour' :prepend-icon="mdiClockTimeEightOutline" - :rules="[$validators.required('event.due')]" readonly v-bind="attrs" v-on="on") From 9731c0ff076a7d08c0e1296bab5ca9664c2eb4b8 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:38:08 +0200 Subject: [PATCH 167/175] bump nokogiri --- docs/Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 700ec5e2..f71c9e54 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -68,7 +68,7 @@ GEM mercenary (0.4.0) mini_magick (4.11.0) minitest (5.15.0) - nokogiri (1.13.4-x86_64-linux) + nokogiri (1.13.6-x86_64-linux) racc (~> 1.4) pathutil (0.16.2) forwardable-extended (~> 2.6) From 8018591a8fad189b82055273e51890b31b12c963 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:53:01 +0200 Subject: [PATCH 168/175] update deps --- package.json | 8 +- yarn.lock | 390 +++++++++++++++++++++++++++------------------------ 2 files changed, 212 insertions(+), 186 deletions(-) diff --git a/package.json b/package.json index 9d4d6d1e..20eb0e1a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gancio", - "version": "1.4.4", + "version": "1.5.0-rc.2", "description": "A shared agenda for local communities", "author": "lesion", "scripts": { @@ -38,7 +38,7 @@ "body-parser": "^1.20.0", "cookie-parser": "^1.4.6", "cors": "^2.8.5", - "dayjs": "^1.11.2", + "dayjs": "^1.11.3", "dompurify": "^2.3.8", "email-templates": "^8.0.9", "express": "^4.18.1", @@ -61,7 +61,7 @@ "sequelize": "^6.20.1", "sequelize-slugify": "^1.6.1", "sharp": "^0.27.2", - "sqlite3": "mapbox/node-sqlite3#918052b", + "sqlite3": "^5.0.8", "tiptap": "^1.32.0", "tiptap-extensions": "^1.35.0", "umzug": "^2.3.0", @@ -80,7 +80,7 @@ "prettier": "^2.6.2", "pug": "^3.0.2", "pug-plain-loader": "^1.1.0", - "sass": "^1.52.1", + "sass": "^1.52.2", "sequelize-cli": "^6.3.0", "supertest": "^6.2.2", "webpack": "4", diff --git a/yarn.lock b/yarn.lock index 4367ccb1..db95ad7f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1390,14 +1390,14 @@ tlds "^1.230.0" "@mapbox/node-pre-gyp@^1.0.0": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.8.tgz#32abc8a5c624bc4e46c43d84dfb8b26d33a96f58" - integrity sha512-CMGKi28CF+qlbXh26hDe6NxCd7amqeAzEqnS6IHeO6LoaKyM/n+Xw3HT1COdq8cuioOdlKdqn/hCmqPUOMOywg== + version "1.0.9" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz#09a8781a3a036151cdebbe8719d6f8b25d4058bc" + integrity sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw== dependencies: - detect-libc "^1.0.3" + detect-libc "^2.0.0" https-proxy-agent "^5.0.0" make-dir "^3.1.0" - node-fetch "^2.6.5" + node-fetch "^2.6.7" nopt "^5.0.0" npmlog "^5.0.1" rimraf "^3.0.2" @@ -1897,6 +1897,11 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + "@tootallnate/once@2": version "2.0.0" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" @@ -2419,13 +2424,22 @@ acorn@^8.0.4, acorn@^8.5.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== -agent-base@6: +agent-base@6, agent-base@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" +agentkeepalive@^4.1.3: + version "4.2.1" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== + dependencies: + debug "^4.1.0" + depd "^1.1.2" + humanize-ms "^1.2.1" + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -2458,7 +2472,7 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2580,6 +2594,14 @@ are-we-there-yet@^2.0.0: delegates "^1.0.0" readable-stream "^3.6.0" +are-we-there-yet@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz#ba20bd6b553e31d62fc8c31bd23d22b95734390d" + integrity sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + are-we-there-yet@~1.1.2: version "1.1.7" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" @@ -2740,16 +2762,6 @@ autoprefixer@^9.6.1: postcss "^7.0.32" postcss-value-parser "^4.1.0" -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" - integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== - axios-retry@^3.1.9: version "3.2.4" resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.2.4.tgz#f447a53c3456f5bfeca18f20c3a3272207d082ae" @@ -3261,7 +3273,7 @@ cacache@^12.0.2: unique-filename "^1.1.1" y18n "^4.0.0" -cacache@^15.0.5: +cacache@^15.0.5, cacache@^15.2.0: version "15.3.0" resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== @@ -3395,11 +3407,6 @@ caniuse-lite@^1.0.30001332: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz#899254a0b70579e5a957c32dced79f0727c61f2a" integrity sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w== -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" @@ -3708,7 +3715,7 @@ color-string@^1.6.0: color-name "^1.0.0" simple-swizzle "^0.2.2" -color-support@^1.1.2: +color-support@^1.1.2, color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== @@ -3734,7 +3741,7 @@ colorspace@1.1.x: color "^3.1.3" text-hex "1.0.x" -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -4326,10 +4333,10 @@ dayjs@^1.10.6: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.8.tgz#267df4bc6276fcb33c04a6735287e3f429abec41" integrity sha512-wbNwDfBHHur9UOzNUjeKUOJ0fCb0a52Wx0xInmQ7Y8FstyajiV1NmK1e00cxsr9YrE9r7yAChE0VvpuY5Rnlow== -dayjs@^1.11.2: - version "1.11.2" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.2.tgz#fa0f5223ef0d6724b3d8327134890cfe3d72fbe5" - integrity sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw== +dayjs@^1.11.3: + version "1.11.3" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.3.tgz#4754eb694a624057b9ad2224b67b15d552589258" + integrity sha512-xxwlswWOlGhzgQ4TKzASQkUhqERI3egRNqgV4ScR8wlANA/A9tZ7miXa44vTTKEq5l7vWoL5G57bG3zA+Kow0A== de-indent@^1.0.2: version "1.0.2" @@ -4467,7 +4474,7 @@ depd@2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@~1.1.2: +depd@^1.1.2, depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= @@ -4510,6 +4517,11 @@ detect-libc@^1.0.3: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= +detect-libc@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== + detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" @@ -4807,6 +4819,13 @@ encoding-japanese@1.0.30: resolved "https://registry.yarnpkg.com/encoding-japanese/-/encoding-japanese-1.0.30.tgz#537c4d62881767925d601acb4c79fb14db81703a" integrity sha512-bd/DFLAoJetvv7ar/KIpE3CNO8wEuyrt9Xuw6nSMiZ+Vrz/Q21BPsMHvARL2Wz6IKHKXgb+DWZqtRg1vql9cBg== +encoding@^0.1.12: + version "0.1.13" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" @@ -4848,6 +4867,11 @@ envinfo@^7.7.3: resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + errno@^0.1.3, errno@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" @@ -5162,11 +5186,6 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - external-editor@^3.0.3: version "3.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" @@ -5425,11 +5444,6 @@ for-in@^1.0.2: resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - form-data@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -5439,15 +5453,6 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - format@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" @@ -5586,6 +5591,20 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" + gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -5737,12 +5756,12 @@ globby@^11.0.4: merge2 "^1.4.1" slash "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.3, graceful-fs@^4.2.4: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.9" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== -graceful-fs@^4.2.9: +graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -5759,19 +5778,6 @@ hable@^3.0.0: resolved "https://registry.yarnpkg.com/hable/-/hable-3.0.0.tgz#6de089b2df946635cf8134b9e4859f1b62de255f" integrity sha512-7+G0/2/COR8pwteYFqHIVYfQpuEiO2HXwJrhCBJVgrNrl9O5eaUoJVDGXUJX+0RpGncNVTuestexjk1afj01wQ== -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - hard-source-webpack-plugin@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/hard-source-webpack-plugin/-/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e" @@ -6052,6 +6058,11 @@ htmlparser2@^6.1.0: domutils "^2.5.2" entities "^2.0.0" +http-cache-semantics@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + http-errors@1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" @@ -6074,6 +6085,15 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + http-proxy-agent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" @@ -6112,15 +6132,6 @@ http-signature@^1.3.6: jsprim "^2.0.2" sshpk "^1.14.1" -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - https-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" @@ -6139,6 +6150,13 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== + dependencies: + ms "^2.0.0" + i18n-locales@^0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/i18n-locales/-/i18n-locales-0.0.5.tgz#8f587e598ab982511d7c7db910cb45b8d93cd96a" @@ -6177,7 +6195,7 @@ iconv-lite@0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@0.6.3, iconv-lite@^0.6.3: +iconv-lite@0.6.3, iconv-lite@^0.6.2, iconv-lite@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== @@ -6552,6 +6570,11 @@ is-https@^2.0.2: resolved "https://registry.yarnpkg.com/is-https/-/is-https-2.0.2.tgz#7009d303c72580f15897d5c063d6b6bc1f838fef" integrity sha512-UfUCKVQH/6PQRCh5Qk9vNu4feLZiFmV/gr8DjbtJD0IrCRIDTA6E+d/AVFGPulI5tqK5W45fYbn1Nir1O99rFw== +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== + is-negative-zero@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -6657,11 +6680,6 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - is-weakref@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -6708,11 +6726,6 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" @@ -7232,11 +7245,6 @@ json-schema@0.4.0: resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - json5@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" @@ -7288,16 +7296,6 @@ jsonwebtoken@^8.5.1: ms "^2.1.1" semver "^5.6.0" -jsprim@^1.2.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" - integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.4.0" - verror "1.10.0" - jsprim@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-2.0.2.tgz#77ca23dbcd4135cd364800d22ff82c2185803d4d" @@ -7765,6 +7763,28 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: dependencies: semver "^6.0.0" +make-fetch-happen@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== + dependencies: + agentkeepalive "^4.1.3" + cacache "^15.2.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^6.0.0" + minipass "^3.1.3" + minipass-collect "^1.0.2" + minipass-fetch "^1.3.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.2" + promise-retry "^2.0.1" + socks-proxy-agent "^6.0.0" + ssri "^8.0.0" + make-plural@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/make-plural/-/make-plural-7.1.0.tgz#8a0381ff8c9be4f074e0acdc42ec97639c2344f9" @@ -7960,7 +7980,7 @@ mime-db@1.51.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.19, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.15, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@^2.1.19, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.15, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.34" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== @@ -8026,6 +8046,17 @@ minipass-collect@^1.0.2: dependencies: minipass "^3.0.0" +minipass-fetch@^1.3.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== + dependencies: + minipass "^3.1.0" + minipass-sized "^1.0.3" + minizlib "^2.0.0" + optionalDependencies: + encoding "^0.1.12" + minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -8033,21 +8064,28 @@ minipass-flush@^1.0.5: dependencies: minipass "^3.0.0" -minipass-pipeline@^1.2.2: +minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" -minipass@^3.0.0, minipass@^3.1.1: +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: version "3.1.6" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ== dependencies: yallist "^4.0.0" -minizlib@^2.1.1: +minizlib@^2.0.0, minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== @@ -8140,7 +8178,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.1.1: +ms@2.1.3, ms@^2.0.0, ms@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -8241,7 +8279,7 @@ nearley@^2.20.1: railroad-diagrams "^1.0.0" randexp "0.4.6" -negotiator@0.6.3: +negotiator@0.6.3, negotiator@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -8293,27 +8331,27 @@ node-addon-api@^4.2.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== -node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.5, node-fetch@^2.6.6: +node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.6, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-gyp@7.x: - version "7.1.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== +node-gyp@8.x: + version "8.4.1" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" + integrity sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w== dependencies: env-paths "^2.2.0" glob "^7.1.4" - graceful-fs "^4.2.3" + graceful-fs "^4.2.6" + make-fetch-happen "^9.1.0" nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" + npmlog "^6.0.0" rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" + semver "^7.3.5" + tar "^6.1.2" which "^2.0.2" node-html-parser@^5.1.0: @@ -8465,6 +8503,16 @@ npmlog@^5.0.1: gauge "^3.0.0" set-blocking "^2.0.0" +npmlog@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + dependencies: + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" + nth-check@^1.0.2, nth-check@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" @@ -8515,11 +8563,6 @@ nwsapi@^2.2.0: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - oauth2-server@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/oauth2-server/-/oauth2-server-3.0.0.tgz#c46276b74c3d28634d59ee981f76b58a6459cc28" @@ -8916,11 +8959,6 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - pg-connection-string@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34" @@ -9807,6 +9845,14 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + promise@^7.0.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -9983,7 +10029,7 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= -psl@^1.1.28, psl@^1.1.33: +psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== @@ -10172,11 +10218,6 @@ qs@6.9.7: resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== -qs@~6.5.2: - version "6.5.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" - integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== - query-string@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" @@ -10431,32 +10472,6 @@ repeat-string@^1.6.1: resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= -request@^2.88.2: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -10642,10 +10657,10 @@ sass-loader@^10.2.0: schema-utils "^3.0.0" semver "^7.3.2" -sass@^1.52.1: - version "1.52.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.52.1.tgz#554693da808543031f9423911d62c60a1acf7889" - integrity sha512-fSzYTbr7z8oQnVJ3Acp9hV80dM1fkMN7mSD/25mpcct9F7FPBMOI8krEYALgU1aZoqGhQNhTPsuSmxjnIvAm4Q== +sass@^1.52.2: + version "1.52.2" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.52.2.tgz#cd1f03e0e7be5bb2cebcf1c34d735f087d790936" + integrity sha512-mfHB2VSeFS7sZlPv9YohB9GB7yWIgQNTGniQwfQ04EoQN0wsQEv7SwpCwy/x48Af+Z3vDeFXz+iuXM3HK/phZQ== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" @@ -11063,6 +11078,11 @@ sluglife@^0.9.8: lodash.defaults "^4.2.0" unicode ">=11.0.1" +smart-buffer@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -11093,6 +11113,23 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" +socks-proxy-agent@^6.0.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz#2687a31f9d7185e38d530bef1944fe1f1496d6ce" + integrity sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ== + dependencies: + agent-base "^6.0.2" + debug "^4.3.3" + socks "^2.6.2" + +socks@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" + integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== + dependencies: + ip "^1.1.5" + smart-buffer "^4.2.0" + sort-keys@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" @@ -11191,16 +11228,18 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= -sqlite3@mapbox/node-sqlite3#918052b: - version "5.0.2" - resolved "https://codeload.github.com/mapbox/node-sqlite3/tar.gz/918052b538b0effe6c4a44c74a16b2749c08a0d2" +sqlite3@^5.0.8: + version "5.0.8" + resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-5.0.8.tgz#b4b7eab7156debec80866ef492e01165b4688272" + integrity sha512-f2ACsbSyb2D1qFFcqIXPfFscLtPVOWJr5GmUzYxf4W+0qelu5MWrR+FAQE1d5IUArEltBrzSDxDORG8P/IkqyQ== dependencies: "@mapbox/node-pre-gyp" "^1.0.0" node-addon-api "^4.2.0" + tar "^6.1.11" optionalDependencies: - node-gyp "7.x" + node-gyp "8.x" -sshpk@^1.14.1, sshpk@^1.7.0: +sshpk@^1.14.1: version "1.17.0" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== @@ -11222,7 +11261,7 @@ ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" -ssri@^8.0.1: +ssri@^8.0.0, ssri@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== @@ -11568,7 +11607,7 @@ tar-stream@^2.1.4: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^6.0.2, tar@^6.1.11: +tar@^6.0.2, tar@^6.1.11, tar@^6.1.2: version "6.1.11" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== @@ -11863,14 +11902,6 @@ tough-cookie@^4.0.0: punycode "^2.1.1" universalify "^0.1.2" -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - tr46@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" @@ -12211,11 +12242,6 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - uuid@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" @@ -12622,7 +12648,7 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0, wide-align@^1.1.2: +wide-align@^1.1.0, wide-align@^1.1.2, wide-align@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== From 19663fd7524347513be4717c188f9212595a2ad4 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:53:28 +0200 Subject: [PATCH 169/175] prepare CHANGELOG --- CHANGELOG | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 6a38504d..45db2ae4 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,19 @@ All notable changes to this project will be documented in this file. +### 1.5.0 - UNRELEASED + - new Tag page! + - new Place page! + - new search flow + - new meta-tag-place / group / cohort page! + - allow footer links reordering + - new Docker image + - add GANCIO_DB_PORT environment + - merge old duplicated tags, trim + - add dynamic sitemap.xml ! + - calendar attributes refactoring (a dot each day, colors represents n. events) + - fix event mime type response + + ### 1.4.4 - 10 may '22 - better img rendering, make it easier to download flyer #153 - avoid place and tags duplication (remove white space, match case insensitive) From 3f707ec3d1f7aad327228bb7a0bf32e3ebde77d2 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:55:17 +0200 Subject: [PATCH 170/175] add blobs label --- locales/en.json | 3 ++- locales/it.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/locales/en.json b/locales/en.json index 3d35d3d5..49aac250 100644 --- a/locales/en.json +++ b/locales/en.json @@ -86,7 +86,8 @@ "reset": "Reset", "import": "Import", "max_events": "N. max events", - "label": "Label" + "label": "Label", + "blobs": "Blobs" }, "login": { "description": "By logging in you can publish new events.", diff --git a/locales/it.json b/locales/it.json index 1164e944..e9fba4e0 100644 --- a/locales/it.json +++ b/locales/it.json @@ -86,7 +86,8 @@ "reset": "Reset", "import": "Importa", "max_events": "N. massimo eventi", - "label": "Etichetta" + "label": "Etichetta", + "blobs": "Bolle" }, "login": { "description": "Entrando puoi pubblicare nuovi eventi.", From 18fefaaea91d8163f65946f95578da372485fa38 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:55:34 +0200 Subject: [PATCH 171/175] dockerfile --- docs/docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docker/Dockerfile b/docs/docker/Dockerfile index 71bff2ee..670f2db2 100644 --- a/docs/docker/Dockerfile +++ b/docs/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM node:17.4-slim +FROM node:17-slim RUN bash -c "apt update -y && apt install git -y && apt clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp" RUN yarn global remove gancio || true RUN yarn cache clean From 4dbfebf4be2cebce78486b15b4c20f73a5e7c836 Mon Sep 17 00:00:00 2001 From: lesion Date: Mon, 6 Jun 2022 16:55:45 +0200 Subject: [PATCH 172/175] minor on Admin page --- pages/Admin.vue | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pages/Admin.vue b/pages/Admin.vue index d659ba50..38166d27 100644 --- a/pages/Admin.vue +++ b/pages/Admin.vue @@ -27,7 +27,7 @@ Places //- Cohorts - v-tab {{$t('common.cohorts')}} + v-tab {{$t('common.blobs')}} v-tab-item Cohorts @@ -57,15 +57,16 @@