target-supabase-sdk 0.2.18 → 0.2.19
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/README.md +28 -0
- package/dist/browser.d.ts +2 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -1
- package/dist/chunks/{task-queue-DufG7PlX.js → task-queue-CUa40Vb5.js} +117 -2
- package/dist/chunks/task-queue-CUa40Vb5.js.map +1 -0
- package/dist/node.d.ts +2 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +251 -10
- package/dist/node.js.map +1 -1
- package/dist/shared/feed/feed.build.d.ts +33 -0
- package/dist/shared/feed/feed.build.d.ts.map +1 -0
- package/dist/shared/feed/feed.interface.d.ts +35 -0
- package/dist/shared/feed/feed.interface.d.ts.map +1 -0
- package/dist/shared/feed/feed.name.d.ts +8 -0
- package/dist/shared/feed/feed.name.d.ts.map +1 -0
- package/dist/shared/feed/feed.query.d.ts +8 -0
- package/dist/shared/feed/feed.query.d.ts.map +1 -0
- package/dist/shared/feed/index.d.ts +13 -0
- package/dist/shared/feed/index.d.ts.map +1 -0
- package/dist/shared/feed/node/feed.access.d.ts +34 -0
- package/dist/shared/feed/node/feed.access.d.ts.map +1 -0
- package/dist/shared/feed/node/feed.service.d.ts +23 -0
- package/dist/shared/feed/node/feed.service.d.ts.map +1 -0
- package/dist/shared/feed/node/index.d.ts +11 -0
- package/dist/shared/feed/node/index.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/browser.ts +8 -1
- package/src/node.ts +14 -0
- package/src/shared/feed/README.md +163 -0
- package/src/shared/feed/feed.build.ts +101 -0
- package/src/shared/feed/feed.interface.ts +50 -0
- package/src/shared/feed/feed.name.ts +20 -0
- package/src/shared/feed/feed.query.ts +13 -0
- package/src/shared/feed/index.ts +13 -0
- package/src/shared/feed/node/feed.access.ts +134 -0
- package/src/shared/feed/node/feed.service.ts +183 -0
- package/src/shared/feed/node/index.ts +11 -0
- package/dist/chunks/task-queue-DufG7PlX.js.map +0 -1
package/README.md
CHANGED
|
@@ -266,6 +266,34 @@ await registerMediaLink({
|
|
|
266
266
|
|
|
267
267
|
Details: `src/shared/media/README.md` and `.cursor/skills/media-link/SKILL.md`.
|
|
268
268
|
|
|
269
|
+
### Feed Links (`feed.image` / `feed.audio` / `feed.video` / `feed.image-list`)
|
|
270
|
+
|
|
271
|
+
Convention on `Link` (same `category=link`): `value === details.loaderKey`. Platform key `name = {platformName}.{feedKey}`. System lifecycle tags (`.public`, `.local`, `.oss`) use a leading dot. Draft on the default entry; **ingest** `.public` → `.local`/`.oss` on `/node` via `registerFeed` (locator validation + optimistic lock).
|
|
272
|
+
|
|
273
|
+
```typescript
|
|
274
|
+
import { buildFeedLinkDraft } from "target-supabase-sdk";
|
|
275
|
+
import { registerFeed } from "target-supabase-sdk/node";
|
|
276
|
+
|
|
277
|
+
const draft = buildFeedLinkDraft({
|
|
278
|
+
value: "feed.video",
|
|
279
|
+
platformName: "bilibili",
|
|
280
|
+
feedKey: "12345",
|
|
281
|
+
source: ".public",
|
|
282
|
+
locator: "https://example.com/feed/12345",
|
|
283
|
+
tagList: ["creator-x"],
|
|
284
|
+
});
|
|
285
|
+
|
|
286
|
+
await registerFeed({
|
|
287
|
+
id: feedRowId,
|
|
288
|
+
source: ".local",
|
|
289
|
+
storageProvider: process.env.LOCAL_STORAGE_PROVIDER!,
|
|
290
|
+
locator: "D:\\\\data\\\\bilibili.12345.mp4",
|
|
291
|
+
localStorageProvider: process.env.LOCAL_STORAGE_PROVIDER!,
|
|
292
|
+
});
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
Details: `src/shared/feed/README.md` and `.cursor/skills/feed-link/SKILL.md`.
|
|
296
|
+
|
|
269
297
|
### PostgREST filter helpers (0.2.15+)
|
|
270
298
|
|
|
271
299
|
When using `supabase.client` directly (e.g. `ilike` search or `text[]` tag filters):
|
package/dist/browser.d.ts
CHANGED
|
@@ -40,6 +40,8 @@ export * from "./repo/repo.api";
|
|
|
40
40
|
export * from "./repo/repo.interface";
|
|
41
41
|
export type { Api, ApiDetails, AppendSystemRegistryEmptySlotsInput, AppendSystemRegistryEmptySlotsOutcome, ClaimRegistrySlotInput, GetApiPayload, GetServicePayload, PatchServiceRuntimeInput, PostApiPayload, PostServiceInstanceOptions, PostServicePayload, PostSystemRegistryConfigPayload, RegisterServiceInput, RegistrySlotGuardResult, RegistrySlotRuntimeState, ReleasedRegistrySlot, ReleaseSystemRegistrySlotsInput, ReleaseSystemRegistrySlotsOutcome, ResetSystemRegistryConfigPayload, Service, ServiceBootstrapResult, ServiceDetails, ServiceNodeSnapshot, ServiceRegistrySession, ServiceRuntime, ServiceSlot, SystemRegistrySeedSlot, TargetSystemRegistrySlotView, TargetSystemRegistryView, } from "./service/index";
|
|
42
42
|
export { ApiMethod, apiDetailsSchema, appendSystemRegistryEmptySlots, assertRegistrySlotAvailable, assertRegistrySlotOwner, buildEmptyServiceSlots, buildSystemRegistryConfigDetails, CategoryService, claimServiceRegistrySlot, createActiveServiceLifecycle, createClaimedRegistrySlotRuntimeState, DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, defaultL3ServiceDetails, EMPTY_REGISTRY_SLOT_RUNTIME_STATE, fieldDefinitionSchema, getApi, getApiSchema, getService, getServiceSchema, getTargetSystemRegistry, parseServiceSlot, parseServiceSlots, patchServiceRuntime, postApi, postApiSchema, postService, postServiceInstance, postServiceSchema, postSystemRegistryConfig, postSystemRegistryConfigSchema, registerService, registerServiceAtStartup, registrySlotRuntimePatchFromGuardResult, releaseSystemRegistrySlots, releaseSystemRegistrySlotsByServiceId, resetSystemRegistryConfig, resetSystemRegistryConfigSchema, resolveActiveRegistryServiceId, runRegistrySlotGuardCheck, ServiceLifecycleStatus, ServiceRegistryError, ServiceSlotStatus, schemaDefinitionSchema, serviceDetailsSchema, serviceLifecycleSchema, serviceNodeSnapshotSchema, serviceRuntimeSchema, systemRegistrySeedSlotSchema, TARGET_SYSTEM_REGISTRY_KEY, unregisterService, unregisterServiceAtShutdown, } from "./service/index";
|
|
43
|
+
export type { BuildFeedLinkDraftInput, FeedOriginal, FeedSource, FeedValue } from "./shared/feed";
|
|
44
|
+
export { buildFeedLinkDraft, buildFeedLinkName, FEED_VALUES, feedLinkDedupFilters, isFeedValue, } from "./shared/feed";
|
|
43
45
|
export type { FetchInitFactory, FetchRetryOptions } from "./shared/http/fetch-retry";
|
|
44
46
|
export { fetchBinaryWithRetry, fetchWithRetry, isRetryableHttpStatus, requestHasBody, } from "./shared/http/fetch-retry";
|
|
45
47
|
export type { CreateLoggerInput, DecodedLogBatch, FlatLogEntry, LogEntry, LoggerWithScope, LogScope, LogScopePatch, } from "./shared/log";
|
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
package/dist/browser.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction, b as CategoryLink, c as CategoryNode, d as CategoryParcel, e as CategoryRepo, f as CategoryService, g as CategoryTask, D as DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, E as EMPTY_REGISTRY_SLOT_RUNTIME_STATE, L as LINK_MANIFEST_VERSION, h as LIST_MANIFEST_VERSION, M as MEDIA_CONTENT_HASH_ALGORITHM, i as MEDIA_CONTENT_HASH_PREFIX_LENGTH, j as MEDIA_VALUES, N as NodeStatus, P as POST_TASK_DEFAULT_MAX_ATTEMPTS, k as ParcelManager, l as PostLinkValidator, R as ResultCode, S as ServiceLifecycleStatus, m as ServiceRegistryError, n as ServiceSlotStatus, T as TARGET_SYSTEM_REGISTRY_KEY, o as TASK_REPO_USAGE, p as TaskStatus, q as TaskStatusAction, r as apiDetailsSchema, s as appendSystemRegistryEmptySlots, t as assertRegistrySlotAvailable, u as assertRegistrySlotOwner, v as buildEmptyServiceSlots, w as
|
|
1
|
+
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction, b as CategoryLink, c as CategoryNode, d as CategoryParcel, e as CategoryRepo, f as CategoryService, g as CategoryTask, D as DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, E as EMPTY_REGISTRY_SLOT_RUNTIME_STATE, F as FEED_VALUES, L as LINK_MANIFEST_VERSION, h as LIST_MANIFEST_VERSION, M as MEDIA_CONTENT_HASH_ALGORITHM, i as MEDIA_CONTENT_HASH_PREFIX_LENGTH, j as MEDIA_VALUES, N as NodeStatus, P as POST_TASK_DEFAULT_MAX_ATTEMPTS, k as ParcelManager, l as PostLinkValidator, R as ResultCode, S as ServiceLifecycleStatus, m as ServiceRegistryError, n as ServiceSlotStatus, T as TARGET_SYSTEM_REGISTRY_KEY, o as TASK_REPO_USAGE, p as TaskStatus, q as TaskStatusAction, r as apiDetailsSchema, s as appendSystemRegistryEmptySlots, t as assertRegistrySlotAvailable, u as assertRegistrySlotOwner, v as buildEmptyServiceSlots, w as buildFeedLinkDraft, x as buildFeedLinkName, y as buildLinkTargetDraft, z as buildListTargetDraft, B as buildMediaLinkDraft, G as buildMediaNameFromLocator, H as buildSystemRegistryConfigDetails, I as claimServiceRegistrySlot, J as classifyNetworkError, K as countTasksByType, O as createActiveServiceLifecycle, Q as createClaimedRegistrySlotRuntimeState, U as createStorageProviderRegistry, V as createUploadTracker, W as decodeLogBatch, X as decodeLogBatchList, Y as defaultL3ServiceDetails, Z as deleteParcel, _ as deleteParcelSchema, $ as escapeIlikePattern, a0 as evaluateBusyNodeLiveness, a1 as feedLinkDedupFilters, a2 as fetchBinaryWithRetry, a3 as fetchWithRetry, a4 as fieldDefinitionSchema, a5 as flattenLogBatch, a6 as flattenLogBatches, a7 as formatNetworkError, a8 as getApi, a9 as getApiSchema, aa as getConfig, ab as getConfigSchema, ac as getExtraction, ad as getExtractionSchema, ae as getParcel, af as getParcelSchema, ag as getScanRemoteRepoValues, ah as getScanRemoteRepoValuesSchema, ai as getService, aj as getServiceSchema, ak as getTargetSystemRegistry, al as getValueAtPath, am as guessMediaMime, an as installChunkFetchRegistry, ao as isFeedValue, ap as isHttpUrl, aq as isLocalFilesystemPath, ar as isLogBatchList, as as isLogEntry, at as isMediaValue, au as isOpaqueChunkUrl, av as isRetryableHttpStatus, aw as linkTargetDraftBuildInputSchema, ax as mediaLinkDedupFilters, ay as parcelDetailsSchema, az as parseLogBatchMeta, aA as parseProviderPrefixedUrl, aB as parseServiceSlot, aC as parseServiceSlots, aD as patchChangeNodeStatus, aE as patchChangeNodeStatusSchema, aF as patchChangeTaskStatus, aG as patchChangeTaskStatusSchema, aH as patchClaimTask, aI as patchClaimTaskSchema, aJ as patchExtractionObjects, aK as patchExtractionObjectsSchema, aL as patchNodeHeartBeat, aM as patchNodeHeartBeatSchema, aN as patchServiceRuntime, aO as patchStopNode, aP as patchStopNodeSchema, aQ as patchTaskProgress, aR as patchTaskProgressSchema, aS as postApi, aT as postApiSchema, aU as postExtraction, aV as postExtractionSchema, aW as postLinkCreate, aX as postParcel, aY as postParcelSchema, aZ as postRegisterNode, a_ as postRegisterNodeSchema, a$ as postService, b0 as postServiceInstance, b1 as postServiceSchema, b2 as postSystemRegistryConfig, b3 as postSystemRegistryConfigSchema, b4 as postTask, b5 as postTaskSchema, b6 as postTaskWithRetry, b7 as publishParcel, b8 as registerProviderChunkResolver, b9 as registerService, ba as registerServiceAtStartup, bb as registrySlotRuntimePatchFromGuardResult, bc as releaseSystemRegistrySlots, bd as releaseSystemRegistrySlotsByServiceId, be as requestHasBody, bf as resetSystemRegistryConfig, bg as resetSystemRegistryConfigSchema, bh as resolveActiveRegistryServiceId, bi as resolveFetchUrl, bj as restoreParcel, bk as restoreParcelById, bl as runRegistrySlotGuardCheck, bm as sanitizeFileName, bn as sanitizeParcelFileName, bo as scanExtractionList, bp as scanExtractionListSchema, bq as schemaDefinitionSchema, br as serviceDetailsSchema, bs as serviceLifecycleSchema, bt as serviceNodeSnapshotSchema, bu as serviceRuntimeSchema, bv as sha256Hex, bw as summarizeTaskQueue, bx as systemRegistrySeedSlotSchema, by as toPostgrestTextArrayLiteral, bz as unregisterService, bA as unregisterServiceAtShutdown } from './chunks/task-queue-CUa40Vb5.js';
|
|
2
2
|
export { B as BaseValidator, C as CREATE_TARGET_ALREADY_EXISTS_MESSAGE, a as CategoryList, L as LOG_BATCH_LOADER_KEY, b as LOG_MIN_LEVEL_ENV_KEY, c as LOG_PERSIST_LOADER_KEY, d as LogLevel, M as MAX_POLL_TARGET_LIST_SIZE, e as MAX_TARGET_LIST_PAGE_SIZE, O as OPTIMISTIC_LOCK_ERROR_CODE, f as OPTIMISTIC_LOCK_FAILED_MESSAGE, P as PostListValidator, S as StatusCode, U as UPDATE_TARGET_NOT_FOUND_MESSAGE, g as createLogger, h as createTarget, i as deleteTarget, j as formatZodError, k as generateResponse, l as getPossibleTarget, m as getTarget, n as getTargetList, o as getTargetTotalCount, p as handleSupabaseError, q as isCreateTargetAlreadyExistsError, r as isDevEnvironment, s as isOptimisticLockError, t as isOptimisticLockResponse, u as logDev, v as logDevGroup, w as logManager, x as logMinLevelFromEnv, y as patchTarget, z as pollTargetList, A as postListCreate, D as postLogListCreate, E as postTarget, F as postTargetPayloadSchema, G as queryFilterSchema, H as resolveLogMinLevel, I as safeParseWithSchema, J as scanTargetList, K as supabase, N as targetDraftSchema, Q as updateTarget, R as updateTargetDetails, T as validateWith, V as validateWithSchema } from './chunks/list.api-BzbTJBsM.js';
|
|
3
3
|
import 'zod';
|
|
4
4
|
import 'lodash-es';
|
|
@@ -2535,6 +2535,121 @@ async function postServiceInstance(options) {
|
|
|
2535
2535
|
return result.data;
|
|
2536
2536
|
}
|
|
2537
2537
|
|
|
2538
|
+
/**
|
|
2539
|
+
* Feed Link protocol — Link rows with value/loaderKey in {@link FEED_VALUES}.
|
|
2540
|
+
* No separate Target category; category remains `link`.
|
|
2541
|
+
*/
|
|
2542
|
+
const FEED_VALUES = ["feed.image", "feed.audio", "feed.video", "feed.image-list"];
|
|
2543
|
+
/**
|
|
2544
|
+
* Feed lifecycle tier — exactly one must appear in `tagList` (via `buildFeedTagList`).
|
|
2545
|
+
*
|
|
2546
|
+
* Leading `.` marks **system** tags (distinct from user-defined `tagList` entries).
|
|
2547
|
+
*/
|
|
2548
|
+
const FEED_SOURCE_TAGS = [".public", ".local", ".oss"];
|
|
2549
|
+
/** `registerFeed` only transitions `.public` → `.local` or `.oss`. */
|
|
2550
|
+
const FEED_INGEST_SOURCES = [".local", ".oss"];
|
|
2551
|
+
function isFeedIngestSource(value) {
|
|
2552
|
+
return FEED_INGEST_SOURCES.includes(value);
|
|
2553
|
+
}
|
|
2554
|
+
function isFeedValue(value) {
|
|
2555
|
+
return FEED_VALUES.includes(value);
|
|
2556
|
+
}
|
|
2557
|
+
function isFeedSource(value) {
|
|
2558
|
+
return FEED_SOURCE_TAGS.includes(value);
|
|
2559
|
+
}
|
|
2560
|
+
|
|
2561
|
+
/** Normalize `platformName` so `Link.name` stays `{platform}.{feedKey}` with a single separator dot. */
|
|
2562
|
+
function sanitizeFeedPlatformName(platformName) {
|
|
2563
|
+
return platformName.trim().replaceAll(".", " ");
|
|
2564
|
+
}
|
|
2565
|
+
/**
|
|
2566
|
+
* Default dedup `Link.name` for feed Links: `{platformName}.{feedKey}`.
|
|
2567
|
+
* Dots in `platformName` are replaced with spaces before joining (see {@link sanitizeFeedPlatformName}).
|
|
2568
|
+
*/
|
|
2569
|
+
function buildFeedLinkName(platformName, feedKey) {
|
|
2570
|
+
const platform = sanitizeFeedPlatformName(platformName);
|
|
2571
|
+
const key = feedKey.trim();
|
|
2572
|
+
if (platform === "") {
|
|
2573
|
+
throw new Error("buildFeedLinkName: platformName is empty");
|
|
2574
|
+
}
|
|
2575
|
+
if (key === "") {
|
|
2576
|
+
throw new Error("buildFeedLinkName: feedKey is empty");
|
|
2577
|
+
}
|
|
2578
|
+
return `${platform}.${key}`;
|
|
2579
|
+
}
|
|
2580
|
+
|
|
2581
|
+
/** Trim entries and drop empties; `undefined` when input omitted. */
|
|
2582
|
+
function normalizeFeedTwinList(twinList) {
|
|
2583
|
+
if (twinList === undefined) {
|
|
2584
|
+
return undefined;
|
|
2585
|
+
}
|
|
2586
|
+
return twinList.map((entry) => entry.trim()).filter((entry) => entry !== "");
|
|
2587
|
+
}
|
|
2588
|
+
/** `original.storageProvider` from optional input and required `source` tier. */
|
|
2589
|
+
function resolveFeedOriginalStorageProvider(source, storageProvider) {
|
|
2590
|
+
const trimmed = storageProvider?.trim() ?? "";
|
|
2591
|
+
if (source === ".public") {
|
|
2592
|
+
if (trimmed !== "") {
|
|
2593
|
+
throw new Error("resolveFeedOriginalStorageProvider: storageProvider must be empty when source is .public");
|
|
2594
|
+
}
|
|
2595
|
+
return "";
|
|
2596
|
+
}
|
|
2597
|
+
if (trimmed === "") {
|
|
2598
|
+
throw new Error("resolveFeedOriginalStorageProvider: storageProvider is required when source is .local or .oss");
|
|
2599
|
+
}
|
|
2600
|
+
return trimmed;
|
|
2601
|
+
}
|
|
2602
|
+
/** Merge user tags with required `source`; strip any other feed source tags from user input. */
|
|
2603
|
+
function buildFeedTagList(source, tagList) {
|
|
2604
|
+
const sourceSet = new Set(FEED_SOURCE_TAGS);
|
|
2605
|
+
const user = tagList ?? [];
|
|
2606
|
+
const filtered = user.filter((tag) => !sourceSet.has(tag));
|
|
2607
|
+
return [...filtered, source];
|
|
2608
|
+
}
|
|
2609
|
+
/**
|
|
2610
|
+
* Assemble a feed {@link Link} draft (`category=link`, `loaderKey === value`).
|
|
2611
|
+
* Does not validate locator reachability or write to Supabase.
|
|
2612
|
+
*/
|
|
2613
|
+
function buildFeedLinkDraft(input) {
|
|
2614
|
+
if (!isFeedValue(input.value)) {
|
|
2615
|
+
throw new Error(`buildFeedLinkDraft: unsupported feed value: ${String(input.value)}`);
|
|
2616
|
+
}
|
|
2617
|
+
if (!isFeedSource(input.source)) {
|
|
2618
|
+
throw new Error(`buildFeedLinkDraft: unsupported feed source: ${String(input.source)}`);
|
|
2619
|
+
}
|
|
2620
|
+
const name = buildFeedLinkName(input.platformName, input.feedKey);
|
|
2621
|
+
const locator = input.locator.trim();
|
|
2622
|
+
if (locator === "") {
|
|
2623
|
+
throw new Error("buildFeedLinkDraft: locator is empty");
|
|
2624
|
+
}
|
|
2625
|
+
const twinList = normalizeFeedTwinList(input.twinList);
|
|
2626
|
+
const storageProvider = resolveFeedOriginalStorageProvider(input.source, input.storageProvider);
|
|
2627
|
+
const original = {
|
|
2628
|
+
storageProvider,
|
|
2629
|
+
locator,
|
|
2630
|
+
...(twinList !== undefined ? { twinList } : {}),
|
|
2631
|
+
};
|
|
2632
|
+
return buildLinkTargetDraft({
|
|
2633
|
+
name,
|
|
2634
|
+
value: input.value,
|
|
2635
|
+
description: input.description ?? "",
|
|
2636
|
+
preview: input.preview ?? "",
|
|
2637
|
+
loaderKey: input.value,
|
|
2638
|
+
tagList: buildFeedTagList(input.source, input.tagList),
|
|
2639
|
+
original,
|
|
2640
|
+
});
|
|
2641
|
+
}
|
|
2642
|
+
|
|
2643
|
+
/** Dedup key: `category=link` + `value` + `name` (matches register / find). */
|
|
2644
|
+
function feedLinkDedupFilters(input) {
|
|
2645
|
+
const name = input.name.trim();
|
|
2646
|
+
return [
|
|
2647
|
+
{ field: "category", operator: "eq", value: CategoryLink.LINK },
|
|
2648
|
+
{ field: "value", operator: "eq", value: input.value },
|
|
2649
|
+
{ field: "name", operator: "eq", value: name },
|
|
2650
|
+
];
|
|
2651
|
+
}
|
|
2652
|
+
|
|
2538
2653
|
const RETRYABLE_CAUSE_CODES = new Set([
|
|
2539
2654
|
"UND_ERR_CONNECT_TIMEOUT",
|
|
2540
2655
|
"UND_ERR_HEADERS_TIMEOUT",
|
|
@@ -3487,5 +3602,5 @@ function summarizeTaskQueue(tasks, taskType, statuses) {
|
|
|
3487
3602
|
return tasks.filter((task) => task.value === taskType && statuses.includes(task.details.status)).length;
|
|
3488
3603
|
}
|
|
3489
3604
|
|
|
3490
|
-
export {
|
|
3491
|
-
//# sourceMappingURL=task-queue-
|
|
3605
|
+
export { escapeIlikePattern as $, ApiMethod as A, buildMediaLinkDraft as B, CategoryConfig as C, DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS as D, EMPTY_REGISTRY_SLOT_RUNTIME_STATE as E, FEED_VALUES as F, buildMediaNameFromLocator as G, buildSystemRegistryConfigDetails as H, claimServiceRegistrySlot as I, classifyNetworkError as J, countTasksByType as K, LINK_MANIFEST_VERSION as L, MEDIA_CONTENT_HASH_ALGORITHM as M, NodeStatus as N, createActiveServiceLifecycle as O, POST_TASK_DEFAULT_MAX_ATTEMPTS as P, createClaimedRegistrySlotRuntimeState as Q, ResultCode as R, ServiceLifecycleStatus as S, TARGET_SYSTEM_REGISTRY_KEY as T, createStorageProviderRegistry as U, createUploadTracker as V, decodeLogBatch as W, decodeLogBatchList as X, defaultL3ServiceDetails as Y, deleteParcel as Z, deleteParcelSchema as _, CategoryExtraction as a, postService as a$, evaluateBusyNodeLiveness as a0, feedLinkDedupFilters as a1, fetchBinaryWithRetry as a2, fetchWithRetry as a3, fieldDefinitionSchema as a4, flattenLogBatch as a5, flattenLogBatches as a6, formatNetworkError as a7, getApi as a8, getApiSchema as a9, parseProviderPrefixedUrl as aA, parseServiceSlot as aB, parseServiceSlots as aC, patchChangeNodeStatus as aD, patchChangeNodeStatusSchema as aE, patchChangeTaskStatus as aF, patchChangeTaskStatusSchema as aG, patchClaimTask as aH, patchClaimTaskSchema as aI, patchExtractionObjects as aJ, patchExtractionObjectsSchema as aK, patchNodeHeartBeat as aL, patchNodeHeartBeatSchema as aM, patchServiceRuntime as aN, patchStopNode as aO, patchStopNodeSchema as aP, patchTaskProgress as aQ, patchTaskProgressSchema as aR, postApi as aS, postApiSchema as aT, postExtraction as aU, postExtractionSchema as aV, postLinkCreate as aW, postParcel as aX, postParcelSchema as aY, postRegisterNode as aZ, postRegisterNodeSchema as a_, getConfig as aa, getConfigSchema as ab, getExtraction as ac, getExtractionSchema as ad, getParcel as ae, getParcelSchema as af, getScanRemoteRepoValues as ag, getScanRemoteRepoValuesSchema as ah, getService as ai, getServiceSchema as aj, getTargetSystemRegistry as ak, getValueAtPath as al, guessMediaMime as am, installChunkFetchRegistry as an, isFeedValue as ao, isHttpUrl as ap, isLocalFilesystemPath as aq, isLogBatchList as ar, isLogEntry as as, isMediaValue as at, isOpaqueChunkUrl as au, isRetryableHttpStatus as av, linkTargetDraftBuildInputSchema as aw, mediaLinkDedupFilters as ax, parcelDetailsSchema as ay, parseLogBatchMeta as az, CategoryLink as b, postServiceInstance as b0, postServiceSchema as b1, postSystemRegistryConfig as b2, postSystemRegistryConfigSchema as b3, postTask as b4, postTaskSchema as b5, postTaskWithRetry as b6, publishParcel as b7, registerProviderChunkResolver as b8, registerService as b9, unregisterServiceAtShutdown as bA, getErrorMessage as bB, LOG_TOPIC_NODE as bC, isFeedIngestSource as bD, resolveFeedOriginalStorageProvider as bE, buildFeedTagList as bF, LOG_TOPIC_TASK as bG, CRITICAL_UNKNOWN_TASK_TRACE_ID as bH, toError as bI, createTaskRow as bJ, FEED_INGEST_SOURCES as bK, registerServiceAtStartup as ba, registrySlotRuntimePatchFromGuardResult as bb, releaseSystemRegistrySlots as bc, releaseSystemRegistrySlotsByServiceId as bd, requestHasBody as be, resetSystemRegistryConfig as bf, resetSystemRegistryConfigSchema as bg, resolveActiveRegistryServiceId as bh, resolveFetchUrl as bi, restoreParcel as bj, restoreParcelById as bk, runRegistrySlotGuardCheck as bl, sanitizeFileName as bm, sanitizeParcelFileName as bn, scanExtractionList as bo, scanExtractionListSchema as bp, schemaDefinitionSchema as bq, serviceDetailsSchema as br, serviceLifecycleSchema as bs, serviceNodeSnapshotSchema as bt, serviceRuntimeSchema as bu, sha256Hex as bv, summarizeTaskQueue as bw, systemRegistrySeedSlotSchema as bx, toPostgrestTextArrayLiteral as by, unregisterService as bz, CategoryNode as c, CategoryParcel as d, CategoryRepo as e, CategoryService as f, CategoryTask as g, LIST_MANIFEST_VERSION as h, MEDIA_CONTENT_HASH_PREFIX_LENGTH as i, MEDIA_VALUES as j, ParcelManager as k, PostLinkValidator as l, ServiceRegistryError as m, ServiceSlotStatus as n, TASK_REPO_USAGE as o, TaskStatus as p, TaskStatusAction as q, apiDetailsSchema as r, appendSystemRegistryEmptySlots as s, assertRegistrySlotAvailable as t, assertRegistrySlotOwner as u, buildEmptyServiceSlots as v, buildFeedLinkDraft as w, buildFeedLinkName as x, buildLinkTargetDraft as y, buildListTargetDraft as z };
|
|
3606
|
+
//# sourceMappingURL=task-queue-CUa40Vb5.js.map
|