Package updates and firebase refactor to SDK 9.

This commit is contained in:
Patrick Fic
2021-08-30 15:09:11 -07:00
parent 529eb24d76
commit 81daad35d8
9 changed files with 965 additions and 725 deletions

View File

@@ -4,84 +4,84 @@
"private": true, "private": true,
"proxy": "http://localhost:5000", "proxy": "http://localhost:5000",
"dependencies": { "dependencies": {
"@apollo/client": "^3.3.21", "@apollo/client": "^3.4.10",
"@craco/craco": "^6.2.0", "@craco/craco": "^6.2.0",
"@fingerprintjs/fingerprintjs": "^3.2.0", "@fingerprintjs/fingerprintjs": "^3.3.0",
"@lourenci/react-kanban": "^2.1.0", "@lourenci/react-kanban": "^2.1.0",
"@openreplay/tracker": "^3.2.1", "@openreplay/tracker": "^3.2.5",
"@openreplay/tracker-assist": "^3.0.3", "@openreplay/tracker-assist": "^3.0.4",
"@openreplay/tracker-graphql": "^3.0.0", "@openreplay/tracker-graphql": "^3.0.0",
"@openreplay/tracker-redux": "^3.0.0", "@openreplay/tracker-redux": "^3.0.0",
"@sentry/react": "^6.10.0", "@sentry/react": "^6.11.0",
"@sentry/tracing": "^6.10.0", "@sentry/tracing": "^6.11.0",
"@stripe/react-stripe-js": "^1.4.0", "@stripe/react-stripe-js": "^1.4.0",
"@stripe/stripe-js": "^1.16.0", "@stripe/stripe-js": "^1.17.1",
"@tanem/react-nprogress": "^3.0.74", "@tanem/react-nprogress": "^3.0.79",
"antd": "^4.16.8", "antd": "^4.16.13",
"apollo-link-logger": "^2.0.0", "apollo-link-logger": "^2.0.0",
"axios": "^0.21.1", "axios": "^0.21.1",
"craco-less": "^1.18.0", "craco-less": "^1.20.0",
"dinero.js": "^1.9.0", "dinero.js": "^1.9.0",
"dotenv": "^10.0.0", "dotenv": "^10.0.0",
"enquire-js": "^0.2.1", "enquire-js": "^0.2.1",
"env-cmd": "^10.1.0", "env-cmd": "^10.1.0",
"exifr": "^7.1.2", "exifr": "^7.1.3",
"firebase": "^8.7.1", "firebase": "^9.0.0",
"graphql": "^15.5.1", "graphql": "^15.5.2",
"i18next": "^20.3.4", "i18next": "^20.4.0",
"i18next-browser-languagedetector": "^6.1.2", "i18next-browser-languagedetector": "^6.1.2",
"jsoneditor": "^9.5.2", "jsoneditor": "^9.5.4",
"jsreport-browser-client-dist": "^1.3.0", "jsreport-browser-client-dist": "^1.3.0",
"libphonenumber-js": "^1.9.22", "libphonenumber-js": "^1.9.25",
"logrocket": "^1.2.0", "logrocket": "^2.0.0",
"markerjs2": "^2.9.0", "markerjs2": "^2.11.2",
"moment-business-days": "^1.2.0", "moment-business-days": "^1.2.0",
"phone": "^3.1.2", "phone": "^3.1.6",
"preval.macro": "^5.0.0", "preval.macro": "^5.0.0",
"prop-types": "^15.7.2", "prop-types": "^15.7.2",
"query-string": "^7.0.1", "query-string": "^7.0.1",
"rc-queue-anim": "^2.0.0", "rc-queue-anim": "^2.0.0",
"rc-scroll-anim": "^2.7.6", "rc-scroll-anim": "^2.7.6",
"react": "^17.0.1", "react": "^17.0.1",
"react-big-calendar": "^0.33.2", "react-big-calendar": "^0.35.0",
"react-color": "^2.19.3", "react-color": "^2.19.3",
"react-cookie": "^4.1.1", "react-cookie": "^4.1.1",
"react-dom": "^17.0.1", "react-dom": "^17.0.1",
"react-drag-listview": "^0.1.8", "react-drag-listview": "^0.1.8",
"react-grid-gallery": "^0.5.5", "react-grid-gallery": "^0.5.5",
"react-grid-layout": "^1.2.5", "react-grid-layout": "^1.3.0",
"react-i18next": "^11.11.3", "react-i18next": "^11.11.4",
"react-icons": "^4.2.0", "react-icons": "^4.2.0",
"react-number-format": "^4.6.4", "react-number-format": "^4.7.3",
"react-redux": "^7.2.4", "react-redux": "^7.2.4",
"react-resizable": "^3.0.4", "react-resizable": "^3.0.4",
"react-router-dom": "^5.2.0", "react-router-dom": "^5.2.1",
"react-scripts": "^4.0.3", "react-scripts": "^4.0.3",
"react-sublime-video": "^0.2.5", "react-sublime-video": "^0.2.5",
"react-virtualized": "^9.22.3", "react-virtualized": "^9.22.3",
"recharts": "^2.0.10", "recharts": "^2.1.2",
"redux": "^4.1.0", "redux": "^4.1.1",
"redux-persist": "^6.0.0", "redux-persist": "^6.0.0",
"redux-saga": "^1.1.3", "redux-saga": "^1.1.3",
"redux-state-sync": "^3.1.2", "redux-state-sync": "^3.1.2",
"reselect": "^4.0.0", "reselect": "^4.0.0",
"sass": "^1.35.2", "sass": "^1.38.2",
"socket.io-client": "^4.1.3", "socket.io-client": "^4.2.0",
"styled-components": "^5.3.0", "styled-components": "^5.3.1",
"subscriptions-transport-ws": "^0.9.18", "subscriptions-transport-ws": "^0.9.18",
"web-vitals": "^2.1.0", "web-vitals": "^2.1.0",
"workbox-background-sync": "^6.1.5", "workbox-background-sync": "^6.2.4",
"workbox-broadcast-update": "^6.1.5", "workbox-broadcast-update": "^6.2.4",
"workbox-cacheable-response": "^6.1.5", "workbox-cacheable-response": "^6.2.4",
"workbox-core": "^6.1.5", "workbox-core": "^6.2.4",
"workbox-expiration": "^6.1.5", "workbox-expiration": "^6.2.4",
"workbox-google-analytics": "^6.1.5", "workbox-google-analytics": "^6.2.4",
"workbox-navigation-preload": "^6.1.5", "workbox-navigation-preload": "^6.2.4",
"workbox-precaching": "^6.1.5", "workbox-precaching": "^6.2.4",
"workbox-range-requests": "^6.1.5", "workbox-range-requests": "^6.2.4",
"workbox-routing": "^6.1.5", "workbox-routing": "^6.2.4",
"workbox-strategies": "^6.1.5", "workbox-strategies": "^6.2.4",
"workbox-streams": "^6.1.5" "workbox-streams": "^6.2.4"
}, },
"scripts": { "scripts": {
"analyze": "source-map-explorer 'build/static/js/*.js'", "analyze": "source-map-explorer 'build/static/js/*.js'",

View File

@@ -2,7 +2,7 @@ import { withApollo } from "@apollo/client/react/hoc";
import React, { Component } from "react"; import React, { Component } from "react";
import { connect } from "react-redux"; import { connect } from "react-redux";
import { createStructuredSelector } from "reselect"; import { createStructuredSelector } from "reselect";
import { logImEXEvent, messaging } from "../../firebase/firebase.utils"; //import { logImEXEvent, messaging } from "../../firebase/firebase.utils";
import { selectCurrentUser } from "../../redux/user/user.selectors"; import { selectCurrentUser } from "../../redux/user/user.selectors";
const mapStateToProps = createStructuredSelector({ const mapStateToProps = createStructuredSelector({
@@ -15,21 +15,20 @@ const mapDispatchToProps = (dispatch) => ({
class FcmNotificationComponent extends Component { class FcmNotificationComponent extends Component {
async componentDidMount() { async componentDidMount() {
//const { client, currentUser } = this.props; //const { client, currentUser } = this.props;
if (!!!messaging) return; //Skip all of the notification functionality if the firebase SDK could not start. // if (!!!messaging) return; //Skip all of the notification functionality if the firebase SDK could not start.
// messaging
messaging // .requestPermission()
.requestPermission() // .then(async function () {
.then(async function () { // // const token = await messaging.getToken();
// const token = await messaging.getToken(); // // client.mutate({
// client.mutate({ // // mutation: UPDATE_FCM_TOKEN,
// mutation: UPDATE_FCM_TOKEN, // // variables: { authEmail: currentUser.email, token: { [token]: true } },
// variables: { authEmail: currentUser.email, token: { [token]: true } }, // // });
// }); // })
}) // .catch(function (err) {
.catch(function (err) { // console.log("Unable to get permission to notify.", err);
console.log("Unable to get permission to notify.", err); // logImEXEvent("fcm_permission_denied", { message: err });
logImEXEvent("fcm_permission_denied", { message: err }); // });
});
} }
render() { render() {

View File

@@ -37,15 +37,9 @@ export function PaymentsExportAllButton({
let QbXmlResponse; let QbXmlResponse;
try { try {
QbXmlResponse = await axios.post( QbXmlResponse = await axios.post("/accounting/qbxml/payments", {
"/accounting/qbxml/payments", payments: paymentIds,
{ payments: paymentIds }, });
{
headers: {
Authorization: `Bearer ${await auth.currentUser.getIdToken()}`,
},
}
);
} catch (error) { } catch (error) {
console.log("Error getting QBXML from Server.", error); console.log("Error getting QBXML from Server.", error);
notification["error"]({ notification["error"]({

View File

@@ -7,6 +7,7 @@ import { Link } from "react-router-dom";
import { createStructuredSelector } from "reselect"; import { createStructuredSelector } from "reselect";
import ImEXOnlineLogo from "../../assets/logo192.png"; import ImEXOnlineLogo from "../../assets/logo192.png";
import { auth } from "../../firebase/firebase.utils"; import { auth } from "../../firebase/firebase.utils";
import { checkActionCode } from "@firebase/auth";
import { validatePasswordResetStart } from "../../redux/user/user.actions"; import { validatePasswordResetStart } from "../../redux/user/user.actions";
import { selectPasswordReset } from "../../redux/user/user.selectors"; import { selectPasswordReset } from "../../redux/user/user.selectors";
import AlertComponent from "../alert/alert.component"; import AlertComponent from "../alert/alert.component";
@@ -35,7 +36,7 @@ export function UserValidatePwReset({
useEffect(() => { useEffect(() => {
async function checkCodeValid() { async function checkCodeValid() {
try { try {
const codeValid = await auth.checkActionCode(oobCode); const codeValid = await checkActionCode(auth, oobCode);
console.log("codeValid :>> ", codeValid); console.log("codeValid :>> ", codeValid);
setCodeValid({ loading: false, ...codeValid }); setCodeValid({ loading: false, ...codeValid });
} catch (error) { } catch (error) {

View File

@@ -1,20 +1,18 @@
import "firebase/analytics"; import { getAnalytics, logEvent } from "firebase/analytics";
import firebase from "firebase/app"; import { initializeApp } from "firebase/app";
import "firebase/auth"; import { getAuth } from "firebase/auth";
import "firebase/database"; import { getFirestore } from "firebase/firestore";
import "firebase/firestore"; //import { getMessaging } from "firebase/messaging";
import "firebase/messaging";
import { store } from "../redux/store"; import { store } from "../redux/store";
const config = JSON.parse(process.env.REACT_APP_FIREBASE_CONFIG); const config = JSON.parse(process.env.REACT_APP_FIREBASE_CONFIG);
firebase.initializeApp(config); initializeApp(config);
export const auth = firebase.auth(); export const auth = getAuth();
export const firestore = firebase.firestore(); export const firestore = getFirestore();
export const analytics = firebase.analytics(); export const analytics = getAnalytics();
export default firebase;
//export default firebase;
export const getCurrentUser = () => { export const getCurrentUser = () => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const unsubscribe = auth.onAuthStateChanged((userAuth) => { const unsubscribe = auth.onAuthStateChanged((userAuth) => {
@@ -53,17 +51,17 @@ export const updateCurrentPassword = async (password) => {
// }); // });
}; };
let messaging; //let messaging;
try { // try {
messaging = firebase.messaging(); // messaging = getMessaging();
// Project Settings => Cloud Messaging => Web Push certificates // // Project Settings => Cloud Messaging => Web Push certificates
messaging.usePublicVapidKey(process.env.REACT_APP_FIREBASE_PUBLIC_VAPID_KEY); // messaging.usePublicVapidKey(process.env.REACT_APP_FIREBASE_PUBLIC_VAPID_KEY);
console.log("[FCM UTIL] FCM initialized successfully."); // console.log("[FCM UTIL] FCM initialized successfully.");
} catch { // } catch {
console.log("[FCM UTIL] Firebase Messaging is likely unsupported."); // console.log("[FCM UTIL] Firebase Messaging is likely unsupported.");
} // }
export { messaging }; // export { messaging };
export const logImEXEvent = (eventName, additionalParams, stateProp = null) => { export const logImEXEvent = (eventName, additionalParams, stateProp = null) => {
const state = stateProp || store.getState(); const state = stateProp || store.getState();
@@ -82,59 +80,59 @@ export const logImEXEvent = (eventName, additionalParams, stateProp = null) => {
eventName, eventName,
eventParams eventParams
); );
analytics.logEvent(eventName, eventParams); logEvent(analytics, eventName, eventParams);
}; };
if (messaging) { // if (messaging) {
messaging.onMessage(async (payload) => { // onMessage(async (payload) => {
console.log("[FCM] UTILS Message received. ", payload); // console.log("[FCM] UTILS Message received. ", payload);
navigator.serviceWorker.getRegistration().then((registration) => { // navigator.serviceWorker.getRegistration().then((registration) => {
return registration.showNotification( // return registration.showNotification(
"[UTIL]" + payload.notification.title, // "[UTIL]" + payload.notification.title,
payload.notification // payload.notification
); // );
}); // });
// if (!payload.clientId) return; // // if (!payload.clientId) return;
// // Get the client. // // // Get the client.
// const client = await clients.get(payload.clientId); // // const client = await clients.get(payload.clientId);
// // Exit early if we don't get the client. // // // Exit early if we don't get the client.
// // Eg, if it closed. // // // Eg, if it closed.
// if (!client) return; // // if (!client) return;
// // Send a message to the client. // // // Send a message to the client.
// console.log("Posting to client."); // // console.log("Posting to client.");
// client.postMessage({ // // client.postMessage({
// msg: "Hey I just got a fetch from you!", // // msg: "Hey I just got a fetch from you!",
// url: payload.request.url, // // url: payload.request.url,
// }); // // });
// [START_EXCLUDE] // // [START_EXCLUDE]
// Update the UI to include the received message. // // Update the UI to include the received message.
//appendMessage(payload); // //appendMessage(payload);
// [END_EXCLUDE] // // [END_EXCLUDE]
}); // });
messaging.onTokenRefresh(() => { // messaging.onTokenRefresh(() => {
messaging // messaging
.getToken() // .getToken()
.then((refreshedToken) => { // .then((refreshedToken) => {
console.log("[FCM] Token refreshed."); // console.log("[FCM] Token refreshed.");
// Indicate that the new Instance ID token has not yet been sent to the // // Indicate that the new Instance ID token has not yet been sent to the
// app server. // // app server.
// setTokenSentToServer(false); // // setTokenSentToServer(false);
// // Send Instance ID token to app server. // // // Send Instance ID token to app server.
// sendTokenToServer(refreshedToken); // // sendTokenToServer(refreshedToken);
// // [START_EXCLUDE] // // // [START_EXCLUDE]
// // Display new Instance ID token and clear UI of all previous messages. // // // Display new Instance ID token and clear UI of all previous messages.
// resetUI(); // // resetUI();
// [END_EXCLUDE] // // [END_EXCLUDE]
}) // })
.catch((err) => { // .catch((err) => {
console.log("[FCM] Unable to retrieve refreshed token ", err); // console.log("[FCM] Unable to retrieve refreshed token ", err);
// showToken("Unable to retrieve refreshed token ", err); // // showToken("Unable to retrieve refreshed token ", err);
}); // });
}); // });
} // }

View File

@@ -1,12 +1,20 @@
import Fingerprint2 from "@fingerprintjs/fingerprintjs"; import Fingerprint2 from "@fingerprintjs/fingerprintjs";
import * as Sentry from "@sentry/browser";
import { notification } from "antd"; import { notification } from "antd";
import { auth, analytics, firestore } from "../../firebase/firebase.utils";
import { setUserId, setUserProperties } from "firebase/analytics";
import {
checkActionCode,
confirmPasswordReset,
signInWithEmailAndPassword,
signOut,
} from "firebase/auth";
import { doc } from "firebase/firestore";
import i18next from "i18next"; import i18next from "i18next";
import LogRocket from "logrocket"; import LogRocket from "logrocket";
import { all, call, delay, put, select, takeLatest } from "redux-saga/effects"; import { all, call, delay, put, select, takeLatest } from "redux-saga/effects";
import { tracker } from "../../App/App.container";
import { import {
analytics,
auth,
firestore,
getCurrentUser, getCurrentUser,
logImEXEvent, logImEXEvent,
updateCurrentUser, updateCurrentUser,
@@ -28,8 +36,6 @@ import {
validatePasswordResetSuccess, validatePasswordResetSuccess,
} from "./user.actions"; } from "./user.actions";
import UserActionTypes from "./user.types"; import UserActionTypes from "./user.types";
import * as Sentry from "@sentry/browser";
import { tracker } from "../../App/App.container";
export function* onEmailSignInStart() { export function* onEmailSignInStart() {
yield takeLatest(UserActionTypes.EMAIL_SIGN_IN_START, signInWithEmail); yield takeLatest(UserActionTypes.EMAIL_SIGN_IN_START, signInWithEmail);
@@ -38,7 +44,7 @@ export function* signInWithEmail({ payload: { email, password } }) {
try { try {
logImEXEvent("redux_sign_in_attempt", { user: email }); logImEXEvent("redux_sign_in_attempt", { user: email });
const { user } = yield auth.signInWithEmailAndPassword(email, password); const { user } = yield signInWithEmailAndPassword(auth, email, password);
yield put( yield put(
signInSuccess({ signInSuccess({
@@ -90,7 +96,7 @@ export function* signOutStart() {
try { try {
logImEXEvent("redux_sign_out"); logImEXEvent("redux_sign_out");
yield auth.signOut(); yield signOut(auth);
yield put(signOutSuccess()); yield put(signOutSuccess());
localStorage.removeItem("token"); localStorage.removeItem("token");
} catch (error) { } catch (error) {
@@ -104,10 +110,7 @@ export function* onUpdateUserDetails() {
export function* updateUserDetails(userDetails) { export function* updateUserDetails(userDetails) {
try { try {
const updatedDetails = yield updateCurrentUser(userDetails.payload); const updatedDetails = yield updateCurrentUser(userDetails.payload);
console.log(
"🚀 ~ file: user.sagas.js ~ line 104 ~ updatedDetails",
updatedDetails
);
yield put(updateUserDetailsSuccess(updatedDetails)); yield put(updateUserDetailsSuccess(updatedDetails));
notification.open({ notification.open({
type: "success", type: "success",
@@ -122,7 +125,7 @@ export function* onSetInstanceId() {
} }
export function* setInstanceIdSaga({ payload: uid }) { export function* setInstanceIdSaga({ payload: uid }) {
try { try {
const userInstanceRef = firestore.doc(`userInstance/${uid}`); const userInstanceRef = doc(firestore, `userInstance/${uid}`);
const fingerprint = Fingerprint2.x64hash128( const fingerprint = Fingerprint2.x64hash128(
(yield Fingerprint2.getPromise({})).map((c) => c.value).join(""), (yield Fingerprint2.getPromise({})).map((c) => c.value).join(""),
@@ -147,7 +150,7 @@ export function* onCheckInstanceId() {
} }
export function* checkInstanceIdSaga({ payload: uid }) { export function* checkInstanceIdSaga({ payload: uid }) {
try { try {
const userInstanceRef = firestore.doc(`userInstance/${uid}`); const userInstanceRef = doc(firestore, `userInstance/${uid}`);
const snapshot = yield userInstanceRef.get(); const snapshot = yield userInstanceRef.get();
let fingerprint = yield select((state) => state.user.fingerprint); let fingerprint = yield select((state) => state.user.fingerprint);
@@ -193,8 +196,8 @@ export function* signInSuccessSaga({ payload }) {
} }
// if (!payload.email.includes("@imex.")) yield put(setInstanceId(payload.uid)); // if (!payload.email.includes("@imex.")) yield put(setInstanceId(payload.uid));
analytics.setUserId(payload.email); setUserId(analytics, payload.email);
analytics.setUserProperties(payload); setUserProperties(analytics, payload);
yield logImEXEvent("redux_sign_in_success"); yield logImEXEvent("redux_sign_in_success");
} }
@@ -210,7 +213,7 @@ export function* onSendPasswordResetStart() {
} }
export function* sendPasswordResetEmail({ payload }) { export function* sendPasswordResetEmail({ payload }) {
try { try {
yield auth.sendPasswordResetEmail(payload, { yield sendPasswordResetEmail(payload, {
url: "https://imex.online/passwordreset", url: "https://imex.online/passwordreset",
}); });
@@ -228,8 +231,8 @@ export function* onValidatePasswordResetStart() {
} }
export function* validatePasswordResetStart({ payload: { password, code } }) { export function* validatePasswordResetStart({ payload: { password, code } }) {
try { try {
auth.checkActionCode(code); checkActionCode(auth, code);
yield auth.confirmPasswordReset(code, password); yield confirmPasswordReset(auth, code, password);
yield put(validatePasswordResetSuccess()); yield put(validatePasswordResetSuccess());
} catch (error) { } catch (error) {
console.log("function*validatePasswordResetStart -> error", error); console.log("function*validatePasswordResetStart -> error", error);

File diff suppressed because it is too large Load Diff

View File

@@ -17,7 +17,7 @@
"start": "node server.js" "start": "node server.js"
}, },
"dependencies": { "dependencies": {
"aws-sdk": "^2.951.0", "aws-sdk": "^2.979.0",
"bluebird": "^3.7.2", "bluebird": "^3.7.2",
"body-parser": "^1.18.3", "body-parser": "^1.18.3",
"cloudinary": "^1.26.2", "cloudinary": "^1.26.2",
@@ -28,8 +28,8 @@
"dinero.js": "^1.9.0", "dinero.js": "^1.9.0",
"dotenv": "10.0.0", "dotenv": "10.0.0",
"express": "^4.16.4", "express": "^4.16.4",
"firebase-admin": "^9.11.0", "firebase-admin": "^9.11.1",
"graphql": "^15.5.1", "graphql": "^15.5.2",
"graphql-request": "^3.4.0", "graphql-request": "^3.4.0",
"graylog2": "^0.2.1", "graylog2": "^0.2.1",
"inline-css": "^3.0.0", "inline-css": "^3.0.0",
@@ -40,14 +40,14 @@
"node-mailjet": "^3.3.4", "node-mailjet": "^3.3.4",
"node-quickbooks": "^2.0.39", "node-quickbooks": "^2.0.39",
"nodemailer": "^6.6.3", "nodemailer": "^6.6.3",
"phone": "^3.1.2", "phone": "^3.1.6",
"query-string": "^7.0.1", "query-string": "^7.0.1",
"soap": "^0.40.0", "soap": "^0.42.0",
"socket.io": "^4.1.3", "socket.io": "^4.2.0",
"ssh2-sftp-client": "^7.0.0", "ssh2-sftp-client": "^7.0.3",
"stripe": "^8.164.0", "stripe": "^8.171.0",
"twilio": "^3.66.0", "twilio": "^3.67.1",
"xmlbuilder2": "^2.4.1" "xmlbuilder2": "^3.0.2"
}, },
"devDependencies": { "devDependencies": {
"concurrently": "^6.2.0", "concurrently": "^6.2.0",

171
yarn.lock
View File

@@ -210,10 +210,10 @@
resolved "https://registry.yarnpkg.com/@jonkemp/package-utils/-/package-utils-1.0.7.tgz#6550ea56c9bd61bb4161c99e7ca38b972ad3a25d" resolved "https://registry.yarnpkg.com/@jonkemp/package-utils/-/package-utils-1.0.7.tgz#6550ea56c9bd61bb4161c99e7ca38b972ad3a25d"
integrity sha512-OoK+K1RmhtS8SlORrlH7sW0CNdrnm0BxKNcv4pQIk6y6VORsHiX91gV3dh6XD2eS7J+iCXROcu5sGuH0tjmNEQ== integrity sha512-OoK+K1RmhtS8SlORrlH7sW0CNdrnm0BxKNcv4pQIk6y6VORsHiX91gV3dh6XD2eS7J+iCXROcu5sGuH0tjmNEQ==
"@oozcitak/dom@1.15.8": "@oozcitak/dom@1.15.10":
version "1.15.8" version "1.15.10"
resolved "https://registry.yarnpkg.com/@oozcitak/dom/-/dom-1.15.8.tgz#0c0c7bb54cfdaadc07fd637913e706101721d15d" resolved "https://registry.yarnpkg.com/@oozcitak/dom/-/dom-1.15.10.tgz#dca7289f2b292cff2a901ea4fbbcc0a1ab0b05c2"
integrity sha512-MoOnLBNsF+ok0HjpAvxYxR4piUhRDCEWK0ot3upwOOHYudJd30j6M+LNcE8RKpwfnclAX9T66nXXzkytd29XSw== integrity sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==
dependencies: dependencies:
"@oozcitak/infra" "1.0.8" "@oozcitak/infra" "1.0.8"
"@oozcitak/url" "1.0.4" "@oozcitak/url" "1.0.4"
@@ -329,12 +329,12 @@
dependencies: dependencies:
"@types/node" "*" "@types/node" "*"
"@types/cookie@^0.4.0": "@types/cookie@^0.4.1":
version "0.4.1" version "0.4.1"
resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d" resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d"
integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==
"@types/cors@^2.8.10": "@types/cors@^2.8.12":
version "2.8.12" version "2.8.12"
resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080" resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080"
integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw== integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==
@@ -428,6 +428,11 @@
resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-2.3.8.tgz#511fc1569cc32b0cf50941fe9f00bf70f94116bb" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-2.3.8.tgz#511fc1569cc32b0cf50941fe9f00bf70f94116bb"
integrity sha512-7axfYN8SW9pWg78NgenHasSproWQee5rzyPVLC9HpaQSDgNArsnKJD88EaMfi4Pl48AyciO3agYCFqpHS1gLpg== integrity sha512-7axfYN8SW9pWg78NgenHasSproWQee5rzyPVLC9HpaQSDgNArsnKJD88EaMfi4Pl48AyciO3agYCFqpHS1gLpg==
"@xmldom/xmldom@^0.7.0":
version "0.7.3"
resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.3.tgz#55de695f77afd3cc0e5bee0aa900040bc63c0f63"
integrity sha512-8XmJdPut2XGtfFcsNsqEsvMUmAwk7xLq7m+E/GcsU9b5qyFFIsiX4Fvnb5UoQ4wo12Wlm07YFJERoyWUYdbIpw==
abort-controller@^3.0.0: abort-controller@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
@@ -577,10 +582,10 @@ atob@2.1.2:
resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
aws-sdk@^2.951.0: aws-sdk@^2.979.0:
version "2.971.0" version "2.979.0"
resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.971.0.tgz#84e5b119e2eb84dc484a2b1c3a81e2f91e1cbfc8" resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.979.0.tgz#d0104fec763cc3eafb123e709f94866790109da4"
integrity sha512-7mPN7HnPILMNA8YMEMCZp/bi3o4blPoQ1TbBWaowGUt8RhkxgdAAqMy2vAkhElT5xWjROZS+1NgG3khzBlb0xw== integrity sha512-pKKhpYZwmihCvuH3757WHY8JQI9g2wvtF3s0aiyH2xCUmX/6uekhExz/utD4uqZP3m3PwKZPGQkQkH30DtHrPw==
dependencies: dependencies:
buffer "4.9.2" buffer "4.9.2"
events "1.1.1" events "1.1.1"
@@ -951,6 +956,11 @@ content-disposition@0.5.3:
dependencies: dependencies:
safe-buffer "5.1.2" safe-buffer "5.1.2"
content-type-parser@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7"
integrity sha512-lM4l4CnMEwOLHAHr/P6MEZwZFPJFtAAKgL6pogbXmVZggIqXhdB6RbBtPOTsw2FcXwYhehRGERJmRrjOiIB8pQ==
content-type@~1.0.4: content-type@~1.0.4:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
@@ -1107,7 +1117,7 @@ debug@2.6.9:
dependencies: dependencies:
ms "2.0.0" ms "2.0.0"
debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@~4.3.1: debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@~4.3.1, debug@~4.3.2:
version "4.3.2" version "4.3.2"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
@@ -1306,10 +1316,10 @@ engine.io-parser@~4.0.0:
dependencies: dependencies:
base64-arraybuffer "0.1.4" base64-arraybuffer "0.1.4"
engine.io@~5.1.1: engine.io@~5.2.0:
version "5.1.1" version "5.2.0"
resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-5.1.1.tgz#a1f97e51ddf10cbd4db8b5ff4b165aad3760cdd3" resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-5.2.0.tgz#554cdd0230d89de7b1a49a809d7ee5a129d36809"
integrity sha512-aMWot7H5aC8L4/T8qMYbLdvKlZOdJTH54FxfdFunTGvhMx1BHkJOntWArsVfgAZVwAO9LC2sryPWRcEeUzCe5w== integrity sha512-d1DexkQx87IFr1FLuV+0f5kAm1Hk1uOVijLOb+D1sDO2QMb7YjE02VHtZtxo7xIXMgcWLb+vl3HRT0rI9tr4jQ==
dependencies: dependencies:
accepts "~1.3.4" accepts "~1.3.4"
base64id "2.0.0" base64id "2.0.0"
@@ -1659,10 +1669,10 @@ finalhandler@~1.1.2:
statuses "~1.5.0" statuses "~1.5.0"
unpipe "~1.0.0" unpipe "~1.0.0"
firebase-admin@^9.11.0: firebase-admin@^9.11.1:
version "9.11.0" version "9.11.1"
resolved "https://registry.yarnpkg.com/firebase-admin/-/firebase-admin-9.11.0.tgz#c0c72e4480b836fb4cd15e6d834ddfbfb9cc54ba" resolved "https://registry.yarnpkg.com/firebase-admin/-/firebase-admin-9.11.1.tgz#b4f472ed51951937f333a4d88a0693ad37ffc90a"
integrity sha512-68fXdwcKF99LkWBE33M5hnLwjvGpbCRznIOtZVsiBqZdM9iwxlTfNEpAckh++o3GdJcSLRUWmIN+MKqPUsxoCA== integrity sha512-Y9fjelljy6MKqwsSbM/UN1k8gBQh5zfm5fCTe0Z6Gch2T3nDUIPsTcf+jfe4o40/MPYuybili9XJjTMmM2e5MQ==
dependencies: dependencies:
"@firebase/database" "^0.10.0" "@firebase/database" "^0.10.0"
"@firebase/database-types" "^0.7.2" "@firebase/database-types" "^0.7.2"
@@ -1933,10 +1943,10 @@ graphql-request@^3.4.0:
extract-files "^9.0.0" extract-files "^9.0.0"
form-data "^3.0.0" form-data "^3.0.0"
graphql@^15.5.1: graphql@^15.5.2:
version "15.5.1" version "15.5.2"
resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.1.tgz#f2f84415d8985e7b84731e7f3536f8bb9d383aad" resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.2.tgz#efa19f8f2bf1a48eb7d5c85bf17e144ba8bb0480"
integrity sha512-FeTRX67T3LoE3LWAxxOlW2K3Bz+rMYAC18rRguK4wgXaTZMiJwSUwDmPFo3UadAKbzirKIg5Qy+sNJXbpPRnQw== integrity sha512-dZjLPWNQqYv0dqV2RNbiFed0LtSp6yd4jchsDGnuhDKa9OQHJYCfovaOEvY91w9gqbYO7Se9LKDTl3xxYva/3w==
graylog2@^0.2.1: graylog2@^0.2.1:
version "0.2.1" version "0.2.1"
@@ -2068,6 +2078,19 @@ http-signature@~1.2.0:
jsprim "^1.2.2" jsprim "^1.2.2"
sshpk "^1.7.0" sshpk "^1.7.0"
httpntlm@^1.5.2:
version "1.7.7"
resolved "https://registry.yarnpkg.com/httpntlm/-/httpntlm-1.7.7.tgz#51b914f18e5de2868d4bfe50aeecdb1db23218a1"
integrity sha512-Pv2Rvrz8H0qv1Dne5mAdZ9JegG1uc6Vu5lwLflIY6s8RKHdZQbW39L4dYswSgqMDT0pkJILUTKjeyU0VPNRZjA==
dependencies:
httpreq ">=0.4.22"
underscore "~1.12.1"
httpreq@>=0.4.22:
version "0.5.2"
resolved "https://registry.yarnpkg.com/httpreq/-/httpreq-0.5.2.tgz#be6777292fa1038d7771d7c01d9a5e1219de951c"
integrity sha512-2Jm+x9WkExDOeFRrdBCBSpLPT5SokTcRHkunV3pjKmX/cx6av8zQ0WtHUMDrYb6O4hBFzNU6sxJEypvRUVYKnw==
https-proxy-agent@5, https-proxy-agent@^5.0.0: https-proxy-agent@5, https-proxy-agent@^5.0.0:
version "5.0.0" version "5.0.0"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2"
@@ -2979,10 +3002,10 @@ performance-now@^2.1.0:
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
phone@^3.1.2: phone@^3.1.6:
version "3.1.5" version "3.1.6"
resolved "https://registry.yarnpkg.com/phone/-/phone-3.1.5.tgz#94b4c029bbb05594602b2c859acfbf22f8ee41c6" resolved "https://registry.yarnpkg.com/phone/-/phone-3.1.6.tgz#eefff0be1ce4ce9f2ee028c67be6b58dc5616ef1"
integrity sha512-eKZnXpD6leGmumG3DUzt3Wi8Dwu11q302Qqer15Q7luX1bnwoYoP2A1j9aOYImSwr7uQo8a0ksyVrQqt+LC78A== integrity sha512-46WCdbDG32OKoPsntTg2l0VBaWVWg0A3zvH5dUhApwOupyn7owXRtDBz6vAjsJiZQGTft++WvTxEZeqxlCUv9g==
pick-util@^1.1.3: pick-util@^1.1.3:
version "1.1.3" version "1.1.3"
@@ -3531,25 +3554,28 @@ snakeize@^0.1.0:
resolved "https://registry.yarnpkg.com/snakeize/-/snakeize-0.1.0.tgz#10c088d8b58eb076b3229bb5a04e232ce126422d" resolved "https://registry.yarnpkg.com/snakeize/-/snakeize-0.1.0.tgz#10c088d8b58eb076b3229bb5a04e232ce126422d"
integrity sha1-EMCI2LWOsHazIpu1oE4jLOEmQi0= integrity sha1-EMCI2LWOsHazIpu1oE4jLOEmQi0=
soap@^0.40.0: soap@^0.42.0:
version "0.40.0" version "0.42.0"
resolved "https://registry.yarnpkg.com/soap/-/soap-0.40.0.tgz#c0d95520dd3528593ff0c12bd1c959620d2089b6" resolved "https://registry.yarnpkg.com/soap/-/soap-0.42.0.tgz#33f6ce109f9e6fdc9b61c3665c592c6d0e18e0ab"
integrity sha512-66GjEXIWyRsc24RXtzzoVaXtHzd3+DRy0PsXxMGrqGU26mqKfORbtDLFJIyp2OXcCHch5pM0LkXUXI/d/KouNw== integrity sha512-7q4tYAkK0+KIeYRK0n/JBFP7XdZChqfGUfcDQRXt5uvKkRtj0gxTEc7WbfLnOqjyif86v5/MosE/4K+8ZYaB1Q==
dependencies: dependencies:
axios "^0.21.1" axios "^0.21.1"
axios-ntlm "^1.1.6" axios-ntlm "^1.1.6"
content-type-parser "^1.0.2"
debug "^4.3.1" debug "^4.3.1"
formidable "^1.2.2"
get-stream "^6.0.1" get-stream "^6.0.1"
httpntlm "^1.5.2"
lodash "^4.17.21" lodash "^4.17.21"
sax ">=0.6" sax ">=0.6"
strip-bom "^3.0.0" strip-bom "^3.0.0"
uuid "^8.3.2" uuid "^8.3.2"
xml-crypto "^2.1.0" xml-crypto "^2.1.3"
socket.io-adapter@~2.3.1: socket.io-adapter@~2.3.2:
version "2.3.1" version "2.3.2"
resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-2.3.1.tgz#a442720cb09a4823cfb81287dda1f9b52d4ccdb2" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-2.3.2.tgz#039cd7c71a52abad984a6d57da2c0b7ecdd3c289"
integrity sha512-8cVkRxI8Nt2wadkY6u60Y4rpW3ejA1rxgcK2JuyIhmF+RMNpTy1QRtkHIDUOf3B4HlQwakMsWbKftMv/71VMmw== integrity sha512-PBZpxUPYjmoogY0aoaTmo1643JelsaS1CiAwNjRVdrI0X9Seuc19Y2Wife8k88avW6haG8cznvwbubAZwH4Mtg==
socket.io-parser@~4.0.4: socket.io-parser@~4.0.4:
version "4.0.4" version "4.0.4"
@@ -3560,19 +3586,19 @@ socket.io-parser@~4.0.4:
component-emitter "~1.3.0" component-emitter "~1.3.0"
debug "~4.3.1" debug "~4.3.1"
socket.io@^4.1.3: socket.io@^4.2.0:
version "4.1.3" version "4.2.0"
resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-4.1.3.tgz#d114328ef27ab31b889611792959c3fa6d502500" resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-4.2.0.tgz#9e1c09d3ea647e24963a2e7ba8ea5c847778e2ed"
integrity sha512-tLkaY13RcO4nIRh1K2hT5iuotfTaIQw7cVIe0FUykN3SuQi0cm7ALxuyT5/CtDswOMWUzMGTibxYNx/gU7In+Q== integrity sha512-sjlGfMmnaWvTRVxGRGWyhd9ctpg4APxWAxu85O/SxekkxHhfxmePWZbaYCkeX5QQX0z1YEnKOlNt6w82E4Nzug==
dependencies: dependencies:
"@types/cookie" "^0.4.0" "@types/cookie" "^0.4.1"
"@types/cors" "^2.8.10" "@types/cors" "^2.8.12"
"@types/node" ">=10.0.0" "@types/node" ">=10.0.0"
accepts "~1.3.4" accepts "~1.3.4"
base64id "~2.0.0" base64id "~2.0.0"
debug "~4.3.1" debug "~4.3.2"
engine.io "~5.1.1" engine.io "~5.2.0"
socket.io-adapter "~2.3.1" socket.io-adapter "~2.3.2"
socket.io-parser "~4.0.4" socket.io-parser "~4.0.4"
socks-proxy-agent@5, socks-proxy-agent@^5.0.0: socks-proxy-agent@5, socks-proxy-agent@^5.0.0:
@@ -3666,10 +3692,10 @@ sprintf-js@~1.0.2:
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
ssh2-sftp-client@^7.0.0: ssh2-sftp-client@^7.0.3:
version "7.0.2" version "7.0.3"
resolved "https://registry.yarnpkg.com/ssh2-sftp-client/-/ssh2-sftp-client-7.0.2.tgz#0470b3f5e17da5971242ba9f532d740a4476f60a" resolved "https://registry.yarnpkg.com/ssh2-sftp-client/-/ssh2-sftp-client-7.0.3.tgz#6940c5fb7dad4c3a5199ee154775f66050ccfc0b"
integrity sha512-6DeNKZFFNiWFt2oVrOghmvWaMQe0We5OJLuFoEFKhcDEK1rvMbgEu8BqU1rB6hmyzcbbNPo62IlIPRI3GdUxvA== integrity sha512-h2Zy0GNNOJ7ESyRwBXEdjWEnj7E5z1nVGxtZr7uE77UaIipHbGJ2aQwj7kDBXV/1Mq3YJNu38st8QC48f8ufoA==
dependencies: dependencies:
concat-stream "^2.0.0" concat-stream "^2.0.0"
promise-retry "^2.0.1" promise-retry "^2.0.1"
@@ -3783,10 +3809,10 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
stripe@^8.164.0: stripe@^8.171.0:
version "8.169.0" version "8.171.0"
resolved "https://registry.yarnpkg.com/stripe/-/stripe-8.169.0.tgz#5970cc055872fccbc49713f6428a682ece7f3e76" resolved "https://registry.yarnpkg.com/stripe/-/stripe-8.171.0.tgz#9c52d2e3928c7ebf708ce1f9eb2d3cc2f682f8bf"
integrity sha512-h4JVMGnhYwkEu8dFHX0MewtTFEWcjJQ2zTiFcvhW5toa/2JcEeObfwH27Z29A6t/6s2vnXrXxEnuyL7gBBAXqA== integrity sha512-SriWXEVukmnrE40BoRe18Zsw9zftpnDlZlgxhZd6qJqP/RwN59op5YoW2mA0LE6Grxn8FH8RB9CXVxCAHNTk8w==
dependencies: dependencies:
"@types/node" ">=8.1.0" "@types/node" ">=8.1.0"
qs "^6.6.0" qs "^6.6.0"
@@ -3950,10 +3976,10 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0:
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
twilio@^3.66.0: twilio@^3.67.1:
version "3.67.0" version "3.67.1"
resolved "https://registry.yarnpkg.com/twilio/-/twilio-3.67.0.tgz#24d5d1ca7371b99179a08b0b36c914d1b6cdd196" resolved "https://registry.yarnpkg.com/twilio/-/twilio-3.67.1.tgz#7734c1c186b1309ca58555dd13ff7a2140f3d056"
integrity sha512-MY0qsb895IDS3GEeBVVkNThr/ONy6a+jstkxeRVLdva52PMkIsrub68PWIXX2ubpiCMJWcX3ZroxRbRmfumFBQ== integrity sha512-JpdPLqPyYpMyrW39ByUbHimqeHpcWuMv7DD1R215C5wf8dS9EzYfAHqFvrZCEOZkdpB3QeR0UZfvh96jb8FB7Q==
dependencies: dependencies:
axios "^0.21.1" axios "^0.21.1"
dayjs "^1.8.29" dayjs "^1.8.29"
@@ -3964,7 +3990,7 @@ twilio@^3.66.0:
qs "^6.9.4" qs "^6.9.4"
rootpath "^0.1.2" rootpath "^0.1.2"
scmp "^2.1.0" scmp "^2.1.0"
url-parse "^1.5.0" url-parse "^1.5.3"
xmlbuilder "^13.0.2" xmlbuilder "^13.0.2"
type-check@^0.4.0, type-check@~0.4.0: type-check@^0.4.0, type-check@~0.4.0:
@@ -4018,7 +4044,7 @@ uid-safe@2.1.5:
dependencies: dependencies:
random-bytes "~1.0.0" random-bytes "~1.0.0"
underscore@1.12.1: underscore@1.12.1, underscore@~1.12.1:
version "1.12.1" version "1.12.1"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.12.1.tgz#7bb8cc9b3d397e201cf8553336d262544ead829e" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.12.1.tgz#7bb8cc9b3d397e201cf8553336d262544ead829e"
integrity sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw== integrity sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==
@@ -4047,7 +4073,7 @@ uri-js@^4.2.2:
dependencies: dependencies:
punycode "^2.1.0" punycode "^2.1.0"
url-parse@^1.5.0: url-parse@^1.5.3:
version "1.5.3" version "1.5.3"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.3.tgz#71c1303d38fb6639ade183c2992c8cc0686df862" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.3.tgz#71c1303d38fb6639ade183c2992c8cc0686df862"
integrity sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ== integrity sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==
@@ -4210,12 +4236,12 @@ xdg-basedir@^4.0.0:
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13"
integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==
xml-crypto@^2.1.0: xml-crypto@^2.1.3:
version "2.1.2" version "2.1.3"
resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.2.tgz#501506d42e466f6cd908c5a03182217231b4e4b8" resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.3.tgz#6a7272b610ea3e4ea7f13e9e4876f1b20cbc32c8"
integrity sha512-DBhZXtBjENtLwJmeJhLUBwUm9YWNjCRvAx6ESP4VJyM9PDuKqZu2Fp5Y5HKqcdJT7vV7eI25Z4UBMezji6QloQ== integrity sha512-MpXZwnn9JK0mNPZ5mnFIbNnQa+8lMGK4NtnX2FlJMfMWR60sJdFO9X72yO6ji068pxixzk53O7x0/iSKh6IhyQ==
dependencies: dependencies:
xmldom "^0.6.0" "@xmldom/xmldom" "^0.7.0"
xpath "0.0.32" xpath "0.0.32"
xml2js@0.4.19: xml2js@0.4.19:
@@ -4226,12 +4252,12 @@ xml2js@0.4.19:
sax ">=0.6.0" sax ">=0.6.0"
xmlbuilder "~9.0.1" xmlbuilder "~9.0.1"
xmlbuilder2@^2.4.1: xmlbuilder2@^3.0.2:
version "2.4.1" version "3.0.2"
resolved "https://registry.yarnpkg.com/xmlbuilder2/-/xmlbuilder2-2.4.1.tgz#899c783a833188c5a5aa6f3c5428a3963f3e479d" resolved "https://registry.yarnpkg.com/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz#fc499688b35a916f269e7b459c2fa02bb5c0822a"
integrity sha512-vliUplZsk5vJnhxXN/mRcij/AE24NObTUm/Zo4vkLusgayO6s3Et5zLEA14XZnY1c3hX5o1ToR0m0BJOPy0UvQ== integrity sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==
dependencies: dependencies:
"@oozcitak/dom" "1.15.8" "@oozcitak/dom" "1.15.10"
"@oozcitak/infra" "1.0.8" "@oozcitak/infra" "1.0.8"
"@oozcitak/util" "8.3.8" "@oozcitak/util" "8.3.8"
"@types/node" "*" "@types/node" "*"
@@ -4252,11 +4278,6 @@ xmldom@^0.1.21:
resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.31.tgz#b76c9a1bd9f0a9737e5a72dc37231cf38375e2ff" resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.31.tgz#b76c9a1bd9f0a9737e5a72dc37231cf38375e2ff"
integrity sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ== integrity sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==
xmldom@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.6.0.tgz#43a96ecb8beece991cef382c08397d82d4d0c46f"
integrity sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==
xpath@0.0.32: xpath@0.0.32:
version "0.0.32" version "0.0.32"
resolved "https://registry.yarnpkg.com/xpath/-/xpath-0.0.32.tgz#1b73d3351af736e17ec078d6da4b8175405c48af" resolved "https://registry.yarnpkg.com/xpath/-/xpath-0.0.32.tgz#1b73d3351af736e17ec078d6da4b8175405c48af"