diff --git a/agenda-services/pom.xml b/agenda-services/pom.xml
index 9052224b2..ab57c3756 100644
--- a/agenda-services/pom.xml
+++ b/agenda-services/pom.xml
@@ -68,6 +68,11 @@
test-jar
test
+
+ io.meeds.pwa
+ pwa-service
+ provided
+
agenda-services
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCancelledNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCancelledNotificationPwaPlugin.java
new file mode 100644
index 000000000..2e97cc51b
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCancelledNotificationPwaPlugin.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+
+package org.exoplatform.agenda.notification.pwa;
+
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+public class AgendaCancelledNotificationPwaPlugin extends AgendaNotificationPwaPlugin {
+ public AgendaCancelledNotificationPwaPlugin(InitParams initParams,
+ ResourceBundleService resourceBundleService, SpaceService spaceService) {
+ super(initParams, resourceBundleService, spaceService);
+ }
+
+
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCreatedNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCreatedNotificationPwaPlugin.java
new file mode 100644
index 000000000..a0af74dd9
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaCreatedNotificationPwaPlugin.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+public class AgendaCreatedNotificationPwaPlugin extends AgendaNotificationPwaPlugin {
+ public AgendaCreatedNotificationPwaPlugin(InitParams initParams,
+ ResourceBundleService resourceBundleService, SpaceService spaceService) {
+ super(initParams, resourceBundleService, spaceService);
+ }
+
+
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaNotificationPwaPlugin.java
new file mode 100644
index 000000000..1fd7f1c50
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaNotificationPwaPlugin.java
@@ -0,0 +1,117 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import io.meeds.pwa.model.PwaNotificationMessage;
+import io.meeds.pwa.plugin.PwaNotificationPlugin;
+import org.apache.commons.lang3.StringUtils;
+import org.exoplatform.commons.api.notification.model.NotificationInfo;
+import org.exoplatform.commons.utils.CommonsUtils;
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.container.xml.ValueParam;
+import org.exoplatform.services.log.ExoLogger;
+import org.exoplatform.services.log.Log;
+import org.exoplatform.services.resources.LocaleConfig;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_EVENT_MODIFICATION_TYPE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_STATUS;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_TITLE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_URL;
+
+
+public class AgendaNotificationPwaPlugin implements PwaNotificationPlugin {
+ private static final String AGENDA_NOTIFICATION_PLUGIN_NAME = "agenda.notification.plugin.key";
+ private static final String TITLE_LABEL_KEY = "pwa.notification.AgendaNotificationPwaPlugin.title";
+
+ private static final Log LOG = ExoLogger.getLogger(AgendaNotificationPwaPlugin.class);
+
+ private String notificationId;
+
+ private ResourceBundleService resourceBundleService;
+
+ public AgendaNotificationPwaPlugin(InitParams initParams,
+ ResourceBundleService resourceBundleService, SpaceService spaceService) {
+ this.resourceBundleService = resourceBundleService;
+ ValueParam notificationIdParam = initParams.getValueParam(AGENDA_NOTIFICATION_PLUGIN_NAME);
+ if (notificationIdParam == null || StringUtils.isBlank(notificationIdParam.getValue())) {
+ throw new IllegalStateException("'agenda.notification.plugin.key' parameter is mandatory");
+ }
+ this.notificationId = notificationIdParam.getValue();
+ }
+
+ @Override
+ public String getId() {
+ return this.notificationId;
+ }
+
+ @Override
+ public PwaNotificationMessage process(NotificationInfo notification, LocaleConfig localeConfig) {
+ PwaNotificationMessage notificationMessage = new PwaNotificationMessage();
+
+ String key = TITLE_LABEL_KEY;
+ String type = notification.getValueOwnerParameter(STORED_EVENT_MODIFICATION_TYPE);
+ String eventStatus = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_STATUS);
+ switch (type) {
+ case "ADDED":
+ key += ".created";
+ break;
+ case "DATES_UPDATED":
+ if (eventStatus.equals("CONFIRMED")) {
+ key += ".dates.updated";
+ } else if (eventStatus.equals("TENTATIVE")){
+ key += ".datePoll.dates.updated";
+ } else {
+ key += ".canceled";
+ }
+ break;
+ case "UPDATED":
+ if (eventStatus.equals("TENTATIVE")) {
+ key += ".datePoll.updated";
+ } else {
+ key += ".updated";
+ }
+ break;
+ case "SWITCHED_EVENT_TO_DATE_POLL":
+ key += ".switchedToDatePoll";
+ break;
+ case "SWITCHED_DATE_POLL_TO_EVENT":
+ key += ".switchedToEvent";
+ break;
+ case "DELETED":
+ if (eventStatus.equals("TENTATIVE")) {
+ key += ".datePoll.updated";
+ } else {
+ key += ".canceled";
+ }
+ break;
+ default:
+ key += ".canceled";
+ break;
+ }
+ String title = resourceBundleService.getSharedString(key, localeConfig.getLocale())
+ .replace("{0}",notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ notificationMessage.setTitle(title);
+ notificationMessage.setBody(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ String url = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_URL).replace(CommonsUtils.getCurrentDomain(), "");
+ notificationMessage.setUrl(url);
+ return notificationMessage;
+ }
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaUpdatedNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaUpdatedNotificationPwaPlugin.java
new file mode 100644
index 000000000..719dce2ca
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/AgendaUpdatedNotificationPwaPlugin.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+public class AgendaUpdatedNotificationPwaPlugin extends AgendaNotificationPwaPlugin {
+ public AgendaUpdatedNotificationPwaPlugin(InitParams initParams,
+ ResourceBundleService resourceBundleService, SpaceService spaceService) {
+ super(initParams, resourceBundleService, spaceService);
+ }
+
+
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/DatePollNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/DatePollNotificationPwaPlugin.java
new file mode 100644
index 000000000..05d325d44
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/DatePollNotificationPwaPlugin.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import io.meeds.pwa.model.PwaNotificationMessage;
+import io.meeds.pwa.plugin.PwaNotificationPlugin;
+import org.exoplatform.commons.api.notification.model.NotificationInfo;
+import org.exoplatform.commons.utils.CommonsUtils;
+import org.exoplatform.services.log.ExoLogger;
+import org.exoplatform.services.log.Log;
+import org.exoplatform.services.resources.LocaleConfig;
+import org.exoplatform.services.resources.ResourceBundleService;
+
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_CREATOR;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_TITLE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_URL;
+
+public class DatePollNotificationPwaPlugin implements PwaNotificationPlugin {
+ private static final Log LOG = ExoLogger.getLogger(DatePollNotificationPwaPlugin.class);
+
+ private static final String TITLE_LABEL_KEY = "pwa.notification.DatePollNotificationPwaPlugin.title";
+
+ private String notificationId = "DatePollNotificationPlugin";
+
+ private ResourceBundleService resourceBundleService;
+
+
+ public DatePollNotificationPwaPlugin(ResourceBundleService resourceBundleService) {
+ this.resourceBundleService = resourceBundleService;
+ }
+
+ @Override
+ public String getId() {
+ return this.notificationId;
+ }
+
+
+ @Override
+ public PwaNotificationMessage process(NotificationInfo notification, LocaleConfig localeConfig) {
+ PwaNotificationMessage notificationMessage = new PwaNotificationMessage();
+
+ String key = TITLE_LABEL_KEY;
+ String creatorName = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_CREATOR);
+
+ String title = resourceBundleService.getSharedString(key, localeConfig.getLocale())
+ .replace("{0}",creatorName);
+
+ notificationMessage.setTitle(title);
+ notificationMessage.setBody(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ String url = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_URL).replace(CommonsUtils.getCurrentDomain(), "");
+ notificationMessage.setUrl(url);
+ return notificationMessage;
+ }
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReminderNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReminderNotificationPwaPlugin.java
new file mode 100644
index 000000000..73d82e729
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReminderNotificationPwaPlugin.java
@@ -0,0 +1,83 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import io.meeds.pwa.model.PwaNotificationMessage;
+import io.meeds.pwa.plugin.PwaNotificationPlugin;
+import org.apache.commons.lang3.StringUtils;
+import org.exoplatform.agenda.model.Calendar;
+import org.exoplatform.agenda.model.Event;
+import org.exoplatform.agenda.model.EventReminder;
+import org.exoplatform.agenda.service.AgendaCalendarService;
+import org.exoplatform.agenda.service.AgendaEventService;
+import org.exoplatform.commons.api.notification.NotificationContext;
+import org.exoplatform.commons.api.notification.model.NotificationInfo;
+import org.exoplatform.commons.utils.CommonsUtils;
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.container.xml.ValueParam;
+import org.exoplatform.services.log.ExoLogger;
+import org.exoplatform.services.log.Log;
+import org.exoplatform.services.resources.LocaleConfig;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_OWNER_ID;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_TITLE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_URL;
+
+public class EventReminderNotificationPwaPlugin implements PwaNotificationPlugin {
+ private static final Log LOG = ExoLogger.getLogger(EventReminderNotificationPwaPlugin.class);
+
+ private String notificationId = "EventReminderNotificationPlugin";
+ private static final String TITLE_LABEL_KEY = "pwa.notification.EventReminderNotificationPwaPlugin.title";
+
+ private ResourceBundleService resourceBundleService;
+ private SpaceService spaceService;
+
+ public EventReminderNotificationPwaPlugin(ResourceBundleService resourceBundleService, SpaceService spaceService) {
+ this.spaceService = spaceService;
+ this.resourceBundleService = resourceBundleService;
+ }
+
+ @Override
+ public SpaceService getSpaceService() {
+ return this.spaceService;
+ }
+
+ @Override
+ public String getId() {
+ return this.notificationId;
+ }
+
+ @Override
+ public PwaNotificationMessage process(NotificationInfo notification, LocaleConfig localeConfig) {
+ PwaNotificationMessage notificationMessage = new PwaNotificationMessage();
+
+ String key = TITLE_LABEL_KEY;
+ String spaceId = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_OWNER_ID);
+ String title = resourceBundleService.getSharedString(key, localeConfig.getLocale())
+ .replace("{0}",getSpaceName(spaceId));
+
+ notificationMessage.setTitle(title);
+ notificationMessage.setBody(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ String url = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_URL).replace(CommonsUtils.getCurrentDomain(), "");
+ notificationMessage.setUrl(url);
+ return notificationMessage;
+ }
+
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReplyNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReplyNotificationPwaPlugin.java
new file mode 100644
index 000000000..13aedf616
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventReplyNotificationPwaPlugin.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import io.meeds.pwa.model.PwaNotificationMessage;
+import io.meeds.pwa.plugin.PwaNotificationPlugin;
+import org.exoplatform.commons.api.notification.model.NotificationInfo;
+import org.exoplatform.commons.utils.CommonsUtils;
+import org.exoplatform.services.log.ExoLogger;
+import org.exoplatform.services.log.Log;
+import org.exoplatform.services.resources.LocaleConfig;
+import org.exoplatform.services.resources.ResourceBundleService;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_IS_CREATOR;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_PARTICIPANT_NAME;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_RESPONSE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_TITLE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_URL;
+
+public class EventReplyNotificationPwaPlugin implements PwaNotificationPlugin {
+ private static final Log LOG = ExoLogger.getLogger(EventReplyNotificationPwaPlugin.class);
+
+
+ private String notificationId = "EventReplyNotificationPlugin";
+ private static final String TITLE_LABEL_KEY = "pwa.notification.EventReplyNotificationPwaPlugin.title";
+ private ResourceBundleService resourceBundleService;
+
+ public EventReplyNotificationPwaPlugin(ResourceBundleService resourceBundleService) {
+ this.resourceBundleService = resourceBundleService;
+ }
+
+ @Override
+ public String getId() {
+ return this.notificationId;
+ }
+
+ @Override
+ public PwaNotificationMessage process(NotificationInfo notification, LocaleConfig localeConfig) {
+ PwaNotificationMessage notificationMessage = new PwaNotificationMessage();
+
+ String key = TITLE_LABEL_KEY;
+
+ if ("true".equals(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_IS_CREATOR))) {
+ key += ".creator";
+ } else {
+ key += ".participant";
+ }
+ key += ".response";
+
+ String status = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_RESPONSE);
+ switch (status) {
+ case "ACCEPTED":
+ key += ".accepted";
+ break;
+ case "DECLINED":
+ key += ".declined";
+ break;
+ default:
+ key+= ".mayBe";
+ }
+
+ String title = resourceBundleService.getSharedString(key, localeConfig.getLocale())
+ .replace("{0}",notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_PARTICIPANT_NAME));
+
+ notificationMessage.setTitle(title);
+ notificationMessage.setBody(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ String url = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_URL).replace(CommonsUtils.getCurrentDomain(), "");
+ notificationMessage.setUrl(url);
+ return notificationMessage;
+ }
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventVoteNotificationPwaPlugin.java b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventVoteNotificationPwaPlugin.java
new file mode 100644
index 000000000..578f03747
--- /dev/null
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/notification/pwa/EventVoteNotificationPwaPlugin.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2024 eXo Platform SAS.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+package org.exoplatform.agenda.notification.pwa;
+
+import io.meeds.pwa.model.PwaNotificationMessage;
+import io.meeds.pwa.plugin.PwaNotificationPlugin;
+import org.apache.commons.lang3.StringUtils;
+import org.exoplatform.agenda.constant.EventAttendeeResponse;
+import org.exoplatform.agenda.model.Calendar;
+import org.exoplatform.agenda.model.Event;
+import org.exoplatform.agenda.service.AgendaCalendarService;
+import org.exoplatform.agenda.service.AgendaEventAttendeeService;
+import org.exoplatform.commons.api.notification.NotificationContext;
+import org.exoplatform.commons.api.notification.model.NotificationInfo;
+import org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin;
+import org.exoplatform.commons.utils.CommonsUtils;
+import org.exoplatform.container.xml.InitParams;
+import org.exoplatform.container.xml.ValueParam;
+import org.exoplatform.services.log.ExoLogger;
+import org.exoplatform.services.log.Log;
+import org.exoplatform.services.resources.LocaleConfig;
+import org.exoplatform.services.resources.ResourceBundleService;
+import org.exoplatform.social.core.manager.IdentityManager;
+import org.exoplatform.social.core.space.spi.SpaceService;
+
+import static org.exoplatform.agenda.util.NotificationUtils.EVENT_AGENDA;
+import static org.exoplatform.agenda.util.NotificationUtils.EVENT_PARTICIPANT_ID;
+import static org.exoplatform.agenda.util.NotificationUtils.EVENT_RESPONSE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_IS_CREATOR;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_OWNER_ID;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_PARTICIPANT_NAME;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_RESPONSE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_TITLE;
+import static org.exoplatform.agenda.util.NotificationUtils.STORED_PARAMETER_EVENT_URL;
+import static org.exoplatform.agenda.util.NotificationUtils.getEventId;
+import static org.exoplatform.agenda.util.NotificationUtils.setEventReminderNotificationRecipients;
+import static org.exoplatform.agenda.util.NotificationUtils.storeEventParameters;
+
+public class EventVoteNotificationPwaPlugin implements PwaNotificationPlugin {
+ private static final Log LOG = ExoLogger.getLogger(EventVoteNotificationPwaPlugin.class);
+
+ private String notificationId = "VoteNotificationPlugin";
+ private static final String TITLE_LABEL_KEY = "pwa.notification.EventVoteNotificationPwaPlugin.title";
+ private ResourceBundleService resourceBundleService;
+
+ public EventVoteNotificationPwaPlugin(ResourceBundleService resourceBundleService) {
+ this.resourceBundleService = resourceBundleService;
+ }
+
+ @Override
+ public String getId() {
+ return this.notificationId;
+ }
+
+ @Override
+ public PwaNotificationMessage process(NotificationInfo notification, LocaleConfig localeConfig) {
+ PwaNotificationMessage notificationMessage = new PwaNotificationMessage();
+ String title = resourceBundleService.getSharedString(TITLE_LABEL_KEY, localeConfig.getLocale())
+ .replace("{0}",notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_PARTICIPANT_NAME));
+
+ notificationMessage.setTitle(title);
+ notificationMessage.setBody(notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_TITLE));
+
+ String url = notification.getValueOwnerParameter(STORED_PARAMETER_EVENT_URL).replace(CommonsUtils.getCurrentDomain(), "");
+ notificationMessage.setUrl(url);
+ return notificationMessage;
+ }
+}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/service/AgendaCalendarServiceImpl.java b/agenda-services/src/main/java/org/exoplatform/agenda/service/AgendaCalendarServiceImpl.java
index efea9db30..9ce5c02df 100644
--- a/agenda-services/src/main/java/org/exoplatform/agenda/service/AgendaCalendarServiceImpl.java
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/service/AgendaCalendarServiceImpl.java
@@ -61,7 +61,7 @@ public List getCalendars(int offset, int limit, String username) throw
if (username == null) {
throw new IllegalArgumentException("Username is mandatory");
}
- Identity identity = identityManager.getOrCreateIdentity(OrganizationIdentityProvider.NAME, username);
+ Identity identity = identityManager.getOrCreateUserIdentity(username);
if (identity == null) {
throw new IllegalStateException("User with name " + username + " is not found");
}
@@ -89,7 +89,7 @@ public List getCalendarsByOwnerIds(List ownerIds, String usernam
if (username == null) {
throw new IllegalArgumentException("Username is mandatory");
}
- Identity identity = identityManager.getOrCreateIdentity(OrganizationIdentityProvider.NAME, username);
+ Identity identity = identityManager.getOrCreateUserIdentity(username);
if (identity == null) {
throw new IllegalStateException("User with name " + username + " is not found");
}
@@ -115,7 +115,7 @@ public int countCalendars(String username) throws Exception {
if (username == null) {
throw new IllegalArgumentException("Username is mandatory");
}
- Identity identity = identityManager.getOrCreateIdentity(OrganizationIdentityProvider.NAME, username);
+ Identity identity = identityManager.getOrCreateUserIdentity(username);
if (identity == null) {
throw new IllegalStateException("User with name " + username + " is not found");
}
@@ -137,7 +137,7 @@ public Calendar getCalendarById(long calendarId, String username) throws Illegal
if (username == null) {
throw new IllegalArgumentException("Username is mandatory");
}
- Identity userIdentity = identityManager.getOrCreateIdentity(OrganizationIdentityProvider.NAME, username);
+ Identity userIdentity = identityManager.getOrCreateUserIdentity(username);
if (userIdentity == null) {
throw new IllegalStateException("User with name " + username + " is not found");
}
@@ -151,11 +151,25 @@ public Calendar getCalendarById(long calendarId, String username) throws Illegal
calendar.setDeleted(true);
calendar.setAcl(new CalendarPermission());
} else {
- boolean canEditCalendar = Utils.checkAclByCalendarOwner(identityManager, spaceService, ownerId, username, true);
- boolean canCreateEvent = Utils.canCreateEvent(identityManager, spaceService, ownerId, Long.parseLong(userIdentity.getId()));
- boolean hasRedactor = Utils.canInviteeEdit(identityManager, spaceService, ownerId);
- calendar.setAcl(new CalendarPermission(canCreateEvent, canEditCalendar, hasRedactor));
- fillCalendarTitleByOwnerName(calendar);
+ long userIdentityId = Long.parseLong(userIdentity.getId());
+ if (!Utils.canAccessCalendar(identityManager, spaceService, ownerId, userIdentityId)) {
+ throw new IllegalAccessException("User " + username + " is not allowed to retrieve calendar data of space "
+ + calendar.getTitle());
+ } else {
+ boolean canEditCalendar = Utils.canEditCalendar(identityManager,
+ spaceService,
+ ownerId,
+ Long.parseLong(userIdentity.getId()));
+ boolean canCreateEvent = Utils.canCreateEvent(identityManager,
+ spaceService,
+ ownerId,
+ Long.parseLong(userIdentity.getId()));
+ boolean hasRedactor = Utils.canInviteeEdit(identityManager,
+ spaceService,
+ ownerId);
+ calendar.setAcl(new CalendarPermission(canCreateEvent, canEditCalendar, hasRedactor));
+ fillCalendarTitleByOwnerName(calendar);
+ }
}
return calendar;
}
@@ -247,13 +261,13 @@ public Calendar createCalendar(Calendar calendar, String username) throws Illega
if (ownerId <= 0) {
// Automatically set owner of calendar, the currently authenticated user
// if no owner has been specified
- Identity userIdentity = identityManager.getOrCreateIdentity(OrganizationIdentityProvider.NAME, username);
+ Identity userIdentity = identityManager.getOrCreateUserIdentity(username);
if (userIdentity == null) {
throw new IllegalStateException("User with name " + username + " is not found");
}
calendar.setOwnerId(Long.parseLong(userIdentity.getId()));
} else {
- Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username, false);
+ Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username);
}
// User had created the calendar manually
@@ -309,7 +323,7 @@ public void updateCalendar(Calendar calendar, String username) throws IllegalAcc
// Refill readonly fields from Database to avoid letting users modifying
// data using UI or REST calls
refillReadOnlyFields(calendar);
- Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username, false);
+ Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username);
agendaCalendarStorage.updateCalendar(calendar);
}
@@ -346,7 +360,7 @@ public void deleteCalendarById(long calendarId, String username) throws IllegalA
if (calendar.isSystem()) {
throw new IllegalStateException("Calendar with id " + calendarId + " is a system calendar, thus it couldn't be deleted");
}
- Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username, false);
+ Utils.checkAclByCalendarOwner(identityManager, spaceService, calendar.getOwnerId(), username);
deleteCalendarById(calendarId);
}
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/util/NotificationUtils.java b/agenda-services/src/main/java/org/exoplatform/agenda/util/NotificationUtils.java
index fa7710d9f..7611d006a 100644
--- a/agenda-services/src/main/java/org/exoplatform/agenda/util/NotificationUtils.java
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/util/NotificationUtils.java
@@ -179,7 +179,7 @@ public class NotificationUtils {
public static final String STORED_PARAMETER_EVENT_STATUS = "eventStatus";
- private static final String STORED_PARAMETER_EVENT_IS_CREATOR = "isCreator";
+ public static final String STORED_PARAMETER_EVENT_IS_CREATOR = "isCreator";
private static final String TEMPLATE_VARIABLE_EVENT_START_DATE = "startDate";
diff --git a/agenda-services/src/main/java/org/exoplatform/agenda/util/Utils.java b/agenda-services/src/main/java/org/exoplatform/agenda/util/Utils.java
index 61138395f..d1101447a 100644
--- a/agenda-services/src/main/java/org/exoplatform/agenda/util/Utils.java
+++ b/agenda-services/src/main/java/org/exoplatform/agenda/util/Utils.java
@@ -22,7 +22,6 @@
import java.util.stream.Collectors;
import net.fortuna.ical4j.model.Month;
-import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.exoplatform.agenda.constant.AgendaEventModificationType;
@@ -288,45 +287,29 @@ public static Recur getICalendarRecur(EventRecurrence recurrence, ZoneId zoneId)
* @param spaceService {@link SpaceService} service instance
* @param ownerId calendar owner {@link Identity} technical identifier
* @param username name of user accessing calendar data
- * @param readonly whether the access is to read or to write
- * @return true if user can modify calendar, else return false
* @throws IllegalAccessException when the user ACL fails
*/
- public static boolean checkAclByCalendarOwner(IdentityManager identityManager,
- SpaceService spaceService,
- long ownerId,
- String username,
- boolean readonly) throws IllegalAccessException {
+ public static void checkAclByCalendarOwner(IdentityManager identityManager,
+ SpaceService spaceService,
+ long ownerId,
+ String username) throws IllegalAccessException {
Identity requestedOwner = identityManager.getIdentity(String.valueOf(ownerId));
if (requestedOwner == null) {
throw new IllegalStateException("Calendar owner with id " + ownerId + " wasn't found");
- }
-
- if (StringUtils.equals(OrganizationIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ } else if (requestedOwner.isUser()) {
if (!StringUtils.equals(requestedOwner.getRemoteId(), username)) {
- throw new IllegalAccessException("User " + username + " is not allowed to retrieve calendar data of user "
- + requestedOwner.getRemoteId());
+ throw new IllegalAccessException("User " + username + " is not allowed to retrieve calendar data of user " +
+ requestedOwner.getRemoteId());
}
- return true;
- } else if (StringUtils.equals(SpaceIdentityProvider.NAME, requestedOwner.getProviderId())) {
- if (spaceService.isSuperManager(username)) {
- return true;
- } else {
- Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
- if (!spaceService.isMember(space, username)) {
- throw new IllegalAccessException("User " + username + " is not allowed to retrieve calendar data of space "
- + requestedOwner.getRemoteId());
- }
- boolean isManager = spaceService.isManager(space, username);
- if (!readonly && !isManager) {
- throw new IllegalAccessException("User " + username + " is not allowed to write calendar data of space "
- + space.getDisplayName());
- }
- return isManager;
+ } else if (requestedOwner.isSpace()) {
+ Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
+ if (!spaceService.canManageSpace(space, username)) {
+ throw new IllegalAccessException("User " + username + " is not allowed to write calendar data of space " +
+ space.getDisplayName());
}
} else {
- throw new IllegalStateException("Identity with provider type '" + requestedOwner.getProviderId()
- + "' is not managed in calendar owner field");
+ throw new IllegalStateException("Identity with provider type '" + requestedOwner.getProviderId() +
+ "' is not managed in calendar owner field");
}
}
@@ -349,23 +332,11 @@ public static boolean canCreateEvent(IdentityManager identityManager,
Identity userIdentity = identityManager.getIdentity(String.valueOf(userIdentityId));
if (userIdentity == null) {
throw new IllegalStateException("User with id " + userIdentity + " wasn't found");
- }
-
- if (StringUtils.equals(OrganizationIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ } else if (requestedOwner.isUser()) {
return userIdentityId == Long.parseLong(requestedOwner.getId());
- } else if (StringUtils.equals(SpaceIdentityProvider.NAME, requestedOwner.getProviderId())) {
- boolean superManager = spaceService.isSuperManager(userIdentity.getRemoteId());
+ } else if (requestedOwner.isSpace()) {
Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
- if (spaceService.isSuperManager(userIdentity.getRemoteId())) {
- return true;
- } else if (space == null) {
- return false;
- }
- boolean isManager = space != null && spaceService.isManager(space, userIdentity.getRemoteId());
- boolean isMember = space != null && spaceService.isMember(space, userIdentity.getRemoteId());
- boolean isRedactor = space != null && spaceService.isRedactor(space, userIdentity.getRemoteId());
- boolean spaceHasARedactor = space != null && space.getRedactors() != null && space.getRedactors().length > 0;
- return isMember && (!spaceHasARedactor || isRedactor || isManager);
+ return spaceService.canRedactOnSpace(space, userIdentity.getRemoteId());
} else {
return false;
}
@@ -386,9 +357,9 @@ public static boolean canInviteeEdit(IdentityManager identityManager,
return false;
}
- if (StringUtils.equals(OrganizationIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ if (requestedOwner.isUser()) {
return false;
- } else if (StringUtils.equals(SpaceIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ } else if (requestedOwner.isSpace()) {
Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
return space != null && (space.getRedactors() == null || space.getRedactors().length == 0);
} else {
@@ -417,15 +388,11 @@ public static boolean canEditCalendar(IdentityManager identityManager,
throw new IllegalStateException("User with id " + userIdentity + " wasn't found");
}
- if (StringUtils.equals(OrganizationIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ if (requestedOwner.isUser()) {
return userIdentityId == Long.parseLong(requestedOwner.getId());
- } else if (StringUtils.equals(SpaceIdentityProvider.NAME, requestedOwner.getProviderId())) {
- boolean superManager = spaceService.isSuperManager(userIdentity.getRemoteId());
+ } else if (requestedOwner.isSpace()) {
Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
- boolean isManager = space != null && spaceService.isManager(space, userIdentity.getRemoteId());
- boolean isRedactor = space != null && spaceService.isRedactor(space, userIdentity.getRemoteId());
- boolean spaceHasARedactor = space != null && space.getRedactors() != null && space.getRedactors().length > 0;
- return (spaceHasARedactor && isRedactor) || superManager || isManager;
+ return spaceService.canManageSpace(space, userIdentity.getRemoteId());
} else {
return false;
}
@@ -451,17 +418,11 @@ public static boolean canAccessCalendar(IdentityManager identityManager,
Identity userIdentity = identityManager.getIdentity(String.valueOf(userIdentityId));
if (userIdentity == null) {
throw new IllegalStateException("User with id " + userIdentity + " wasn't found");
- }
-
- if (StringUtils.equals(OrganizationIdentityProvider.NAME, requestedOwner.getProviderId())) {
+ } else if (requestedOwner.isUser()) {
return userIdentityId == Long.parseLong(requestedOwner.getId());
- } else if (StringUtils.equals(SpaceIdentityProvider.NAME, requestedOwner.getProviderId())) {
- if (spaceService.isSuperManager(userIdentity.getRemoteId())) {
- return true;
- } else {
- Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
- return space != null && spaceService.isMember(space, userIdentity.getRemoteId());
- }
+ } else if (requestedOwner.isSpace()) {
+ Space space = spaceService.getSpaceByPrettyName(requestedOwner.getRemoteId());
+ return spaceService.canViewSpace(space, userIdentity.getRemoteId());
} else {
return false;
}
@@ -511,25 +472,22 @@ public static boolean isEventAttendee(IdentityManager identityManager,
Identity userIdentity = identityManager.getIdentity(String.valueOf(identityId));
if (userIdentity == null) {
return false;
+ } else {
+ return eventAttendees != null
+ && eventAttendees.stream()
+ .anyMatch(eventAttendee -> {
+ if (identityId == eventAttendee.getIdentityId()) {
+ return true;
+ } else if (userIdentity.isUser()) {
+ Identity identity = identityManager.getIdentity(String.valueOf(eventAttendee.getIdentityId()));
+ if (identity.isSpace()) {
+ Space space = spaceService.getSpaceByPrettyName(identity.getRemoteId());
+ return spaceService.canViewSpace(space, userIdentity.getRemoteId());
+ }
+ }
+ return false;
+ });
}
-
- return eventAttendees != null
- && eventAttendees.stream().anyMatch(eventAttendee -> {
- if (identityId == eventAttendee.getIdentityId()) {
- return true;
- } else if (StringUtils.equals(userIdentity.getProviderId(), OrganizationIdentityProvider.NAME)) {
- Identity identity = identityManager.getIdentity(String.valueOf(eventAttendee.getIdentityId()));
- if (StringUtils.equals(identity.getProviderId(), SpaceIdentityProvider.NAME)) {
- if (spaceService.isSuperManager(userIdentity.getRemoteId())) {
- return true;
- } else {
- Space space = spaceService.getSpaceByPrettyName(identity.getRemoteId());
- return spaceService.isMember(space, userIdentity.getRemoteId());
- }
- }
- }
- return false;
- });
}
public static net.fortuna.ical4j.model.TimeZone getICalTimeZone(ZoneId zoneId) {
@@ -605,7 +563,7 @@ public static void detectEventModifiedFields(Event newEvent, Event oldEvent, Age
if (!newEvent.getTimeZoneId().equals(oldEvent.getTimeZoneId())) {
eventModification.addModificationType(AgendaEventModificationType.TIMEZONE_UPDATED);
}
- if (!ObjectUtils.equals(newEvent.getRecurrence(), oldEvent.getRecurrence())) {
+ if (!Objects.equals(newEvent.getRecurrence(), oldEvent.getRecurrence())) {
eventModification.addModificationType(AgendaEventModificationType.RECURRENCE_UPDATED);
}
}
diff --git a/agenda-services/src/main/resources/conf/portal/configuration.xml b/agenda-services/src/main/resources/conf/portal/configuration.xml
index 38d903cd5..d82428a8f 100644
--- a/agenda-services/src/main/resources/conf/portal/configuration.xml
+++ b/agenda-services/src/main/resources/conf/portal/configuration.xml
@@ -45,6 +45,49 @@
org.exoplatform.agenda.storage.AgendaEventDatePollStorage
+
+ org.exoplatform.agenda.notification.pwa.AgendaCreatedNotificationPwaPlugin
+
+
+ agenda.notification.plugin.key
+ EventAddedNotificationPlugin
+
+
+
+
+ org.exoplatform.agenda.notification.pwa.AgendaUpdatedNotificationPwaPlugin
+
+
+ agenda.notification.plugin.key
+ EventModifiedNotificationPlugin
+
+
+
+
+ org.exoplatform.agenda.notification.pwa.AgendaCancelledNotificationPwaPlugin
+
+
+ agenda.notification.plugin.key
+ EventCancelledNotificationPlugin
+
+
+
+
+
+ org.exoplatform.agenda.notification.pwa.DatePollNotificationPwaPlugin
+
+
+
+ org.exoplatform.agenda.notification.pwa.EventReminderNotificationPwaPlugin
+
+
+
+ org.exoplatform.agenda.notification.pwa.EventReplyNotificationPwaPlugin
+
+
+
+ org.exoplatform.agenda.notification.pwa.EventVoteNotificationPwaPlugin
+
org.exoplatform.agenda.service.AgendaCalendarService
org.exoplatform.agenda.service.AgendaCalendarServiceImpl
diff --git a/agenda-services/src/test/java/org/exoplatform/agenda/service/AgendaCalendarServiceTest.java b/agenda-services/src/test/java/org/exoplatform/agenda/service/AgendaCalendarServiceTest.java
index 3dd52fb6a..cfa322ac3 100644
--- a/agenda-services/src/test/java/org/exoplatform/agenda/service/AgendaCalendarServiceTest.java
+++ b/agenda-services/src/test/java/org/exoplatform/agenda/service/AgendaCalendarServiceTest.java
@@ -89,8 +89,7 @@ public void testGetCalendarById() {
null);
when(agendaCalendarStorage.getCalendarById(eq(calendarId))).thenReturn(calendar);
when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(username))).thenReturn(calendarOwnerIdentity);
// 0. Arguments validation tests
try {
@@ -187,8 +186,7 @@ public void testGetCalendarByIdAndUsername() throws Exception { // NOSONAR
null);
when(agendaCalendarStorage.getCalendarById(eq(calendarId))).thenReturn(calendar);
when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(username))).thenReturn(calendarOwnerIdentity);
// 0. Arguments validation tests
try {
@@ -233,14 +231,17 @@ public void testGetCalendarByIdAndUsername() throws Exception { // NOSONAR
// 4. When a member user is accessing space calendar, no error
// should be thrown and the ACL.canEdit should equal to false
- calendarOwnerIdentity.setProviderId(SpaceIdentityProvider.NAME);
String spacePrettyName = "spacetest";
- calendarOwnerIdentity.setRemoteId(spacePrettyName);
+ calendarOwnerIdentity = new Identity(SpaceIdentityProvider.NAME, spacePrettyName);
+ calendarOwnerIdentity.setId(String.valueOf(++calendarOwnerId));
+ calendar.setOwnerId(calendarOwnerId);
+ when(identityManager.getIdentity(calendarOwnerIdentity.getId())).thenReturn(calendarOwnerIdentity);
+
Space space = new Space();
when(spaceService.getSpaceByPrettyName(eq(spacePrettyName))).thenReturn(space);
// 4.1 when user is not member
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(false);
try {
agendaCalendarService.getCalendarById(calendarId, username);
fail("User shouldn't acces calendar of a space where he don't belong");
@@ -249,7 +250,7 @@ public void testGetCalendarByIdAndUsername() throws Exception { // NOSONAR
}
// 4.2 when user is member only of the space
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
retrievedCalendar = agendaCalendarService.getCalendarById(calendarId, username);
assertNotNull("User should be able to access his own calendar", retrievedCalendar);
@@ -262,23 +263,8 @@ public void testGetCalendarByIdAndUsername() throws Exception { // NOSONAR
assertEquals("Retrieved calendar should be the same as the retrieved from storage", calendar, retrievedCalendar);
// 4.3 when user is member and manager of the space
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(true);
- retrievedCalendar = agendaCalendarService.getCalendarById(calendarId, username);
- assertNotNull("User should be able to access his own calendar", retrievedCalendar);
-
- // check ACL
- assertNotNull("ACL of calendar should have been computed", retrievedCalendar.getAcl());
- assertTrue("User should be able to modify calendar", retrievedCalendar.getAcl().isCanEdit());
-
- // Check retrieved attributes
- retrievedCalendar.setAcl(null);
- assertEquals("Retrieved calendar should be the same as the retrieved from storage", calendar, retrievedCalendar);
-
- // 4.4 when user is super spaces manager but not member neither manager of
- // the space itself
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isSuperManager(eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canManageSpace(eq(space), eq(username))).thenReturn(true);
retrievedCalendar = agendaCalendarService.getCalendarById(calendarId, username);
assertNotNull("User should be able to access his own calendar", retrievedCalendar);
@@ -444,9 +430,8 @@ public Calendar answer(InvocationOnMock invocation) throws Throwable {
calendar.setOwnerId(calendarOwnerId);
}
- when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getIdentity(calendarOwnerIdentity.getId())).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(username)).thenReturn(calendarOwnerIdentity);
try {
calendarOwnerIdentity.setProviderId("NotManagerProviderByCalendarAPI");
@@ -471,14 +456,17 @@ public Calendar answer(InvocationOnMock invocation) throws Throwable {
// 3. Shouldn't be able to create calendar of space if user isn't manager or
// super manager
- calendarOwnerIdentity.setProviderId(SpaceIdentityProvider.NAME);
String spacePrettyName = "spacetest";
- calendarOwnerIdentity.setRemoteId(spacePrettyName);
+ calendarOwnerIdentity = new Identity(SpaceIdentityProvider.NAME, spacePrettyName);
+ calendarOwnerIdentity.setId(String.valueOf(++calendarOwnerId));
+ calendar.setOwnerId(calendarOwnerId);
+ when(identityManager.getIdentity(calendarOwnerIdentity.getId())).thenReturn(calendarOwnerIdentity);
+
Space space = new Space();
when(spaceService.getSpaceByPrettyName(eq(spacePrettyName))).thenReturn(space);
// 3.1 when user is not member
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(false);
try {
agendaCalendarService.createCalendar(calendar, username);
fail("User shouldn't be able to create space calendar");
@@ -486,7 +474,7 @@ public Calendar answer(InvocationOnMock invocation) throws Throwable {
// Expected
}
// 3.2 When user is member only
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
try {
agendaCalendarService.createCalendar(calendar, username);
fail("User shouldn't be able to create space calendar even when member");
@@ -494,7 +482,8 @@ public Calendar answer(InvocationOnMock invocation) throws Throwable {
// Expected
}
// 3.3 When user is manager of the space
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canManageSpace(eq(space), eq(username))).thenReturn(true);
createdCalendar = agendaCalendarService.createCalendar(calendar, username);
assertNotNull(createdCalendar);
assertEquals(calendarId, createdCalendar.getId());
@@ -503,14 +492,6 @@ public Calendar answer(InvocationOnMock invocation) throws Throwable {
createdCalendar.setCreated(null);
createdCalendar.setId(0);
assertEquals(calendar, createdCalendar);
- // 3.3 When user is super manager
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isSuperManager(eq(username))).thenReturn(true);
- createdCalendar = agendaCalendarService.createCalendar(calendar, username);
- assertNotNull(createdCalendar);
- assertEquals(calendarId, createdCalendar.getId());
- assertNotNull(createdCalendar.getCreated());
}
@Test
@@ -667,7 +648,7 @@ public Object answer(InvocationOnMock invocation) {
when(spaceService.getSpaceByPrettyName(eq(spacePrettyName))).thenReturn(space);
// 4.1 when user is not member
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(false);
try {
agendaCalendarService.updateCalendar(calendar, username);
fail("User shouldn't be able to update space calendar");
@@ -675,7 +656,7 @@ public Object answer(InvocationOnMock invocation) {
// Expected
}
// 4.2 When user is member only
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
try {
agendaCalendarService.updateCalendar(calendar, username);
fail("User shouldn't be able to update space calendar even when member");
@@ -683,15 +664,7 @@ public Object answer(InvocationOnMock invocation) {
// Expected
}
// 4.3 When user is manager of the space
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(true);
- calendar.setUpdated(null);
- agendaCalendarService.updateCalendar(calendar, username);
- assertNotNull(calendar.getUpdated());
-
- // 4.3 When user is super manager
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isSuperManager(eq(username))).thenReturn(true);
+ when(spaceService.canManageSpace(eq(space), eq(username))).thenReturn(true);
calendar.setUpdated(null);
agendaCalendarService.updateCalendar(calendar, username);
assertNotNull(calendar.getUpdated());
@@ -812,7 +785,7 @@ public void testDeleteCalendarByIdAndUsername() throws Exception { // NOSONAR
when(spaceService.getSpaceByPrettyName(eq(spacePrettyName))).thenReturn(space);
// 5.1 when user is not member
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(false);
try {
agendaCalendarService.deleteCalendarById(calendarId, username);
fail("User shouldn't be able to delete space calendar");
@@ -821,7 +794,7 @@ public void testDeleteCalendarByIdAndUsername() throws Exception { // NOSONAR
}
// 5.2 When user is member only
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(true);
try {
agendaCalendarService.deleteCalendarById(calendarId, username);
fail("User shouldn't be able to delete space calendar even when member");
@@ -830,14 +803,12 @@ public void testDeleteCalendarByIdAndUsername() throws Exception { // NOSONAR
}
// 5.3 When user is manager of the space
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(true);
+ when(spaceService.canManageSpace(eq(space), eq(username))).thenReturn(true);
agendaCalendarService.deleteCalendarById(calendarId, username);
verify(agendaCalendarStorage, times(2)).deleteCalendarById(eq(calendarId));
// 5.4 When user is super manager
- when(spaceService.isMember(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isManager(eq(space), eq(username))).thenReturn(false);
- when(spaceService.isSuperManager(eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(space), eq(username))).thenReturn(false);
agendaCalendarService.deleteCalendarById(calendarId, username);
verify(agendaCalendarStorage, times(3)).deleteCalendarById(eq(calendarId));
}
@@ -866,8 +837,7 @@ public void testGetCalendars() throws Exception { // NOSONAR
Identity calendarOwnerIdentity = new Identity(OrganizationIdentityProvider.NAME, username);
calendarOwnerIdentity.setId(String.valueOf(calendarOwnerId));
when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(username))).thenReturn(calendarOwnerIdentity);
when(spaceService.getMemberSpaces(eq(username))).thenAnswer(new Answer>() {
@Override
public ListAccess answer(InvocationOnMock invocation) throws Throwable {
@@ -896,7 +866,7 @@ public Space[] answer(InvocationOnMock invocation) throws Throwable {
eq(prettyName))).thenReturn(spaceIdentity);
when(identityManager.getIdentity(spaceIdentity.getId())).thenReturn(spaceIdentity);
when(spaceService.getSpaceByPrettyName(eq(prettyName))).thenReturn(spaces[i]);
- when(spaceService.isMember(eq(spaces[i]), eq(username))).thenReturn(true);
+ when(spaceService.canViewSpace(eq(spaces[i]), eq(username))).thenReturn(true);
}
return spaces;
}
@@ -974,8 +944,7 @@ public void testCountCalendars() throws Exception { // NOSONAR
Identity calendarOwnerIdentity = new Identity(OrganizationIdentityProvider.NAME, username);
calendarOwnerIdentity.setId(String.valueOf(calendarOwnerId));
when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(username))).thenReturn(calendarOwnerIdentity);
when(spaceService.getMemberSpaces(eq(username))).thenAnswer(new Answer>() {
@Override
public ListAccess answer(InvocationOnMock invocation) throws Throwable {
@@ -1040,16 +1009,14 @@ public void testGetCalendarsByOwnerIds() throws Exception { // NOSONAR
Identity calendarOwnerIdentity = new Identity(OrganizationIdentityProvider.NAME, username);
calendarOwnerIdentity.setId(String.valueOf(calendarOwnerId));
when(identityManager.getIdentity(eq(String.valueOf(calendarOwnerId)))).thenReturn(calendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(username))).thenReturn(calendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(username))).thenReturn(calendarOwnerIdentity);
long anotherCalendarOwnerId = 3;
String anotherUser = "username2";
Identity anotherCalendarOwnerIdentity = new Identity(OrganizationIdentityProvider.NAME, anotherUser);
anotherCalendarOwnerIdentity.setId(String.valueOf(anotherCalendarOwnerId));
when(identityManager.getIdentity(eq(String.valueOf(anotherCalendarOwnerId)))).thenReturn(anotherCalendarOwnerIdentity);
- when(identityManager.getOrCreateIdentity(eq(OrganizationIdentityProvider.NAME),
- eq(anotherUser))).thenReturn(anotherCalendarOwnerIdentity);
+ when(identityManager.getOrCreateUserIdentity(eq(anotherUser))).thenReturn(anotherCalendarOwnerIdentity);
// 3. Retrieve calendars with pagination
when(agendaCalendarStorage.getCalendarIdsByOwnerIds(anyInt(), anyInt(), anyVararg())).thenAnswer(new Answer>() {
diff --git a/agenda-webapps/package-lock.json b/agenda-webapps/package-lock.json
index c2515c68e..52fbef754 100644
--- a/agenda-webapps/package-lock.json
+++ b/agenda-webapps/package-lock.json
@@ -18,7 +18,7 @@
"vue": "^2.6.14",
"vue-loader": "^15.10.1",
"vue-template-compiler": "^2.6.14",
- "webpack": "^5.76.0",
+ "webpack": "^5.94.0",
"webpack-cli": "^4.9.2",
"webpack-merge": "^5.8.0"
}
@@ -38,13 +38,14 @@
}
},
"node_modules/@babel/code-frame": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
- "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
+ "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
"dev": true,
"peer": true,
"dependencies": {
- "@babel/highlight": "^7.18.6"
+ "@babel/highlight": "^7.24.7",
+ "picocolors": "^1.0.0"
},
"engines": {
"node": ">=6.9.0"
@@ -92,14 +93,15 @@
}
},
"node_modules/@babel/generator": {
- "version": "7.20.4",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz",
- "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz",
+ "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==",
"dev": true,
"peer": true,
"dependencies": {
- "@babel/types": "^7.20.2",
- "@jridgewell/gen-mapping": "^0.3.2",
+ "@babel/types": "^7.25.6",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
"jsesc": "^2.5.1"
},
"engines": {
@@ -107,15 +109,15 @@
}
},
"node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"peer": true,
"dependencies": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
},
"engines": {
"node": ">=6.0.0"
@@ -150,33 +152,6 @@
"node": ">=6.9.0"
}
},
- "node_modules/@babel/helper-function-name": {
- "version": "7.19.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
- "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "@babel/template": "^7.18.10",
- "@babel/types": "^7.19.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-hoist-variables": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
- "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "@babel/types": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
"node_modules/@babel/helper-module-imports": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
@@ -237,21 +212,19 @@
}
},
"node_modules/@babel/helper-string-parser": {
- "version": "7.19.4",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
- "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
+ "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
"dev": true,
- "peer": true,
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-identifier": {
- "version": "7.19.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
- "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
+ "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
"dev": true,
- "peer": true,
"engines": {
"node": ">=6.9.0"
}
@@ -282,25 +255,29 @@
}
},
"node_modules/@babel/highlight": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
- "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
+ "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
"dev": true,
"peer": true,
"dependencies": {
- "@babel/helper-validator-identifier": "^7.18.6",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "chalk": "^2.4.2",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/parser": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz",
- "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz",
+ "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==",
"dev": true,
+ "dependencies": {
+ "@babel/types": "^7.25.6"
+ },
"bin": {
"parser": "bin/babel-parser.js"
},
@@ -309,36 +286,33 @@
}
},
"node_modules/@babel/template": {
- "version": "7.18.10",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
- "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
+ "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
"dev": true,
"peer": true,
"dependencies": {
- "@babel/code-frame": "^7.18.6",
- "@babel/parser": "^7.18.10",
- "@babel/types": "^7.18.10"
+ "@babel/code-frame": "^7.24.7",
+ "@babel/parser": "^7.25.0",
+ "@babel/types": "^7.25.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/traverse": {
- "version": "7.20.1",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz",
- "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz",
+ "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==",
"dev": true,
"peer": true,
"dependencies": {
- "@babel/code-frame": "^7.18.6",
- "@babel/generator": "^7.20.1",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.19.0",
- "@babel/helper-hoist-variables": "^7.18.6",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/parser": "^7.20.1",
- "@babel/types": "^7.20.0",
- "debug": "^4.1.0",
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.6",
+ "@babel/parser": "^7.25.6",
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.6",
+ "debug": "^4.3.1",
"globals": "^11.1.0"
},
"engines": {
@@ -346,14 +320,13 @@
}
},
"node_modules/@babel/types": {
- "version": "7.20.2",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz",
- "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz",
+ "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==",
"dev": true,
- "peer": true,
"dependencies": {
- "@babel/helper-string-parser": "^7.19.4",
- "@babel/helper-validator-identifier": "^7.19.1",
+ "@babel/helper-string-parser": "^7.24.8",
+ "@babel/helper-validator-identifier": "^7.24.7",
"to-fast-properties": "^2.0.0"
},
"engines": {
@@ -464,33 +437,33 @@
}
},
"node_modules/@jridgewell/set-array": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
- "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true,
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@jridgewell/source-map": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz",
- "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==",
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
"dev": true,
"dependencies": {
- "@jridgewell/gen-mapping": "^0.3.0",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
}
},
"node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"dependencies": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
},
"engines": {
"node": ">=6.0.0"
@@ -503,13 +476,13 @@
"dev": true
},
"node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.17",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
- "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==",
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
"dependencies": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"node_modules/@nodelib/fs.scandir": {
@@ -557,20 +530,10 @@
"@types/json-schema": "*"
}
},
- "node_modules/@types/eslint-scope": {
- "version": "3.7.4",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz",
- "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==",
- "dev": true,
- "dependencies": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
"node_modules/@types/estree": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz",
- "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
+ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
"dev": true
},
"node_modules/@types/json-schema": {
@@ -639,148 +602,148 @@
}
},
"node_modules/@webassemblyjs/ast": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
- "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
+ "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
"dev": true,
"dependencies": {
- "@webassemblyjs/helper-numbers": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
+ "@webassemblyjs/helper-numbers": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
}
},
"node_modules/@webassemblyjs/floating-point-hex-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
- "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
+ "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
"dev": true
},
"node_modules/@webassemblyjs/helper-api-error": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
- "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
+ "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
"dev": true
},
"node_modules/@webassemblyjs/helper-buffer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
- "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
+ "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
"dev": true
},
"node_modules/@webassemblyjs/helper-numbers": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
- "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
+ "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
"dev": true,
"dependencies": {
- "@webassemblyjs/floating-point-hex-parser": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
+ "@webassemblyjs/floating-point-hex-parser": "1.11.6",
+ "@webassemblyjs/helper-api-error": "1.11.6",
"@xtuc/long": "4.2.2"
}
},
"node_modules/@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
- "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
+ "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
"dev": true
},
"node_modules/@webassemblyjs/helper-wasm-section": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
- "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
+ "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/wasm-gen": "1.12.1"
}
},
"node_modules/@webassemblyjs/ieee754": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
- "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
+ "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
"dev": true,
"dependencies": {
"@xtuc/ieee754": "^1.2.0"
}
},
"node_modules/@webassemblyjs/leb128": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
- "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
+ "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
"dev": true,
"dependencies": {
"@xtuc/long": "4.2.2"
}
},
"node_modules/@webassemblyjs/utf8": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
- "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
+ "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
"dev": true
},
"node_modules/@webassemblyjs/wasm-edit": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
- "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
+ "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/helper-wasm-section": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-opt": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "@webassemblyjs/wast-printer": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/helper-wasm-section": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-opt": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1",
+ "@webassemblyjs/wast-printer": "1.12.1"
}
},
"node_modules/@webassemblyjs/wasm-gen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
- "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
+ "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
"node_modules/@webassemblyjs/wasm-opt": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
- "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
+ "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1"
}
},
"node_modules/@webassemblyjs/wasm-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
- "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
+ "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
"node_modules/@webassemblyjs/wast-printer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
- "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
+ "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
"dev": true,
"dependencies": {
- "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/ast": "1.12.1",
"@xtuc/long": "4.2.2"
}
},
@@ -833,9 +796,9 @@
"dev": true
},
"node_modules/acorn": {
- "version": "8.8.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
- "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==",
+ "version": "8.12.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
+ "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
"dev": true,
"bin": {
"acorn": "bin/acorn"
@@ -844,10 +807,10 @@
"node": ">=0.4.0"
}
},
- "node_modules/acorn-import-assertions": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
- "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
+ "node_modules/acorn-import-attributes": {
+ "version": "1.9.5",
+ "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
+ "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==",
"dev": true,
"peerDependencies": {
"acorn": "^8"
@@ -1006,21 +969,21 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/browserslist": {
- "version": "4.21.4",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz",
- "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==",
+ "version": "4.23.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
+ "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
"dev": true,
"funding": [
{
@@ -1030,13 +993,17 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
- "caniuse-lite": "^1.0.30001400",
- "electron-to-chromium": "^1.4.251",
- "node-releases": "^2.0.6",
- "update-browserslist-db": "^1.0.9"
+ "caniuse-lite": "^1.0.30001646",
+ "electron-to-chromium": "^1.5.4",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.0"
},
"bin": {
"browserslist": "cli.js"
@@ -1074,9 +1041,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001434",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz",
- "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==",
+ "version": "1.0.30001655",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz",
+ "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==",
"dev": true,
"funding": [
{
@@ -1086,6 +1053,10 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
]
},
@@ -1369,9 +1340,9 @@
}
},
"node_modules/electron-to-chromium": {
- "version": "1.4.284",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz",
- "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==",
+ "version": "1.5.13",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz",
+ "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==",
"dev": true
},
"node_modules/emoji-regex": {
@@ -1390,9 +1361,9 @@
}
},
"node_modules/enhanced-resolve": {
- "version": "5.10.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz",
- "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==",
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz",
+ "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==",
"dev": true,
"dependencies": {
"graceful-fs": "^4.2.4",
@@ -1435,15 +1406,15 @@
}
},
"node_modules/es-module-lexer": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
- "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==",
+ "version": "1.5.4",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz",
+ "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==",
"dev": true
},
"node_modules/escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
"dev": true,
"engines": {
"node": ">=6"
@@ -2002,9 +1973,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
@@ -2181,9 +2152,9 @@
}
},
"node_modules/graceful-fs": {
- "version": "4.2.10",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
- "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"dev": true
},
"node_modules/grapheme-splitter": {
@@ -3003,9 +2974,9 @@
"dev": true
},
"node_modules/node-releases": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
- "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
"dev": true
},
"node_modules/normalize-path": {
@@ -3192,9 +3163,9 @@
"dev": true
},
"node_modules/picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz",
+ "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==",
"dev": true
},
"node_modules/picomatch": {
@@ -3642,9 +3613,9 @@
}
},
"node_modules/serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
"dev": true,
"dependencies": {
"randombytes": "^2.1.0"
@@ -3796,13 +3767,13 @@
}
},
"node_modules/terser": {
- "version": "5.15.1",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz",
- "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==",
+ "version": "5.31.6",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz",
+ "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==",
"dev": true,
"dependencies": {
- "@jridgewell/source-map": "^0.3.2",
- "acorn": "^8.5.0",
+ "@jridgewell/source-map": "^0.3.3",
+ "acorn": "^8.8.2",
"commander": "^2.20.0",
"source-map-support": "~0.5.20"
},
@@ -3814,16 +3785,16 @@
}
},
"node_modules/terser-webpack-plugin": {
- "version": "5.3.6",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz",
- "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==",
+ "version": "5.3.10",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz",
+ "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==",
"dev": true,
"dependencies": {
- "@jridgewell/trace-mapping": "^0.3.14",
+ "@jridgewell/trace-mapping": "^0.3.20",
"jest-worker": "^27.4.5",
"schema-utils": "^3.1.1",
- "serialize-javascript": "^6.0.0",
- "terser": "^5.14.1"
+ "serialize-javascript": "^6.0.1",
+ "terser": "^5.26.0"
},
"engines": {
"node": ">= 10.13.0"
@@ -3871,9 +3842,9 @@
}
},
"node_modules/terser-webpack-plugin/node_modules/schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"dependencies": {
"@types/json-schema": "^7.0.8",
@@ -3914,7 +3885,6 @@
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
"integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
"dev": true,
- "peer": true,
"engines": {
"node": ">=4"
}
@@ -3956,9 +3926,9 @@
}
},
"node_modules/update-browserslist-db": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
- "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
+ "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
"dev": true,
"funding": [
{
@@ -3968,14 +3938,18 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
+ "escalade": "^3.1.2",
+ "picocolors": "^1.0.1"
},
"bin": {
- "browserslist-lint": "cli.js"
+ "update-browserslist-db": "cli.js"
},
"peerDependencies": {
"browserslist": ">= 4.21.0"
@@ -4173,9 +4147,9 @@
"dev": true
},
"node_modules/watchpack": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
- "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz",
+ "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
"dev": true,
"dependencies": {
"glob-to-regexp": "^0.4.1",
@@ -4186,34 +4160,33 @@
}
},
"node_modules/webpack": {
- "version": "5.76.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.0.tgz",
- "integrity": "sha512-l5sOdYBDunyf72HW8dF23rFtWq/7Zgvt/9ftMof71E/yUb1YLOBmTgA2K4vQthB3kotMrSj609txVE0dnr2fjA==",
+ "version": "5.94.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz",
+ "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==",
"dev": true,
"dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^0.0.51",
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/wasm-edit": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
+ "@types/estree": "^1.0.5",
+ "@webassemblyjs/ast": "^1.12.1",
+ "@webassemblyjs/wasm-edit": "^1.12.1",
+ "@webassemblyjs/wasm-parser": "^1.12.1",
"acorn": "^8.7.1",
- "acorn-import-assertions": "^1.7.6",
- "browserslist": "^4.14.5",
+ "acorn-import-attributes": "^1.9.5",
+ "browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.10.0",
- "es-module-lexer": "^0.9.0",
+ "enhanced-resolve": "^5.17.1",
+ "es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
"glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
+ "graceful-fs": "^4.2.11",
"json-parse-even-better-errors": "^2.3.1",
"loader-runner": "^4.2.0",
"mime-types": "^2.1.27",
"neo-async": "^2.6.2",
- "schema-utils": "^3.1.0",
+ "schema-utils": "^3.2.0",
"tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.4.0",
+ "terser-webpack-plugin": "^5.3.10",
+ "watchpack": "^2.4.1",
"webpack-sources": "^3.2.3"
},
"bin": {
@@ -4310,12 +4283,6 @@
"node": ">=10.13.0"
}
},
- "node_modules/webpack/node_modules/@types/estree": {
- "version": "0.0.51",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz",
- "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==",
- "dev": true
- },
"node_modules/webpack/node_modules/eslint-scope": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
@@ -4339,9 +4306,9 @@
}
},
"node_modules/webpack/node_modules/schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"dependencies": {
"@types/json-schema": "^7.0.8",
@@ -4475,13 +4442,14 @@
}
},
"@babel/code-frame": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
- "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
+ "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
"dev": true,
"peer": true,
"requires": {
- "@babel/highlight": "^7.18.6"
+ "@babel/highlight": "^7.24.7",
+ "picocolors": "^1.0.0"
}
},
"@babel/compat-data": {
@@ -4516,27 +4484,28 @@
}
},
"@babel/generator": {
- "version": "7.20.4",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz",
- "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz",
+ "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==",
"dev": true,
"peer": true,
"requires": {
- "@babel/types": "^7.20.2",
- "@jridgewell/gen-mapping": "^0.3.2",
+ "@babel/types": "^7.25.6",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
"jsesc": "^2.5.1"
},
"dependencies": {
"@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"peer": true,
"requires": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
}
}
}
@@ -4561,27 +4530,6 @@
"dev": true,
"peer": true
},
- "@babel/helper-function-name": {
- "version": "7.19.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
- "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
- "dev": true,
- "peer": true,
- "requires": {
- "@babel/template": "^7.18.10",
- "@babel/types": "^7.19.0"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
- "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
- "dev": true,
- "peer": true,
- "requires": {
- "@babel/types": "^7.18.6"
- }
- },
"@babel/helper-module-imports": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
@@ -4630,18 +4578,16 @@
}
},
"@babel/helper-string-parser": {
- "version": "7.19.4",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
- "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
- "dev": true,
- "peer": true
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
+ "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
+ "dev": true
},
"@babel/helper-validator-identifier": {
- "version": "7.19.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
- "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
- "dev": true,
- "peer": true
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
+ "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
+ "dev": true
},
"@babel/helper-validator-option": {
"version": "7.18.6",
@@ -4663,63 +4609,63 @@
}
},
"@babel/highlight": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
- "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
+ "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
"dev": true,
"peer": true,
"requires": {
- "@babel/helper-validator-identifier": "^7.18.6",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "chalk": "^2.4.2",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
}
},
"@babel/parser": {
- "version": "7.20.3",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz",
- "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==",
- "dev": true
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz",
+ "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==",
+ "dev": true,
+ "requires": {
+ "@babel/types": "^7.25.6"
+ }
},
"@babel/template": {
- "version": "7.18.10",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
- "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
+ "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
"dev": true,
"peer": true,
"requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/parser": "^7.18.10",
- "@babel/types": "^7.18.10"
+ "@babel/code-frame": "^7.24.7",
+ "@babel/parser": "^7.25.0",
+ "@babel/types": "^7.25.0"
}
},
"@babel/traverse": {
- "version": "7.20.1",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz",
- "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz",
+ "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==",
"dev": true,
"peer": true,
"requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/generator": "^7.20.1",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.19.0",
- "@babel/helper-hoist-variables": "^7.18.6",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/parser": "^7.20.1",
- "@babel/types": "^7.20.0",
- "debug": "^4.1.0",
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.6",
+ "@babel/parser": "^7.25.6",
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.6",
+ "debug": "^4.3.1",
"globals": "^11.1.0"
}
},
"@babel/types": {
- "version": "7.20.2",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz",
- "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==",
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz",
+ "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==",
"dev": true,
- "peer": true,
"requires": {
- "@babel/helper-string-parser": "^7.19.4",
- "@babel/helper-validator-identifier": "^7.19.1",
+ "@babel/helper-string-parser": "^7.24.8",
+ "@babel/helper-validator-identifier": "^7.24.7",
"to-fast-properties": "^2.0.0"
}
},
@@ -4798,30 +4744,30 @@
"dev": true
},
"@jridgewell/set-array": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
- "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true
},
"@jridgewell/source-map": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz",
- "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==",
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
"dev": true,
"requires": {
- "@jridgewell/gen-mapping": "^0.3.0",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
},
"dependencies": {
"@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"requires": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
}
}
}
@@ -4833,13 +4779,13 @@
"dev": true
},
"@jridgewell/trace-mapping": {
- "version": "0.3.17",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
- "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==",
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
"requires": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"@nodelib/fs.scandir": {
@@ -4878,20 +4824,10 @@
"@types/json-schema": "*"
}
},
- "@types/eslint-scope": {
- "version": "3.7.4",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz",
- "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==",
- "dev": true,
- "requires": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
"@types/estree": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz",
- "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
+ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
"dev": true
},
"@types/json-schema": {
@@ -4953,148 +4889,148 @@
}
},
"@webassemblyjs/ast": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz",
- "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
+ "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
"dev": true,
"requires": {
- "@webassemblyjs/helper-numbers": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1"
+ "@webassemblyjs/helper-numbers": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
}
},
"@webassemblyjs/floating-point-hex-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz",
- "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
+ "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
"dev": true
},
"@webassemblyjs/helper-api-error": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz",
- "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
+ "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
"dev": true
},
"@webassemblyjs/helper-buffer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz",
- "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
+ "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
"dev": true
},
"@webassemblyjs/helper-numbers": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz",
- "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
+ "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
"dev": true,
"requires": {
- "@webassemblyjs/floating-point-hex-parser": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
+ "@webassemblyjs/floating-point-hex-parser": "1.11.6",
+ "@webassemblyjs/helper-api-error": "1.11.6",
"@xtuc/long": "4.2.2"
}
},
"@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz",
- "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
+ "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
"dev": true
},
"@webassemblyjs/helper-wasm-section": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz",
- "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
+ "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/wasm-gen": "1.12.1"
}
},
"@webassemblyjs/ieee754": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz",
- "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
+ "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
"dev": true,
"requires": {
"@xtuc/ieee754": "^1.2.0"
}
},
"@webassemblyjs/leb128": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz",
- "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
+ "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
"dev": true,
"requires": {
"@xtuc/long": "4.2.2"
}
},
"@webassemblyjs/utf8": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz",
- "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==",
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
+ "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
"dev": true
},
"@webassemblyjs/wasm-edit": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz",
- "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
+ "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/helper-wasm-section": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-opt": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
- "@webassemblyjs/wast-printer": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/helper-wasm-section": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-opt": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1",
+ "@webassemblyjs/wast-printer": "1.12.1"
}
},
"@webassemblyjs/wasm-gen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz",
- "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
+ "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
"@webassemblyjs/wasm-opt": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz",
- "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
+ "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-buffer": "1.11.1",
- "@webassemblyjs/wasm-gen": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1"
}
},
"@webassemblyjs/wasm-parser": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz",
- "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
+ "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/helper-api-error": "1.11.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.1",
- "@webassemblyjs/ieee754": "1.11.1",
- "@webassemblyjs/leb128": "1.11.1",
- "@webassemblyjs/utf8": "1.11.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
"@webassemblyjs/wast-printer": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz",
- "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
+ "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.11.1",
+ "@webassemblyjs/ast": "1.12.1",
"@xtuc/long": "4.2.2"
}
},
@@ -5134,15 +5070,15 @@
"dev": true
},
"acorn": {
- "version": "8.8.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
- "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==",
+ "version": "8.12.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
+ "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
"dev": true
},
- "acorn-import-assertions": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz",
- "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
+ "acorn-import-attributes": {
+ "version": "1.9.5",
+ "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
+ "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==",
"dev": true,
"requires": {}
},
@@ -5266,24 +5202,24 @@
}
},
"braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"requires": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
}
},
"browserslist": {
- "version": "4.21.4",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz",
- "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==",
+ "version": "4.23.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
+ "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
"dev": true,
"requires": {
- "caniuse-lite": "^1.0.30001400",
- "electron-to-chromium": "^1.4.251",
- "node-releases": "^2.0.6",
- "update-browserslist-db": "^1.0.9"
+ "caniuse-lite": "^1.0.30001646",
+ "electron-to-chromium": "^1.5.4",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.0"
}
},
"buffer-from": {
@@ -5309,9 +5245,9 @@
"dev": true
},
"caniuse-lite": {
- "version": "1.0.30001434",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz",
- "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==",
+ "version": "1.0.30001655",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz",
+ "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==",
"dev": true
},
"chalk": {
@@ -5536,9 +5472,9 @@
}
},
"electron-to-chromium": {
- "version": "1.4.284",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz",
- "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==",
+ "version": "1.5.13",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz",
+ "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==",
"dev": true
},
"emoji-regex": {
@@ -5554,9 +5490,9 @@
"dev": true
},
"enhanced-resolve": {
- "version": "5.10.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz",
- "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==",
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz",
+ "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==",
"dev": true,
"requires": {
"graceful-fs": "^4.2.4",
@@ -5587,15 +5523,15 @@
}
},
"es-module-lexer": {
- "version": "0.9.3",
- "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
- "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==",
+ "version": "1.5.4",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz",
+ "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==",
"dev": true
},
"escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
"dev": true
},
"escape-string-regexp": {
@@ -5879,7 +5815,9 @@
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
"integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
"dev": true,
- "requires": {}
+ "requires": {
+ "ajv": "^8.0.0"
+ }
},
"ajv-keywords": {
"version": "5.1.0",
@@ -6000,9 +5938,9 @@
}
},
"fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"requires": {
"to-regex-range": "^5.0.1"
@@ -6137,9 +6075,9 @@
}
},
"graceful-fs": {
- "version": "4.2.10",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
- "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"dev": true
},
"grapheme-splitter": {
@@ -6724,9 +6662,9 @@
"dev": true
},
"node-releases": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
- "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
"dev": true
},
"normalize-path": {
@@ -6859,9 +6797,9 @@
"dev": true
},
"picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz",
+ "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==",
"dev": true
},
"picomatch": {
@@ -7140,9 +7078,9 @@
"dev": true
},
"serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
"dev": true,
"requires": {
"randombytes": "^2.1.0"
@@ -7252,28 +7190,28 @@
"dev": true
},
"terser": {
- "version": "5.15.1",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz",
- "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==",
+ "version": "5.31.6",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz",
+ "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==",
"dev": true,
"requires": {
- "@jridgewell/source-map": "^0.3.2",
- "acorn": "^8.5.0",
+ "@jridgewell/source-map": "^0.3.3",
+ "acorn": "^8.8.2",
"commander": "^2.20.0",
"source-map-support": "~0.5.20"
}
},
"terser-webpack-plugin": {
- "version": "5.3.6",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz",
- "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==",
+ "version": "5.3.10",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz",
+ "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==",
"dev": true,
"requires": {
- "@jridgewell/trace-mapping": "^0.3.14",
+ "@jridgewell/trace-mapping": "^0.3.20",
"jest-worker": "^27.4.5",
"schema-utils": "^3.1.1",
- "serialize-javascript": "^6.0.0",
- "terser": "^5.14.1"
+ "serialize-javascript": "^6.0.1",
+ "terser": "^5.26.0"
},
"dependencies": {
"has-flag": {
@@ -7294,9 +7232,9 @@
}
},
"schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.8",
@@ -7325,8 +7263,7 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
"integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
- "dev": true,
- "peer": true
+ "dev": true
},
"to-regex-range": {
"version": "5.0.1",
@@ -7353,13 +7290,13 @@
"dev": true
},
"update-browserslist-db": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
- "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
+ "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
"dev": true,
"requires": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
+ "escalade": "^3.1.2",
+ "picocolors": "^1.0.1"
}
},
"uri-js": {
@@ -7518,9 +7455,9 @@
"dev": true
},
"watchpack": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
- "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz",
+ "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
"dev": true,
"requires": {
"glob-to-regexp": "^0.4.1",
@@ -7528,43 +7465,36 @@
}
},
"webpack": {
- "version": "5.76.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.0.tgz",
- "integrity": "sha512-l5sOdYBDunyf72HW8dF23rFtWq/7Zgvt/9ftMof71E/yUb1YLOBmTgA2K4vQthB3kotMrSj609txVE0dnr2fjA==",
+ "version": "5.94.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz",
+ "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^0.0.51",
- "@webassemblyjs/ast": "1.11.1",
- "@webassemblyjs/wasm-edit": "1.11.1",
- "@webassemblyjs/wasm-parser": "1.11.1",
+ "@types/estree": "^1.0.5",
+ "@webassemblyjs/ast": "^1.12.1",
+ "@webassemblyjs/wasm-edit": "^1.12.1",
+ "@webassemblyjs/wasm-parser": "^1.12.1",
"acorn": "^8.7.1",
- "acorn-import-assertions": "^1.7.6",
- "browserslist": "^4.14.5",
+ "acorn-import-attributes": "^1.9.5",
+ "browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.10.0",
- "es-module-lexer": "^0.9.0",
+ "enhanced-resolve": "^5.17.1",
+ "es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
"glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
+ "graceful-fs": "^4.2.11",
"json-parse-even-better-errors": "^2.3.1",
"loader-runner": "^4.2.0",
"mime-types": "^2.1.27",
"neo-async": "^2.6.2",
- "schema-utils": "^3.1.0",
+ "schema-utils": "^3.2.0",
"tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.4.0",
+ "terser-webpack-plugin": "^5.3.10",
+ "watchpack": "^2.4.1",
"webpack-sources": "^3.2.3"
},
"dependencies": {
- "@types/estree": {
- "version": "0.0.51",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz",
- "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==",
- "dev": true
- },
"eslint-scope": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
@@ -7582,9 +7512,9 @@
"dev": true
},
"schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.8",
diff --git a/agenda-webapps/package.json b/agenda-webapps/package.json
index 213000a58..b08ce963d 100644
--- a/agenda-webapps/package.json
+++ b/agenda-webapps/package.json
@@ -24,7 +24,7 @@
"vue": "^2.6.14",
"vue-loader": "^15.10.1",
"vue-template-compiler": "^2.6.14",
- "webpack": "^5.76.0",
+ "webpack": "^5.94.0",
"webpack-cli": "^4.9.2",
"webpack-merge": "^5.8.0"
}
diff --git a/agenda-webapps/src/main/resources/locale/addon/Gamification_sq.properties b/agenda-webapps/src/main/resources/locale/addon/Gamification_sq.properties
index 68f539e4f..402ca75bf 100644
--- a/agenda-webapps/src/main/resources/locale/addon/Gamification_sq.properties
+++ b/agenda-webapps/src/main/resources/locale/addon/Gamification_sq.properties
@@ -1,5 +1,10 @@
gamification.event.title.CreateEvent=crwdns7096663:0crwdne7096663:0
+gamification.event.description.CreateEvent=crwdns7101314:0crwdne7101314:0
gamification.event.title.UpdateEvent=crwdns7096665:0crwdne7096665:0
+gamification.event.description.UpdateEvent=crwdns7101316:0crwdne7101316:0
gamification.event.title.ReplyToEvent=crwdns7096667:0crwdne7096667:0
+gamification.event.description.ReplyToEvent=crwdns7101318:0crwdne7101318:0
gamification.event.title.CreateDatePoll=crwdns7096669:0crwdne7096669:0
+gamification.event.description.CreateDatePoll=crwdns7101320:0crwdne7101320:0
gamification.event.title.VoteDatePoll=crwdns7096671:0crwdne7096671:0
+gamification.event.description.VoteDatePoll=crwdns7101322:0crwdne7101322:0
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ar.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ar.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ar.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_aro.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_aro.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_aro.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_az.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_az.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_az.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ca.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ca.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ca.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ceb.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ceb.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ceb.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_co.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_co.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_co.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_cs.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_cs.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_cs.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_de.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_de.properties
new file mode 100644
index 000000000..83a041c4c
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_de.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=Sie haben eine Einladung erhalten:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=Ein Termin wurde aktualisiert:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Die Zeit f\u00fcr die Veranstaltung wurde aktualisiert. Bitte nehmen Sie sich die Zeit, um erneut zu antworten:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=\ Eine Terminumfrage wurde erstellt. Bitte nehmen Sie sich die Zeit zur Abstimmung.:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Ein Termin wurde mittels der Terminumfrage erstellt. Bitte nehmen Sie sich die Zeit, um zu antworten. :
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=Dieser Termin wurde abgesagt:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Eine Terminumfrage wurde aktualisiert. Bitte nehmen Sie sich die Zeit, um erneut abzustimmen. :
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Die Datumsumfrage wurde aktualisiert. Bitte nehmen Sie sich die Zeit, um erneut abzustimmen. :
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} hat Sie eingeladen, ein Datum f\u00fcr das folgende Ereignis auszuw\u00e4hlen:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Ereigniserinnerung im Raum {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} hat Ihre Einladung angenommen:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} hat Ihre Einladung abgelehnt:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} hat auf Ihre Einladung zum Event {1} mit "vielleicht" geantwortet
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} hat Ihre Einladung angenommen:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} hat Ihre Einladung abgelehnt:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} hat auf die Einladung {1} mit "vielleicht" geantwortet
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} hat f\u00fcr das folgende Ereignis abgestimmt:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_el.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_el.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_el.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_en.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_en.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_en.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_es_ES.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_es_ES.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_es_ES.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_eu.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_eu.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_eu.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_fa.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_fa.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_fa.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_fi.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_fi.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_fi.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_fil.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_fil.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_fil.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_fr.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_fr.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_fr.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_hi.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_hi.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_hi.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_hu.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_hu.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_hu.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_id.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_id.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_id.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_it.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_it.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_it.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ja.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ja.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ja.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ko.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ko.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ko.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_lt.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_lt.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_lt.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ms.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ms.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ms.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_nl.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_nl.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_nl.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_no.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_no.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_no.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_pcm.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_pcm.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_pcm.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_pl.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_pl.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_pl.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_pt_BR.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_pt_BR.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_pt_BR.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_pt_PT.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_pt_PT.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_pt_PT.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ro.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ro.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ro.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ru.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ru.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ru.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_sk.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_sk.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_sk.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_sl.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_sl.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_sl.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_sq.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_sq.properties
new file mode 100644
index 000000000..f417cd908
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_sq.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=crwdns7166226:0crwdne7166226:0
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=crwdns7166228:0crwdne7166228:0
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=crwdns7166230:0crwdne7166230:0
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=crwdns7166232:0crwdne7166232:0
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=crwdns7166234:0crwdne7166234:0
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=crwdns7166236:0crwdne7166236:0
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=crwdns7166238:0crwdne7166238:0
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=crwdns7166240:0crwdne7166240:0
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title=crwdns7166242:0{0}crwdne7166242:0
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=crwdns7166244:0{0}crwdne7166244:0
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted=crwdns7166246:0{0}crwdne7166246:0
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined=crwdns7166248:0{0}crwdne7166248:0
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe=crwdns7166250:0{0}crwdne7166250:0
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted=crwdns7166252:0{0}crwdne7166252:0
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined=crwdns7166254:0{0}crwdne7166254:0
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe=crwdns7166256:0{0}crwdne7166256:0
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title=crwdns7166258:0{0}crwdne7166258:0
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_sv_SE.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_sv_SE.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_sv_SE.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_th.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_th.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_th.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_tl.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_tl.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_tl.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_tr.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_tr.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_tr.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_uk.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_uk.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_uk.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_ur_IN.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_ur_IN.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_ur_IN.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_vi.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_vi.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_vi.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_zh_CN.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_zh_CN.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_zh_CN.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/commons/Commons_zh_TW.properties b/agenda-webapps/src/main/resources/locale/commons/Commons_zh_TW.properties
new file mode 100644
index 000000000..137307fa8
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/commons/Commons_zh_TW.properties
@@ -0,0 +1,26 @@
+pwa.notification.AgendaNotificationPwaPlugin.title.created=You are invited to participate to:
+pwa.notification.AgendaNotificationPwaPlugin.title.updated=An event has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.dates.updated=Please take the time to answer again : the time has been updated for the event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToDatePoll=Please take the time to vote. A date poll has been created from event:
+pwa.notification.AgendaNotificationPwaPlugin.title.switchedToEvent=Please take the time to answer. An event has been created from the date poll:
+pwa.notification.AgendaNotificationPwaPlugin.title.canceled=An event has been canceled:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.updated=Please take the time to vote again. A date poll has been updated:
+pwa.notification.AgendaNotificationPwaPlugin.title.datePoll.dates.updated=Date poll has been updated. Please take the time to vote again.
+
+
+pwa.notification.DatePollNotificationPwaPlugin.title={0} invited you to choose a date for the following event:
+
+pwa.notification.EventReminderNotificationPwaPlugin.title=Event reminder in space {0}:
+
+
+
+
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.accepted={0} has accepted your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.declined={0} has declined your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.creator.response.mayBe={0} has replied "Maybe" to your invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.accepted={0} has accepted the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.declined={0} has declined the invitation to the event:
+pwa.notification.EventReplyNotificationPwaPlugin.title.participant.response.mayBe={0} has replied "Maybe" to the invitation to the event:
+
+
+pwa.notification.EventVoteNotificationPwaPlugin.title={0} voted for a date for the following event:
diff --git a/agenda-webapps/src/main/resources/locale/portlet/Agenda_de.properties b/agenda-webapps/src/main/resources/locale/portlet/Agenda_de.properties
index 5f2ffd4b9..81a6bd086 100644
--- a/agenda-webapps/src/main/resources/locale/portlet/Agenda_de.properties
+++ b/agenda-webapps/src/main/resources/locale/portlet/Agenda_de.properties
@@ -158,7 +158,7 @@ agenda.deleteEventConference=Konferenz l\u00f6schen
agenda.createEventConference=Konferenz erstellen
agenda.webConferenceScheduled=Webkonferenz geplant
agenda.webConferenceURL=Geben Sie einen Link zum Aufruf des Events ein
-agenda.webConferenceURL.warning=To avoid any video conference conflicts, we recommend to create a different link on your external video conference software.
+agenda.webConferenceURL.warning=Um Videokonferenzkonflikte zu vermeiden, empfehlen wir Ihnen, einen anderen Link zu Ihrer externen Videokonferenz-Software zu erstellen.
agenda.emptyWebConferenceProvider=Kein Webkonferenz-Anbieter
agenda.webConferencingProviderSaved=Webkonferenz-Anbieter gespeichert.
agenda.connectoInitializationFailed=Initialisierung des pers\u00f6nlichen Kalender-Connectors fehlgeschlagen
diff --git a/agenda-webapps/src/main/resources/locale/portlet/Agenda_sq.properties b/agenda-webapps/src/main/resources/locale/portlet/Agenda_sq.properties
index 5129164de..ef5f3ff90 100644
--- a/agenda-webapps/src/main/resources/locale/portlet/Agenda_sq.properties
+++ b/agenda-webapps/src/main/resources/locale/portlet/Agenda_sq.properties
@@ -158,6 +158,7 @@ agenda.deleteEventConference=crwdns6967056:0crwdne6967056:0
agenda.createEventConference=crwdns6967058:0crwdne6967058:0
agenda.webConferenceScheduled=crwdns6967060:0crwdne6967060:0
agenda.webConferenceURL=crwdns6967138:0crwdne6967138:0
+agenda.webConferenceURL.warning=crwdns7164750:0crwdne7164750:0
agenda.emptyWebConferenceProvider=crwdns6967062:0crwdne6967062:0
agenda.webConferencingProviderSaved=crwdns6967064:0crwdne6967064:0
agenda.connectoInitializationFailed=crwdns6967066:0crwdne6967066:0
diff --git a/agenda-webapps/src/main/resources/locale/portlet/LayoutEditor_sq.properties b/agenda-webapps/src/main/resources/locale/portlet/LayoutEditor_sq.properties
new file mode 100644
index 000000000..217eb8269
--- /dev/null
+++ b/agenda-webapps/src/main/resources/locale/portlet/LayoutEditor_sq.properties
@@ -0,0 +1,4 @@
+layout.portletInstance.Agenda.name=crwdns7161730:0crwdne7161730:0
+layout.portletInstance.Agenda.description=crwdns7161732:0crwdne7161732:0
+layout.portletInstance.AgendaTimeline.name=crwdns7161734:0crwdne7161734:0
+layout.portletInstance.AgendaTimeline.description=crwdns7161736:0crwdne7161736:0
diff --git a/agenda-webapps/src/main/webapp/vue-app/agenda-common/components/event/form/AgendaEventQuickFormDrawer.vue b/agenda-webapps/src/main/webapp/vue-app/agenda-common/components/event/form/AgendaEventQuickFormDrawer.vue
index dbcb57506..ab8c44869 100644
--- a/agenda-webapps/src/main/webapp/vue-app/agenda-common/components/event/form/AgendaEventQuickFormDrawer.vue
+++ b/agenda-webapps/src/main/webapp/vue-app/agenda-common/components/event/form/AgendaEventQuickFormDrawer.vue
@@ -183,8 +183,6 @@ export default {
}
},
created() {
-
- console.log('providers',this.conferenceProvider);
this.$root.$on('agenda-event-quick-form', event => {
this.event = null;
this.$nextTick().then(() => {
diff --git a/crowdin.yml b/crowdin.yml
index 268aabfde..00fab0065 100644
--- a/crowdin.yml
+++ b/crowdin.yml
@@ -15,6 +15,24 @@
# Files configuration
#
files: [
+ {
+ "source": "/agenda-webapps/src/main/resources/locale/commons/Commons_en.properties",
+
+ "translation": "%original_path%/%file_name%!_%locale_with_underscore%.%file_extension%",
+ "translation_replace": {
+ "_en!": "","ar_SA": "ar","ar_OM": "aro","az_AZ": "az","ca_ES": "ca","ceb_PH": "ceb",
+ "co_FR": "co","cs_CZ": "cs","de_DE": "de","el_GR": "el","en_US": "en","es_ES": "es_ES","eu_ES": "eu","fa_IR": "fa",
+ "fi_FI": "fi","fil_PH": "fil","fr_FR": "fr","hi_IN": "hi","hu_HU": "hu","id_ID": "id","it_IT": "it","ja_JP": "ja",
+ "kab_KAB": "kab","ko_KR": "ko","lt_LT": "lt","ms_MY": "ms","nl_NL": "nl","no_NO": "no","pcm_NG": "pcm","pl_PL": "pl",
+ "pt_BR": "pt_BR","pt_PT": "pt_PT","ro_RO": "ro","ru_RU": "ru","sk_SK": "sk","sl_SI": "sl","sq_AL": "sq",
+ "sv_SE": "sv_SE","th_TH": "th","tl_PH": "tl","tr_TR": "tr","uk_UA": "uk","ur_IN": "ur_IN","vi_VN": "vi",
+ "zh_CN": "zh_CN","zh_TW": "zh_TW",
+ },
+ "dest": "add__ons/agenda/Commons.properties",
+ "update_option": "update_as_unapproved",
+ "escape_special_characters": 0,
+ "escape_quotes": 0,
+ },
{
"source" : "/agenda-webapps/src/main/resources/locale/navigation/portal/global_en.properties",
@@ -159,4 +177,4 @@ files: [
"escape_special_characters": 0,
"escape_quotes" : 0,
},
-]
\ No newline at end of file
+]