diff options
Diffstat (limited to 'apps/web/src/lib/registry.ts')
| -rw-r--r-- | apps/web/src/lib/registry.ts | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/apps/web/src/lib/registry.ts b/apps/web/src/lib/registry.ts deleted file mode 100644 index f1c92f67..00000000 --- a/apps/web/src/lib/registry.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { ParamDefinition, ParamValues } from "@/lib/params";
-
-export function buildDefaultParamValues(
- params: ParamDefinition[],
-): ParamValues {
- const values: ParamValues = {};
- for (const param of params) {
- values[param.key] = param.default;
- }
- return values;
-}
-
-export class DefinitionRegistry<TKey extends string, TDefinition> {
- private definitions = new Map<TKey, TDefinition>();
- private entityName: string;
-
- constructor(entityName: string) {
- this.entityName = entityName;
- }
-
- register(key: TKey, definition: TDefinition): void {
- this.definitions.set(key, definition);
- }
-
- has(key: TKey): boolean {
- return this.definitions.has(key);
- }
-
- get(key: TKey): TDefinition {
- const def = this.definitions.get(key);
- if (!def) {
- throw new Error(`Unknown ${this.entityName}: ${key}`);
- }
- return def;
- }
-
- getAll(): TDefinition[] {
- return Array.from(this.definitions.values());
- }
-}
|
