update to react-monolith@1.9.8 and update code accordingly@@ -1,76 +1,76 @@
{
- "_generatedAtUnix": 1670633875010,
+ "_generatedAtUnix": 1702173824643,
"_hashAlgorithm": "sha1",
"_version": 2,
"islands": {
"Code": {
- "hash": "7a08a2ecee9bdd07ccc9abf6a023174df7812b24",
+ "hash": "637cb859750ff563dc8156f17615d9864f95f561",
"pathSource": "./app/islands/Code.tsx",
"pathBundle": "./public/.islands/Code.bundle.js",
"pathSourceMap": "./public/.islands/Code.bundle.js.map"
},
"InstantRouterIndicator": {
- "hash": "5df7d5388145fb13164baf8361b1d33a332c8841",
+ "hash": "7fd24eef65b3e804b4497a26dc2e96c2af054d20",
"pathSource": "./app/islands/InstantRouterIndicator.tsx",
"pathBundle": "./public/.islands/InstantRouterIndicator.bundle.js",
"pathSourceMap": "./public/.islands/InstantRouterIndicator.bundle.js.map"
},
"PullRequestSourceSelect": {
- "hash": "6f5bba81f415c4790c33ba8a9d3ffb2eb993665f",
+ "hash": "6d0ed5a1d2dfc8841961827e69242458e2ff32fb",
"pathSource": "./app/islands/PullRequestSourceSelect.tsx",
"pathBundle": "./public/.islands/PullRequestSourceSelect.bundle.js",
"pathSourceMap": "./public/.islands/PullRequestSourceSelect.bundle.js.map"
},
"RepositoriesList": {
- "hash": "8e1c3e149243e2a42e1a2d3cea1a51bc101ca656",
+ "hash": "98b735ebcd727f3d34f2e2d4af578dbda9ae3081",
"pathSource": "./app/islands/RepositoriesList.tsx",
"pathBundle": "./public/.islands/RepositoriesList.bundle.js",
"pathSourceMap": "./public/.islands/RepositoriesList.bundle.js.map"
},
"RepositoryCommitSummaryLine": {
- "hash": "7205e3d23a0316c84eb4028cfc8d1614037e60e0",
+ "hash": "11d260b4acaf7aca6fc2b746529617093f3a3356",
"pathSource": "./app/islands/RepositoryCommitSummaryLine.tsx",
"pathBundle": "./public/.islands/RepositoryCommitSummaryLine.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryCommitSummaryLine.bundle.js.map"
},
"RepositoryCreateForm": {
- "hash": "0257bbbe100aef18044efbef31e8635c249c382b",
+ "hash": "d4a64ab2f718fa6b77ea561d33adb242a831e107",
"pathSource": "./app/islands/RepositoryCreateForm.tsx",
"pathBundle": "./public/.islands/RepositoryCreateForm.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryCreateForm.bundle.js.map"
},
"RepositoryFilesDiffsList": {
- "hash": "6e09d3fa17611d991dec13339d0a0e1aa26a3496",
+ "hash": "fd96b0001b9db83675724042cfc0d0c8323fd07b",
"pathSource": "./app/islands/RepositoryFilesDiffsList.tsx",
"pathBundle": "./public/.islands/RepositoryFilesDiffsList.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryFilesDiffsList.bundle.js.map"
},
"RepositoryForkForm": {
- "hash": "ba2b154455bebe93418d07d0dc442ae8274e7077",
+ "hash": "a0ea58d89401471e74e9f1fb60f10e70e187fd1b",
"pathSource": "./app/islands/RepositoryForkForm.tsx",
"pathBundle": "./public/.islands/RepositoryForkForm.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryForkForm.bundle.js.map"
},
"RepositoryHero": {
- "hash": "7875d80ebe7af7e679f0926130be103f0c49410b",
+ "hash": "1539f74a6345fe47637d62faea2e5cc7504c6a72",
"pathSource": "./app/islands/RepositoryHero.tsx",
"pathBundle": "./public/.islands/RepositoryHero.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryHero.bundle.js.map"
},
"RepositoryInitialSetup": {
- "hash": "3161d78d94d0d1106cdaaf96232e0bf3837e65d9",
+ "hash": "5a8bf6a597e995832fd8c4d970281e079b97c3c5",
"pathSource": "./app/islands/RepositoryInitialSetup.tsx",
"pathBundle": "./public/.islands/RepositoryInitialSetup.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryInitialSetup.bundle.js.map"
},
"RepositoryPullRequestCreateForm": {
- "hash": "ba904416b012180a45726b5d025ae2f55b43d158",
+ "hash": "5af2ef37ec2c003ff238db565143d0f522dfbd32",
"pathSource": "./app/islands/RepositoryPullRequestCreateForm.tsx",
"pathBundle": "./public/.islands/RepositoryPullRequestCreateForm.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryPullRequestCreateForm.bundle.js.map"
},
"RepositoryTreeView": {
- "hash": "dd5a8daeb67ea7e25e21a0bf256495c54c7ae48d",
+ "hash": "80608f2940dad21e9e89f6534f9d1a38be8db277",
"pathSource": "./app/islands/RepositoryTreeView.tsx",
"pathBundle": "./public/.islands/RepositoryTreeView.bundle.js",
"pathSourceMap": "./public/.islands/RepositoryTreeView.bundle.js.map"
@@ -78,75 +78,75 @@
},
"views": {
"HomeView": {
- "hash": "a6effb4d7c0dbb5dc53dfdaeadab48881d4e3c9e",
+ "hash": "14f6b7a4360a42125e6ba984ad7f4c5bc89b9f64",
"pathSource": "./app/views/HomeView.tsx"
},
"InternalErrorView": {
- "hash": "aae11e5992008b39f21645e1ebf8dd884e8941f9",
+ "hash": "16f0d72a0d5e3b56fb7e11bdf8b35c5e60a12643",
"pathSource": "./app/views/InternalErrorView.tsx"
},
"LoginView": {
- "hash": "1f3e668669f0504880f91d1273d97f9c8195cb34",
+ "hash": "a9c2a6fa3392cfb3ff7efab74c7b694356c8ec1d",
"pathSource": "./app/views/auth/LoginView.tsx"
},
"RegisterView": {
- "hash": "4e8d118248a0fbb3ebf83f60b5a6518308f813bf",
+ "hash": "b8ae30863b43ab5f1abf0cc8eef267acc661344d",
"pathSource": "./app/views/auth/RegisterView.tsx"
},
"OrganizationDetailsView": {
- "hash": "d918b9bfef2257d92a8dd1c30ede8ce6021d4001",
+ "hash": "ccb720380689bb15285ed08e8a6925d17f80e21a",
"pathSource": "./app/views/organization/OrganizationDetailsView.tsx"
},
"RepositoryBrowserView": {
- "hash": "f8c846459384efa5b446d7119391a00c55e803a0",
+ "hash": "9a451556ce04140117bdfe1c01f8289c8d06981a",
"pathSource": "./app/views/repository/RepositoryBrowserView.tsx"
},
"RepositoryCommitsLogView": {
- "hash": "1b098bca42421339e228814ebeffbbf8bd09224d",
+ "hash": "7d61f9373b0b31cedbf1475ccbdf2055a2e8f3aa",
"pathSource": "./app/views/repository/RepositoryCommitsLogView.tsx"
},
"RepositoryCompareView": {
- "hash": "52d12401cafb16f88c83cbf55e5cf21e68049c58",
+ "hash": "a18c579196ebc2ec82ae743046a8e02ec03ca8a9",
"pathSource": "./app/views/repository/RepositoryCompareView.tsx"
},
"RepositoryCreateView": {
- "hash": "4eccb4a55a8d9fad7cea1d3e6f63d129a825d5b0",
+ "hash": "ee8113a9576aa434e4f31dd8cddf559872b8087d",
"pathSource": "./app/views/repository/RepositoryCreateView.tsx"
},
"RepositoryDetailsView": {
- "hash": "60865fcf0dfa4cfcb8fdf7c98b5ecd5dfc6d4693",
+ "hash": "1b405ef6bb7ac0d8471f2937a1a0424a21de9d67",
"pathSource": "./app/views/repository/RepositoryDetailsView.tsx"
},
"RepositoryExploreView": {
- "hash": "762873efea7c9a2b0b5f8a6840d5610c885b9318",
+ "hash": "1b5cc5fb0fd692ae993fe8e892c59456346b32c5",
"pathSource": "./app/views/repository/RepositoryExploreView.tsx"
},
"RepositoryForkView": {
- "hash": "8c5cc4fb207bcc3bae32619ea3c10c1ad1edde4d",
+ "hash": "035ad04f3eba7a86f398515b43609f5506e28792",
"pathSource": "./app/views/repository/RepositoryForkView.tsx"
},
"RepositoryShowObjectView": {
- "hash": "68dc54d2fd44cdf6cb29491e27ba43389cad0cb0",
+ "hash": "ee4a0c034ffbbc9ae6b257dca2121d629d7049bf",
"pathSource": "./app/views/repository/RepositoryShowObjectView.tsx"
},
"RepositoryPullRequestCreateView": {
- "hash": "f9dbde47be4d35763f97475a36a1cfa45632ae71",
+ "hash": "d0cb60a6511891581ca12ca2c3b7b54ddd0faebe",
"pathSource": "./app/views/repositoryPullRequests/RepositoryPullRequestCreateView.tsx"
},
"RepositoryPullRequestDetailsView": {
- "hash": "86b0ea0babddf47d617432446516553abe39f5d5",
+ "hash": "ed4271e3cbb04e19dbf6f622e19149068f2f25cb",
"pathSource": "./app/views/repositoryPullRequests/RepositoryPullRequestDetailsView.tsx"
},
"RepositoryPullRequestsView": {
- "hash": "0944c853a908e8847d5c77ec097e43859f38b295",
+ "hash": "33831a5912cdf2e8dd0f44f6159ef6b438322445",
"pathSource": "./app/views/repositoryPullRequests/RepositoryPullRequestsView.tsx"
},
"UserDashboardView": {
- "hash": "573e3c0c4d61352aa049963fa41b555acdc443aa",
+ "hash": "272155a4521b51a4849c4a1bb4b7a2db717a369f",
"pathSource": "./app/views/user/UserDashboardView.tsx"
},
"UserDetailsView": {
- "hash": "272ad7be3d5f7c3cefc9136b4ac8d361a28562ca",
+ "hash": "29c0fbd75974f8568b3aabb9e5ef72fc08b1f628",
"pathSource": "./app/views/user/UserDetailsView.tsx"
}
}
@@ -4,9 +4,11 @@ import type { ReqHandler } from "@ethicdevs/react-monolith";
import { AppRoute, AppRouteParams } from "../../routes.defs";
import LoginView, { LoginViewProps } from "../../views/auth/LoginView";
-const getLoginView: ReqHandler = (request, reply) => {
- const { after_login_goto } =
- request.query as AppRouteParams[AppRoute.AUTH_LOGIN]["querystring"];
+const getLoginView: ReqHandler<AppRouteParams, AppRoute.AUTH_LOGIN> = (
+ request,
+ reply
+) => {
+ const { after_login_goto } = request.query;
if (after_login_goto != null && after_login_goto.trim().startsWith("/")) {
// ! TODO(security):
@@ -5,9 +5,11 @@ import { AppRoute, AppRouteParams } from "../../routes.defs";
import LoginView, { LoginViewProps } from "../../views/auth/LoginView";
import { makeAuthService } from "../../services/auth";
-const postLoginAction: ReqHandler = async (request, reply) => {
- const { email_address: emailAddress, password } =
- request.body as AppRouteParams[AppRoute.AUTH_LOGIN_ACTION]["body"];
+const postLoginAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.AUTH_LOGIN_ACTION
+> = async (request, reply) => {
+ const { email_address: emailAddress, password } = request.body;
const authService = makeAuthService({
cryptoService: request.cryptoService,
@@ -5,7 +5,10 @@ import { AppRoute, AppRouteParams } from "../../routes.defs";
import RegisterView, { RegisterViewProps } from "../../views/auth/RegisterView";
import { makeAuthService } from "../../services/auth";
-const postRegisterAction: ReqHandler = async (request, reply) => {
+const postRegisterAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.AUTH_REGISTER_ACTION
+> = async (request, reply) => {
const authService = makeAuthService({
cryptoService: request.cryptoService,
request,
@@ -13,11 +16,7 @@ const postRegisterAction: ReqHandler = async (request, reply) => {
const reqHandler = reply.makeRequestHandler(request, reply);
- const {
- email_address: emailAddress,
- username,
- password,
- } = request.body as AppRouteParams[AppRoute.AUTH_REGISTER_ACTION]["body"];
+ const { email_address: emailAddress, username, password } = request.body;
const initialValues = { emailAddress, username };
@@ -16,10 +16,12 @@ import OrganizationDetailsView, {
OrganizationDetailsViewProps,
} from "../../views/organization/OrganizationDetailsView";
-const getOrganizationDetailsView: ReqHandler = async (request, reply) => {
+const getOrganizationDetailsView: ReqHandler<
+ AppRouteParams,
+ AppRoute.ORGANIZATION_DETAILS
+> = async (request, reply) => {
const { curr_user_uid } = request.session.data;
- const { orgSlug } =
- request.params as AppRouteParams[AppRoute.ORGANIZATION_DETAILS]["params"];
+ const { orgSlug } = request.params;
const orgService = makeOrganizationService({ request });
const organization = (await orgService.getOrganizationBySlug(orgSlug, {
@@ -17,11 +17,11 @@ import RepositoryDetailsView, {
RepositoryDetailsViewProps,
} from "../../views/repository/RepositoryDetailsView";
-const getRepositoryBrowserView: ReqHandler = async (request, reply) => {
- const params =
- request.params as AppRouteParams[AppRoute.REPOSITORY_BROWSER]["params"];
- const { orgSlug, repoSlug, currentRef: currRef } = params;
- const path = params["*"] || "";
+const getRepositoryBrowserView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_BROWSER
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, currentRef: currRef, "*": path } = request.params;
const currentRef = currRef || Const.DEFAULT_HEAD_REF;
const orgService = makeOrganizationService({ request });
@@ -12,9 +12,11 @@ import RepositoryCommitsLogView, {
RepositoryCommitsLogViewProps,
} from "../../views/repository/RepositoryCommitsLogView";
-const getRepositoryCommitsLogView: ReqHandler = async (request, reply) => {
- const { orgSlug, repoSlug, currentRef } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_COMMITS_LOG]["params"];
+const getRepositoryCommitsLogView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_COMMITS_LOG
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, currentRef } = request.params;
const orgService = makeOrganizationService({ request });
const repoService = makeRepositoryService({ request });
@@ -12,9 +12,11 @@ import RepositoryCompareView, {
RepositoryCompareViewProps,
} from "../../views/repository/RepositoryCompareView";
-const getRepositoryCompareView: ReqHandler = async (request, reply) => {
- const { orgSlug, repoSlug, refA, refB } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_COMPARE]["params"];
+const getRepositoryCompareView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_COMPARE
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, refA, refB } = request.params;
const orgService = makeOrganizationService({ request });
const repoService = makeRepositoryService({ request });
@@ -17,9 +17,11 @@ import {
ResourceVisibility,
} from "@prisma/client";
-const getRepositoryDetailsView: ReqHandler = async (request, reply) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_DETAILS]["params"];
+const getRepositoryDetailsView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_DETAILS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const repoService = makeRepositoryService({ request });
@@ -11,9 +11,10 @@ import RepositoryForkView, {
RepositoryForkViewProps,
} from "../../views/repository/RepositoryForkView";
-type RouteParams = AppRouteParams[AppRoute.REPOSITORY_FORK];
-
-const getRepositoryForkView: ReqHandler = async (request, reply) => {
+const getRepositoryForkView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_FORK
+> = async (request, reply) => {
if (
request.session.data.authenticated === false ||
request.session.data.curr_user_uid == null
@@ -22,8 +23,8 @@ const getRepositoryForkView: ReqHandler = async (request, reply) => {
return reply;
}
- const { orgSlug, repoSlug } = request.params as RouteParams["params"];
- // const {} = request.body as RouteParams["body"];
+ const { orgSlug, repoSlug } = request.params;
+ // const {} = request.body;
const reqHandler = reply.makeRequestHandler(request, reply);
const organizationService = makeOrganizationService({ request });
@@ -12,9 +12,11 @@ import RepositoryShowObjectView, {
RepositoryShowObjectViewProps,
} from "../../views/repository/RepositoryShowObjectView";
-const getRepositoryShowObjectView: ReqHandler = async (request, reply) => {
- const { orgSlug, repoSlug, objectId } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_SHOW_OBJECT]["params"];
+const getRepositoryShowObjectView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_SHOW_OBJECT
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, objectId } = request.params;
const orgService = makeOrganizationService({ request });
const repoService = makeRepositoryService({ request });
@@ -13,7 +13,10 @@ import RepositoryCreateView, {
RepositoryCreateViewProps,
} from "../../views/repository/RepositoryCreateView";
-const postRepositoryCreateAction: ReqHandler = async (request, reply) => {
+const postRepositoryCreateAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_CREATE_ACTION
+> = async (request, reply) => {
if (
request.session.data.authenticated === false ||
request.session.data.curr_user_uid == null
@@ -49,7 +52,7 @@ const postRepositoryCreateAction: ReqHandler = async (request, reply) => {
repo_short_description: shortDescription,
repo_visibility: visibility,
repo_website_url: websiteUrl,
- } = body as AppRouteParams[AppRoute.REPOSITORY_CREATE_ACTION]["body"];
+ } = body;
const newRepo = await repoService.createRepository({
parentOrgSlug, // TODO: Validate it exists first.
@@ -14,7 +14,10 @@ import RepositoryForkView, {
RepositoryForkViewProps,
} from "../../views/repository/RepositoryForkView";
-const postRepositoryForkAction: ReqHandler = async (request, reply) => {
+const postRepositoryForkAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_FORK_ACTION
+> = async (request, reply) => {
if (
request.session.data.authenticated === false ||
request.session.data.curr_user_uid == null
@@ -29,16 +32,14 @@ const postRepositoryForkAction: ReqHandler = async (request, reply) => {
const usersService = makeUsersService({ request });
const { body, params, validationError } = request;
-
- const { orgSlug: sourceOrgSlug, repoSlug: sourceRepoSlug } =
- params as AppRouteParams[AppRoute.REPOSITORY_FORK_ACTION]["params"];
+ const { orgSlug: sourceOrgSlug, repoSlug: sourceRepoSlug } = params;
const {
target_org_slug: targetOrgSlug,
target_repo_slug: targetRepoSlug,
target_repo_display_name: targetRepoDisplayName,
target_repo_visibility: targetRepoVisibility,
- } = body as AppRouteParams[AppRoute.REPOSITORY_FORK_ACTION]["body"];
+ } = body;
const sourceParentOrg = await organizationService.getOrganizationBySlug(
sourceOrgSlug
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestCloseAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestCloseAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestCommentCreateAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestCommentCreateAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestCommentDeleteAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestCommentDeleteAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestCommentUpdateAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestCommentUpdateAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -20,15 +20,12 @@ import RepositoryPullRequestCreateView, {
RepositoryPullRequestCreateViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestCreateView";
-const getRepositoryPullRequestCreateView: ReqHandler = async (
- request,
- reply
-) => {
- const { from_branch } =
- request.query as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUEST_CREATE]["querystring"];
-
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUEST_CREATE]["params"];
+const getRepositoryPullRequestCreateView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUEST_CREATE
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
+ const { from_branch } = request.query;
if (
request.session.data.authenticated === false ||
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestDeleteAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestDeleteAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -14,12 +14,11 @@ import RepositoryPullRequestDetailsView, {
RepositoryPullRequestDetailsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestDetailsView";
-const getRepositoryPullRequestDetailsView: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug, pullUid } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUEST_DETAILS]["params"];
+const getRepositoryPullRequestDetailsView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUEST_DETAILS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, pullUid } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -13,12 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestUpdateAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestUpdateAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -13,9 +13,11 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-const getRepositoryPullRequestsView: ReqHandler = async (request, reply) => {
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[AppRoute.REPOSITORY_PULL_REQUESTS]["params"];
+const getRepositoryPullRequestsView: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUESTS
+> = async (request, reply) => {
+ const { orgSlug, repoSlug } = request.params;
const orgService = makeOrganizationService({ request });
const prService = makePullRequestService({ request });
@@ -19,12 +19,10 @@ import RepositoryPullRequestCreateView, {
RepositoryPullRequestCreateViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestCreateView";
-type CurrentRoute = AppRoute.REPOSITORY_PULL_REQUEST_CREATE_ACTION;
-
-const postRepositoryPullRequestCreateAction: ReqHandler = async (
- request,
- reply
-) => {
+const postRepositoryPullRequestCreateAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUEST_CREATE_ACTION
+> = async (request, reply) => {
if (
request.session.data.authenticated === false ||
request.session.data.curr_user_uid == null
@@ -33,8 +31,7 @@ const postRepositoryPullRequestCreateAction: ReqHandler = async (
return reply;
}
- const { orgSlug, repoSlug } =
- request.params as AppRouteParams[CurrentRoute]["params"];
+ const { orgSlug, repoSlug } = request.params;
const {
description,
summary,
@@ -46,7 +43,7 @@ const postRepositoryPullRequestCreateAction: ReqHandler = async (
target_parent_org_slug: targetParentOrgSlug,
target_repository_dest_branch: targetRepoDestBranch,
target_repository_slug: targetRepoSlug,
- } = request.body as AppRouteParams[CurrentRoute]["body"];
+ } = request.body;
const orgService = makeOrganizationService({ request });
const repoService = makeRepositoryService({ request });
@@ -14,16 +14,12 @@ import RepositoryPullRequestsView, {
RepositoryPullRequestsViewProps,
} from "../../views/repositoryPullRequests/RepositoryPullRequestsView";
-type CurrentRoute = AppRoute.REPOSITORY_PULL_REQUEST_MERGE_ACTION;
-
-const postRepositoryPullRequestMergeAction: ReqHandler = async (
- request,
- reply
-) => {
- const { orgSlug, repoSlug, pullUid } =
- request.params as AppRouteParams[CurrentRoute]["params"];
- const { merge_message, merge_summary } =
- request.body as AppRouteParams[CurrentRoute]["body"];
+const postRepositoryPullRequestMergeAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.REPOSITORY_PULL_REQUEST_MERGE_ACTION
+> = async (request, reply) => {
+ const { orgSlug, repoSlug, pullUid } = request.params;
+ const { merge_message, merge_summary } = request.body;
console.log("params:", {
merge_message,
@@ -83,15 +83,12 @@ const getNodesRecursive = (
}));
};
-const highlightCodeAction: ReqHandler = async (request, reply) => {
- const { outputFormat = "html" } =
- request.params as AppRouteParams[AppRoute.SYNTAX_HIGHLIGHT_HIGHLIGHT_CODE_ACTION]["params"];
-
- const {
- code,
- language,
- theme_scheme: themeScheme,
- } = request.body as AppRouteParams[AppRoute.SYNTAX_HIGHLIGHT_HIGHLIGHT_CODE_ACTION]["body"];
+const highlightCodeAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.SYNTAX_HIGHLIGHT_HIGHLIGHT_CODE_ACTION
+> = async (request, reply) => {
+ const { outputFormat = "html" } = request.params;
+ const { code, language, theme_scheme: themeScheme } = request.body;
if (request.validationError != null) {
if (outputFormat === "html") {
@@ -3,10 +3,12 @@ import { ReqHandler } from "@ethicdevs/react-monolith";
// app
import { AppRoute, AppRouteParams } from "../../routes.defs";
-const setThemeSchemeAction: ReqHandler = async (request, reply) => {
+const setThemeSchemeAction: ReqHandler<
+ AppRouteParams,
+ AppRoute.THEME_SET_SCHEME_ACTION
+> = async (request, reply) => {
const { referer } = request.headers;
- const { themeScheme: desiredScheme } =
- request.params as AppRouteParams[AppRoute.THEME_SET_SCHEME_ACTION]["params"];
+ const { themeScheme: desiredScheme } = request.params;
reply.setCookie("theme_scheme", desiredScheme === "light" ? "light" : "dark");
return reply.redirect(302, referer || "/");
@@ -9,11 +9,12 @@ import UserDetailsView, {
UserDetailsViewProps,
} from "../../views/user/UserDetailsView";
-const getUserDetailsView: ReqHandler = async (request, reply) => {
- const { username } =
- request.params as AppRouteParams[AppRoute.USER_DETAILS]["params"];
-
+const getUserDetailsView: ReqHandler<
+ AppRouteParams,
+ AppRoute.USER_DETAILS
+> = async (request, reply) => {
const { curr_user_uid } = request.session.data;
+ const { username } = request.params;
const usersService = makeUsersService({ request });
const user = await usersService.getUserByUsername(username);
@@ -16,6 +16,7 @@ import fastifyCustomSession, {
import fastifyFormBody from "@fastify/formbody";
import fastifyGitServer from "@ethicdevs/fastify-git-server";
import fastifyServeStatic from "fastify-static";
+import { prismjsPlugin as esBuildPrismJSPlugin } from "esbuild-plugin-prismjs";
import loadPrismJsLanguages from "prismjs/components/";
// generated via script[generate:prisma]
import { GlobalRole, PrismaClient } from "@prisma/client";
@@ -92,6 +93,22 @@ async function main(): Promise<AppServer> {
"markdown-to-jsx": "MarkdownToJSX",
prismjs: "Prism",
},
+ esbuild: {
+ plugins: [
+ esBuildPrismJSPlugin({
+ inline: true,
+ languages: ["typescript", "javascript", "json", "css", "markup"],
+ plugins: [
+ "line-highlight",
+ "line-numbers",
+ "show-language",
+ "copy-to-clipboard",
+ ],
+ theme: "okaidia",
+ css: true,
+ }),
+ ],
+ },
baseHeadTags: [
{
kind: "link",
@@ -339,8 +356,8 @@ async function main(): Promise<AppServer> {
// Catch errors that are fatal
["unhandledRejection", "uncaughtException"].forEach((exception) => {
- process.on(exception, async (reason: Error) => {
- await stopAppServerAndExit(server, reason);
+ process.on(exception, async (_reason: Error) => {
+ // await stopAppServerAndExit(server, reason);
});
});
@@ -43,7 +43,7 @@ const RepositoryCommitsLogView: ReactView<RepositoryCommitsLogViewProps> = ({
forkedFromRepo={repo.forkedFromRepo}
forksCount={repo.forks.length}
parentOrg={parentOrg}
- path={"Commits"}
+ path={`Commits (${history.length})`}
repo={repo}
/>
</IslandWrapper>
@@ -30,8 +30,8 @@
"dependencies": {
"@ethicdevs/fastify-custom-session": "^0.6.0",
"@ethicdevs/fastify-git-server": "^1.6.1",
- "@ethicdevs/fastify-stream-react-views": "^1.10.2",
- "@ethicdevs/react-monolith": "^1.7.4",
+ "@ethicdevs/fastify-stream-react-views": "^1.11.3",
+ "@ethicdevs/react-monolith": "^1.9.8",
"@fastify/cookie": "6.0.0",
"@fastify/formbody": "6.0.0",
"@prisma/client": "^4.9.0",
@@ -39,6 +39,7 @@
"cuid": "^2.1.8",
"diffparser": "^2.0.1",
"dotenv-flow": "^3.2.0",
+ "esbuild-plugin-prismjs": "^1.0.8",
"fastify": "^3.27.4",
"fastify-static": "^4.6.1",
"file-extension": "^4.0.5",
@@ -0,0 +1,1688 @@
+var _self =
+ "undefined" != typeof window
+ ? window
+ : "undefined" != typeof WorkerGlobalScope &&
+ self instanceof WorkerGlobalScope
+ ? self
+ : {},
+ Prism = (function (e) {
+ var t = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,
+ n = 0,
+ r = {},
+ a = {
+ manual: e.Prism && e.Prism.manual,
+ disableWorkerMessageHandler:
+ e.Prism && e.Prism.disableWorkerMessageHandler,
+ util: {
+ encode: function e(t) {
+ return t instanceof i
+ ? new i(t.type, e(t.content), t.alias)
+ : Array.isArray(t)
+ ? t.map(e)
+ : t
+ .replace(/&/g, "&")
+ .replace(/</g, "<")
+ .replace(/\u00a0/g, " ");
+ },
+ type: function (e) {
+ return Object.prototype.toString.call(e).slice(8, -1);
+ },
+ objId: function (e) {
+ return (
+ e.__id || Object.defineProperty(e, "__id", { value: ++n }), e.__id
+ );
+ },
+ clone: function e(t, n) {
+ var r, i;
+ switch (((n = n || {}), a.util.type(t))) {
+ case "Object":
+ if (((i = a.util.objId(t)), n[i])) return n[i];
+ for (var s in ((r = {}), (n[i] = r), t))
+ t.hasOwnProperty(s) && (r[s] = e(t[s], n));
+ return r;
+ case "Array":
+ return (
+ (i = a.util.objId(t)),
+ n[i]
+ ? n[i]
+ : ((r = []),
+ (n[i] = r),
+ t.forEach(function (t, a) {
+ r[a] = e(t, n);
+ }),
+ r)
+ );
+ default:
+ return t;
+ }
+ },
+ getLanguage: function (e) {
+ for (; e; ) {
+ var n = t.exec(e.className);
+ if (n) return n[1].toLowerCase();
+ e = e.parentElement;
+ }
+ return "none";
+ },
+ setLanguage: function (e, n) {
+ (e.className = e.className.replace(RegExp(t, "gi"), "")),
+ e.classList.add("language-" + n);
+ },
+ currentScript: function () {
+ if ("undefined" == typeof document) return null;
+ if ("currentScript" in document) return document.currentScript;
+ try {
+ throw new Error();
+ } catch (r) {
+ var e = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(r.stack) ||
+ [])[1];
+ if (e) {
+ var t = document.getElementsByTagName("script");
+ for (var n in t) if (t[n].src == e) return t[n];
+ }
+ return null;
+ }
+ },
+ isActive: function (e, t, n) {
+ for (var r = "no-" + t; e; ) {
+ var a = e.classList;
+ if (a.contains(t)) return !0;
+ if (a.contains(r)) return !1;
+ e = e.parentElement;
+ }
+ return !!n;
+ },
+ },
+ languages: {
+ plain: r,
+ plaintext: r,
+ text: r,
+ txt: r,
+ extend: function (e, t) {
+ var n = a.util.clone(a.languages[e]);
+ for (var r in t) n[r] = t[r];
+ return n;
+ },
+ insertBefore: function (e, t, n, r) {
+ var i = (r = r || a.languages)[e],
+ s = {};
+ for (var l in i)
+ if (i.hasOwnProperty(l)) {
+ if (l == t)
+ for (var o in n) n.hasOwnProperty(o) && (s[o] = n[o]);
+ n.hasOwnProperty(l) || (s[l] = i[l]);
+ }
+ var u = r[e];
+ return (
+ (r[e] = s),
+ a.languages.DFS(a.languages, function (t, n) {
+ n === u && t != e && (this[t] = s);
+ }),
+ s
+ );
+ },
+ DFS: function e(t, n, r, i) {
+ i = i || {};
+ var s = a.util.objId;
+ for (var l in t)
+ if (t.hasOwnProperty(l)) {
+ n.call(t, l, t[l], r || l);
+ var o = t[l],
+ u = a.util.type(o);
+ "Object" !== u || i[s(o)]
+ ? "Array" !== u || i[s(o)] || ((i[s(o)] = !0), e(o, n, l, i))
+ : ((i[s(o)] = !0), e(o, n, null, i));
+ }
+ },
+ },
+ plugins: {},
+ highlightAll: function (e, t) {
+ a.highlightAllUnder(document, e, t);
+ },
+ highlightAllUnder: function (e, t, n) {
+ var r = {
+ callback: n,
+ container: e,
+ selector:
+ 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code',
+ };
+ a.hooks.run("before-highlightall", r),
+ (r.elements = Array.prototype.slice.apply(
+ r.container.querySelectorAll(r.selector)
+ )),
+ a.hooks.run("before-all-elements-highlight", r);
+ for (var i, s = 0; (i = r.elements[s++]); )
+ a.highlightElement(i, !0 === t, r.callback);
+ },
+ highlightElement: function (t, n, r) {
+ var i = a.util.getLanguage(t),
+ s = a.languages[i];
+ a.util.setLanguage(t, i);
+ var l = t.parentElement;
+ l && "pre" === l.nodeName.toLowerCase() && a.util.setLanguage(l, i);
+ var o = { element: t, language: i, grammar: s, code: t.textContent };
+ function u(e) {
+ (o.highlightedCode = e),
+ a.hooks.run("before-insert", o),
+ (o.element.innerHTML = o.highlightedCode),
+ a.hooks.run("after-highlight", o),
+ a.hooks.run("complete", o),
+ r && r.call(o.element);
+ }
+ if (
+ (a.hooks.run("before-sanity-check", o),
+ (l = o.element.parentElement) &&
+ "pre" === l.nodeName.toLowerCase() &&
+ !l.hasAttribute("tabindex") &&
+ l.setAttribute("tabindex", "0"),
+ !o.code)
+ )
+ return a.hooks.run("complete", o), void (r && r.call(o.element));
+ if ((a.hooks.run("before-highlight", o), o.grammar))
+ if (n && e.Worker) {
+ var c = new Worker(a.filename);
+ (c.onmessage = function (e) {
+ u(e.data);
+ }),
+ c.postMessage(
+ JSON.stringify({
+ language: o.language,
+ code: o.code,
+ immediateClose: !0,
+ })
+ );
+ } else u(a.highlight(o.code, o.grammar, o.language));
+ else u(a.util.encode(o.code));
+ },
+ highlight: function (e, t, n) {
+ var r = { code: e, grammar: t, language: n };
+ if ((a.hooks.run("before-tokenize", r), !r.grammar))
+ throw new Error(
+ 'The language "' + r.language + '" has no grammar.'
+ );
+ return (
+ (r.tokens = a.tokenize(r.code, r.grammar)),
+ a.hooks.run("after-tokenize", r),
+ i.stringify(a.util.encode(r.tokens), r.language)
+ );
+ },
+ tokenize: function (e, t) {
+ var n = t.rest;
+ if (n) {
+ for (var r in n) t[r] = n[r];
+ delete t.rest;
+ }
+ var u = new (function () {
+ var e = { value: null, prev: null, next: null },
+ t = { value: null, prev: e, next: null };
+ (e.next = t), (this.head = e), (this.tail = t), (this.length = 0);
+ })();
+ return (
+ l(u, u.head, e),
+ (function e(t, n, r, u, c, p) {
+ for (var g in r)
+ if (r.hasOwnProperty(g) && r[g]) {
+ var d = r[g];
+ d = Array.isArray(d) ? d : [d];
+ for (var m = 0; m < d.length; ++m) {
+ if (p && p.cause == g + "," + m) return;
+ var f = d[m],
+ h = f.inside,
+ v = !!f.lookbehind,
+ b = !!f.greedy,
+ k = f.alias;
+ if (b && !f.pattern.global) {
+ var y = f.pattern.toString().match(/[imsuy]*$/)[0];
+ f.pattern = RegExp(f.pattern.source, y + "g");
+ }
+ for (
+ var x = f.pattern || f, w = u.next, P = c;
+ w !== n.tail && !(p && P >= p.reach);
+ P += w.value.length, w = w.next
+ ) {
+ var F = w.value;
+ if (n.length > t.length) return;
+ if (!(F instanceof i)) {
+ var A,
+ j = 1;
+ if (b) {
+ if (!(A = s(x, P, t, v)) || A.index >= t.length)
+ break;
+ var S = A.index,
+ $ = A.index + A[0].length,
+ E = P;
+ for (E += w.value.length; S >= E; )
+ (w = w.next), (E += w.value.length);
+ if (
+ ((E -= w.value.length),
+ (P = E),
+ w.value instanceof i)
+ )
+ continue;
+ for (
+ var C = w;
+ C !== n.tail &&
+ (E < $ || "string" == typeof C.value);
+ C = C.next
+ )
+ j++, (E += C.value.length);
+ j--, (F = t.slice(P, E)), (A.index -= P);
+ } else if (!(A = s(x, 0, F, v))) continue;
+ var S = A.index,
+ L = A[0],
+ z = F.slice(0, S),
+ _ = F.slice(S + L.length),
+ T = P + F.length;
+ p && T > p.reach && (p.reach = T);
+ var q = w.prev;
+ z && ((q = l(n, q, z)), (P += z.length)), o(n, q, j);
+ var N = new i(g, h ? a.tokenize(L, h) : L, k, L);
+ if (((w = l(n, q, N)), _ && l(n, w, _), j > 1)) {
+ var O = { cause: g + "," + m, reach: T };
+ e(t, n, r, w.prev, P, O),
+ p && O.reach > p.reach && (p.reach = O.reach);
+ }
+ }
+ }
+ }
+ }
+ })(e, u, t, u.head, 0),
+ (function (e) {
+ var t = [],
+ n = e.head.next;
+ for (; n !== e.tail; ) t.push(n.value), (n = n.next);
+ return t;
+ })(u)
+ );
+ },
+ hooks: {
+ all: {},
+ add: function (e, t) {
+ var n = a.hooks.all;
+ (n[e] = n[e] || []), n[e].push(t);
+ },
+ run: function (e, t) {
+ var n = a.hooks.all[e];
+ if (n && n.length) for (var r, i = 0; (r = n[i++]); ) r(t);
+ },
+ },
+ Token: i,
+ };
+ function i(e, t, n, r) {
+ (this.type = e),
+ (this.content = t),
+ (this.alias = n),
+ (this.length = 0 | (r || "").length);
+ }
+ function s(e, t, n, r) {
+ e.lastIndex = t;
+ var a = e.exec(n);
+ if (a && r && a[1]) {
+ var i = a[1].length;
+ (a.index += i), (a[0] = a[0].slice(i));
+ }
+ return a;
+ }
+ function l(e, t, n) {
+ var r = t.next,
+ a = { value: n, prev: t, next: r };
+ return (t.next = a), (r.prev = a), e.length++, a;
+ }
+ function o(e, t, n) {
+ for (var r = t.next, a = 0; a < n && r !== e.tail; a++) r = r.next;
+ (t.next = r), (r.prev = t), (e.length -= a);
+ }
+ if (
+ ((e.Prism = a),
+ (i.stringify = function e(t, n) {
+ if ("string" == typeof t) return t;
+ if (Array.isArray(t)) {
+ var r = "";
+ return (
+ t.forEach(function (t) {
+ r += e(t, n);
+ }),
+ r
+ );
+ }
+ var i = {
+ type: t.type,
+ content: e(t.content, n),
+ tag: "span",
+ classes: ["token", t.type],
+ attributes: {},
+ language: n,
+ },
+ s = t.alias;
+ s &&
+ (Array.isArray(s)
+ ? Array.prototype.push.apply(i.classes, s)
+ : i.classes.push(s)),
+ a.hooks.run("wrap", i);
+ var l = "";
+ for (var o in i.attributes)
+ l +=
+ " " +
+ o +
+ '="' +
+ (i.attributes[o] || "").replace(/"/g, """) +
+ '"';
+ return (
+ "<" +
+ i.tag +
+ ' class="' +
+ i.classes.join(" ") +
+ '"' +
+ l +
+ ">" +
+ i.content +
+ "</" +
+ i.tag +
+ ">"
+ );
+ }),
+ !e.document)
+ )
+ return e.addEventListener
+ ? (a.disableWorkerMessageHandler ||
+ e.addEventListener(
+ "message",
+ function (t) {
+ var n = JSON.parse(t.data),
+ r = n.language,
+ i = n.code,
+ s = n.immediateClose;
+ e.postMessage(a.highlight(i, a.languages[r], r)),
+ s && e.close();
+ },
+ !1
+ ),
+ a)
+ : a;
+ var u = a.util.currentScript();
+ function c() {
+ a.manual || a.highlightAll();
+ }
+ if (
+ (u &&
+ ((a.filename = u.src),
+ u.hasAttribute("data-manual") && (a.manual = !0)),
+ !a.manual)
+ ) {
+ var p = document.readyState;
+ "loading" === p || ("interactive" === p && u && u.defer)
+ ? document.addEventListener("DOMContentLoaded", c)
+ : window.requestAnimationFrame
+ ? window.requestAnimationFrame(c)
+ : window.setTimeout(c, 16);
+ }
+ return a;
+ })(_self);
+"undefined" != typeof module && module.exports && (module.exports = Prism),
+ "undefined" != typeof global && (global.Prism = Prism),
+ (Prism.languages.markup = {
+ comment: { pattern: /<!--(?:(?!<!--)[\s\S])*?-->/, greedy: !0 },
+ prolog: { pattern: /<\?[\s\S]+?\?>/, greedy: !0 },
+ doctype: {
+ pattern:
+ /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
+ greedy: !0,
+ inside: {
+ "internal-subset": {
+ pattern: /(^[^\[]*\[)[\s\S]+(?=\]>$)/,
+ lookbehind: !0,
+ greedy: !0,
+ inside: null,
+ },
+ string: { pattern: /"[^"]*"|'[^']*'/, greedy: !0 },
+ punctuation: /^<!|>$|[[\]]/,
+ "doctype-tag": /^DOCTYPE/i,
+ name: /[^\s<>'"]+/,
+ },
+ },
+ cdata: { pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i, greedy: !0 },
+ tag: {
+ pattern:
+ /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
+ greedy: !0,
+ inside: {
+ tag: {
+ pattern: /^<\/?[^\s>\/]+/,
+ inside: { punctuation: /^<\/?/, namespace: /^[^\s>\/:]+:/ },
+ },
+ "special-attr": [],
+ "attr-value": {
+ pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
+ inside: {
+ punctuation: [
+ { pattern: /^=/, alias: "attr-equals" },
+ { pattern: /^(\s*)["']|["']$/, lookbehind: !0 },
+ ],
+ },
+ },
+ punctuation: /\/?>/,
+ "attr-name": {
+ pattern: /[^\s>\/]+/,
+ inside: { namespace: /^[^\s>\/:]+:/ },
+ },
+ },
+ },
+ entity: [
+ { pattern: /&[\da-z]{1,8};/i, alias: "named-entity" },
+ /&#x?[\da-f]{1,8};/i,
+ ],
+ }),
+ (Prism.languages.markup.tag.inside["attr-value"].inside.entity =
+ Prism.languages.markup.entity),
+ (Prism.languages.markup.doctype.inside["internal-subset"].inside =
+ Prism.languages.markup),
+ Prism.hooks.add("wrap", function (e) {
+ "entity" === e.type &&
+ (e.attributes.title = e.content.replace(/&/, "&"));
+ }),
+ Object.defineProperty(Prism.languages.markup.tag, "addInlined", {
+ value: function (e, t) {
+ var n = {};
+ (n["language-" + t] = {
+ pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
+ lookbehind: !0,
+ inside: Prism.languages[t],
+ }),
+ (n.cdata = /^<!\[CDATA\[|\]\]>$/i);
+ var r = {
+ "included-cdata": { pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i, inside: n },
+ };
+ r["language-" + t] = { pattern: /[\s\S]+/, inside: Prism.languages[t] };
+ var a = {};
+ (a[e] = {
+ pattern: RegExp(
+ /(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(
+ /__/g,
+ function () {
+ return e;
+ }
+ ),
+ "i"
+ ),
+ lookbehind: !0,
+ greedy: !0,
+ inside: r,
+ }),
+ Prism.languages.insertBefore("markup", "cdata", a);
+ },
+ }),
+ Object.defineProperty(Prism.languages.markup.tag, "addAttribute", {
+ value: function (e, t) {
+ Prism.languages.markup.tag.inside["special-attr"].push({
+ pattern: RegExp(
+ /(^|["'\s])/.source +
+ "(?:" +
+ e +
+ ")" +
+ /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,
+ "i"
+ ),
+ lookbehind: !0,
+ inside: {
+ "attr-name": /^[^\s=]+/,
+ "attr-value": {
+ pattern: /=[\s\S]+/,
+ inside: {
+ value: {
+ pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
+ lookbehind: !0,
+ alias: [t, "language-" + t],
+ inside: Prism.languages[t],
+ },
+ punctuation: [{ pattern: /^=/, alias: "attr-equals" }, /"|'/],
+ },
+ },
+ },
+ });
+ },
+ }),
+ (Prism.languages.html = Prism.languages.markup),
+ (Prism.languages.mathml = Prism.languages.markup),
+ (Prism.languages.svg = Prism.languages.markup),
+ (Prism.languages.xml = Prism.languages.extend("markup", {})),
+ (Prism.languages.ssml = Prism.languages.xml),
+ (Prism.languages.atom = Prism.languages.xml),
+ (Prism.languages.rss = Prism.languages.xml),
+ (function (e) {
+ var t =
+ /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
+ (e.languages.css = {
+ comment: /\/\*[\s\S]*?\*\//,
+ atrule: {
+ pattern: RegExp(
+ "@[\\w-](?:" +
+ /[^;{\s"']|\s+(?!\s)/.source +
+ "|" +
+ t.source +
+ ")*?" +
+ /(?:;|(?=\s*\{))/.source
+ ),
+ inside: {
+ rule: /^@[\w-]+/,
+ "selector-function-argument": {
+ pattern:
+ /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
+ lookbehind: !0,
+ alias: "selector",
+ },
+ keyword: {
+ pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/,
+ lookbehind: !0,
+ },
+ },
+ },
+ url: {
+ pattern: RegExp(
+ "\\burl\\((?:" +
+ t.source +
+ "|" +
+ /(?:[^\\\r\n()"']|\\[\s\S])*/.source +
+ ")\\)",
+ "i"
+ ),
+ greedy: !0,
+ inside: {
+ function: /^url/i,
+ punctuation: /^\(|\)$/,
+ string: { pattern: RegExp("^" + t.source + "$"), alias: "url" },
+ },
+ },
+ selector: {
+ pattern: RegExp(
+ "(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|" +
+ t.source +
+ ")*(?=\\s*\\{)"
+ ),
+ lookbehind: !0,
+ },
+ string: { pattern: t, greedy: !0 },
+ property: {
+ pattern:
+ /(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,
+ lookbehind: !0,
+ },
+ important: /!important\b/i,
+ function: { pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i, lookbehind: !0 },
+ punctuation: /[(){};:,]/,
+ }),
+ (e.languages.css.atrule.inside.rest = e.languages.css);
+ var n = e.languages.markup;
+ n && (n.tag.addInlined("style", "css"), n.tag.addAttribute("style", "css"));
+ })(Prism),
+ (Prism.languages.clike = {
+ comment: [
+ {
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
+ lookbehind: !0,
+ greedy: !0,
+ },
+ { pattern: /(^|[^\\:])\/\/.*/, lookbehind: !0, greedy: !0 },
+ ],
+ string: {
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
+ greedy: !0,
+ },
+ "class-name": {
+ pattern:
+ /(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,
+ lookbehind: !0,
+ inside: { punctuation: /[.\\]/ },
+ },
+ keyword:
+ /\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,
+ boolean: /\b(?:false|true)\b/,
+ function: /\b\w+(?=\()/,
+ number: /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
+ operator: /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
+ punctuation: /[{}[\];(),.:]/,
+ }),
+ (Prism.languages.javascript = Prism.languages.extend("clike", {
+ "class-name": [
+ Prism.languages.clike["class-name"],
+ {
+ pattern:
+ /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,
+ lookbehind: !0,
+ },
+ ],
+ keyword: [
+ { pattern: /((?:^|\})\s*)catch\b/, lookbehind: !0 },
+ {
+ pattern:
+ /(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
+ lookbehind: !0,
+ },
+ ],
+ function:
+ /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
+ number: {
+ pattern: RegExp(
+ /(^|[^\w$])/.source +
+ "(?:" +
+ /NaN|Infinity/.source +
+ "|" +
+ /0[bB][01]+(?:_[01]+)*n?/.source +
+ "|" +
+ /0[oO][0-7]+(?:_[0-7]+)*n?/.source +
+ "|" +
+ /0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source +
+ "|" +
+ /\d+(?:_\d+)*n/.source +
+ "|" +
+ /(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/
+ .source +
+ ")" +
+ /(?![\w$])/.source
+ ),
+ lookbehind: !0,
+ },
+ operator:
+ /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/,
+ })),
+ (Prism.languages.javascript["class-name"][0].pattern =
+ /(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/),
+ Prism.languages.insertBefore("javascript", "keyword", {
+ regex: {
+ pattern: RegExp(
+ /((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source +
+ /\//.source +
+ "(?:" +
+ /(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/
+ .source +
+ "|" +
+ /(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/
+ .source +
+ ")" +
+ /(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/
+ .source
+ ),
+ lookbehind: !0,
+ greedy: !0,
+ inside: {
+ "regex-source": {
+ pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
+ lookbehind: !0,
+ alias: "language-regex",
+ inside: Prism.languages.regex,
+ },
+ "regex-delimiter": /^\/|\/$/,
+ "regex-flags": /^[a-z]+$/,
+ },
+ },
+ "function-variable": {
+ pattern:
+ /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,
+ alias: "function",
+ },
+ parameter: [
+ {
+ pattern:
+ /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
+ lookbehind: !0,
+ inside: Prism.languages.javascript,
+ },
+ {
+ pattern:
+ /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,
+ lookbehind: !0,
+ inside: Prism.languages.javascript,
+ },
+ {
+ pattern:
+ /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,
+ lookbehind: !0,
+ inside: Prism.languages.javascript,
+ },
+ {
+ pattern:
+ /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
+ lookbehind: !0,
+ inside: Prism.languages.javascript,
+ },
+ ],
+ constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/,
+ }),
+ Prism.languages.insertBefore("javascript", "string", {
+ hashbang: { pattern: /^#!.*/, greedy: !0, alias: "comment" },
+ "template-string": {
+ pattern:
+ /`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,
+ greedy: !0,
+ inside: {
+ "template-punctuation": { pattern: /^`|`$/, alias: "string" },
+ interpolation: {
+ pattern:
+ /((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
+ lookbehind: !0,
+ inside: {
+ "interpolation-punctuation": {
+ pattern: /^\$\{|\}$/,
+ alias: "punctuation",
+ },
+ rest: Prism.languages.javascript,
+ },
+ },
+ string: /[\s\S]+/,
+ },
+ },
+ "string-property": {
+ pattern:
+ /((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,
+ lookbehind: !0,
+ greedy: !0,
+ alias: "property",
+ },
+ }),
+ Prism.languages.insertBefore("javascript", "operator", {
+ "literal-property": {
+ pattern:
+ /((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,
+ lookbehind: !0,
+ alias: "property",
+ },
+ }),
+ Prism.languages.markup &&
+ (Prism.languages.markup.tag.addInlined("script", "javascript"),
+ Prism.languages.markup.tag.addAttribute(
+ /on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/
+ .source,
+ "javascript"
+ )),
+ (Prism.languages.js = Prism.languages.javascript),
+ (function (e) {
+ e.languages.diff = {
+ coord: [/^(?:\*{3}|-{3}|\+{3}).*$/m, /^@@.*@@$/m, /^\d.*$/m],
+ };
+ var t = {
+ "deleted-sign": "-",
+ "deleted-arrow": "<",
+ "inserted-sign": "+",
+ "inserted-arrow": ">",
+ unchanged: " ",
+ diff: "!",
+ };
+ Object.keys(t).forEach(function (n) {
+ var r = t[n],
+ a = [];
+ /^\w+$/.test(n) || a.push(/\w+/.exec(n)[0]),
+ "diff" === n && a.push("bold"),
+ (e.languages.diff[n] = {
+ pattern: RegExp("^(?:[" + r + "].*(?:\r\n?|\n|(?![\\s\\S])))+", "m"),
+ alias: a,
+ inside: {
+ line: { pattern: /(.)(?=[\s\S]).*(?:\r\n?|\n)?/, lookbehind: !0 },
+ prefix: { pattern: /[\s\S]/, alias: /\w+/.exec(n)[0] },
+ },
+ });
+ }),
+ Object.defineProperty(e.languages.diff, "PREFIXES", { value: t });
+ })(Prism),
+ (function () {
+ if (
+ void 0 !== Prism &&
+ "undefined" != typeof document &&
+ document.querySelector
+ ) {
+ var e,
+ t = "linkable-line-numbers",
+ n = /\n(?!$)/g,
+ r = function () {
+ if (void 0 === e) {
+ var t = document.createElement("div");
+ (t.style.fontSize = "13px"),
+ (t.style.lineHeight = "1.5"),
+ (t.style.padding = "0"),
+ (t.style.border = "0"),
+ (t.innerHTML = " <br /> "),
+ document.body.appendChild(t),
+ (e = 38 === t.offsetHeight),
+ document.body.removeChild(t);
+ }
+ return e;
+ },
+ a = !0;
+ Prism.plugins.lineHighlight = {
+ highlightLines: function (e, i, u) {
+ var c = (i =
+ "string" == typeof i ? i : e.getAttribute("data-line") || "")
+ .replace(/\s+/g, "")
+ .split(",")
+ .filter(Boolean),
+ p = +e.getAttribute("data-line-offset") || 0,
+ g = (r() ? parseInt : parseFloat)(getComputedStyle(e).lineHeight),
+ d = Prism.util.isActive(e, "line-numbers"),
+ m = e.querySelector("code"),
+ f = d ? e : m || e,
+ h = [],
+ v = m.textContent.match(n),
+ b = v ? v.length + 1 : 1,
+ k =
+ m && f != m
+ ? (function (e, t) {
+ var n = getComputedStyle(e),
+ r = getComputedStyle(t);
+ function a(e) {
+ return +e.substr(0, e.length - 2);
+ }
+ return (
+ t.offsetTop +
+ a(r.borderTopWidth) +
+ a(r.paddingTop) -
+ a(n.paddingTop)
+ );
+ })(e, m)
+ : 0;
+ c.forEach(function (t) {
+ var n = t.split("-"),
+ r = +n[0],
+ a = +n[1] || r;
+ if (!((a = Math.min(b + p, a)) < r)) {
+ var i =
+ e.querySelector('.line-highlight[data-range="' + t + '"]') ||
+ document.createElement("div");
+ if (
+ (h.push(function () {
+ i.setAttribute("aria-hidden", "true"),
+ i.setAttribute("data-range", t),
+ (i.className = (u || "") + " line-highlight");
+ }),
+ d && Prism.plugins.lineNumbers)
+ ) {
+ var s = Prism.plugins.lineNumbers.getLine(e, r),
+ l = Prism.plugins.lineNumbers.getLine(e, a);
+ if (s) {
+ var o = s.offsetTop + k + "px";
+ h.push(function () {
+ i.style.top = o;
+ });
+ }
+ if (l) {
+ var c = l.offsetTop - s.offsetTop + l.offsetHeight + "px";
+ h.push(function () {
+ i.style.height = c;
+ });
+ }
+ } else
+ h.push(function () {
+ i.setAttribute("data-start", String(r)),
+ a > r && i.setAttribute("data-end", String(a)),
+ (i.style.top = (r - p - 1) * g + k + "px"),
+ (i.textContent = new Array(a - r + 2).join(" \n"));
+ });
+ h.push(function () {
+ i.style.width = e.scrollWidth + "px";
+ }),
+ h.push(function () {
+ f.appendChild(i);
+ });
+ }
+ });
+ var y = e.id;
+ if (d && Prism.util.isActive(e, t) && y) {
+ l(e, t) ||
+ h.push(function () {
+ e.classList.add(t);
+ });
+ var x = parseInt(e.getAttribute("data-start") || "1");
+ s(".line-numbers-rows > span", e).forEach(function (e, t) {
+ var n = t + x;
+ e.onclick = function () {
+ var e = y + "." + n;
+ (a = !1),
+ (location.hash = e),
+ setTimeout(function () {
+ a = !0;
+ }, 1);
+ };
+ });
+ }
+ return function () {
+ h.forEach(o);
+ };
+ },
+ };
+ var i = 0;
+ Prism.hooks.add("before-sanity-check", function (e) {
+ var t = e.element.parentElement;
+ if (u(t)) {
+ var n = 0;
+ s(".line-highlight", t).forEach(function (e) {
+ (n += e.textContent.length), e.parentNode.removeChild(e);
+ }),
+ n &&
+ /^(?: \n)+$/.test(e.code.slice(-n)) &&
+ (e.code = e.code.slice(0, -n));
+ }
+ }),
+ Prism.hooks.add("complete", function e(t) {
+ var n = t.element.parentElement;
+ if (u(n)) {
+ clearTimeout(i);
+ var r = Prism.plugins.lineNumbers,
+ a = t.plugins && t.plugins.lineNumbers;
+ if (l(n, "line-numbers") && r && !a)
+ Prism.hooks.add("line-numbers", e);
+ else
+ Prism.plugins.lineHighlight.highlightLines(n)(),
+ (i = setTimeout(c, 1));
+ }
+ }),
+ window.addEventListener("hashchange", c),
+ window.addEventListener("resize", function () {
+ s("pre")
+ .filter(u)
+ .map(function (e) {
+ return Prism.plugins.lineHighlight.highlightLines(e);
+ })
+ .forEach(o);
+ });
+ }
+ function s(e, t) {
+ return Array.prototype.slice.call((t || document).querySelectorAll(e));
+ }
+ function l(e, t) {
+ return e.classList.contains(t);
+ }
+ function o(e) {
+ e();
+ }
+ function u(e) {
+ return (
+ !(!e || !/pre/i.test(e.nodeName)) &&
+ (!!e.hasAttribute("data-line") ||
+ !(!e.id || !Prism.util.isActive(e, t)))
+ );
+ }
+ function c() {
+ var e = location.hash.slice(1);
+ s(".temporary.line-highlight").forEach(function (e) {
+ e.parentNode.removeChild(e);
+ });
+ var t = (e.match(/\.([\d,-]+)$/) || [, ""])[1];
+ if (t && !document.getElementById(e)) {
+ var n = e.slice(0, e.lastIndexOf(".")),
+ r = document.getElementById(n);
+ if (r)
+ r.hasAttribute("data-line") || r.setAttribute("data-line", ""),
+ Prism.plugins.lineHighlight.highlightLines(r, t, "temporary ")(),
+ a &&
+ document
+ .querySelector(".temporary.line-highlight")
+ .scrollIntoView();
+ }
+ }
+ })(),
+ (function () {
+ if (void 0 !== Prism && "undefined" != typeof document) {
+ var e = /\n(?!$)/g,
+ t = (Prism.plugins.lineNumbers = {
+ getLine: function (e, t) {
+ if ("PRE" === e.tagName && e.classList.contains("line-numbers")) {
+ var n = e.querySelector(".line-numbers-rows");
+ if (n) {
+ var r = parseInt(e.getAttribute("data-start"), 10) || 1,
+ a = r + (n.children.length - 1);
+ t < r && (t = r), t > a && (t = a);
+ var i = t - r;
+ return n.children[i];
+ }
+ }
+ },
+ resize: function (e) {
+ r([e]);
+ },
+ assumeViewportIndependence: !0,
+ }),
+ n = void 0;
+ window.addEventListener("resize", function () {
+ (t.assumeViewportIndependence && n === window.innerWidth) ||
+ ((n = window.innerWidth),
+ r(
+ Array.prototype.slice.call(
+ document.querySelectorAll("pre.line-numbers")
+ )
+ ));
+ }),
+ Prism.hooks.add("complete", function (t) {
+ if (t.code) {
+ var n = t.element,
+ a = n.parentNode;
+ if (
+ a &&
+ /pre/i.test(a.nodeName) &&
+ !n.querySelector(".line-numbers-rows") &&
+ Prism.util.isActive(n, "line-numbers")
+ ) {
+ n.classList.remove("line-numbers"),
+ a.classList.add("line-numbers");
+ var i,
+ s = t.code.match(e),
+ l = s ? s.length + 1 : 1,
+ o = new Array(l + 1).join("<span></span>");
+ (i = document.createElement("span")).setAttribute(
+ "aria-hidden",
+ "true"
+ ),
+ (i.className = "line-numbers-rows"),
+ (i.innerHTML = o),
+ a.hasAttribute("data-start") &&
+ (a.style.counterReset =
+ "linenumber " +
+ (parseInt(a.getAttribute("data-start"), 10) - 1)),
+ t.element.appendChild(i),
+ r([a]),
+ Prism.hooks.run("line-numbers", t);
+ }
+ }
+ }),
+ Prism.hooks.add("line-numbers", function (e) {
+ (e.plugins = e.plugins || {}), (e.plugins.lineNumbers = !0);
+ });
+ }
+ function r(t) {
+ if (
+ 0 !=
+ (t = t.filter(function (e) {
+ var t = (function (e) {
+ if (!e) return null;
+ return window.getComputedStyle
+ ? getComputedStyle(e)
+ : e.currentStyle || null;
+ })(e)["white-space"];
+ return "pre-wrap" === t || "pre-line" === t;
+ })).length
+ ) {
+ var n = t
+ .map(function (t) {
+ var n = t.querySelector("code"),
+ r = t.querySelector(".line-numbers-rows");
+ if (n && r) {
+ var a = t.querySelector(".line-numbers-sizer"),
+ i = n.textContent.split(e);
+ a ||
+ (((a = document.createElement("span")).className =
+ "line-numbers-sizer"),
+ n.appendChild(a)),
+ (a.innerHTML = "0"),
+ (a.style.display = "block");
+ var s = a.getBoundingClientRect().height;
+ return (
+ (a.innerHTML = ""),
+ {
+ element: t,
+ lines: i,
+ lineHeights: [],
+ oneLinerHeight: s,
+ sizer: a,
+ }
+ );
+ }
+ })
+ .filter(Boolean);
+ n.forEach(function (e) {
+ var t = e.sizer,
+ n = e.lines,
+ r = e.lineHeights,
+ a = e.oneLinerHeight;
+ (r[n.length - 1] = void 0),
+ n.forEach(function (e, n) {
+ if (e && e.length > 1) {
+ var i = t.appendChild(document.createElement("span"));
+ (i.style.display = "block"), (i.textContent = e);
+ } else r[n] = a;
+ });
+ }),
+ n.forEach(function (e) {
+ for (
+ var t = e.sizer, n = e.lineHeights, r = 0, a = 0;
+ a < n.length;
+ a++
+ )
+ void 0 === n[a] &&
+ (n[a] = t.children[r++].getBoundingClientRect().height);
+ }),
+ n.forEach(function (e) {
+ var t = e.sizer,
+ n = e.element.querySelector(".line-numbers-rows");
+ (t.style.display = "none"),
+ (t.innerHTML = ""),
+ e.lineHeights.forEach(function (e, t) {
+ n.children[t].style.height = e + "px";
+ });
+ });
+ }
+ }
+ })(),
+ (function () {
+ if (void 0 !== Prism && "undefined" != typeof document) {
+ var e = {
+ javascript: "clike",
+ actionscript: "javascript",
+ apex: ["clike", "sql"],
+ arduino: "cpp",
+ aspnet: ["markup", "csharp"],
+ birb: "clike",
+ bison: "c",
+ c: "clike",
+ csharp: "clike",
+ cpp: "c",
+ cfscript: "clike",
+ chaiscript: ["clike", "cpp"],
+ cilkc: "c",
+ cilkcpp: "cpp",
+ coffeescript: "javascript",
+ crystal: "ruby",
+ "css-extras": "css",
+ d: "clike",
+ dart: "clike",
+ django: "markup-templating",
+ ejs: ["javascript", "markup-templating"],
+ etlua: ["lua", "markup-templating"],
+ erb: ["ruby", "markup-templating"],
+ fsharp: "clike",
+ "firestore-security-rules": "clike",
+ flow: "javascript",
+ ftl: "markup-templating",
+ gml: "clike",
+ glsl: "c",
+ go: "clike",
+ gradle: "clike",
+ groovy: "clike",
+ haml: "ruby",
+ handlebars: "markup-templating",
+ haxe: "clike",
+ hlsl: "c",
+ idris: "haskell",
+ java: "clike",
+ javadoc: ["markup", "java", "javadoclike"],
+ jolie: "clike",
+ jsdoc: ["javascript", "javadoclike", "typescript"],
+ "js-extras": "javascript",
+ json5: "json",
+ jsonp: "json",
+ "js-templates": "javascript",
+ kotlin: "clike",
+ latte: ["clike", "markup-templating", "php"],
+ less: "css",
+ lilypond: "scheme",
+ liquid: "markup-templating",
+ markdown: "markup",
+ "markup-templating": "markup",
+ mongodb: "javascript",
+ n4js: "javascript",
+ objectivec: "c",
+ opencl: "c",
+ parser: "markup",
+ php: "markup-templating",
+ phpdoc: ["php", "javadoclike"],
+ "php-extras": "php",
+ plsql: "sql",
+ processing: "clike",
+ protobuf: "clike",
+ pug: ["markup", "javascript"],
+ purebasic: "clike",
+ purescript: "haskell",
+ qsharp: "clike",
+ qml: "javascript",
+ qore: "clike",
+ racket: "scheme",
+ cshtml: ["markup", "csharp"],
+ jsx: ["markup", "javascript"],
+ tsx: ["jsx", "typescript"],
+ reason: "clike",
+ ruby: "clike",
+ sass: "css",
+ scss: "css",
+ scala: "java",
+ "shell-session": "bash",
+ smarty: "markup-templating",
+ solidity: "clike",
+ soy: "markup-templating",
+ sparql: "turtle",
+ sqf: "clike",
+ squirrel: "clike",
+ stata: ["mata", "java", "python"],
+ "t4-cs": ["t4-templating", "csharp"],
+ "t4-vb": ["t4-templating", "vbnet"],
+ tap: "yaml",
+ tt2: ["clike", "markup-templating"],
+ textile: "markup",
+ twig: "markup-templating",
+ typescript: "javascript",
+ v: "clike",
+ vala: "clike",
+ vbnet: "basic",
+ velocity: "markup",
+ wiki: "markup",
+ xeora: "markup",
+ "xml-doc": "markup",
+ xquery: "markup",
+ },
+ t = {
+ html: "markup",
+ xml: "markup",
+ svg: "markup",
+ mathml: "markup",
+ ssml: "markup",
+ atom: "markup",
+ rss: "markup",
+ js: "javascript",
+ g4: "antlr4",
+ ino: "arduino",
+ "arm-asm": "armasm",
+ art: "arturo",
+ adoc: "asciidoc",
+ avs: "avisynth",
+ avdl: "avro-idl",
+ gawk: "awk",
+ sh: "bash",
+ shell: "bash",
+ shortcode: "bbcode",
+ rbnf: "bnf",
+ oscript: "bsl",
+ cs: "csharp",
+ dotnet: "csharp",
+ cfc: "cfscript",
+ "cilk-c": "cilkc",
+ "cilk-cpp": "cilkcpp",
+ cilk: "cilkcpp",
+ coffee: "coffeescript",
+ conc: "concurnas",
+ jinja2: "django",
+ "dns-zone": "dns-zone-file",
+ dockerfile: "docker",
+ gv: "dot",
+ eta: "ejs",
+ xlsx: "excel-formula",
+ xls: "excel-formula",
+ gamemakerlanguage: "gml",
+ po: "gettext",
+ gni: "gn",
+ ld: "linker-script",
+ "go-mod": "go-module",
+ hbs: "handlebars",
+ mustache: "handlebars",
+ hs: "haskell",
+ idr: "idris",
+ gitignore: "ignore",
+ hgignore: "ignore",
+ npmignore: "ignore",
+ webmanifest: "json",
+ kt: "kotlin",
+ kts: "kotlin",
+ kum: "kumir",
+ tex: "latex",
+ context: "latex",
+ ly: "lilypond",
+ emacs: "lisp",
+ elisp: "lisp",
+ "emacs-lisp": "lisp",
+ md: "markdown",
+ moon: "moonscript",
+ n4jsd: "n4js",
+ nani: "naniscript",
+ objc: "objectivec",
+ qasm: "openqasm",
+ objectpascal: "pascal",
+ px: "pcaxis",
+ pcode: "peoplecode",
+ plantuml: "plant-uml",
+ pq: "powerquery",
+ mscript: "powerquery",
+ pbfasm: "purebasic",
+ purs: "purescript",
+ py: "python",
+ qs: "qsharp",
+ rkt: "racket",
+ razor: "cshtml",
+ rpy: "renpy",
+ res: "rescript",
+ robot: "robotframework",
+ rb: "ruby",
+ "sh-session": "shell-session",
+ shellsession: "shell-session",
+ smlnj: "sml",
+ sol: "solidity",
+ sln: "solution-file",
+ rq: "sparql",
+ sclang: "supercollider",
+ t4: "t4-cs",
+ trickle: "tremor",
+ troy: "tremor",
+ trig: "turtle",
+ ts: "typescript",
+ tsconfig: "typoscript",
+ uscript: "unrealscript",
+ uc: "unrealscript",
+ url: "uri",
+ vb: "visual-basic",
+ vba: "visual-basic",
+ webidl: "web-idl",
+ mathematica: "wolfram",
+ nb: "wolfram",
+ wl: "wolfram",
+ xeoracube: "xeora",
+ yml: "yaml",
+ },
+ n = {},
+ r =
+ (Prism.util.currentScript(),
+ (Prism.plugins.autoloader = {
+ languages_path: "/public/assets/prism/components/",
+ use_minified: !0,
+ loadLanguages: i,
+ }));
+ Prism.hooks.add("complete", function (e) {
+ var t = e.element,
+ n = e.language;
+ if (t && n && "none" !== n) {
+ var r = (function (e) {
+ var t = (e.getAttribute("data-dependencies") || "").trim();
+ if (!t) {
+ var n = e.parentElement;
+ n &&
+ "pre" === n.tagName.toLowerCase() &&
+ (t = (n.getAttribute("data-dependencies") || "").trim());
+ }
+ return t ? t.split(/\s*,\s*/g) : [];
+ })(t);
+ /^diff-./i.test(n)
+ ? (r.push("diff"), r.push(n.substr("diff-".length)))
+ : r.push(n),
+ r.every(a) ||
+ i(r, function () {
+ Prism.highlightElement(t);
+ });
+ }
+ });
+ }
+ function a(e) {
+ if (e.indexOf("!") >= 0) return !1;
+ if ((e = t[e] || e) in Prism.languages) return !0;
+ var r = n[e];
+ return r && !r.error && !1 === r.loading;
+ }
+ function i(l, o, u) {
+ "string" == typeof l && (l = [l]);
+ var c = l.length,
+ p = 0,
+ g = !1;
+ function d() {
+ g || (++p === c && o && o(l));
+ }
+ 0 !== c
+ ? l.forEach(function (l) {
+ !(function (l, o, u) {
+ var c = l.indexOf("!") >= 0;
+ function p() {
+ var e = n[l];
+ e || (e = n[l] = { callbacks: [] }),
+ e.callbacks.push({ success: o, error: u }),
+ !c && a(l)
+ ? s(l, "success")
+ : !c && e.error
+ ? s(l, "error")
+ : (!c && e.loading) ||
+ ((e.loading = !0),
+ (e.error = !1),
+ (function (e, t, n) {
+ var r = document.createElement("script");
+ (r.src = e),
+ (r.async = !0),
+ (r.onload = function () {
+ document.body.removeChild(r), t && t();
+ }),
+ (r.onerror = function () {
+ document.body.removeChild(r), n && n();
+ }),
+ document.body.appendChild(r);
+ })(
+ (function (e) {
+ return (
+ r.languages_path +
+ "prism-" +
+ e +
+ (r.use_minified ? ".min" : "") +
+ ".js"
+ );
+ })(l),
+ function () {
+ (e.loading = !1), s(l, "success");
+ },
+ function () {
+ (e.loading = !1), (e.error = !0), s(l, "error");
+ }
+ ));
+ }
+ (l = l.replace("!", "")), (l = t[l] || l);
+ var g = e[l];
+ g && g.length ? i(g, p, u) : p();
+ })(l, d, function () {
+ g || ((g = !0), u && u(l));
+ });
+ })
+ : o && setTimeout(o, 0);
+ }
+ function s(e, t) {
+ if (n[e]) {
+ for (var r = n[e].callbacks, a = 0, i = r.length; a < i; a++) {
+ var s = r[a][t];
+ s && setTimeout(s, 0);
+ }
+ r.length = 0;
+ }
+ }
+ })(),
+ (function () {
+ if (void 0 !== Prism) {
+ var e =
+ Object.assign ||
+ function (e, t) {
+ for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);
+ return e;
+ },
+ t = {
+ "remove-trailing": "boolean",
+ "remove-indent": "boolean",
+ "left-trim": "boolean",
+ "right-trim": "boolean",
+ "break-lines": "number",
+ indent: "number",
+ "remove-initial-line-feed": "boolean",
+ "tabs-to-spaces": "number",
+ "spaces-to-tabs": "number",
+ };
+ (n.prototype = {
+ setDefaults: function (t) {
+ this.defaults = e(this.defaults, t);
+ },
+ normalize: function (t, n) {
+ for (var r in (n = e(this.defaults, n))) {
+ var a = r.replace(/-(\w)/g, function (e, t) {
+ return t.toUpperCase();
+ });
+ "normalize" !== r &&
+ "setDefaults" !== a &&
+ n[r] &&
+ this[a] &&
+ (t = this[a].call(this, t, n[r]));
+ }
+ return t;
+ },
+ leftTrim: function (e) {
+ return e.replace(/^\s+/, "");
+ },
+ rightTrim: function (e) {
+ return e.replace(/\s+$/, "");
+ },
+ tabsToSpaces: function (e, t) {
+ return (t = 0 | t || 4), e.replace(/\t/g, new Array(++t).join(" "));
+ },
+ spacesToTabs: function (e, t) {
+ return (t = 0 | t || 4), e.replace(RegExp(" {" + t + "}", "g"), "\t");
+ },
+ removeTrailing: function (e) {
+ return e.replace(/\s*?$/gm, "");
+ },
+ removeInitialLineFeed: function (e) {
+ return e.replace(/^(?:\r?\n|\r)/, "");
+ },
+ removeIndent: function (e) {
+ var t = e.match(/^[^\S\n\r]*(?=\S)/gm);
+ return t && t[0].length
+ ? (t.sort(function (e, t) {
+ return e.length - t.length;
+ }),
+ t[0].length ? e.replace(RegExp("^" + t[0], "gm"), "") : e)
+ : e;
+ },
+ indent: function (e, t) {
+ return e.replace(
+ /^[^\S\n\r]*(?=\S)/gm,
+ new Array(++t).join("\t") + "$&"
+ );
+ },
+ breakLines: function (e, t) {
+ t = !0 === t ? 80 : 0 | t || 80;
+ for (var n = e.split("\n"), a = 0; a < n.length; ++a)
+ if (!(r(n[a]) <= t)) {
+ for (
+ var i = n[a].split(/(\s+)/g), s = 0, l = 0;
+ l < i.length;
+ ++l
+ ) {
+ var o = r(i[l]);
+ (s += o) > t && ((i[l] = "\n" + i[l]), (s = o));
+ }
+ n[a] = i.join("");
+ }
+ return n.join("\n");
+ },
+ }),
+ "undefined" != typeof module && module.exports && (module.exports = n),
+ (Prism.plugins.NormalizeWhitespace = new n({
+ "remove-trailing": !0,
+ "remove-indent": !0,
+ "left-trim": !0,
+ "right-trim": !0,
+ })),
+ Prism.hooks.add("before-sanity-check", function (e) {
+ var n = Prism.plugins.NormalizeWhitespace;
+ if (
+ (!e.settings || !1 !== e.settings["whitespace-normalization"]) &&
+ Prism.util.isActive(e.element, "whitespace-normalization", !0)
+ )
+ if ((e.element && e.element.parentNode) || !e.code) {
+ var r = e.element.parentNode;
+ if (e.code && r && "pre" === r.nodeName.toLowerCase()) {
+ for (var a in (null == e.settings && (e.settings = {}), t))
+ if (Object.hasOwnProperty.call(t, a)) {
+ var i = t[a];
+ if (r.hasAttribute("data-" + a))
+ try {
+ var s = JSON.parse(
+ r.getAttribute("data-" + a) || "true"
+ );
+ typeof s === i && (e.settings[a] = s);
+ } catch (e) {}
+ }
+ for (
+ var l = r.childNodes, o = "", u = "", c = !1, p = 0;
+ p < l.length;
+ ++p
+ ) {
+ var g = l[p];
+ g == e.element
+ ? (c = !0)
+ : "#text" === g.nodeName &&
+ (c ? (u += g.nodeValue) : (o += g.nodeValue),
+ r.removeChild(g),
+ --p);
+ }
+ if (e.element.children.length && Prism.plugins.KeepMarkup) {
+ var d = o + e.element.innerHTML + u;
+ (e.element.innerHTML = n.normalize(d, e.settings)),
+ (e.code = e.element.textContent);
+ } else
+ (e.code = o + e.code + u),
+ (e.code = n.normalize(e.code, e.settings));
+ }
+ } else e.code = n.normalize(e.code, e.settings);
+ });
+ }
+ function n(t) {
+ this.defaults = e({}, t);
+ }
+ function r(e) {
+ for (var t = 0, n = 0; n < e.length; ++n)
+ e.charCodeAt(n) == "\t".charCodeAt(0) && (t += 3);
+ return e.length + t;
+ }
+ })(),
+ (function () {
+ if (void 0 !== Prism) {
+ var e = /^diff-([\w-]+)/i,
+ t =
+ /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/g,
+ n = RegExp(
+ /(?:__|[^\r\n<])*(?:\r\n?|\n|(?:__|[^\r\n<])(?![^\r\n]))/.source.replace(
+ /__/g,
+ function () {
+ return t.source;
+ }
+ ),
+ "gi"
+ ),
+ r = !1;
+ Prism.hooks.add("before-sanity-check", function (t) {
+ var n = t.language;
+ e.test(n) &&
+ !t.grammar &&
+ (t.grammar = Prism.languages[n] = Prism.languages.diff);
+ }),
+ Prism.hooks.add("before-tokenize", function (t) {
+ r ||
+ Prism.languages.diff ||
+ Prism.plugins.autoloader ||
+ ((r = !0),
+ console.warn(
+ "Prism's Diff Highlight plugin requires the Diff language definition (prism-diff.js).Make sure the language definition is loaded or use Prism's Autoloader plugin."
+ ));
+ var n = t.language;
+ e.test(n) &&
+ !Prism.languages[n] &&
+ (Prism.languages[n] = Prism.languages.diff);
+ }),
+ Prism.hooks.add("wrap", function (r) {
+ var a, i;
+ if ("diff" !== r.language) {
+ var s = e.exec(r.language);
+ if (!s) return;
+ (a = s[1]), (i = Prism.languages[a]);
+ }
+ var l = Prism.languages.diff && Prism.languages.diff.PREFIXES;
+ if (l && r.type in l) {
+ var o,
+ u = r.content
+ .replace(t, "")
+ .replace(/</g, "<")
+ .replace(/&/g, "&"),
+ c = u.replace(/(^|[\r\n])./g, "$1");
+ o = i ? Prism.highlight(c, i, a) : Prism.util.encode(c);
+ var p,
+ g = new Prism.Token("prefix", l[r.type], [/\w+/.exec(r.type)[0]]),
+ d = Prism.Token.stringify(g, r.language),
+ m = [];
+ for (n.lastIndex = 0; (p = n.exec(o)); ) m.push(d + p[0]);
+ /(?:^|[\r\n]).$/.test(u) && m.push(d),
+ (r.content = m.join("")),
+ i && r.classes.push("language-" + a);
+ }
+ });
+ }
+ })();
@@ -328,9 +328,28 @@
terser "^5.14.1"
transform-modules-eumd "^1.0.0"
-"@ethicdevs/react-monolith@^1.7.4":
- version "1.7.4"
- resolved "https://registry.yarnpkg.com/@ethicdevs/react-monolith/-/react-monolith-1.7.4.tgz#ae58fb9504be6aa6caef42c1a31a52613040776e"
+"@ethicdevs/fastify-stream-react-views@^1.11.3":
+ version "1.11.3"
+ resolved "https://registry.yarnpkg.com/@ethicdevs/fastify-stream-react-views/-/fastify-stream-react-views-1.11.3.tgz#1c1634c2d1ee19bacd342f3cf0fdb3f979a4392a"
+ integrity sha512-PA1PHHyDN6gZkQSOkyMPGri17aFqEKaz3DEWXZmraTpGp+3zPU6QgECftA8IEqcXFteQxv7IujtBqSBUfVqMwA==
+ dependencies:
+ "@babel/plugin-transform-modules-umd" "^7.18.0"
+ "@babel/plugin-transform-react-display-name" "^7.18.6"
+ babel-plugin-styled-components "^2.0.7"
+ concat-stream "^2.0.0"
+ dree "^3.3.7"
+ esbuild "^0.14.50"
+ esbuild-node-externals "^1.4.1"
+ escape-string-regexp "^4.0.0"
+ fastify-plugin "^3.0.1"
+ react-ssr-prepass "^1.5.0"
+ terser "^5.14.1"
+ transform-modules-eumd "^1.0.0"
+
+"@ethicdevs/react-monolith@^1.9.8":
+ version "1.9.8"
+ resolved "https://registry.yarnpkg.com/@ethicdevs/react-monolith/-/react-monolith-1.9.8.tgz#b34979df052066aef8672b5127ec98777999b2d4"
+ integrity sha512-iwiAz550lyaOB0N1sB4V7WQY69NSWFXDimvQI5Xx4B53EhhbI67TQ2asbDuG6e7+b724a04Njuo9lVLdeCFMvA==
dependencies:
deepest-merge "^1.0.0"
react-ssr-prepass "^1.5.0"
@@ -743,19 +762,22 @@
version "1.0.0"
resolved "https://registry.yarnpkg.com/@panva/asn1.js/-/asn1.js-1.0.0.tgz#dd55ae7b8129e02049f009408b97c61ccf9032f6"
-"@prisma/client@^4.4.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.4.0.tgz#45f59c172dd3621ecc92d7cf9bc765d85e6c7d56"
+"@prisma/client@^4.9.0":
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.16.2.tgz#3bb9ebd49b35c8236b3d468d0215192267016e2b"
+ integrity sha512-qCoEyxv1ZrQ4bKy39GnylE8Zq31IRmm8bNhNbZx7bF2cU5aiCCnSa93J2imF88MBjn7J9eUQneNxUQVJdl/rPQ==
dependencies:
- "@prisma/engines-version" "4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6"
+ "@prisma/engines-version" "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81"
-"@prisma/engines-version@4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6":
- version "4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6"
- resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6.tgz#00875863bb30b670a586a5b5794a000f7f3ad976"
+"@prisma/engines-version@4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81":
+ version "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81"
+ resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81.tgz#d3b5dcf95b6d220e258cbf6ae19b06d30a7e9f14"
+ integrity sha512-q617EUWfRIDTriWADZ4YiWRZXCa/WuhNgLTVd+HqWLffjMSPzyM5uOWoauX91wvQClSKZU4pzI4JJLQ9Kl62Qg==
-"@prisma/engines@4.4.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.4.0.tgz#6ca7d3ce8eee08dcfa82311b0a02f5ccaac7dc0c"
+"@prisma/engines@4.16.2":
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.16.2.tgz#5ec8dd672c2173d597e469194916ad4826ce2e5f"
+ integrity sha512-vx1nxVvN4QeT/cepQce68deh/Turxy5Mr+4L4zClFuK1GlxN3+ivxfuv+ej/gvidWn1cE1uAhW7ALLNlYbRUAw==
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
version "1.1.2"
@@ -1923,6 +1945,13 @@ esbuild-openbsd-64@0.14.51:
version "0.14.51"
resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.51.tgz#4adba0b7ea7eb1428bb00d8e94c199a949b130e8"
+esbuild-plugin-prismjs@^1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/esbuild-plugin-prismjs/-/esbuild-plugin-prismjs-1.0.8.tgz#aeae4f8385dc0a029ce2bb0951c40437e167afde"
+ integrity sha512-gIOl7IgYoFNmBt2e/DPWqSyPYviSFrJpCtNPnIsCvWqwx1kuKxqTzMGCUwntXJV29pwQd2prVVzh6p4Z1Vp4eQ==
+ dependencies:
+ prismjs "^1.29.0"
+
esbuild-sunos-64@0.14.51:
version "0.14.51"
resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.51.tgz#4b8a6d97dfedda30a6e39607393c5c90ebf63891"
@@ -4111,11 +4140,12 @@ pretty-format@^28.0.0, pretty-format@^28.1.3:
ansi-styles "^5.0.0"
react-is "^18.0.0"
-prisma@^4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.4.0.tgz#0c53324bf6a29474636b3e1964e0d72e0277bf8f"
+prisma@^4.9.0:
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.16.2.tgz#469e0a0991c6ae5bcde289401726bb012253339e"
+ integrity sha512-SYCsBvDf0/7XSJyf2cHTLjLeTLVXYfqp7pG5eEVafFLeT0u/hLFz/9W196nDRGUOo1JfPatAEb+uEnTQImQC1g==
dependencies:
- "@prisma/engines" "4.4.0"
+ "@prisma/engines" "4.16.2"
prismjs@^1.29.0:
version "1.29.0"
@@ -328,9 +328,28 @@
terser "^5.14.1"
transform-modules-eumd "^1.0.0"
-"@ethicdevs/react-monolith@^1.7.4":
- version "1.7.4"
- resolved "https://registry.yarnpkg.com/@ethicdevs/react-monolith/-/react-monolith-1.7.4.tgz#ae58fb9504be6aa6caef42c1a31a52613040776e"
+"@ethicdevs/fastify-stream-react-views@^1.11.3":
+ version "1.11.3"
+ resolved "https://registry.yarnpkg.com/@ethicdevs/fastify-stream-react-views/-/fastify-stream-react-views-1.11.3.tgz#1c1634c2d1ee19bacd342f3cf0fdb3f979a4392a"
+ integrity sha512-PA1PHHyDN6gZkQSOkyMPGri17aFqEKaz3DEWXZmraTpGp+3zPU6QgECftA8IEqcXFteQxv7IujtBqSBUfVqMwA==
+ dependencies:
+ "@babel/plugin-transform-modules-umd" "^7.18.0"
+ "@babel/plugin-transform-react-display-name" "^7.18.6"
+ babel-plugin-styled-components "^2.0.7"
+ concat-stream "^2.0.0"
+ dree "^3.3.7"
+ esbuild "^0.14.50"
+ esbuild-node-externals "^1.4.1"
+ escape-string-regexp "^4.0.0"
+ fastify-plugin "^3.0.1"
+ react-ssr-prepass "^1.5.0"
+ terser "^5.14.1"
+ transform-modules-eumd "^1.0.0"
+
+"@ethicdevs/react-monolith@^1.9.8":
+ version "1.9.8"
+ resolved "https://registry.yarnpkg.com/@ethicdevs/react-monolith/-/react-monolith-1.9.8.tgz#b34979df052066aef8672b5127ec98777999b2d4"
+ integrity sha512-iwiAz550lyaOB0N1sB4V7WQY69NSWFXDimvQI5Xx4B53EhhbI67TQ2asbDuG6e7+b724a04Njuo9lVLdeCFMvA==
dependencies:
deepest-merge "^1.0.0"
react-ssr-prepass "^1.5.0"
@@ -743,19 +762,22 @@
version "1.0.0"
resolved "https://registry.yarnpkg.com/@panva/asn1.js/-/asn1.js-1.0.0.tgz#dd55ae7b8129e02049f009408b97c61ccf9032f6"
-"@prisma/client@^4.4.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.4.0.tgz#45f59c172dd3621ecc92d7cf9bc765d85e6c7d56"
+"@prisma/client@^4.9.0":
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.16.2.tgz#3bb9ebd49b35c8236b3d468d0215192267016e2b"
+ integrity sha512-qCoEyxv1ZrQ4bKy39GnylE8Zq31IRmm8bNhNbZx7bF2cU5aiCCnSa93J2imF88MBjn7J9eUQneNxUQVJdl/rPQ==
dependencies:
- "@prisma/engines-version" "4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6"
+ "@prisma/engines-version" "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81"
-"@prisma/engines-version@4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6":
- version "4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6"
- resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.4.0-66.f352a33b70356f46311da8b00d83386dd9f145d6.tgz#00875863bb30b670a586a5b5794a000f7f3ad976"
+"@prisma/engines-version@4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81":
+ version "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81"
+ resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81.tgz#d3b5dcf95b6d220e258cbf6ae19b06d30a7e9f14"
+ integrity sha512-q617EUWfRIDTriWADZ4YiWRZXCa/WuhNgLTVd+HqWLffjMSPzyM5uOWoauX91wvQClSKZU4pzI4JJLQ9Kl62Qg==
-"@prisma/engines@4.4.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.4.0.tgz#6ca7d3ce8eee08dcfa82311b0a02f5ccaac7dc0c"
+"@prisma/engines@4.16.2":
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.16.2.tgz#5ec8dd672c2173d597e469194916ad4826ce2e5f"
+ integrity sha512-vx1nxVvN4QeT/cepQce68deh/Turxy5Mr+4L4zClFuK1GlxN3+ivxfuv+ej/gvidWn1cE1uAhW7ALLNlYbRUAw==
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
version "1.1.2"
@@ -1923,6 +1945,13 @@ esbuild-openbsd-64@0.14.51:
version "0.14.51"
resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.51.tgz#4adba0b7ea7eb1428bb00d8e94c199a949b130e8"
+esbuild-plugin-prismjs@^1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/esbuild-plugin-prismjs/-/esbuild-plugin-prismjs-1.0.8.tgz#aeae4f8385dc0a029ce2bb0951c40437e167afde"
+ integrity sha512-gIOl7IgYoFNmBt2e/DPWqSyPYviSFrJpCtNPnIsCvWqwx1kuKxqTzMGCUwntXJV29pwQd2prVVzh6p4Z1Vp4eQ==
+ dependencies:
+ prismjs "^1.29.0"
+
esbuild-sunos-64@0.14.51:
version "0.14.51"
resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.51.tgz#4b8a6d97dfedda30a6e39607393c5c90ebf63891"
@@ -4111,11 +4140,12 @@ pretty-format@^28.0.0, pretty-format@^28.1.3:
ansi-styles "^5.0.0"
react-is "^18.0.0"
-prisma@^4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.4.0.tgz#0c53324bf6a29474636b3e1964e0d72e0277bf8f"
+prisma@^4.9.0:
+ version "4.16.2"
+ resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.16.2.tgz#469e0a0991c6ae5bcde289401726bb012253339e"
+ integrity sha512-SYCsBvDf0/7XSJyf2cHTLjLeTLVXYfqp7pG5eEVafFLeT0u/hLFz/9W196nDRGUOo1JfPatAEb+uEnTQImQC1g==
dependencies:
- "@prisma/engines" "4.4.0"
+ "@prisma/engines" "4.16.2"
prismjs@^1.29.0:
version "1.29.0"