Feature flags seeds, queries and hooks (#2769)

* seed is working

* allow graphql to retrieve feature flag data

* create useIsFeatureEnabled hook

* hook is working

* Update icons.ts
This commit is contained in:
bosiraphael
2023-11-29 16:40:44 +01:00
committed by GitHub
parent d855a42eca
commit 04c7c1a334
12 changed files with 174 additions and 17 deletions

View File

@ -0,0 +1,24 @@
import { DataSource } from 'typeorm';
const tableName = 'featureFlag';
import { SeedWorkspaceId } from 'src/database/typeorm-seeds/core/workspaces';
export const seedFeatureFlags = async (
workspaceDataSource: DataSource,
schemaName: string,
) => {
await workspaceDataSource
.createQueryBuilder()
.insert()
.into(`${schemaName}.${tableName}`, ['key', 'workspaceId', 'value'])
.orIgnore()
.values([
{
key: 'IS_RELATION_FIELD_TYPE_ENABLED',
workspaceId: SeedWorkspaceId,
value: true,
},
])
.execute();
};

View File

@ -2,9 +2,11 @@ import { DataSource } from 'typeorm';
import { seedUsers } from 'src/database/typeorm-seeds/core/users';
import { seedWorkspaces } from 'src/database/typeorm-seeds/core/workspaces';
import { seedFeatureFlags } from 'src/database/typeorm-seeds/core/feature-flags';
export const seedCoreSchema = async (workspaceDataSource: DataSource) => {
const schemaName = 'core';
await seedWorkspaces(workspaceDataSource, schemaName);
await seedUsers(workspaceDataSource, schemaName);
await seedFeatureFlags(workspaceDataSource, schemaName);
};