Add the last three dependencies (needs api fix)

This commit is contained in:
Tanish Manku authored and bflatastic committed 2025-04-24 14:21:07 +07:00
1 parent 24f98f8c3b
commit e5627fd225
6 files changed
+87 -3

No files matched your search

+3
View File
@@ -1,3 +1,4 @@
export * from "./lib/enums/index.js";
export * from "./lib/AnalyticsApi.js";
export * from "./lib/BillingApi.js";
export * from "./lib/CommentsApi.js";
@@ -14,3 +15,5 @@ export * from "./lib/UserBookmarksApi.js";
export * from "./lib/UsersApi.js";
export * from "./lib/VideoApi.js";
export * from "./lib/WeightsApi.js";
export * from "./lib/GetCdnOrigin.js";
export * from "./lib/LibraryModalApi.js";
+45
View File
@@ -0,0 +1,45 @@
// import { GetFrontendEnvironment } from "~/Classes/GetFrontendEnvironment";
/**
* Return the CDN origin (scheme + host + optional port, but no path)
* See: https://web.dev/articles/url-parts
*
* TODO(bt,2025-02-10): Make this easier to configure in development
*/
// class CdnHostHelper {
// private static instance: CdnHostHelper;
// private readonly origin: string;
// public static getInstance(): CdnHostHelper {
// if (CdnHostHelper.instance !== undefined) {
// return CdnHostHelper.instance;
// }
// const isLocalDev = GetFrontendEnvironment().getIsLocalDev();
// let origin;
// if (isLocalDev) {
// //origin = 'https://pub-c8a4a5bdbdb048f286b77bdf9f786ff2.r2.dev';
// origin = "https://cdn-2.fakeyou.com";
// } else {
// origin = "https://cdn-2.fakeyou.com";
// }
// const instance = new CdnHostHelper(origin);
// CdnHostHelper.instance = instance;
// return instance;
// }
// public getOrigin(): string {
// return this.origin;
// }
// private constructor(origin: string) {
// this.origin = origin;
// }
// }
// TODO(bt,2025-02-10): Consolidate all of this logic.
export function GetCdnOrigin(): string {
// return CdnHostHelper.getInstance().getOrigin();
return "https://cdn-2.fakeyou.com";
}
@@ -0,0 +1,30 @@
import { MediaFilesApi } from "lib/MediaFilesApi.js";
import {
FilterMediaClasses,
FilterMediaType,
FilterEngineCategories,
} from "lib/enums/QueryFilters.js";
interface ListUserMediaQuery {
include_user_uploads?: boolean;
filter_media_classes?: FilterMediaClasses[];
filter_media_type?: FilterMediaType[];
filter_engine_categories?: FilterEngineCategories[];
page?: number;
limit?: number;
}
export class LibraryModalApi extends MediaFilesApi {
constructor() {
super();
}
public async listUserMediaFiles(query: ListUserMediaQuery) {
return await this.ListUserMediaFiles({
...query,
filter_media_classes: query.filter_media_classes,
filter_media_type: query.filter_media_type,
filter_engine_categories: query.filter_engine_categories,
});
}
}
+1
View File
@@ -0,0 +1 @@
export * from "./QueryFilters.js";
+3
View File
@@ -2,6 +2,9 @@
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"baseUrl": ".",
"paths": {
"lib/*": ["./src/lib/*"]
},
"rootDir": "src",
"outDir": "dist",
"tsBuildInfoFile": "dist/tsconfig.lib.tsbuildinfo",
@@ -7,9 +7,11 @@ import { Button } from "@storyteller/ui-button";
import { CloseButton } from "@storyteller/ui-close-button";
import { LoadingSpinner } from "@storyteller/ui-loading-spinner";
import React, { useState, useEffect, useCallback, useMemo } from "react";
import { LibraryModalApi } from "./LibraryModalApi";
import { FilterMediaClasses } from "../../../../enums";
import { GetCdnOrigin } from "~/api/GetCdnOrigin";
import {
GetCdnOrigin,
FilterMediaClasses,
LibraryModalApi,
} from "@storyteller/api";
import { twMerge } from "tailwind-merge";
export interface LibraryItem {