diff --git a/dist_scripts/scripts/generateJson/radar.js b/dist_scripts/scripts/generateJson/radar.js index e45ae79..5e01dc2 100644 --- a/dist_scripts/scripts/generateJson/radar.js +++ b/dist_scripts/scripts/generateJson/radar.js @@ -92,6 +92,7 @@ var path = __importStar(require("path")); var model_1 = require("../../src/model"); var paths_1 = require("../paths"); var file_1 = require("./file"); +var config_1 = require("../../src/config"); marked_1.marked.setOptions({ highlight: function (code) { return highlight_js_1.default.highlightAuto(code).value; }, }); @@ -142,11 +143,10 @@ var checkAttributes = function (fileName, attributes) { } }; var createRevisionsFromFiles = function (fileNames) { - var publicUrl = process.env.PUBLIC_URL; return Promise.all(fileNames.map(function (fileName) { return (0, fs_extra_1.readFile)(fileName, "utf8").then(function (data) { var fm = (0, front_matter_1.default)(data); - var html = (0, marked_1.marked)(fm.body.replace(/\]\(\//g, "](".concat(publicUrl, "/"))); + var html = (0, marked_1.marked)(fm.body.replace(/\]\(\//g, "](".concat(config_1.publicUrl))); html = html.replace(/a href="http/g, 'a target="_blank" rel="noopener noreferrer" href="http'); var attributes = checkAttributes(fileName, fm.attributes); if (attributes) { diff --git a/dist_scripts/src/config.js b/dist_scripts/src/config.js index b5a671a..3bfa03b 100644 --- a/dist_scripts/src/config.js +++ b/dist_scripts/src/config.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.translate = exports.assetUrl = exports.isMobileViewport = exports.getItemPageNames = exports.radarNameShort = exports.radarName = void 0; +exports.translate = exports.assetUrl = exports.publicUrl = exports.isMobileViewport = exports.getItemPageNames = exports.radarNameShort = exports.radarName = void 0; exports.radarName = process.env.REACT_APP_RADAR_NAME || "AOE Technology Radar"; exports.radarNameShort = exports.radarName; var getItemPageNames = function (items) { @@ -17,8 +17,9 @@ function isMobileViewport() { return width < 1200; } exports.isMobileViewport = isMobileViewport; +exports.publicUrl = (process.env.PUBLIC_URL || "").replace(/\/$/, '') + "/"; function assetUrl(file) { - return process.env.PUBLIC_URL + "/" + file; + return exports.publicUrl + file; } exports.assetUrl = assetUrl; function translate(config, key) { diff --git a/scripts/generateJson/radar.ts b/scripts/generateJson/radar.ts index 381ff06..4b3b70c 100644 --- a/scripts/generateJson/radar.ts +++ b/scripts/generateJson/radar.ts @@ -15,7 +15,7 @@ import { import { appBuild } from "../paths"; import { getAllMarkdownFiles, radarPath } from "./file"; -import type { ConfigData } from "../../src/config"; +import { ConfigData, publicUrl } from "../../src/config"; marked.setOptions({ highlight: (code: any) => highlight.highlightAuto(code).value, @@ -71,12 +71,11 @@ const checkAttributes = (fileName: string, attributes: ItemAttributes) => { }; const createRevisionsFromFiles = (fileNames: string[]) => { - const publicUrl = process.env.PUBLIC_URL; return Promise.all( fileNames.map((fileName) => readFile(fileName, "utf8").then((data) => { const fm = frontMatter(data); - let html = marked(fm.body.replace(/\]\(\//g, `](${publicUrl}/`)); + let html = marked(fm.body.replace(/\]\(\//g, `](${publicUrl}`)); html = html.replace( /a href="http/g, 'a target="_blank" rel="noopener noreferrer" href="http' diff --git a/src/components/App.tsx b/src/components/App.tsx index ceda64c..10c2528 100644 --- a/src/components/App.tsx +++ b/src/components/App.tsx @@ -8,7 +8,7 @@ import { useParams, } from "react-router-dom"; -import { ConfigData } from "../config"; +import { ConfigData, publicUrl } from "../config"; import { Messages, MessagesProvider } from "../context/MessagesContext"; import { useSearchParamState } from "../hooks/use-search-param-state"; import { Item, filteredOnly, getTags } from "../model"; @@ -90,20 +90,20 @@ interface Data { export default function App() { const data = useFetch( - `${process.env.PUBLIC_URL}/rd.json?${process.env.REACT_APP_BUILDHASH}` + `${publicUrl}rd.json?${process.env.REACT_APP_BUILDHASH}` ); const messages = useFetch( - `${process.env.PUBLIC_URL}/messages.json?${process.env.REACT_APP_BUILDHASH}` + `${publicUrl}messages.json?${process.env.REACT_APP_BUILDHASH}` ); const config = useFetch( - `${process.env.PUBLIC_URL}/config.json?${process.env.REACT_APP_BUILDHASH}` + `${publicUrl}config.json?${process.env.REACT_APP_BUILDHASH}` ); if (data && config) { const { items, releases } = data; return ( - +