Add persistent flag of origin
All checks were successful
Publish Docker Image / Publish Docker Image (push) Successful in 1m12s

This commit is contained in:
Ahmed Al-Taiar
2024-10-17 21:36:50 -04:00
parent cbf75acbeb
commit f8987b08da
11 changed files with 37 additions and 1 deletions

View File

@ -18,6 +18,8 @@ PRISMA_HIDE_UPDATE_MESSAGE=true
FIRST_NAME=firstname FIRST_NAME=firstname
LAST_NAME=lastname LAST_NAME=lastname
COUNTRY=US
SMTP_HOST=smtp.example.com SMTP_HOST=smtp.example.com
SMTP_PORT=465 SMTP_PORT=465
SMTP_SECURE=true SMTP_SECURE=true

View File

@ -6,6 +6,8 @@
FIRST_NAME=firstname FIRST_NAME=firstname
LAST_NAME=lastname LAST_NAME=lastname
COUNTRY=US
SMTP_HOST=smtp.example.com SMTP_HOST=smtp.example.com
SMTP_PORT=465 SMTP_PORT=465
SMTP_SECURE=true SMTP_SECURE=true

View File

@ -24,6 +24,7 @@ services:
- DATABASE_URL=postgresql://redwood:changeme@db/portfolio - DATABASE_URL=postgresql://redwood:changeme@db/portfolio
- FIRST_NAME=first name # Your first name - FIRST_NAME=first name # Your first name
- LAST_NAME=lastname # Your last name - LAST_NAME=lastname # Your last name
- COUNTRY=US # ISO-3166-1 alpha-2 country code, https://en.wikipedia.org/wiki/ISO_3166-1#Codes
- SMTP_HOST=smtp.example.com - SMTP_HOST=smtp.example.com
- SMTP_PORT=465 - SMTP_PORT=465
- SMTP_SECURE=true - SMTP_SECURE=true

View File

@ -11,6 +11,7 @@
"@redwoodjs/graphql-server": "8.4.0", "@redwoodjs/graphql-server": "8.4.0",
"@tus/file-store": "^1.4.0", "@tus/file-store": "^1.4.0",
"@tus/server": "^1.7.0", "@tus/server": "^1.7.0",
"country-flag-icons": "^1.5.13",
"graphql-scalars": "^1.23.0", "graphql-scalars": "^1.23.0",
"nodemailer": "^6.9.14" "nodemailer": "^6.9.14"
}, },

View File

