@supernova-studio/client 1.48.16 → 1.48.18
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/index.d.mts +61 -1
- package/dist/index.d.ts +61 -1
- package/dist/index.js +67 -30
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +102 -65
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -12285,7 +12285,6 @@ var ForgeFeatureArtifactsEndpoint = class {
|
|
|
12285
12285
|
};
|
|
12286
12286
|
|
|
12287
12287
|
// src/api/endpoints/forge/feature-iterations.ts
|
|
12288
|
-
import z352 from "zod";
|
|
12289
12288
|
var ForgeFeatureIterationsEndpoint = class {
|
|
12290
12289
|
constructor(requestExecutor) {
|
|
12291
12290
|
this.requestExecutor = requestExecutor;
|
|
@@ -12302,7 +12301,17 @@ var ForgeFeatureIterationsEndpoint = class {
|
|
|
12302
12301
|
updateArtifacts(workspaceId, projectId, featureId, body) {
|
|
12303
12302
|
return this.requestExecutor.json(
|
|
12304
12303
|
`/workspaces/${workspaceId}/forge/projects/${projectId}/features/${featureId}/iterations/update-artifacts`,
|
|
12305
|
-
|
|
12304
|
+
DTOFeatureIterationResponse,
|
|
12305
|
+
{
|
|
12306
|
+
body,
|
|
12307
|
+
method: "POST"
|
|
12308
|
+
}
|
|
12309
|
+
);
|
|
12310
|
+
}
|
|
12311
|
+
validateIteration(workspaceId, projectId, featureId, body) {
|
|
12312
|
+
return this.requestExecutor.json(
|
|
12313
|
+
`/workspaces/${workspaceId}/forge/projects/${projectId}/features/${featureId}/iterations/validate-iteration`,
|
|
12314
|
+
DTOFeatureIterationValidateResponse,
|
|
12306
12315
|
{
|
|
12307
12316
|
body,
|
|
12308
12317
|
method: "POST"
|
|
@@ -12574,7 +12583,7 @@ var ForgeProjectMembersEndpoint = class {
|
|
|
12574
12583
|
};
|
|
12575
12584
|
|
|
12576
12585
|
// src/api/endpoints/forge/projects.ts
|
|
12577
|
-
import
|
|
12586
|
+
import z352 from "zod";
|
|
12578
12587
|
var ForgeProjectsEndpoint = class {
|
|
12579
12588
|
constructor(requestExecutor) {
|
|
12580
12589
|
this.requestExecutor = requestExecutor;
|
|
@@ -12611,7 +12620,7 @@ var ForgeProjectsEndpoint = class {
|
|
|
12611
12620
|
);
|
|
12612
12621
|
}
|
|
12613
12622
|
action(workspaceId, projectId, body) {
|
|
12614
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/projects/${projectId}/action`,
|
|
12623
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/projects/${projectId}/action`, z352.any(), {
|
|
12615
12624
|
body,
|
|
12616
12625
|
method: "POST"
|
|
12617
12626
|
});
|
|
@@ -12717,7 +12726,7 @@ var MCPStreamsEndpoint = class {
|
|
|
12717
12726
|
};
|
|
12718
12727
|
|
|
12719
12728
|
// src/api/endpoints/workspaces/chat-threads.ts
|
|
12720
|
-
import { z as
|
|
12729
|
+
import { z as z353 } from "zod";
|
|
12721
12730
|
var WorkspaceChatThreadsEndpoint = class {
|
|
12722
12731
|
constructor(requestExecutor) {
|
|
12723
12732
|
this.requestExecutor = requestExecutor;
|
|
@@ -12749,7 +12758,7 @@ var WorkspaceChatThreadsEndpoint = class {
|
|
|
12749
12758
|
);
|
|
12750
12759
|
}
|
|
12751
12760
|
delete(workspaceId, threadId) {
|
|
12752
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/threads/${threadId}`,
|
|
12761
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/threads/${threadId}`, z353.any(), {
|
|
12753
12762
|
method: "DELETE"
|
|
12754
12763
|
});
|
|
12755
12764
|
}
|
|
@@ -12781,7 +12790,7 @@ var ChatThreadMessagesEndpoint = class {
|
|
|
12781
12790
|
);
|
|
12782
12791
|
}
|
|
12783
12792
|
score(workspaceId, threadId, body) {
|
|
12784
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/threads/${threadId}/scores`,
|
|
12793
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}/forge/threads/${threadId}/scores`, z353.any(), {
|
|
12785
12794
|
method: "POST",
|
|
12786
12795
|
body
|
|
12787
12796
|
});
|
|
@@ -12789,7 +12798,7 @@ var ChatThreadMessagesEndpoint = class {
|
|
|
12789
12798
|
};
|
|
12790
12799
|
|
|
12791
12800
|
// src/api/endpoints/workspaces/integrations.ts
|
|
12792
|
-
import { z as
|
|
12801
|
+
import { z as z354 } from "zod";
|
|
12793
12802
|
var WorkspaceIntegrationsEndpoint = class {
|
|
12794
12803
|
constructor(requestExecutor) {
|
|
12795
12804
|
this.requestExecutor = requestExecutor;
|
|
@@ -12798,7 +12807,7 @@ var WorkspaceIntegrationsEndpoint = class {
|
|
|
12798
12807
|
return this.requestExecutor.json(`/workspaces/${wsId}/integrations`, DTOIntegrationsGetListResponse);
|
|
12799
12808
|
}
|
|
12800
12809
|
delete(wsId, iId) {
|
|
12801
|
-
return this.requestExecutor.json(`/workspaces/${wsId}/integrations/${iId}`,
|
|
12810
|
+
return this.requestExecutor.json(`/workspaces/${wsId}/integrations/${iId}`, z354.unknown(), { method: "DELETE" });
|
|
12802
12811
|
}
|
|
12803
12812
|
};
|
|
12804
12813
|
|
|
@@ -12830,7 +12839,7 @@ var WorkspaceInvitationsEndpoint = class {
|
|
|
12830
12839
|
};
|
|
12831
12840
|
|
|
12832
12841
|
// src/api/endpoints/workspaces/members.ts
|
|
12833
|
-
import { z as
|
|
12842
|
+
import { z as z355 } from "zod";
|
|
12834
12843
|
var WorkspaceMembersEndpoint = class {
|
|
12835
12844
|
constructor(requestExecutor) {
|
|
12836
12845
|
this.requestExecutor = requestExecutor;
|
|
@@ -12847,7 +12856,7 @@ var WorkspaceMembersEndpoint = class {
|
|
|
12847
12856
|
});
|
|
12848
12857
|
}
|
|
12849
12858
|
invite(workspaceId, body) {
|
|
12850
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}/members`,
|
|
12859
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}/members`, z355.any(), { method: "POST", body });
|
|
12851
12860
|
}
|
|
12852
12861
|
delete(workspaceId, userId) {
|
|
12853
12862
|
return this.requestExecutor.json(`/workspaces/${workspaceId}/members/${userId}`, DTOWorkspaceResponse, {
|
|
@@ -12876,7 +12885,7 @@ var WorkspaceNpmRegistryEndpoint = class {
|
|
|
12876
12885
|
};
|
|
12877
12886
|
|
|
12878
12887
|
// src/api/endpoints/workspaces/subscription.ts
|
|
12879
|
-
import { z as
|
|
12888
|
+
import { z as z356 } from "zod";
|
|
12880
12889
|
var WorkspaceSubscriptionEndpoint = class {
|
|
12881
12890
|
constructor(requestExecutor) {
|
|
12882
12891
|
this.requestExecutor = requestExecutor;
|
|
@@ -12887,7 +12896,7 @@ var WorkspaceSubscriptionEndpoint = class {
|
|
|
12887
12896
|
});
|
|
12888
12897
|
}
|
|
12889
12898
|
update(workspaceId, body) {
|
|
12890
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}/subscription`,
|
|
12899
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}/subscription`, z356.any(), {
|
|
12891
12900
|
method: "PUT",
|
|
12892
12901
|
body
|
|
12893
12902
|
});
|
|
@@ -12905,7 +12914,28 @@ var WorkspaceSubscriptionEndpoint = class {
|
|
|
12905
12914
|
};
|
|
12906
12915
|
|
|
12907
12916
|
// src/api/endpoints/workspaces/workspaces.ts
|
|
12908
|
-
import { z as
|
|
12917
|
+
import { z as z357 } from "zod";
|
|
12918
|
+
|
|
12919
|
+
// src/api/endpoints/workspaces/billing.ts
|
|
12920
|
+
var WorkspaceBillingEndpoint = class {
|
|
12921
|
+
constructor(requestExecutor) {
|
|
12922
|
+
this.requestExecutor = requestExecutor;
|
|
12923
|
+
}
|
|
12924
|
+
creditsSpend(wsId, body) {
|
|
12925
|
+
return this.requestExecutor.json(`/workspaces/${wsId}/billing/credits/spend`, DTOBillingCreditsSpendResponse, {
|
|
12926
|
+
body,
|
|
12927
|
+
method: "POST"
|
|
12928
|
+
});
|
|
12929
|
+
}
|
|
12930
|
+
creditsCheck(wsId) {
|
|
12931
|
+
return this.requestExecutor.json(
|
|
12932
|
+
`/workspaces/${wsId}/billing/credits/check`,
|
|
12933
|
+
DTOBillingCreditsCheckIfCanSpendResponse
|
|
12934
|
+
);
|
|
12935
|
+
}
|
|
12936
|
+
};
|
|
12937
|
+
|
|
12938
|
+
// src/api/endpoints/workspaces/workspaces.ts
|
|
12909
12939
|
var WorkspacesEndpoint = class {
|
|
12910
12940
|
constructor(requestExecutor) {
|
|
12911
12941
|
this.requestExecutor = requestExecutor;
|
|
@@ -12915,12 +12945,14 @@ var WorkspacesEndpoint = class {
|
|
|
12915
12945
|
__publicField(this, "chatThreads");
|
|
12916
12946
|
__publicField(this, "integrations");
|
|
12917
12947
|
__publicField(this, "subscription");
|
|
12948
|
+
__publicField(this, "billing");
|
|
12918
12949
|
this.members = new WorkspaceMembersEndpoint(requestExecutor);
|
|
12919
12950
|
this.invitations = new WorkspaceInvitationsEndpoint(requestExecutor);
|
|
12920
12951
|
this.integrations = new WorkspaceIntegrationsEndpoint(requestExecutor);
|
|
12921
12952
|
this.npmRegistry = new WorkspaceNpmRegistryEndpoint(requestExecutor);
|
|
12922
12953
|
this.chatThreads = new WorkspaceChatThreadsEndpoint(requestExecutor);
|
|
12923
12954
|
this.subscription = new WorkspaceSubscriptionEndpoint(requestExecutor);
|
|
12955
|
+
this.billing = new WorkspaceBillingEndpoint(requestExecutor);
|
|
12924
12956
|
}
|
|
12925
12957
|
create(body) {
|
|
12926
12958
|
return this.requestExecutor.json("/workspaces", DTOWorkspaceResponse, {
|
|
@@ -12939,7 +12971,7 @@ var WorkspacesEndpoint = class {
|
|
|
12939
12971
|
return this.requestExecutor.json(`/workspaces/${workspaceId}`, DTOWorkspaceResponse, { method: "GET" });
|
|
12940
12972
|
}
|
|
12941
12973
|
delete(workspaceId) {
|
|
12942
|
-
return this.requestExecutor.json(`/workspaces/${workspaceId}`,
|
|
12974
|
+
return this.requestExecutor.json(`/workspaces/${workspaceId}`, z357.any(), { method: "DELETE" });
|
|
12943
12975
|
}
|
|
12944
12976
|
getPortalSettings(workspaceId) {
|
|
12945
12977
|
return this.requestExecutor.json(`/workspaces/${workspaceId}/portal/settings`, DTOPortalSettingsGetResponse, {
|
|
@@ -13097,9 +13129,9 @@ ${bodyText}`,
|
|
|
13097
13129
|
|
|
13098
13130
|
// src/api/transport/request-executor.ts
|
|
13099
13131
|
import fetch from "node-fetch";
|
|
13100
|
-
import { z as
|
|
13101
|
-
var ResponseWrapper =
|
|
13102
|
-
result:
|
|
13132
|
+
import { z as z358 } from "zod";
|
|
13133
|
+
var ResponseWrapper = z358.object({
|
|
13134
|
+
result: z358.record(z358.any())
|
|
13103
13135
|
});
|
|
13104
13136
|
var RequestExecutor = class {
|
|
13105
13137
|
constructor(testServerConfig) {
|
|
@@ -13114,6 +13146,9 @@ var RequestExecutor = class {
|
|
|
13114
13146
|
if (this.testServerConfig.accessToken) {
|
|
13115
13147
|
defaultHeaders["Authorization"] = `Bearer ${this.testServerConfig.accessToken}`;
|
|
13116
13148
|
}
|
|
13149
|
+
if (this.testServerConfig.apiSecret) {
|
|
13150
|
+
defaultHeaders["x-sn-api-secret"] = this.testServerConfig.apiSecret;
|
|
13151
|
+
}
|
|
13117
13152
|
let body;
|
|
13118
13153
|
if (requestInit.body && typeof requestInit.body === "object") body = JSON.stringify(requestInit.body);
|
|
13119
13154
|
const response = await fetch(this.fullUrl(path, requestInit.query), {
|
|
@@ -13165,7 +13200,9 @@ var SupernovaApiClient = class {
|
|
|
13165
13200
|
__publicField(this, "files");
|
|
13166
13201
|
__publicField(this, "threads");
|
|
13167
13202
|
__publicField(this, "mcpStreams");
|
|
13203
|
+
const apiSecret = config.apiSecret ?? process?.env?.SUPERNOVA_API_SECRET;
|
|
13168
13204
|
const requestExecutor = new RequestExecutor({
|
|
13205
|
+
apiSecret,
|
|
13169
13206
|
host: config.host,
|
|
13170
13207
|
accessToken: config.accessToken
|
|
13171
13208
|
});
|
|
@@ -13182,25 +13219,25 @@ var SupernovaApiClient = class {
|
|
|
13182
13219
|
};
|
|
13183
13220
|
|
|
13184
13221
|
// src/events/design-system.ts
|
|
13185
|
-
import { z as
|
|
13186
|
-
var DTOEventFigmaNodesRendered =
|
|
13187
|
-
type:
|
|
13188
|
-
designSystemId:
|
|
13189
|
-
versionId:
|
|
13190
|
-
figmaNodePersistentIds:
|
|
13191
|
-
});
|
|
13192
|
-
var DTOEventDataSourcesImported =
|
|
13193
|
-
type:
|
|
13194
|
-
designSystemId:
|
|
13195
|
-
versionId:
|
|
13196
|
-
importJobId:
|
|
13222
|
+
import { z as z359 } from "zod";
|
|
13223
|
+
var DTOEventFigmaNodesRendered = z359.object({
|
|
13224
|
+
type: z359.literal("DesignSystem.FigmaNodesRendered"),
|
|
13225
|
+
designSystemId: z359.string(),
|
|
13226
|
+
versionId: z359.string(),
|
|
13227
|
+
figmaNodePersistentIds: z359.string().array()
|
|
13228
|
+
});
|
|
13229
|
+
var DTOEventDataSourcesImported = z359.object({
|
|
13230
|
+
type: z359.literal("DesignSystem.ImportJobFinished"),
|
|
13231
|
+
designSystemId: z359.string(),
|
|
13232
|
+
versionId: z359.string(),
|
|
13233
|
+
importJobId: z359.string(),
|
|
13197
13234
|
dataSourceType: DataSourceRemoteType,
|
|
13198
|
-
dataSourceIds:
|
|
13235
|
+
dataSourceIds: z359.string().array()
|
|
13199
13236
|
});
|
|
13200
13237
|
|
|
13201
13238
|
// src/events/event.ts
|
|
13202
|
-
import { z as
|
|
13203
|
-
var DTOEvent =
|
|
13239
|
+
import { z as z360 } from "zod";
|
|
13240
|
+
var DTOEvent = z360.discriminatedUnion("type", [DTOEventDataSourcesImported, DTOEventFigmaNodesRendered]);
|
|
13204
13241
|
|
|
13205
13242
|
// src/sync/docs-local-action-executor.ts
|
|
13206
13243
|
function applyActionsLocally(input) {
|
|
@@ -13496,7 +13533,7 @@ var LocalDocsElementActionExecutor = class {
|
|
|
13496
13533
|
import PQueue from "p-queue";
|
|
13497
13534
|
|
|
13498
13535
|
// src/yjs/design-system-content/documentation-hierarchy.ts
|
|
13499
|
-
import { z as
|
|
13536
|
+
import { z as z361 } from "zod";
|
|
13500
13537
|
|
|
13501
13538
|
// src/yjs/version-room/base.ts
|
|
13502
13539
|
var VersionRoomBaseYDoc = class {
|
|
@@ -14046,24 +14083,24 @@ var FrontendVersionRoomYDoc = class {
|
|
|
14046
14083
|
};
|
|
14047
14084
|
|
|
14048
14085
|
// src/yjs/design-system-content/documentation-hierarchy.ts
|
|
14049
|
-
var DocumentationHierarchySettings =
|
|
14050
|
-
routingVersion:
|
|
14051
|
-
isDraftFeatureAdopted:
|
|
14052
|
-
isApprovalFeatureEnabled:
|
|
14053
|
-
approvalRequiredForPublishing:
|
|
14086
|
+
var DocumentationHierarchySettings = z361.object({
|
|
14087
|
+
routingVersion: z361.string(),
|
|
14088
|
+
isDraftFeatureAdopted: z361.boolean(),
|
|
14089
|
+
isApprovalFeatureEnabled: z361.boolean(),
|
|
14090
|
+
approvalRequiredForPublishing: z361.boolean()
|
|
14054
14091
|
});
|
|
14055
14092
|
function yjsToDocumentationHierarchy(doc) {
|
|
14056
14093
|
return new FrontendVersionRoomYDoc(doc).getDocumentationHierarchy();
|
|
14057
14094
|
}
|
|
14058
14095
|
|
|
14059
14096
|
// src/yjs/design-system-content/item-configuration.ts
|
|
14060
|
-
import { z as
|
|
14061
|
-
var DTODocumentationPageRoomHeaderData =
|
|
14062
|
-
title:
|
|
14097
|
+
import { z as z362 } from "zod";
|
|
14098
|
+
var DTODocumentationPageRoomHeaderData = z362.object({
|
|
14099
|
+
title: z362.string(),
|
|
14063
14100
|
configuration: DTODocumentationItemConfigurationV2
|
|
14064
14101
|
});
|
|
14065
|
-
var DTODocumentationPageRoomHeaderDataUpdate =
|
|
14066
|
-
title:
|
|
14102
|
+
var DTODocumentationPageRoomHeaderDataUpdate = z362.object({
|
|
14103
|
+
title: z362.string().optional(),
|
|
14067
14104
|
configuration: DTODocumentationItemConfigurationV2.omit({ header: true }).extend({ header: DocumentationItemHeaderV2.partial() }).optional()
|
|
14068
14105
|
});
|
|
14069
14106
|
function itemConfigurationToYjs(yDoc, item) {
|
|
@@ -14098,9 +14135,9 @@ var PageBlockEditorModel = PageBlockEditorModelV2;
|
|
|
14098
14135
|
var PageSectionEditorModel = PageSectionEditorModelV2;
|
|
14099
14136
|
|
|
14100
14137
|
// src/yjs/docs-editor/model/page.ts
|
|
14101
|
-
import { z as
|
|
14102
|
-
var DocumentationPageEditorModel =
|
|
14103
|
-
blocks:
|
|
14138
|
+
import { z as z363 } from "zod";
|
|
14139
|
+
var DocumentationPageEditorModel = z363.object({
|
|
14140
|
+
blocks: z363.array(DocumentationPageContentItem)
|
|
14104
14141
|
});
|
|
14105
14142
|
|
|
14106
14143
|
// src/yjs/docs-editor/prosemirror/inner-editor-schema.ts
|
|
@@ -17777,7 +17814,7 @@ var blocks = [
|
|
|
17777
17814
|
|
|
17778
17815
|
// src/yjs/docs-editor/prosemirror-to-blocks.ts
|
|
17779
17816
|
import { yXmlFragmentToProsemirrorJSON } from "y-prosemirror";
|
|
17780
|
-
import { z as
|
|
17817
|
+
import { z as z364 } from "zod";
|
|
17781
17818
|
function yDocToPage(yDoc, definitions) {
|
|
17782
17819
|
return yXmlFragmentToPage(yDoc.getXmlFragment("default"), definitions);
|
|
17783
17820
|
}
|
|
@@ -17853,7 +17890,7 @@ function prosemirrorNodeToSectionItem(prosemirrorNode, definitionsMap) {
|
|
|
17853
17890
|
if (!id) return null;
|
|
17854
17891
|
return {
|
|
17855
17892
|
id,
|
|
17856
|
-
title: getProsemirrorAttribute(prosemirrorNode, "title",
|
|
17893
|
+
title: getProsemirrorAttribute(prosemirrorNode, "title", z364.string()) ?? "",
|
|
17857
17894
|
columns: (prosemirrorNode.content ?? []).filter((c) => c.type === "sectionItemColumn").map((c) => prosemirrorNodeToSectionColumns(c, definitionsMap)).filter(nonNullFilter)
|
|
17858
17895
|
};
|
|
17859
17896
|
}
|
|
@@ -17887,7 +17924,7 @@ function internalProsemirrorNodesToBlocks(prosemirrorNodes, definitionsMap, dept
|
|
|
17887
17924
|
});
|
|
17888
17925
|
}
|
|
17889
17926
|
function internalProsemirrorNodeToBlock(prosemirrorNode, definitionsMap, depth) {
|
|
17890
|
-
const definitionId = getProsemirrorAttribute(prosemirrorNode, "definitionId",
|
|
17927
|
+
const definitionId = getProsemirrorAttribute(prosemirrorNode, "definitionId", z364.string());
|
|
17891
17928
|
if (!definitionId) {
|
|
17892
17929
|
console.warn(`definitionId on ${prosemirrorNode.type} is required to be interpreted as a block, skipping node`);
|
|
17893
17930
|
return [];
|
|
@@ -17928,7 +17965,7 @@ function parseAsRichText(prosemirrorNode, definition, property) {
|
|
|
17928
17965
|
const id = getProsemirrorBlockId(prosemirrorNode);
|
|
17929
17966
|
if (!id) return null;
|
|
17930
17967
|
const variantId = getProsemirrorBlockVariantId(prosemirrorNode);
|
|
17931
|
-
const calloutType = parseCalloutType(getProsemirrorAttribute(prosemirrorNode, "type",
|
|
17968
|
+
const calloutType = parseCalloutType(getProsemirrorAttribute(prosemirrorNode, "type", z364.string().optional()));
|
|
17932
17969
|
return {
|
|
17933
17970
|
id,
|
|
17934
17971
|
type: "Block",
|
|
@@ -18051,9 +18088,9 @@ function parseRichTextAttribute(mark) {
|
|
|
18051
18088
|
return null;
|
|
18052
18089
|
}
|
|
18053
18090
|
function parseProsemirrorLink(mark) {
|
|
18054
|
-
const href = getProsemirrorAttribute(mark, "href",
|
|
18091
|
+
const href = getProsemirrorAttribute(mark, "href", z364.string().optional());
|
|
18055
18092
|
if (!href) return null;
|
|
18056
|
-
const target = getProsemirrorAttribute(mark, "target",
|
|
18093
|
+
const target = getProsemirrorAttribute(mark, "target", z364.string().optional());
|
|
18057
18094
|
const openInNewTab = target === "_blank";
|
|
18058
18095
|
if (href.startsWith("@")) {
|
|
18059
18096
|
return {
|
|
@@ -18072,9 +18109,9 @@ function parseProsemirrorLink(mark) {
|
|
|
18072
18109
|
}
|
|
18073
18110
|
}
|
|
18074
18111
|
function parseProsemirrorCommentHighlight(mark) {
|
|
18075
|
-
const highlightId = getProsemirrorAttribute(mark, "highlightId",
|
|
18112
|
+
const highlightId = getProsemirrorAttribute(mark, "highlightId", z364.string().optional());
|
|
18076
18113
|
if (!highlightId) return null;
|
|
18077
|
-
const isResolved = getProsemirrorAttribute(mark, "resolved",
|
|
18114
|
+
const isResolved = getProsemirrorAttribute(mark, "resolved", z364.boolean().optional()) ?? false;
|
|
18078
18115
|
return {
|
|
18079
18116
|
type: "Comment",
|
|
18080
18117
|
commentHighlightId: highlightId,
|
|
@@ -18085,7 +18122,7 @@ function parseAsTable(prosemirrorNode, definition, property) {
|
|
|
18085
18122
|
const id = getProsemirrorBlockId(prosemirrorNode);
|
|
18086
18123
|
if (!id) return null;
|
|
18087
18124
|
const variantId = getProsemirrorBlockVariantId(prosemirrorNode);
|
|
18088
|
-
const hasBorder = getProsemirrorAttribute(prosemirrorNode, "hasBorder",
|
|
18125
|
+
const hasBorder = getProsemirrorAttribute(prosemirrorNode, "hasBorder", z364.boolean().optional()) !== false;
|
|
18089
18126
|
const tableChild = prosemirrorNode.content?.find((c) => c.type === "table");
|
|
18090
18127
|
if (!tableChild) {
|
|
18091
18128
|
return emptyTable(id, variantId, 0);
|
|
@@ -18131,9 +18168,9 @@ function parseAsTable(prosemirrorNode, definition, property) {
|
|
|
18131
18168
|
function parseAsTableCell(prosemirrorNode) {
|
|
18132
18169
|
const id = getProsemirrorBlockId(prosemirrorNode);
|
|
18133
18170
|
if (!id) return null;
|
|
18134
|
-
const textAlign = getProsemirrorAttribute(prosemirrorNode, "textAlign",
|
|
18171
|
+
const textAlign = getProsemirrorAttribute(prosemirrorNode, "textAlign", z364.string().optional());
|
|
18135
18172
|
let columnWidth;
|
|
18136
|
-
const columnWidthArray = getProsemirrorAttribute(prosemirrorNode, "colwidth",
|
|
18173
|
+
const columnWidthArray = getProsemirrorAttribute(prosemirrorNode, "colwidth", z364.array(z364.number()).nullish());
|
|
18137
18174
|
if (columnWidthArray) {
|
|
18138
18175
|
columnWidth = roundDimension(columnWidthArray[0]);
|
|
18139
18176
|
}
|
|
@@ -18169,7 +18206,7 @@ function parseAsTableNode(prosemirrorNode) {
|
|
|
18169
18206
|
value: parseRichText(prosemirrorNode.content ?? [])
|
|
18170
18207
|
};
|
|
18171
18208
|
case "image":
|
|
18172
|
-
const items = getProsemirrorAttribute(prosemirrorNode, "items",
|
|
18209
|
+
const items = getProsemirrorAttribute(prosemirrorNode, "items", z364.string());
|
|
18173
18210
|
if (!items) return null;
|
|
18174
18211
|
const parsedItems = PageBlockItemV2.array().safeParse(JSON.parse(items));
|
|
18175
18212
|
if (!parsedItems.success) return null;
|
|
@@ -18283,7 +18320,7 @@ function definitionExpectsPlaceholderItem(definition) {
|
|
|
18283
18320
|
);
|
|
18284
18321
|
}
|
|
18285
18322
|
function parseBlockItems(prosemirrorNode, definition) {
|
|
18286
|
-
const itemsString = getProsemirrorAttribute(prosemirrorNode, "items",
|
|
18323
|
+
const itemsString = getProsemirrorAttribute(prosemirrorNode, "items", z364.string());
|
|
18287
18324
|
if (!itemsString) return null;
|
|
18288
18325
|
const itemsJson = JSON.parse(itemsString);
|
|
18289
18326
|
if (!Array.isArray(itemsJson)) {
|
|
@@ -18294,18 +18331,18 @@ function parseBlockItems(prosemirrorNode, definition) {
|
|
|
18294
18331
|
}
|
|
18295
18332
|
function parseAppearance(prosemirrorNode) {
|
|
18296
18333
|
let appearance = {};
|
|
18297
|
-
const rawAppearanceString = getProsemirrorAttribute(prosemirrorNode, "appearance",
|
|
18334
|
+
const rawAppearanceString = getProsemirrorAttribute(prosemirrorNode, "appearance", z364.string().optional());
|
|
18298
18335
|
if (rawAppearanceString) {
|
|
18299
18336
|
const parsedAppearance = PageBlockAppearanceV2.safeParse(JSON.parse(rawAppearanceString));
|
|
18300
18337
|
if (parsedAppearance.success) {
|
|
18301
18338
|
appearance = parsedAppearance.data;
|
|
18302
18339
|
}
|
|
18303
18340
|
}
|
|
18304
|
-
const columns = getProsemirrorAttribute(prosemirrorNode, "columns",
|
|
18341
|
+
const columns = getProsemirrorAttribute(prosemirrorNode, "columns", z364.number().optional());
|
|
18305
18342
|
if (columns) {
|
|
18306
18343
|
appearance.numberOfColumns = columns;
|
|
18307
18344
|
}
|
|
18308
|
-
const backgroundColor = getProsemirrorAttribute(prosemirrorNode, "backgroundColor",
|
|
18345
|
+
const backgroundColor = getProsemirrorAttribute(prosemirrorNode, "backgroundColor", z364.string().optional());
|
|
18309
18346
|
if (backgroundColor) {
|
|
18310
18347
|
const parsedColor = PageBlockColorV2.safeParse(JSON.parse(backgroundColor));
|
|
18311
18348
|
if (parsedColor.success) {
|
|
@@ -18406,12 +18443,12 @@ function valueSchemaForPropertyType(type) {
|
|
|
18406
18443
|
}
|
|
18407
18444
|
}
|
|
18408
18445
|
function getProsemirrorBlockId(prosemirrorNode) {
|
|
18409
|
-
const id = getProsemirrorAttribute(prosemirrorNode, "id",
|
|
18446
|
+
const id = getProsemirrorAttribute(prosemirrorNode, "id", z364.string());
|
|
18410
18447
|
if (!id) console.warn(`Prosemirror attribute "id" on ${prosemirrorNode.type} is required`);
|
|
18411
18448
|
return id;
|
|
18412
18449
|
}
|
|
18413
18450
|
function getProsemirrorBlockVariantId(prosemirrorNode) {
|
|
18414
|
-
return getProsemirrorAttribute(prosemirrorNode, "variantId", nullishToOptional(
|
|
18451
|
+
return getProsemirrorAttribute(prosemirrorNode, "variantId", nullishToOptional(z364.string()));
|
|
18415
18452
|
}
|
|
18416
18453
|
function getProsemirrorAttribute(prosemirrorNode, attributeName, validationSchema) {
|
|
18417
18454
|
const parsedAttr = validationSchema.safeParse(prosemirrorNode.attrs?.[attributeName]);
|