Skip to content

Commit 8e3f5d2

Browse files
authored
✨ Add support for secrets (#58)
* ✨ Add support for secrets * ✅ Add "unset" tests for secret * 📝 Added some docs for secrets * 🔧 Ban type assertions
1 parent 1b080de commit 8e3f5d2

31 files changed

+885
-1
lines changed

.env

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,52 @@ EXAMPLE_INVALID_DATE=EXAMPLE_INVALID_DATE
3232
EXAMPLE_NO_DATE=
3333

3434
ENV_FILE=cwd
35+
36+
SECRET_BOOL=test/SECRET_BOOL
37+
SECRET_FALSY_BOOL=test/SECRET_FALSY_BOOL
38+
SECRET_INVALID_BOOL=test/SECRET_INVALID_BOOL
39+
SECRET_MISSING_BOOL=test/SECRET_MISSING_BOOL
40+
SECRET_NO_BOOL=test/SECRET_NO_BOOL
41+
SECRET_UNSET_BOOL=
42+
43+
SECRET_FLOAT=test/SECRET_FLOAT
44+
SECRET_FALSY_FLOAT=test/SECRET_FALSY_FLOAT
45+
SECRET_INVALID_FLOAT=test/SECRET_INVALID_FLOAT
46+
SECRET_MISSING_FLOAT=test/SECRET_MISSING_FLOAT
47+
SECRET_NO_FLOAT=test/SECRET_NO_FLOAT
48+
SECRET_UNSET_FLOAT=
49+
50+
SECRET_INT=test/SECRET_INT
51+
SECRET_FALSY_INT=test/SECRET_FALSY_INT
52+
SECRET_INVALID_INT=test/SECRET_INVALID_INT
53+
SECRET_MISSING_INT=test/SECRET_MISSING_INT
54+
SECRET_NO_INT=test/SECRET_NO_INT
55+
SECRET_UNSET_INT=
56+
57+
SECRET_STRING=test/SECRET_STRING
58+
SECRET_MISSING_STRING=test/SECRET_MISSING_STRING
59+
SECRET_NO_STRING=test/SECRET_NO_STRING
60+
SECRET_UNSET_STRING=
61+
62+
SECRET_STRINGS=test/SECRET_STRINGS
63+
SECRET_MISSING_STRINGS=test/SECRET_MISSING_STRINGS
64+
SECRET_NO_STRINGS=test/SECRET_NO_STRINGS
65+
SECRET_UNSET_STRINGS=
66+
67+
SECRET_URL=test/SECRET_URL
68+
SECRET_INVALID_URL=test/SECRET_INVALID_URL
69+
SECRET_MISSING_URL=test/SECRET_MISSING_URL
70+
SECRET_NO_URL=test/SECRET_NO_URL
71+
SECRET_UNSET_URL=
72+
73+
SECRET_UUID=test/SECRET_UUID
74+
SECRET_INVALID_UUID=test/SECRET_INVALID_UUID
75+
SECRET_MISSING_UUID=test/SECRET_MISSING_UUID
76+
SECRET_NO_UUID=test/SECRET_NO_UUID
77+
SECRET_UNSET_UUID=
78+
79+
SECRET_DATE=test/SECRET_DATE
80+
SECRET_INVALID_DATE=test/SECRET_INVALID_DATE
81+
SECRET_MISSING_DATE=test/SECRET_MISSING_DATE
82+
SECRET_NO_DATE=test/SECRET_NO_DATE
83+
SECRET_UNSET_DATE=

.vscode/settings.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
"package.json": "bun.lockb, package-lock.json, pnpm-lock.yaml, yarn.lock",
1919
"tsconfig.json": "tsconfig.*.json, tsconfig.tsbuildinfo"
2020
},
21-
"typescript.experimental.useTsgo": true,
21+
"files.associations": {
22+
"SECRET_*": "plaintext"
23+
},
2224
"typescript.tsdk": "node_modules/typescript/lib"
2325
}

eslint.config.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,16 @@ export default tseslint.config(
1616
...tseslint.configs.stylisticTypeChecked,
1717
prettier,
1818

19+
{
20+
rules: {
21+
"@typescript-eslint/consistent-type-assertions": [
22+
"error",
23+
{ assertionStyle: "never" },
24+
],
25+
},
26+
ignores: ["**/*.test.ts"],
27+
},
28+
1929
{
2030
rules: {
2131
"@typescript-eslint/class-methods-use-this": [

src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
export * from "./env.ts"
22
export * from "./load_env.ts"
3+
export * from "./secret.ts"
34
export type * from "./loaded_env.ts"

0 commit comments

Comments
 (0)