Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
Code?: number, // 15052
Error?: string, // Message does not exist
ErrorDescription?: string,
Details?: object;
}>(error)
&&
error.status === 422
&&
error.data.Code === 15052
) { // ignoring the error as expected to happen
logger.warn(
// WARN don't log message-specific data as it might include sensitive fields
`Skip message fetching as it has been already removed from the trash before fetch action started`,
// WARN don't log full error as it might include sensitive data
JSON.stringify(
pick(error, ["data", "status", "statusText"]),
),
);
} else {
throw error;
}
}
}
await (async () => {
const labels = await api.label.query();
const upsertIds = mapping.folders.upsertIds.map(({id}) => id);
const folders = labels
.filter(({ID}) => upsertIds.includes(ID))
.map(Database.buildFolder);
patch.folders.upsert.push(...folders);
})();
for (const {id} of mapping.contacts.upsertIds) {
import React, { useEffect, useState } from 'react';
import * as R from 'remeda';
import { usePrevious } from 'src/hooks/usePrevious';
import { RouteConfig } from 'src/types';
import { useActions, useMappedState } from 'typeless';
import { getRouterState, RouterActions, RouterLocation } from 'typeless-router';
import { getGlobalState } from 'src/features/global/interface';
// load dynamically all routes from all interfaces
const req = require.context('../features', true, /interface.tsx?$/);
const routes = R.flatMap(req.keys(), key => {
const module = req(key);
const items = Object.values(module);
return items.filter((item: any) => item.type === 'route') as RouteConfig[];
});
function getMatch(loc: RouterLocation | null, isLogged: boolean) {
if (!loc) {
return null;
}
return routes.find(route => {
if ((route.auth && !isLogged) || (!route.auth && isLogged)) {
return false;
}
return route.path === loc.pathname;
});
}
(global, router) => ({
...R.pick(global, ['isLoaded', 'user']),
...R.pick(router, ['location']),
})
);
(global, router) => ({
...R.pick(global, ['isLoaded', 'user']),
...R.pick(router, ['location']),
})
);
) => (
patterns: AlternatePattern.t[]
): ResultP => {
return pipeAsync(
patterns,
R.map(AlternatePattern.alternatePath(userFilePath, projectionsPath)),
paths => R.compact(paths) as string[],
File.findExisting,
mapError((alternatesAttempted: string[]) => ({
alternatesAttempted,
message: `No alternate found for ${userFilePath}. Tried: ${alternatesAttempted}`,
startingFile: userFilePath
}))
);
};
export const findExisting = async (filePaths: t[]): ResultP => {
return pipeAsync(
filePaths,
R.map(fileExists),
files => Promise.all(files),
file => firstOk(file),
mapError(always(filePaths))
);
};
paths => R.compact(paths) as string[],
File.findExisting,
export const projectionsToAlternatePatterns = (
projections: t
): AlternatePattern.t[] => {
const pairs = R.toPairs(projections) as ProjectionPair[];
const allPairs = R.flatten(pairs.map(splitOutAlternates));
return allPairs.map(projectionPairToAlternatePattern);
};
export const projectionsToAlternatePatterns = (
projections: t
): AlternatePattern.t[] => {
const pairs = R.toPairs(projections) as ProjectionPair[];
const allPairs = R.flatten(pairs.map(splitOutAlternates));
return allPairs.map(projectionPairToAlternatePattern);
};