From 3d0d3ff20aab50fd560982591cfea719bd2e90ec Mon Sep 17 00:00:00 2001 From: Limezy Date: Mon, 26 Aug 2024 00:31:57 +0700 Subject: [PATCH] Public version --- sources/patches/main-02-visitor.patch | 167 -------------------------- sources/patches/main-03-login.patch | 59 --------- sources/patches/main-04-bible.patch | 151 ----------------------- 3 files changed, 377 deletions(-) delete mode 100644 sources/patches/main-02-visitor.patch delete mode 100644 sources/patches/main-03-login.patch delete mode 100644 sources/patches/main-04-bible.patch diff --git a/sources/patches/main-02-visitor.patch b/sources/patches/main-02-visitor.patch deleted file mode 100644 index 70c171c..0000000 --- a/sources/patches/main-02-visitor.patch +++ /dev/null @@ -1,167 +0,0 @@ -diff --git a/package.json b/package.json -index fd6010972..800dd9882 100644 ---- a/package.json -+++ b/package.json -@@ -169,6 +169,7 @@ - "pg-tsquery": "^8.4.2", - "pluralize": "^8.0.0", - "png-chunks-extract": "^1.0.0", -+ "passport-req": "^0.1.1", - "polished": "^4.3.1", - "prosemirror-codemark": "^0.4.2", - "prosemirror-commands": "^1.6.0", -diff --git a/plugins/req/plugin.json b/plugins/req/plugin.json -new file mode 100644 -index 000000000..88780ccd7 ---- /dev/null -+++ b/plugins/req/plugin.json -@@ -0,0 +1,6 @@ -+{ -+ "id": "req", -+ "name": "visiteur", -+ "priority": 30, -+ "description": "Adds an req compatible authentication provider." -+} -diff --git a/plugins/req/server/auth/req.ts b/plugins/req/server/auth/req.ts -new file mode 100644 -index 000000000..da37414e9 ---- /dev/null -+++ b/plugins/req/server/auth/req.ts -@@ -0,0 +1,70 @@ -+import passport from "@outlinewiki/koa-passport"; -+import type { Context } from "koa"; -+import Router from "koa-router"; -+import { capitalize } from "lodash"; -+import { Strategy as ReqStrategy } from "passport-req"; -+import { slugifyDomain } from "@shared/utils/domains"; -+import accountProvisioner from "@server/commands/accountProvisioner"; -+import passportMiddleware from "@server/middlewares/passport"; -+import { User } from "@server/models"; -+import { AuthenticationResult } from "@server/types"; -+import { -+ StateStore, -+ getTeamFromContext, -+ getClientFromContext, -+} from "@server/utils/passport"; -+import env from "@server/env"; -+ -+const router = new Router(); -+const providerName = "req"; -+ -+export const config = { -+ name: "visiteur", -+ enabled: true, -+}; -+ -+if (true) { -+ passport.use( -+ new ReqStrategy( -+ async function (req,done) { -+ try { -+ const domain = "anthropologiebiblique.fr"; -+ const subdomain = domain.split(".")[0]; -+ const teamName = capitalize(subdomain); -+ const name = "visiteur"; -+ const email = "visiteur@anthropologiebiblique.fr"; -+ const result = await accountProvisioner({ -+ ip: req.ip, -+ team: { -+ name: teamName, -+ domain, -+ subdomain, -+ }, -+ user: { -+ name: name, -+ email: email, -+ avatarUrl: null, -+ }, -+ authenticationProvider: { -+ name: providerName, -+ providerId: domain, -+ }, -+ authentication: { -+ providerId: "1234", -+ accessToken: null, -+ refreshToken: null, -+ scopes: [], -+ }, -+ }); -+ return done(null, result.user, result); -+ } catch (err) { -+ return done(err, null); -+ } -+ } -+ ) -+ ); -+ -+ router.get("req", passportMiddleware(providerName)); -+} -+ -+export default router; -\ No newline at end of file -diff --git a/plugins/req/server/index.ts b/plugins/req/server/index.ts -new file mode 100644 -index 000000000..68081fb65 ---- /dev/null -+++ b/plugins/req/server/index.ts -@@ -0,0 +1,14 @@ -+import { PluginManager, Hook } from "@server/utils/PluginManager"; -+import config from "../plugin.json"; -+import router from "./auth/req"; -+ -+const enabled = true; -+ -+if (enabled) { -+ PluginManager.add({ -+ ...config, -+ type: Hook.AuthProvider, -+ value: { router, id: config.id }, -+ name: config.name, -+ }); -+} -diff --git a/yarn.lock b/yarn.lock -index bb51a8f70..884861c76 100644 ---- a/yarn.lock -+++ b/yarn.lock -@@ -12104,6 +12104,14 @@ passport-oauth@1.0.x: - passport-oauth1 "1.x.x" - passport-oauth2 "1.x.x" - -+passport-req@^0.1.1: -+ version "0.1.1" -+ resolved "https://registry.yarnpkg.com/passport-req/-/passport-req-0.1.1.tgz#451bff1500b3d464a768d42f0762328a21236a18" -+ integrity sha512-9qmM0vD5v7jYLWxezNNCleOw+8IkVAuvOwQ6NJaUuJkdFJTR1KatXH1i5MxWgffx+libLWYLRUPtc6GHOmn+6w== -+ dependencies: -+ passport "~0.1.1" -+ pkginfo "0.2.x" -+ - passport-slack-oauth2@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/passport-slack-oauth2/-/passport-slack-oauth2-1.2.0.tgz#d214a698b55a137393636a26827747f6c436dab4" -@@ -12134,6 +12142,14 @@ passport@^0.7.0: - pause "0.0.1" - utils-merge "^1.0.1" - -+passport@~0.1.1: -+ version "0.1.18" -+ resolved "https://registry.yarnpkg.com/passport/-/passport-0.1.18.tgz#c8264479dcb6414cadbb66752d12b37e0b6525a1" -+ integrity sha512-qteYojKG/qth7UBbbGU7aqhe5ndJs6YaUkH2B6+7FWQ0OeyYmWknzOATpMhdoSTDcLLliq9n4Fcy1mGs80iUMw== -+ dependencies: -+ pause "0.0.1" -+ pkginfo "0.2.x" -+ - passthrough-counter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/passthrough-counter/-/passthrough-counter-1.0.0.tgz#1967d9e66da572b5c023c787db112a387ab166fa" -@@ -12341,6 +12357,11 @@ pkg-up@^3.1.0: - dependencies: - find-up "^3.0.0" - -+pkginfo@0.2.x: -+ version "0.2.3" -+ resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.2.3.tgz#7239c42a5ef6c30b8f328439d9b9ff71042490f8" -+ integrity sha512-7W7wTrE/NsY8xv/DTGjwNIyNah81EQH0MWcTzrHL6pOpMocOGZc0Mbdz9aXxSrp+U0mSmkU8jrNCDCfUs3sOBg== -+ - pluralize@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" diff --git a/sources/patches/main-03-login.patch b/sources/patches/main-03-login.patch deleted file mode 100644 index 1463992..0000000 --- a/sources/patches/main-03-login.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/app/scenes/Login/components/AuthenticationProvider.tsx b/app/scenes/Login/components/AuthenticationProvider.tsx -index d70f3dcb8..5efdfbd86 100644 ---- a/app/scenes/Login/components/AuthenticationProvider.tsx -+++ b/app/scenes/Login/components/AuthenticationProvider.tsx -@@ -70,7 +70,7 @@ function AuthenticationProvider(props: Props) { - - -- {t("Sign In")} → -+ {t("S'identifier")} → - - - ) : ( - } fullwidth {...rest}> -- {t("Continue with Email")} -+ {t("Accès membre (email)")} - - )} - -@@ -99,7 +99,7 @@ function AuthenticationProvider(props: Props) { - fullwidth - {...rest} - > -- {t("Continue with {{ authProviderName }}", { -+ {t("Accès {{ authProviderName }}", { - authProviderName: name, - })} - -diff --git a/app/scenes/Login/index.tsx b/app/scenes/Login/index.tsx -index b2b8c3929..78590e823 100644 ---- a/app/scenes/Login/index.tsx -+++ b/app/scenes/Login/index.tsx -@@ -267,7 +267,7 @@ function Login({ children }: Props) { - ) : ( - <> - -- {t("Login to {{ authProviderName }}", { -+ {t("Bienvenue sur Anthropologie Biblique", { - authProviderName: config.name || env.APP_NAME, - })} - -@@ -285,7 +285,7 @@ function Login({ children }: Props) { - {hasMultipleProviders && ( - <> - -- {t("You signed in with {{ authProviderName }} last time.", { -+ {t("Vous vous êtes authentifié avec l'accès {{ authProviderName }} la dernière fois.", { - authProviderName: defaultProvider.name, - })} - diff --git a/sources/patches/main-04-bible.patch b/sources/patches/main-04-bible.patch deleted file mode 100644 index 2e3def5..0000000 --- a/sources/patches/main-04-bible.patch +++ /dev/null @@ -1,151 +0,0 @@ -diff --git a/app/editor/menus/block.tsx b/app/editor/menus/block.tsx -index 05e9acee6..aca761095 100644 ---- a/app/editor/menus/block.tsx -+++ b/app/editor/menus/block.tsx -@@ -20,6 +20,7 @@ import { - MathIcon, - DoneIcon, - EmbedIcon, -+ BookmarkedIcon, - } from "outline-icons"; - import * as React from "react"; - import styled from "styled-components"; -@@ -195,6 +196,13 @@ export default function blockMenuItems(dictionary: Dictionary): MenuItem[] { - keywords: "notice card suggestion", - attrs: { style: "tip" }, - }, -+ { -+ name: "container_notice", -+ title: dictionary.bibleNotice, -+ icon: , -+ keywords: "notice card bible", -+ attrs: { style: "bible" }, -+ }, - { - name: "separator", - }, -diff --git a/app/hooks/useDictionary.ts b/app/hooks/useDictionary.ts -index e8178b11d..9dac7edba 100644 ---- a/app/hooks/useDictionary.ts -+++ b/app/hooks/useDictionary.ts -@@ -85,6 +85,8 @@ export default function useDictionary() { - warningNotice: t("Warning notice"), - success: t("Success"), - successNotice: t("Success notice"), -+ bible: t("Bible"), -+ bibleNotice: t("Bible quote"), - insertDate: t("Current date"), - insertTime: t("Current time"), - insertDateTime: t("Current date and time"), -diff --git a/app/scenes/Document/components/Document.tsx b/app/scenes/Document/components/Document.tsx -index 752915e89..5eefe890c 100644 ---- a/app/scenes/Document/components/Document.tsx -+++ b/app/scenes/Document/components/Document.tsx -@@ -599,11 +599,6 @@ class DocumentScene extends React.Component { - )} - - -- {isShare && -- !parseDomain(window.location.origin).custom && -- !auth.user && ( -- -- )} - - {!isShare && ( -