@neta-art/cohub 11.3.1 → 11.3.2
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/board/export/index.js +1 -1
- package/dist/board/export/scene.js +1 -1
- package/dist/board/model/authoring.js +1 -2
- package/dist/board/model/index.d.ts +2 -2
- package/dist/board/model/index.js +2 -2
- package/dist/board/model/items/create.js +6 -2
- package/dist/board/model/media.d.ts +5 -1
- package/dist/board/model/media.js +12 -1
- package/dist/board/render/card-tag.d.ts +3 -2
- package/dist/board/render/card-tag.js +31 -1
- package/dist/board/render/index.d.ts +2 -2
- package/dist/board/render/index.js +6 -6
- package/dist/board/render/media-interaction.js +12 -3
- package/dist/board/render/renderers/arrow-card-renderer.js +1 -1
- package/dist/board/render/renderers/audio-card-renderer.js +1 -1
- package/dist/board/render/renderers/board-renderer-registry.js +2 -0
- package/dist/board/render/renderers/frame-card-renderer.js +1 -1
- package/dist/board/render/renderers/media-key.d.ts +2 -1
- package/dist/board/render/renderers/media-key.js +21 -1
- package/dist/board/render/renderers/model-card-renderer.d.ts +10 -0
- package/dist/board/render/renderers/model-card-renderer.js +132 -0
- package/dist/board/render/renderers/shape-card-renderer.js +1 -1
- package/dist/board/render/renderers/task-card-renderer.js +1 -1
- package/dist/board/render/renderers/text-card-renderer.js +2 -2
- package/dist/board/stage/assets.d.ts +16 -3
- package/dist/board/stage/assets.js +98 -47
- package/dist/board/stage/index.d.ts +2 -2
- package/dist/board/stage/stage.js +3 -3
- package/dist/chunks/environment.d.ts +45 -3
- package/dist/index.d.ts +30 -1
- package/dist/index.js +236 -6
- package/dist/protocol/dist/board-patch.js +4 -4
- package/dist/protocol/dist/board-schema.js +13 -2
- package/dist/protocol/dist/board.js +2 -1
- package/dist/protocol/dist/fs/mime.d.ts +4 -0
- package/dist/protocol/dist/fs/mime.js +113 -0
- package/dist/protocol/dist/index.d.ts +2 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -74,12 +74,51 @@ const appAuthorizationResultSchema = z.discriminatedUnion("status", [
|
|
|
74
74
|
]);
|
|
75
75
|
const GiB = 1073741824;
|
|
76
76
|
/** Maximum size of a single uploaded file. */
|
|
77
|
-
const UPLOAD_MAX_FILE_BYTES =
|
|
77
|
+
const UPLOAD_MAX_FILE_BYTES = 2 * GiB;
|
|
78
78
|
/** Maximum combined size of one upload batch. */
|
|
79
79
|
const UPLOAD_MAX_BATCH_BYTES = 2 * GiB;
|
|
80
80
|
/** Maximum file count of one upload batch. */
|
|
81
81
|
const UPLOAD_MAX_BATCH_FILES = 2e3;
|
|
82
82
|
//#endregion
|
|
83
|
+
//#region ../protocol/dist/upload-errors.js
|
|
84
|
+
/**
|
|
85
|
+
* Structured upload rejection codes shared by the api routes and their clients.
|
|
86
|
+
* The api keeps human-readable English messages; clients map these codes to
|
|
87
|
+
* localized copy instead of matching on message text.
|
|
88
|
+
*/
|
|
89
|
+
/** A single file exceeds `UPLOAD_MAX_FILE_BYTES`. */
|
|
90
|
+
const UPLOAD_ERROR_FILE_TOO_LARGE = "file_too_large";
|
|
91
|
+
/** One batch exceeds `UPLOAD_MAX_BATCH_BYTES`. */
|
|
92
|
+
const UPLOAD_ERROR_BATCH_TOO_LARGE = "upload_batch_too_large";
|
|
93
|
+
/** One batch exceeds `UPLOAD_MAX_BATCH_FILES`. */
|
|
94
|
+
const UPLOAD_ERROR_TOO_MANY_FILES = "upload_too_many_files";
|
|
95
|
+
/** The per-user upload quota is exhausted; the response carries `retryAfterSeconds`. */
|
|
96
|
+
const UPLOAD_ERROR_RATE_LIMITED = "upload_rate_limited";
|
|
97
|
+
/**
|
|
98
|
+
* Split entries into batches that respect the batch byte and file caps, keeping
|
|
99
|
+
* input order. A single entry larger than the batch byte cap still gets its own
|
|
100
|
+
* batch so the server can reject it with `file_too_large` rather than silently
|
|
101
|
+
* dropping it.
|
|
102
|
+
*/
|
|
103
|
+
function batchUploadEntries(entries, sizeOf, options = {}) {
|
|
104
|
+
const maxBatchBytes = options.maxBatchBytes ?? 2147483648;
|
|
105
|
+
const maxBatchFiles = options.maxBatchFiles ?? 2e3;
|
|
106
|
+
const batches = [];
|
|
107
|
+
let batch = [];
|
|
108
|
+
let bytes = 0;
|
|
109
|
+
for (const entry of entries) {
|
|
110
|
+
if (batch.length > 0 && (batch.length >= maxBatchFiles || bytes + sizeOf(entry) > maxBatchBytes)) {
|
|
111
|
+
batches.push(batch);
|
|
112
|
+
batch = [];
|
|
113
|
+
bytes = 0;
|
|
114
|
+
}
|
|
115
|
+
batch.push(entry);
|
|
116
|
+
bytes += sizeOf(entry);
|
|
117
|
+
}
|
|
118
|
+
if (batch.length > 0) batches.push(batch);
|
|
119
|
+
return batches;
|
|
120
|
+
}
|
|
121
|
+
//#endregion
|
|
83
122
|
//#region ../protocol/dist/board-url.js
|
|
84
123
|
const BOARD_REMOTE_URL_MAX_LENGTH = 4096;
|
|
85
124
|
function parseIpv4(host) {
|
|
@@ -693,6 +732,86 @@ const BoardPatchSchema = z.object({
|
|
|
693
732
|
animations: z.record(BoardIdSchema, patchObject.and(z.object({ tracks: z.record(BoardKeySchema, patchObject.nullable()).optional() })).nullable()).optional()
|
|
694
733
|
}).strict();
|
|
695
734
|
//#endregion
|
|
735
|
+
//#region ../protocol/dist/board.js
|
|
736
|
+
const BOARD_EXTENSION = ".board";
|
|
737
|
+
const BOARD_MIME_TYPE = "application/json";
|
|
738
|
+
z.object({
|
|
739
|
+
kind: z.literal("cohub.board.manifest"),
|
|
740
|
+
version: z.literal(1),
|
|
741
|
+
boardId: z.string().uuid(),
|
|
742
|
+
title: z.string().min(1).max(255)
|
|
743
|
+
});
|
|
744
|
+
const BOARD_READ_SECTIONS = ["items", "animations"];
|
|
745
|
+
const rectSchema = z.object({
|
|
746
|
+
x: z.number().finite(),
|
|
747
|
+
y: z.number().finite(),
|
|
748
|
+
width: z.number().finite().positive(),
|
|
749
|
+
height: z.number().finite().positive()
|
|
750
|
+
}).strict();
|
|
751
|
+
z.object({
|
|
752
|
+
only: z.array(z.enum(BOARD_READ_SECTIONS)).optional(),
|
|
753
|
+
rect: rectSchema.optional(),
|
|
754
|
+
within: BoardIdSchema.optional(),
|
|
755
|
+
items: z.array(z.string().min(1)).max(5e4).optional(),
|
|
756
|
+
animations: z.array(z.string().min(1)).max(1e4).optional(),
|
|
757
|
+
limit: z.number().int().min(1).max(5e4).optional(),
|
|
758
|
+
cursor: z.string().min(1).optional()
|
|
759
|
+
}).strict().refine((read) => !(read.cursor && (read.rect || read.within)), {
|
|
760
|
+
path: ["cursor"],
|
|
761
|
+
message: "cursor pages by id, so it cannot be combined with rect or within"
|
|
762
|
+
});
|
|
763
|
+
z.object({
|
|
764
|
+
patch: BoardPatchSchema,
|
|
765
|
+
replace: z.boolean().default(false),
|
|
766
|
+
cascade: z.boolean().default(false),
|
|
767
|
+
dryRun: z.boolean().default(false),
|
|
768
|
+
baseVersion: z.number().int().nonnegative().optional(),
|
|
769
|
+
mutationId: z.string().min(1).max(160).optional(),
|
|
770
|
+
clientId: z.string().min(1).max(160).optional()
|
|
771
|
+
}).strict();
|
|
772
|
+
z.object({
|
|
773
|
+
path: z.string().min(1),
|
|
774
|
+
title: z.string().min(1).max(255).optional(),
|
|
775
|
+
document: BoardPatchSchema.optional(),
|
|
776
|
+
mutationId: z.string().max(160).optional()
|
|
777
|
+
}).strict();
|
|
778
|
+
z.object({
|
|
779
|
+
before: z.number().int().positive().optional(),
|
|
780
|
+
limit: z.number().int().min(1).max(500).default(200)
|
|
781
|
+
}).strict();
|
|
782
|
+
const commandId = z.string().min(1).max(160);
|
|
783
|
+
z.discriminatedUnion("type", [
|
|
784
|
+
z.object({
|
|
785
|
+
commandId,
|
|
786
|
+
type: z.literal("play"),
|
|
787
|
+
animationId: z.string().min(1),
|
|
788
|
+
position: z.number().finite().nonnegative().optional(),
|
|
789
|
+
timeScale: z.number().finite().positive().max(4).optional(),
|
|
790
|
+
seed: z.string().min(1).max(160).optional()
|
|
791
|
+
}).strict(),
|
|
792
|
+
z.object({
|
|
793
|
+
commandId,
|
|
794
|
+
type: z.literal("pause")
|
|
795
|
+
}).strict(),
|
|
796
|
+
z.object({
|
|
797
|
+
commandId,
|
|
798
|
+
type: z.literal("resume")
|
|
799
|
+
}).strict(),
|
|
800
|
+
z.object({
|
|
801
|
+
commandId,
|
|
802
|
+
type: z.literal("seek"),
|
|
803
|
+
position: z.number().finite().nonnegative()
|
|
804
|
+
}).strict(),
|
|
805
|
+
z.object({
|
|
806
|
+
commandId,
|
|
807
|
+
type: z.literal("next")
|
|
808
|
+
}).strict(),
|
|
809
|
+
z.object({
|
|
810
|
+
commandId,
|
|
811
|
+
type: z.literal("stop")
|
|
812
|
+
}).strict()
|
|
813
|
+
]);
|
|
814
|
+
//#endregion
|
|
696
815
|
//#region ../protocol/dist/board-json.js
|
|
697
816
|
/** Structural equality for JSON-shaped semantic values. */
|
|
698
817
|
function boardJsonEquals(a, b) {
|
|
@@ -1245,20 +1364,20 @@ const CAMERA_PROPERTIES = {
|
|
|
1245
1364
|
y: z.number().finite(),
|
|
1246
1365
|
width: z.number().finite().positive(),
|
|
1247
1366
|
height: z.number().finite().positive()
|
|
1248
|
-
}).strict()])
|
|
1367
|
+
}).strict()]).describe("Item id or world-space rect to fit with 48 px padding; holds until the next focus keyframe.")
|
|
1249
1368
|
},
|
|
1250
1369
|
zoom: {
|
|
1251
1370
|
kind: "number",
|
|
1252
|
-
schema: z.number().finite().positive(),
|
|
1371
|
+
schema: z.number().finite().positive().describe("Pixels per world unit; overrides the zoom computed by focus."),
|
|
1253
1372
|
multiplicative: true
|
|
1254
1373
|
},
|
|
1255
1374
|
center: {
|
|
1256
1375
|
kind: "vec2",
|
|
1257
|
-
schema: BoardVec2Schema
|
|
1376
|
+
schema: BoardVec2Schema.describe("World-space viewport center; overrides focus positioning using the resolved zoom.")
|
|
1258
1377
|
},
|
|
1259
1378
|
shake: {
|
|
1260
1379
|
kind: "number",
|
|
1261
|
-
schema: z.number().finite().nonnegative()
|
|
1380
|
+
schema: z.number().finite().nonnegative().describe("Shake amplitude in screen pixels, applied after focus, zoom and center.")
|
|
1262
1381
|
}
|
|
1263
1382
|
};
|
|
1264
1383
|
const ANIMATION_PROPERTIES = { time: {
|
|
@@ -1961,6 +2080,117 @@ const readSentTurns = (meta) => {
|
|
|
1961
2080
|
return refs;
|
|
1962
2081
|
};
|
|
1963
2082
|
//#endregion
|
|
2083
|
+
//#region ../protocol/dist/fs/mime.js
|
|
2084
|
+
const MIME_BY_EXTENSION = {
|
|
2085
|
+
".txt": "text/plain",
|
|
2086
|
+
".md": "text/markdown",
|
|
2087
|
+
".markdown": "text/markdown",
|
|
2088
|
+
".json": "application/json",
|
|
2089
|
+
".jsonl": "application/x-ndjson",
|
|
2090
|
+
".csv": "text/csv",
|
|
2091
|
+
[BOARD_EXTENSION]: BOARD_MIME_TYPE,
|
|
2092
|
+
".js": "text/javascript",
|
|
2093
|
+
".mjs": "text/javascript",
|
|
2094
|
+
".cjs": "text/javascript",
|
|
2095
|
+
".ts": "text/typescript",
|
|
2096
|
+
".tsx": "text/tsx",
|
|
2097
|
+
".jsx": "text/jsx",
|
|
2098
|
+
".svelte": "text/x-svelte",
|
|
2099
|
+
".css": "text/css",
|
|
2100
|
+
".scss": "text/x-scss",
|
|
2101
|
+
".html": "text/html",
|
|
2102
|
+
".htm": "text/html",
|
|
2103
|
+
".xml": "application/xml",
|
|
2104
|
+
".yaml": "application/yaml",
|
|
2105
|
+
".yml": "application/yaml",
|
|
2106
|
+
".toml": "application/toml",
|
|
2107
|
+
".ini": "text/plain",
|
|
2108
|
+
".env": "text/plain",
|
|
2109
|
+
".sh": "text/x-shellscript",
|
|
2110
|
+
".bash": "text/x-shellscript",
|
|
2111
|
+
".py": "text/x-python",
|
|
2112
|
+
".go": "text/x-go",
|
|
2113
|
+
".rs": "text/x-rust",
|
|
2114
|
+
".java": "text/x-java-source",
|
|
2115
|
+
".c": "text/x-c",
|
|
2116
|
+
".h": "text/x-c",
|
|
2117
|
+
".cpp": "text/x-c++src",
|
|
2118
|
+
".hpp": "text/x-c++hdr",
|
|
2119
|
+
".sql": "application/sql",
|
|
2120
|
+
".svg": "image/svg+xml",
|
|
2121
|
+
".png": "image/png",
|
|
2122
|
+
".jpg": "image/jpeg",
|
|
2123
|
+
".jpeg": "image/jpeg",
|
|
2124
|
+
".gif": "image/gif",
|
|
2125
|
+
".webp": "image/webp",
|
|
2126
|
+
".avif": "image/avif",
|
|
2127
|
+
".bmp": "image/bmp",
|
|
2128
|
+
".ico": "image/x-icon",
|
|
2129
|
+
".mp4": "video/mp4",
|
|
2130
|
+
".webm": "video/webm",
|
|
2131
|
+
".mov": "video/quicktime",
|
|
2132
|
+
".m4v": "video/x-m4v",
|
|
2133
|
+
".ogv": "video/ogg",
|
|
2134
|
+
".avi": "video/x-msvideo",
|
|
2135
|
+
".mp3": "audio/mpeg",
|
|
2136
|
+
".wav": "audio/wav",
|
|
2137
|
+
".ogg": "audio/ogg",
|
|
2138
|
+
".m4a": "audio/mp4",
|
|
2139
|
+
".aac": "audio/aac",
|
|
2140
|
+
".flac": "audio/flac",
|
|
2141
|
+
".opus": "audio/ogg",
|
|
2142
|
+
".glb": "model/gltf-binary",
|
|
2143
|
+
".gltf": "model/gltf+json",
|
|
2144
|
+
".stl": "model/stl",
|
|
2145
|
+
".obj": "model/obj",
|
|
2146
|
+
".3mf": "model/3mf",
|
|
2147
|
+
".usdz": "model/vnd.usdz+zip",
|
|
2148
|
+
".mtl": "text/plain",
|
|
2149
|
+
".pdf": "application/pdf",
|
|
2150
|
+
".wasm": "application/wasm",
|
|
2151
|
+
".woff": "font/woff",
|
|
2152
|
+
".woff2": "font/woff2",
|
|
2153
|
+
".zip": "application/zip",
|
|
2154
|
+
".gz": "application/gzip",
|
|
2155
|
+
".tar": "application/x-tar",
|
|
2156
|
+
".rar": "application/vnd.rar",
|
|
2157
|
+
".7z": "application/x-7z-compressed",
|
|
2158
|
+
".exe": "application/x-msdownload",
|
|
2159
|
+
".dmg": "application/x-apple-diskimage",
|
|
2160
|
+
".deb": "application/vnd.debian.binary-package",
|
|
2161
|
+
".rpm": "application/x-rpm"
|
|
2162
|
+
};
|
|
2163
|
+
const MIME_BY_FILENAME = {
|
|
2164
|
+
dockerfile: "text/x-dockerfile",
|
|
2165
|
+
makefile: "text/x-makefile"
|
|
2166
|
+
};
|
|
2167
|
+
function mimeTypeForPath(path) {
|
|
2168
|
+
const name = (path.split(/[\\/]/).pop() ?? "").toLowerCase();
|
|
2169
|
+
const byName = Object.hasOwn(MIME_BY_FILENAME, name) ? MIME_BY_FILENAME[name] : void 0;
|
|
2170
|
+
if (byName) return byName;
|
|
2171
|
+
const dot = name.lastIndexOf(".");
|
|
2172
|
+
const byExtension = dot > 0 ? MIME_BY_EXTENSION[name.slice(dot)] : void 0;
|
|
2173
|
+
if (byExtension) return byExtension;
|
|
2174
|
+
return name.startsWith(".") ? "text/plain" : null;
|
|
2175
|
+
}
|
|
2176
|
+
function normalizeMime(mimeType) {
|
|
2177
|
+
if (!mimeType) return null;
|
|
2178
|
+
return mimeType.split(";")[0]?.trim().toLowerCase() || null;
|
|
2179
|
+
}
|
|
2180
|
+
const TEXT_APPLICATION_MIMES = /* @__PURE__ */ new Set([
|
|
2181
|
+
"application/json",
|
|
2182
|
+
"application/csv",
|
|
2183
|
+
"application/xml",
|
|
2184
|
+
"application/yaml",
|
|
2185
|
+
"application/toml",
|
|
2186
|
+
"application/sql",
|
|
2187
|
+
"application/x-ndjson"
|
|
2188
|
+
]);
|
|
2189
|
+
function isTextMime(mimeType) {
|
|
2190
|
+
const mime = normalizeMime(mimeType);
|
|
2191
|
+
return Boolean(mime && (mime.startsWith("text/") || TEXT_APPLICATION_MIMES.has(mime)));
|
|
2192
|
+
}
|
|
2193
|
+
//#endregion
|
|
1964
2194
|
//#region ../protocol/dist/display/actions.js
|
|
1965
2195
|
const DISPLAY_ACTION_TYPES = [
|
|
1966
2196
|
"tap",
|
|
@@ -7489,4 +7719,4 @@ function generationOutputSource(result, outputIndex) {
|
|
|
7489
7719
|
return `data:${declared && MEDIA_TYPE_PATTERN.test(declared) ? declared : DEFAULT_MEDIA_TYPES[String(block.type)] ?? "application/octet-stream"};base64,${data}`;
|
|
7490
7720
|
}
|
|
7491
7721
|
//#endregion
|
|
7492
|
-
export { APP_APPEARANCE_TOKENS, APP_COMPOSER_CHIP_CONTENT_MAX_BYTES, APP_COMPOSER_CHIP_KEY_MAX_LENGTH, APP_COMPOSER_CHIP_LABEL_MAX_LENGTH, APP_DEVICES, APP_SURFACE_READY_TIMEOUT_MS, APP_SURFACE_REQUEST_TIMEOUT_MS, AppCommerceApi, AppRealtimeApi, AppRefParseError, AppRoom, AppRoomRtc, AppRtcChannel, AppRtcError, AppRuntimeApi, AppRuntimeApi as WorkRuntimeApi, AppRuntimeError, AppSurfaceApi, AppWindowApi, AppsApi, BILLING_ACCESS_BLOCKED_ERROR_CODE, BOARD_COLOR_TOKENS, BOARD_ITEM_TYPES, BillingApi, BoardAnimationSchema, BoardClient, BoardPatchSchema, BoardTrackSchema, COHUB_ENVIRONMENTS, COHUB_SOURCE_HEADER, COHUB_SOURCE_HEADER_NAMES, CohubClient, CohubHttpClient, DESKTOP_COMMAND_ACCEPT_TIMEOUT_MS, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS, DESKTOP_COMMAND_MAX_TIMEOUT_MS, DESKTOP_COMMAND_OPEN_TIMEOUT_MS, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES, DESKTOP_COMMAND_PENDING_TTL_SECONDS, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS, DESKTOP_COMMAND_VERSION, DISPLAY_ACTION_TYPES, DISPLAY_ELEMENT_REF_PATTERN, DISPLAY_SYSTEM_ACTIONS, DesktopCommandsApi, DisplayActionError, DisplayConnection, FEATURE_NOT_ENTITLED_ERROR_CODE, GenerationPolicyError, HOME_SPACE_SLUG, HttpError, NATIVE_INGEST_MAX_TURNS, NATIVE_SYNC_SOURCE, OriginBrokerTransport, PERMISSIONS, ParentBridgeTransport, PopupBrokerTransport, REQUEST_SOURCE_VIA_MAX_LENGTH, RUNTIME_ARCHIVE_SEGMENT_BYTES, RUNTIME_MAX_FRAME_BYTES, RUNTIME_PROTOCOL_VERSION, RUNTIME_RECOVERY_BATCH_SIZE, ReferencesApi, ReferralsApi, RoomsApi, SETTLED_TURN_STATUSES, SessionGenerationStreamClient, SessionPatchReducer, SpaceDisplaysApi, SpacePublicFilesApi, SpaceWebhooksApi, UPLOAD_MAX_BATCH_BYTES, UPLOAD_MAX_BATCH_FILES, UPLOAD_MAX_FILE_BYTES, USER_LEVEL_PERMISSIONS, UiCommandsApi, UsersApi, VoiceApi, VoiceInputClient, WebsocketClient, WorkCommerceApi, WorkRealtimeApi, WorkRefParseError, WorkRoom, WorkSurfaceApi, appAppearanceVar, applyAppAppearance, assertGenerationRequestAllowedByPolicy, attachAppEmbed, buildAppSurfaceRequest, buildSpaceInvitePath, buildSpacePath, clearGrantedAppScopes, compileDisplayActions, connectDisplay, contextToPiMessages, createAppBridgeCore, createAppBridgeCore as createWorkBridgeCore, createAppRuntime, createAppRuntime as createWorkRuntime, createCohubClient, createHttpClient, createOriginAppResolver, createSessionGenerationStreamClient, createSessionPatchReducer, createSlugAppIdResolver, createSlugAppIdResolver as createSlugWorkIdResolver, createVoiceInputClient, createWebsocketClient, decodeGenerationPolicy, defaultDesktopCommandTimeoutMs, encodeGenerationPolicy, extractBillingPayload, filterDiscoverableGenerationModels, filterGenerationDeclarationsByPolicy, filterSpacePickerItems, findGenerationModelPolicy, fingerprintProjectionTurns, formatAppRef, formatWorkRef, generationOutputSource, getAllowedGenerationModelIds, getCohubContext, harnessArchiveIndexSchema, hasGrantedAppScopes, hasRequestSourceIdentity, isActiveGenerationTask, isAppId, isBillingAccessBlockedCode, isBillingAccessBlockedError, isDesktopCallMethod, isFeatureNotEntitledError, isGenerationModelHidden, isHttpErrorCode, isLocalHarness, isNativeClientTurn, isProjectionCompaction, isRequestSourceClientId, isRequestSourceEmpty, isRequestSourceUuid, isTerminalDesktopCommandStatus, isUserLevelPermission, isUuid, isWorkId, joinApiUrl, matchesUnauthorizedErrorToken, mergeRequestSourceIntoMeta, nativeIngestTurnSchema, nativeRuntimeEventSchema, nativeTurnCompleteSchema, nativeTurnProgressSchema, normalizeBaseUrl, normalizeDisplayPoint, normalizeGenerationPolicy, normalizeRequestSource, normalizeSessionTurnOrigin, normalizeSpacePickerQuery, normalizeVoiceInputWebsocketUrl, normalizeWebsocketUrl, orderSpacePickerItems, parseAppRef, parseAppSurfaceReady, parseAppSurfaceResponse, parseAssistantMessageCommit, parseBoardDocument, parseBoardItem, parseDesktopCommand, parseGenerationPolicyFromEnv, parseRequestSourceFromHeaders, parseSpaceRef, parseWorkRef, projectNativeMessageMeta, projectNativeSession, readRequestSourceFromEnv, readSentTurns, readSessionTurnOrigin, requestSourceToHeaders, resolveApiBaseUrl, resolveAppTransport, resolveAppTransport as resolveWorkTransport, resolveCohubEnvironment, resolveExecutionAppId, resolveExecutionToken, resolveHarness, resolveOpenSurface, resolveRequestSourceChannel, resolveVoiceInputWebsocketUrl, resolveWebBaseUrl, resolveWebsocketUrl, runtimeCommandSchema, runtimeEventSchema, runtimeNativeStopSchema, runtimeReadySchema, sanitizeAccessToken, scopeListHasPermission, selectRuntimeContextMessages, selectSpacePickerItems, serializeProjection, serializeProjectionRecords, setGrantedAppScopes, toGenerationTaskView, trimProjectionTurnsToCompaction, validateArchiveBoundary };
|
|
7722
|
+
export { APP_APPEARANCE_TOKENS, APP_COMPOSER_CHIP_CONTENT_MAX_BYTES, APP_COMPOSER_CHIP_KEY_MAX_LENGTH, APP_COMPOSER_CHIP_LABEL_MAX_LENGTH, APP_DEVICES, APP_SURFACE_READY_TIMEOUT_MS, APP_SURFACE_REQUEST_TIMEOUT_MS, AppCommerceApi, AppRealtimeApi, AppRefParseError, AppRoom, AppRoomRtc, AppRtcChannel, AppRtcError, AppRuntimeApi, AppRuntimeApi as WorkRuntimeApi, AppRuntimeError, AppSurfaceApi, AppWindowApi, AppsApi, BILLING_ACCESS_BLOCKED_ERROR_CODE, BOARD_COLOR_TOKENS, BOARD_ITEM_TYPES, BillingApi, BoardAnimationSchema, BoardClient, BoardPatchSchema, BoardTrackSchema, COHUB_ENVIRONMENTS, COHUB_SOURCE_HEADER, COHUB_SOURCE_HEADER_NAMES, CohubClient, CohubHttpClient, DESKTOP_COMMAND_ACCEPT_TIMEOUT_MS, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS, DESKTOP_COMMAND_MAX_TIMEOUT_MS, DESKTOP_COMMAND_OPEN_TIMEOUT_MS, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES, DESKTOP_COMMAND_PENDING_TTL_SECONDS, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS, DESKTOP_COMMAND_VERSION, DISPLAY_ACTION_TYPES, DISPLAY_ELEMENT_REF_PATTERN, DISPLAY_SYSTEM_ACTIONS, DesktopCommandsApi, DisplayActionError, DisplayConnection, FEATURE_NOT_ENTITLED_ERROR_CODE, GenerationPolicyError, HOME_SPACE_SLUG, HttpError, NATIVE_INGEST_MAX_TURNS, NATIVE_SYNC_SOURCE, OriginBrokerTransport, PERMISSIONS, ParentBridgeTransport, PopupBrokerTransport, REQUEST_SOURCE_VIA_MAX_LENGTH, RUNTIME_ARCHIVE_SEGMENT_BYTES, RUNTIME_MAX_FRAME_BYTES, RUNTIME_PROTOCOL_VERSION, RUNTIME_RECOVERY_BATCH_SIZE, ReferencesApi, ReferralsApi, RoomsApi, SETTLED_TURN_STATUSES, SessionGenerationStreamClient, SessionPatchReducer, SpaceDisplaysApi, SpacePublicFilesApi, SpaceWebhooksApi, UPLOAD_ERROR_BATCH_TOO_LARGE, UPLOAD_ERROR_FILE_TOO_LARGE, UPLOAD_ERROR_RATE_LIMITED, UPLOAD_ERROR_TOO_MANY_FILES, UPLOAD_MAX_BATCH_BYTES, UPLOAD_MAX_BATCH_FILES, UPLOAD_MAX_FILE_BYTES, USER_LEVEL_PERMISSIONS, UiCommandsApi, UsersApi, VoiceApi, VoiceInputClient, WebsocketClient, WorkCommerceApi, WorkRealtimeApi, WorkRefParseError, WorkRoom, WorkSurfaceApi, appAppearanceVar, applyAppAppearance, assertGenerationRequestAllowedByPolicy, attachAppEmbed, batchUploadEntries, buildAppSurfaceRequest, buildSpaceInvitePath, buildSpacePath, clearGrantedAppScopes, compileDisplayActions, connectDisplay, contextToPiMessages, createAppBridgeCore, createAppBridgeCore as createWorkBridgeCore, createAppRuntime, createAppRuntime as createWorkRuntime, createCohubClient, createHttpClient, createOriginAppResolver, createSessionGenerationStreamClient, createSessionPatchReducer, createSlugAppIdResolver, createSlugAppIdResolver as createSlugWorkIdResolver, createVoiceInputClient, createWebsocketClient, decodeGenerationPolicy, defaultDesktopCommandTimeoutMs, encodeGenerationPolicy, extractBillingPayload, filterDiscoverableGenerationModels, filterGenerationDeclarationsByPolicy, filterSpacePickerItems, findGenerationModelPolicy, fingerprintProjectionTurns, formatAppRef, formatWorkRef, generationOutputSource, getAllowedGenerationModelIds, getCohubContext, harnessArchiveIndexSchema, hasGrantedAppScopes, hasRequestSourceIdentity, isActiveGenerationTask, isAppId, isBillingAccessBlockedCode, isBillingAccessBlockedError, isDesktopCallMethod, isFeatureNotEntitledError, isGenerationModelHidden, isHttpErrorCode, isLocalHarness, isNativeClientTurn, isProjectionCompaction, isRequestSourceClientId, isRequestSourceEmpty, isRequestSourceUuid, isTerminalDesktopCommandStatus, isTextMime, isUserLevelPermission, isUuid, isWorkId, joinApiUrl, matchesUnauthorizedErrorToken, mergeRequestSourceIntoMeta, mimeTypeForPath, nativeIngestTurnSchema, nativeRuntimeEventSchema, nativeTurnCompleteSchema, nativeTurnProgressSchema, normalizeBaseUrl, normalizeDisplayPoint, normalizeGenerationPolicy, normalizeRequestSource, normalizeSessionTurnOrigin, normalizeSpacePickerQuery, normalizeVoiceInputWebsocketUrl, normalizeWebsocketUrl, orderSpacePickerItems, parseAppRef, parseAppSurfaceReady, parseAppSurfaceResponse, parseAssistantMessageCommit, parseBoardDocument, parseBoardItem, parseDesktopCommand, parseGenerationPolicyFromEnv, parseRequestSourceFromHeaders, parseSpaceRef, parseWorkRef, projectNativeMessageMeta, projectNativeSession, readRequestSourceFromEnv, readSentTurns, readSessionTurnOrigin, requestSourceToHeaders, resolveApiBaseUrl, resolveAppTransport, resolveAppTransport as resolveWorkTransport, resolveCohubEnvironment, resolveExecutionAppId, resolveExecutionToken, resolveHarness, resolveOpenSurface, resolveRequestSourceChannel, resolveVoiceInputWebsocketUrl, resolveWebBaseUrl, resolveWebsocketUrl, runtimeCommandSchema, runtimeEventSchema, runtimeNativeStopSchema, runtimeReadySchema, sanitizeAccessToken, scopeListHasPermission, selectRuntimeContextMessages, selectSpacePickerItems, serializeProjection, serializeProjectionRecords, setGrantedAppScopes, toGenerationTaskView, trimProjectionTurnsToCompaction, validateArchiveBoundary };
|
|
@@ -93,20 +93,20 @@ const CAMERA_PROPERTIES = {
|
|
|
93
93
|
y: z.number().finite(),
|
|
94
94
|
width: z.number().finite().positive(),
|
|
95
95
|
height: z.number().finite().positive()
|
|
96
|
-
}).strict()])
|
|
96
|
+
}).strict()]).describe("Item id or world-space rect to fit with 48 px padding; holds until the next focus keyframe.")
|
|
97
97
|
},
|
|
98
98
|
zoom: {
|
|
99
99
|
kind: "number",
|
|
100
|
-
schema: z.number().finite().positive(),
|
|
100
|
+
schema: z.number().finite().positive().describe("Pixels per world unit; overrides the zoom computed by focus."),
|
|
101
101
|
multiplicative: true
|
|
102
102
|
},
|
|
103
103
|
center: {
|
|
104
104
|
kind: "vec2",
|
|
105
|
-
schema: BoardVec2Schema
|
|
105
|
+
schema: BoardVec2Schema.describe("World-space viewport center; overrides focus positioning using the resolved zoom.")
|
|
106
106
|
},
|
|
107
107
|
shake: {
|
|
108
108
|
kind: "number",
|
|
109
|
-
schema: z.number().finite().nonnegative()
|
|
109
|
+
schema: z.number().finite().nonnegative().describe("Shake amplitude in screen pixels, applied after focus, zoom and center.")
|
|
110
110
|
}
|
|
111
111
|
};
|
|
112
112
|
const ANIMATION_PROPERTIES = { time: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BOARD_CAMERA_TARGET, BOARD_COLOR_TOKENS, BOARD_EFFECT_KINDS, BOARD_EFFECT_KIND_INFO, BOARD_ITEM_SCHEMAS, BOARD_ITEM_TYPES, BoardAnimationHeaderSchema, BoardKeySchema, BoardScriptSchema, BoardSettingsSchema, BoardTrackSchema, isBuiltinItemType } from "./board-model.js";
|
|
2
|
-
import { listBoardProperties } from "./board-patch.js";
|
|
2
|
+
import { listBoardProperties, resolveBoardProperty } from "./board-patch.js";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
//#region ../protocol/dist/board-schema.js
|
|
5
5
|
function toJsonSchema(schema) {
|
|
@@ -25,7 +25,18 @@ function boardJsonSchema(target) {
|
|
|
25
25
|
};
|
|
26
26
|
if (target === "track") return { schema: toJsonSchema(BoardTrackSchema) };
|
|
27
27
|
if (target === "script") return { schema: toJsonSchema(BoardScriptSchema) };
|
|
28
|
-
if (target === "camera")
|
|
28
|
+
if (target === "camera") {
|
|
29
|
+
const properties = listBoardProperties(target);
|
|
30
|
+
const fields = Object.fromEntries(properties.map(({ property }) => {
|
|
31
|
+
const result = resolveBoardProperty(target, property);
|
|
32
|
+
if (!result.ok) throw new Error(result.message);
|
|
33
|
+
return [property, result.spec.schema];
|
|
34
|
+
}));
|
|
35
|
+
return {
|
|
36
|
+
schema: toJsonSchema(z.object(fields).partial().strict()),
|
|
37
|
+
properties
|
|
38
|
+
};
|
|
39
|
+
}
|
|
29
40
|
if (!isBuiltinItemType(target)) return null;
|
|
30
41
|
return {
|
|
31
42
|
schema: toJsonSchema(BOARD_ITEM_SCHEMAS[target]),
|
|
@@ -2,6 +2,7 @@ import { BoardIdSchema, BoardPatchSchema } from "./board-model.js";
|
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
//#region ../protocol/dist/board.js
|
|
4
4
|
const BOARD_EXTENSION = ".board";
|
|
5
|
+
const BOARD_MIME_TYPE = "application/json";
|
|
5
6
|
const BOARD_MANIFEST_KIND = "cohub.board.manifest";
|
|
6
7
|
const BOARD_CLIPBOARD_KIND = "cohub.board.clipboard";
|
|
7
8
|
const BOARD_CLIPBOARD_MIME = "application/x-cohub-board";
|
|
@@ -106,4 +107,4 @@ z.discriminatedUnion("type", [
|
|
|
106
107
|
}).strict()
|
|
107
108
|
]);
|
|
108
109
|
//#endregion
|
|
109
|
-
export { BOARD_CLIPBOARD_KIND, BOARD_CLIPBOARD_MIME, BOARD_EXTENSION, BOARD_MANIFEST_KIND, BOARD_READ_SECTIONS, BoardManifestSchema, InvalidBoardFileError, isBoardPath, parseBoardManifest, serializeBoardManifest };
|
|
110
|
+
export { BOARD_CLIPBOARD_KIND, BOARD_CLIPBOARD_MIME, BOARD_EXTENSION, BOARD_MANIFEST_KIND, BOARD_MIME_TYPE, BOARD_READ_SECTIONS, BoardManifestSchema, InvalidBoardFileError, isBoardPath, parseBoardManifest, serializeBoardManifest };
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { BOARD_EXTENSION, BOARD_MIME_TYPE } from "../board.js";
|
|
2
|
+
//#region ../protocol/dist/fs/mime.js
|
|
3
|
+
const MIME_BY_EXTENSION = {
|
|
4
|
+
".txt": "text/plain",
|
|
5
|
+
".md": "text/markdown",
|
|
6
|
+
".markdown": "text/markdown",
|
|
7
|
+
".json": "application/json",
|
|
8
|
+
".jsonl": "application/x-ndjson",
|
|
9
|
+
".csv": "text/csv",
|
|
10
|
+
[BOARD_EXTENSION]: BOARD_MIME_TYPE,
|
|
11
|
+
".js": "text/javascript",
|
|
12
|
+
".mjs": "text/javascript",
|
|
13
|
+
".cjs": "text/javascript",
|
|
14
|
+
".ts": "text/typescript",
|
|
15
|
+
".tsx": "text/tsx",
|
|
16
|
+
".jsx": "text/jsx",
|
|
17
|
+
".svelte": "text/x-svelte",
|
|
18
|
+
".css": "text/css",
|
|
19
|
+
".scss": "text/x-scss",
|
|
20
|
+
".html": "text/html",
|
|
21
|
+
".htm": "text/html",
|
|
22
|
+
".xml": "application/xml",
|
|
23
|
+
".yaml": "application/yaml",
|
|
24
|
+
".yml": "application/yaml",
|
|
25
|
+
".toml": "application/toml",
|
|
26
|
+
".ini": "text/plain",
|
|
27
|
+
".env": "text/plain",
|
|
28
|
+
".sh": "text/x-shellscript",
|
|
29
|
+
".bash": "text/x-shellscript",
|
|
30
|
+
".py": "text/x-python",
|
|
31
|
+
".go": "text/x-go",
|
|
32
|
+
".rs": "text/x-rust",
|
|
33
|
+
".java": "text/x-java-source",
|
|
34
|
+
".c": "text/x-c",
|
|
35
|
+
".h": "text/x-c",
|
|
36
|
+
".cpp": "text/x-c++src",
|
|
37
|
+
".hpp": "text/x-c++hdr",
|
|
38
|
+
".sql": "application/sql",
|
|
39
|
+
".svg": "image/svg+xml",
|
|
40
|
+
".png": "image/png",
|
|
41
|
+
".jpg": "image/jpeg",
|
|
42
|
+
".jpeg": "image/jpeg",
|
|
43
|
+
".gif": "image/gif",
|
|
44
|
+
".webp": "image/webp",
|
|
45
|
+
".avif": "image/avif",
|
|
46
|
+
".bmp": "image/bmp",
|
|
47
|
+
".ico": "image/x-icon",
|
|
48
|
+
".mp4": "video/mp4",
|
|
49
|
+
".webm": "video/webm",
|
|
50
|
+
".mov": "video/quicktime",
|
|
51
|
+
".m4v": "video/x-m4v",
|
|
52
|
+
".ogv": "video/ogg",
|
|
53
|
+
".avi": "video/x-msvideo",
|
|
54
|
+
".mp3": "audio/mpeg",
|
|
55
|
+
".wav": "audio/wav",
|
|
56
|
+
".ogg": "audio/ogg",
|
|
57
|
+
".m4a": "audio/mp4",
|
|
58
|
+
".aac": "audio/aac",
|
|
59
|
+
".flac": "audio/flac",
|
|
60
|
+
".opus": "audio/ogg",
|
|
61
|
+
".glb": "model/gltf-binary",
|
|
62
|
+
".gltf": "model/gltf+json",
|
|
63
|
+
".stl": "model/stl",
|
|
64
|
+
".obj": "model/obj",
|
|
65
|
+
".3mf": "model/3mf",
|
|
66
|
+
".usdz": "model/vnd.usdz+zip",
|
|
67
|
+
".mtl": "text/plain",
|
|
68
|
+
".pdf": "application/pdf",
|
|
69
|
+
".wasm": "application/wasm",
|
|
70
|
+
".woff": "font/woff",
|
|
71
|
+
".woff2": "font/woff2",
|
|
72
|
+
".zip": "application/zip",
|
|
73
|
+
".gz": "application/gzip",
|
|
74
|
+
".tar": "application/x-tar",
|
|
75
|
+
".rar": "application/vnd.rar",
|
|
76
|
+
".7z": "application/x-7z-compressed",
|
|
77
|
+
".exe": "application/x-msdownload",
|
|
78
|
+
".dmg": "application/x-apple-diskimage",
|
|
79
|
+
".deb": "application/vnd.debian.binary-package",
|
|
80
|
+
".rpm": "application/x-rpm"
|
|
81
|
+
};
|
|
82
|
+
const MIME_BY_FILENAME = {
|
|
83
|
+
dockerfile: "text/x-dockerfile",
|
|
84
|
+
makefile: "text/x-makefile"
|
|
85
|
+
};
|
|
86
|
+
function mimeTypeForPath(path) {
|
|
87
|
+
const name = (path.split(/[\\/]/).pop() ?? "").toLowerCase();
|
|
88
|
+
const byName = Object.hasOwn(MIME_BY_FILENAME, name) ? MIME_BY_FILENAME[name] : void 0;
|
|
89
|
+
if (byName) return byName;
|
|
90
|
+
const dot = name.lastIndexOf(".");
|
|
91
|
+
const byExtension = dot > 0 ? MIME_BY_EXTENSION[name.slice(dot)] : void 0;
|
|
92
|
+
if (byExtension) return byExtension;
|
|
93
|
+
return name.startsWith(".") ? "text/plain" : null;
|
|
94
|
+
}
|
|
95
|
+
function normalizeMime(mimeType) {
|
|
96
|
+
if (!mimeType) return null;
|
|
97
|
+
return mimeType.split(";")[0]?.trim().toLowerCase() || null;
|
|
98
|
+
}
|
|
99
|
+
const MODEL_FORMAT_BY_MIME = {
|
|
100
|
+
"model/gltf-binary": "glb",
|
|
101
|
+
"model/gltf+json": "gltf",
|
|
102
|
+
"model/stl": "stl",
|
|
103
|
+
"model/obj": "obj"
|
|
104
|
+
};
|
|
105
|
+
function modelFormatForPath(path, mimeType) {
|
|
106
|
+
const format = (mime) => {
|
|
107
|
+
const key = normalizeMime(mime);
|
|
108
|
+
return key && Object.hasOwn(MODEL_FORMAT_BY_MIME, key) ? MODEL_FORMAT_BY_MIME[key] : void 0;
|
|
109
|
+
};
|
|
110
|
+
return format(mimeTypeForPath(path)) ?? format(mimeType) ?? null;
|
|
111
|
+
}
|
|
112
|
+
//#endregion
|
|
113
|
+
export { mimeTypeForPath, modelFormatForPath, normalizeMime };
|
|
@@ -19,8 +19,9 @@ import "./runtime/index.js";
|
|
|
19
19
|
import "./model/turn.js";
|
|
20
20
|
import "./model/session.js";
|
|
21
21
|
import "./realtime/board-awareness.js";
|
|
22
|
+
import { ModelFormat } from "./fs/mime.js";
|
|
22
23
|
import "./app.js";
|
|
23
24
|
import "./realtime/types.js";
|
|
24
25
|
import "./app-catalog.js";
|
|
25
26
|
import "./host-bridge.js";
|
|
26
|
-
export { BOARD_ANCHOR_SIDES, BOARD_ARROW_ROUTES, BOARD_CAMERA_TARGET, BOARD_CLIPBOARD_KIND, BOARD_CLIPBOARD_MIME, BOARD_COLOR_TOKENS, BOARD_DASHES, BOARD_DERIVED_SIZE_TYPES, BOARD_EFFECT_KINDS, BOARD_EFFECT_KIND_INFO, BOARD_ENTER_PRESETS, BOARD_EXTENSION_TYPE_PATTERN, BOARD_GRID_DEFAULT_SIZE, BOARD_GRID_MAX_SIZE, BOARD_GRID_MIN_SIZE, BOARD_ID_MAX_LENGTH, BOARD_ITEM_SCHEMAS, BOARD_ITEM_TYPES, BOARD_PLAY_MODES, BOARD_SCHEMA_TARGETS, BOARD_SHAPE_GEOMETRIES, BOARD_STROKE_MAX_SIZE, BOARD_STROKE_MIN_SIZE, BOARD_TASK_ARTIFACT_LIMIT, BOARD_TASK_SOURCE_PREFIX, BOARD_TEXT_ALIGNS, BoardAnchorSide, BoardAnimation, BoardAnimationHeader, BoardAnimationHeaderSchema, BoardAnimationSchema, BoardApplyOptions, BoardApplyResult, BoardArrowAnchor, BoardArrowAnchorSchema, BoardArrowBinding, BoardArrowBindingSchema, BoardArrowEnd, BoardArrowEndSchema, BoardArrowItem, BoardArrowItemSchema, BoardArrowRoute, BoardAudioItem, BoardAudioItemSchema, BoardBackgroundSchema, BoardBuiltinItem, BoardBuiltinItemType, BoardChangeSummary, BoardColor, BoardColorSchema, BoardColorToken, BoardCropSchema, BoardCustomItem, BoardCustomItemSchema, BoardDash, BoardDelta, BoardDiagnostic, BoardDocument, BoardDrawItem, BoardDrawItemSchema, BoardDrawPoint, BoardDrawPointSchema, BoardEaseSchema, BoardEffectItem, BoardEffectItemSchema, BoardEffectKind, BoardEnterPreset, BoardExtensionItem, BoardExtensionItemSchema, BoardFileBackedItem, BoardFileItem, BoardFileItemSchema, BoardFrame, BoardFrameItem, BoardFrameItemSchema, BoardHistoryPage, BoardIdSchema, BoardImageItem, BoardImageItemSchema, BoardItem, BoardItemLookup, BoardItemType, BoardJsonSchemaResult, BoardKeySchema, BoardKeyframe, BoardKeyframeSchema, BoardLayout, BoardManifest, BoardManifestSchema, BoardMarker, BoardMarkerSchema, BoardMatrix, BoardMediaOrigin, BoardMediaOriginSchema, BoardMediaSnapshot, BoardMediaSnapshotSchema, BoardMediaSource, BoardMediaSourceSchema, BoardPatch, BoardPatchResult, BoardPatchSchema, BoardPlayMode, BoardPlaybackCommand, BoardPlaybackCommandSchema, BoardPlaybackSnapshot, BoardPlaybackStatus, BoardPropertySpec, BoardReadResult, BoardRect, BoardScript, BoardScriptSchema, BoardSettings, BoardSettingsSchema, BoardShapeGeometry, BoardShapeItem, BoardShapeItemSchema, BoardSize, BoardSizeSchema, BoardState, BoardStyle, BoardStyleSchema, BoardTaskArtifact, BoardTaskArtifactSchema, BoardTaskItem, BoardTaskItemSchema, BoardTaskRunSource, BoardTaskSnapshot, BoardTaskSnapshotSchema, BoardTextItem, BoardTextItemSchema, BoardTextLayout, BoardTextMeasurer, BoardTrack, BoardTrackSchema, BoardTransactionRecord, BoardValueKind, BoardVec2, BoardVec2Schema, BoardVideoItem, BoardVideoItemSchema, GenerationRunPayload, IDENTITY_MATRIX, RequestSource, RequestSourceVia, TaskRunStatus, anchorPoint, applyBoardDelta, applyBoardPatch, applyBoardPatchToDocument, applyMatrix, arrowBindings, autoAnchorSide, bendControl, boardItemSchema, boardJsonSchema, boardPatchTouches, boardSchemaOverview, boardTaskSource, clampBoardFontSize, clampBoardStrokeSize, createBoardLayout, createDocumentLayout, createDocumentState, diffBoardDocuments, diffMergePatch, drawPointsBounds, drawSampleRadius, emptyBoardDocument, estimateTextWidth, featuredTaskArtifact, framePoint, hasAuthoredSize, invertMatrix, isArrowBinding, isBoardColorString, isBoardEase, isBoardPath, isBuiltinItem, isBuiltinItemType, isEmptyBoardDelta, isEmptyBoardPatch, isFileBackedItem, isMediaItem, isPublicBoardRemoteAddress, isSafeBoardSourcePath, layoutBoardText, listBoardProperties, mergePatch, multiplyMatrix, normalizeBoardRemoteUrl, parseBoardDocument, parseBoardItem, parseBoardManifest, parseBoardMediaSource, pointsRect, pruneBoardTrack, rankedTaskArtifacts, resolveBoardProperty, rotateAround, scaleVector, serializeBoardManifest, setBoardTextMeasurer, sideAnchor, taskArtifactPreviewUrl, taskArtifacts, taskRunArtifacts, taskRunToBoardTaskSnapshot, trackReferences, withObservedArtifactFacts };
|
|
27
|
+
export { BOARD_ANCHOR_SIDES, BOARD_ARROW_ROUTES, BOARD_CAMERA_TARGET, BOARD_CLIPBOARD_KIND, BOARD_CLIPBOARD_MIME, BOARD_COLOR_TOKENS, BOARD_DASHES, BOARD_DERIVED_SIZE_TYPES, BOARD_EFFECT_KINDS, BOARD_EFFECT_KIND_INFO, BOARD_ENTER_PRESETS, BOARD_EXTENSION_TYPE_PATTERN, BOARD_GRID_DEFAULT_SIZE, BOARD_GRID_MAX_SIZE, BOARD_GRID_MIN_SIZE, BOARD_ID_MAX_LENGTH, BOARD_ITEM_SCHEMAS, BOARD_ITEM_TYPES, BOARD_PLAY_MODES, BOARD_SCHEMA_TARGETS, BOARD_SHAPE_GEOMETRIES, BOARD_STROKE_MAX_SIZE, BOARD_STROKE_MIN_SIZE, BOARD_TASK_ARTIFACT_LIMIT, BOARD_TASK_SOURCE_PREFIX, BOARD_TEXT_ALIGNS, BoardAnchorSide, BoardAnimation, BoardAnimationHeader, BoardAnimationHeaderSchema, BoardAnimationSchema, BoardApplyOptions, BoardApplyResult, BoardArrowAnchor, BoardArrowAnchorSchema, BoardArrowBinding, BoardArrowBindingSchema, BoardArrowEnd, BoardArrowEndSchema, BoardArrowItem, BoardArrowItemSchema, BoardArrowRoute, BoardAudioItem, BoardAudioItemSchema, BoardBackgroundSchema, BoardBuiltinItem, BoardBuiltinItemType, BoardChangeSummary, BoardColor, BoardColorSchema, BoardColorToken, BoardCropSchema, BoardCustomItem, BoardCustomItemSchema, BoardDash, BoardDelta, BoardDiagnostic, BoardDocument, BoardDrawItem, BoardDrawItemSchema, BoardDrawPoint, BoardDrawPointSchema, BoardEaseSchema, BoardEffectItem, BoardEffectItemSchema, BoardEffectKind, BoardEnterPreset, BoardExtensionItem, BoardExtensionItemSchema, BoardFileBackedItem, BoardFileItem, BoardFileItemSchema, BoardFrame, BoardFrameItem, BoardFrameItemSchema, BoardHistoryPage, BoardIdSchema, BoardImageItem, BoardImageItemSchema, BoardItem, BoardItemLookup, BoardItemType, BoardJsonSchemaResult, BoardKeySchema, BoardKeyframe, BoardKeyframeSchema, BoardLayout, BoardManifest, BoardManifestSchema, BoardMarker, BoardMarkerSchema, BoardMatrix, BoardMediaOrigin, BoardMediaOriginSchema, BoardMediaSnapshot, BoardMediaSnapshotSchema, BoardMediaSource, BoardMediaSourceSchema, BoardPatch, BoardPatchResult, BoardPatchSchema, BoardPlayMode, BoardPlaybackCommand, BoardPlaybackCommandSchema, BoardPlaybackSnapshot, BoardPlaybackStatus, BoardPropertySpec, BoardReadResult, BoardRect, BoardScript, BoardScriptSchema, BoardSettings, BoardSettingsSchema, BoardShapeGeometry, BoardShapeItem, BoardShapeItemSchema, BoardSize, BoardSizeSchema, BoardState, BoardStyle, BoardStyleSchema, BoardTaskArtifact, BoardTaskArtifactSchema, BoardTaskItem, BoardTaskItemSchema, BoardTaskRunSource, BoardTaskSnapshot, BoardTaskSnapshotSchema, BoardTextItem, BoardTextItemSchema, BoardTextLayout, BoardTextMeasurer, BoardTrack, BoardTrackSchema, BoardTransactionRecord, BoardValueKind, BoardVec2, BoardVec2Schema, BoardVideoItem, BoardVideoItemSchema, GenerationRunPayload, IDENTITY_MATRIX, ModelFormat, RequestSource, RequestSourceVia, TaskRunStatus, anchorPoint, applyBoardDelta, applyBoardPatch, applyBoardPatchToDocument, applyMatrix, arrowBindings, autoAnchorSide, bendControl, boardItemSchema, boardJsonSchema, boardPatchTouches, boardSchemaOverview, boardTaskSource, clampBoardFontSize, clampBoardStrokeSize, createBoardLayout, createDocumentLayout, createDocumentState, diffBoardDocuments, diffMergePatch, drawPointsBounds, drawSampleRadius, emptyBoardDocument, estimateTextWidth, featuredTaskArtifact, framePoint, hasAuthoredSize, invertMatrix, isArrowBinding, isBoardColorString, isBoardEase, isBoardPath, isBuiltinItem, isBuiltinItemType, isEmptyBoardDelta, isEmptyBoardPatch, isFileBackedItem, isMediaItem, isPublicBoardRemoteAddress, isSafeBoardSourcePath, layoutBoardText, listBoardProperties, mergePatch, multiplyMatrix, normalizeBoardRemoteUrl, parseBoardDocument, parseBoardItem, parseBoardManifest, parseBoardMediaSource, pointsRect, pruneBoardTrack, rankedTaskArtifacts, resolveBoardProperty, rotateAround, scaleVector, serializeBoardManifest, setBoardTextMeasurer, sideAnchor, taskArtifactPreviewUrl, taskArtifacts, taskRunArtifacts, taskRunToBoardTaskSnapshot, trackReferences, withObservedArtifactFacts };
|