@happyvertical/smrt-content 0.53.5 → 0.54.0
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/chunks/{content-query-CNAloqNn.js → content-query-DazMSK7r.js} +4 -4
- package/dist/chunks/{content-query-CNAloqNn.js.map → content-query-DazMSK7r.js.map} +1 -1
- package/dist/chunks/{content-versions-B4oZ2a7b.js → content-versions-BtQX13XQ.js} +2 -2
- package/dist/chunks/{content-versions-B4oZ2a7b.js.map → content-versions-BtQX13XQ.js.map} +1 -1
- package/dist/chunks/{contents-DOaJGY-W.js → contents-GVIo0dF-.js} +207 -9
- package/dist/chunks/contents-GVIo0dF-.js.map +1 -0
- package/dist/content-feed-sync.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -155
- package/dist/index.js.map +1 -1
- package/dist/manifest.json +1 -1
- package/dist/safe-remote-url.d.ts +39 -0
- package/dist/safe-remote-url.d.ts.map +1 -1
- package/dist/server.js +1 -1
- package/dist/smrt-knowledge.json +3 -3
- package/package.json +16 -16
- package/dist/chunks/contents-DOaJGY-W.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as __exportAll } from "./chunks/rolldown-runtime-D7D4PA-g.js";
|
|
2
|
-
import { $ as parseContentReviewResponse, A as normalizeContentTransparency, B as getAcceptedContentReviewStatuses, C as resolveContentTenantReadScope, F as smrtContentReviewPrompt, G as getContentReviewProfile, H as getContentReviewKind, I as smrtContentThumbnailAIGeneratePrompt, J as getEffectiveContentGovernanceConfig, K as getContentReviewProfileKeys, L as buildContentGovernanceAssignmentKey, M as ContentReference, N as promptMessageOptions, O as getQueryRows, P as smrtContentApplyCorrectionPrompt, R as buildContentReviewPrompt, S as mergeContentQueryScope, T as ThumbnailGenerator, U as getContentReviewPolicies, V as getContentGovernanceConfig, W as getContentReviewPolicy, X as hasStaticContentGovernancePolicy, Y as getFallbackPolicyKind, Z as hasStaticContentGovernanceProfile, _ as assertContentQuerySchema, a as CONTENT_QUERY_IDENTITY_FIELD, at as isAssetAssociable, b as clearContentQuerySchemaCache, c as CONTENT_QUERY_MIN_RESULT_BYTES, d as DATA_QUERY_MAX_JSON_DEPTH, et as resetContentGovernanceConfig, f as DATA_QUERY_MAX_JSON_STRING_LENGTH, g as MAX_CONTENT_QUERY_OR_BRANCHES, h as DATA_QUERY_MAX_WARNING_LENGTH, i as CONTENT_QUERY_EXCLUDED_FIELD_IDS, it as ContentAsset, j as ContentReferences, k as isMissingTableError, l as DATA_QUERY_FORBIDDEN_JSON_KEYS, m as DATA_QUERY_MAX_WARNINGS, n as CONTENT_QUERY_DEFAULT_PAGE_LIMIT, nt as resolveEffectiveContentGovernance, o as CONTENT_QUERY_MAX_PAGE_LIMIT, ot as isMetadataAccessor, p as DATA_QUERY_MAX_STRING_LENGTH, q as getContentReviewRequirements, r as CONTENT_QUERY_DEFAULT_SORT, rt as ContentAssetCollection, s as CONTENT_QUERY_MAX_RESULT_BYTES, t as CONTENT_QUERY_CLASS_NAME, tt as resolveConfiguredContentGovernance, u as DATA_QUERY_MAX_JSON_CONTAINER_ITEMS, v as buildContentQuerySchema, w as Content, x as executeContentQuery, y as buildDataQuerySchemaForClass, z as configureContentGovernance } from "./chunks/content-query-
|
|
2
|
+
import { $ as parseContentReviewResponse, A as normalizeContentTransparency, B as getAcceptedContentReviewStatuses, C as resolveContentTenantReadScope, F as smrtContentReviewPrompt, G as getContentReviewProfile, H as getContentReviewKind, I as smrtContentThumbnailAIGeneratePrompt, J as getEffectiveContentGovernanceConfig, K as getContentReviewProfileKeys, L as buildContentGovernanceAssignmentKey, M as ContentReference, N as promptMessageOptions, O as getQueryRows, P as smrtContentApplyCorrectionPrompt, R as buildContentReviewPrompt, S as mergeContentQueryScope, T as ThumbnailGenerator, U as getContentReviewPolicies, V as getContentGovernanceConfig, W as getContentReviewPolicy, X as hasStaticContentGovernancePolicy, Y as getFallbackPolicyKind, Z as hasStaticContentGovernanceProfile, _ as assertContentQuerySchema, a as CONTENT_QUERY_IDENTITY_FIELD, at as isAssetAssociable, b as clearContentQuerySchemaCache, c as CONTENT_QUERY_MIN_RESULT_BYTES, d as DATA_QUERY_MAX_JSON_DEPTH, et as resetContentGovernanceConfig, f as DATA_QUERY_MAX_JSON_STRING_LENGTH, g as MAX_CONTENT_QUERY_OR_BRANCHES, h as DATA_QUERY_MAX_WARNING_LENGTH, i as CONTENT_QUERY_EXCLUDED_FIELD_IDS, it as ContentAsset, j as ContentReferences, k as isMissingTableError, l as DATA_QUERY_FORBIDDEN_JSON_KEYS, m as DATA_QUERY_MAX_WARNINGS, n as CONTENT_QUERY_DEFAULT_PAGE_LIMIT, nt as resolveEffectiveContentGovernance, o as CONTENT_QUERY_MAX_PAGE_LIMIT, ot as isMetadataAccessor, p as DATA_QUERY_MAX_STRING_LENGTH, q as getContentReviewRequirements, r as CONTENT_QUERY_DEFAULT_SORT, rt as ContentAssetCollection, s as CONTENT_QUERY_MAX_RESULT_BYTES, t as CONTENT_QUERY_CLASS_NAME, tt as resolveConfiguredContentGovernance, u as DATA_QUERY_MAX_JSON_CONTAINER_ITEMS, v as buildContentQuerySchema, w as Content, x as executeContentQuery, y as buildDataQuerySchemaForClass, z as configureContentGovernance } from "./chunks/content-query-DazMSK7r.js";
|
|
3
3
|
import { BODY_MAIN_IMAGE_ATTRIBUTE, BODY_THUMBNAIL_ATTRIBUTE, DEFAULT_CONTENT_BODY_FORMAT, THUMBNAIL_WIDE_ASPECT_RATIO, bodyHasImage, bodyHasThumbnail, bodyToEditorHtml, editorHtmlToBody, extractBodyImages, htmlToMarkdown, placeThumbnailInBody, removeThumbnailFromBody, renderContentBodyHtml, renderMarkdownToHtml, resolveBodyFormat, resolveBodyMainPicture, sanitizeHtml, setBodyMainImage, stripHtml, thumbnailPlacementForSize } from "./body-format.js";
|
|
4
4
|
import { r as ContentCorrection, t as ContentCorrectionCollection } from "./chunks/content-corrections-CKuY-MSv.js";
|
|
5
5
|
import { contentEditorAssistantContextToChatProps, createContentEditorAssistantContext, sanitizeContentEditorAssistantFieldUpdates } from "./content-editor-assistant.js";
|
|
6
|
-
import { r as
|
|
6
|
+
import { i as fetchSafeRemoteUrlInternal, r as fetchSafeRemoteUrl, t as Contents } from "./chunks/contents-GVIo0dF-.js";
|
|
7
7
|
import { r as ContentReview, t as ContentReviewCollection } from "./chunks/content-reviews-D6o0zK8s.js";
|
|
8
|
-
import { r as ContentVersion, t as ContentVersionCollection } from "./chunks/content-versions-
|
|
8
|
+
import { r as ContentVersion, t as ContentVersionCollection } from "./chunks/content-versions-BtQX13XQ.js";
|
|
9
9
|
import { evaluateContentPublishReadiness } from "./publish-readiness.js";
|
|
10
10
|
import { ObjectRegistry, SmrtCollection, SmrtObject, crossPackageRef, field, foreignKey, smrt } from "@happyvertical/smrt-core";
|
|
11
11
|
import { AssetCollection, AssetStatusCollection, AssetTypeCollection } from "@happyvertical/smrt-assets";
|
|
@@ -17,8 +17,6 @@ import { sendAgentReply } from "@happyvertical/smrt-chat/internal/agent-runtime"
|
|
|
17
17
|
import { AttachmentCollection, EmailCollection } from "@happyvertical/smrt-messages";
|
|
18
18
|
import { ProfileCollection, ProfileTypeCollection } from "@happyvertical/smrt-profiles";
|
|
19
19
|
import { randomUUID } from "node:crypto";
|
|
20
|
-
import { isIP } from "node:net";
|
|
21
|
-
import { Agent, fetch } from "undici";
|
|
22
20
|
import YAML from "yaml";
|
|
23
21
|
//#region src/content-chat-prompts.ts
|
|
24
22
|
var contentEditorSessionPrompt = definePrompt({
|
|
@@ -890,7 +888,7 @@ var ContentContribution = class extends SmrtObject {
|
|
|
890
888
|
return ContentContributorCollection.create(this.options);
|
|
891
889
|
}
|
|
892
890
|
async getContentsCollection() {
|
|
893
|
-
const { Contents } = await import("./chunks/contents-
|
|
891
|
+
const { Contents } = await import("./chunks/contents-GVIo0dF-.js").then((n) => n.n);
|
|
894
892
|
return Contents.create({ db: this.db });
|
|
895
893
|
}
|
|
896
894
|
async getAssetCollection() {
|
|
@@ -6347,16 +6345,6 @@ Mirror = __decorateClass$3([smrt({
|
|
|
6347
6345
|
})], Mirror);
|
|
6348
6346
|
//#endregion
|
|
6349
6347
|
//#region src/content-feed-sync.ts
|
|
6350
|
-
var DEFAULT_MAX_RESPONSE_BYTES = 2e6;
|
|
6351
|
-
var DEFAULT_FETCH_TIMEOUT_MS = 1e4;
|
|
6352
|
-
var MAX_FEED_REDIRECTS = 5;
|
|
6353
|
-
var REDIRECT_STATUSES = /* @__PURE__ */ new Set([
|
|
6354
|
-
301,
|
|
6355
|
-
302,
|
|
6356
|
-
303,
|
|
6357
|
-
307,
|
|
6358
|
-
308
|
|
6359
|
-
]);
|
|
6360
6348
|
var FALLBACK_MIRROR_META_TYPE = "@happyvertical/smrt-content:Mirror";
|
|
6361
6349
|
function getMirrorMetaType() {
|
|
6362
6350
|
return ObjectRegistry.getClassByConstructor(Mirror)?.qualifiedName ?? FALLBACK_MIRROR_META_TYPE;
|
|
@@ -6382,128 +6370,6 @@ function hashString(value) {
|
|
|
6382
6370
|
function createDedupeKey(source, item) {
|
|
6383
6371
|
return `feed:${source.id ?? source.feedUrl}:${item.guid || normalizeUrlIdentity(item.url)}`;
|
|
6384
6372
|
}
|
|
6385
|
-
async function validateFeedFetchUrl(feedUrl, options) {
|
|
6386
|
-
return validateSafeRemoteUrl(feedUrl, {
|
|
6387
|
-
allowPrivateNetworkHosts: options.allowPrivateNetworkHosts,
|
|
6388
|
-
resolveHostnameWhenPrivateAllowed: true,
|
|
6389
|
-
resolveHostname: options.resolveHostname
|
|
6390
|
-
});
|
|
6391
|
-
}
|
|
6392
|
-
function createTimeoutSignal(timeoutMs) {
|
|
6393
|
-
if (timeoutMs <= 0) return void 0;
|
|
6394
|
-
return AbortSignal.timeout(timeoutMs);
|
|
6395
|
-
}
|
|
6396
|
-
function createPinnedDispatcher(addresses) {
|
|
6397
|
-
const pinnedAddresses = addresses.map(({ address, family }) => {
|
|
6398
|
-
const resolvedFamily = family ?? isIP(address);
|
|
6399
|
-
if (resolvedFamily !== 4 && resolvedFamily !== 6) throw new Error("Remote URL resolved to an unrecognised network address");
|
|
6400
|
-
return {
|
|
6401
|
-
address,
|
|
6402
|
-
family: resolvedFamily
|
|
6403
|
-
};
|
|
6404
|
-
});
|
|
6405
|
-
return new Agent({ connect: { lookup: (_hostname, lookupOptions, callback) => {
|
|
6406
|
-
if (lookupOptions.all) {
|
|
6407
|
-
callback(null, pinnedAddresses);
|
|
6408
|
-
return;
|
|
6409
|
-
}
|
|
6410
|
-
const selected = pinnedAddresses.find(({ family }) => !lookupOptions.family || family === lookupOptions.family) ?? pinnedAddresses[0];
|
|
6411
|
-
callback(null, selected.address, selected.family);
|
|
6412
|
-
} } });
|
|
6413
|
-
}
|
|
6414
|
-
async function fetchValidatedFeedUrl(url, headers, options) {
|
|
6415
|
-
const init = {
|
|
6416
|
-
headers,
|
|
6417
|
-
redirect: "manual",
|
|
6418
|
-
signal: createTimeoutSignal(options.fetchTimeoutMs ?? DEFAULT_FETCH_TIMEOUT_MS)
|
|
6419
|
-
};
|
|
6420
|
-
if (options.fetch) return {
|
|
6421
|
-
response: await options.fetch(url.url, init),
|
|
6422
|
-
close: async () => {}
|
|
6423
|
-
};
|
|
6424
|
-
const dispatcher = createPinnedDispatcher(url.addresses);
|
|
6425
|
-
try {
|
|
6426
|
-
return {
|
|
6427
|
-
response: await fetch(url.url, {
|
|
6428
|
-
...init,
|
|
6429
|
-
dispatcher
|
|
6430
|
-
}),
|
|
6431
|
-
close: () => dispatcher.close()
|
|
6432
|
-
};
|
|
6433
|
-
} catch (error) {
|
|
6434
|
-
await dispatcher.close();
|
|
6435
|
-
throw error;
|
|
6436
|
-
}
|
|
6437
|
-
}
|
|
6438
|
-
async function closeFeedResponse({ response, close }) {
|
|
6439
|
-
try {
|
|
6440
|
-
if (response.body && !response.body.locked) await response.body.cancel();
|
|
6441
|
-
} catch {} finally {
|
|
6442
|
-
await close();
|
|
6443
|
-
}
|
|
6444
|
-
}
|
|
6445
|
-
async function fetchFeedWithRedirectGuard(startUrl, headers, options) {
|
|
6446
|
-
let current = startUrl;
|
|
6447
|
-
for (let hop = 0; hop <= MAX_FEED_REDIRECTS; hop += 1) {
|
|
6448
|
-
const result = await fetchValidatedFeedUrl(current, headers, options);
|
|
6449
|
-
const { response } = result;
|
|
6450
|
-
if (REDIRECT_STATUSES.has(response.status)) {
|
|
6451
|
-
const location = response.headers.get("location");
|
|
6452
|
-
if (!location) {
|
|
6453
|
-
await closeFeedResponse(result);
|
|
6454
|
-
throw new Error("Feed redirect response missing Location header");
|
|
6455
|
-
}
|
|
6456
|
-
try {
|
|
6457
|
-
current = await validateFeedFetchUrl(new URL(location, current.url).toString(), options);
|
|
6458
|
-
} finally {
|
|
6459
|
-
await closeFeedResponse(result);
|
|
6460
|
-
}
|
|
6461
|
-
continue;
|
|
6462
|
-
}
|
|
6463
|
-
return {
|
|
6464
|
-
...result,
|
|
6465
|
-
finalUrl: current.url
|
|
6466
|
-
};
|
|
6467
|
-
}
|
|
6468
|
-
throw new Error("Feed URL exceeded the maximum number of redirects");
|
|
6469
|
-
}
|
|
6470
|
-
async function readResponseText(response, maxBytes) {
|
|
6471
|
-
const contentLength = response.headers.get("content-length");
|
|
6472
|
-
if (contentLength && Number(contentLength) > maxBytes) throw new Error(`Feed response exceeds ${maxBytes} bytes`);
|
|
6473
|
-
if (!response.body) {
|
|
6474
|
-
const text = await response.text();
|
|
6475
|
-
if (new TextEncoder().encode(text).byteLength > maxBytes) throw new Error(`Feed response exceeds ${maxBytes} bytes`);
|
|
6476
|
-
return text;
|
|
6477
|
-
}
|
|
6478
|
-
const reader = response.body.getReader();
|
|
6479
|
-
const chunks = [];
|
|
6480
|
-
let totalBytes = 0;
|
|
6481
|
-
try {
|
|
6482
|
-
while (true) {
|
|
6483
|
-
const { done, value } = await reader.read();
|
|
6484
|
-
if (done) break;
|
|
6485
|
-
if (!value) continue;
|
|
6486
|
-
totalBytes += value.byteLength;
|
|
6487
|
-
if (totalBytes > maxBytes) {
|
|
6488
|
-
await reader.cancel();
|
|
6489
|
-
throw new Error(`Feed response exceeds ${maxBytes} bytes`);
|
|
6490
|
-
}
|
|
6491
|
-
chunks.push(value);
|
|
6492
|
-
}
|
|
6493
|
-
} catch (error) {
|
|
6494
|
-
await reader.cancel(error);
|
|
6495
|
-
throw error;
|
|
6496
|
-
} finally {
|
|
6497
|
-
reader.releaseLock();
|
|
6498
|
-
}
|
|
6499
|
-
const buffer = new Uint8Array(totalBytes);
|
|
6500
|
-
let offset = 0;
|
|
6501
|
-
for (const chunk of chunks) {
|
|
6502
|
-
buffer.set(chunk, offset);
|
|
6503
|
-
offset += chunk.byteLength;
|
|
6504
|
-
}
|
|
6505
|
-
return new TextDecoder().decode(buffer);
|
|
6506
|
-
}
|
|
6507
6373
|
async function findExistingMirror(contents, source, item, dedupeKey) {
|
|
6508
6374
|
const tenantWhere = source.tenantId ? "tenant_id = ?" : "tenant_id IS NULL";
|
|
6509
6375
|
const params = [getMirrorMetaType()];
|
|
@@ -6644,10 +6510,16 @@ async function syncContentFeedSource(source, options = {}) {
|
|
|
6644
6510
|
source.markFetchStarted(now);
|
|
6645
6511
|
await source.save();
|
|
6646
6512
|
try {
|
|
6647
|
-
const
|
|
6648
|
-
|
|
6513
|
+
const response = await fetchSafeRemoteUrlInternal(source.feedUrl, {
|
|
6514
|
+
allowHttp: true,
|
|
6515
|
+
allowPrivateNetworkHosts: options.allowPrivateNetworkHosts,
|
|
6516
|
+
fetchImpl: options.fetch,
|
|
6517
|
+
headers,
|
|
6518
|
+
maxBytes: options.maxResponseBytes,
|
|
6519
|
+
resolveHostname: options.resolveHostname,
|
|
6520
|
+
timeoutMs: options.fetchTimeoutMs
|
|
6521
|
+
});
|
|
6649
6522
|
if (response.status === 304) {
|
|
6650
|
-
await closeFeedResponse(fetchResult);
|
|
6651
6523
|
source.markFetchSucceeded(now);
|
|
6652
6524
|
await source.save();
|
|
6653
6525
|
return {
|
|
@@ -6659,17 +6531,8 @@ async function syncContentFeedSource(source, options = {}) {
|
|
|
6659
6531
|
skipped: 0
|
|
6660
6532
|
};
|
|
6661
6533
|
}
|
|
6662
|
-
if (!response.ok) {
|
|
6663
|
-
|
|
6664
|
-
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
6665
|
-
}
|
|
6666
|
-
const parsed = parseContentFeed(await (async () => {
|
|
6667
|
-
try {
|
|
6668
|
-
return await readResponseText(response, options.maxResponseBytes ?? DEFAULT_MAX_RESPONSE_BYTES);
|
|
6669
|
-
} finally {
|
|
6670
|
-
await closeFeedResponse(fetchResult);
|
|
6671
|
-
}
|
|
6672
|
-
})(), finalUrl.toString());
|
|
6534
|
+
if (!response.ok) throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
6535
|
+
const parsed = parseContentFeed(new TextDecoder().decode(response.body), response.url.toString());
|
|
6673
6536
|
source.format = parsed.format;
|
|
6674
6537
|
source.homepageUrl = source.homepageUrl || parsed.homepageUrl;
|
|
6675
6538
|
if (!source.name && parsed.title) source.name = parsed.title;
|
|
@@ -6684,8 +6547,8 @@ async function syncContentFeedSource(source, options = {}) {
|
|
|
6684
6547
|
skipped += 1;
|
|
6685
6548
|
}
|
|
6686
6549
|
source.markFetchSucceeded(now, {
|
|
6687
|
-
etag: response.headers.
|
|
6688
|
-
lastModified: response.headers
|
|
6550
|
+
etag: response.headers.etag ?? null,
|
|
6551
|
+
lastModified: response.headers["last-modified"] ?? null
|
|
6689
6552
|
});
|
|
6690
6553
|
await source.save();
|
|
6691
6554
|
return {
|
|
@@ -7036,6 +6899,6 @@ function stringToContent(data) {
|
|
|
7036
6899
|
};
|
|
7037
6900
|
}
|
|
7038
6901
|
//#endregion
|
|
7039
|
-
export { Article, BODY_MAIN_IMAGE_ATTRIBUTE, BODY_THUMBNAIL_ATTRIBUTE, CONTENT_QUERY_CLASS_NAME, CONTENT_QUERY_DEFAULT_PAGE_LIMIT, CONTENT_QUERY_DEFAULT_SORT, CONTENT_QUERY_EXCLUDED_FIELD_IDS, CONTENT_QUERY_IDENTITY_FIELD, CONTENT_QUERY_MAX_PAGE_LIMIT, CONTENT_QUERY_MAX_RESULT_BYTES, CONTENT_QUERY_MIN_RESULT_BYTES, Content, ContentAsset, ContentAssetCollection, ContentContribution, ContentContributionAttachment, ContentContributionAttachmentCollection, ContentContributionRevision, ContentContributionRevisionCollection, ContentContributionType, ContentContributionTypeCollection, ContentContributions, ContentContributor, ContentContributorCollection, ContentCorrection, ContentCorrectionCollection, ContentDocument, ContentFeedSource, ContentFeedSourceCollection, ContentGovernanceAssignment, ContentGovernanceAssignmentCollection, ContentGovernancePolicy, ContentGovernancePolicyCollection, ContentGovernanceProfile, ContentGovernanceProfileCollection, ContentReference, ContentReferences, ContentReview, ContentReviewCollection, ContentVersion, ContentVersionCollection, Contents, DATA_QUERY_FORBIDDEN_JSON_KEYS, DATA_QUERY_MAX_JSON_CONTAINER_ITEMS, DATA_QUERY_MAX_JSON_DEPTH, DATA_QUERY_MAX_JSON_STRING_LENGTH, DATA_QUERY_MAX_STRING_LENGTH, DATA_QUERY_MAX_WARNINGS, DATA_QUERY_MAX_WARNING_LENGTH, DEFAULT_CONTENT_BODY_FORMAT, MAX_CONTENT_QUERY_OR_BRANCHES, Mirror, THUMBNAIL_WIDE_ASPECT_RATIO, ThumbnailGenerator, assertContentQuerySchema, bodyHasImage, bodyHasThumbnail, bodyToEditorHtml, buildContentChatModelUpdates, buildContentEditorInteractionVariables, buildContentEditorSessionContext, buildContentGovernanceAssignmentKey, buildContentQuerySchema, buildContentReviewPrompt, buildDataQuerySchemaForClass, clearContentQuerySchemaCache, configureContentContributions, configureContentGovernance, contentChatMessageToJSON, contentChatSessionIsAuthorized, contentChatSessionKey, contentChatSessionMatchesContent, contentEditorAssistantContextToChatProps, contentEditorInteractionPrompt, contentEditorSessionPrompt, contentToString, createContentEditorAssistantContext, createContentEditorChatThread, editorHtmlToBody, evaluateContentPublishReadiness, evaluateContributionIntake, executeContentQuery, extractBodyImages, getAcceptedContentReviewStatuses, getContentChatAISelection, getContentContributionConfig, getContentContributionTypeConfigState, getContentGovernanceConfig, getContentReviewKind, getContentReviewPolicies, getContentReviewPolicy, getContentReviewProfile, getContentReviewProfileKeys, getContentReviewRequirements, getEffectiveContentContributionConfig, getEffectiveContentGovernanceConfig, getOrCreateContentEditorChatSession, hasStaticContentContributionType, hasStaticContentGovernancePolicy, hasStaticContentGovernanceProfile, htmlToMarkdown, inferProviderFromModel, isAssetAssociable, isMetadataAccessor, listContentEditorChatThreadMessages, loadPersistedContentContributionTypes, mergeContentQueryScope, normalizeContentTransparency, parseContentFeed, parseContentReviewResponse, placeThumbnailInBody, promptMessageOptions, removeThumbnailFromBody, renderContentBodyHtml, renderMarkdownToHtml, resetContentContributionConfig, resetContentGovernanceConfig, resolveBodyFormat, resolveBodyMainPicture, resolveConfiguredContentGovernance, resolveContentChatModelSelection, resolveContentTenantReadScope, resolveDefaultContentChatAI, resolveEffectiveContentContributionType, resolveEffectiveContentGovernance, sanitizeContentEditorAssistantFieldUpdates, sanitizeHtml, sendContentEditorChatThreadMessage, serializeContentChatMessageForUI, setBodyMainImage, smrtContentApplyCorrectionPrompt, smrtContentReviewPrompt, smrtContentThumbnailAIGeneratePrompt, stringToContent, stripHtml, syncContentFeedSource, thumbnailPlacementForSize };
|
|
6902
|
+
export { Article, BODY_MAIN_IMAGE_ATTRIBUTE, BODY_THUMBNAIL_ATTRIBUTE, CONTENT_QUERY_CLASS_NAME, CONTENT_QUERY_DEFAULT_PAGE_LIMIT, CONTENT_QUERY_DEFAULT_SORT, CONTENT_QUERY_EXCLUDED_FIELD_IDS, CONTENT_QUERY_IDENTITY_FIELD, CONTENT_QUERY_MAX_PAGE_LIMIT, CONTENT_QUERY_MAX_RESULT_BYTES, CONTENT_QUERY_MIN_RESULT_BYTES, Content, ContentAsset, ContentAssetCollection, ContentContribution, ContentContributionAttachment, ContentContributionAttachmentCollection, ContentContributionRevision, ContentContributionRevisionCollection, ContentContributionType, ContentContributionTypeCollection, ContentContributions, ContentContributor, ContentContributorCollection, ContentCorrection, ContentCorrectionCollection, ContentDocument, ContentFeedSource, ContentFeedSourceCollection, ContentGovernanceAssignment, ContentGovernanceAssignmentCollection, ContentGovernancePolicy, ContentGovernancePolicyCollection, ContentGovernanceProfile, ContentGovernanceProfileCollection, ContentReference, ContentReferences, ContentReview, ContentReviewCollection, ContentVersion, ContentVersionCollection, Contents, DATA_QUERY_FORBIDDEN_JSON_KEYS, DATA_QUERY_MAX_JSON_CONTAINER_ITEMS, DATA_QUERY_MAX_JSON_DEPTH, DATA_QUERY_MAX_JSON_STRING_LENGTH, DATA_QUERY_MAX_STRING_LENGTH, DATA_QUERY_MAX_WARNINGS, DATA_QUERY_MAX_WARNING_LENGTH, DEFAULT_CONTENT_BODY_FORMAT, MAX_CONTENT_QUERY_OR_BRANCHES, Mirror, THUMBNAIL_WIDE_ASPECT_RATIO, ThumbnailGenerator, assertContentQuerySchema, bodyHasImage, bodyHasThumbnail, bodyToEditorHtml, buildContentChatModelUpdates, buildContentEditorInteractionVariables, buildContentEditorSessionContext, buildContentGovernanceAssignmentKey, buildContentQuerySchema, buildContentReviewPrompt, buildDataQuerySchemaForClass, clearContentQuerySchemaCache, configureContentContributions, configureContentGovernance, contentChatMessageToJSON, contentChatSessionIsAuthorized, contentChatSessionKey, contentChatSessionMatchesContent, contentEditorAssistantContextToChatProps, contentEditorInteractionPrompt, contentEditorSessionPrompt, contentToString, createContentEditorAssistantContext, createContentEditorChatThread, editorHtmlToBody, evaluateContentPublishReadiness, evaluateContributionIntake, executeContentQuery, extractBodyImages, fetchSafeRemoteUrl, getAcceptedContentReviewStatuses, getContentChatAISelection, getContentContributionConfig, getContentContributionTypeConfigState, getContentGovernanceConfig, getContentReviewKind, getContentReviewPolicies, getContentReviewPolicy, getContentReviewProfile, getContentReviewProfileKeys, getContentReviewRequirements, getEffectiveContentContributionConfig, getEffectiveContentGovernanceConfig, getOrCreateContentEditorChatSession, hasStaticContentContributionType, hasStaticContentGovernancePolicy, hasStaticContentGovernanceProfile, htmlToMarkdown, inferProviderFromModel, isAssetAssociable, isMetadataAccessor, listContentEditorChatThreadMessages, loadPersistedContentContributionTypes, mergeContentQueryScope, normalizeContentTransparency, parseContentFeed, parseContentReviewResponse, placeThumbnailInBody, promptMessageOptions, removeThumbnailFromBody, renderContentBodyHtml, renderMarkdownToHtml, resetContentContributionConfig, resetContentGovernanceConfig, resolveBodyFormat, resolveBodyMainPicture, resolveConfiguredContentGovernance, resolveContentChatModelSelection, resolveContentTenantReadScope, resolveDefaultContentChatAI, resolveEffectiveContentContributionType, resolveEffectiveContentGovernance, sanitizeContentEditorAssistantFieldUpdates, sanitizeHtml, sendContentEditorChatThreadMessage, serializeContentChatMessageForUI, setBodyMainImage, smrtContentApplyCorrectionPrompt, smrtContentReviewPrompt, smrtContentThumbnailAIGeneratePrompt, stringToContent, stripHtml, syncContentFeedSource, thumbnailPlacementForSize };
|
|
7040
6903
|
|
|
7041
6904
|
//# sourceMappingURL=index.js.map
|