@crowi/api 2.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/app.d.ts +8 -0
- package/dist/app.js +65 -0
- package/dist/app.js.map +1 -0
- package/dist/collab/attach.d.ts +33 -0
- package/dist/collab/attach.js +341 -0
- package/dist/collab/attach.js.map +1 -0
- package/dist/collab/extension-redis.d.ts +25 -0
- package/dist/collab/extension-redis.js +133 -0
- package/dist/collab/extension-redis.js.map +1 -0
- package/dist/common/functions/path2name.d.ts +1 -0
- package/dist/common/functions/path2name.js +22 -0
- package/dist/common/functions/path2name.js.map +1 -0
- package/dist/common/functions/renderIcon.d.ts +1 -0
- package/dist/common/functions/renderIcon.js +9 -0
- package/dist/common/functions/renderIcon.js.map +1 -0
- package/dist/controllers/admin.d.ts +3 -0
- package/dist/controllers/admin.js +474 -0
- package/dist/controllers/admin.js.map +1 -0
- package/dist/controllers/attachment.d.ts +4 -0
- package/dist/controllers/attachment.js +200 -0
- package/dist/controllers/attachment.js.map +1 -0
- package/dist/controllers/backlink.d.ts +3 -0
- package/dist/controllers/backlink.js +42 -0
- package/dist/controllers/backlink.js.map +1 -0
- package/dist/controllers/bookmark.d.ts +3 -0
- package/dist/controllers/bookmark.js +100 -0
- package/dist/controllers/bookmark.js.map +1 -0
- package/dist/controllers/comment.d.ts +3 -0
- package/dist/controllers/comment.js +111 -0
- package/dist/controllers/comment.js.map +1 -0
- package/dist/controllers/index.d.ts +25 -0
- package/dist/controllers/index.js +44 -0
- package/dist/controllers/index.js.map +1 -0
- package/dist/controllers/installer.d.ts +3 -0
- package/dist/controllers/installer.js +48 -0
- package/dist/controllers/installer.js.map +1 -0
- package/dist/controllers/login.d.ts +4 -0
- package/dist/controllers/login.js +438 -0
- package/dist/controllers/login.js.map +1 -0
- package/dist/controllers/logout.d.ts +5 -0
- package/dist/controllers/logout.js +11 -0
- package/dist/controllers/logout.js.map +1 -0
- package/dist/controllers/me.d.ts +4 -0
- package/dist/controllers/me.js +369 -0
- package/dist/controllers/me.js.map +1 -0
- package/dist/controllers/notification.d.ts +3 -0
- package/dist/controllers/notification.js +88 -0
- package/dist/controllers/notification.js.map +1 -0
- package/dist/controllers/page.d.ts +3 -0
- package/dist/controllers/page.js +881 -0
- package/dist/controllers/page.js.map +1 -0
- package/dist/controllers/revision.d.ts +3 -0
- package/dist/controllers/revision.js +91 -0
- package/dist/controllers/revision.js.map +1 -0
- package/dist/controllers/search.d.ts +3 -0
- package/dist/controllers/search.js +93 -0
- package/dist/controllers/search.js.map +1 -0
- package/dist/controllers/share.d.ts +3 -0
- package/dist/controllers/share.js +207 -0
- package/dist/controllers/share.js.map +1 -0
- package/dist/controllers/shareAccess.d.ts +3 -0
- package/dist/controllers/shareAccess.js +28 -0
- package/dist/controllers/shareAccess.js.map +1 -0
- package/dist/controllers/slack.d.ts +3 -0
- package/dist/controllers/slack.js +87 -0
- package/dist/controllers/slack.js.map +1 -0
- package/dist/controllers/tokenAuth.d.ts +10 -0
- package/dist/controllers/tokenAuth.js +292 -0
- package/dist/controllers/tokenAuth.js.map +1 -0
- package/dist/controllers/user.d.ts +3 -0
- package/dist/controllers/user.js +67 -0
- package/dist/controllers/user.js.map +1 -0
- package/dist/controllers/version.d.ts +4 -0
- package/dist/controllers/version.js +19 -0
- package/dist/controllers/version.js.map +1 -0
- package/dist/crowi/express-init.d.ts +4 -0
- package/dist/crowi/express-init.js +101 -0
- package/dist/crowi/express-init.js.map +1 -0
- package/dist/crowi/index.d.ts +245 -0
- package/dist/crowi/index.js +726 -0
- package/dist/crowi/index.js.map +1 -0
- package/dist/events/activity.d.ts +7 -0
- package/dist/events/activity.js +15 -0
- package/dist/events/activity.js.map +1 -0
- package/dist/events/bookmark.d.ts +8 -0
- package/dist/events/bookmark.js +16 -0
- package/dist/events/bookmark.js.map +1 -0
- package/dist/events/comment.d.ts +6 -0
- package/dist/events/comment.js +14 -0
- package/dist/events/comment.js.map +1 -0
- package/dist/events/config.d.ts +6 -0
- package/dist/events/config.js +12 -0
- package/dist/events/config.js.map +1 -0
- package/dist/events/index.d.ts +17 -0
- package/dist/events/index.js +22 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/mention-dispatch.d.ts +44 -0
- package/dist/events/mention-dispatch.js +151 -0
- package/dist/events/mention-dispatch.js.map +1 -0
- package/dist/events/notification.d.ts +7 -0
- package/dist/events/notification.js +15 -0
- package/dist/events/notification.js.map +1 -0
- package/dist/events/page.d.ts +44 -0
- package/dist/events/page.js +134 -0
- package/dist/events/page.js.map +1 -0
- package/dist/events/render-cache.d.ts +24 -0
- package/dist/events/render-cache.js +63 -0
- package/dist/events/render-cache.js.map +1 -0
- package/dist/events/user.d.ts +9 -0
- package/dist/events/user.js +39 -0
- package/dist/events/user.js.map +1 -0
- package/dist/form/admin/app.d.ts +2 -0
- package/dist/form/admin/app.js +9 -0
- package/dist/form/admin/app.js.map +1 -0
- package/dist/form/admin/auth.d.ts +2 -0
- package/dist/form/admin/auth.js +9 -0
- package/dist/form/admin/auth.js.map +1 -0
- package/dist/form/admin/aws.d.ts +2 -0
- package/dist/form/admin/aws.js +13 -0
- package/dist/form/admin/aws.js.map +1 -0
- package/dist/form/admin/github.d.ts +2 -0
- package/dist/form/admin/github.js +15 -0
- package/dist/form/admin/github.js.map +1 -0
- package/dist/form/admin/google.d.ts +2 -0
- package/dist/form/admin/google.js +13 -0
- package/dist/form/admin/google.js.map +1 -0
- package/dist/form/admin/mail.d.ts +2 -0
- package/dist/form/admin/mail.js +13 -0
- package/dist/form/admin/mail.js.map +1 -0
- package/dist/form/admin/sec.d.ts +2 -0
- package/dist/form/admin/sec.js +10 -0
- package/dist/form/admin/sec.js.map +1 -0
- package/dist/form/admin/slackSetting.d.ts +2 -0
- package/dist/form/admin/slackSetting.js +13 -0
- package/dist/form/admin/slackSetting.js.map +1 -0
- package/dist/form/admin/userEdit.d.ts +2 -0
- package/dist/form/admin/userEdit.js +9 -0
- package/dist/form/admin/userEdit.js.map +1 -0
- package/dist/form/admin/userInvite.d.ts +2 -0
- package/dist/form/admin/userInvite.js +9 -0
- package/dist/form/admin/userInvite.js.map +1 -0
- package/dist/form/comment.d.ts +2 -0
- package/dist/form/comment.js +9 -0
- package/dist/form/comment.js.map +1 -0
- package/dist/form/index.d.ts +25 -0
- package/dist/form/index.js +48 -0
- package/dist/form/index.js.map +1 -0
- package/dist/form/invited.d.ts +2 -0
- package/dist/form/invited.js +13 -0
- package/dist/form/invited.js.map +1 -0
- package/dist/form/login.d.ts +2 -0
- package/dist/form/login.js +11 -0
- package/dist/form/login.js.map +1 -0
- package/dist/form/me/apiToken.d.ts +2 -0
- package/dist/form/me/apiToken.js +9 -0
- package/dist/form/me/apiToken.js.map +1 -0
- package/dist/form/me/password.d.ts +2 -0
- package/dist/form/me/password.js +11 -0
- package/dist/form/me/password.js.map +1 -0
- package/dist/form/me/user.d.ts +2 -0
- package/dist/form/me/user.js +9 -0
- package/dist/form/me/user.js.map +1 -0
- package/dist/form/register.d.ts +2 -0
- package/dist/form/register.js +13 -0
- package/dist/form/register.js.map +1 -0
- package/dist/form/revision.d.ts +2 -0
- package/dist/form/revision.js +13 -0
- package/dist/form/revision.js.map +1 -0
- package/dist/hono/app.d.ts +19 -0
- package/dist/hono/app.js +21 -0
- package/dist/hono/app.js.map +1 -0
- package/dist/hono/handlers/_helpers/errors.d.ts +61 -0
- package/dist/hono/handlers/_helpers/errors.js +51 -0
- package/dist/hono/handlers/_helpers/errors.js.map +1 -0
- package/dist/hono/handlers/_helpers/user-shape.d.ts +46 -0
- package/dist/hono/handlers/_helpers/user-shape.js +23 -0
- package/dist/hono/handlers/_helpers/user-shape.js.map +1 -0
- package/dist/hono/handlers/access-token.d.ts +221 -0
- package/dist/hono/handlers/access-token.js +113 -0
- package/dist/hono/handlers/access-token.js.map +1 -0
- package/dist/hono/handlers/activation.d.ts +117 -0
- package/dist/hono/handlers/activation.js +77 -0
- package/dist/hono/handlers/activation.js.map +1 -0
- package/dist/hono/handlers/admin/app.d.ts +123 -0
- package/dist/hono/handlers/admin/app.js +76 -0
- package/dist/hono/handlers/admin/app.js.map +1 -0
- package/dist/hono/handlers/admin/auth.d.ts +127 -0
- package/dist/hono/handlers/admin/auth.js +91 -0
- package/dist/hono/handlers/admin/auth.js.map +1 -0
- package/dist/hono/handlers/admin/mail.d.ts +168 -0
- package/dist/hono/handlers/admin/mail.js +76 -0
- package/dist/hono/handlers/admin/mail.js.map +1 -0
- package/dist/hono/handlers/admin/plugins.d.ts +409 -0
- package/dist/hono/handlers/admin/plugins.js +257 -0
- package/dist/hono/handlers/admin/plugins.js.map +1 -0
- package/dist/hono/handlers/admin/search.d.ts +57 -0
- package/dist/hono/handlers/admin/search.js +55 -0
- package/dist/hono/handlers/admin/search.js.map +1 -0
- package/dist/hono/handlers/admin/security.d.ts +112 -0
- package/dist/hono/handlers/admin/security.js +71 -0
- package/dist/hono/handlers/admin/security.js.map +1 -0
- package/dist/hono/handlers/admin/share.d.ts +106 -0
- package/dist/hono/handlers/admin/share.js +55 -0
- package/dist/hono/handlers/admin/share.js.map +1 -0
- package/dist/hono/handlers/admin/storage.d.ts +55 -0
- package/dist/hono/handlers/admin/storage.js +40 -0
- package/dist/hono/handlers/admin/storage.js.map +1 -0
- package/dist/hono/handlers/admin/users.d.ts +1230 -0
- package/dist/hono/handlers/admin/users.js +316 -0
- package/dist/hono/handlers/admin/users.js.map +1 -0
- package/dist/hono/handlers/adminCrypto.d.ts +110 -0
- package/dist/hono/handlers/adminCrypto.js +151 -0
- package/dist/hono/handlers/adminCrypto.js.map +1 -0
- package/dist/hono/handlers/app.d.ts +26 -0
- package/dist/hono/handlers/app.js +34 -0
- package/dist/hono/handlers/app.js.map +1 -0
- package/dist/hono/handlers/attachment-stream.d.ts +4 -0
- package/dist/hono/handlers/attachment-stream.js +211 -0
- package/dist/hono/handlers/attachment-stream.js.map +1 -0
- package/dist/hono/handlers/attachment.d.ts +687 -0
- package/dist/hono/handlers/attachment.js +566 -0
- package/dist/hono/handlers/attachment.js.map +1 -0
- package/dist/hono/handlers/autocomplete.d.ts +160 -0
- package/dist/hono/handlers/autocomplete.js +181 -0
- package/dist/hono/handlers/autocomplete.js.map +1 -0
- package/dist/hono/handlers/backlink.d.ts +78 -0
- package/dist/hono/handlers/backlink.js +93 -0
- package/dist/hono/handlers/backlink.js.map +1 -0
- package/dist/hono/handlers/bookmark.d.ts +558 -0
- package/dist/hono/handlers/bookmark.js +166 -0
- package/dist/hono/handlers/bookmark.js.map +1 -0
- package/dist/hono/handlers/comment.d.ts +231 -0
- package/dist/hono/handlers/comment.js +191 -0
- package/dist/hono/handlers/comment.js.map +1 -0
- package/dist/hono/handlers/draft.d.ts +136 -0
- package/dist/hono/handlers/draft.js +191 -0
- package/dist/hono/handlers/draft.js.map +1 -0
- package/dist/hono/handlers/emailChange.d.ts +124 -0
- package/dist/hono/handlers/emailChange.js +79 -0
- package/dist/hono/handlers/emailChange.js.map +1 -0
- package/dist/hono/handlers/installer.d.ts +94 -0
- package/dist/hono/handlers/installer.js +93 -0
- package/dist/hono/handlers/installer.js.map +1 -0
- package/dist/hono/handlers/inviteAccept.d.ts +180 -0
- package/dist/hono/handlers/inviteAccept.js +94 -0
- package/dist/hono/handlers/inviteAccept.js.map +1 -0
- package/dist/hono/handlers/me.d.ts +401 -0
- package/dist/hono/handlers/me.js +390 -0
- package/dist/hono/handlers/me.js.map +1 -0
- package/dist/hono/handlers/notification.d.ts +274 -0
- package/dist/hono/handlers/notification.js +224 -0
- package/dist/hono/handlers/notification.js.map +1 -0
- package/dist/hono/handlers/oauth.d.ts +299 -0
- package/dist/hono/handlers/oauth.js +443 -0
- package/dist/hono/handlers/oauth.js.map +1 -0
- package/dist/hono/handlers/page-collab.d.ts +79 -0
- package/dist/hono/handlers/page-collab.js +98 -0
- package/dist/hono/handlers/page-collab.js.map +1 -0
- package/dist/hono/handlers/page-preview.d.ts +48 -0
- package/dist/hono/handlers/page-preview.js +83 -0
- package/dist/hono/handlers/page-preview.js.map +1 -0
- package/dist/hono/handlers/page.d.ts +2059 -0
- package/dist/hono/handlers/page.js +793 -0
- package/dist/hono/handlers/page.js.map +1 -0
- package/dist/hono/handlers/passwordReset.d.ts +181 -0
- package/dist/hono/handlers/passwordReset.js +101 -0
- package/dist/hono/handlers/passwordReset.js.map +1 -0
- package/dist/hono/handlers/presence.d.ts +178 -0
- package/dist/hono/handlers/presence.js +163 -0
- package/dist/hono/handlers/presence.js.map +1 -0
- package/dist/hono/handlers/revision.d.ts +345 -0
- package/dist/hono/handlers/revision.js +202 -0
- package/dist/hono/handlers/revision.js.map +1 -0
- package/dist/hono/handlers/search.d.ts +208 -0
- package/dist/hono/handlers/search.js +152 -0
- package/dist/hono/handlers/search.js.map +1 -0
- package/dist/hono/handlers/tokenAuth.d.ts +369 -0
- package/dist/hono/handlers/tokenAuth.js +240 -0
- package/dist/hono/handlers/tokenAuth.js.map +1 -0
- package/dist/hono/handlers/user.d.ts +710 -0
- package/dist/hono/handlers/user.js +212 -0
- package/dist/hono/handlers/user.js.map +1 -0
- package/dist/hono/index.d.ts +289 -0
- package/dist/hono/index.js +240 -0
- package/dist/hono/index.js.map +1 -0
- package/dist/hono/middleware/admin.d.ts +5 -0
- package/dist/hono/middleware/admin.js +34 -0
- package/dist/hono/middleware/admin.js.map +1 -0
- package/dist/hono/middleware/auth.d.ts +54 -0
- package/dist/hono/middleware/auth.js +142 -0
- package/dist/hono/middleware/auth.js.map +1 -0
- package/dist/hono/middleware/cors.d.ts +3 -0
- package/dist/hono/middleware/cors.js +86 -0
- package/dist/hono/middleware/cors.js.map +1 -0
- package/dist/hono/middleware/default-hook.d.ts +8 -0
- package/dist/hono/middleware/default-hook.js +17 -0
- package/dist/hono/middleware/default-hook.js.map +1 -0
- package/dist/hono/middleware/error-handler.d.ts +2 -0
- package/dist/hono/middleware/error-handler.js +20 -0
- package/dist/hono/middleware/error-handler.js.map +1 -0
- package/dist/hono/middleware/rate-limit.d.ts +57 -0
- package/dist/hono/middleware/rate-limit.js +42 -0
- package/dist/hono/middleware/rate-limit.js.map +1 -0
- package/dist/hono/middleware/require-scope.d.ts +50 -0
- package/dist/hono/middleware/require-scope.js +64 -0
- package/dist/hono/middleware/require-scope.js.map +1 -0
- package/dist/hono/path-rewrite.d.ts +15 -0
- package/dist/hono/path-rewrite.js +59 -0
- package/dist/hono/path-rewrite.js.map +1 -0
- package/dist/mail/i18n/en.d.ts +2 -0
- package/dist/mail/i18n/en.js +66 -0
- package/dist/mail/i18n/en.js.map +1 -0
- package/dist/mail/i18n/index.d.ts +46 -0
- package/dist/mail/i18n/index.js +31 -0
- package/dist/mail/i18n/index.js.map +1 -0
- package/dist/mail/i18n/ja.d.ts +2 -0
- package/dist/mail/i18n/ja.js +66 -0
- package/dist/mail/i18n/ja.js.map +1 -0
- package/dist/mcp/attach.d.ts +25 -0
- package/dist/mcp/attach.js +104 -0
- package/dist/mcp/attach.js.map +1 -0
- package/dist/mcp/dispatch.d.ts +59 -0
- package/dist/mcp/dispatch.js +70 -0
- package/dist/mcp/dispatch.js.map +1 -0
- package/dist/mcp/result.d.ts +40 -0
- package/dist/mcp/result.js +78 -0
- package/dist/mcp/result.js.map +1 -0
- package/dist/mcp/server.d.ts +67 -0
- package/dist/mcp/server.js +113 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools/page.d.ts +2 -0
- package/dist/mcp/tools/page.js +256 -0
- package/dist/mcp/tools/page.js.map +1 -0
- package/dist/mcp/tools/search.d.ts +2 -0
- package/dist/mcp/tools/search.js +36 -0
- package/dist/mcp/tools/search.js.map +1 -0
- package/dist/middlewares/accessTokenParser.d.ts +4 -0
- package/dist/middlewares/accessTokenParser.js +29 -0
- package/dist/middlewares/accessTokenParser.js.map +1 -0
- package/dist/middlewares/adminRequired.d.ts +10 -0
- package/dist/middlewares/adminRequired.js +35 -0
- package/dist/middlewares/adminRequired.js.map +1 -0
- package/dist/middlewares/applicationInstalled.d.ts +3 -0
- package/dist/middlewares/applicationInstalled.js +20 -0
- package/dist/middlewares/applicationInstalled.js.map +1 -0
- package/dist/middlewares/applicationNotInstalled.d.ts +3 -0
- package/dist/middlewares/applicationNotInstalled.js +13 -0
- package/dist/middlewares/applicationNotInstalled.js.map +1 -0
- package/dist/middlewares/basicAuth.d.ts +4 -0
- package/dist/middlewares/basicAuth.js +23 -0
- package/dist/middlewares/basicAuth.js.map +1 -0
- package/dist/middlewares/csrfVerify.d.ts +4 -0
- package/dist/middlewares/csrfVerify.js +24 -0
- package/dist/middlewares/csrfVerify.js.map +1 -0
- package/dist/middlewares/encodeSpace.d.ts +3 -0
- package/dist/middlewares/encodeSpace.js +14 -0
- package/dist/middlewares/encodeSpace.js.map +1 -0
- package/dist/middlewares/fileAccessRightOrLoginRequired.d.ts +4 -0
- package/dist/middlewares/fileAccessRightOrLoginRequired.js +29 -0
- package/dist/middlewares/fileAccessRightOrLoginRequired.js.map +1 -0
- package/dist/middlewares/index.d.ts +16 -0
- package/dist/middlewares/index.js +30 -0
- package/dist/middlewares/index.js.map +1 -0
- package/dist/middlewares/jwtAdminRequired.d.ts +8 -0
- package/dist/middlewares/jwtAdminRequired.js +35 -0
- package/dist/middlewares/jwtAdminRequired.js.map +1 -0
- package/dist/middlewares/jwtAuth.d.ts +4 -0
- package/dist/middlewares/jwtAuth.js +104 -0
- package/dist/middlewares/jwtAuth.js.map +1 -0
- package/dist/middlewares/loginChecker.d.ts +4 -0
- package/dist/middlewares/loginChecker.js +32 -0
- package/dist/middlewares/loginChecker.js.map +1 -0
- package/dist/middlewares/loginRequired.d.ts +4 -0
- package/dist/middlewares/loginRequired.js +88 -0
- package/dist/middlewares/loginRequired.js.map +1 -0
- package/dist/migration/cli-api.d.ts +83 -0
- package/dist/migration/cli-api.js +128 -0
- package/dist/migration/cli-api.js.map +1 -0
- package/dist/migration/migrations/index.d.ts +12 -0
- package/dist/migration/migrations/index.js +24 -0
- package/dist/migration/migrations/index.js.map +1 -0
- package/dist/migration/migrations/page-status-default.d.ts +25 -0
- package/dist/migration/migrations/page-status-default.js +79 -0
- package/dist/migration/migrations/page-status-default.js.map +1 -0
- package/dist/migration/migrations/revisions-schema-unify.d.ts +33 -0
- package/dist/migration/migrations/revisions-schema-unify.js +88 -0
- package/dist/migration/migrations/revisions-schema-unify.js.map +1 -0
- package/dist/migration/migrations/user-unique-prepare.d.ts +1 -0
- package/dist/migration/migrations/user-unique-prepare.js +214 -0
- package/dist/migration/migrations/user-unique-prepare.js.map +1 -0
- package/dist/migration/migrations/wikilink-format.d.ts +97 -0
- package/dist/migration/migrations/wikilink-format.js +418 -0
- package/dist/migration/migrations/wikilink-format.js.map +1 -0
- package/dist/migration/rebuild-api.d.ts +50 -0
- package/dist/migration/rebuild-api.js +45 -0
- package/dist/migration/rebuild-api.js.map +1 -0
- package/dist/migration/rebuild-runner.d.ts +64 -0
- package/dist/migration/rebuild-runner.js +42 -0
- package/dist/migration/rebuild-runner.js.map +1 -0
- package/dist/migration/rebuilds/index.d.ts +26 -0
- package/dist/migration/rebuilds/index.js +69 -0
- package/dist/migration/rebuilds/index.js.map +1 -0
- package/dist/migration/registry.d.ts +15 -0
- package/dist/migration/registry.js +96 -0
- package/dist/migration/registry.js.map +1 -0
- package/dist/migration/run-boot-migrations.d.ts +31 -0
- package/dist/migration/run-boot-migrations.js +95 -0
- package/dist/migration/run-boot-migrations.js.map +1 -0
- package/dist/migration/runner.d.ts +120 -0
- package/dist/migration/runner.js +276 -0
- package/dist/migration/runner.js.map +1 -0
- package/dist/migration/types.d.ts +153 -0
- package/dist/migration/types.js +13 -0
- package/dist/migration/types.js.map +1 -0
- package/dist/models/activity.d.ts +34 -0
- package/dist/models/activity.js +263 -0
- package/dist/models/activity.js.map +1 -0
- package/dist/models/attachment.d.ts +25 -0
- package/dist/models/attachment.js +82 -0
- package/dist/models/attachment.js.map +1 -0
- package/dist/models/backlink.d.ts +19 -0
- package/dist/models/backlink.js +138 -0
- package/dist/models/backlink.js.map +1 -0
- package/dist/models/bookmark.d.ts +28 -0
- package/dist/models/bookmark.js +136 -0
- package/dist/models/bookmark.js.map +1 -0
- package/dist/models/comment.d.ts +21 -0
- package/dist/models/comment.js +87 -0
- package/dist/models/comment.js.map +1 -0
- package/dist/models/config-sensitive.d.ts +21 -0
- package/dist/models/config-sensitive.js +71 -0
- package/dist/models/config-sensitive.js.map +1 -0
- package/dist/models/config.d.ts +34 -0
- package/dist/models/config.js +161 -0
- package/dist/models/config.js.map +1 -0
- package/dist/models/index.d.ts +30 -0
- package/dist/models/index.js +55 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/migration-application.d.ts +54 -0
- package/dist/models/migration-application.js +36 -0
- package/dist/models/migration-application.js.map +1 -0
- package/dist/models/notification.d.ts +28 -0
- package/dist/models/notification.js +285 -0
- package/dist/models/notification.js.map +1 -0
- package/dist/models/oauth-authorization-code.d.ts +34 -0
- package/dist/models/oauth-authorization-code.js +100 -0
- package/dist/models/oauth-authorization-code.js.map +1 -0
- package/dist/models/oauth-client.d.ts +36 -0
- package/dist/models/oauth-client.js +56 -0
- package/dist/models/oauth-client.js.map +1 -0
- package/dist/models/oauth-device-code.d.ts +55 -0
- package/dist/models/oauth-device-code.js +158 -0
- package/dist/models/oauth-device-code.js.map +1 -0
- package/dist/models/oauth-refresh-token.d.ts +31 -0
- package/dist/models/oauth-refresh-token.js +118 -0
- package/dist/models/oauth-refresh-token.js.map +1 -0
- package/dist/models/page-yjs-update.d.ts +35 -0
- package/dist/models/page-yjs-update.js +33 -0
- package/dist/models/page-yjs-update.js.map +1 -0
- package/dist/models/page.d.ts +200 -0
- package/dist/models/page.js +1117 -0
- package/dist/models/page.js.map +1 -0
- package/dist/models/personal-access-token.d.ts +30 -0
- package/dist/models/personal-access-token.js +107 -0
- package/dist/models/personal-access-token.js.map +1 -0
- package/dist/models/plugin-render-cache.d.ts +40 -0
- package/dist/models/plugin-render-cache.js +39 -0
- package/dist/models/plugin-render-cache.js.map +1 -0
- package/dist/models/revision.d.ts +145 -0
- package/dist/models/revision.js +241 -0
- package/dist/models/revision.js.map +1 -0
- package/dist/models/share.d.ts +38 -0
- package/dist/models/share.js +137 -0
- package/dist/models/share.js.map +1 -0
- package/dist/models/shareAccess.d.ts +20 -0
- package/dist/models/shareAccess.js +45 -0
- package/dist/models/shareAccess.js.map +1 -0
- package/dist/models/tracking.d.ts +14 -0
- package/dist/models/tracking.js +14 -0
- package/dist/models/tracking.js.map +1 -0
- package/dist/models/updatePost.d.ts +25 -0
- package/dist/models/updatePost.js +87 -0
- package/dist/models/updatePost.js.map +1 -0
- package/dist/models/user.d.ts +144 -0
- package/dist/models/user.js +681 -0
- package/dist/models/user.js.map +1 -0
- package/dist/models/watcher.d.ts +23 -0
- package/dist/models/watcher.js +75 -0
- package/dist/models/watcher.js.map +1 -0
- package/dist/notifications/attach.d.ts +63 -0
- package/dist/notifications/attach.js +426 -0
- package/dist/notifications/attach.js.map +1 -0
- package/dist/notifications/channel.d.ts +13 -0
- package/dist/notifications/channel.js +18 -0
- package/dist/notifications/channel.js.map +1 -0
- package/dist/plugin/index.d.ts +2 -0
- package/dist/plugin/index.js +6 -0
- package/dist/plugin/index.js.map +1 -0
- package/dist/plugin/plugin-context.d.ts +22 -0
- package/dist/plugin/plugin-context.js +126 -0
- package/dist/plugin/plugin-context.js.map +1 -0
- package/dist/plugin/plugin-manager.d.ts +164 -0
- package/dist/plugin/plugin-manager.js +328 -0
- package/dist/plugin/plugin-manager.js.map +1 -0
- package/dist/plugin/plugin-namespace.d.ts +28 -0
- package/dist/plugin/plugin-namespace.js +53 -0
- package/dist/plugin/plugin-namespace.js.map +1 -0
- package/dist/plugin/registries.d.ts +38 -0
- package/dist/plugin/registries.js +71 -0
- package/dist/plugin/registries.js.map +1 -0
- package/dist/plugin/schema-serializer.d.ts +34 -0
- package/dist/plugin/schema-serializer.js +122 -0
- package/dist/plugin/schema-serializer.js.map +1 -0
- package/dist/plugin/topo-sort.d.ts +15 -0
- package/dist/plugin/topo-sort.js +59 -0
- package/dist/plugin/topo-sort.js.map +1 -0
- package/dist/presence/attach.d.ts +36 -0
- package/dist/presence/attach.js +399 -0
- package/dist/presence/attach.js.map +1 -0
- package/dist/renderer/__fixtures__/echo-embed.d.ts +27 -0
- package/dist/renderer/__fixtures__/echo-embed.js +24 -0
- package/dist/renderer/__fixtures__/echo-embed.js.map +1 -0
- package/dist/renderer/cache/index.d.ts +60 -0
- package/dist/renderer/cache/index.js +219 -0
- package/dist/renderer/cache/index.js.map +1 -0
- package/dist/renderer/cache/mongodb-cache.d.ts +82 -0
- package/dist/renderer/cache/mongodb-cache.js +180 -0
- package/dist/renderer/cache/mongodb-cache.js.map +1 -0
- package/dist/renderer/cache/reservation.d.ts +20 -0
- package/dist/renderer/cache/reservation.js +115 -0
- package/dist/renderer/cache/reservation.js.map +1 -0
- package/dist/renderer/core/_mdast-walk.d.ts +35 -0
- package/dist/renderer/core/_mdast-walk.js +45 -0
- package/dist/renderer/core/_mdast-walk.js.map +1 -0
- package/dist/renderer/core/code-block-dispatch.d.ts +31 -0
- package/dist/renderer/core/code-block-dispatch.js +166 -0
- package/dist/renderer/core/code-block-dispatch.js.map +1 -0
- package/dist/renderer/core/code-blocks.d.ts +12 -0
- package/dist/renderer/core/code-blocks.js +32 -0
- package/dist/renderer/core/code-blocks.js.map +1 -0
- package/dist/renderer/core/embed-tags.d.ts +14 -0
- package/dist/renderer/core/embed-tags.js +154 -0
- package/dist/renderer/core/embed-tags.js.map +1 -0
- package/dist/renderer/core/headings.d.ts +16 -0
- package/dist/renderer/core/headings.js +31 -0
- package/dist/renderer/core/headings.js.map +1 -0
- package/dist/renderer/core/index.d.ts +65 -0
- package/dist/renderer/core/index.js +83 -0
- package/dist/renderer/core/index.js.map +1 -0
- package/dist/renderer/core/mention-resolve.d.ts +39 -0
- package/dist/renderer/core/mention-resolve.js +75 -0
- package/dist/renderer/core/mention-resolve.js.map +1 -0
- package/dist/renderer/core/mentions.d.ts +2 -0
- package/dist/renderer/core/mentions.js +83 -0
- package/dist/renderer/core/mentions.js.map +1 -0
- package/dist/renderer/core/syntax-highlight.d.ts +21 -0
- package/dist/renderer/core/syntax-highlight.js +64 -0
- package/dist/renderer/core/syntax-highlight.js.map +1 -0
- package/dist/renderer/core/url-inline-expand.d.ts +9 -0
- package/dist/renderer/core/url-inline-expand.js +157 -0
- package/dist/renderer/core/url-inline-expand.js.map +1 -0
- package/dist/renderer/core/wikilinks.d.ts +2 -0
- package/dist/renderer/core/wikilinks.js +118 -0
- package/dist/renderer/core/wikilinks.js.map +1 -0
- package/dist/renderer/index.d.ts +67 -0
- package/dist/renderer/index.js +99 -0
- package/dist/renderer/index.js.map +1 -0
- package/dist/renderer/pipeline.d.ts +134 -0
- package/dist/renderer/pipeline.js +203 -0
- package/dist/renderer/pipeline.js.map +1 -0
- package/dist/renderer/registry.d.ts +83 -0
- package/dist/renderer/registry.js +130 -0
- package/dist/renderer/registry.js.map +1 -0
- package/dist/renderer/serialize.d.ts +27 -0
- package/dist/renderer/serialize.js +46 -0
- package/dist/renderer/serialize.js.map +1 -0
- package/dist/renderer/version.d.ts +30 -0
- package/dist/renderer/version.js +34 -0
- package/dist/renderer/version.js.map +1 -0
- package/dist/routes/admin.d.ts +4 -0
- package/dist/routes/admin.js +17 -0
- package/dist/routes/admin.js.map +1 -0
- package/dist/routes/api/admin.d.ts +4 -0
- package/dist/routes/api/admin.js +37 -0
- package/dist/routes/api/admin.js.map +1 -0
- package/dist/routes/api/attachment.d.ts +4 -0
- package/dist/routes/api/attachment.js +19 -0
- package/dist/routes/api/attachment.js.map +1 -0
- package/dist/routes/api/bookmark.d.ts +4 -0
- package/dist/routes/api/bookmark.js +15 -0
- package/dist/routes/api/bookmark.js.map +1 -0
- package/dist/routes/api/comment.d.ts +4 -0
- package/dist/routes/api/comment.js +14 -0
- package/dist/routes/api/comment.js.map +1 -0
- package/dist/routes/api/index.d.ts +4 -0
- package/dist/routes/api/index.js +36 -0
- package/dist/routes/api/index.js.map +1 -0
- package/dist/routes/api/like.d.ts +4 -0
- package/dist/routes/api/like.js +13 -0
- package/dist/routes/api/like.js.map +1 -0
- package/dist/routes/api/notification.d.ts +4 -0
- package/dist/routes/api/notification.js +15 -0
- package/dist/routes/api/notification.js.map +1 -0
- package/dist/routes/api/page.d.ts +4 -0
- package/dist/routes/api/page.js +24 -0
- package/dist/routes/api/page.js.map +1 -0
- package/dist/routes/api/revision.d.ts +4 -0
- package/dist/routes/api/revision.js +14 -0
- package/dist/routes/api/revision.js.map +1 -0
- package/dist/routes/api/share.d.ts +4 -0
- package/dist/routes/api/share.js +16 -0
- package/dist/routes/api/share.js.map +1 -0
- package/dist/routes/api/version.d.ts +4 -0
- package/dist/routes/api/version.js +10 -0
- package/dist/routes/api/version.js.map +1 -0
- package/dist/routes/index.d.ts +4 -0
- package/dist/routes/index.js +71 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/login.d.ts +4 -0
- package/dist/routes/login.js +18 -0
- package/dist/routes/login.js.map +1 -0
- package/dist/routes/me.d.ts +4 -0
- package/dist/routes/me.js +24 -0
- package/dist/routes/me.js.map +1 -0
- package/dist/routes/ts-rest/admin/app.d.ts +4 -0
- package/dist/routes/ts-rest/admin/app.js +67 -0
- package/dist/routes/ts-rest/admin/app.js.map +1 -0
- package/dist/routes/ts-rest/admin/auth.d.ts +4 -0
- package/dist/routes/ts-rest/admin/auth.js +95 -0
- package/dist/routes/ts-rest/admin/auth.js.map +1 -0
- package/dist/routes/ts-rest/admin/index.d.ts +10 -0
- package/dist/routes/ts-rest/admin/index.js +35 -0
- package/dist/routes/ts-rest/admin/index.js.map +1 -0
- package/dist/routes/ts-rest/admin/mail.d.ts +4 -0
- package/dist/routes/ts-rest/admin/mail.js +156 -0
- package/dist/routes/ts-rest/admin/mail.js.map +1 -0
- package/dist/routes/ts-rest/admin/plugins.d.ts +4 -0
- package/dist/routes/ts-rest/admin/plugins.js +317 -0
- package/dist/routes/ts-rest/admin/plugins.js.map +1 -0
- package/dist/routes/ts-rest/admin/search.d.ts +4 -0
- package/dist/routes/ts-rest/admin/search.js +67 -0
- package/dist/routes/ts-rest/admin/search.js.map +1 -0
- package/dist/routes/ts-rest/admin/security.d.ts +4 -0
- package/dist/routes/ts-rest/admin/security.js +114 -0
- package/dist/routes/ts-rest/admin/security.js.map +1 -0
- package/dist/routes/ts-rest/admin/share.d.ts +4 -0
- package/dist/routes/ts-rest/admin/share.js +69 -0
- package/dist/routes/ts-rest/admin/share.js.map +1 -0
- package/dist/routes/ts-rest/admin/storage.d.ts +4 -0
- package/dist/routes/ts-rest/admin/storage.js +59 -0
- package/dist/routes/ts-rest/admin/storage.js.map +1 -0
- package/dist/routes/ts-rest/admin/users.d.ts +4 -0
- package/dist/routes/ts-rest/admin/users.js +215 -0
- package/dist/routes/ts-rest/admin/users.js.map +1 -0
- package/dist/routes/ts-rest/adminCrypto.d.ts +4 -0
- package/dist/routes/ts-rest/adminCrypto.js +111 -0
- package/dist/routes/ts-rest/adminCrypto.js.map +1 -0
- package/dist/routes/ts-rest/app.d.ts +4 -0
- package/dist/routes/ts-rest/app.js +23 -0
- package/dist/routes/ts-rest/app.js.map +1 -0
- package/dist/routes/ts-rest/attachment.d.ts +4 -0
- package/dist/routes/ts-rest/attachment.js +830 -0
- package/dist/routes/ts-rest/attachment.js.map +1 -0
- package/dist/routes/ts-rest/auth.d.ts +4 -0
- package/dist/routes/ts-rest/auth.js +70 -0
- package/dist/routes/ts-rest/auth.js.map +1 -0
- package/dist/routes/ts-rest/autocomplete.d.ts +30 -0
- package/dist/routes/ts-rest/autocomplete.js +189 -0
- package/dist/routes/ts-rest/autocomplete.js.map +1 -0
- package/dist/routes/ts-rest/backlink.d.ts +4 -0
- package/dist/routes/ts-rest/backlink.js +106 -0
- package/dist/routes/ts-rest/backlink.js.map +1 -0
- package/dist/routes/ts-rest/bookmark.d.ts +4 -0
- package/dist/routes/ts-rest/bookmark.js +189 -0
- package/dist/routes/ts-rest/bookmark.js.map +1 -0
- package/dist/routes/ts-rest/comment.d.ts +4 -0
- package/dist/routes/ts-rest/comment.js +217 -0
- package/dist/routes/ts-rest/comment.js.map +1 -0
- package/dist/routes/ts-rest/draft.d.ts +22 -0
- package/dist/routes/ts-rest/draft.js +200 -0
- package/dist/routes/ts-rest/draft.js.map +1 -0
- package/dist/routes/ts-rest/index.d.ts +4 -0
- package/dist/routes/ts-rest/index.js +103 -0
- package/dist/routes/ts-rest/index.js.map +1 -0
- package/dist/routes/ts-rest/installer.d.ts +4 -0
- package/dist/routes/ts-rest/installer.js +77 -0
- package/dist/routes/ts-rest/installer.js.map +1 -0
- package/dist/routes/ts-rest/me.d.ts +4 -0
- package/dist/routes/ts-rest/me.js +410 -0
- package/dist/routes/ts-rest/me.js.map +1 -0
- package/dist/routes/ts-rest/notification.d.ts +4 -0
- package/dist/routes/ts-rest/notification.js +241 -0
- package/dist/routes/ts-rest/notification.js.map +1 -0
- package/dist/routes/ts-rest/page-collab.d.ts +29 -0
- package/dist/routes/ts-rest/page-collab.js +90 -0
- package/dist/routes/ts-rest/page-collab.js.map +1 -0
- package/dist/routes/ts-rest/page-preview.d.ts +26 -0
- package/dist/routes/ts-rest/page-preview.js +80 -0
- package/dist/routes/ts-rest/page-preview.js.map +1 -0
- package/dist/routes/ts-rest/page.d.ts +4 -0
- package/dist/routes/ts-rest/page.js +676 -0
- package/dist/routes/ts-rest/page.js.map +1 -0
- package/dist/routes/ts-rest/presence.d.ts +30 -0
- package/dist/routes/ts-rest/presence.js +155 -0
- package/dist/routes/ts-rest/presence.js.map +1 -0
- package/dist/routes/ts-rest/revision.d.ts +4 -0
- package/dist/routes/ts-rest/revision.js +240 -0
- package/dist/routes/ts-rest/revision.js.map +1 -0
- package/dist/routes/ts-rest/search.d.ts +4 -0
- package/dist/routes/ts-rest/search.js +121 -0
- package/dist/routes/ts-rest/search.js.map +1 -0
- package/dist/routes/ts-rest/tokenAuth.d.ts +4 -0
- package/dist/routes/ts-rest/tokenAuth.js +94 -0
- package/dist/routes/ts-rest/tokenAuth.js.map +1 -0
- package/dist/routes/ts-rest/user.d.ts +4 -0
- package/dist/routes/ts-rest/user.js +307 -0
- package/dist/routes/ts-rest/user.js.map +1 -0
- package/dist/service/config.d.ts +50 -0
- package/dist/service/config.js +202 -0
- package/dist/service/config.js.map +1 -0
- package/dist/service/lru.d.ts +11 -0
- package/dist/service/lru.js +47 -0
- package/dist/service/lru.js.map +1 -0
- package/dist/service/mail.d.ts +107 -0
- package/dist/service/mail.js +220 -0
- package/dist/service/mail.js.map +1 -0
- package/dist/service/notification.d.ts +9 -0
- package/dist/service/notification.js +19 -0
- package/dist/service/notification.js.map +1 -0
- package/dist/service/presence.d.ts +219 -0
- package/dist/service/presence.js +602 -0
- package/dist/service/presence.js.map +1 -0
- package/dist/types/error.d.ts +13 -0
- package/dist/types/error.js +13 -0
- package/dist/types/error.js.map +1 -0
- package/dist/types/express.d.ts +34 -0
- package/dist/types/express.js +50 -0
- package/dist/types/express.js.map +1 -0
- package/dist/types/mongoose-extensions.d.ts +8 -0
- package/dist/types/mongoose-extensions.js +24 -0
- package/dist/types/mongoose-extensions.js.map +1 -0
- package/dist/util/accessTokenParser.d.ts +1 -0
- package/dist/util/accessTokenParser.js +34 -0
- package/dist/util/accessTokenParser.js.map +1 -0
- package/dist/util/activityDefine.d.ts +15 -0
- package/dist/util/activityDefine.js +52 -0
- package/dist/util/activityDefine.js.map +1 -0
- package/dist/util/admin-config.d.ts +57 -0
- package/dist/util/admin-config.js +99 -0
- package/dist/util/admin-config.js.map +1 -0
- package/dist/util/admin-pager.d.ts +24 -0
- package/dist/util/admin-pager.js +73 -0
- package/dist/util/admin-pager.js.map +1 -0
- package/dist/util/apiPaginate.d.ts +11 -0
- package/dist/util/apiPaginate.js +33 -0
- package/dist/util/apiPaginate.js.map +1 -0
- package/dist/util/apiResponse.d.ts +9 -0
- package/dist/util/apiResponse.js +23 -0
- package/dist/util/apiResponse.js.map +1 -0
- package/dist/util/auth.d.ts +11 -0
- package/dist/util/auth.js +48 -0
- package/dist/util/auth.js.map +1 -0
- package/dist/util/auto-watch.d.ts +35 -0
- package/dist/util/auto-watch.js +24 -0
- package/dist/util/auto-watch.js.map +1 -0
- package/dist/util/autocomplete-match.d.ts +44 -0
- package/dist/util/autocomplete-match.js +80 -0
- package/dist/util/autocomplete-match.js.map +1 -0
- package/dist/util/aws-config-migration.d.ts +11 -0
- package/dist/util/aws-config-migration.js +68 -0
- package/dist/util/aws-config-migration.js.map +1 -0
- package/dist/util/boot-reporter.d.ts +130 -0
- package/dist/util/boot-reporter.js +242 -0
- package/dist/util/boot-reporter.js.map +1 -0
- package/dist/util/collab-cap.d.ts +39 -0
- package/dist/util/collab-cap.js +90 -0
- package/dist/util/collab-cap.js.map +1 -0
- package/dist/util/crypto.d.ts +39 -0
- package/dist/util/crypto.js +105 -0
- package/dist/util/crypto.js.map +1 -0
- package/dist/util/dedup-users.d.ts +96 -0
- package/dist/util/dedup-users.js +149 -0
- package/dist/util/dedup-users.js.map +1 -0
- package/dist/util/editor-cap-counter.d.ts +90 -0
- package/dist/util/editor-cap-counter.js +175 -0
- package/dist/util/editor-cap-counter.js.map +1 -0
- package/dist/util/fileUploader.d.ts +55 -0
- package/dist/util/fileUploader.js +70 -0
- package/dist/util/fileUploader.js.map +1 -0
- package/dist/util/formUtil.d.ts +2 -0
- package/dist/util/formUtil.js +15 -0
- package/dist/util/formUtil.js.map +1 -0
- package/dist/util/githubAuth.d.ts +2 -0
- package/dist/util/githubAuth.js +82 -0
- package/dist/util/githubAuth.js.map +1 -0
- package/dist/util/googleAuth.d.ts +2 -0
- package/dist/util/googleAuth.js +85 -0
- package/dist/util/googleAuth.js.map +1 -0
- package/dist/util/jwt.d.ts +50 -0
- package/dist/util/jwt.js +127 -0
- package/dist/util/jwt.js.map +1 -0
- package/dist/util/linkDetector.d.ts +3 -0
- package/dist/util/linkDetector.js +91 -0
- package/dist/util/linkDetector.js.map +1 -0
- package/dist/util/mail-token.d.ts +24 -0
- package/dist/util/mail-token.js +117 -0
- package/dist/util/mail-token.js.map +1 -0
- package/dist/util/mailer.d.ts +7 -0
- package/dist/util/mailer.js +98 -0
- package/dist/util/mailer.js.map +1 -0
- package/dist/util/map-duplicate-key-error.d.ts +26 -0
- package/dist/util/map-duplicate-key-error.js +41 -0
- package/dist/util/map-duplicate-key-error.js.map +1 -0
- package/dist/util/mongoose-paginate.d.ts +10 -0
- package/dist/util/mongoose-paginate.js +23 -0
- package/dist/util/mongoose-paginate.js.map +1 -0
- package/dist/util/notifications-token.d.ts +35 -0
- package/dist/util/notifications-token.js +140 -0
- package/dist/util/notifications-token.js.map +1 -0
- package/dist/util/oauth-client-seed.d.ts +2 -0
- package/dist/util/oauth-client-seed.js +48 -0
- package/dist/util/oauth-client-seed.js.map +1 -0
- package/dist/util/oauth-redirect-uri.d.ts +2 -0
- package/dist/util/oauth-redirect-uri.js +55 -0
- package/dist/util/oauth-redirect-uri.js.map +1 -0
- package/dist/util/page-response.d.ts +113 -0
- package/dist/util/page-response.js +154 -0
- package/dist/util/page-response.js.map +1 -0
- package/dist/util/page-search-index.d.ts +19 -0
- package/dist/util/page-search-index.js +91 -0
- package/dist/util/page-search-index.js.map +1 -0
- package/dist/util/page-status-migration.d.ts +23 -0
- package/dist/util/page-status-migration.js +48 -0
- package/dist/util/page-status-migration.js.map +1 -0
- package/dist/util/path.d.ts +2 -0
- package/dist/util/path.js +12 -0
- package/dist/util/path.js.map +1 -0
- package/dist/util/pkce.d.ts +13 -0
- package/dist/util/pkce.js +30 -0
- package/dist/util/pkce.js.map +1 -0
- package/dist/util/presence-token.d.ts +21 -0
- package/dist/util/presence-token.js +120 -0
- package/dist/util/presence-token.js.map +1 -0
- package/dist/util/rate-limit.d.ts +67 -0
- package/dist/util/rate-limit.js +87 -0
- package/dist/util/rate-limit.js.map +1 -0
- package/dist/util/rebuild-backlink.d.ts +25 -0
- package/dist/util/rebuild-backlink.js +7 -0
- package/dist/util/rebuild-backlink.js.map +1 -0
- package/dist/util/rebuild-renderer.d.ts +31 -0
- package/dist/util/rebuild-renderer.js +7 -0
- package/dist/util/rebuild-renderer.js.map +1 -0
- package/dist/util/redis-opts.d.ts +17 -0
- package/dist/util/redis-opts.js +40 -0
- package/dist/util/redis-opts.js.map +1 -0
- package/dist/util/regex.d.ts +2 -0
- package/dist/util/regex.js +8 -0
- package/dist/util/regex.js.map +1 -0
- package/dist/util/search-rebuild.d.ts +18 -0
- package/dist/util/search-rebuild.js +28 -0
- package/dist/util/search-rebuild.js.map +1 -0
- package/dist/util/ssr.d.ts +3 -0
- package/dist/util/ssr.js +9 -0
- package/dist/util/ssr.js.map +1 -0
- package/dist/util/storage-copy.d.ts +40 -0
- package/dist/util/storage-copy.js +123 -0
- package/dist/util/storage-copy.js.map +1 -0
- package/dist/util/ts-rest-helpers.d.ts +110 -0
- package/dist/util/ts-rest-helpers.js +110 -0
- package/dist/util/ts-rest-helpers.js.map +1 -0
- package/dist/util/url.d.ts +1 -0
- package/dist/util/url.js +11 -0
- package/dist/util/url.js.map +1 -0
- package/dist/util/user-code.d.ts +10 -0
- package/dist/util/user-code.js +55 -0
- package/dist/util/user-code.js.map +1 -0
- package/dist/util/view.d.ts +10 -0
- package/dist/util/view.js +99 -0
- package/dist/util/view.js.map +1 -0
- package/dist/util/watcher-backfill.d.ts +30 -0
- package/dist/util/watcher-backfill.js +43 -0
- package/dist/util/watcher-backfill.js.map +1 -0
- package/dist/util/ws-token.d.ts +24 -0
- package/dist/util/ws-token.js +134 -0
- package/dist/util/ws-token.js.map +1 -0
- package/package.json +106 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.backlinkRebuild = exports.searchRebuild = void 0;
|
|
4
|
+
exports.storageCopyRebuild = storageCopyRebuild;
|
|
5
|
+
exports.rendererRebuild = rendererRebuild;
|
|
6
|
+
const rebuild_backlink_1 = require("../../util/rebuild-backlink");
|
|
7
|
+
const rebuild_renderer_1 = require("../../util/rebuild-renderer");
|
|
8
|
+
const search_rebuild_1 = require("../../util/search-rebuild");
|
|
9
|
+
const storage_copy_1 = require("../../util/storage-copy");
|
|
10
|
+
const rebuild_runner_1 = require("../rebuild-runner");
|
|
11
|
+
/**
|
|
12
|
+
* RFC-0008 §8.5 — the registered rebuild tasks.
|
|
13
|
+
*
|
|
14
|
+
* Each task wires an existing api-side `run*` helper onto the shared
|
|
15
|
+
* `RebuildRunner` so the `--dry-run` / progress / SIGINT / structured-logging
|
|
16
|
+
* conventions are uniform. Tasks carry NO pending/applied state (§8.5): they
|
|
17
|
+
* never read or append `migrationApplications`.
|
|
18
|
+
*
|
|
19
|
+
* `search` and `storage-copy` port the previously top-level `search rebuild` /
|
|
20
|
+
* `storage copy` commands (their core logic stays in `util/`, unchanged);
|
|
21
|
+
* `renderer` and `backlink` are skeletons whose `run*` helpers throw a clear
|
|
22
|
+
* "not implemented" error (no legacy implementation to port).
|
|
23
|
+
*/
|
|
24
|
+
exports.searchRebuild = (0, rebuild_runner_1.defineRebuild)({
|
|
25
|
+
id: 'search',
|
|
26
|
+
description: "Rebuild the search index from scratch using the active driver's rebuild().",
|
|
27
|
+
async run(ctx) {
|
|
28
|
+
const summary = await (0, search_rebuild_1.runSearchRebuild)(ctx.crowi);
|
|
29
|
+
return { driverName: summary.driverName, pluginName: summary.pluginName };
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
function storageCopyRebuild(opts) {
|
|
33
|
+
return (0, rebuild_runner_1.defineRebuild)({
|
|
34
|
+
id: 'storage-copy',
|
|
35
|
+
description: `Copy every stored object from '${opts.from}' to '${opts.to}'.`,
|
|
36
|
+
async run(ctx) {
|
|
37
|
+
const summary = await (0, storage_copy_1.runStorageCopy)(ctx.crowi, {
|
|
38
|
+
from: opts.from,
|
|
39
|
+
to: opts.to,
|
|
40
|
+
dryRun: ctx.dryRun,
|
|
41
|
+
onProgress: (event) => {
|
|
42
|
+
// Bridge the util's per-key callback onto the shared progress sink.
|
|
43
|
+
ctx.progress.increment();
|
|
44
|
+
ctx.progress.setLabel(`${event.stage} ${event.key}`);
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
return { ...summary };
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function rendererRebuild(opts) {
|
|
52
|
+
return (0, rebuild_runner_1.defineRebuild)({
|
|
53
|
+
id: 'renderer',
|
|
54
|
+
description: 'Regenerate cached rendered HTML for pages. (not implemented)',
|
|
55
|
+
async run(ctx) {
|
|
56
|
+
const summary = await (0, rebuild_renderer_1.runRendererRebuild)(ctx.crowi, { onlyStale: opts.onlyStale });
|
|
57
|
+
return { ...summary };
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
exports.backlinkRebuild = (0, rebuild_runner_1.defineRebuild)({
|
|
62
|
+
id: 'backlink',
|
|
63
|
+
description: 'Rebuild the backlink index across all pages. (not implemented)',
|
|
64
|
+
async run(ctx) {
|
|
65
|
+
const summary = await (0, rebuild_backlink_1.runBacklinkRebuild)(ctx.crowi);
|
|
66
|
+
return { ...summary };
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migration/rebuilds/index.ts"],"names":[],"mappings":";;;AAoCA,gDAkBC;AAMD,0CASC;AArED,gEAA+D;AAC/D,gEAA+D;AAC/D,4DAA2D;AAC3D,wDAAiF;AAEjF,sDAAoE;AAEpE;;;;;;;;;;;;GAYG;AAEU,QAAA,aAAa,GAAgB,IAAA,8BAAa,EAAC;IACtD,EAAE,EAAE,QAAQ;IACZ,WAAW,EAAE,4EAA4E;IACzF,KAAK,CAAC,GAAG,CAAC,GAAG;QACX,MAAM,OAAO,GAAG,MAAM,IAAA,iCAAgB,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IAC5E,CAAC;CACF,CAAC,CAAC;AAQH,SAAgB,kBAAkB,CAAC,IAA4B;IAC7D,OAAO,IAAA,8BAAa,EAAC;QACnB,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,kCAAkC,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,IAAI;QAC5E,KAAK,CAAC,GAAG,CAAC,GAAG;YACX,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAc,EAAC,GAAG,CAAC,KAAK,EAAE;gBAC9C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,UAAU,EAAE,CAAC,KAA0B,EAAE,EAAE;oBACzC,oEAAoE;oBACpE,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;oBACzB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,CAAC;aACF,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;QACxB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAMD,SAAgB,eAAe,CAAC,IAAyB;IACvD,OAAO,IAAA,8BAAa,EAAC;QACnB,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,8DAA8D;QAC3E,KAAK,CAAC,GAAG,CAAC,GAAG;YACX,MAAM,OAAO,GAAG,MAAM,IAAA,qCAAkB,EAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YACnF,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;QACxB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAEY,QAAA,eAAe,GAAgB,IAAA,8BAAa,EAAC;IACxD,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,gEAAgE;IAC7E,KAAK,CAAC,GAAG,CAAC,GAAG;QACX,MAAM,OAAO,GAAG,MAAM,IAAA,qCAAkB,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IACxB,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { MigrationDefinition, MigrationLayer } from './types';
|
|
2
|
+
export declare class MigrationRegistry {
|
|
3
|
+
private readonly migrations;
|
|
4
|
+
constructor(defs: MigrationDefinition[]);
|
|
5
|
+
/** All migrations in version-range + `order` sequence. */
|
|
6
|
+
all(): readonly MigrationDefinition[];
|
|
7
|
+
/** Migrations of a given layer, in order. */
|
|
8
|
+
byLayer(layer: MigrationLayer): readonly MigrationDefinition[];
|
|
9
|
+
/** Look up a migration by id, or undefined. */
|
|
10
|
+
get(id: string): MigrationDefinition | undefined;
|
|
11
|
+
/** The latest reachable target version across all registered migrations. */
|
|
12
|
+
latestTarget(): string | null;
|
|
13
|
+
}
|
|
14
|
+
/** The default registry built from the `migrations/` barrel. */
|
|
15
|
+
export declare function createRegistry(defs?: MigrationDefinition[]): MigrationRegistry;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MigrationRegistry = void 0;
|
|
4
|
+
exports.createRegistry = createRegistry;
|
|
5
|
+
const migrations_1 = require("./migrations");
|
|
6
|
+
/**
|
|
7
|
+
* RFC-0008 §5.5 — the migration registry.
|
|
8
|
+
*
|
|
9
|
+
* Loads every `MigrationDefinition` from the `migrations/` barrel and
|
|
10
|
+
* exposes them in a stable, deterministic order: by version range, then by
|
|
11
|
+
* `order` within the same range (defaulting to declaration order). There is
|
|
12
|
+
* no cross-migration dependency graph (§5.3) — version range + `order` is
|
|
13
|
+
* the only ordering input.
|
|
14
|
+
*
|
|
15
|
+
* The registry is intentionally a pure, in-memory structure with no DB
|
|
16
|
+
* access; pending determination and application live in `runner.ts`.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Parse a version string into a comparable numeric tuple. We only need a
|
|
20
|
+
* total order over the handful of ranges this codebase uses ('1.x', '2.0',
|
|
21
|
+
* '2.1', ...). 'x' / missing minor sorts as 0 so '1.x' precedes '2.0'.
|
|
22
|
+
*
|
|
23
|
+
* This is deliberately lenient (not full semver): migration versions are
|
|
24
|
+
* coarse upgrade milestones, not package versions.
|
|
25
|
+
*/
|
|
26
|
+
function versionKey(version) {
|
|
27
|
+
const [majorRaw, minorRaw] = version.split('.');
|
|
28
|
+
const major = Number.parseInt(majorRaw ?? '0', 10);
|
|
29
|
+
const minor = minorRaw === undefined || minorRaw === 'x' ? 0 : Number.parseInt(minorRaw, 10);
|
|
30
|
+
return [Number.isNaN(major) ? 0 : major, Number.isNaN(minor) ? 0 : minor];
|
|
31
|
+
}
|
|
32
|
+
function compareVersion(a, b) {
|
|
33
|
+
const [aMaj, aMin] = versionKey(a);
|
|
34
|
+
const [bMaj, bMin] = versionKey(b);
|
|
35
|
+
if (aMaj !== bMaj)
|
|
36
|
+
return aMaj - bMaj;
|
|
37
|
+
return aMin - bMin;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Total order over migrations: by `fromVersion`, then `toVersion`, then
|
|
41
|
+
* `order` (defaulting to the migration's index in the source array so the
|
|
42
|
+
* sort is stable and mirrors declaration order).
|
|
43
|
+
*/
|
|
44
|
+
function compareMigrations(a, b, indexOf) {
|
|
45
|
+
const fromCmp = compareVersion(a.fromVersion, b.fromVersion);
|
|
46
|
+
if (fromCmp !== 0)
|
|
47
|
+
return fromCmp;
|
|
48
|
+
const toCmp = compareVersion(a.toVersion, b.toVersion);
|
|
49
|
+
if (toCmp !== 0)
|
|
50
|
+
return toCmp;
|
|
51
|
+
const aOrder = a.order ?? indexOf.get(a.id) ?? 0;
|
|
52
|
+
const bOrder = b.order ?? indexOf.get(b.id) ?? 0;
|
|
53
|
+
if (aOrder !== bOrder)
|
|
54
|
+
return aOrder - bOrder;
|
|
55
|
+
return (indexOf.get(a.id) ?? 0) - (indexOf.get(b.id) ?? 0);
|
|
56
|
+
}
|
|
57
|
+
class MigrationRegistry {
|
|
58
|
+
migrations;
|
|
59
|
+
constructor(defs) {
|
|
60
|
+
// Guard against duplicate ids early — ids are stable keys in
|
|
61
|
+
// `migrationApplications`, so a collision would corrupt the audit log.
|
|
62
|
+
const seen = new Set();
|
|
63
|
+
for (const def of defs) {
|
|
64
|
+
if (seen.has(def.id)) {
|
|
65
|
+
throw new Error(`Duplicate migration id in registry: '${def.id}'`);
|
|
66
|
+
}
|
|
67
|
+
seen.add(def.id);
|
|
68
|
+
}
|
|
69
|
+
const indexOf = new Map(defs.map((def, i) => [def.id, i]));
|
|
70
|
+
this.migrations = [...defs].sort((a, b) => compareMigrations(a, b, indexOf));
|
|
71
|
+
}
|
|
72
|
+
/** All migrations in version-range + `order` sequence. */
|
|
73
|
+
all() {
|
|
74
|
+
return this.migrations;
|
|
75
|
+
}
|
|
76
|
+
/** Migrations of a given layer, in order. */
|
|
77
|
+
byLayer(layer) {
|
|
78
|
+
return this.migrations.filter((m) => m.layer === layer);
|
|
79
|
+
}
|
|
80
|
+
/** Look up a migration by id, or undefined. */
|
|
81
|
+
get(id) {
|
|
82
|
+
return this.migrations.find((m) => m.id === id);
|
|
83
|
+
}
|
|
84
|
+
/** The latest reachable target version across all registered migrations. */
|
|
85
|
+
latestTarget() {
|
|
86
|
+
if (this.migrations.length === 0)
|
|
87
|
+
return null;
|
|
88
|
+
return this.migrations.reduce((latest, m) => (compareVersion(m.toVersion, latest) > 0 ? m.toVersion : latest), this.migrations[0].toVersion);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.MigrationRegistry = MigrationRegistry;
|
|
92
|
+
/** The default registry built from the `migrations/` barrel. */
|
|
93
|
+
function createRegistry(defs = migrations_1.allMigrations) {
|
|
94
|
+
return new MigrationRegistry(defs);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/migration/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type Crowi from '../crowi';
|
|
2
|
+
import { type MigrationRegistry } from './registry';
|
|
3
|
+
import { type PreflightUnappliedPolicy } from './runner';
|
|
4
|
+
import type { MigrationLogger } from './types';
|
|
5
|
+
/** Error thrown when boot is refused under the `block` policy. */
|
|
6
|
+
export declare class PreflightBlockedError extends Error {
|
|
7
|
+
readonly pendingIds: string[];
|
|
8
|
+
constructor(pendingIds: string[]);
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Resolve the preflight-unapplied policy. Env var override (§12.7) wins over
|
|
12
|
+
* the `migration.preflightUnappliedPolicy` config namespace, which in turn
|
|
13
|
+
* defaults to `block`.
|
|
14
|
+
*/
|
|
15
|
+
export declare function resolvePreflightPolicy(crowi: Crowi): PreflightUnappliedPolicy;
|
|
16
|
+
export interface RunBootMigrationsOptions {
|
|
17
|
+
/** Override the registry (tests inject a registry of fixture migrations). */
|
|
18
|
+
registry?: MigrationRegistry;
|
|
19
|
+
/** Override the policy resolution (tests). */
|
|
20
|
+
policy?: PreflightUnappliedPolicy;
|
|
21
|
+
/** Live force-reload broadcast for boot-layer migrations (api process). */
|
|
22
|
+
broadcastForceReload?: (pageIds: string[]) => Promise<void>;
|
|
23
|
+
/** Logger override (tests / quiet boot). */
|
|
24
|
+
logger?: MigrationLogger;
|
|
25
|
+
}
|
|
26
|
+
export interface RunBootMigrationsResult {
|
|
27
|
+
appliedBootIds: string[];
|
|
28
|
+
pendingPreflightIds: string[];
|
|
29
|
+
policy: PreflightUnappliedPolicy;
|
|
30
|
+
}
|
|
31
|
+
export declare function runBootMigrations(crowi: Crowi, options?: RunBootMigrationsOptions): Promise<RunBootMigrationsResult>;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PreflightBlockedError = void 0;
|
|
4
|
+
exports.resolvePreflightPolicy = resolvePreflightPolicy;
|
|
5
|
+
exports.runBootMigrations = runBootMigrations;
|
|
6
|
+
const registry_1 = require("./registry");
|
|
7
|
+
const runner_1 = require("./runner");
|
|
8
|
+
/**
|
|
9
|
+
* RFC-0008 §4.2.1 — the boot-sequence migration step.
|
|
10
|
+
*
|
|
11
|
+
* Called from `crowi/index.ts` during init. Two responsibilities:
|
|
12
|
+
*
|
|
13
|
+
* 1. Apply every `layer:'boot'` migration that `isPending` flags, in
|
|
14
|
+
* version-range + `order` sequence, appending each result to the
|
|
15
|
+
* `migrationApplications` audit log.
|
|
16
|
+
* 2. Probe every `layer:'preflight'` migration with `isPending` (cheap)
|
|
17
|
+
* and, when any is unapplied, either refuse boot (`block`, default) or
|
|
18
|
+
* log loudly and continue (`warn`) — per `preflightUnappliedPolicy`.
|
|
19
|
+
*
|
|
20
|
+
* `block` is the safe default (§4.2.7): if a preflight migration hasn't run
|
|
21
|
+
* before v2 boot, *every replica fail-fasts* with a clear error before
|
|
22
|
+
* autoIndex would otherwise hit E11000 (§9) on not-yet-deduped data. The
|
|
23
|
+
* operator then runs `crowi-admin migrate apply` once and brings the cluster
|
|
24
|
+
* up.
|
|
25
|
+
*
|
|
26
|
+
* Phase 1 ships with an empty registry, so this is a fast no-op; the wiring
|
|
27
|
+
* is what matters. Phase 2 adds `page-status-default` as the first boot
|
|
28
|
+
* migration.
|
|
29
|
+
*/
|
|
30
|
+
const POLICY_ENV_VAR = 'MIGRATION_PREFLIGHT_UNAPPLIED_POLICY';
|
|
31
|
+
/** Error thrown when boot is refused under the `block` policy. */
|
|
32
|
+
class PreflightBlockedError extends Error {
|
|
33
|
+
pendingIds;
|
|
34
|
+
constructor(pendingIds) {
|
|
35
|
+
super(`Boot refused: ${pendingIds.length} preflight migration(s) are unapplied [${pendingIds.join(', ')}]. ` +
|
|
36
|
+
'Run `crowi-admin migrate apply` against this database before starting the application ' +
|
|
37
|
+
`(set ${POLICY_ENV_VAR}=warn to override at your own risk).`);
|
|
38
|
+
this.name = 'PreflightBlockedError';
|
|
39
|
+
this.pendingIds = pendingIds;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.PreflightBlockedError = PreflightBlockedError;
|
|
43
|
+
/**
|
|
44
|
+
* Resolve the preflight-unapplied policy. Env var override (§12.7) wins over
|
|
45
|
+
* the `migration.preflightUnappliedPolicy` config namespace, which in turn
|
|
46
|
+
* defaults to `block`.
|
|
47
|
+
*/
|
|
48
|
+
function resolvePreflightPolicy(crowi) {
|
|
49
|
+
const fromEnv = crowi.env[POLICY_ENV_VAR];
|
|
50
|
+
if (fromEnv === 'warn' || fromEnv === 'block')
|
|
51
|
+
return fromEnv;
|
|
52
|
+
const cfg = crowi.getConfig();
|
|
53
|
+
const fromConfig = cfg?.migration?.preflightUnappliedPolicy;
|
|
54
|
+
if (fromConfig === 'warn' || fromConfig === 'block')
|
|
55
|
+
return fromConfig;
|
|
56
|
+
return 'block';
|
|
57
|
+
}
|
|
58
|
+
async function runBootMigrations(crowi, options = {}) {
|
|
59
|
+
const registry = options.registry ?? (0, registry_1.createRegistry)();
|
|
60
|
+
const policy = options.policy ?? resolvePreflightPolicy(crowi);
|
|
61
|
+
const runner = new runner_1.MigrationRunner(crowi, {
|
|
62
|
+
appliedBy: 'boot-auto',
|
|
63
|
+
progress: runner_1.noopProgress,
|
|
64
|
+
logger: options.logger,
|
|
65
|
+
// Boot layer (api process) can broadcast a live force-reload; preflight
|
|
66
|
+
// probing below never mutates, so the handle is only meaningful here.
|
|
67
|
+
broadcastForceReload: options.broadcastForceReload,
|
|
68
|
+
});
|
|
69
|
+
// ── 1. Apply pending boot migrations in order ──
|
|
70
|
+
const appliedBootIds = [];
|
|
71
|
+
for (const def of registry.byLayer('boot')) {
|
|
72
|
+
const outcome = await runner.apply(def);
|
|
73
|
+
if (outcome.result === 'applied' || outcome.result === 're-applied') {
|
|
74
|
+
appliedBootIds.push(def.id);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// ── 2. Probe preflight migrations (cheap isPending) ──
|
|
78
|
+
const pendingPreflightIds = [];
|
|
79
|
+
for (const def of registry.byLayer('preflight')) {
|
|
80
|
+
if (await runner.isPending(def)) {
|
|
81
|
+
pendingPreflightIds.push(def.id);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
if (pendingPreflightIds.length > 0) {
|
|
85
|
+
if (policy === 'block') {
|
|
86
|
+
// Whole-cluster fail-fast (§4.2.7).
|
|
87
|
+
throw new PreflightBlockedError(pendingPreflightIds);
|
|
88
|
+
}
|
|
89
|
+
// warn: operator explicitly accepts the risk.
|
|
90
|
+
console.warn(`[crowi:migration] WARNING: ${pendingPreflightIds.length} preflight migration(s) unapplied [${pendingPreflightIds.join(', ')}] ` +
|
|
91
|
+
`but ${POLICY_ENV_VAR}=warn — continuing boot. Data may not be in the target shape; autoIndex may fail with E11000.`);
|
|
92
|
+
}
|
|
93
|
+
return { appliedBootIds, pendingPreflightIds, policy };
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=run-boot-migrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-boot-migrations.js","sourceRoot":"","sources":["../../src/migration/run-boot-migrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import type Crowi from '../crowi';
|
|
2
|
+
import type { MigrationResult } from '../models/migration-application';
|
|
3
|
+
import type { DetectReport, MigrationContext, MigrationDefinition, MigrationLogger, ProgressReporter } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* RFC-0008 §4.3 — the shared migration runner.
|
|
6
|
+
*
|
|
7
|
+
* Both the `migrate` and `rebuild` namespaces route through this one runner
|
|
8
|
+
* so dry-run, progress, bounded concurrency, structured logging, safe SIGINT
|
|
9
|
+
* interruption, and Yjs invalidation are implemented once. It also owns the
|
|
10
|
+
* pending-vs-recorded reconciliation table (§6.2) and the append to the
|
|
11
|
+
* `migrationApplications` audit log.
|
|
12
|
+
*/
|
|
13
|
+
/** How the framework decides to handle an unapplied preflight migration at boot (§4.2.7). */
|
|
14
|
+
export type PreflightUnappliedPolicy = 'block' | 'warn';
|
|
15
|
+
export interface RunnerOptions {
|
|
16
|
+
/** When true, stages no-op and only `detect` runs (§8.2). */
|
|
17
|
+
dryRun?: boolean;
|
|
18
|
+
/** Bound on concurrent in-flight units a stage may schedule (default 8). */
|
|
19
|
+
concurrency?: number;
|
|
20
|
+
/** Identifies who triggered the run for the audit log ('boot-auto' | admin-cli@host). */
|
|
21
|
+
appliedBy?: string;
|
|
22
|
+
/** Optional progress sink; defaults to a no-op reporter. */
|
|
23
|
+
progress?: ProgressReporter;
|
|
24
|
+
/** Optional logger; defaults to a `debug`/console-backed logger. */
|
|
25
|
+
logger?: MigrationLogger;
|
|
26
|
+
/**
|
|
27
|
+
* Live force-reload broadcast, available ONLY in the api (boot) process.
|
|
28
|
+
* Left undefined by the admin CLI (§4.3.1).
|
|
29
|
+
*/
|
|
30
|
+
broadcastForceReload?: (pageIds: string[]) => Promise<void>;
|
|
31
|
+
}
|
|
32
|
+
/** Outcome of running (or probing) a single migration. */
|
|
33
|
+
export interface MigrationRunOutcome {
|
|
34
|
+
id: string;
|
|
35
|
+
result: MigrationResult;
|
|
36
|
+
durationMs: number;
|
|
37
|
+
stats: Record<string, unknown>;
|
|
38
|
+
/** True when the run was aborted by SIGINT before completing all stages. */
|
|
39
|
+
interrupted?: boolean;
|
|
40
|
+
}
|
|
41
|
+
/** A no-op progress reporter — used by boot / tests that don't render progress. */
|
|
42
|
+
export declare const noopProgress: ProgressReporter;
|
|
43
|
+
/**
|
|
44
|
+
* Resolve a runner's effective options, filling in defaults.
|
|
45
|
+
*/
|
|
46
|
+
declare function resolveOptions(opts: RunnerOptions): Required<Pick<RunnerOptions, 'dryRun' | 'concurrency' | 'appliedBy' | 'progress' | 'logger'>> & Pick<RunnerOptions, 'broadcastForceReload'>;
|
|
47
|
+
/**
|
|
48
|
+
* RFC-0008 §4.3 — the shared runner *core*.
|
|
49
|
+
*
|
|
50
|
+
* Holds the booted Crowi, the resolved options, the per-run
|
|
51
|
+
* `MigrationContext` (dry-run / progress / logger / Yjs invalidation), the
|
|
52
|
+
* SIGINT-aware abort flag, and the bounded-concurrency limiter. This is the
|
|
53
|
+
* "shared infrastructure" both namespaces ride on: `migrate` adds the
|
|
54
|
+
* `migrationApplications` reconciliation/record path on top (`MigrationRunner`
|
|
55
|
+
* below), while `rebuild` rides on the core alone with **no** audit-log
|
|
56
|
+
* coupling (`RebuildRunner` in `rebuild-runner.ts`).
|
|
57
|
+
*
|
|
58
|
+
* Keeping the record path out of the core is deliberate (§8.5: rebuilds have
|
|
59
|
+
* "no pending/applied concept"): a rebuild can never accidentally append to
|
|
60
|
+
* `migrationApplications`, and `MigrationRunner.apply` carries no `if (rebuild)`
|
|
61
|
+
* branch — the two namespaces are distinct subclasses, not flags on one path.
|
|
62
|
+
*/
|
|
63
|
+
export declare class MigrationRunnerCore {
|
|
64
|
+
protected readonly crowi: Crowi;
|
|
65
|
+
protected readonly opts: ReturnType<typeof resolveOptions>;
|
|
66
|
+
private readonly ctx;
|
|
67
|
+
protected abortRequested: boolean;
|
|
68
|
+
private sigintHandler;
|
|
69
|
+
constructor(crowi: Crowi, options?: RunnerOptions);
|
|
70
|
+
/** True once a SIGINT has been received; long stages should wind down. */
|
|
71
|
+
get aborted(): boolean;
|
|
72
|
+
/** The shared per-run context handed to migration / rebuild callbacks. */
|
|
73
|
+
get context(): MigrationContext;
|
|
74
|
+
get concurrency(): number;
|
|
75
|
+
/**
|
|
76
|
+
* Install a SIGINT handler so an in-progress run can stop between
|
|
77
|
+
* stages / units instead of leaving Mongo in an arbitrary state. Returns
|
|
78
|
+
* a disposer; safe to call when no handler is desired (tests pass none).
|
|
79
|
+
*/
|
|
80
|
+
installSigintHandler(): () => void;
|
|
81
|
+
private removeSigintHandler;
|
|
82
|
+
/**
|
|
83
|
+
* Run a bounded-concurrency map over `items`, respecting the SIGINT abort
|
|
84
|
+
* flag (stops scheduling new work once aborted). Exposed so a stage's `fn`
|
|
85
|
+
* or a rebuild task can fan out per-document work through the shared
|
|
86
|
+
* concurrency limiter.
|
|
87
|
+
*/
|
|
88
|
+
mapBounded<T>(items: readonly T[], worker: (item: T, index: number) => Promise<void>): Promise<{
|
|
89
|
+
processed: number;
|
|
90
|
+
interrupted: boolean;
|
|
91
|
+
}>;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* The `migrate`-namespace runner. Adds the §6.2 reconciliation rules and the
|
|
95
|
+
* `migrationApplications` audit-log append on top of the shared core. The
|
|
96
|
+
* `rebuild` namespace does NOT extend this — it rides the core directly so it
|
|
97
|
+
* stays free of any applied/pending semantics (§8.5).
|
|
98
|
+
*/
|
|
99
|
+
export declare class MigrationRunner extends MigrationRunnerCore {
|
|
100
|
+
/** Cheap pending probe. Never writes; safe to call on every boot (§4.2.1). */
|
|
101
|
+
isPending(def: MigrationDefinition): Promise<boolean>;
|
|
102
|
+
/** Rich, optional report for `plan`. Returns null when the migration has no `detect`. */
|
|
103
|
+
detect(def: MigrationDefinition): Promise<DetectReport | null>;
|
|
104
|
+
/**
|
|
105
|
+
* Apply a single migration through the framework's reconciliation rules
|
|
106
|
+
* (§6.2): inspection (`isPending`) is the source of truth; the recorded
|
|
107
|
+
* state only affects which `result` label we append.
|
|
108
|
+
*
|
|
109
|
+
* - pending + no record → run → `applied`
|
|
110
|
+
* - pending + applied → re-run (warn) → `re-applied`
|
|
111
|
+
* - not pending + no record→ `detected-clean`
|
|
112
|
+
* - not pending + applied → no-op (consistent), no new record
|
|
113
|
+
*
|
|
114
|
+
* Appends one `migrationApplications` row per run (except the consistent
|
|
115
|
+
* no-op case). `dryRun` runs `detect`/probe only and records nothing.
|
|
116
|
+
*/
|
|
117
|
+
apply(def: MigrationDefinition): Promise<MigrationRunOutcome>;
|
|
118
|
+
private recordApplication;
|
|
119
|
+
}
|
|
120
|
+
export {};
|