@mittwald/ext-bridge 0.2.0-alpha.787 → 0.2.0-alpha.789

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,6 @@
1
+ const extractHostConfig = (config) => ({
2
+ language: config.language
3
+ });
4
+
5
+ export { extractHostConfig };
6
+ //# sourceMappingURL=extractHostConfig.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractHostConfig.mjs","sources":["../../../src/config/extractHostConfig.ts"],"sourcesContent":["import type { HostConfig } from \"@mittwald/flow-core\";\nimport type { ExtBridgeConfigInput } from \"./types\";\n\nexport const extractHostConfig = (\n config: ExtBridgeConfigInput,\n): HostConfig => ({\n language: config.language,\n});\n"],"names":[],"mappings":"AAGO,MAAM,iBAAA,GAAoB,CAC/B,MAAA,MACgB;AAAA,EAChB,UAAU,MAAA,CAAO;AACnB,CAAA;;;;"}
@@ -5,8 +5,7 @@ const baseConfig = z.object({
5
5
  userId: z.string(),
6
6
  extensionId: z.string(),
7
7
  extensionInstanceId: z.string(),
8
- variantKey: z.string().optional().nullable(),
9
- language: z.string().default("de")
8
+ variantKey: z.string().optional().nullable()
10
9
  });
11
10
  const contextParameters = z.object({
12
11
  appInstallationId: z.string().optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.mjs","sources":["../../../src/config/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\n\nconst baseConfig = z.object({\n sessionId: z.string(),\n userId: z.string(),\n extensionId: z.string(),\n extensionInstanceId: z.string(),\n variantKey: z.string().optional().nullable(),\n language: z.string().default(\"de\"),\n});\n\nconst contextParameters = z.object({\n appInstallationId: z.string().optional(),\n projectId: z.string().optional(),\n customerId: z.string().optional(),\n});\n\nexport const config = baseConfig\n .extend(contextParameters.shape)\n .catchall(z.string().optional().nullable());\n"],"names":[],"mappings":";;AAEA,MAAM,UAAA,GAAa,EAAE,MAAA,CAAO;AAAA,EAC1B,SAAA,EAAW,EAAE,MAAA,EAAO;AAAA,EACpB,MAAA,EAAQ,EAAE,MAAA,EAAO;AAAA,EACjB,WAAA,EAAa,EAAE,MAAA,EAAO;AAAA,EACtB,mBAAA,EAAqB,EAAE,MAAA,EAAO;AAAA,EAC9B,YAAY,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,GAAW,QAAA,EAAS;AAAA,EAC3C,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,QAAQ,IAAI;AACnC,CAAC,CAAA;AAED,MAAM,iBAAA,GAAoB,EAAE,MAAA,CAAO;AAAA,EACjC,iBAAA,EAAmB,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACvC,SAAA,EAAW,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC/B,UAAA,EAAY,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AACzB,CAAC,CAAA;AAEM,MAAM,MAAA,GAAS,UAAA,CACnB,MAAA,CAAO,iBAAA,CAAkB,KAAK,CAAA,CAC9B,QAAA,CAAS,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAAE,UAAU;;;;"}
1
+ {"version":3,"file":"schemas.mjs","sources":["../../../src/config/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\n\n/**\n * Breaking Change warning: Do not remove/rename/modify existing properties in\n * the config schema, as they might be used by existing extensions.\n */\nconst baseConfig = z.object({\n sessionId: z.string(),\n userId: z.string(),\n extensionId: z.string(),\n extensionInstanceId: z.string(),\n variantKey: z.string().optional().nullable(),\n});\n\n/**\n * Breaking Change warning: Do not remove/rename/modify existing properties in\n * the config schema, as they might be used by existing extensions.\n */\nconst contextParameters = z.object({\n appInstallationId: z.string().optional(),\n projectId: z.string().optional(),\n customerId: z.string().optional(),\n});\n\nexport const config = baseConfig\n .extend(contextParameters.shape)\n .catchall(z.string().optional().nullable());\n"],"names":[],"mappings":";;AAMA,MAAM,UAAA,GAAa,EAAE,MAAA,CAAO;AAAA,EAC1B,SAAA,EAAW,EAAE,MAAA,EAAO;AAAA,EACpB,MAAA,EAAQ,EAAE,MAAA,EAAO;AAAA,EACjB,WAAA,EAAa,EAAE,MAAA,EAAO;AAAA,EACtB,mBAAA,EAAqB,EAAE,MAAA,EAAO;AAAA,EAC9B,YAAY,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,GAAW,QAAA;AACpC,CAAC,CAAA;AAMD,MAAM,iBAAA,GAAoB,EAAE,MAAA,CAAO;AAAA,EACjC,iBAAA,EAAmB,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACvC,SAAA,EAAW,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC/B,UAAA,EAAY,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AACzB,CAAC,CAAA;AAEM,MAAM,MAAA,GAAS,UAAA,CACnB,MAAA,CAAO,iBAAA,CAAkB,KAAK,CAAA,CAC9B,QAAA,CAAS,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAAE,UAAU;;;;"}
@@ -2,6 +2,7 @@ import { parseConfig } from './config/parse.mjs';
2
2
  import { ExtBridgeError } from './error.mjs';
3
3
  import { assertBrowserEnv } from './lib/assertBrowserEnv.mjs';
4
4
  import { controllablePromise } from './lib/controllablePromise.mjs';
5
+ import { extractHostConfig } from './config/extractHostConfig.mjs';
5
6
 
6
7
  const timeoutMs = 7500;
7
8
  const [readiness, resolveReadiness] = controllablePromise();
@@ -21,7 +22,12 @@ const readinessApi = {
21
22
  },
22
23
  setIsReady: async () => {
23
24
  const config = await mwExtBridge.connection.getConfig();
24
- mwExtBridge.config = parseConfig(config);
25
+ const parsedConfig = parseConfig(config);
26
+ const hostConfig = extractHostConfig(config);
27
+ mwExtBridge.config = {
28
+ ...parsedConfig,
29
+ ...hostConfig
30
+ };
25
31
  resolveReadiness();
26
32
  }
27
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"readiness.mjs","sources":["../../src/readiness.ts"],"sourcesContent":["import { parseConfig } from \"@/config/parse\";\nimport { ExtBridgeError } from \"@/error\";\nimport { assertBrowserEnv } from \"@/lib/assertBrowserEnv\";\nimport { controllablePromise } from \"@/lib/controllablePromise\";\n\nconst timeoutMs = 7500;\n\nconst [readiness, resolveReadiness] = controllablePromise();\nconst [timoutPromise, , rejectOnTimeout] = controllablePromise();\n\nconst startTimeout = () => {\n setTimeout(() => {\n rejectOnTimeout(\n new ExtBridgeError(`Ext Bridge not ready after ${timeoutMs}ms`),\n );\n }, timeoutMs);\n return timoutPromise;\n};\n\nexport const readinessApi = {\n isReady: async () => {\n assertBrowserEnv();\n await Promise.race([readiness, startTimeout()]);\n },\n setIsReady: async () => {\n const config = await mwExtBridge.connection.getConfig();\n mwExtBridge.config = parseConfig(config);\n resolveReadiness();\n },\n} as const;\n"],"names":[],"mappings":";;;;;AAKA,MAAM,SAAA,GAAY,IAAA;AAElB,MAAM,CAAC,SAAA,EAAW,gBAAgB,CAAA,GAAI,mBAAA,EAAoB;AAC1D,MAAM,CAAC,aAAA,IAAiB,eAAe,IAAI,mBAAA,EAAoB;AAE/D,MAAM,eAAe,MAAM;AACzB,EAAA,UAAA,CAAW,MAAM;AACf,IAAA,eAAA;AAAA,MACE,IAAI,cAAA,CAAe,CAAA,2BAAA,EAA8B,SAAS,CAAA,EAAA,CAAI;AAAA,KAChE;AAAA,EACF,GAAG,SAAS,CAAA;AACZ,EAAA,OAAO,aAAA;AACT,CAAA;AAEO,MAAM,YAAA,GAAe;AAAA,EAC1B,SAAS,YAAY;AACnB,IAAA,gBAAA,EAAiB;AACjB,IAAA,MAAM,QAAQ,IAAA,CAAK,CAAC,SAAA,EAAW,YAAA,EAAc,CAAC,CAAA;AAAA,EAChD,CAAA;AAAA,EACA,YAAY,YAAY;AACtB,IAAA,MAAM,MAAA,GAAS,MAAM,WAAA,CAAY,UAAA,CAAW,SAAA,EAAU;AACtD,IAAA,WAAA,CAAY,MAAA,GAAS,YAAY,MAAM,CAAA;AACvC,IAAA,gBAAA,EAAiB;AAAA,EACnB;AACF;;;;"}
1
+ {"version":3,"file":"readiness.mjs","sources":["../../src/readiness.ts"],"sourcesContent":["import { parseConfig } from \"@/config/parse\";\nimport { ExtBridgeError } from \"@/error\";\nimport { assertBrowserEnv } from \"@/lib/assertBrowserEnv\";\nimport { controllablePromise } from \"@/lib/controllablePromise\";\nimport { extractHostConfig } from \"./config/extractHostConfig\";\n\nconst timeoutMs = 7500;\n\nconst [readiness, resolveReadiness] = controllablePromise();\nconst [timoutPromise, , rejectOnTimeout] = controllablePromise();\n\nconst startTimeout = () => {\n setTimeout(() => {\n rejectOnTimeout(\n new ExtBridgeError(`Ext Bridge not ready after ${timeoutMs}ms`),\n );\n }, timeoutMs);\n return timoutPromise;\n};\n\nexport const readinessApi = {\n isReady: async () => {\n assertBrowserEnv();\n await Promise.race([readiness, startTimeout()]);\n },\n setIsReady: async () => {\n const config = await mwExtBridge.connection.getConfig();\n\n const parsedConfig = parseConfig(config);\n const hostConfig = extractHostConfig(config);\n mwExtBridge.config = {\n ...parsedConfig,\n ...hostConfig,\n };\n\n resolveReadiness();\n },\n} as const;\n"],"names":[],"mappings":";;;;;;AAMA,MAAM,SAAA,GAAY,IAAA;AAElB,MAAM,CAAC,SAAA,EAAW,gBAAgB,CAAA,GAAI,mBAAA,EAAoB;AAC1D,MAAM,CAAC,aAAA,IAAiB,eAAe,IAAI,mBAAA,EAAoB;AAE/D,MAAM,eAAe,MAAM;AACzB,EAAA,UAAA,CAAW,MAAM;AACf,IAAA,eAAA;AAAA,MACE,IAAI,cAAA,CAAe,CAAA,2BAAA,EAA8B,SAAS,CAAA,EAAA,CAAI;AAAA,KAChE;AAAA,EACF,GAAG,SAAS,CAAA;AACZ,EAAA,OAAO,aAAA;AACT,CAAA;AAEO,MAAM,YAAA,GAAe;AAAA,EAC1B,SAAS,YAAY;AACnB,IAAA,gBAAA,EAAiB;AACjB,IAAA,MAAM,QAAQ,IAAA,CAAK,CAAC,SAAA,EAAW,YAAA,EAAc,CAAC,CAAA;AAAA,EAChD,CAAA;AAAA,EACA,YAAY,YAAY;AACtB,IAAA,MAAM,MAAA,GAAS,MAAM,WAAA,CAAY,UAAA,CAAW,SAAA,EAAU;AAEtD,IAAA,MAAM,YAAA,GAAe,YAAY,MAAM,CAAA;AACvC,IAAA,MAAM,UAAA,GAAa,kBAAkB,MAAM,CAAA;AAC3C,IAAA,WAAA,CAAY,MAAA,GAAS;AAAA,MACnB,GAAG,YAAA;AAAA,MACH,GAAG;AAAA,KACL;AAEA,IAAA,gBAAA,EAAiB;AAAA,EACnB;AACF;;;;"}
@@ -0,0 +1,4 @@
1
+ import { HostConfig } from '@mittwald/flow-core';
2
+ import { ExtBridgeConfigInput } from './types';
3
+ export declare const extractHostConfig: (config: ExtBridgeConfigInput) => HostConfig;
4
+ //# sourceMappingURL=extractHostConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractHostConfig.d.ts","sourceRoot":"","sources":["../../../src/config/extractHostConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,oBAAoB,KAC3B,UAED,CAAC"}
@@ -1,13 +1,2 @@
1
- export declare const getConfig: () => Promise<{
2
- [x: string]: string | null | undefined;
3
- sessionId: string;
4
- userId: string;
5
- extensionId: string;
6
- extensionInstanceId: string;
7
- language: string;
8
- variantKey?: string | null | undefined;
9
- appInstallationId?: string | undefined;
10
- projectId?: string | undefined;
11
- customerId?: string | undefined;
12
- }>;
1
+ export declare const getConfig: () => Promise<import('./types').ExtBridgeConfig>;
13
2
  //# sourceMappingURL=getConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../src/config/getConfig.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;;;;;;;;;;;EAGrB,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../src/config/getConfig.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,kDAGrB,CAAC"}
@@ -4,7 +4,6 @@ export declare const parseConfig: (something: unknown) => {
4
4
  userId: string;
5
5
  extensionId: string;
6
6
  extensionInstanceId: string;
7
- language: string;
8
7
  variantKey?: string | null | undefined;
9
8
  appInstallationId?: string | undefined;
10
9
  projectId?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/config/parse.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,GAAI,WAAW,OAAO;;;;;;;;;;;CAM7C,CAAC"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/config/parse.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,GAAI,WAAW,OAAO;;;;;;;;;;CAM7C,CAAC"}
@@ -5,7 +5,6 @@ export declare const config: z.ZodObject<{
5
5
  extensionId: z.ZodString;
6
6
  extensionInstanceId: z.ZodString;
7
7
  variantKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
8
- language: z.ZodDefault<z.ZodString>;
9
8
  appInstallationId: z.ZodOptional<z.ZodString>;
10
9
  projectId: z.ZodOptional<z.ZodString>;
11
10
  customerId: z.ZodOptional<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/config/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,MAAM;;;;;;;;;;+DAE0B,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/config/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,eAAO,MAAM,MAAM;;;;;;;;;+DAE0B,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import { config } from './schemas';
2
2
  import { z } from 'zod';
3
- export type ExtBridgeConfig = z.infer<typeof config>;
3
+ import { HostConfig } from '@mittwald/flow-core';
4
+ export type ExtBridgeConfig = z.infer<typeof config> & HostConfig;
5
+ export type ExtBridgeConfigInput = z.input<typeof config> & HostConfig;
4
6
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/config/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/config/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,GAAG,UAAU,CAAC;AAClE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,GAAG,UAAU,CAAC"}
@@ -1,13 +1,2 @@
1
- export declare const useConfig: () => {
2
- [x: string]: string | null | undefined;
3
- sessionId: string;
4
- userId: string;
5
- extensionId: string;
6
- extensionInstanceId: string;
7
- language: string;
8
- variantKey?: string | null | undefined;
9
- appInstallationId?: string | undefined;
10
- projectId?: string | undefined;
11
- customerId?: string | undefined;
12
- };
1
+ export declare const useConfig: () => import('../..').ExtBridgeConfig;
13
2
  //# sourceMappingURL=useConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/useConfig.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;;;;;;;;;;;CAErB,CAAC"}
1
+ {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/useConfig.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,uCAErB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../../src/readiness.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,YAAY;;;CAUf,CAAC"}
1
+ {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../../src/readiness.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,YAAY;;;CAiBf,CAAC"}
@@ -1,10 +1,10 @@
1
- import { ExtBridgeConfig } from './config/types';
1
+ import { ExtBridgeConfig, ExtBridgeConfigInput } from './config/types';
2
2
  import { readinessApi } from './readiness';
3
- export type { ExtBridgeConfig } from './config/types';
3
+ export type { ExtBridgeConfig, ExtBridgeConfigInput } from './config/types';
4
4
  type ReadinessApi = typeof readinessApi;
5
5
  export interface ExtBridgeConnectionApi {
6
6
  getSessionToken: () => Promise<string>;
7
- getConfig: () => Promise<ExtBridgeConfig>;
7
+ getConfig: () => Promise<ExtBridgeConfigInput>;
8
8
  }
9
9
  export interface ExtBridge {
10
10
  readiness: ReadinessApi;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,KAAK,YAAY,GAAG,OAAO,YAAY,CAAC;AAExC,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,SAAS,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,YAAY,CAAC;IACxB,UAAU,EAAE,sBAAsB,CAAC;IACnC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,WAAW,EAAE,SAAS,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE5E,KAAK,YAAY,GAAG,OAAO,YAAY,CAAC;AAExC,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,SAAS,EAAE,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,YAAY,CAAC;IACxB,UAAU,EAAE,sBAAsB,CAAC;IACnC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,WAAW,EAAE,SAAS,CAAC;CAC5B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mittwald/ext-bridge",
3
- "version": "0.2.0-alpha.787",
3
+ "version": "0.2.0-alpha.789",
4
4
  "type": "module",
5
5
  "description": "Bridge for mStudio embedded frontend extensions",
6
6
  "homepage": "https://mittwald.github.io/flow",
@@ -45,6 +45,7 @@
45
45
  "zod": "^4.3.6"
46
46
  },
47
47
  "devDependencies": {
48
+ "@mittwald/flow-core": "workspace:*",
48
49
  "@mittwald/typescript-config": "workspace:*",
49
50
  "@types/node": "^24.10.9",
50
51
  "@types/react": "^19.2",
@@ -79,5 +80,5 @@
79
80
  "optional": true
80
81
  }
81
82
  },
82
- "gitHead": "1bf74698eae8a6dee2605a40181c320a20b09ad7"
83
+ "gitHead": "b31bdfc722b4f1fd9c5645221e4f805bc6e21d50"
83
84
  }