@ -10,6 +10,13 @@ import { createServer } from '@redwoodjs/api-server'
import { logger } from 'src/lib/logger' import { logger } from 'src/lib/logger'
import { handleTusUpload } from 'src/lib/tus' import { handleTusUpload } from 'src/lib/tus'
;(async () => { ;(async () => {
const { hasFlag } = await import('country-flag-icons')
if (!hasFlag(process.env.COUNTRY))
throw new Error(
'Invalid COUNTRY environment variable, please select a valid ISO-3166-1 alpha-2 country code\n See https://en.wikipedia.org/wiki/ISO_3166-1#Codes'
)
const server = await createServer({ const server = await createServer({
logger, logger,
configureApiServer: async (server) => { configureApiServer: async (server) => {

View File

@ -12,6 +12,7 @@ services:
- DATABASE_URL=postgresql://redwood:changeme@db/portfolio - DATABASE_URL=postgresql://redwood:changeme@db/portfolio
- FIRST_NAME=first name # Your first name - FIRST_NAME=first name # Your first name
- LAST_NAME=lastname # Your last name - LAST_NAME=lastname # Your last name
- COUNTRY=US # ISO-3166-1 alpha-2 country code, https://en.wikipedia.org/wiki/ISO_3166-1#Codes
- SMTP_HOST=smtp.example.com - SMTP_HOST=smtp.example.com
- SMTP_PORT=465 - SMTP_PORT=465
- SMTP_SECURE=true - SMTP_SECURE=true

View File

@ -9,7 +9,7 @@
title = "${FIRST_NAME} ${LAST_NAME}" title = "${FIRST_NAME} ${LAST_NAME}"
port = 8910 port = 8910
apiUrl = "/api" apiUrl = "/api"
includeEnvironmentVariables = ["FIRST_NAME", "LAST_NAME", "API_ADDRESS_PROD", "API_ADDRESS_DEV"] includeEnvironmentVariables = ["FIRST_NAME", "LAST_NAME", "COUNTRY", "API_ADDRESS_PROD", "API_ADDRESS_DEV"]
[generate] [generate]
tests = false tests = false
stories = false stories = false

View File

@ -35,6 +35,7 @@
"@uppy/react": "^4.0.1", "@uppy/react": "^4.0.1",
"@uppy/tus": "^4.0.0", "@uppy/tus": "^4.0.0",
"@uppy/webcam": "^4.0.1", "@uppy/webcam": "^4.0.1",
"country-flag-icons": "^1.5.13",
"date-fns": "^4.1.0", "date-fns": "^4.1.0",
"humanize-string": "2.1.0", "humanize-string": "2.1.0",
"react": "18.3.1", "react": "18.3.1",

View File

@ -1,3 +1,4 @@
import { hasFlag } from 'country-flag-icons'
import { hydrateRoot, createRoot } from 'react-dom/client' import { hydrateRoot, createRoot } from 'react-dom/client'
import App from 'src/App' import App from 'src/App'
@ -15,6 +16,11 @@ if (!redwoodAppElement)
"exists in your 'web/src/index.html' file." "exists in your 'web/src/index.html' file."
) )
if (!hasFlag(process.env.COUNTRY))
throw new Error(
'Invalid COUNTRY environment variable, please select a valid ISO-3166-1 alpha-2 country code\n See https://en.wikipedia.org/wiki/ISO_3166-1#Codes'
)
if (redwoodAppElement.children?.length > 0) if (redwoodAppElement.children?.length > 0)
hydrateRoot(redwoodAppElement, <App />) hydrateRoot(redwoodAppElement, <App />)
else { else {

View File

@ -1,5 +1,6 @@
import { mdiCompass, mdiContacts } from '@mdi/js' import { mdiCompass, mdiContacts } from '@mdi/js'
import Icon from '@mdi/react' import Icon from '@mdi/react'
import getUnicodeFlagIcon from 'country-flag-icons/unicode'
import { Link, routes } from '@redwoodjs/router' import { Link, routes } from '@redwoodjs/router'
import { Metadata } from '@redwoodjs/web' import { Metadata } from '@redwoodjs/web'
@ -44,6 +45,11 @@ const HomePage = () => (
{getLogoComponent('gitea')} {getLogoComponent('gitea')}
</a> </a>
</div> </div>
<div className="fixed bottom-2 right-2 z-10">
<p className="btn btn-square text-xl">
{getUnicodeFlagIcon(process.env.COUNTRY)}
</p>
</div>
</> </>
) )

View File

@ -7336,6 +7336,7 @@ __metadata:
"@tus/file-store": "npm:^1.4.0" "@tus/file-store": "npm:^1.4.0"
"@tus/server": "npm:^1.7.0" "@tus/server": "npm:^1.7.0"
"@types/nodemailer": "npm:^6.4.15" "@types/nodemailer": "npm:^6.4.15"
country-flag-icons: "npm:^1.5.13"
graphql-scalars: "npm:^1.23.0" graphql-scalars: "npm:^1.23.0"
nodemailer: "npm:^6.9.14" nodemailer: "npm:^6.9.14"
languageName: unknown languageName: unknown
@ -9061,6 +9062,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"country-flag-icons@npm:^1.5.13":
version: 1.5.13
resolution: "country-flag-icons@npm:1.5.13"
checksum: 10c0/beee2fe225469507d6c8df90376e031f08a5f103f65cd68e1db0679e82d4ffb2fbb27a3bb19defd112745b5c19d1972df615df21813c8c2074062dd5eb08eabb
languageName: node
linkType: hard
"crc-32@npm:^1.2.0": "crc-32@npm:^1.2.0":
version: 1.2.2 version: 1.2.2
resolution: "crc-32@npm:1.2.2" resolution: "crc-32@npm:1.2.2"
@ -19234,6 +19242,7 @@ __metadata:
"@uppy/tus": "npm:^4.0.0" "@uppy/tus": "npm:^4.0.0"
"@uppy/webcam": "npm:^4.0.1" "@uppy/webcam": "npm:^4.0.1"
autoprefixer: "npm:^10.4.20" autoprefixer: "npm:^10.4.20"
country-flag-icons: "npm:^1.5.13"
daisyui: "npm:^4.12.10" daisyui: "npm:^4.12.10"
date-fns: "npm:^4.1.0" date-fns: "npm:^4.1.0"
humanize-string: "npm:2.1.0" humanize-string: "npm:2.1.0"