Skip to content

Commit 57aee7d

Browse files
feat: use $env/static/public for env variables
1 parent b1e6b74 commit 57aee7d

File tree

16 files changed

+58
-47
lines changed

16 files changed

+58
-47
lines changed

.env.example

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
VITE_APPWRITE_ENDPOINT=http://localhost/v1
2-
VITE_APPWRITE_GROWTH_ENDPOINT=
3-
VITE_GA_PROJECT=
4-
VITE_CONSOLE_MODE=self-hosted
5-
VITE_STRIPE_PUBLIC_KEY=
1+
PUBLIC_APPWRITE_ENDPOINT=https://localhost/v1
2+
PUBLIC_CONSOLE_MODE=self-hosted
3+
PUBLIC_STRIPE_KEY=
4+
PUBLIC_GROWTH_ENDPOINT=

.github/workflows/publish.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,5 @@ jobs:
3838
tags: ${{ steps.meta.outputs.tags }}
3939
labels: ${{ steps.meta.outputs.labels }}
4040
build-args: |
41-
"VITE_CONSOLE_MODE=self-hosted"
42-
"VITE_APPWRITE_GROWTH_ENDPOINT=${{ secrets.VITE_APPWRITE_GROWTH_ENDPOINT }}"
41+
"PUBLIC_CONSOLE_MODE=self-hosted"
42+
"PUBLIC_GROWTH_ENDPOINT=${{ secrets.PUBLIC_GROWTH_ENDPOINT }}"

.github/workflows/tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
- 'static/**/*'
99

1010
env:
11-
VITE_APPWRITE_ENDPOINT: http://appwrite.test/v1
11+
PUBLIC_APPWRITE_ENDPOINT: http://appwrite.test/v1
1212

1313
jobs:
1414
build:

Dockerfile

+9-9
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@ ADD ./vite.config.ts /app/vite.config.ts
1818
ADD ./src /app/src
1919
ADD ./static /app/static
2020

21-
ARG VITE_CONSOLE_MODE
22-
ARG VITE_APPWRITE_ENDPOINT
23-
ARG VITE_APPWRITE_GROWTH_ENDPOINT
24-
ARG VITE_STRIPE_PUBLIC_KEY
25-
26-
ENV VITE_APPWRITE_ENDPOINT=$VITE_APPWRITE_ENDPOINT
27-
ENV VITE_APPWRITE_GROWTH_ENDPOINT=$VITE_APPWRITE_GROWTH_ENDPOINT
28-
ENV VITE_CONSOLE_MODE=$VITE_CONSOLE_MODE
29-
ENV VITE_STRIPE_PUBLIC_KEY=$VITE_STRIPE_PUBLIC_KEY
21+
ARG PUBLIC_CONSOLE_MODE
22+
ARG PUBLIC_APPWRITE_ENDPOINT
23+
ARG PUBLIC_APPWRITE_GROWTH_ENDPOINT
24+
ARG PUBLIC_STRIPE_KEY
25+
26+
ENV PUBLIC_APPWRITE_ENDPOINT=$PUBLIC_APPWRITE_ENDPOINT
27+
ENV PUBLIC_APPWRITE_GROWTH_ENDPOINT=$PUBLIC_APPWRITE_GROWTH_ENDPOINT
28+
ENV PUBLIC_CONSOLE_MODE=$PUBLIC_CONSOLE_MODE
29+
ENV PUBLIC_STRIPE_KEY=$PUBLIC_STRIPE_KEY
3030

3131
RUN pnpm run sync && pnpm run build
3232

