import { initializeSite, isAuthPath } from "@utils/app";
+import { getHttpBaseInternal } from "@utils/env";
import { ErrorPageData } from "@utils/types";
import type { Request, Response } from "express";
import { StaticRouter, matchPath } from "inferno-router";
import IsomorphicCookie from "isomorphic-cookie";
import { GetSite, GetSiteResponse, LemmyHttp } from "lemmy-js-client";
import { App } from "../../shared/components/app/app";
-import { getHttpBaseInternal } from "../../shared/env";
import {
InitialFetchRequest,
IsoDataOptionalSite,
+import { getHttpBaseExternal, getHttpBaseInternal } from "@utils/env";
import type { Request, Response } from "express";
import { LemmyHttp } from "lemmy-js-client";
-import { getHttpBaseExternal, getHttpBaseInternal } from "../../shared/env";
import { wrapClient } from "../../shared/services/HttpService";
import generateManifestJson from "../utils/generate-manifest-json";
import { setForwardedHeaders } from "../utils/set-forwarded-headers";
+import { getHttpBaseExternal } from "@utils/env";
import { readFile } from "fs/promises";
import { GetSiteResponse } from "lemmy-js-client";
import path from "path";
import sharp from "sharp";
-import { getHttpBaseExternal } from "../../shared/env";
import { fetchIconPng } from "./fetch-icon-png";
const iconSizes = [72, 96, 128, 144, 152, 192, 384, 512];
+import { httpExternalPath } from "@utils/env";
import { htmlToText } from "html-to-text";
import { Component } from "inferno";
import { Helmet } from "inferno-helmet";
-import { httpExternalPath } from "../../env";
import { md } from "../../markdown";
import { I18NextService } from "../../services";
import { myAuthRequired, newVote, showScores } from "@utils/app";
import { canShare, share } from "@utils/browser";
+import { getExternalHost, getHttpBase } from "@utils/env";
import { futureDaysToUnixTime, hostname, numToSI } from "@utils/helpers";
import { isImage, isVideo } from "@utils/media";
import {
TransferCommunity,
} from "lemmy-js-client";
import { relTags } from "../../config";
-import { getExternalHost, getHttpBase } from "../../env";
import { BanType, PostFormParams, PurgeType, VoteType } from "../../interfaces";
import { mdNoImages, mdToHtml, mdToHtmlInline } from "../../markdown";
import { I18NextService, UserService } from "../../services";
export const fetchLimit = 40;
export const relTags = "noopener nofollow";
export const emDash = "\u2014";
+
+export const testHost = "0.0.0.0:8536";
+++ /dev/null
-import { isBrowser } from "@utils/browser";
-
-const testHost = "0.0.0.0:8536";
-
-function getInternalHost() {
- return !isBrowser()
- ? process.env.LEMMY_UI_LEMMY_INTERNAL_HOST ?? testHost
- : testHost; // used for local dev
-}
-
-export function getExternalHost() {
- return isBrowser()
- ? `${window.location.hostname}${
- ["1234", "1235"].includes(window.location.port)
- ? ":8536"
- : window.location.port == ""
- ? ""
- : `:${window.location.port}`
- }`
- : process.env.LEMMY_UI_LEMMY_EXTERNAL_HOST || testHost;
-}
-
-function getSecure() {
- return (
- isBrowser()
- ? window.location.protocol.includes("https")
- : process.env.LEMMY_UI_HTTPS === "true"
- )
- ? "s"
- : "";
-}
-
-function getHost() {
- return isBrowser() ? getExternalHost() : getInternalHost();
-}
-
-function getBaseLocal(s = "") {
- return `http${s}://${getHost()}`;
-}
-
-export function getHttpBaseInternal() {
- return getBaseLocal(); // Don't use secure here
-}
-
-export function getHttpBaseExternal() {
- return `http${getSecure()}://${getExternalHost()}`;
-}
-
-export function getHttpBase() {
- return getBaseLocal(getSecure());
-}
-
-export function isHttps() {
- return getSecure() === "s";
-}
-
-console.log(`httpbase: ${getHttpBase()}`);
-console.log(`isHttps: ${isHttps()}`);
-
-// This is for html tags, don't include port
-export function httpExternalPath(path: string) {
- return `http${getSecure()}://${getExternalHost().replace(
- /:\d+/g,
- ""
- )}${path}`;
-}
+import { getHttpBase } from "@utils/env";
import { LemmyHttp } from "lemmy-js-client";
-import { getHttpBase } from "../../shared/env";
import { toast } from "../../shared/toast";
import { I18NextService } from "./I18NextService";
// import Cookies from 'js-cookie';
import { isAuthPath } from "@utils/app";
import { isBrowser } from "@utils/browser";
+import { isHttps } from "@utils/env";
import IsomorphicCookie from "isomorphic-cookie";
import jwt_decode from "jwt-decode";
import { LoginResponse, MyUserInfo } from "lemmy-js-client";
-import { isHttps } from "../env";
import { toast } from "../toast";
import { I18NextService } from "./I18NextService";
--- /dev/null
+import { getHost } from "@utils/env";
+
+export default function getBaseLocal(s = "") {
+ return `http${s}://${getHost()}`;
+}
--- /dev/null
+import { isBrowser } from "@utils/browser";
+import { testHost } from "../../config";
+
+export default function getExternalHost() {
+ return isBrowser()
+ ? `${window.location.hostname}${
+ ["1234", "1235"].includes(window.location.port)
+ ? ":8536"
+ : window.location.port == ""
+ ? ""
+ : `:${window.location.port}`
+ }`
+ : process.env.LEMMY_UI_LEMMY_EXTERNAL_HOST || testHost;
+}
--- /dev/null
+import { isBrowser } from "@utils/browser";
+import { getExternalHost, getInternalHost } from "@utils/env";
+
+export default function getHost() {
+ return isBrowser() ? getExternalHost() : getInternalHost();
+}
--- /dev/null
+import { getExternalHost, getSecure } from "@utils/env";
+
+export default function getHttpBaseExternal() {
+ return `http${getSecure()}://${getExternalHost()}`;
+}
--- /dev/null
+import { getBaseLocal } from "@utils/env";
+
+export default function getHttpBaseInternal() {
+ return getBaseLocal(); // Don't use secure here
+}
--- /dev/null
+import { getBaseLocal, getSecure } from "@utils/env";
+
+export default function getHttpBase() {
+ return getBaseLocal(getSecure());
+}
--- /dev/null
+import { isBrowser } from "@utils/browser";
+import { testHost } from "../../config";
+
+export default function getInternalHost() {
+ return !isBrowser()
+ ? process.env.LEMMY_UI_LEMMY_INTERNAL_HOST ?? testHost
+ : testHost; // used for local dev
+}
--- /dev/null
+import { isBrowser } from "@utils/browser";
+
+export default function getSecure() {
+ return (
+ isBrowser()
+ ? window.location.protocol.includes("https")
+ : process.env.LEMMY_UI_HTTPS === "true"
+ )
+ ? "s"
+ : "";
+}
--- /dev/null
+import { getExternalHost, getSecure } from "@utils/env";
+
+// This is for html tags, don't include port
+export default function httpExternalPath(path: string) {
+ return `http${getSecure()}://${getExternalHost().replace(
+ /:\d+/g,
+ ""
+ )}${path}`;
+}
--- /dev/null
+import getBaseLocal from "./get-base-local";
+import getExternalHost from "./get-external-host";
+import getHost from "./get-host";
+import getHttpBase from "./get-http-base";
+import getHttpBaseExternal from "./get-http-base-external";
+import getHttpBaseInternal from "./get-http-base-internal";
+import getInternalHost from "./get-internal-host";
+import getSecure from "./get-secure";
+import httpExternalPath from "./http-external-path";
+import isHttps from "./is-https";
+
+export {
+ getBaseLocal,
+ getExternalHost,
+ getHost,
+ getHttpBase,
+ getHttpBaseExternal,
+ getHttpBaseInternal,
+ getInternalHost,
+ getSecure,
+ httpExternalPath,
+ isHttps,
+};
--- /dev/null
+import { getSecure } from "@utils/env";
+
+export default function isHttps() {
+ return getSecure() === "s";
+}