refactor(private-zoom): rename full feature surface
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import { z } from "zod";
|
||||
|
||||
import {
|
||||
arrayOrEmpty,
|
||||
booleanOrFalse,
|
||||
numberOrZero,
|
||||
stringOrEmpty,
|
||||
} from "../../nullable-defaults";
|
||||
import { PrivateAlbumImageSchema } from "../private_album";
|
||||
|
||||
export const PrivateAlbumUnlockReasonSchema = z.enum([
|
||||
"ok",
|
||||
"already_unlocked",
|
||||
"insufficient_credits",
|
||||
"cost_changed",
|
||||
"unlock_in_progress",
|
||||
"deduct_failed",
|
||||
"persist_failed_refunded",
|
||||
"not_found",
|
||||
]);
|
||||
|
||||
export const PrivateAlbumUnlockResponseSchema = z
|
||||
.object({
|
||||
albumId: stringOrEmpty,
|
||||
locked: booleanOrFalse,
|
||||
unlocked: booleanOrFalse,
|
||||
reason: PrivateAlbumUnlockReasonSchema.or(stringOrEmpty),
|
||||
unlockCost: numberOrZero,
|
||||
requiredCredits: numberOrZero,
|
||||
creditBalance: numberOrZero,
|
||||
shortfallCredits: numberOrZero,
|
||||
images: arrayOrEmpty(PrivateAlbumImageSchema),
|
||||
})
|
||||
.readonly();
|
||||
|
||||
export type PrivateAlbumUnlockReason = z.output<
|
||||
typeof PrivateAlbumUnlockReasonSchema
|
||||
>;
|
||||
export type PrivateAlbumUnlockResponseInput = z.input<
|
||||
typeof PrivateAlbumUnlockResponseSchema
|
||||
>;
|
||||
export type PrivateAlbumUnlockResponseData = z.output<
|
||||
typeof PrivateAlbumUnlockResponseSchema
|
||||
>;
|
||||
|
||||
export type PrivateAlbumUnlockResponse = PrivateAlbumUnlockResponseData;
|
||||
Reference in New Issue
Block a user