mirror of
https://github.com/CaramelFur/Picsur.git
synced 2025-10-26 06:56:06 +01:00
make shared work with nodenext
This commit is contained in:
@@ -1,8 +1,8 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { EApiKeySchema } from '../../entities/apikey.entity';
|
import { EApiKeySchema } from '../../entities/apikey.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsEntityID } from '../../validators/entity-id.validator';
|
import { IsEntityID } from '../../validators/entity-id.validator.js';
|
||||||
import { IsPosInt } from '../../validators/positive-int.validator';
|
import { IsPosInt } from '../../validators/positive-int.validator.js';
|
||||||
|
|
||||||
// ApiKeyInfo
|
// ApiKeyInfo
|
||||||
export const ApiKeyInfoRequestSchema = z.object({
|
export const ApiKeyInfoRequestSchema = z.object({
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { EImageSchema } from '../../entities/image.entity';
|
import { EImageSchema } from '../../entities/image.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsApiKey } from '../../validators/api-key.validator';
|
import { IsApiKey } from '../../validators/api-key.validator.js';
|
||||||
import { IsEntityID } from '../../validators/entity-id.validator';
|
import { IsEntityID } from '../../validators/entity-id.validator.js';
|
||||||
import { IsPosInt } from '../../validators/positive-int.validator';
|
import { IsPosInt } from '../../validators/positive-int.validator.js';
|
||||||
|
|
||||||
// Image upload
|
// Image upload
|
||||||
export const ImageUploadResponseSchema = EImageSchema.extend({
|
export const ImageUploadResponseSchema = EImageSchema.extend({
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { EImageSchema } from '../../entities/image.entity';
|
import { EImageSchema } from '../../entities/image.entity.js';
|
||||||
import { EUserSchema } from '../../entities/user.entity';
|
import { EUserSchema } from '../../entities/user.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { ParseBoolZ, ParseIntZ } from '../../util/parse-simple';
|
import { ParseBoolZ, ParseIntZ } from '../../util/parse-simple.js';
|
||||||
import { ImageEntryVariant } from '../image-entry-variant.enum';
|
import { ImageEntryVariant } from '../image-entry-variant.enum.js';
|
||||||
|
|
||||||
export const ImageRequestParamsSchema = z
|
export const ImageRequestParamsSchema = z
|
||||||
.object({
|
.object({
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { string, z } from 'zod';
|
import { string, z } from 'zod';
|
||||||
import { SemVerRegex } from '../../util/common-regex';
|
import { SemVerRegex } from '../../util/common-regex.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsEntityID } from '../../validators/entity-id.validator';
|
import { IsEntityID } from '../../validators/entity-id.validator.js';
|
||||||
import { IsStringList } from '../../validators/string-list.validator';
|
import { IsStringList } from '../../validators/string-list.validator.js';
|
||||||
import { TrackingStateSchema } from '../tracking-state.enum';
|
import { TrackingStateSchema } from '../tracking-state.enum.js';
|
||||||
|
|
||||||
export const InfoResponseSchema = z.object({
|
export const InfoResponseSchema = z.object({
|
||||||
production: z.boolean(),
|
production: z.boolean(),
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsPosInt } from '../../validators/positive-int.validator';
|
import { IsPosInt } from '../../validators/positive-int.validator.js';
|
||||||
import { IsPrefValue } from '../../validators/pref-value.validator';
|
import { IsPrefValue } from '../../validators/pref-value.validator.js';
|
||||||
import { DecodedPrefSchema } from '../preferences.dto';
|
import { DecodedPrefSchema } from '../preferences.dto.js';
|
||||||
|
|
||||||
// Get preference
|
// Get preference
|
||||||
// Request is done via url parameters
|
// Request is done via url parameters
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { ERoleSchema, SimpleRoleSchema } from '../../entities/role.entity';
|
import { ERoleSchema, SimpleRoleSchema } from '../../entities/role.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsPosInt } from '../../validators/positive-int.validator';
|
import { IsPosInt } from '../../validators/positive-int.validator.js';
|
||||||
import { IsRoleName } from '../../validators/role.validators';
|
import { IsRoleName } from '../../validators/role.validators.js';
|
||||||
import { IsStringList } from '../../validators/string-list.validator';
|
import { IsStringList } from '../../validators/string-list.validator.js';
|
||||||
import { Permission } from '../permissions.enum';
|
import { Permission } from '../permissions.enum.js';
|
||||||
|
|
||||||
// RoleInfo
|
// RoleInfo
|
||||||
export const RoleInfoRequestSchema = z.object({
|
export const RoleInfoRequestSchema = z.object({
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { EUserSchema, SimpleUserSchema } from '../../entities/user.entity';
|
import { EUserSchema, SimpleUserSchema } from '../../entities/user.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsPosInt } from '../../validators/positive-int.validator';
|
import { IsPosInt } from '../../validators/positive-int.validator.js';
|
||||||
import { IsStringList } from '../../validators/string-list.validator';
|
import { IsStringList } from '../../validators/string-list.validator.js';
|
||||||
import { EntityIDObjectSchema } from '../id-object.dto';
|
import { EntityIDObjectSchema } from '../id-object.dto.js';
|
||||||
|
|
||||||
// UserList
|
// UserList
|
||||||
export const UserListRequestSchema = z.object({
|
export const UserListRequestSchema = z.object({
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { EUserSchema } from '../../entities/user.entity';
|
import { EUserSchema } from '../../entities/user.entity.js';
|
||||||
import { createZodDto } from '../../util/create-zod-dto';
|
import { createZodDto } from '../../util/create-zod-dto.js';
|
||||||
import { IsStringList } from '../../validators/string-list.validator';
|
import { IsStringList } from '../../validators/string-list.validator.js';
|
||||||
import { IsPlainTextPwd, IsUsername } from '../../validators/user.validators';
|
import { IsPlainTextPwd, IsUsername } from '../../validators/user.validators.js';
|
||||||
|
|
||||||
// Api
|
// Api
|
||||||
const UserPassSchema = z.object({
|
const UserPassSchema = z.object({
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
|
|
||||||
export const EntityIDObjectSchema = z.object({
|
export const EntityIDObjectSchema = z.object({
|
||||||
id: IsEntityID(),
|
id: IsEntityID(),
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
|
|
||||||
export const JwtDataSchema = z.object({
|
export const JwtDataSchema = z.object({
|
||||||
uid: IsEntityID(),
|
uid: IsEntityID(),
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Fail, Failable, FT } from '../types/failable';
|
import { Fail, Failable, FT } from '../types/failable.js';
|
||||||
|
|
||||||
// Config
|
// Config
|
||||||
export enum ImageFileType {
|
export enum ImageFileType {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import tuple from '../types/tuple';
|
import tuple from '../types/tuple.js';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
import { IsPrefValue } from '../validators/pref-value.validator';
|
import { IsPrefValue } from '../validators/pref-value.validator.js';
|
||||||
|
|
||||||
// Variable value type
|
// Variable value type
|
||||||
export type PrefValueType = string | number | boolean;
|
export type PrefValueType = string | number | boolean;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { URLRegex } from '../util/common-regex';
|
import { URLRegex } from '../util/common-regex.js';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
import { IsValidMS } from '../validators/ms.validator';
|
import { IsValidMS } from '../validators/ms.validator.js';
|
||||||
import { IsPosInt } from '../validators/positive-int.validator';
|
import { IsPosInt } from '../validators/positive-int.validator.js';
|
||||||
import { PrefValueTypeStrings } from './preferences.dto';
|
import { PrefValueTypeStrings } from './preferences.dto.js';
|
||||||
|
|
||||||
// This enum is only here to make accessing the values easier, and type checking in the backend
|
// This enum is only here to make accessing the values easier, and type checking in the backend
|
||||||
export enum SysPreference {
|
export enum SysPreference {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { PrefValueTypeStrings } from './preferences.dto';
|
import { PrefValueTypeStrings } from './preferences.dto.js';
|
||||||
|
|
||||||
// This enum is only here to make accessing the values easier, and type checking in the backend
|
// This enum is only here to make accessing the values easier, and type checking in the backend
|
||||||
export enum UsrPreference {
|
export enum UsrPreference {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsApiKey } from '../validators/api-key.validator';
|
import { IsApiKey } from '../validators/api-key.validator.js';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
|
|
||||||
export const EApiKeySchema = z.object({
|
export const EApiKeySchema = z.object({
|
||||||
id: IsEntityID(),
|
id: IsEntityID(),
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
|
|
||||||
export const EImageSchema = z.object({
|
export const EImageSchema = z.object({
|
||||||
id: IsEntityID(),
|
id: IsEntityID(),
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
import { IsRoleName } from '../validators/role.validators';
|
import { IsRoleName } from '../validators/role.validators.js';
|
||||||
import { IsStringList } from '../validators/string-list.validator';
|
import { IsStringList } from '../validators/string-list.validator.js';
|
||||||
|
|
||||||
export const SimpleRoleSchema = z.object({
|
export const SimpleRoleSchema = z.object({
|
||||||
name: IsRoleName(),
|
name: IsRoleName(),
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { IsEntityID } from '../validators/entity-id.validator';
|
import { IsEntityID } from '../validators/entity-id.validator.js';
|
||||||
import { IsStringList } from '../validators/string-list.validator';
|
import { IsStringList } from '../validators/string-list.validator.js';
|
||||||
import { IsPlainTextPwd, IsUsername } from '../validators/user.validators';
|
import { IsPlainTextPwd, IsUsername } from '../validators/user.validators.js';
|
||||||
|
|
||||||
export const SimpleUserSchema = z.object({
|
export const SimpleUserSchema = z.object({
|
||||||
username: IsUsername(),
|
username: IsUsername(),
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ import {
|
|||||||
SupportedAnimFileTypes,
|
SupportedAnimFileTypes,
|
||||||
SupportedFileTypeCategory,
|
SupportedFileTypeCategory,
|
||||||
SupportedImageFileTypes,
|
SupportedImageFileTypes,
|
||||||
} from '../dto/mimes.dto';
|
} from '../dto/mimes.dto.js';
|
||||||
import { Fail, Failable, FT, HasFailed } from '../types/failable';
|
import { Fail, Failable, FT, HasFailed } from '../types/failable.js';
|
||||||
|
|
||||||
export function ParseFileType(filetype: string): Failable<FileType> {
|
export function ParseFileType(filetype: string): Failable<FileType> {
|
||||||
if (SupportedImageFileTypes.includes(filetype))
|
if (SupportedImageFileTypes.includes(filetype))
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { AlphaNumericRegex } from '../util/common-regex';
|
import { AlphaNumericRegex } from '../util/common-regex.js';
|
||||||
|
|
||||||
export const IsRoleName = () =>
|
export const IsRoleName = () =>
|
||||||
z.string().min(4).max(32).regex(AlphaNumericRegex);
|
z.string().min(4).max(32).regex(AlphaNumericRegex);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import { AlphaNumericRegex } from '../util/common-regex';
|
import { AlphaNumericRegex } from '../util/common-regex.js';
|
||||||
|
|
||||||
// Match this with user validators in frontend
|
// Match this with user validators in frontend
|
||||||
// (Frontend is not security focused, but it tells the user what is wrong)
|
// (Frontend is not security focused, but it tells the user what is wrong)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"extends": "../tsconfig.base.json",
|
"extends": "../tsconfig.base.json",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"target": "ES2022",
|
"target": "ES2022",
|
||||||
"module": "ES2022",
|
"module": "NodeNext",
|
||||||
"lib": ["ES2022", "DOM"],
|
"lib": ["ES2022", "DOM"],
|
||||||
|
|
||||||
"outDir": "./dist",
|
"outDir": "./dist",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"moduleResolution": "node",
|
"moduleResolution": "NodeNext",
|
||||||
|
|
||||||
"esModuleInterop": true,
|
"esModuleInterop": true,
|
||||||
"resolveJsonModule": true,
|
"resolveJsonModule": true,
|
||||||
|
|||||||
Reference in New Issue
Block a user