@crowi/api-contract 2.0.0-alpha.1 → 2.0.0-alpha.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/index.js CHANGED
@@ -132,6 +132,7 @@ __export(index_exports, {
132
132
  InviteUsersRequestSchema: () => InviteUsersRequestSchema,
133
133
  InviteUsersResponseSchema: () => InviteUsersResponseSchema,
134
134
  InvitedUserResultSchema: () => InvitedUserResultSchema,
135
+ KNOWN_HTML_ELEMENTS: () => KNOWN_HTML_ELEMENTS,
135
136
  LanguageSchema: () => LanguageSchema,
136
137
  LikerSchema: () => LikerSchema,
137
138
  LikersResponseSchema: () => LikersResponseSchema,
@@ -230,6 +231,7 @@ __export(index_exports, {
230
231
  RenameTreeErrorSchema: () => RenameTreeErrorSchema,
231
232
  ResetPasswordRequestSchema: () => ResetPasswordRequestSchema,
232
233
  ResetPasswordResponseSchema: () => ResetPasswordResponseSchema,
234
+ RevertToRevisionRequestSchema: () => RevertToRevisionRequestSchema,
233
235
  RevisionInvalidRequestErrorSchema: () => RevisionInvalidRequestErrorSchema,
234
236
  RevisionMetaSchema: () => RevisionMetaSchema,
235
237
  RevisionMetaSchemaShape: () => RevisionMetaSchemaShape,
@@ -239,6 +241,7 @@ __export(index_exports, {
239
241
  RevokeResponseSchema: () => RevokeResponseSchema,
240
242
  SCOPES: () => SCOPES,
241
243
  STATIC_CAPABILITIES: () => STATIC_CAPABILITIES,
244
+ STRIP_KNOWN_HTML_TAGS_MAX_LENGTH: () => STRIP_KNOWN_HTML_TAGS_MAX_LENGTH,
242
245
  SearchAdminUsersByEmailRequestSchema: () => SearchAdminUsersByEmailRequestSchema,
243
246
  SearchAdminUsersByEmailResponseSchema: () => SearchAdminUsersByEmailResponseSchema,
244
247
  SearchDriverEntrySchema: () => SearchDriverEntrySchema,
@@ -419,8 +422,10 @@ __export(index_exports, {
419
422
  removeFromAdminRoute: () => removeFromAdminRoute,
420
423
  renamePageRoute: () => renamePageRoute,
421
424
  renameSubtreeRoute: () => renameSubtreeRoute,
425
+ resendInviteRoute: () => resendInviteRoute,
422
426
  resetPasswordRoute: () => resetPasswordRoute,
423
427
  revertDeletedPageRoute: () => revertDeletedPageRoute,
428
+ revertToRevisionRoute: () => revertToRevisionRoute,
424
429
  revisionRoutes: () => revisionRoutes,
425
430
  revokeRoute: () => revokeRoute,
426
431
  scopeSatisfies: () => scopeSatisfies,
@@ -432,6 +437,7 @@ __export(index_exports, {
432
437
  sendTestMailRoute: () => sendTestMailRoute,
433
438
  setPageGrantRoute: () => setPageGrantRoute,
434
439
  setWatchStatusRoute: () => setWatchStatusRoute,
440
+ stripKnownHtmlTags: () => stripKnownHtmlTags,
435
441
  suspendUserRoute: () => suspendUserRoute,
436
442
  tokenAuthRoutes: () => tokenAuthRoutes,
437
443
  tokenLoginRoute: () => tokenLoginRoute,
@@ -485,6 +491,7 @@ var ERROR_CODES = [
485
491
  "PAGE_NOT_FOUND",
486
492
  "PAGE_NOT_GRANTED",
487
493
  "PAGE_REVISION_ERROR",
494
+ "PAGE_TWIN_EXISTS",
488
495
  "INVALID_GRANT",
489
496
  // --- comment / notification domain ---
490
497
  "COMMENT_NOT_FOUND",
@@ -513,6 +520,152 @@ var ERROR_CODES = [
513
520
  ];
514
521
  var ErrorCodeSchema = import_zod_openapi.z.enum(ERROR_CODES).openapi("ErrorCode");
515
522
 
523
+ // src/util/html-elements.ts
524
+ var KNOWN_HTML_ELEMENTS = /* @__PURE__ */ new Set([
525
+ "a",
526
+ "abbr",
527
+ "acronym",
528
+ "address",
529
+ "applet",
530
+ "area",
531
+ "article",
532
+ "aside",
533
+ "audio",
534
+ "b",
535
+ "base",
536
+ "basefont",
537
+ "bdi",
538
+ "bdo",
539
+ "big",
540
+ "blink",
541
+ "blockquote",
542
+ "body",
543
+ "br",
544
+ "button",
545
+ "canvas",
546
+ "caption",
547
+ "center",
548
+ "cite",
549
+ "code",
550
+ "col",
551
+ "colgroup",
552
+ "data",
553
+ "datalist",
554
+ "dd",
555
+ "del",
556
+ "details",
557
+ "dfn",
558
+ "dialog",
559
+ "dir",
560
+ "div",
561
+ "dl",
562
+ "dt",
563
+ "em",
564
+ "embed",
565
+ "fieldset",
566
+ "figcaption",
567
+ "figure",
568
+ "font",
569
+ "footer",
570
+ "form",
571
+ "frame",
572
+ "frameset",
573
+ "h1",
574
+ "h2",
575
+ "h3",
576
+ "h4",
577
+ "h5",
578
+ "h6",
579
+ "head",
580
+ "header",
581
+ "hgroup",
582
+ "hr",
583
+ "html",
584
+ "i",
585
+ "iframe",
586
+ "img",
587
+ "input",
588
+ "ins",
589
+ "kbd",
590
+ "label",
591
+ "legend",
592
+ "li",
593
+ "link",
594
+ "listing",
595
+ "main",
596
+ "map",
597
+ "mark",
598
+ "marquee",
599
+ "menu",
600
+ "menuitem",
601
+ "meta",
602
+ "meter",
603
+ "nav",
604
+ "nobr",
605
+ "noembed",
606
+ "noframes",
607
+ "noscript",
608
+ "object",
609
+ "ol",
610
+ "optgroup",
611
+ "option",
612
+ "output",
613
+ "p",
614
+ "param",
615
+ "picture",
616
+ "pre",
617
+ "progress",
618
+ "q",
619
+ "rb",
620
+ "rp",
621
+ "rt",
622
+ "rtc",
623
+ "ruby",
624
+ "s",
625
+ "samp",
626
+ "script",
627
+ "search",
628
+ "section",
629
+ "select",
630
+ "slot",
631
+ "small",
632
+ "source",
633
+ "span",
634
+ "strike",
635
+ "strong",
636
+ "style",
637
+ "sub",
638
+ "summary",
639
+ "sup",
640
+ "svg",
641
+ "table",
642
+ "tbody",
643
+ "td",
644
+ "template",
645
+ "textarea",
646
+ "tfoot",
647
+ "th",
648
+ "thead",
649
+ "time",
650
+ "title",
651
+ "tr",
652
+ "track",
653
+ "tt",
654
+ "u",
655
+ "ul",
656
+ "var",
657
+ "video",
658
+ "wbr",
659
+ "xmp"
660
+ ]);
661
+ var KNOWN_HTML_TAG_REGEX = new RegExp(`</?(?:${[...KNOWN_HTML_ELEMENTS].join("|")})(?![\\w-])(?:[^>"']|"[^"]*"|'[^']*')*>`, "gi");
662
+ var STRIP_KNOWN_HTML_TAGS_MAX_LENGTH = 4096;
663
+ function stripKnownHtmlTags(text) {
664
+ if (text.length > STRIP_KNOWN_HTML_TAGS_MAX_LENGTH) return text;
665
+ KNOWN_HTML_TAG_REGEX.lastIndex = 0;
666
+ return text.replace(KNOWN_HTML_TAG_REGEX, "");
667
+ }
668
+
516
669
  // src/contracts/app.ts
517
670
  var import_zod_openapi4 = require("@hono/zod-openapi");
518
671
 
@@ -615,7 +768,8 @@ var AppInfoResponseSchema = import_zod_openapi3.z.object({
615
768
  confidential: import_zod_openapi3.z.string().nullable(),
616
769
  version: import_zod_openapi3.z.string(),
617
770
  apiVersion: import_zod_openapi3.z.string(),
618
- capabilities: import_zod_openapi3.z.array(import_zod_openapi3.z.string())
771
+ capabilities: import_zod_openapi3.z.array(import_zod_openapi3.z.string()),
772
+ canSelfRegister: import_zod_openapi3.z.boolean()
619
773
  });
620
774
 
621
775
  // src/contracts/app.ts
@@ -1512,7 +1666,12 @@ var ListPagesRequestSchema = import_zod_openapi19.z.object({
1512
1666
  // "newest-updated first" order so existing callers are unaffected.
1513
1667
  // `path` sorts alphabetically by full page path (≈ name order).
1514
1668
  sort: import_zod_openapi19.z.enum(["updatedAt", "createdAt", "path"]).optional().default("updatedAt"),
1515
- order: import_zod_openapi19.z.enum(["asc", "desc"]).optional().default("desc")
1669
+ order: import_zod_openapi19.z.enum(["asc", "desc"]).optional().default("desc"),
1670
+ // When listing a portal path (`/foo/`), open the portal document at this
1671
+ // past revision so the catch-all can mirror `?revision_id=` on portals.
1672
+ // Only the `portalPage` is rewound — the child rows always reflect the
1673
+ // latest. Absent for normal listings.
1674
+ revision_id: import_zod_openapi19.z.string().optional()
1516
1675
  });
1517
1676
  var PagerSchema = import_zod_openapi19.z.object({
1518
1677
  prev: import_zod_openapi19.z.number().nullable(),
@@ -1522,7 +1681,15 @@ var PagerSchema = import_zod_openapi19.z.object({
1522
1681
  var ListPagesResponseSchema = import_zod_openapi19.z.object({
1523
1682
  pages: import_zod_openapi19.z.array(PageSchema),
1524
1683
  pager: PagerSchema,
1525
- portalPage: PageSchema.nullable().optional()
1684
+ portalPage: PageSchema.nullable().optional(),
1685
+ // When listing a portal path (`/foo/`) that has NO portal document of
1686
+ // its own but a content page DOES live at the stripped path (`/foo`),
1687
+ // this carries that content page. The list view uses it to suppress the
1688
+ // "Create Portal" CTA and surface a "portalize this page" banner instead
1689
+ // (feature-update-pages-list-ux §4). Mutually exclusive with `portalPage`
1690
+ // — only set when `portalPage` is null. Absent / null for ordinary
1691
+ // listings.
1692
+ contentPage: PageSchema.nullable().optional()
1526
1693
  });
1527
1694
  var PageChildSegmentSchema = import_zod_openapi19.z.object({
1528
1695
  // The bare segment name immediately under the queried path
@@ -1563,6 +1730,10 @@ var UpdatePageRequestSchema = import_zod_openapi19.z.object({
1563
1730
  revision_id: import_zod_openapi19.z.string().optional(),
1564
1731
  grant: import_zod_openapi19.z.number().optional()
1565
1732
  });
1733
+ var RevertToRevisionRequestSchema = import_zod_openapi19.z.object({
1734
+ page_id: import_zod_openapi19.z.string(),
1735
+ revision_id: import_zod_openapi19.z.string()
1736
+ });
1566
1737
  var SetPageGrantRequestSchema = import_zod_openapi19.z.object({
1567
1738
  page_id: import_zod_openapi19.z.string(),
1568
1739
  grant: import_zod_openapi19.z.number().int()
@@ -3721,6 +3892,36 @@ var revertDeletedPageRoute = (0, import_zod_openapi39.createRoute)({
3721
3892
  }
3722
3893
  }
3723
3894
  });
3895
+ var revertToRevisionRoute = (0, import_zod_openapi39.createRoute)({
3896
+ method: "post",
3897
+ path: "/pages/revert-to-revision",
3898
+ tags: ["page"],
3899
+ security: [{ bearerAuth: [] }],
3900
+ summary: "Revert a page to one of its past revisions (non-destructive \u2014 stacks a new revision)",
3901
+ request: {
3902
+ body: {
3903
+ content: { "application/json": { schema: RevertToRevisionRequestSchema } }
3904
+ }
3905
+ },
3906
+ responses: {
3907
+ 200: {
3908
+ description: "The page with the reverted body as its new latest revision",
3909
+ content: { "application/json": { schema: PageResponseSchema } }
3910
+ },
3911
+ 400: {
3912
+ description: "PAGE_REVERT_TO_REVISION_FAILED (e.g. the revision does not belong to the page)",
3913
+ content: { "application/json": { schema: PageBadRequestErrorSchema } }
3914
+ },
3915
+ 401: {
3916
+ description: "Authentication required",
3917
+ content: { "application/json": { schema: AuthenticationRequiredErrorSchema } }
3918
+ },
3919
+ 404: {
3920
+ description: "Page not found (also covers grant-denied)",
3921
+ content: { "application/json": { schema: PageNotFoundErrorSchema } }
3922
+ }
3923
+ }
3924
+ });
3724
3925
  var renamePageRoute = (0, import_zod_openapi39.createRoute)({
3725
3926
  method: "post",
3726
3927
  path: "/pages/rename",
@@ -3818,6 +4019,8 @@ var pageRoutes = {
3818
4019
  deletePageRoute,
3819
4020
  // POST /pages/revert — revertDeletedPage
3820
4021
  revertDeletedPageRoute,
4022
+ // POST /pages/revert-to-revision — revertToRevision
4023
+ revertToRevisionRoute,
3821
4024
  // POST /pages/rename — renamePage
3822
4025
  renamePageRoute,
3823
4026
  // POST /pages/rename-subtree — renameSubtree (portal-less folder)
@@ -5964,6 +6167,46 @@ var resetPasswordRoute = (0, import_zod_openapi71.createRoute)({
5964
6167
  }
5965
6168
  }
5966
6169
  });
6170
+ var resendInviteRoute = (0, import_zod_openapi71.createRoute)({
6171
+ method: "post",
6172
+ path: "/admin/users/{id}/resend-invite",
6173
+ tags: ["admin.users"],
6174
+ security: [{ bearerAuth: [] }],
6175
+ summary: "Re-issue an invite token and resend the invitation email (INVITED status only)",
6176
+ request: {
6177
+ params: AdminUserIdParamSchema
6178
+ },
6179
+ responses: {
6180
+ 200: {
6181
+ description: "Invitation email resent; returns the (unchanged) user",
6182
+ content: { "application/json": { schema: AdminUserMutationResponseSchema } }
6183
+ },
6184
+ 400: {
6185
+ description: "Invalid id",
6186
+ content: { "application/json": { schema: ValidationErrorSchema } }
6187
+ },
6188
+ 401: {
6189
+ description: "Authentication required",
6190
+ content: { "application/json": { schema: AuthenticationRequiredErrorSchema } }
6191
+ },
6192
+ 403: {
6193
+ description: "Admin permission required",
6194
+ content: { "application/json": { schema: AdminRequiredErrorSchema } }
6195
+ },
6196
+ 404: {
6197
+ description: "User not found",
6198
+ content: { "application/json": { schema: NotFoundErrorSchema } }
6199
+ },
6200
+ 409: {
6201
+ description: "User is not in the INVITED status, so there is no pending invite to resend",
6202
+ content: { "application/json": { schema: ConflictErrorSchema } }
6203
+ },
6204
+ 500: {
6205
+ description: "Internal server error (e.g. the invitation email failed to send)",
6206
+ content: { "application/json": { schema: InternalServerErrorSchema } }
6207
+ }
6208
+ }
6209
+ });
5967
6210
  var updateUserEmailRoute = (0, import_zod_openapi71.createRoute)({
5968
6211
  method: "put",
5969
6212
  path: "/admin/users/{id}/email",
@@ -6082,6 +6325,7 @@ var adminUsersRoutes = {
6082
6325
  activateUserRoute,
6083
6326
  suspendUserRoute,
6084
6327
  resetPasswordRoute,
6328
+ resendInviteRoute,
6085
6329
  updateUserEmailRoute,
6086
6330
  pendingUsersCountRoute,
6087
6331
  deleteUserRoute
@@ -6349,7 +6593,7 @@ var stubUpdatePluginConfig = { ok: true, hotReloaded: false, reconfigureFailed:
6349
6593
  var stubClearRenderCache = { ok: true, clearedAt: "", removedCount: 0 };
6350
6594
  var appAuthMeUserChain = new import_zod_openapi72.OpenAPIHono().openapi(
6351
6595
  appRoutes.getAppInfoRoute,
6352
- (c) => c.json({ title: null, confidential: null, version: "", apiVersion: "v2", capabilities: [] }, 200)
6596
+ (c) => c.json({ title: null, confidential: null, version: "", apiVersion: "v2", capabilities: [], canSelfRegister: true }, 200)
6353
6597
  ).openapi(installerRoutes.getInstallerStatusRoute, (c) => c.json({ status: "installer_required" }, 200)).openapi(installerRoutes.createAdminRoute, (c) => c.json({ status: "ok" }, 200)).openapi(tokenAuthRoutes.tokenLoginRoute, (c) => c.json(stubTokens, 200)).openapi(tokenAuthRoutes.tokenRegisterRoute, (c) => c.json({ status: "confirmation_required" }, 200)).openapi(inviteAcceptRoutes.invitePreviewRoute, (c) => c.json({ email: "stub@example.com" }, 200)).openapi(inviteAcceptRoutes.acceptInviteRoute, (c) => c.json(stubTokens, 200)).openapi(passwordResetRoutes.forgotPasswordRoute, (c) => c.json({ ok: true }, 200)).openapi(passwordResetRoutes.validateResetTokenRoute, (c) => c.json({ ok: true }, 200)).openapi(passwordResetRoutes.selfResetPasswordRoute, (c) => c.json(stubTokens, 200)).openapi(activationRoutes.validateActivationTokenRoute, (c) => c.json({ ok: true }, 200)).openapi(activationRoutes.activateAccountRoute, (c) => c.json(stubTokens, 200)).openapi(emailChangeRoutes.validateEmailChangeTokenRoute, (c) => c.json({ ok: true, email: "stub@example.com" }, 200)).openapi(emailChangeRoutes.confirmEmailChangeRoute, (c) => c.json({ ok: true, email: "stub@example.com" }, 200)).openapi(tokenAuthRoutes.tokenRefreshRoute, (c) => c.json(stubTokens, 200)).openapi(tokenAuthRoutes.tokenLogoutRoute, (c) => c.json({ message: "" }, 200)).openapi(
6354
6598
  tokenAuthRoutes.tokenMeRoute,
6355
6599
  (c) => c.json(
@@ -6368,10 +6612,10 @@ var appAuthMeUserChain = new import_zod_openapi72.OpenAPIHono().openapi(
6368
6612
  )
6369
6613
  ).openapi(meRoutes.getProfileRoute, (c) => c.json(stubProfile, 200)).openapi(meRoutes.updateProfileRoute, (c) => c.json(stubProfile, 200)).openapi(meRoutes.updateThemeRoute, (c) => c.json({ status: "ok", theme: "system" }, 200)).openapi(meRoutes.uploadPictureRoute, (c) => c.json({ status: true }, 200)).openapi(meRoutes.deletePictureRoute, (c) => c.json({ status: "ok" }, 200)).openapi(meRoutes.updatePasswordRoute, (c) => c.json({ status: "ok", message: "" }, 200)).openapi(meRoutes.recentlyViewedPagesRoute, (c) => c.json({ pages: [] }, 200)).openapi(accessTokenRoutes.listAccessTokensRoute, (c) => c.json({ accessTokens: [] }, 200)).openapi(accessTokenRoutes.createAccessTokenRoute, (c) => c.json(stubCreateAccessToken, 201)).openapi(accessTokenRoutes.deleteAccessTokenRoute, (c) => c.json(stubAccessToken, 200)).openapi(userRoutes.getUserPageRoute, (c) => c.json(stubUserPage, 200)).openapi(userRoutes.getUserBookmarksRoute, (c) => c.json(stubUserBookmarks, 200)).openapi(userRoutes.getUserPagesRoute, (c) => c.json(stubUserPages, 200)).openapi(userRoutes.listMembersRoute, (c) => c.json(stubListUsers, 200));
6370
6614
  var bookmarkBacklinkCommentRevisionChain = new import_zod_openapi72.OpenAPIHono().openapi(bookmarkRoutes.getBookmarkRoute, (c) => c.json(stubBookmarkResponse, 200)).openapi(bookmarkRoutes.listMyBookmarksRoute, (c) => c.json(stubListMyBookmarks, 200)).openapi(bookmarkRoutes.addBookmarkRoute, (c) => c.json(stubBookmarkResponse, 200)).openapi(bookmarkRoutes.removeBookmarkRoute, (c) => c.json(stubRemoveBookmark, 200)).openapi(backlinkRoutes.getBacklinksRoute, (c) => c.json(stubBacklinks, 200)).openapi(commentRoutes.listCommentsRoute, (c) => c.json(stubListComments, 200)).openapi(commentRoutes.addCommentRoute, (c) => c.json(stubAddComment, 200)).openapi(commentRoutes.deleteCommentRoute, (c) => c.json(stubDeleteComment, 200)).openapi(revisionRoutes.listRevisionsRoute, (c) => c.json(stubListRevisions, 200)).openapi(revisionRoutes.getRevisionsRoute, (c) => c.json(stubGetRevisions, 200)).openapi(revisionRoutes.getRevisionRoute, (c) => c.json(stubGetRevision, 200));
6371
- var pageChain = new import_zod_openapi72.OpenAPIHono().openapi(pageRoutes.getPageRoute, (c) => c.json(stubPageWithRevision, 200)).openapi(pageRoutes.listPagesRoute, (c) => c.json(stubListPages, 200)).openapi(pageRoutes.listPageChildrenRoute, (c) => c.json(stubListPageChildren, 200)).openapi(pageRoutes.createPageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.updatePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.setPageGrantRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.seenPageRoute, (c) => c.json(stubSeenUsers, 200)).openapi(pageRoutes.getSeenUsersRoute, (c) => c.json(stubSeenUsers, 200)).openapi(pageRoutes.likePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.unlikePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.getWatchStatusRoute, (c) => c.json(stubWatchStatus, 200)).openapi(pageRoutes.setWatchStatusRoute, (c) => c.json(stubWatchStatus, 200)).openapi(pageRoutes.deletePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.revertDeletedPageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.renamePageRoute, (c) => c.json({ ...stubPageResponse, renamed_count: 1 }, 200)).openapi(pageRoutes.renameSubtreeRoute, (c) => c.json({ renamed_count: 0 }, 200)).openapi(pagePreviewRoutes.previewPageRoute, (c) => c.json(stubPreview, 200)).openapi(pageCollabRoutes.getYjsTokenRoute, (c) => c.json(stubWsToken, 200)).openapi(presenceRoutes.getPresenceTokenRoute, (c) => c.json(stubPresenceToken, 200)).openapi(presenceRoutes.getLikersRoute, (c) => c.json(stubLikers, 200));
6615
+ var pageChain = new import_zod_openapi72.OpenAPIHono().openapi(pageRoutes.getPageRoute, (c) => c.json(stubPageWithRevision, 200)).openapi(pageRoutes.listPagesRoute, (c) => c.json(stubListPages, 200)).openapi(pageRoutes.listPageChildrenRoute, (c) => c.json(stubListPageChildren, 200)).openapi(pageRoutes.createPageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.updatePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.setPageGrantRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.seenPageRoute, (c) => c.json(stubSeenUsers, 200)).openapi(pageRoutes.getSeenUsersRoute, (c) => c.json(stubSeenUsers, 200)).openapi(pageRoutes.likePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.unlikePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.getWatchStatusRoute, (c) => c.json(stubWatchStatus, 200)).openapi(pageRoutes.setWatchStatusRoute, (c) => c.json(stubWatchStatus, 200)).openapi(pageRoutes.deletePageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.revertDeletedPageRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.revertToRevisionRoute, (c) => c.json(stubPageResponse, 200)).openapi(pageRoutes.renamePageRoute, (c) => c.json({ ...stubPageResponse, renamed_count: 1 }, 200)).openapi(pageRoutes.renameSubtreeRoute, (c) => c.json({ renamed_count: 0 }, 200)).openapi(pagePreviewRoutes.previewPageRoute, (c) => c.json(stubPreview, 200)).openapi(pageCollabRoutes.getYjsTokenRoute, (c) => c.json(stubWsToken, 200)).openapi(presenceRoutes.getPresenceTokenRoute, (c) => c.json(stubPresenceToken, 200)).openapi(presenceRoutes.getLikersRoute, (c) => c.json(stubLikers, 200));
6372
6616
  var lateContractApp = new import_zod_openapi72.OpenAPIHono().openapi(draftRoutes.createDraftRoute, (c) => c.json(stubCreateDraft, 201)).openapi(draftRoutes.listDraftsRoute, (c) => c.json(stubListDrafts, 200)).openapi(draftRoutes.cancelDraftRoute, (c) => c.json(stubCreateDraft, 200)).openapi(autocompleteRoutes.autocompleteUsersRoute, (c) => c.json(stubAutocomplete, 200)).openapi(autocompleteRoutes.autocompletePagesRoute, (c) => c.json(stubAutocomplete, 200)).openapi(attachmentRoutes.getAttachmentUsageRoute, (c) => c.json(stubAttachmentUsage, 200)).openapi(attachmentRoutes.listAttachmentsRoute, (c) => c.json(stubListAttachments, 200)).openapi(attachmentRoutes.addAttachmentRoute, (c) => c.json(stubAddAttachment, 200)).openapi(attachmentRoutes.uploadAttachmentRoute, (c) => c.json(stubUploadAttachment, 200)).openapi(attachmentRoutes.getAttachmentMetaRoute, (c) => c.json(stubAttachmentMeta, 200)).openapi(attachmentRoutes.removeAttachmentRoute, (c) => c.json(stubRemoveAttachment, 200)).openapi(searchRoutes.searchPagesRoute, (c) => c.json(stubSearchPages, 200)).openapi(adminCryptoRoutes.getCryptoStatusRoute, (c) => c.json(stubCryptoStatus, 200)).openapi(adminCryptoRoutes.reencryptAllRoute, (c) => c.json(stubReencrypt, 200)).openapi(notificationRoutes.listNotificationsRoute, (c) => c.json(stubListNotifications, 200)).openapi(notificationRoutes.markAllAsReadRoute, (c) => c.json(stubMarkAllAsRead, 200)).openapi(notificationRoutes.getNotificationsTokenRoute, (c) => c.json(stubNotificationsToken, 200)).openapi(notificationRoutes.getUnreadCountRoute, (c) => c.json(stubNotificationStatus, 200)).openapi(notificationRoutes.openNotificationRoute, (c) => c.json(stubOpenNotification, 200));
6373
6617
  var adminSettingsContractApp = new import_zod_openapi72.OpenAPIHono().openapi(adminAppRoutes.getAppSettingsRoute, (c) => c.json(stubGetAppSettings, 200)).openapi(adminAppRoutes.updateAppSettingsRoute, (c) => c.json(stubUpdateAppSettings, 200)).openapi(adminAuthRoutes.getAuthSettingsRoute, (c) => c.json(stubAuthSettings, 200)).openapi(adminAuthRoutes.updateAuthSettingsRoute, (c) => c.json(stubAuthSettings, 200)).openapi(adminSecurityRoutes.getSecuritySettingsRoute, (c) => c.json(stubSecuritySettings, 200)).openapi(adminSecurityRoutes.updateSecuritySettingsRoute, (c) => c.json(stubSecuritySettings, 200)).openapi(adminMailRoutes.getMailSettingsRoute, (c) => c.json(stubMailSettings, 200)).openapi(adminMailRoutes.updateMailSettingsRoute, (c) => c.json(stubUpdateMailSettings, 200)).openapi(adminMailRoutes.sendTestMailRoute, (c) => c.json(stubSendTestMail, 200)).openapi(adminStorageRoutes.getStorageStatusRoute, (c) => c.json(stubStorageStatus, 200)).openapi(adminSearchRoutes.getSearchStatusRoute, (c) => c.json(stubSearchStatus, 200));
6374
- var adminUsersPluginsContractApp = new import_zod_openapi72.OpenAPIHono().openapi(adminUsersRoutes.listUsersRoute, (c) => c.json(stubListAdminUsers, 200)).openapi(adminUsersRoutes.searchUsersByEmailRoute, (c) => c.json(stubSearchAdminUsersByEmail, 200)).openapi(adminUsersRoutes.pendingUsersCountRoute, (c) => c.json(stubPendingUsersCount, 200)).openapi(adminUsersRoutes.inviteUsersRoute, (c) => c.json(stubInviteUsers, 200)).openapi(adminUsersRoutes.editUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.makeAdminRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.removeFromAdminRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.activateUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.suspendUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.resetPasswordRoute, (c) => c.json(stubResetPassword, 200)).openapi(adminUsersRoutes.updateUserEmailRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.deleteUserRoute, (c) => c.json(stubDeleteAdminUser, 200)).openapi(adminPluginsRoutes.listPluginsRoute, (c) => c.json(stubListPlugins, 200)).openapi(adminPluginsRoutes.getPluginConfigRoute, (c) => c.json(stubPluginConfig, 200)).openapi(adminPluginsRoutes.updatePluginConfigRoute, (c) => c.json(stubUpdatePluginConfig, 200)).openapi(adminPluginsRoutes.clearRenderCacheAllRoute, (c) => c.json(stubClearRenderCache, 200)).openapi(adminPluginsRoutes.clearRenderCachePluginRoute, (c) => c.json(stubClearRenderCache, 200));
6618
+ var adminUsersPluginsContractApp = new import_zod_openapi72.OpenAPIHono().openapi(adminUsersRoutes.listUsersRoute, (c) => c.json(stubListAdminUsers, 200)).openapi(adminUsersRoutes.searchUsersByEmailRoute, (c) => c.json(stubSearchAdminUsersByEmail, 200)).openapi(adminUsersRoutes.pendingUsersCountRoute, (c) => c.json(stubPendingUsersCount, 200)).openapi(adminUsersRoutes.inviteUsersRoute, (c) => c.json(stubInviteUsers, 200)).openapi(adminUsersRoutes.editUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.makeAdminRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.removeFromAdminRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.activateUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.suspendUserRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.resetPasswordRoute, (c) => c.json(stubResetPassword, 200)).openapi(adminUsersRoutes.resendInviteRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.updateUserEmailRoute, (c) => c.json(stubAdminUserMutation, 200)).openapi(adminUsersRoutes.deleteUserRoute, (c) => c.json(stubDeleteAdminUser, 200)).openapi(adminPluginsRoutes.listPluginsRoute, (c) => c.json(stubListPlugins, 200)).openapi(adminPluginsRoutes.getPluginConfigRoute, (c) => c.json(stubPluginConfig, 200)).openapi(adminPluginsRoutes.updatePluginConfigRoute, (c) => c.json(stubUpdatePluginConfig, 200)).openapi(adminPluginsRoutes.clearRenderCacheAllRoute, (c) => c.json(stubClearRenderCache, 200)).openapi(adminPluginsRoutes.clearRenderCachePluginRoute, (c) => c.json(stubClearRenderCache, 200));
6375
6619
  var oauthContractApp = new import_zod_openapi72.OpenAPIHono().openapi(oauthRoutes.authorizeRoute, (c) => c.json(stubAuthorize, 200)).openapi(oauthRoutes.tokenRoute, (c) => c.json(stubToken, 200)).openapi(oauthRoutes.revokeRoute, (c) => c.json(stubRevoke, 200)).openapi(oauthRoutes.discoveryRoute, (c) => c.json(stubDiscovery, 200)).openapi(oauthRoutes.deviceAuthorizeRoute, (c) => c.json(stubDeviceAuthorize, 200)).openapi(oauthRoutes.deviceInfoRoute, (c) => c.json(stubDeviceInfo, 200)).openapi(oauthRoutes.deviceVerifyRoute, (c) => c.json(stubDeviceVerify, 200));
6376
6620
  var createClient = (baseUrl, options = {}) => (0, import_client.hc)(baseUrl, {
6377
6621
  headers: options.headers,
@@ -6527,6 +6771,7 @@ var MailTokenPayloadSchema = import_zod_openapi73.z.object({
6527
6771
  InviteUsersRequestSchema,
6528
6772
  InviteUsersResponseSchema,
6529
6773
  InvitedUserResultSchema,
6774
+ KNOWN_HTML_ELEMENTS,
6530
6775
  LanguageSchema,
6531
6776
  LikerSchema,
6532
6777
  LikersResponseSchema,
@@ -6625,6 +6870,7 @@ var MailTokenPayloadSchema = import_zod_openapi73.z.object({
6625
6870
  RenameTreeErrorSchema,
6626
6871
  ResetPasswordRequestSchema,
6627
6872
  ResetPasswordResponseSchema,
6873
+ RevertToRevisionRequestSchema,
6628
6874
  RevisionInvalidRequestErrorSchema,
6629
6875
  RevisionMetaSchema,
6630
6876
  RevisionMetaSchemaShape,
@@ -6634,6 +6880,7 @@ var MailTokenPayloadSchema = import_zod_openapi73.z.object({
6634
6880
  RevokeResponseSchema,
6635
6881
  SCOPES,
6636
6882
  STATIC_CAPABILITIES,
6883
+ STRIP_KNOWN_HTML_TAGS_MAX_LENGTH,
6637
6884
  SearchAdminUsersByEmailRequestSchema,
6638
6885
  SearchAdminUsersByEmailResponseSchema,
6639
6886
  SearchDriverEntrySchema,
@@ -6814,8 +7061,10 @@ var MailTokenPayloadSchema = import_zod_openapi73.z.object({
6814
7061
  removeFromAdminRoute,
6815
7062
  renamePageRoute,
6816
7063
  renameSubtreeRoute,
7064
+ resendInviteRoute,
6817
7065
  resetPasswordRoute,
6818
7066
  revertDeletedPageRoute,
7067
+ revertToRevisionRoute,
6819
7068
  revisionRoutes,
6820
7069
  revokeRoute,
6821
7070
  scopeSatisfies,
@@ -6827,6 +7076,7 @@ var MailTokenPayloadSchema = import_zod_openapi73.z.object({
6827
7076
  sendTestMailRoute,
6828
7077
  setPageGrantRoute,
6829
7078
  setWatchStatusRoute,
7079
+ stripKnownHtmlTags,
6830
7080
  suspendUserRoute,
6831
7081
  tokenAuthRoutes,
6832
7082
  tokenLoginRoute,