diff --git a/package.json b/package.json index e635fe9..3638da2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@kevisual/auth", - "version": "2.0.2", + "version": "2.0.3", "description": "", "scripts": { "build": "bun run bun.config.ts" diff --git a/src/generate.ts b/src/generate.ts index 8cddef8..722b498 100644 --- a/src/generate.ts +++ b/src/generate.ts @@ -37,3 +37,4 @@ export const generate = async (opts: GenerateOpts = {}) => { publicPEM } } + diff --git a/src/jwks/common.ts b/src/jwks/common.ts deleted file mode 100644 index 23f12fe..0000000 --- a/src/jwks/common.ts +++ /dev/null @@ -1,8 +0,0 @@ -import path from 'node:path'; -const dir = path.join(process.cwd(), 'jwt'); - -export const JWKS_PATH = path.join(dir, 'jwks.json'); -export const PRIVATE_JWK_PATH = path.join(dir, 'privateKey.json'); - -export const PRIVATE_KEY_PATH = path.join(dir, 'privateKey.txt'); -export const PUBLIC_KEY_PATH = path.join(dir, 'publicKey.txt'); diff --git a/src/jwks/create.ts b/src/jwks/create.ts index d221c9a..07f1db4 100644 --- a/src/jwks/create.ts +++ b/src/jwks/create.ts @@ -1,21 +1,21 @@ import fs from 'node:fs' import path from 'node:path' -import * as common from './common.ts'; import { generate } from '../generate.ts' - +import { getPath } from './index.ts'; +const commonDir = getPath(path.join(process.cwd(), 'jwt')); async function main() { const { jwks, privateJWK, privatePEM, publicPEM } = await generate(); const dir = path.join(process.cwd(), 'jwt'); if (!fs.existsSync(dir)) { fs.mkdirSync(dir); } - fs.writeFileSync(common.PUBLIC_KEY_PATH, publicPEM); + fs.writeFileSync(commonDir.PUBLIC_KEY_PATH, publicPEM); - fs.writeFileSync(common.PRIVATE_KEY_PATH, privatePEM); + fs.writeFileSync(commonDir.PRIVATE_KEY_PATH, privatePEM); - fs.writeFileSync(common.PRIVATE_JWK_PATH, JSON.stringify(privateJWK, null, 2)); - fs.writeFileSync(common.JWKS_PATH, JSON.stringify(jwks, null, 2)); + fs.writeFileSync(commonDir.PRIVATE_JWK_PATH, JSON.stringify(privateJWK, null, 2)); + fs.writeFileSync(commonDir.JWKS_PATH, JSON.stringify(jwks, null, 2)); console.log('Private key and JWKS have been saved to files.'); } diff --git a/src/jwks/get.ts b/src/jwks/get.ts index d76e566..3baf008 100644 --- a/src/jwks/get.ts +++ b/src/jwks/get.ts @@ -1,16 +1,16 @@ import fs from 'node:fs' import path from 'node:path' -import * as common from './common.ts'; - +import { getPath } from './index.ts'; +const commonDir = getPath(path.join(process.cwd(), 'jwt')); export const getValues = () => { - if (!fs.existsSync(common.JWKS_PATH)) { + if (!fs.existsSync(commonDir.JWKS_PATH)) { throw new Error('JWKS file does not exist. Please create it first.'); } - const jwksData = fs.readFileSync(common.JWKS_PATH, 'utf-8'); - const privateJWKData = fs.readFileSync(common.PRIVATE_JWK_PATH, 'utf-8'); - const publicKeyPEM = fs.readFileSync(common.PUBLIC_KEY_PATH, 'utf-8'); - const privateKeyPEM = fs.readFileSync(common.PRIVATE_KEY_PATH, 'utf-8'); + const jwksData = fs.readFileSync(commonDir.JWKS_PATH, 'utf-8'); + const privateJWKData = fs.readFileSync(commonDir.PRIVATE_JWK_PATH, 'utf-8'); + const publicKeyPEM = fs.readFileSync(commonDir.PUBLIC_KEY_PATH, 'utf-8'); + const privateKeyPEM = fs.readFileSync(commonDir.PRIVATE_KEY_PATH, 'utf-8'); return { jwks: JSON.parse(jwksData), diff --git a/src/jwks/index.ts b/src/jwks/index.ts new file mode 100644 index 0000000..594109d --- /dev/null +++ b/src/jwks/index.ts @@ -0,0 +1,14 @@ +import path from 'node:path'; +export const getPath = (dir: string = process.cwd()) => { + const JWKS_PATH = path.join(dir, 'jwks.json'); + const PRIVATE_JWK_PATH = path.join(dir, 'privateKey.json'); + + const PRIVATE_KEY_PATH = path.join(dir, 'privateKey.txt'); + const PUBLIC_KEY_PATH = path.join(dir, 'publicKey.txt'); + return { + JWKS_PATH, + PRIVATE_JWK_PATH, + PRIVATE_KEY_PATH, + PUBLIC_KEY_PATH, + } +} \ No newline at end of file