@byte_fluffy/nexra-sdk 0.1.0-alpha.12 → 0.1.0-alpha.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog.js +1 -1
- package/dist/{chunk-QT5MXX6K.js → chunk-Z7RXRNVE.js} +1113 -135
- package/dist/index.d.ts +2 -2
- package/dist/index.js +47 -1
- package/dist/{types-CPMdhb6o.d.ts → types-5jsH7tBX.d.ts} +25 -0
- package/dist/types.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as AssetsClient, T as TasksClient, R as RunTaskOptions, a as RunResult, b as ApiErrorPayload, c as TaskResult } from './types-
|
|
2
|
-
export { d as AssetImportRequest, e as AssetInput, f as AssetReference, g as AssetUploadOptions, C as CreateTaskOptions, h as CreateTaskRequest, M as MEDIA_KINDS, i as MediaAsset, j as MediaAssetStatus, k as MediaKind, l as RequestDetails, m as TASK_STATUSES, n as Task, o as TaskCost, p as TaskError, q as TaskEvent, r as TaskEventType, s as TaskListParams, t as TaskPage, u as TaskProgress, v as TaskReceipt, w as TaskStatus, x as TaskTiming, y as TaskUsage, z as TaskWebhookConfig, B as TerminalTaskStatus, V as VerifyWebhookOptions, W as WaitTaskOptions, D as WatchTaskOptions, E as isTerminalTaskStatus, F as verifyWebhook } from './types-
|
|
1
|
+
import { A as AssetsClient, T as TasksClient, R as RunTaskOptions, a as RunResult, b as ApiErrorPayload, c as TaskResult } from './types-5jsH7tBX.js';
|
|
2
|
+
export { d as AssetImportRequest, e as AssetInput, f as AssetReference, g as AssetUploadOptions, C as CreateTaskOptions, h as CreateTaskRequest, M as MEDIA_KINDS, i as MediaAsset, j as MediaAssetStatus, k as MediaKind, l as RequestDetails, m as TASK_STATUSES, n as Task, o as TaskCost, p as TaskError, q as TaskEvent, r as TaskEventType, s as TaskListParams, t as TaskPage, u as TaskProgress, v as TaskReceipt, w as TaskStatus, x as TaskTiming, y as TaskUsage, z as TaskWebhookConfig, B as TerminalTaskStatus, V as VerifyWebhookOptions, W as WaitTaskOptions, D as WatchTaskOptions, E as isTerminalTaskStatus, F as verifyWebhook } from './types-5jsH7tBX.js';
|
|
3
3
|
import { H as HttpTransport, q as ModelSearchParams, r as CursorPage, T as TaskModelSummary, s as TaskModel, t as ModelSchema, u as NexraClientOptions, J as JsonValue } from './media-geometry-Ckr1-Mh3.js';
|
|
4
4
|
export { b as CreateNexraDisplayQuoteBatchRequest, C as CreateNexraQuoteRequest, F as FetchLike, v as JsonObject, w as JsonPrimitive, M as MediaGeometryField, g as MediaGeometryProjection, x as ModelCapabilitySummary, y as ModelDateVersion, z as ModelEndpointSummary, A as ModelModality, B as ModelResourceList, D as ModelResourceOption, h as NexraBillingCurrency, d as NexraCatalogRevision, c as NexraDisplayQuoteBatch, E as NexraDisplayQuoteBatchEntry, j as NexraModelOperation, e as NexraModelSpec, f as NexraModelSpecFilter, a as NexraQuote, k as NexraSalePrice, N as NexraSalePriceList, l as NexraSettlement, U as UnifiedMediaGeometry, m as applyMediaGeometry, n as decodeMediaGeometry, o as encodeMediaGeometry, p as projectMediaGeometry } from './media-geometry-Ckr1-Mh3.js';
|
|
5
5
|
import { CatalogClient } from './catalog.js';
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
projectMediaGeometry,
|
|
17
17
|
queryString,
|
|
18
18
|
sleep
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-Z7RXRNVE.js";
|
|
20
20
|
import {
|
|
21
21
|
ceilDecimal,
|
|
22
22
|
multiplyDecimal
|
|
@@ -58,6 +58,38 @@ var AssetsClient = class {
|
|
|
58
58
|
signal
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
|
+
certifyForSeedance(asset, request = {}, signal) {
|
|
62
|
+
const assetId = typeof asset === "string" ? asset : asset.id;
|
|
63
|
+
return this.transport.json(
|
|
64
|
+
`/assets/${encodeURIComponent(assetId)}/certifications/seedance`,
|
|
65
|
+
{
|
|
66
|
+
method: "POST",
|
|
67
|
+
...jsonBody(request),
|
|
68
|
+
signal
|
|
69
|
+
},
|
|
70
|
+
{ retryable: false }
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
getSeedanceCertification(asset, signal) {
|
|
74
|
+
const assetId = typeof asset === "string" ? asset : asset.id;
|
|
75
|
+
return this.transport.json(
|
|
76
|
+
`/assets/${encodeURIComponent(assetId)}/certifications/seedance`,
|
|
77
|
+
{ signal }
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
async waitForSeedanceCertification(asset, options = {}) {
|
|
81
|
+
const pollIntervalMs = positiveInteger(options.pollIntervalMs ?? 2e3, "pollIntervalMs");
|
|
82
|
+
const timeoutMs = positiveInteger(options.timeoutMs ?? 3e5, "timeoutMs");
|
|
83
|
+
const deadline = Date.now() + timeoutMs;
|
|
84
|
+
while (true) {
|
|
85
|
+
const certification = await this.getSeedanceCertification(asset, options.signal);
|
|
86
|
+
if (certification.status !== "processing") return certification;
|
|
87
|
+
if (Date.now() >= deadline) {
|
|
88
|
+
throw new Error("Timed out waiting for Seedance Asset certification");
|
|
89
|
+
}
|
|
90
|
+
await wait(Math.min(pollIntervalMs, Math.max(1, deadline - Date.now())), options.signal);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
61
93
|
download(asset, signal) {
|
|
62
94
|
const assetId = typeof asset === "string" ? asset : asset.id;
|
|
63
95
|
return this.transport.response(`/assets/${encodeURIComponent(assetId)}/content`, {
|
|
@@ -70,6 +102,20 @@ var AssetsClient = class {
|
|
|
70
102
|
return response.body;
|
|
71
103
|
}
|
|
72
104
|
};
|
|
105
|
+
function positiveInteger(value, name) {
|
|
106
|
+
if (!Number.isSafeInteger(value) || value < 1) throw new TypeError(`${name} must be a positive integer`);
|
|
107
|
+
return value;
|
|
108
|
+
}
|
|
109
|
+
async function wait(milliseconds, signal) {
|
|
110
|
+
if (signal?.aborted) throw signal.reason;
|
|
111
|
+
await new Promise((resolve, reject) => {
|
|
112
|
+
const timer = setTimeout(resolve, milliseconds);
|
|
113
|
+
signal?.addEventListener("abort", () => {
|
|
114
|
+
clearTimeout(timer);
|
|
115
|
+
reject(signal.reason);
|
|
116
|
+
}, { once: true });
|
|
117
|
+
});
|
|
118
|
+
}
|
|
73
119
|
function inferKind(mimeType) {
|
|
74
120
|
if (mimeType.startsWith("image/")) return "image";
|
|
75
121
|
if (mimeType.startsWith("video/")) return "video";
|
|
@@ -35,6 +35,28 @@ interface AssetImportRequest {
|
|
|
35
35
|
kind?: MediaKind;
|
|
36
36
|
name?: string;
|
|
37
37
|
}
|
|
38
|
+
type AssetCertificationProvider = "seedance";
|
|
39
|
+
type AssetCertificationStatus = "processing" | "ready" | "failed";
|
|
40
|
+
interface AssetCertification {
|
|
41
|
+
assetId: string;
|
|
42
|
+
provider: AssetCertificationProvider;
|
|
43
|
+
status: AssetCertificationStatus;
|
|
44
|
+
providerAssetId?: string;
|
|
45
|
+
assetUri?: string;
|
|
46
|
+
groupId?: string;
|
|
47
|
+
library: "general" | "liveness";
|
|
48
|
+
error?: string;
|
|
49
|
+
createdAt: string;
|
|
50
|
+
updatedAt: string;
|
|
51
|
+
}
|
|
52
|
+
interface AssetCertificationRequest {
|
|
53
|
+
library?: "general" | "liveness";
|
|
54
|
+
}
|
|
55
|
+
interface AssetCertificationWaitOptions {
|
|
56
|
+
pollIntervalMs?: number;
|
|
57
|
+
timeoutMs?: number;
|
|
58
|
+
signal?: AbortSignal;
|
|
59
|
+
}
|
|
38
60
|
|
|
39
61
|
interface ApiErrorPayload {
|
|
40
62
|
error: {
|
|
@@ -228,6 +250,9 @@ declare class AssetsClient {
|
|
|
228
250
|
upload(file: Blob, options?: AssetUploadOptions): Promise<MediaAsset>;
|
|
229
251
|
import(request: AssetImportRequest, signal?: AbortSignal): Promise<MediaAsset>;
|
|
230
252
|
get(assetId: string, signal?: AbortSignal): Promise<MediaAsset>;
|
|
253
|
+
certifyForSeedance(asset: MediaAsset | string, request?: AssetCertificationRequest, signal?: AbortSignal): Promise<AssetCertification>;
|
|
254
|
+
getSeedanceCertification(asset: MediaAsset | string, signal?: AbortSignal): Promise<AssetCertification>;
|
|
255
|
+
waitForSeedanceCertification(asset: MediaAsset | string, options?: AssetCertificationWaitOptions): Promise<AssetCertification>;
|
|
231
256
|
download(asset: MediaAsset | string, signal?: AbortSignal): Promise<Response>;
|
|
232
257
|
stream(asset: MediaAsset | string, signal?: AbortSignal): Promise<ReadableStream<Uint8Array>>;
|
|
233
258
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { b as ApiErrorPayload, d as AssetImportRequest, e as AssetInput, f as AssetReference, g as AssetUploadOptions, C as CreateTaskOptions, h as CreateTaskRequest, i as MediaAsset, j as MediaAssetStatus, k as MediaKind, l as RequestDetails, a as RunResult, R as RunTaskOptions, n as Task, o as TaskCost, p as TaskError, q as TaskEvent, r as TaskEventType, s as TaskListParams, t as TaskPage, u as TaskProgress, v as TaskReceipt, c as TaskResult, w as TaskStatus, x as TaskTiming, y as TaskUsage, z as TaskWebhookConfig, B as TerminalTaskStatus, V as VerifyWebhookOptions, W as WaitTaskOptions, D as WatchTaskOptions } from './types-
|
|
1
|
+
export { b as ApiErrorPayload, d as AssetImportRequest, e as AssetInput, f as AssetReference, g as AssetUploadOptions, C as CreateTaskOptions, h as CreateTaskRequest, i as MediaAsset, j as MediaAssetStatus, k as MediaKind, l as RequestDetails, a as RunResult, R as RunTaskOptions, n as Task, o as TaskCost, p as TaskError, q as TaskEvent, r as TaskEventType, s as TaskListParams, t as TaskPage, u as TaskProgress, v as TaskReceipt, c as TaskResult, w as TaskStatus, x as TaskTiming, y as TaskUsage, z as TaskWebhookConfig, B as TerminalTaskStatus, V as VerifyWebhookOptions, W as WaitTaskOptions, D as WatchTaskOptions } from './types-5jsH7tBX.js';
|
|
2
2
|
export { b as CreateNexraDisplayQuoteBatchRequest, C as CreateNexraQuoteRequest, r as CursorPage, F as FetchLike, v as JsonObject, w as JsonPrimitive, J as JsonValue, M as MediaGeometryField, g as MediaGeometryProjection, x as ModelCapabilitySummary, y as ModelDateVersion, z as ModelEndpointSummary, A as ModelModality, B as ModelResourceList, D as ModelResourceOption, t as ModelSchema, q as ModelSearchParams, h as NexraBillingCurrency, d as NexraCatalogRevision, u as NexraClientOptions, c as NexraDisplayQuoteBatch, E as NexraDisplayQuoteBatchEntry, j as NexraModelOperation, e as NexraModelSpec, f as NexraModelSpecFilter, a as NexraQuote, k as NexraSalePrice, N as NexraSalePriceList, l as NexraSettlement, s as TaskModel, T as TaskModelSummary, U as UnifiedMediaGeometry } from './media-geometry-Ckr1-Mh3.js';
|