build.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ async function main() {
2323
log();
2424
log(bold().magenta('APPWRITE CONSOLE'));
2525
log();
26-
logEnv('CONSOLE MODE', env?.VITE_CONSOLE_MODE);
27-
logEnv('APPWRITE ENDPOINT', env?.VITE_APPWRITE_ENDPOINT, 'relative');
28-
logEnv('GROWTH ENDPOINT', env?.VITE_APPWRITE_GROWTH_ENDPOINT);
26+
logEnv('CONSOLE MODE', env?.PUBLIC_CONSOLE_MODE);
27+
logEnv('APPWRITE ENDPOINT', env?.PUBLIC_APPWRITE_ENDPOINT, 'relative');
28+
logEnv('GROWTH ENDPOINT', env?.PUBLIC_GROWTH_ENDPOINT);
2929
log();
3030
logDelimiter();
3131
await build();

compose.yml

+8-8
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ services:
44
build:
55
context: .
66
args:
7-
VITE_CONSOLE_MODE: ${VITE_CONSOLE_MODE}
8-
VITE_APPWRITE_ENDPOINT: ${VITE_APPWRITE_ENDPOINT}
9-
VITE_APPWRITE_GROWTH_ENDPOINT: ${VITE_APPWRITE_GROWTH_ENDPOINT}
10-
VITE_STRIPE_PUBLIC_KEY: ${VITE_STRIPE_PUBLIC_KEY}
7+
PUBLIC_CONSOLE_MODE: ${PUBLIC_CONSOLE_MODE}
8+
PUBLIC_APPWRITE_ENDPOINT: ${PUBLIC_APPWRITE_ENDPOINT}
9+
PUBLIC_APPWRITE_GROWTH_ENDPOINT: ${PUBLIC_GROWTH_ENDPOINT}
10+
PUBLIC_STRIPE_KEY: ${PUBLIC_STRIPE_KEY}
1111
develop:
1212
watch:
1313
- action: rebuild
@@ -18,9 +18,9 @@ services:
1818
- node_modules/
1919
- build/
2020
environment:
21-
- VITE_CONSOLE_MODE
22-
- VITE_APPWRITE_ENDPOINT
23-
- VITE_APPWRITE_GROWTH_ENDPOINT
24-
- VITE_STRIPE_PUBLIC_KEY
21+
- PUBLIC_CONSOLE_MODE
22+
- PUBLIC_APPWRITE_ENDPOINT
23+
- PUBLIC_GROWTH_ENDPOINT
24+
- PUBLIC_STRIPE_KEY
2525
ports:
2626
- '3000:80'

playwright.config.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ const config: PlaywrightTestConfig = {
1212
webServer: {
1313
timeout: 120000,
1414
env: {
15-
VITE_APPWRITE_ENDPOINT: 'http://console-tests.appwrite.org/v1',
16-
VITE_CONSOLE_MODE: 'cloud',
17-
VITE_STRIPE_PUBLIC_KEY:
15+
PUBLIC_APPWRITE_ENDPOINT: 'http://console-tests.appwrite.org/v1',
16+
PUBLIC_CONSOLE_MODE: 'cloud',
17+
PUBLIC_STRIPE_KEY:
1818
'pk_test_51LT5nsGYD1ySxNCyd7b304wPD8Y1XKKWR6hqo6cu3GIRwgvcVNzoZv4vKt5DfYXL1gRGw4JOqE19afwkJYJq1g3K004eVfpdWn'
1919
},
2020
command: 'pnpm run build && pnpm run preview',

src/lib/system.ts

+13-8
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,20 @@
1-
export enum Mode {
1+
import {
2+
PUBLIC_APPWRITE_ENDPOINT,
3+
PUBLIC_CONSOLE_MODE,
4+
PUBLIC_GROWTH_ENDPOINT,
5+
PUBLIC_STRIPE_KEY
6+
} from '$env/static/public';
7+
8+
export const enum Mode {
29
CLOUD = 'cloud',
310
SELF_HOSTED = 'self-hosted'
411
}
512

613
export const VARS = {
7-
APPWRITE_ENDPOINT: import.meta.env?.VITE_APPWRITE_ENDPOINT?.toString() as string | undefined,
8-
GROWTH_ENDPOINT: import.meta.env?.VITE_APPWRITE_GROWTH_ENDPOINT?.toString() as
9-
| string
10-
| undefined,
11-
CONSOLE_MODE: import.meta.env?.VITE_CONSOLE_MODE?.toString() as string | undefined,
12-
STRIPE_PUBLIC_KEY: import.meta.env?.VITE_STRIPE_PUBLIC_KEY?.toString() as string | undefined
14+
APPWRITE_ENDPOINT: PUBLIC_APPWRITE_ENDPOINT,
15+
GROWTH_ENDPOINT: PUBLIC_GROWTH_ENDPOINT,
16+
CONSOLE_MODE: PUBLIC_CONSOLE_MODE as Mode,
17+
PUBLIC_STRIPE_KEY: PUBLIC_STRIPE_KEY
1318
};
1419

1520
export const ENV = {
@@ -22,5 +27,5 @@ export const ENV = {
2227
export const MODE = VARS.CONSOLE_MODE === Mode.CLOUD ? Mode.CLOUD : Mode.SELF_HOSTED;
2328
export const isCloud = MODE === Mode.CLOUD;
2429
export const isSelfHosted = MODE !== Mode.CLOUD;
25-
export const hasStripePublicKey = !!VARS.STRIPE_PUBLIC_KEY;
30+
export const hasStripePublicKey = !!VARS.PUBLIC_STRIPE_KEY;
2631
export const GRACE_PERIOD_OVERRIDE = false;

src/routes/(console)/+layout.svelte

+1-1
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@
247247
if (isCloud && hasStripePublicKey) {
248248
const loadStripe = (await import('@stripe/stripe-js')).loadStripe;
249249
250-
$stripe = await loadStripe(VARS.STRIPE_PUBLIC_KEY);
250+
$stripe = await loadStripe(VARS.PUBLIC_STRIPE_KEY);
251251
await checkForMissingPaymentMethod();
252252
}
253253
});

src/routes/(console)/apply-credit/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ import type { Coupon } from '$lib/sdk/billing.js';
33
import { campaigns } from '$lib/stores/campaigns.js';
44
import { sdk } from '$lib/stores/sdk.js';
55
import { redirect } from '@sveltejs/kit';
6+
import type { PageLoad } from './$types';
67

7-
export const load = async ({ url }) => {
8+
export const load: PageLoad = async ({ url }) => {
89
// Has promo code
910
if (url.searchParams.has('code')) {
1011
let couponData: Coupon;

src/routes/(console)/organization-[organization]/change-plan/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { Dependencies } from '$lib/constants';
2+
import type { PageLoad } from './$types';
23

3-
export const load = async ({ depends, parent }) => {
4+
export const load: PageLoad = async ({ depends, parent }) => {
45
const { members } = await parent();
56
depends(Dependencies.ORGANIZATION);
67

src/routes/(console)/project-[project]/auth/templates/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { sdk } from '$lib/stores/sdk';
2+
import type { PageLoad } from './$types';
23

3-
export const load = async () => {
4+
export const load: PageLoad = async () => {
45
const codes = await sdk.forProject.locale.listCodes();
56
return {
67
localeCodes: codes.localeCodes

src/routes/(console)/project-[project]/messaging/providers/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ import {
1111
} from '$lib/helpers/load';
1212
import { Dependencies, PAGE_LIMIT } from '$lib/constants';
1313
import { queries, queryParamToMap } from '$lib/components/filters';
14+
import type { PageLoad } from './$types';
1415

15-
export const load = async ({ depends, url, route }) => {
16+
export const load: PageLoad = async ({ depends, url, route }) => {
1617
depends(Dependencies.MESSAGING_PROVIDERS);
1718

1819
const page = getPage(url);

src/routes/(console)/project-[project]/messaging/topics/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ import { sdk } from '$lib/stores/sdk';
33
import { getLimit, getPage, getQuery, getSearch, pageToOffset } from '$lib/helpers/load';
44
import { Dependencies, PAGE_LIMIT } from '$lib/constants';
55
import { queryParamToMap, queries } from '$lib/components/filters';
6+
import type { PageLoad } from './$types';
67

7-
export const load = async ({ depends, url, route }) => {
8+
export const load: PageLoad = async ({ depends, url, route }) => {
89
depends(Dependencies.MESSAGING_TOPICS);
910
const page = getPage(url);
1011
const search = getSearch(url);

src/routes/(public)/(guest)/login/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ import { base } from '$app/paths';
22
import { campaigns } from '$lib/stores/campaigns';
33
import { sdk } from '$lib/stores/sdk';
44
import { redirect } from '@sveltejs/kit';
5+
import type { PageLoad } from './$types';
56

6-
export const load = async ({ url }) => {
7+
export const load: PageLoad = async ({ url }) => {
78
if (url.searchParams.has('code')) {
89
const code = url.searchParams.get('code');
910
try {

src/routes/(public)/(guest)/register/+page.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ import { base } from '$app/paths';
22
import { campaigns } from '$lib/stores/campaigns.js';
33
import { sdk } from '$lib/stores/sdk';
44
import { redirect } from '@sveltejs/kit';
5+
import type { PageLoad } from './$types';
56

6-
export const load = async ({ url }) => {
7+
export const load: PageLoad = async ({ url }) => {
78
if (url.searchParams.has('code')) {
89
const code = url.searchParams.get('code');
910
try {

0 commit comments

Comments
 (0)