Combine /services and /platforms

This commit is contained in:
Sam Becker 2025-02-16 10:19:16 -06:00
parent e4c1836862
commit 12cf156af3
40 changed files with 37 additions and 37 deletions

View File

@ -15,7 +15,7 @@ import { HiOutlineCog } from 'react-icons/hi';
import ChecklistGroup from '@/components/ChecklistGroup';
import { ConfigChecklistStatus } from '../app-core/config';
import StatusIcon from '@/components/StatusIcon';
import { labelForStorage } from '@/services/storage';
import { labelForStorage } from '@/platforms/storage';
import { HiSparkles } from 'react-icons/hi';
import { testConnectionsAction } from '@/admin/actions';
import ErrorNote from '@/components/ErrorNote';

View File

@ -1,4 +1,4 @@
import { getStorageUploadUrlsNoStore } from '@/services/storage/cache';
import { getStorageUploadUrlsNoStore } from '@/platforms/storage/cache';
import {
getPhotosMetaCached,
getPhotosMostRecentUpdateCached,

View File

@ -12,7 +12,7 @@ import AdminPhotosTableInfinite from '@/admin/AdminPhotosTableInfinite';
import PathLoaderButton from '@/components/primitives/PathLoaderButton';
import { PATH_ADMIN_OUTDATED } from '@/app-core/paths';
import { Photo } from '@/photo';
import { StorageListResponse } from '@/services/storage';
import { StorageListResponse } from '@/platforms/storage';
import { useState } from 'react';
import { LiaBroomSolid } from 'react-icons/lia';
import AdminUploadsTable from './AdminUploadsTable';

View File

@ -1,6 +1,6 @@
'use client';
import { StorageListResponse } from '@/services/storage';
import { StorageListResponse } from '@/platforms/storage';
import AdminAddAllUploads from './AdminAddAllUploads';
import { useMemo, useState } from 'react';
import { Tags } from '@/tag';

View File

@ -2,7 +2,7 @@
import ImageSmall from '@/components/image/ImageSmall';
import Spinner from '@/components/Spinner';
import { getIdFromStorageUrl } from '@/services/storage';
import { getIdFromStorageUrl } from '@/platforms/storage';
import { clsx } from 'clsx/lite';
import { FaRegCircleCheck } from 'react-icons/fa6';
import { pathForAdminUploadUrl } from '@/app-core/paths';

View File

@ -1,10 +1,10 @@
'use server';
import { runAuthenticatedAdminServerAction } from '@/auth';
import { testKvConnection } from '@/services/kv';
import { testOpenAiConnection } from '@/services/openai';
import { testDatabaseConnection } from '@/services/postgres';
import { testStorageConnection } from '@/services/storage';
import { testKvConnection } from '@/platforms/kv';
import { testOpenAiConnection } from '@/platforms/openai';
import { testDatabaseConnection } from '@/platforms/postgres';
import { testStorageConnection } from '@/platforms/storage';
import { APP_CONFIGURATION } from '@/app-core/config';
const scanForError = (

View File

@ -1,7 +1,7 @@
import { Photo } from '@/photo';
import { absolutePathForPhoto } from './paths';
import { formatDateFromPostgresString } from '@/utility/date';
import { getNextImageUrlForRequest } from '@/services/next-image';
import { getNextImageUrlForRequest } from '@/platforms/next-image';
export const API_PHOTO_REQUEST_LIMIT = 40;

View File

@ -2,7 +2,7 @@ import {
AI_AUTO_GENERATED_FIELDS_DEFAULT,
parseAiAutoGeneratedFieldsString,
} from '@/photo/ai';
import type { StorageType } from '@/services/storage';
import type { StorageType } from '@/platforms/storage';
import { makeUrlAbsolute, shortenUrl } from '@/utility/url';
// HARD-CODED GLOBAL CONFIGURATION

View File

@ -8,7 +8,7 @@ import {
IS_PREVIEW,
} from '@/app-core/config';
import { blurImageFromUrl, resizeImageFromUrl } from '@/photo/server';
import { getNextImageUrlForManipulation } from '@/services/next-image';
import { getNextImageUrlForManipulation } from '@/platforms/next-image';
export default async function PhotoEditPage({
params,

View File

@ -1,4 +1,4 @@
import { getStoragePhotoUrlsNoStore } from '@/services/storage/cache';
import { getStoragePhotoUrlsNoStore } from '@/platforms/storage/cache';
import { getPhotos } from '@/photo/db/query';
import { getPhotosMetaCached } from '@/photo/cache';
import { OUTDATED_THRESHOLD } from '@/photo';

View File

@ -1,4 +1,4 @@
import { getStorageUploadUrlsNoStore } from '@/services/storage/cache';
import { getStorageUploadUrlsNoStore } from '@/platforms/storage/cache';
import SiteGrid from '@/components/SiteGrid';
import { getUniqueTagsCached } from '@/photo/cache';
import AdminUploadsClient from '@/admin/AdminUploadsClient';

View File

@ -2,11 +2,11 @@ import { auth } from '@/auth';
import {
awsS3Client,
awsS3PutObjectCommandForKey,
} from '@/services/storage/aws-s3';
} from '@/platforms/storage/aws-s3';
import {
cloudflareR2Client,
cloudflareR2PutObjectCommandForKey,
} from '@/services/storage/cloudflare-r2';
} from '@/platforms/storage/cloudflare-r2';
import { CURRENT_STORAGE } from '@/app-core/config';
import { getSignedUrl } from '@aws-sdk/s3-request-presigner';

View File

@ -4,7 +4,7 @@ import {
ACCEPTED_PHOTO_FILE_TYPES,
MAX_PHOTO_UPLOAD_SIZE_IN_BYTES,
} from '@/photo';
import { isUploadPathnameValid } from '@/services/storage';
import { isUploadPathnameValid } from '@/platforms/storage';
import { handleUpload, type HandleUploadBody } from '@vercel/blob/client';
import { NextResponse } from 'next/server';

View File

@ -7,7 +7,7 @@ import exifr from 'exifr';
import { clsx } from 'clsx/lite';
import { ACCEPTED_PHOTO_FILE_TYPES } from '@/photo';
import { FiUploadCloud } from 'react-icons/fi';
import { MAX_IMAGE_SIZE } from '@/services/next-image';
import { MAX_IMAGE_SIZE } from '@/platforms/next-image';
import ProgressButton from './primitives/ProgressButton';
const INPUT_ID = 'file';

View File

@ -9,7 +9,7 @@ import {
isCameraApple,
} from '@/camera';
import { IoMdCamera } from 'react-icons/io';
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
import { AiFillApple } from 'react-icons/ai';
export default function CameraImageResponse({

View File

@ -8,7 +8,7 @@ import {
import PhotoFilmSimulationIcon from
'@/simulation/PhotoFilmSimulationIcon';
import { FilmSimulation } from '@/simulation';
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
export default function FilmSimulationImageResponse({
simulation,

View File

@ -2,7 +2,7 @@ import type { Photo } from '../photo';
import ImageCaption from './components/ImageCaption';
import ImagePhotoGrid from './components/ImagePhotoGrid';
import ImageContainer from './components/ImageContainer';
import type { NextImageSize } from '@/services/next-image';
import type { NextImageSize } from '@/platforms/next-image';
import { TbCone } from 'react-icons/tb';
import { formatFocalLength } from '@/focal';

View File

@ -3,7 +3,7 @@ import { Photo } from '../photo';
import ImageCaption from './components/ImageCaption';
import ImageContainer from './components/ImageContainer';
import ImagePhotoGrid from './components/ImagePhotoGrid';
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
export default function HomeImageResponse({
photos,

View File

@ -4,7 +4,7 @@ import ImageCaption from './components/ImageCaption';
import ImagePhotoGrid from './components/ImagePhotoGrid';
import ImageContainer from './components/ImageContainer';
import { OG_TEXT_BOTTOM_ALIGNMENT } from '@/app-core/config';
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
import { cameraFromPhoto, formatCameraText } from '@/camera';
export default function PhotoImageResponse({

View File

@ -3,7 +3,7 @@ import { FaStar, FaTag } from 'react-icons/fa';
import ImageCaption from './components/ImageCaption';
import ImagePhotoGrid from './components/ImagePhotoGrid';
import ImageContainer from './components/ImageContainer';
import type { NextImageSize } from '@/services/next-image';
import type { NextImageSize } from '@/platforms/next-image';
import { formatTag, isTagFavs } from '@/tag';
export default function TagImageResponse({

View File

@ -2,7 +2,7 @@ import { Photo } from '../photo';
import IconFeed from '@/app-core/IconFeed';
import IconGrid from '@/app-core/IconGrid';
import ImagePhotoGrid from './components/ImagePhotoGrid';
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
export default function TemplateImageResponse({
photos,

View File

@ -4,7 +4,7 @@ import { Photo } from '@/photo';
import {
NextImageSize,
getNextImageUrlForRequest,
} from '@/services/next-image';
} from '@/platforms/next-image';
import { IS_PREVIEW } from '@/app-core/config';
export default function ImagePhotoGrid({

View File

@ -1,4 +1,4 @@
import { NextImageSize } from '@/services/next-image';
import { NextImageSize } from '@/platforms/next-image';
import { getDimensionsFromSize } from '@/utility/size';
export const MAX_PHOTOS_TO_SHOW_OG = 12;

View File

@ -1,7 +1,7 @@
'use client';
import { useState } from 'react';
import { uploadPhotoFromClient } from '@/services/storage';
import { uploadPhotoFromClient } from '@/platforms/storage';
import { useRouter } from 'next/navigation';
import { PATH_ADMIN_UPLOADS, pathForAdminUploadUrl } from '@/app-core/paths';
import ImageInput from '../components/ImageInput';

View File

@ -18,7 +18,7 @@ import {
convertPhotoToFormData,
} from './form';
import { redirect } from 'next/navigation';
import { deleteFile } from '@/services/storage';
import { deleteFile } from '@/platforms/storage';
import {
getPhotosCached,
getPhotosMetaCached,
@ -39,7 +39,7 @@ import { TAG_FAVS, isTagFavs } from '@/tag';
import { convertPhotoToPhotoDbInsert, Photo } from '.';
import { runAuthenticatedAdminServerAction } from '@/auth';
import { AiImageQuery, getAiImageQuery } from './ai';
import { streamOpenAiImageQuery } from '@/services/openai';
import { streamOpenAiImageQuery } from '@/platforms/openai';
import {
AI_TEXT_AUTO_GENERATED_FIELDS,
AI_TEXT_GENERATION_ENABLED,

View File

@ -1,4 +1,4 @@
import { generateOpenAiImageQuery } from '@/services/openai';
import { generateOpenAiImageQuery } from '@/platforms/openai';
import {
AiAutoGeneratedField,
getAiImageQuery,

View File

@ -2,7 +2,7 @@ import {
sql,
query,
convertArrayToPostgresString,
} from '@/services/postgres';
} from '@/platforms/postgres';
import {
PhotoDb,
PhotoDbInsert,

View File

@ -26,7 +26,7 @@ import Spinner from '@/components/Spinner';
import usePreventNavigation from '@/utility/usePreventNavigation';
import { useAppState } from '@/state/AppState';
import UpdateBlurDataButton from '../UpdateBlurDataButton';
import { getNextImageUrlForManipulation } from '@/services/next-image';
import { getNextImageUrlForManipulation } from '@/platforms/next-image';
import { BLUR_ENABLED, IS_PREVIEW } from '@/app-core/config';
import { PhotoDbInsert } from '..';
import ErrorNote from '@/components/ErrorNote';

View File

@ -1,7 +1,7 @@
import { Camera } from '@/camera';
import { formatFocalLength } from '@/focal';
import { Lens } from '@/lens';
import { getNextImageUrlForRequest } from '@/services/next-image';
import { getNextImageUrlForRequest } from '@/platforms/next-image';
import { FilmSimulation } from '@/simulation';
import {
HIGH_DENSITY_GRID,

View File

@ -1,7 +1,7 @@
import {
getExtensionFromStorageUrl,
getIdFromStorageUrl,
} from '@/services/storage';
} from '@/platforms/storage';
import { convertExifToFormData } from '@/photo/form';
import {
getFujifilmSimulationFromMakerNote,

View File

@ -5,7 +5,7 @@ import {
getExtensionFromStorageUrl,
moveFile,
putFile,
} from '@/services/storage';
} from '@/platforms/storage';
import { removeGpsData } from './server';
export const convertUploadToPhoto = async ({

View File

@ -1,5 +1,5 @@
import { unstable_noStore } from 'next/cache';
import { getStoragePhotoUrls, getStorageUploadUrls } from '@/services/storage';
import { getStoragePhotoUrls, getStorageUploadUrls } from '@/platforms/storage';
export const getStorageUploadUrlsNoStore: typeof getStorageUploadUrls =
(...args) => {