generated from nhcarrigan/template
Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
7f8bcb31f0
|
|||
|
7a5032c112
|
|||
|
f77c890e8e
|
|||
| 923c44e634 | |||
| 9124ba2faa | |||
| 11786260d8 | |||
| aec68b86bb | |||
| 791a0fab4f | |||
| a7540edb8f |
@@ -1,34 +0,0 @@
|
||||
name: Code Analysis
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
sonar:
|
||||
name: SonarQube
|
||||
|
||||
steps:
|
||||
- name: Checkout Source Files
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: SonarCube Scan
|
||||
uses: SonarSource/sonarqube-scan-action@v4
|
||||
timeout-minutes: 10
|
||||
env:
|
||||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
|
||||
SONAR_HOST_URL: "https://quality.nhcarrigan.com"
|
||||
with:
|
||||
args: >
|
||||
-Dsonar.sources=.
|
||||
-Dsonar.projectKey=website-headers
|
||||
|
||||
- name: SonarQube Quality Gate check
|
||||
uses: sonarsource/sonarqube-quality-gate-action@v1
|
||||
with:
|
||||
pollingTimeoutSec: 600
|
||||
env:
|
||||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
|
||||
SONAR_HOST_URL: "https://quality.nhcarrigan.com"
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "website-headers",
|
||||
"version": "3.1.0",
|
||||
"version": "3.4.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"type": "module",
|
||||
|
||||
+91
-28
@@ -40,6 +40,23 @@ const {
|
||||
* The title and description are set by each website. This should
|
||||
* only load things like open graph data and favicons.
|
||||
*/
|
||||
const nhcarriganHeadersCharacterSet = document.createElement("meta");
|
||||
nhcarriganHeadersCharacterSet.setAttribute("charset", "UTF-8");
|
||||
const nhcarriganHeadersViewport = document.createElement("meta");
|
||||
nhcarriganHeadersViewport.setAttribute("name", "viewport");
|
||||
nhcarriganHeadersViewport.setAttribute(
|
||||
"content",
|
||||
"width=device-width, initial-scale=1.0",
|
||||
);
|
||||
const nhcarriganHeadersThemeColor = document.createElement("meta");
|
||||
nhcarriganHeadersThemeColor.setAttribute("name", "theme-color");
|
||||
nhcarriganHeadersThemeColor.setAttribute("content", "#E1F6F9");
|
||||
const nhcarriganHeadersReferrer = document.createElement("meta");
|
||||
nhcarriganHeadersReferrer.setAttribute("name", "referrer");
|
||||
nhcarriganHeadersReferrer.setAttribute(
|
||||
"content",
|
||||
"strict-origin-when-cross-origin",
|
||||
);
|
||||
const nhcarriganHeadersOpenGraphTitle = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphTitle.setAttribute("property", "og:title");
|
||||
nhcarriganHeadersOpenGraphTitle.setAttribute(
|
||||
@@ -68,6 +85,23 @@ nhcarriganHeadersOpenGraphUrl.setAttribute("content", nhcarriganHeadersUrl);
|
||||
const nhcarriganHeadersOpenGraphType = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphType.setAttribute("property", "og:type");
|
||||
nhcarriganHeadersOpenGraphType.setAttribute("content", "website");
|
||||
const nhcarriganHeadersOpenGraphSiteName = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphSiteName.setAttribute("property", "og:site_name");
|
||||
nhcarriganHeadersOpenGraphSiteName.setAttribute("content", "NHCarrigan");
|
||||
const nhcarriganHeadersOpenGraphLocale = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphLocale.setAttribute("property", "og:locale");
|
||||
nhcarriganHeadersOpenGraphLocale.setAttribute("content", "en_US");
|
||||
const nhcarriganHeadersOpenGraphImageAlt = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphImageAlt.setAttribute("property", "og:image:alt");
|
||||
nhcarriganHeadersOpenGraphImageAlt.
|
||||
setAttribute("content", "NHCarrigan logo and branding");
|
||||
const nhcarriganHeadersOpenGraphImageWidth = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphImageWidth.setAttribute("property", "og:image:width");
|
||||
nhcarriganHeadersOpenGraphImageWidth.setAttribute("content", "1920");
|
||||
const nhcarriganHeadersOpenGraphImageHeight = document.createElement("meta");
|
||||
nhcarriganHeadersOpenGraphImageHeight.
|
||||
setAttribute("property", "og:image:height");
|
||||
nhcarriganHeadersOpenGraphImageHeight.setAttribute("content", "1080");
|
||||
|
||||
const nhcarriganHeadersTwitterCard = document.createElement("meta");
|
||||
nhcarriganHeadersTwitterCard.setAttribute("name", "twitter:card");
|
||||
@@ -100,6 +134,22 @@ nhcarriganHeadersTwitterImage.setAttribute(
|
||||
"content",
|
||||
"https://cdn.nhcarrigan.com/og-image.png",
|
||||
);
|
||||
const nhcarriganHeadersTwitterSite = document.createElement("meta");
|
||||
nhcarriganHeadersTwitterSite.setAttribute("name", "twitter:site");
|
||||
nhcarriganHeadersTwitterSite.setAttribute("content", "@nhcarrigan1");
|
||||
const nhcarriganHeadersTwitterCreator = document.createElement("meta");
|
||||
nhcarriganHeadersTwitterCreator.setAttribute("name", "twitter:creator");
|
||||
nhcarriganHeadersTwitterCreator.setAttribute("content", "@nhcarrigan1");
|
||||
|
||||
const nhcarriganHeadersFormatDetection = document.createElement("meta");
|
||||
nhcarriganHeadersFormatDetection.setAttribute("name", "format-detection");
|
||||
nhcarriganHeadersFormatDetection.setAttribute("content", "telephone=no");
|
||||
const nhcarriganHeadersRobots = document.createElement("meta");
|
||||
nhcarriganHeadersRobots.setAttribute("name", "robots");
|
||||
nhcarriganHeadersRobots.setAttribute("content", "index, follow");
|
||||
const nhcarriganHeadersAuthor = document.createElement("meta");
|
||||
nhcarriganHeadersAuthor.setAttribute("name", "author");
|
||||
nhcarriganHeadersAuthor.setAttribute("content", "Naomi Carrigan");
|
||||
|
||||
// #endregion
|
||||
|
||||
@@ -131,13 +181,14 @@ const nhcarriganHeadersStyles = document.createElement("style");
|
||||
nhcarriganHeadersStyles.id = "nhcarrigan-global-styles";
|
||||
nhcarriganHeadersStyles.innerHTML = `
|
||||
@font-face {
|
||||
font-family: 'OpenDyslexic';
|
||||
src: url('https://cdn.nhcarrigan.com/fonts/OpenDyslexicMono-Regular.otf') format('opentype');
|
||||
font-family: 'Vampyr';
|
||||
src: url('https://cdn.nhcarrigan.com/fonts/vampyr.ttf') format('truetype');
|
||||
}
|
||||
|
||||
:root {
|
||||
--foreground: #8F2447;
|
||||
--background: #E1F6F9DC;
|
||||
font-size: 12pt;
|
||||
}
|
||||
|
||||
* {
|
||||
@@ -147,7 +198,7 @@ nhcarriganHeadersStyles.innerHTML = `
|
||||
}
|
||||
|
||||
html {
|
||||
font-family: 'OpenDyslexic', monospace;
|
||||
font-family: 'Vampyr', monospace;
|
||||
cursor: url('https://cdn.nhcarrigan.com/cursors/cursor.cur'), auto;
|
||||
min-height: 100vh;
|
||||
min-width: 100vw;
|
||||
@@ -206,7 +257,7 @@ footer {
|
||||
cursor: url('https://cdn.nhcarrigan.com/cursors/pointer.cur'), pointer;
|
||||
color: var(--foreground);
|
||||
font-size: 1rem;
|
||||
font-family: 'OpenDyslexic', monospace;
|
||||
font-family: 'Vampyr', monospace;
|
||||
}
|
||||
#show-socials-button > i, #theme-select-button > i {
|
||||
font-size: 1.5rem;
|
||||
@@ -266,6 +317,18 @@ a {
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 425px) {
|
||||
#donate-badge {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 350px) {
|
||||
footer, #show-socials-button, #theme-select-button, #show-socials-button > i, #theme-select-button > i {
|
||||
font-size: 10pt;
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
// #endregion
|
||||
@@ -275,14 +338,14 @@ a {
|
||||
const nhcarriganHeadersFooter = document.createElement("footer");
|
||||
nhcarriganHeadersFooter.innerHTML = `
|
||||
<div id="footer-inner-container">
|
||||
<p>© <a href="https://nhcarrigan.com" target="_blank">Naomi Carrigan</a></p>
|
||||
<p id="footer-copyright">© <a href="https://nhcarrigan.com" target="_blank">Naomi Carrigan</a></p>
|
||||
<button id="show-socials-button" type="button">
|
||||
<i class="fa-solid fa-share-nodes"></i> Connect with Us
|
||||
</button>
|
||||
<button id="theme-select-button" type="button">
|
||||
<i id="theme-select-icon" class="fa-solid fa-moon"></i> Toggle Theme
|
||||
</button>
|
||||
<a href="https://buy.stripe.com/cN24iTfqu1j6b3afZ2" target="_blank" rel="noreferrer">
|
||||
<a id="donate-badge" href="https://buy.stripe.com/cN24iTfqu1j6b3afZ2" target="_blank" rel="noreferrer">
|
||||
<img src="https://cdn.nhcarrigan.com/donate.png" alt="Donate" style="width: 70px; height: 70px;">
|
||||
</a>
|
||||
<div id="tree-nation-offset-website"></div>
|
||||
@@ -370,29 +433,17 @@ const nhcarriganHeadersFontAwesome = document.createElement("script");
|
||||
nhcarriganHeadersFontAwesome.src = "https://kit.fontawesome.com/f949111719.js";
|
||||
const nhcarriganHeadersAnalytics = document.createElement("script");
|
||||
nhcarriganHeadersAnalytics.defer = true;
|
||||
nhcarriganHeadersAnalytics.setAttribute("domain", "nhcarrigan.com");
|
||||
nhcarriganHeadersAnalytics.src
|
||||
// eslint-disable-next-line stylistic/max-len
|
||||
= "https://analytics.nhcarrigan.com/js/script.file-downloads.hash.outbound-links.pageview-props.revenue.tagged-events.js";
|
||||
nhcarriganHeadersAnalytics.setAttribute(
|
||||
"event-domain",
|
||||
nhcarriganHeadersHostname,
|
||||
);
|
||||
nhcarriganHeadersAnalytics.setAttribute("data-domain", "nhcarrigan.com");
|
||||
nhcarriganHeadersAnalytics.setAttribute(
|
||||
"event-page",
|
||||
nhcarriganHeadersTitle?.innerText ?? "Unknown Page",
|
||||
);
|
||||
nhcarriganHeadersAnalytics.setAttribute(
|
||||
"event-path",
|
||||
nhcarriganHeadersPathname,
|
||||
);
|
||||
|
||||
= "https://analytics.nhcarrigan.com/js/pa-YUXAn1vhhRttySUAw_LMN.js";
|
||||
const nhcarriganHeadersAnalytics2 = document.createElement("script");
|
||||
nhcarriganHeadersAnalytics2.innerHTML = `
|
||||
window.plausible = window.plausible ??
|
||||
function() {
|
||||
(window.plausible.q = window.plausible.q ?? []).push(arguments)
|
||||
}
|
||||
window.plausible=window.plausible||function(){(plausible.q=plausible.q||[]).push(arguments)},plausible.init=plausible.init||function(i){plausible.o=i||{}};
|
||||
plausible.init({
|
||||
domain: "${nhcarriganHeadersHostname}",
|
||||
page: "${nhcarriganHeadersTitle?.innerText ?? "Unknown Page"}",
|
||||
path: "${nhcarriganHeadersPathname}",
|
||||
})
|
||||
`;
|
||||
const nhcarriganHeadersGoogleAdsense = document.createElement("script");
|
||||
nhcarriganHeadersGoogleAdsense.async = true;
|
||||
@@ -405,23 +456,35 @@ nhcarriganHeadersGoogleAdsense.setAttribute("crossorigin", "anonymous");
|
||||
|
||||
// #region Inject Elements
|
||||
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersCharacterSet);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersViewport);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersThemeColor);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersReferrer);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphTitle);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphDescription);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphImage);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphUrl);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphType);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphSiteName);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphLocale);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphImageAlt);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphImageWidth);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersOpenGraphImageHeight);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterCard);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterDomain);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterUrl);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterTitle);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterDescription);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterImage);
|
||||
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterSite);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTwitterCreator);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersFavicon);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersAppleTouchIcon);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersSmallIcon);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersLargeIcon);
|
||||
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersFormatDetection);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersRobots);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersAuthor);
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersStyles);
|
||||
|
||||
nhcarriganHeadersHead?.appendChild(nhcarriganHeadersTreeNation);
|
||||
|
||||
Reference in New Issue
Block a user