mirror of
https://github.com/umami-software/umami.git
synced 2026-02-13 00:55:37 +01:00
Revert uuid.
This commit is contained in:
parent
1f2da530c9
commit
bd9ff9a0df
15 changed files with 31 additions and 16 deletions
|
|
@ -2,14 +2,13 @@ import { Report } from '@prisma/client';
|
||||||
import redis from '@umami/redis-client';
|
import redis from '@umami/redis-client';
|
||||||
import debug from 'debug';
|
import debug from 'debug';
|
||||||
import { PERMISSIONS, ROLE_PERMISSIONS, SHARE_TOKEN_HEADER } from 'lib/constants';
|
import { PERMISSIONS, ROLE_PERMISSIONS, SHARE_TOKEN_HEADER } from 'lib/constants';
|
||||||
import { secret } from 'lib/crypto';
|
import { secret, isUuid } from 'lib/crypto';
|
||||||
import {
|
import {
|
||||||
createSecureToken,
|
createSecureToken,
|
||||||
ensureArray,
|
ensureArray,
|
||||||
getRandomChars,
|
getRandomChars,
|
||||||
parseSecureToken,
|
parseSecureToken,
|
||||||
parseToken,
|
parseToken,
|
||||||
isUuid,
|
|
||||||
} from 'next-basics';
|
} from 'next-basics';
|
||||||
import { getTeamUser } from 'queries';
|
import { getTeamUser } from 'queries';
|
||||||
import { getTeamWebsite, getTeamWebsiteByTeamMemberId } from 'queries/admin/teamWebsite';
|
import { getTeamWebsite, getTeamWebsiteByTeamMemberId } from 'queries/admin/teamWebsite';
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
import { startOfMonth } from 'date-fns';
|
import { startOfMonth } from 'date-fns';
|
||||||
import { hash } from 'next-basics';
|
import { hash } from 'next-basics';
|
||||||
|
import { v4, v5, validate } from 'uuid';
|
||||||
|
|
||||||
export function secret() {
|
export function secret() {
|
||||||
return hash(process.env.APP_SECRET || process.env.DATABASE_URL);
|
return hash(process.env.APP_SECRET || process.env.DATABASE_URL);
|
||||||
|
|
@ -10,3 +11,13 @@ export function salt() {
|
||||||
|
|
||||||
return hash(secret(), ROTATING_SALT);
|
return hash(secret(), ROTATING_SALT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function uuid(...args) {
|
||||||
|
if (!args.length) return v4();
|
||||||
|
|
||||||
|
return v5(hash(...args), v5.DNS);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function isUuid(value) {
|
||||||
|
return validate(value);
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,14 +4,13 @@ import {
|
||||||
badRequest,
|
badRequest,
|
||||||
parseSecureToken,
|
parseSecureToken,
|
||||||
tooManyRequest,
|
tooManyRequest,
|
||||||
isUuid,
|
|
||||||
} from 'next-basics';
|
} from 'next-basics';
|
||||||
import debug from 'debug';
|
import debug from 'debug';
|
||||||
import cors from 'cors';
|
import cors from 'cors';
|
||||||
import redis from '@umami/redis-client';
|
import redis from '@umami/redis-client';
|
||||||
import { findSession } from 'lib/session';
|
import { findSession } from 'lib/session';
|
||||||
import { getAuthToken, parseShareToken } from 'lib/auth';
|
import { getAuthToken, parseShareToken } from 'lib/auth';
|
||||||
import { secret } from 'lib/crypto';
|
import { secret, isUuid } from 'lib/crypto';
|
||||||
import { ROLES } from 'lib/constants';
|
import { ROLES } from 'lib/constants';
|
||||||
import { getUser } from '../queries';
|
import { getUser } from '../queries';
|
||||||
import { NextApiRequestCollect } from 'pages/api/send';
|
import { NextApiRequestCollect } from 'pages/api/send';
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { secret } from 'lib/crypto';
|
import { secret, uuid, isUuid } from 'lib/crypto';
|
||||||
import { getClientInfo, getJsonBody } from 'lib/detect';
|
import { getClientInfo, getJsonBody } from 'lib/detect';
|
||||||
import { parseToken, uuid, isUuid } from 'next-basics';
|
import { parseToken } from 'next-basics';
|
||||||
import { CollectRequestBody, NextApiRequestCollect } from 'pages/api/send';
|
import { CollectRequestBody, NextApiRequestCollect } from 'pages/api/send';
|
||||||
import { createSession } from 'queries';
|
import { createSession } from 'queries';
|
||||||
import cache from './cache';
|
import cache from './cache';
|
||||||
|
|
|
||||||
|
|
@ -107,6 +107,7 @@
|
||||||
"semver": "^7.5.2",
|
"semver": "^7.5.2",
|
||||||
"thenby": "^1.3.4",
|
"thenby": "^1.3.4",
|
||||||
"timezone-support": "^2.0.2",
|
"timezone-support": "^2.0.2",
|
||||||
|
"uuid": "^9.0.0",
|
||||||
"yup": "^0.32.11",
|
"yup": "^0.32.11",
|
||||||
"zustand": "^4.3.8"
|
"zustand": "^4.3.8"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Team } from '@prisma/client';
|
import { Team } from '@prisma/client';
|
||||||
import { NextApiRequestQueryBody } from 'lib/types';
|
import { NextApiRequestQueryBody } from 'lib/types';
|
||||||
import { canCreateTeam } from 'lib/auth';
|
import { canCreateTeam } from 'lib/auth';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { useAuth } from 'lib/middleware';
|
import { useAuth } from 'lib/middleware';
|
||||||
import { NextApiResponse } from 'next';
|
import { NextApiResponse } from 'next';
|
||||||
import { getRandomChars, methodNotAllowed, ok, unauthorized } from 'next-basics';
|
import { getRandomChars, methodNotAllowed, ok, unauthorized } from 'next-basics';
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { canCreateUser, canViewUsers } from 'lib/auth';
|
import { canCreateUser, canViewUsers } from 'lib/auth';
|
||||||
import { ROLES } from 'lib/constants';
|
import { ROLES } from 'lib/constants';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { useAuth } from 'lib/middleware';
|
import { useAuth } from 'lib/middleware';
|
||||||
import { NextApiRequestQueryBody, Role, User } from 'lib/types';
|
import { NextApiRequestQueryBody, Role, User } from 'lib/types';
|
||||||
import { NextApiResponse } from 'next';
|
import { NextApiResponse } from 'next';
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import { canCreateWebsite } from 'lib/auth';
|
import { canCreateWebsite } from 'lib/auth';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { useAuth, useCors } from 'lib/middleware';
|
import { useAuth, useCors } from 'lib/middleware';
|
||||||
import { NextApiRequestQueryBody } from 'lib/types';
|
import { NextApiRequestQueryBody } from 'lib/types';
|
||||||
import { NextApiResponse } from 'next';
|
import { NextApiResponse } from 'next';
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { Prisma, Team, TeamWebsite } from '@prisma/client';
|
import { Prisma, Team } from '@prisma/client';
|
||||||
import prisma from 'lib/prisma';
|
import prisma from 'lib/prisma';
|
||||||
import { ROLES } from 'lib/constants';
|
import { ROLES } from 'lib/constants';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
|
|
||||||
export async function getTeam(where: Prisma.TeamWhereInput): Promise<Team> {
|
export async function getTeam(where: Prisma.TeamWhereInput): Promise<Team> {
|
||||||
return prisma.client.team.findFirst({
|
return prisma.client.team.findFirst({
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import { Prisma, TeamUser } from '@prisma/client';
|
import { Prisma, TeamUser } from '@prisma/client';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import prisma from 'lib/prisma';
|
import prisma from 'lib/prisma';
|
||||||
|
|
||||||
export async function getTeamUserById(teamUserId: string): Promise<TeamUser> {
|
export async function getTeamUserById(teamUserId: string): Promise<TeamUser> {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Prisma, Team, TeamUser, TeamWebsite, Website } from '@prisma/client';
|
import { Prisma, Team, TeamUser, TeamWebsite, Website } from '@prisma/client';
|
||||||
import { ROLES } from 'lib/constants';
|
import { ROLES } from 'lib/constants';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import prisma from 'lib/prisma';
|
import prisma from 'lib/prisma';
|
||||||
|
|
||||||
export async function getTeamWebsite(
|
export async function getTeamWebsite(
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Prisma } from '@prisma/client';
|
import { Prisma } from '@prisma/client';
|
||||||
import { DATA_TYPE } from 'lib/constants';
|
import { DATA_TYPE } from 'lib/constants';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { CLICKHOUSE, PRISMA, runQuery } from 'lib/db';
|
import { CLICKHOUSE, PRISMA, runQuery } from 'lib/db';
|
||||||
import { flattenJSON } from 'lib/dynamicData';
|
import { flattenJSON } from 'lib/dynamicData';
|
||||||
import kafka from 'lib/kafka';
|
import kafka from 'lib/kafka';
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { EVENT_NAME_LENGTH, URL_LENGTH, EVENT_TYPE } from 'lib/constants';
|
||||||
import { CLICKHOUSE, PRISMA, runQuery } from 'lib/db';
|
import { CLICKHOUSE, PRISMA, runQuery } from 'lib/db';
|
||||||
import kafka from 'lib/kafka';
|
import kafka from 'lib/kafka';
|
||||||
import prisma from 'lib/prisma';
|
import prisma from 'lib/prisma';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { saveEventData } from 'queries/analytics/eventData/saveEventData';
|
import { saveEventData } from 'queries/analytics/eventData/saveEventData';
|
||||||
|
|
||||||
export async function saveEvent(args: {
|
export async function saveEvent(args: {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import { DATA_TYPE } from 'lib/constants';
|
import { DATA_TYPE } from 'lib/constants';
|
||||||
import { uuid } from 'next-basics';
|
import { uuid } from 'lib/crypto';
|
||||||
import { flattenJSON } from 'lib/dynamicData';
|
import { flattenJSON } from 'lib/dynamicData';
|
||||||
import prisma from 'lib/prisma';
|
import prisma from 'lib/prisma';
|
||||||
import { DynamicData } from 'lib/types';
|
import { DynamicData } from 'lib/types';
|
||||||
|
|
|
||||||
|
|
@ -9191,6 +9191,11 @@ uuid@^8.3.2:
|
||||||
resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz"
|
resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz"
|
||||||
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
|
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
|
||||||
|
|
||||||
|
uuid@^9.0.0:
|
||||||
|
version "9.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5"
|
||||||
|
integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
|
||||||
|
|
||||||
v8-compile-cache-lib@^3.0.1:
|
v8-compile-cache-lib@^3.0.1:
|
||||||
version "3.0.1"
|
version "3.0.1"
|
||||||
resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz"
|
resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue