From 42087c3744ff4e62869d8630af71defa17753cf6 Mon Sep 17 00:00:00 2001 From: Julian BRUXELLE Date: Tue, 3 May 2022 11:05:33 +0200 Subject: [PATCH] :bug: FIX: access to env variable (TODO: secure) --- kit-modules/kit-feedback/.env.example | 2 +- kit-modules/kit-feedback/README.md | 15 +++---- .../src/lib/components/Feedback.svelte | 4 +- .../src/lib/graphql/_kitql/graphqlTypes.ts | 5 +-- .../src/lib/graphql/kitQLClient.ts | 30 ++++++-------- .../kit-feedback/src/routes/__layout.svelte | 9 ----- .../kit-feedback/src/routes/index.svelte | 40 +++++++++---------- kit-modules/kit-feedback/svelte.config.js | 9 +---- kit-modules/kit-feedback/tsconfig.json | 8 +--- 9 files changed, 43 insertions(+), 79 deletions(-) diff --git a/kit-modules/kit-feedback/.env.example b/kit-modules/kit-feedback/.env.example index 17a17d4f..a799d663 100644 --- a/kit-modules/kit-feedback/.env.example +++ b/kit-modules/kit-feedback/.env.example @@ -1 +1 @@ -GITHUB_API_TOKEN = YOUR_GITHUB_TOKEN_HERE +VITE_GITHUB_API_TOKEN = YOUR_GITHUB_TOKEN_HERE diff --git a/kit-modules/kit-feedback/README.md b/kit-modules/kit-feedback/README.md index 99eb614b..0faa88b0 100644 --- a/kit-modules/kit-feedback/README.md +++ b/kit-modules/kit-feedback/README.md @@ -27,14 +27,9 @@ yarn add @kitql/kit-feedback ## Setup -1. #### Initialize the client +1. #### Add your Github GraphQL API token to your .env file (see .env.example) -```Javascript - client.initialize({ token: process.env.GITHUB_API_TOKEN }); -``` - -> Uses env-cmd here with process.env defined in vite because VITE\_ prefix environment variables are public. -> See [packages/modules/kit-feedback/package.json](url) and [packages/modules/kit-feedback/svelte.config.js](url) +:warning: This env variable is accessible on client for the moment, make sure not to give restricted permissions to the token. 2. #### Override the default configuration and add the Feedback component to your code : @@ -44,7 +39,7 @@ yarn add @kitql/kit-feedback - + - + ``` diff --git a/kit-modules/kit-feedback/src/lib/components/Feedback.svelte b/kit-modules/kit-feedback/src/lib/components/Feedback.svelte index 5cba286a..0a7f80f8 100644 --- a/kit-modules/kit-feedback/src/lib/components/Feedback.svelte +++ b/kit-modules/kit-feedback/src/lib/components/Feedback.svelte @@ -13,7 +13,7 @@ import { RequestStatus } from '@kitql/client'; import '../app.postcss'; - export let show = false; + export let showFeedback = false; const handleClose = async () => { if ($config.resetCacheOnClose) { @@ -45,7 +45,7 @@
- +
diff --git a/kit-modules/kit-feedback/src/lib/graphql/_kitql/graphqlTypes.ts b/kit-modules/kit-feedback/src/lib/graphql/_kitql/graphqlTypes.ts index a3d63009..c0de18ec 100644 --- a/kit-modules/kit-feedback/src/lib/graphql/_kitql/graphqlTypes.ts +++ b/kit-modules/kit-feedback/src/lib/graphql/_kitql/graphqlTypes.ts @@ -12535,10 +12535,7 @@ export type PackageTag = Node & { export enum PackageType { /** A debian package. */ Debian = 'DEBIAN', - /** - * A docker image. - * @deprecated DOCKER will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2021-06-21 UTC. - */ + /** A docker image. */ Docker = 'DOCKER', /** A maven package. */ Maven = 'MAVEN', diff --git a/kit-modules/kit-feedback/src/lib/graphql/kitQLClient.ts b/kit-modules/kit-feedback/src/lib/graphql/kitQLClient.ts index e29dfce6..7bd1c454 100644 --- a/kit-modules/kit-feedback/src/lib/graphql/kitQLClient.ts +++ b/kit-modules/kit-feedback/src/lib/graphql/kitQLClient.ts @@ -1,21 +1,15 @@ -import { KitQLClient, InMemoryCache } from '@kitql/client'; +import { InMemoryCache, KitQLClient } from '@kitql/client'; -class KitFeedbackClient extends KitQLClient<{ Authorization: string }> { - constructor() { - super({ - url: 'https://api.github.com/graphql', - headersContentType: 'application/json', - logType: ['client', 'server', 'operationAndvariables'], - cacheImplementation: new InMemoryCache() - }); - } +type KitFeedbackHeaders = { Authorization: string }; - public initialize = (props: { token: string }) => { - console.log('KitFeedbackClient initialize'); - this.setHeaders({ - Authorization: `Bearer ${props.token}` - }); - }; -} +const GITHUB_API_TOKEN = import.meta.env.VITE_GITHUB_API_TOKEN; -export let kitQLClient = new KitFeedbackClient(); +export const kitQLClient = new KitQLClient({ + url: 'https://api.github.com/graphql', + headersContentType: 'application/json', + logType: ['client', 'server', 'operationAndvariables'], + cacheImplementation: new InMemoryCache(), + headers: { + Authorization: `Bearer ${GITHUB_API_TOKEN}` + } +}); diff --git a/kit-modules/kit-feedback/src/routes/__layout.svelte b/kit-modules/kit-feedback/src/routes/__layout.svelte index b8a89717..4fa864ce 100644 --- a/kit-modules/kit-feedback/src/routes/__layout.svelte +++ b/kit-modules/kit-feedback/src/routes/__layout.svelte @@ -1,10 +1 @@ - - diff --git a/kit-modules/kit-feedback/src/routes/index.svelte b/kit-modules/kit-feedback/src/routes/index.svelte index 8e41ecc5..408ddf67 100644 --- a/kit-modules/kit-feedback/src/routes/index.svelte +++ b/kit-modules/kit-feedback/src/routes/index.svelte @@ -3,7 +3,7 @@ - + - + diff --git a/kit-modules/kit-feedback/svelte.config.js b/kit-modules/kit-feedback/svelte.config.js index 15f764f2..bbf13ced 100644 --- a/kit-modules/kit-feedback/svelte.config.js +++ b/kit-modules/kit-feedback/svelte.config.js @@ -9,17 +9,10 @@ const __dirname = dirname(__filename); /** @type {import('@sveltejs/kit').Config} */ const config = { - preprocess: [preprocess({ postcss: true })], + preprocess: [ preprocess({ postcss: true }) ], kit: { adapter: adapter(), vite: { - plugins: [ - // watchAndRun([ { watch: '**/*.(gql)', run: 'yarn gen' } ]) - ], - define: { - PACKAGE_VERSION: JSON.stringify(process.env.npm_package_version), - 'process.env': process.env - }, resolve: { alias: { $lib: resolve(__dirname, './src/lib') diff --git a/kit-modules/kit-feedback/tsconfig.json b/kit-modules/kit-feedback/tsconfig.json index c10f2f30..81ff9770 100644 --- a/kit-modules/kit-feedback/tsconfig.json +++ b/kit-modules/kit-feedback/tsconfig.json @@ -1,9 +1,3 @@ { - "extends": "./.svelte-kit/tsconfig.json", - "compilerOptions": { - "paths": { - "$lib": ["src/lib"], - "$lib/*": ["src/lib/*"] - } - } + "extends": "./.svelte-kit/tsconfig.json" } -- 2.51.2